Deployment 为什么是;环境变量';S3#U键和x27;“需要设置”;部署时被抛出?
我想使用它来部署多个环境。我使用dragonfly进行图像处理,使用S3进行存储。通常,您可以直接使用Deployment 为什么是;环境变量';S3#U键和x27;“需要设置”;部署时被抛出?,deployment,amazon-s3,heroku,heroku-san,Deployment,Amazon S3,Heroku,Heroku San,我想使用它来部署多个环境。我使用dragonfly进行图像处理,使用S3进行存储。通常,您可以直接使用heroku配置:add S3\u key=…S3\u secret=…为存储添加密钥和密码 因此,我已将这些详细信息添加到heroku_san使用的heroku.yml文件中: staging: app: app-staging config: &default BUNDLE_WITHOUT: "development:test" S3_KEY: XXXXXXX
heroku配置:add S3\u key=…S3\u secret=…
为存储添加密钥和密码
因此,我已将这些详细信息添加到heroku_san使用的heroku.yml
文件中:
staging:
app: app-staging
config: &default
BUNDLE_WITHOUT: "development:test"
S3_KEY: XXXXXXXXXXXXXXXXXX
S3_SECRET: XXXXXXXXXXXXXXXXXX
S3_BUCKET: app-staging
但在部署时,我仍然得到:
rake aborted!
ENV variable 'S3_KEY' needs to be set - use
heroku config:add S3_KEY=XXXXXXXXX
我错过了什么?有没有更好的方法将这些信息存储在YML文件中?一个简单的解决方案/解决方法:
heroku config:add S3_KEY=XXX S3_SECRET=XXX --app app-staging
有更好的主意吗?我认为您需要运行命令
rake all heroku:rack\u env
。然后,此命令将根据heroku_san YAML配置为您设置环境配置。无需手动运行heroku config:add
。只需运行heroku_san的配置任务:
$ rake all heroku:config
每当更新heroku.yml文件时,重复此操作
我对此也感到困惑,因为heroku_san的文档中奇怪地没有这个选项,但该选项确实出现在rake任务列表中:
$ rake -T
在heroku_san代码中:看起来很有希望。我得试试。干杯谢谢你能告诉我它对你是否有效吗?干杯当然可以不过可能需要一点时间。heroku:rack_env只设置rack_env环境变量。@jhiro009根据他们的“在Aspen和Bambor堆栈上,RAILS_env将自动镜像rack_env中的任何内容。”我让heroku_san更新文档,我的更改刚刚合并到了中。