bloco de código ansible

0

Eu preciso criar um arquivo XML formatado em ansible. O arquivo contém < > e espaços.

Quando executo o manual sem o < > ou qualquer espaço em branco entre as linhas, o livro cria os arquivos.

Como posso criar um arquivo com o seguinte contexto

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

         <example2>
          this is test2
          hello
         </example2>
    
por user2236794 10.09.2018 / 19:25

1 resposta

2

Veja a seção de bloqueio de blockinfile, link

Aqui está um exemplo de função

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>
...

E aqui está o manual:

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

A execução de ansible-playbook ./testblock.yml produz o seguinte arquivo:

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

Espero que isso ajude.

    
por 10.09.2018 / 19:40

Tags