everzet/capifony — pull request #74 by lunetics (2011-11-11 07:20:33+00:00)
Title: Fine Grained Control of Servers

Added :roles to all tasks, since the tasks are quite different on the different roles.

Most roles got :app (php - app server), since quite a few people got dedicated php-fpm/fastcgi boxes, where only the sourcecode is needed

Restricted assets / assetics to :web role. Since :web should be only deployed to the (static) Webserver. No need to install java for e.g. yuicompressor on the :app machines.

Also there's mostly no need to deploy onto the :db machine(s), cause interaction of symfony is done by the console.

e.g. if you got 2 webservers (with php locally also running), 1 database, 4 php-slaves, you could configure it like:

server "nginx1.domain.com", :web, :app
server "nginx2.domain.com", :web, :app
role :app, "php1.domain.com", "php2.domain.com", "php3.domain.com", "php4.domain.com
role :db, "db.domain.com", :primary => true

if you got everything on one machine, nothing changes for you :)