J'ai une application rails que je dois déployer sur 3 serveurs - machine1.com, machine2.com et machine3.com. Je veux pouvoir la déployer sur toutes les machines en même temps et sur chaque machine individuellement. Quelqu'un peut-il m'aider avec un squelette de fichier de configuration / recette Capistrano ? Est-ce que tout doit être dans deploy.rb ou est-ce que je dois le décomposer dans machine1.rb, etc ?
Je pensais être sur la bonne voie en faisant en sorte que Capistrano prenne en compte les arguments de ligne de commande, mais il s'est bloqué lorsque j'ai essayé de définir les rôles dans les espaces de noms. J'ai passé 'hosts=1,2,3' comme argument et défini le rôle:app/web/db à "machine#{host}.com" après avoir divisé la commande et être entré dans un each do |host| {}...
Bref, à part créer 4 fichiers deploy.rb différents et les renommer avant d'exécuter cap:deploy à chaque fois, je suis dans l'impasse. J'aimerais être capable de faire ce qui suit :
cap deploy:machine1:latest_version_from_svn
cap deploy:all_machines:latest:version_from_svn
Je ne sais pas si tout doit être dans deploy.rb, séparé par des espaces de noms, ou si cela doit être réparti en plusieurs fichiers *deploy**.rb.