2017-04-06 7 views
1

J'essaye de placer un jeton d'autorisation pour mon gemfile pour accéder à un repo de git privé. direVariables d'environnement de Figaro dans Gemfile

gem 'mygem', git: "https://ENV['GITHUB_AUTH_TOKEN']:[email protected]/my_account/my_repo.git", tag: "0.0.1" 

Je ne peux pas trouver comment stocker ce dans le Figaro, mais le rendre accessible empaqueter quand je lance paquet installer.

Très similaire à This question

Sauf que, plutôt que d'avoir une config/heroku_env.rb J'ai une config/application.yml fichier. Je suis sûr que la réponse est ridiculement simple. Je voudrais le garder dans ce fichier car il garde tout bien rangé dans un seul endroit, mais sinon je peux le mettre quelque part spécifique tant qu'il s'harmonise bien avec heroku.

Des idées?

Répondre

0

J'ai trouvé une façon de le faire qui fonctionne, c'est légèrement gênant dans le fait que vous devez garder les informations d'identification dans deux endroits différents.

.bundle

BUNDLE_GITHUB__COM: <auth_token>:x-oauth-basic 

Gemfile

gem 'mygem', git: "https://github.com/my_account/my_repo.git", tag: "0.0.1" 
# Note that you don't put anything in here, bundler sorts it out automagically 

Et puis

heroku config:set BUNDLE_GITHUB__COM=<auth_token>:x-oauth-basic 

Works. Ennuyeux parce que maintenant application.yml a un contenu différent de mon fichier heroku. Mais soit ainsi.

Mise à jour:

meilleure solution

Il suffit de mettre

BUNDLE_GITHUB__COM: <auth_token>:x-oauth-basic 

à la fois votre application.yml et config Heroku.

Je souhaite que quelqu'un ait documenté cela quelque part, m'aurait sauvé une tonne de problèmes ...

0

Je pense que vous devez exécuter

figaro heroku:set -e production 

pour elle de mettre en définir les variables d'environnement dans votre fichier config/application.yml comme variables d'environnement Heroku.

+0

Ce n'est pas le problème. Le problème est que même localement le gemfile ne récupère pas la variable auth que j'ai stockée dans le fichier application.yml. – Carpela