typescript 如何处理cdktf输入

5sxhfpxr  于 2023-01-21  发布在  TypeScript
关注(0)|答案(1)|浏览(141)

我知道TerraformVariable类,可以处理TF_VAR_环境变量,CDKTF文档建议尽可能使用语言API
如果你计划使用CDKTF来管理你的基础设施,我们建议你使用你的语言的API来使用你通常通过Terraform变量传递的数据。你可以从磁盘(同步)或从环境变量读取,就像你在任何普通程序中所做的那样
我假设在typescript中这意味着使用process.env传入变量,我现在面临的问题是,如果我想严格一些,使一些变量成为强制性的,当运行多个堆栈时,一个堆栈中所需的变量,甚至在另一个堆栈中也成为必需的。
有没有什么技巧,很酷的模式可以用来绕过它呢?我甚至考虑过嗅探堆栈名称并有条件地验证输入,但是,我没有发现甚至这样做
谢谢

ioekq8ef

ioekq8ef1#

如果你想进行这些类型的检查,你要么需要一直传递变量,把你的栈拆分到不同的CDKTF应用程序中,要么(这是我的建议)使用TerraformVariable Construct,让Terraform在执行时处理验证(而不是像你现在描述的那样在合成时)。
理论上,您可以设置一个环境变量来指示要部署的堆栈,但这很快就会变得非常笨拙。

相关问题