Go to file
Andrés Montañez 8bc0a0316e Tweak.
2014-08-07 12:56:19 -03:00
bin refactored Autoloader; added support for json encoded format for environment "hosts" option 2014-07-28 11:53:22 +03:00
docs Review and rework Composer tasks. 2014-06-12 17:42:47 -03:00
Mage Tweak. 2014-08-07 12:56:19 -03:00
.gitignore Tweaks and fixes. 2014-06-12 16:17:31 -03:00
composer.json Tweak composer. 2013-12-17 17:42:06 -08:00
LICENSE Yaml - Replace Spyc with Symfony Yaml Component. 2014-06-13 09:31:44 -03:00
LICENSE_YAML Yaml - Replace Spyc with Symfony Yaml Component. 2014-06-13 09:31:44 -03:00
README.md Add system-wide installation to the readme. 2014-07-16 15:02:56 +02:00

Magallanes

What's Magallanes?

Magallanes is a deployment tool for PHP applications; it's quite simple to use and manage. It will get your application to a safe harbor.

So, What can it do?

You can instruct Magallanes to deploy your code to all the servers you want (via rsync over ssh), and run tasks for that freshly deployed code.

How can I install it via composer?

Simply add the following dependency to your projects composer.json file:

    "require": {
        // ...
        "andres-montanez/magallanes": "1.0.*"
        // ...
    }

Now tell we update the vendors:

$ php composer update

And finally we can use Magallanes from the vendor's bin:

$ bin/mage version

System-wide installation with composer

$ composer global require "andres-montanez/magallanes=1.0.*"

Make sure you have ~/.composer/vendor/bin/ in your path. You can now use Magallanes by using the mage command.

Can you give me some examples/ideas?

Sure! Suppose you have a checkout of your app and you have to deploy it to four servers; and after each deploy you have to run some boring tasks, like fixing file permissions, creating symlinks, etc. You can define all this on Magallanes and with just one command you can do all this at once!

Like this:

$ mage deploy to:production

What's this sorcery?!

Easy boy. It's not sorcery, just some technomagick!

In Magallanes you define environments like testing, staging, or production like on the example above. Then, on that environment, you can configure a setup specifying to which hosts you want to deploy and what tasks to run (after, on, and before deploying). And you are done!

This is awesome! Where can I learn more?

You can read the whole source code (naaah!); or checkout the documentation at: http://magephp.com

Enjoy your magic trip with Magallanes to the land of the easily deployable apps!!