Za deployment : capistrano + svn (git)
Ono sto trebas da imas za ovakav nacin deploy-a je, ruby na lokalnom kompu sa capistrano bibliotekama. Na serveru (serverima) ssh pristup. I svn ili git SCM.
Napises taskove u capistranu za deploy, i podesis vise stage-ova (beta, prod), meni je beta default stage za deployment. Obicno imam beta.sajt.com i
www.sajt.com. Evo par taskova koje ja koristim svakodnevno, koji se pokrecu iz komandne linije:
Kôd:
cap deploy, update-uje workingcopy na beti
cap prod deploy, update-uje workingcopy na production-u
cap db:migrate, migrira bazu na beti (koristim doctrine, migracije su slicne kao u RoR-u)
cap prod db:migrate, isto to na production-u
Stim sto db:migrate i deploy koristim u kombinaciji
cap prod db:sync, importujem podatke sa production sajta na localhost
etc ...
Ovo mozes koristiti za bilo koji projekat u java-i, php-u, ruby-u, python-u.
Taskove pises sa pozivom system capistrano funkcije koja izvrsava komande putem ssh-a. Znaci i sa iole slabijim poznavanjem ruby-a i unix-a moguce je napisati taskove, pa cak i kombinovati par, za jako jednostavan deployment.
Ako nekom treba upload-ovacu svoju konfiguraciju capistrano konfiguracionih fajlova.