Ansible Jinja テンプレートを使用して k8 configmap YAML ファイルに ansible ボールト ファイルをロードしようとしていますが、YAML ファイルのコンテンツの最後に末尾の空白が追加されるという問題に直面しています。これにより、次のようなエラーが発生しています。
Vault format unhexlify error: Odd-length string
使用している ansible テンプレートのサンプルは次のとおりです。
プレイブック main.yml -
- name: display multiple files shell: cat /tmp/test.yml register: test
Ansible Jinja テンプレート
apiVersion: v1 data: test.yml: |- {{ test.stdout.splitlines()|indent(4, false)|trim|replace(' ','') }} kind: ConfigMap metadata: name: test namespace: test-namespace
test.yml の例:
$ANSIBLE_VAULT;1.1;AES256 62313365396662343061393464336163383764373764613633653634306231386433626436623361 6134333665353966363534333632666535333761666131620a663537646436643839616531643561 63396265333966386166373632626539326166353965363262633030333630313338646335303630 3438626666666137650a353638643435666633633964366338633066623234616432373231333331 6564
Jinja テンプレートから作成された出力 YAML は以下のとおりです。
apiVersion: v1 data: test.yml: $ANSIBLE_VAULT;1.1;AES256 62313365396662343061393464336163383764373764613633653634306231386433626436623361 6134333665353966363534333632666535333761666131620a663537646436643839616531643561 63396265333966386166373632626539326166353965363262633030333630313338646335303630 3438626666666137650a353638643435666633633964366338633066623234616432373231333331 6564 kind: ConfigMap metadata: name: test namespace: test-namespace
上記の末尾の空白の問題を修正するために、私の ansible テンプレート ファイルに何が欠けている可能性があるか教えてください。