我有两种不同的AWS配置。在开发笔记本电脑上,开发人员在profile
内使用受MFA保护的shared_credentials_file
。
在詹金斯上,我们导出环境变量,然后扮演一个角色。
这意味着提供程序块的外观确实不同。在根级别,它们共享相同的backend.tf
。
我知道我可以使用不同的提供程序来拥有两个不同的根,但是有没有一种方法可以使我不必复制backend.tf
和其他根文件?
答案 0 :(得分:0)
我理解您的观点,但不建议这样做。在运行terraform命令之前,请准备好带有系统环境变量的AWS配置。
AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
AWS_SESSION_TOKEN (optional)
AWS_DEFAULT_REGION
AWS_DEFAULT_PROFILE (optional)
https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-envvars.html
答案 1 :(得分:0)
我认为最有意义的解决方案是将本地开发人员和jenkins自动化放置到两个单独的环境目录中,每个目录都具有自己的tree.logprice = tree(dtrain$logprice ~ logcarat + cut + color + clarity + depth + table + xx + yy + zz, data = dtrain)
plot(tree.logprice)
text(tree.logprice)
和后端工作区。
之所以有意义,是因为开发人员不应弄乱自动化创建的资源,并且对jenkins后端的任何操作都应由jenkins完成,否则开发人员可能会覆盖jenkins放置的资源,反之亦然。