2011-03-05 5 views
3

J'installe un serveur Ruby CI qui extrait mes dépôts git Rails de Github et installe les gems avec Bundler. Le serveur CI a un Gemfile de lui-même (comme c'est aussi une application Rails). Jusqu'ici tout va bien.Bundler ne charge pas le Gemfile correct

Maintenant, j'exécutons d'abord un paquet après l'installation d'une nouvelle git pull, cela fonctionne très bien:

bundle install --gemfile=[..]/build_13/Gemfile --deployment 

Ensuite, je liste les pierres installées et râteau d'exécution (pour exécuter la suite de tests):

bundle list 
bundle exec rake 

Voilà où ça va usé. Ces 2 dernières commandes chargent le Gemfile du serveur CI qui est différent de celui installé il y a quelques secondes. Ce Gemfile est dans un répertoire parent de celui que je veux lancer donc je suppose qu'il trouve d'abord le "parent" Gemfile et oublie de chercher le bon.

Une idée de comment je peux dire à bundler d'utiliser les gemmes correctes?

+0

Quel est le contenu de './. Bundle/config'? –

+0

Contenu de mon fichier './. Bundle/config', cela aide-t-il? BUNDLE_FROZEN: "1" BUNDLE_DISABLE_SHARED_GEMS: "1" BUNDLE_PATH: [..]/paquet – Cimm

Répondre

3

Got it!

Vous pouvez spécifier le chemin Gemfile comme une variable d'environnement:

export BUNDLE_GEMFILE=[..]/build_13/Gemfile 

Cela forcera Bundler à utiliser la Gemfile correcte. Merci à Philippe Creux 'article de m'avoir indiqué la bonne direction.

Pour référence future:

J'utilise BigTuna que mon serveur de CI et vous devrez ajouter la déclaration ci-dessus pour chacune des « étapes » pour le faire fonctionner.

Questions connexes