gpt4 book ai didi

azure - Ansible 中的模板中的模板?

转载 作者:行者123 更新时间:2023-12-03 02:39:14 25 4
gpt4 key购买 nike

我是 Ansible 新手,我很难弄清楚如何让表达式发挥作用。我尝试运行一个引用字典变量的命令任务,其中我需要引用的键也是动态的。相关代码(多行格式化):

   tasks:
- name: set volume
command: az webapp config storage-account add --share-name shareName2
--access-key {{ kvsecrets['connectionstring-{{resources_name}}-key2'] }}

所以 kvsecrets 是先前任务注册的字典,而 resources_name 是在 playbook 中进一步声明的变量。上面的语法不起作用,因为它输出 kvsecrets['connectionstring-{{resources_name}}-key2'] 而不进行内部转换。获取该字典键的值的正确格式是什么?

谢谢!

最佳答案

Ansible 是 python 模块的包装器,并使用 jinja2 进行模板化。这个问题可以通过 string concatenation来解决:

下面是一个例子:

注意:请注意双引号和单引号

tasks:
- name: set volume
command: az webapp config storage-account add --share-name shareName2
--access-key {{ kvsecrets["'connectionstring-'+resources_name+'-key2'"]}} }}

关于azure - Ansible 中的模板中的模板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61903228/

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