Question

Suite de ma question sur l'utilisation de Capistrano congelé quelques jours auparavant J'ai toujours des problèmes avec Capistrano bloqué dans mon dossier de fournisseur.

Lorsque j'essaie d'exécuter ma version gelée de cap

ruby -r rubygems ./vendor/gems/capistrano-2.5.2/bin/cap deploy-with-migrations

Je reçois une erreur

... RubyGem version error: net-ssh(1.0.8 not >= 2.0.0) (Gem::LoadError) ...

Net-ssh-2.0.4 est bloqué dans mon dossier fournisseur car je savais qu'il s'agissait d'une dépendance. Comment l'utiliser?

J'espérais ajouter mon dossier fournisseur à mon fichier .gemrc sous gempath: cela aurait fait l'affaire, mais ce n'est pas le cas. "environnement gem" indique le chemin du fournisseur, mais "liste des gem" n'apparaît pas dans le dossier du fournisseur.

Des idées?

Était-ce utile?

La solution

En fin de compte, j’ai décidé de ne pas geler Capistrano et ses dépendances dans le répertoire gems de mon fournisseur, car ils n’étaient pas utilisés par mon application - ils étaient utilisés pour déployer mon application.

Au lieu de cela, je les ai installés localement sur mon compte d'hébergement et tout a bien fonctionné.

Autres conseils

Si vous souhaitez éviter complètement les gems installés par le système (ce qui n’est pas une mauvaise idée si vous n’avez pas le contrôle sur eux), installez une copie de rubygems dans le répertoire du fournisseur.

Définissez les variables d'environnement GEM_PATH et GEM_HOME dans le répertoire / path / du répertoire / vendor / gems, puis installez rubygems à partir de là.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top