Sono nuovo a Capistrano e sto cercando di capirese è possibile distribuire su più server usando un metodo push con tag git come riferimento. È un po 'più complicato di così, dato che si tratta di server Windows con FreeSSH installato. Ho questo finora:
deploy.rb:
set :application, "iis_app"
set :repo_url, "iis_repo"
set :deploy_via, :copy
set :copy_cache, true
definizioni del server:
role :push_servers, %w{"srv1" "srv2" "srv3" "srv4"}
ssh_options: {
user: "windows_user",
forward_agent: true,
auth_methods: %w(password),
password: ENV["WINDOWS_PW"]
}
Altrimenti sono un po 'perso. Se qualcuno potesse indicarmi la giusta direzione, sarebbe fantastico.
risposte:
0 per risposta № 1La tua configurazione sembra a posto. L'unica cosa è tua :repo_url
dovrebbe essere qualcosa del genere:
git@github.com:mycompany/myrepo.git
Un tag git è essenzialmente tradotto in una revisione (hash SHA1), quindi puoi fare qualcosa del genere:
Per Capistrano 2.9 e versioni successive:
cap -S revision=<the sha1 of your tag> deploy
Per le versioni precedenti di Capistrano, Puoi farlo:
cap -s branch=<the sha1 of your tag> deploy
Spero che sia d'aiuto.