我正在使用CDKTF将datadog helm chart部署到kubernetes集群中。我试图为confd设置一个值,但我的typescript多行字符串中的空格没有保留。
new helm.Release(this, "datadog-agent", {
chart: "datadog",
name: "datadog",
repository: "https://helm.datadoghq.com",
version: "3.1.3",
set: [
{
name: "clusterAgent.confd",
value: `postgres.yaml: |-
cluster_check: true
init_config:
instances:
\t- dbm: true
\t host: <redacted>
\t port: 5432
\t username: datadog
\t password: <redacted>
`
}
],
});
然而,当我尝试部署它时,我看到以下差异
+ set {
+ name = "clusterAgent.confd"
+ value = <<-EOT
postgres.yaml: |-
cluster_check: true
init_config:
instances:
- dbm: true
host: <redacted>
port: 5432
username: datadog
password: <redacted>
EOT
这使得多行字符串中的所有空格和制表符看起来都被剥离了。
如何让CDKTF保留多行字符串中的空格?
1条答案
按热度按时间41zrol4v1#
虽然它有点笨拙,但您可以尝试使用以下代码:
Where is Fn是从cdktf导入的,Fn函数在运行时执行,所以在synth期间,你有base64编码的内容,这是安全的,不会受到cdktf可能在这里意外操作的影响。