Download the PHP package innmind/tower without Composer

On this page you can find all versions of the php package innmind/tower. 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 tower

Tower

Build Status codecov Type Coverage

This is a command line tool to deploy your code base with a new approach. Instead of building another tool sending a set of shell commands over ssh with a logic of point to point, Tower takes the approach of servers as nodes of a tree where from a node you trigger the tower of sub-nodes.

The setup:

Advantages:

Drawbacks:

Example:

Say here the tree below B is also for production, with this tool you could easily place the same Tower setup on the five servers and to deploy all of them, you would run a command like tower ping B and done! Or if you want to only deploy H, just to be sure everythings deploying fine, connect to the machine and locally run tower trigger or add this as one of the neighbour on your local machine (A) and run tower ping H. Once again it's a tree, you can start from wherever you want.

But in a normal case you would just have B and C as neighbours of your machine.

To be really efficient (meaning not overloading your VCS server), setup neighbours to retrieve code from their parent. For instance, setup B and C with your VCS server as git remote; D and E have B as git remote, and so on...

Note: I talk about git here, but you're not forced to use it

Note: When cascading, if a neighbour fail to deploy, its subtree won't be deployed

Another use case would be you have a single server for your app, and other servers for related services required by your first server. You could imply, with this notion of tree, that every time you deploy your app it triggers the deployment of those related services (so everything is always up-to-date).

Installation

Configuration

The actions set will be the commands run on you server when the server the configuration is on is pinged. Each actions will have as environment variables the ones built via the exports section, this array must be commands that will produce an output of the form ENV=value.

Finally the neighbours section is the list of the servers that will be pinged when the one the configuration is on is pinged. You can decide to ping a server either by ssh (leaving the server vulnerable to the outside world, but is the easiest) or by a tcp socket (allows to close all direct access to the machine but opens to a DOS attack).

Usage

Via ssh

On your machine configure a tower.yml file with the following:

Once done you can run tower ping gateway in this folder. This will connect to gateway.com via the port 22, move to the folder /path/to/configuration/on/gateway and run the command tower trigger; you'll need to create a file tower.yml in the folder that will either describe the actions to do or the neighbours to ping.

Via tcp

On your machine configure a tower.yml file with the following:

On the server you need to create a similar file named tower.yml containing either the actions to run or the neighbours to ping; then in this folder run tower listen 1337 -d. This last command opens a tcp connection on port 1337 and waits for incoming pings.

Now you can run on your machine tower ping gateway.


All versions of tower with dependencies

PHP Build Version
Package Version
Requires php Version ~7.4|~8.0
innmind/immutable Version ~3.5
innmind/url Version ~3.3
symfony/config Version ~5.0
symfony/yaml Version ~5.0
innmind/json Version ^1.1
innmind/cli-framework Version ^1.2
innmind/genome Version ^3.0
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 innmind/tower contains the following files

Loading the files please wait ....