salt-stackとjinjaを使用してスクリプトを作成しようとしています。それは私が取得したい結果です:
#!/bin/bash
echo 1 &&
echo 2 &&
echo 3 &&
echo 4
スクリプトがあります:
init.sls
{% set cmds = [] %}
{% for id in [1, 2, 3, 4] %}
{% do cmds.append("echo " ~ id) %}
{% endfor %}
/tmp/test.sh:
file.managed:
- source: salt://test.sh.jinja
- template: jinja
- mode: 0775
- require:
- file: /tmp
- context:
cmds : '{{ cmds | join(" &&\n") }}'
test.sh.jinja
#!/bin/bash
{{ cmds }}
結果
cat /tmp/test.sh
#!/bin/bash
echo 1 && echo 2 && echo 3 && echo 4
そのため、改行は削除されました。修正方法ありがとうございました。
クイックルック:https://docs.saltstack.com/en/latest/topics/jinja/index.html#list-files
明らかに: