Skip to content

Instantly share code, notes, and snippets.

@francois-blanchard
Created June 12, 2014 10:14
Show Gist options
  • Save francois-blanchard/b7eaba27ea02e0414e06 to your computer and use it in GitHub Desktop.
Save francois-blanchard/b7eaba27ea02e0414e06 to your computer and use it in GitHub Desktop.
Méthode de déploiement Capistrano
set :application, "TEST"
# repo details
set :scm, :git
set :scm_username, "git_name"
set :repository, "git@github.com:git_name/repo_name.git"
set :branch, "master"
set :git_enable_submodules, 1
# main details
role :web, "IP or name serveur"
role :app, "IP or name serveur"
# server details
default_run_options[:pty] = true
set :ssh_options, {:forward_agent => true}
set :deploy_to, "/path/to/deploy/"
set :deploy_via, :remote_cache
set :user, "user_ssh"
set :use_sudo, false
# Clean old releases
set :keep_releases, 30
after "deploy:restart", "deploy:cleanup"
# multi-stage deploy process
task :production do
server 'IP or name server', :app, :web, :primary => true
set :deploy_to, "/path/to/deploy/production/"
set :app_environment, "production"
end
task :staging do
server 'IP or name server', :app, :web, :primary => true
set :deploy_to, "/path/to/deploy/staging/"
set :app_environment, "staging"
end

Si c'est le premier déploiement faire :

  • capify
  • Linker en ssh ordi local -> github et serveur -> github
  • Configurer le fichier congif/deploy.rb
  • cap staging deploy:setup et cap production deploy:setup

Dans le projet en local executez :

  • cap production deploy pour un déploiement en prod
  • cat staging deploy pour un dépoiement en staging

Pour forward la key ssh (utiliser la key ssh github de l'ordi local) :

  • Sur la machine local, ssh-add ~/.ssh/key_rsa
  • Pour vérifier ssh-add -L
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment