安定したコードブロック

安定したコードブロック

ansibleでxml形式のファイルを作成する必要があります。ファイルには<>とスペースが含まれています。

<>または行の間にスペースを入れずにプレイブックを実行すると、プレイブックからファイルが作成されます。

Next コンテキストでファイルを作成する方法

blockinfile:
  path: /tmp/testfile.txt
  content: |
          <example1>
            this is test1
            blah
            blah
          </example1>

         <example2>
          this is test2
          hello
         </example2>

ベストアンサー1

blockinfileのブロックセクションを見ると、https://docs.ansible.com/ansible/2.5/modules/blockinfile_module.html

例の役割です。

user1$ cat testblock/tasks/main.yml
---
- name: Testing blockinfile
  blockinfile:
    path: /tmp/testfile.txt
    block: |
      <example1>
         this is a test1
         blah
         blah
       </example1>

       <example2>
         this is test2
         hello
       </example2>
...

スクリプトは次のとおりです。

user1$ cat testblock.yml
---
- hosts: localhost
  roles:
    - testblock
...

実行すると、ansible-playbook ./testblock.yml次のファイルが生成されます。

user1$ cat /tmp/testfile.txt
# BEGIN ANSIBLE MANAGED BLOCK
<example1>
   this is a test1
   blah
   blah
 </example1>

 <example2>
   this is test2
   hello
 </example2>
# END ANSIBLE MANAGED BLOCK

おすすめ記事