Déployer en utilisant Capistrano - est uniquement exécuté pour les serveurs correspondant
Im essayant de déployer mon application à l'aide de Capistrano, mais je reçois ce message d'erreur:
`deploy:setup " n'est exécutée que pour les serveurs correspondant {:sauf=>{:no_release=>true}}, mais pas de serveurs appariés
Lors de l'exécution de cette commande:
bundle exec cap deploy:setup
Voici mon déployer.rb fichier.
set :application, "example.com"
set :repository, "[email protected]:username/repo.git"
set :use_sudo, false
set :scm, :git
set :web, application
set :app, application
set :db, application
set :branch, "master"
set :user, "webmaster"
set :deploy_to, "/opt/www/#{application}"
set :deploy_via, :remote_cache
set :domain, application
set :port, 2222
set :bundler_cmd, "bundle install --deployment --without=development,test"
ssh_options[:paranoid] = false
namespace :deploy do
task :start do ; end
task :stop do ; end
task :restart_stalker do
run "cd #{deploy_to}/current && thor stalker:kill && stalker:init"
end
task :restart, :roles => :app, :except => { :no_release => true } do
run "cd #{deploy_to}/current && touch tmp/restart.txt"
end
after "bundler_cmd", "deploy:restart_stalker"
end
Je suis à l'aide de Rails 3.
source d'informationauteur Oleander
Vous devez vous connecter pour publier un commentaire.
Vous devez définir certains rôles. E. g.:
Il semble que vous avez utilisé "ensemble" au lieu de "rôle", mais vous devez vous assurer avant de faire le changement.
La plupart des gens sont probablement à l'aide de plusieurs étages avec capistrano de sorte que vous ne devriez pas mettre vos rôles dans la de déployer.rb, donc si vous avez ajouté de l'environnement des rôles spécifiques dans config/deploy/#env_name.rb alors assurez-vous d'ajouter ces dans votre config/deploy.rb
et assurez-vous que le capistrano-ext gem est installée.
Semble que vous avez déjà configuré votre serveur avec
bundle exec cap deploy:setup
.Si c'est le cas, vous devez maintenant exécuter
bundle exec cap deploy
.Je vais laisser une réponse ici, qui m'a aidé que lorsque aucune des réponses proposées ici ou ailleurs, pourrait-il m'aider - j'ai passé des jours à la recherche de cette question avant que je trouve une solution.
Assurez-vous que si vous utilisez plusieurs étapes que l'environnement spécifique des fichiers de configuration (par exemple,
config/deploy/environment.rb
) sont les seulement fichiers dans leconfig/deploy
répertoire. J'ai eu un environnement,dev
que j'étais incapable de déployer trop, en fait il y en quelque sorte, a été un videconfig/deploy/dev
fichier qui a été prise en chargé à la place de monconfig/deploy/dev.rb
fichier, à l'origine chaque déploiement de cet environnement échouer avec le posté erreur.