Lorsque je exécute Je peux copier la commande directement hors de la sortie Capistrano et exécuter la commande sur SSH et cela fonctionne bien sans problèmes. P> La commande regarde quelque chose alors: p> Pourquoi la commande échoue-t-elle à Capistrano, mais réussira à travers une borne SSH? P> P> capuchon déployé code>, Capistrano tentera de créer un dossier tel que
$ home / sites / my_app / sorties / horodatage code>. Je peux voir la commande tenter de courir, mais elle ne créera pas réellement le dossier.
3 Réponses :
Je ne suis toujours pas sûr d'où le problème s'étend sur la ligne:
after "deploy:setup", "deploy:create_release_dir" namespace :deploy do task :create_release_dir, :except => {:no_release => true} do run "mkdir -p #{fetch :releases_path}" end end
'Ensemble: Deploy_via,: Remote_cache' n'a pas aidé. Je viens de créer un dir 'Run "Mkdir -p # {Fetch: relisions_path}"' Comme ça.
Ignorer une partie sous la lineline verte, mais je les garderai, juste pour référence pour les autres.
Le problème mentionné me passait lorsque j'utilisais Capistrano deuxième partie de la réponse: p> Une fois que cela m'est arrivé. Les touches GITUB n'ont pas été configurées dans Vous devez générer une clé SSH sur le serveur. Une fois que le fichier 3.9.x Code> version. Quand j'ai rétrogradé vers la version
3.4.0 code> tout fonctionnait. P>
~ / .ssh / code>. p>
.pub code> généré dans
~ / .sssh code> alors vous devriez aller sur github.com (ou tout autre service) et ajoutez votre clé SSH nouvellement générée sur le Web. -Site (il devrait être trouvé sous la page Paramètres ou similaire).
En outre, sur le serveur ajoutez un enregistrement approprié dans le fichier
~ / .ssh / config code> qui correspond à l'identification dans le script de déploiement de capistrano: p>
config code> doit ressembler à ceci: p>
Dans mon cas, il s'agissait d'ajouter cette ligne dans le fichier deploy.rb
Capistrano roule en arrière si quelque chose d'autre échoue. Pouvez-vous publier la sortie Capistrano et pendant que vous êtes dessus, la sortie du capuchon déployé: chèque?
CAP renvoie
Vous souhaitez avoir toutes les dépendances nécessaires à installer code> à partir de CAP
Déployer: chèque code>
Un certain nombre de choses pourraient être désactivées: le dossier est-il écritable par l'utilisateur que vous utilisez pour vous connecter au serveur? Est-ce que quelque chose d'autre échoue au script de déploiement?
Je n'ai pas encore pensé celui-ci, mais la question semble provenir du fait que le
$ home / sites / my_app / sorties code> n'existe pas. Si vous SSH dans et créez le répertoire des publications manuellement, il résout temporairement le problème. En essayant toujours de comprendre pourquoi la casquette ne fait pas cela comme si elle a fait auparavant.
Steve: Le répertoire des publications doit être créé par
déployé: configuration code>, que vous devrait exécuter avant le premier déploiement .
Déployer: Configuration a été supprimée de Capistrano3 Github.com/capistrano/capistrano/issues/...