2017-05-30 1 views
0

J'utilise le pipeline heroku. J'ai mis en place mes deux applications. Un pour la mise en scène, un pour la production. Les deux utilisent "production" comme variable d'environnement.Pipeline d'Heroku. Exécuter des commandes sur l'application de production (pas de mise en scène)

Si je cours heroku run rails c je peux accéder à la console sur mon application de mise en scène. Le site web heroku permet également d'exécuter une console dans l'application de production, mais uniquement avec la partie heroku run prédéfinie. Ce qui signifie que si pour une raison quelconque, j'ai besoin d'exécuter une commande plus fondamentale (par exemple heroku pg:reset, je sais que je sais), je ne peux pas.

Y a-t-il un moyen de spécifier quelle application heroku je veux exécuter les commandes? Quelque chose comme heroku pg:reset production-app-name peut-être? J'utilise cloud9 comme IDE, je ne sais pas si cela fait une différence.

Répondre

1

Oui, vous l'avez presque raison, il suffit d'ajouter --app avant la app-name:

$ heroku pg:reset --app production-app-name 

En fait, si vous avez plus d'une application configurée (exécuter heroku apps leur liste), vous obtiendrez une erreur ; par exemple, essayez d'exécuter une plus sûre commande:

$ heroku logs 

Si vous avez plus d'une application, la sortie sera:

▸ Error: Multiple apps in git remotes 
▸ Usage: heroku logs --remote production 
▸  or: heroku logs --app production-app-name 
▸ 
▸ Your local git repository has more than 1 app referenced in git remotes. 
▸ Because of this, we can't determine which app you want to run this command against. 
▸ Specify the app you want with --app or --remote. 
▸ 
▸ Heroku remotes in repo: 
▸ production  (production-app-name) 
▸ staging   (staging-app-name) 
▸ 
▸ https://devcenter.heroku.com/articles/multiple-environments 
+0

donc je viens de l'ajouter comme une télécommande et c'est tout ? – Tashows

+0

@Tashows Oui, cochez [cet article] (https://devcenter.heroku.com/articles/multiple-environments) pour définir plusieurs environnements. – Gerry

+0

Merci. J'avais juste besoin d'ajouter la télécommande en utilisant ceci: '' 'git remote add live https: // git.heroku.com/app-name.git''' Maintenant, ça fonctionne comme vous l'avez dit. :) – Tashows