Ansible:在 json_query 过滤器中传递一个变量 [英] Ansible : pass a variable in a json_query filter
本文介绍了Ansible:在 json_query 过滤器中传递一个变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我需要在 json_query 过滤器中传递一个变量.
I need to pass a variable in a json_query filter.
这个带有固定字符串的例子工作正常(string=tutu):
This example, with a fixed string, is working correctly (string=tutu) :
- set_fact:
my_value_exist: "{{ my_json.json | json_query('contains(component.name,`tutu`)')}}"
但我需要传递一个变量,而不是 tutu
But i need to pass a variable , instead of tutu
- set_fact:
my_value_exist: "{{ my_json.json | json_query('contains(component.name,`{{my_var}}`)')}}"
{{my_var}} 是在上一步中检索到的字符串
{{my_var}} is a string retreived in a previous step
您的语法是否正确,以便变量 {{my_var}} 可以在参数中正确传递?
Do you have the correct syntax, so that the variable {{my_var}} could be passed correctly in parameter ?
感谢您的帮助.
问候,
推荐答案
为任务使用辅助变量:
- set_fact:
my_value_exist: "{{ my_json.json | json_query(qry) }}"
vars:
qry: 'contains(component.name,`{{my_var}}`'
这篇关于Ansible:在 json_query 过滤器中传递一个变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文