我认为这可能适用于任何键/值存储类型,但我主要使用Consul进行存储。我需要一种方法来保存键值的列表。但是,元素周围的引号被剥离。
我已经尝试过所有这些,问题是我需要它们作为有效列表返回,以便我可以通过Ansible运行它w / with_flattened
curl -X PUT -d '['ui','dashboard']' http://localhost:8500/v1/kv/deploylist
curl -X PUT -d '[\'ui\',\'dashboard']' http://localhost:8500/v1/kv/deploylist
Ansible任务:
- debug: msg="{{ deploylist_vars.value | map(attribute='Value') | first }}"
register: module_id
# Output
"msg": "[ui,dashboard]"
我需要遍历列表并执行进一步的操作。但是,我似乎无法正确解析这些元素。
- debug: msg="{{ item }}"
with_flattened:
- "{{ module_id }}"
答案 0 :(得分:3)
这些报价看起来都不对。我希望你想要一些像JUT一样的PUT,可能是["ui","dashboard"]
。以下内容应该让bash / zsh通过:
curl -X PUT -d '["ui","dashboard"]' http://localhost:8500/v1/kv/deploylist
你可以在单引号中进一步做一些反斜杠转义,但不要在没有一点小心的情况下添加更多的单引号。