web-dev-qa-db-fra.com

SSHKit :: Runner :: ExecuteError

$ bundle exec cap production deploy

(Backtrace limité aux tâches importées) cap avorté!
SSHKit :: Runner :: ExecuteError:
Exception lors de l'exécution en tant que Psara @ sakura: état de sortie git: 128 git stdout: Rien écrit git stderr: Autorisation refusée (publickey).
fatal: l'extrémité distante a raccroché de façon inattendue

SSHKit :: Command :: Échec:
état de sortie git: 128
git stdout: Rien d'écrit
git stderr: Autorisation refusée (publickey).
fatal: l'extrémité distante a raccroché de façon inattendue

Tâches: TOP => git: check (Voir la trace complète en exécutant la tâche avec --trace) Le déploiement a échoué avec une erreur:
Exception lors de l'exécution en tant que Psara @ sakura:
git exit status: 128 git stdout: Rien d'écrit
git stderr: Autorisation refusée (publickey).

fatal: l'extrémité distante a raccroché de façon inattendue

*

deploy.rb

set: application, 'Psara'
set: repo_url, '[email protected]: CBLaughter/psara.git'
set: deploy_to, '/ home/Psara/Psara'
set: default_run_options,: pty => true

espace de noms: deploy do

après: redémarrage,: clear_cache faire sur les rôles (: web), dans:: groupes, limite: 3, attendre: 10 faire # Ici, nous pouvons faire n'importe quoi comme: # dans release_path faire # exécuter: rake, 'cache: clear' # end end end

fin

set: ssh_options, {forward_agent: true, paranoid: true, keys: "~/.ssh/id_rsa"}

*

production.rb

décor: scène,: mise en scène
set: Rails_env,: production

rôle: application,% w {sakura}
rôle: web,% w {sakura}
rôle: db,% w {sakura}

serveur 'sakura', utilisateur: 'Psara', rôles:% w {application web}, my_property:>: my_value

set: ssh_options, {
touches:% w (~/.ssh/id_rsa),
forward_agent: false,}



Je serais heureux, si vous pouviez m'apprendre ce que je peux faire pour résoudre ce problème.

J'ai déjà ajouté une clé publique sur le bitbucket, mais cela ne fonctionne pas.

*

rapport de transfert d'agent SSH


  1. [Succès] repo_url réglage ok

  2. [succès] le fichier de clé privée ssh existe

  3. [Succès] ssh-agent le processus semble s'exécuter localement

  4. [Succès] ssh-agent processus reconnu par ssh-add commande

  5. [succès] clés privées ssh ajoutées à ssh-agent

  6. [succès] référentiel d'applications accessible depuis la machine locale

  7. [succès] tous les hôtes utilisant une connexion sans mot de passe

  8. [Succès] forward_agent ok pour tous les hôtes

  9. [succès] agent ssh transféré avec succès vers des hôtes distants

  10. [succès] référentiel d'applications accessible à partir d'hôtes distants


Il semble que le transfert d'agent SSH soit correctement configuré! Vous pouvez poursuivre le processus de déploiement.

Il a réussi tous les tests, mais fait toujours la même erreur.

17
Shion Yamaguchi

Assurez-vous que ssh-agent est en cours d'exécution sur votre machine, car vous utilisez le transfert ssh, vos clés locales devraient pouvoir accéder et cloner votre dépôt à partir de bitbucket. Vous pouvez l'exécuter avec:

eval `ssh-agent`
ssh-add ~/.ssh/id_rsa

Plus d'informations sur ssh-forwarding vous pouvez trouver ici .

Une autre chose que vous devez vérifier manuellement est que vous pouvez ssh sur votre serveur (votre clé publique doit être ajoutée à ~/.ssh/authorized_keys sur le serveur), et bien sûr que vous pouvez cloner votre dépôt localement (ce que vous pouvez probablement faire).

Mettre à jour:

Maintenant, je me suis rendu compte que vous désactivez le transfert pour la production, dans ce cas, vous devez vous assurer que la paire de clés qui se trouve sur votre serveur (vous devez l'avoir, car le transfert est désactivé), est capable de cloner le dépôt à partir de bitbucket, vous pouvez essayer clonage sur le serveur à la main aussi.

50
rastasheep

Comme le dit le backtrace, cela est probablement lié aux clés publiques ssh. Je recommanderais de dépanner le problème avec capistrano-ssh-doctor . Vous obtiendrez un rapport indiquant précisément ce qui n'a pas fonctionné dans la configuration.

Avertissement, je suis l'auteur de capistrano-ssh-doctor brancher.

3
user777337