gpt4 book ai didi

ansible - 在ansible模板中生成元组变量

转载 作者:行者123 更新时间:2023-12-02 18:45:14 27 4
gpt4 key购买 nike

我正在尝试设置一个剧本来部署 influxdb 集群。一切正常,除了我们使用 INfluxDB Cluster Client

我正在生成一个 Production.py 文件,该文件由我们的脚本读取。

InfluxdbClusterClient 正在等待一个元组来列出所有 influx 服务器:

'hosts': [('fr-influxdb-prod-1', 8086), ('fr-influxdb-prod-2', 8086), ('fr-influxdb-prod-3', 8086)],

我正在尝试从 ansible 变量生成这些元组,但我不知道如何生成。我尝试过:

/ Variables /
influxdb_hosts: [('fr-influxdb-prod-1', 8086), ('fr-influxdb-prod-2', 8086), ('fr-influxdb-prod-3', 8086)]

/ Template /
....
'hosts': {{influxdb_hosts}},
...

不幸的是,它无法按预期工作,因为 Ansible 正在转换列表中的元组(即 [('fr-influxdb-prod-1', 8086), ('fr-influxdb-prod-2', 8086), ('fr-influxdb-prod-3', 8086)] 变为 ["('fr-influxdb-prod-1'", "8086)", "('fr-influxdb -prod-2'","8086)","('fr-influxdb-prod-3'","8086)]"

你看到我做错了什么了吗?

最佳答案

您可以使用折叠 block 标量来通知 Ansible 该参数是一个不应被解析的字符串:

influxdb_hosts: >
[('fr-influxdb-prod-1', 8086), ('fr-influxdb-prod-2', 8086), ('fr-influxdb-prod-3', 8086)],

这是生成的目标文件:

'hosts': [('fr-influxdb-prod-1', 8086), ('fr-influxdb-prod-2', 8086), ('fr-influxdb-prod-3', 8086)],

关于ansible - 在ansible模板中生成元组变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34887828/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com