如何在CDKTF中实现Terraform引用输出值的类型转换
CDKTF中字符串转整数类型的实现方法
CDKTF 封装了所有 Terraform 原生内置函数,你需要的 atoi 能力可以直接通过核心包导出的 Fn 类调用,注意不要使用编程语言原生的类型转换方法(比如 Python 的 int()),因为资源属性是 Terraform 运行时才会解析的引用值,静态转换会报错。
修改后的代码示例如下:
# 先从cdktf包导入Fn工具类 from cdktf import Fn service_account = ServiceAccount( tf_stack, id='123', description='', name="service-account", provider=cc_provider ) api_key = ApiKey( tf_stack, id='api-keys', environment_id="env-xxxxx", cluster_id="lkc-123123", # 直接调用Fn.atoi完成字符串转整数 user_id=Fn.atoi(service_account.id), provider=cc_provider )
补充说明:
- 除
atoi外,其他 Terraform 内置类型转换函数都可以通过Fn类的同名方法调用,比如tonumber、tostring、tobool等 - 如果你使用 TypeScript/Go/Java 等其他 CDKTF 支持的开发语言,用法逻辑完全一致,调用对应语言封装的
Fn类下的同名方法即可
内容的提问来源于stack exchange,提问作者AlexV
相关产品推荐
相关产品推荐

