json クエリ フィルター内で ansible 変数を使用したいと考えています。これは私のコードです:
プレイブックの実行:
ansible-playbook debug.yml -e "project_environment=live"
- debug:
msg: "{{ project_environment }}"
- debug:
msg: "{{ check_objects | json_query('`{{project_environment}}`.current') }}"
これは私の辞書です:
check_objects:
live:
current:
- example.com
next:
- next.example.com
これは私が得たものです:
TASK [debug : debug]
ok: [sample-hostname] => {
"msg": "live"
}
TASK [debug : debug]
ok: [sample-hostname] => {
"msg": ""
}
期待値を使用して変数を置き換えると、出力は正常に機能しています。
- debug:
msg: "{{ check_objects | json_query('live.current') }}"
TASK [typo3-deployment/check : debug]
ok: [sbk-test-ntly01] => {
"msg": [
"example.com"
]
}
変数を補間しているときに問題が発生すると思います。
私はこの解決策を試しましたが、うまくいきません: Ansible : 変数を json_query フィルターに渡します