我遇到了一个情况,我试图在ec2-instance内的kubernetes(k8s)内的jenkins中运行一个terraform( v0.11.7
)脚本 .
-
k8s worker正在使用特定aws实例配置文件的ec2实例上运行
-
terraform脚本通过各种环境变量,凭证和配置文件进行配置,以便能够为其目的承担特定角色
设置在我的macbook上工作正常,但遗憾的是,在jenkins / k8s / ec2中,ec2实例配置文件占主导地位且terraform脚本失败,因为它需要特定的假定角色来完成它的操作 .
它实际上在 terraform plan
步骤失败, TF_LOG
输出显示该角色是从实例配置文件派生的 .
想知道是否有人遇到这种情况并有任何相关的指导?
1 回答
看起来像我特定用例的特殊酱是Terraform的aws提供程序skip_metadata_api_check flag,它显然在我的特定设置中禁止Terraform _1864653的正常机制 .
我的具体设置涉及使用提供程序的profile arg以及涉及aws共享
credentials
和config
文件的named profile feature .Terraform中承担角色的另一个选择是提供者的assume_role arg,但我更喜欢抽象的
profile
选项 .