25

要为 Heroku 应用程序设置配置变量,请执行以下操作:

$ heroku config:set GITHUB_USERNAME=joesmith

如何使用文件内容设置配置变量?

4

3 回答 3

38

看一下heroku-config插件,它添加了一个heroku config:push命令来将键值对推.env送到名为应用程序的文件中。

它还有一个heroku config:pull命令可以做相反的事情,并且非常适合foreman使用.env.

https://github.com/xavdid/heroku-config

例子
heroku config:push --file=.env.production 
于 2013-09-16T08:26:59.660 回答
0

我知道这为时已晚,但对于登陆这里的未来用户仍然会有所帮助。

我还想要一个快速的解决方案来向 heroku 应用程序添加变量,但是复制粘贴太无聊了。所以编写了一个脚本来从.env文件中读取值并将其设置在请求的应用程序中——所有的东西都作为一个选项传递:

https://gist.github.com/md-farhan-memon/e90e30cc0d67d0a0cd7779d6adfe62d1

用法

./bulk_add_heroku_config_variables.sh -f='/path/to/your/.environment/file' -s='bsc-server-name' -k='YOUR_CONFIG_KEY1 YOUR_CONFIG_KEY2'
于 2019-10-18T21:53:07.377 回答
0

使用 honcho 和调用的简单纯 python 解决方案:

from honcho.environ import parse
from invoke import run

def push_env(file='.env'):
    """Push .env key/value pairs to heroku"""
    with open(file, 'r') as f:
        env = parse(f.read())
    cmd = 'heroku config:set ' + ' '.join(
        f'{key}={value}' for key, value in env.items())
    run(cmd)

这里的想法是,您将获得与使用 honcho 在本地运行项目相同的配置。然后我使用 invoke 从命令行轻松运行此任务(使用@taskand c.run),但我已在此处对其进行了调整以独立运行。

于 2020-08-11T00:51:38.047 回答