Releasing Capifony 2.0, your favorite deployment tool

Published on

Mar 22, 2011

technical

Mar 23, 2011 − If you're serious about Symfony and deployment, you should definitely use Capifony. Discover the new Capifony 2.0!

If you're serious about Symfony and deployment, you should definitely use Capifony.

Capifony eases your deployment process

Capifony is an open source tool for running scripts on multiple servers.

Its main goal: deploy your applications to one or more servers.
Because you probably know that it's a delicate process (especially when problems occur…).

The main Capifony features are:

  • Transactional deployment. The whole deployment process is happening inside single transaction. So if something go wrong (any command fail) on deployment process - all previous actions will be reverted like it never happened. Cool.
  • Quick rollback. A single command. Did you deploy something and site is going down? Simply run cap deploy:rollback and capifony will revert your production code to the previous release in matter of seconds.
  • Share some directories for all releases (uploads, logs...)
  • Run DB migrations / creations...
  • Run custom symfony tasks
  • Run the test suite on prodution
  • Clear and warmup the cache

You will have a structure like this on your production server:

`-- /var/www/knplabs
  |-- current → /var/www/KnpLabs/releases/20100512131539
  |-- releases
    |-- 20100512131539
    |-- 20100509150741
    `-- 20100509145325
  `-- shared
    |-- log
    |-- config
      `-- databases.yml
    `-- web
      `-- uploads

You'll have to thank capistrano for the original cool ruby app - yeah, capistrano is written in ruby.

Capifony adds some recipes for symfony to capistrano.

Capifony 2.0

And now we want to announce the availability of Capifony 2.0, which brings two great features to the show:

  • The ability to work with symfony 1 in a project without a configured ORM
  • The ability to deploy Symfony2 projects

To upgrade from an old-school capifony 0.*-powered application:

gem update capifony
# In you project root
rm -f Capfile
capifony .

That's all! And once again, let's thank our awesome Everzet.
Discover the website on capifony.org and check the code on github!

Written by

KNP Labs
KNP Labs

Comments