amazon-web-services - AWS Auth 参数在多个环境中被覆盖
问题描述
我对每个环境都有不同的回调 URL,如果我使用并修复 URL,如果我合并到我的分支amplify auth update
中,它仍然会被覆盖,这非常令人沮丧。不确定解决方案是什么。amplify/backend/auth/projectname/parameters.json
master
dev
解决方案
截至目前,Amplify 对特定于parameters.json
.
对我们团队有用的是我们parameters.json
在 CI/CD 管道中覆盖我们的(我们只有生产环境的不同参数)
所以,我们制作了一个脚本(在节点中)。这是我们自定义配置的一个示例。
我们的解决方案取决于放大环境名称。目前,我们在生产环境中使用 prod 前缀。所以,你会看到类似
process.env.USER_BRANCH.startsWith('prod')
配置文件
module.exports = {
'api': {
filePath: 'amplify/backend/api/myproject/parameters.json',
override: {
production: {
ElasticSearchInstanceCount: 3,
ElasticSearchInstanceType: 't2.medium.elasticsearch'
}
}
}
}
script.js(不是完整版本)
if(!process.env.USER_BRANCH || !process.env.USER_BRANCH.startsWith('prod')) return
const parameter = JSON.parse(fs.readFileSync(config.filePath))
const overrideConfig = config.override['production']
fs.writeFileSync(config.filePath, JSON.stringify({
...parameter,
...overrideConfig
}))
最后,在你的,之前amplify.yml
运行。例如node ./script.js
amplifyPush
version: 0.1
backend:
phases:
build:
commands:
- node ./scripts/src/amplify-parameters-override/script.js
- amplifyPush --simple
推荐阅读
- python - 创建一个两部分正则表达式来隔离句子的一部分
- git - Visual Studio - 传出提交 - 禁用推送选项
- webpack - vuetify.js.map HTTP 404
- tensorflow - 我正在尝试复制 cnn 并将它们合并,以便获得双路径架构。但是出现错误。我使用的是 keras 2.1.6 版本
- c++ - WM_KEYUP 反复调用保持键
- python - 有没有更好的方法仅使用 while 循环在 python 中打印此模式?
- mysql - MySQL表,其中每个“数据”都有不同的数量信息
- java - 如何使用 Java 在 Windows 上的常见(非用户特定)文件位置附加数据文件?
- elasticsearch - 如何在使用 Java API 创建索引时使用模板
- java - SMTP 服务器无法与 Exchange 服务器通信