我们的目标是创建不可变的工件并将其部署在不同的环境中。
无服务器框架已经通过package
函数支持此功能,因此我们只能构建一个构建包并将其部署在不同的环境/ AWS帐户中。
我们在构建帐户/环境中使用sls package -v -p build
创建程序包,然后使用sls deploy -v -p build
在开发,集成和生产环境中部署此程序包。
不幸的是,我们还没有找到一种方法来覆盖不同帐户/环境中的环境变量。打包后,将使用的变量和环境硬编码在cloudformation-template-update-stack.json中。
我们尝试了什么:
SQS_QUEUE_NAME: ${file(config/config.${self:provider.stage}.json):SQS_QUEUE_NAME}
或SQS_QUEUE_NAME: ${file(config/config.${opt:stage}.json):SQS_QUEUE_NAME}
sls deploy -v -c config/config.production.json -p build
我们missed
有什么东西吗?
谢谢!
答案 0 :(得分:1)
您是否尝试过使用--stage
标志?表示环境?