Heroku管道。在生产应用程序上运行命令(不是暂存)

时间:2017-05-30 00:02:50

标签: ruby-on-rails ruby heroku rails-console heroku-postgres

我正在使用heroku管道。我设置了两个应用程序。一个用于分期,一个用于生产。两者都使用“生产”作为环境变量。

如果我运行heroku run rails c,我可以在我的暂存应用上访问控制台。 heroku网站允许在生产应用程序中运行控制台,但只能使用预先设定的heroku run部分。这意味着,无论出于何种原因,我需要运行更基本的命令(例如heroku pg:reset;我知道我知道),我不能。

那么有没有办法指定我想运行命令的哪个heroku应用程序?像heroku pg:reset production-app-name这样的东西可能吗?

我使用的是cloud9作为IDE,不确定这是否有所作为。

1 个答案:

答案 0 :(得分:1)

是的,你得到的几乎是正确的,只需在--app之前添加app-name

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

实际上,如果您配置了多个应用程序(运行heroku apps列出它们),您将收到错误消息;例如,尝试运行更安全的命令:

$ heroku logs

如果您有多个应用,则输出为:

 ▸    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