Download the PHP package ascio/ascio-framework without Composer

On this page you can find all versions of the php package ascio/ascio-framework. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package ascio-framework

Ascio-Framework

A php framework with docker to sync and connect to the ascio-api. Scalable, based on docker and kafka.

It makes make domain-management-processes easear like:

Requirements

The only requirement is docker. It can be downloaded here: https://www.docker.com/

Installation

  1. Clone repository: git clone https://github.com/rendermani/ascio-framework.git ascio-framework
  2. cd ascio-framework
  3. chmod u+x bin/init.sh
  4. Run bin/init.sh <<github token>>. The github-token can be used optionally to extend quotas (Could not authenticate against github.com). It can be obtained here: https://github.com/settings/tokens
  5. Set missing passwords in the .env
  6. Enter the ascio-credentials in config/accounts/default.json
  7. Run bin/up.sh

    Initial database sync: ascio > local

    At the beginning the database is empty. As Ascio-messages are sent, when something changes, an initial sync must be done at the beginning. The sync-orders script syncs all orders and data that belongs to the orders, like Domains or SSL-Certificates.

    • make sure the installation is complete, and default.json contains valid credentials and environment
    • run bin/sync-orders.sh

      Testing the installation

      At the beginning there will be a Kafka exception in the logs. This will be gone as soon as Kafka has fully loaded. There is no dependancy on Kafka, because the Kafka could run somewhere else.

    • run bin/logs.sh. Look for 401 Authentification failed
    • run bin/php sandbox/create-order.php
    • observe the logs for poll complete.
    • check the database: http://localhost:8001/

Locations

Commands

The update() method

Normally it's required to know the order-type when changing data. With the update method of the domain, it's possible to change any data and the order-type will be automatically selected. If multiple order-types are required, orders are queued like in the example above.

Some order-types can change 2 different objects. Like the owner-change can change the registrant and the admin-contact in one request. In this case, the update method only uses necessary objects.

Store data into databases

All data is auto-stored in the database. If data should be stored manually, please use $object->produce() to store data into all databases. This function should be use carefully, because data could get out of sync.

Read data from the database

Database can be read from any database. Objects like domains have a serialize and deserialize data. Please use $object->deserialize() to import data. And $object->serialize($data) or $object->toJson() to serialize.

Here an example of retrieving data from the database:

Example database connector

Database connectors listen on the Kafka-service and write data into the database. It's possible to include own connectors. Right now Redis and Couch are included as examples. This is the Redit-connector.

The process of creating connectors is:

This is an example Redis connector which is in the services directory.

Read order from the API

Reads an Order from the API. When reading from the API, data is automatically synced to all databases.

Read domain by handle from the API

Reads an Domain from the API. When reading from the API, data is automatically synced to all databases.

Read domain by domain-name from the API

Reads an Domain from the API. When reading from the API, data is automatically synced to all databases.

Update data from the API

Workflow with AutoUnlock

Sometimes locks can prevent updates. This can be an issue when updating thousands of domains, and a few fail because they are locked. They would need to be unlocked and relocked again, after all operations are finished. The AutoUnlock makes this process easier

AutoUnlock before expiring (Delete_Lock)

AutoUnlock before update

This example is the same like the example above, only that the declarative way is used. Instead of adding a $domain->getOrderRequest()->expire() task, a $domain->getUpdateOrders() task is added. There could be more changes like $domain->getRegistrant()->setName("Manuel L") and an OwnerChange would be created. And the UpdateLock released if necessary.


All versions of ascio-framework with dependencies

PHP Build Version
Package Version
Requires php Version >=5.3.0
ext-soap Version *
ext-pdo Version *
illuminate/database Version >=5.9@dev
predis/predis Version ^1.1
io-developer/php-whois Version dev-master
giggsey/libphonenumber-for-php Version ^8.12
doctrine/couchdb Version @dev
monolog/monolog Version ^1.23
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package ascio/ascio-framework contains the following files

Loading the files please wait ....