Hi,
New to Ansible, evaluating it for replacing Cfengine.
One feature we use frequently is the replacement of a block of text within
a file, and the Ansible blockinfile module looks to be just that.
However I run in to problems adding a block of text to a file if it does
not already exist. I have tried with this code:
- name: Add mappings to /tmp/hosts
blockinfile:
dest: /tmp/hosts
state: present
create: yes
block: |
destination logserver1 { tcp("xx.xx.xx.xx" port(514)); };
destination logserver2 { tcp("xx.xx.x.x" port(514)); };
log { source(src); destination(logserver1); };
log { source(src); destination(logserver2); };
log { source(src); destination(logserver3); };
destination logserver3 { tcp("x.x.xx.xxx" port(5000)); };
marker: "# {mark} ANSIBLE HOSTS BLOCK "
When I run this it bails out because of the create: yes line, if I comment
that out it runs through, but of course does not create the file, and
therefore fails the blockedit. If I create an empty file manually it works
as intended. According to the docs, both state and create are supported by
the blockinfile module.
Ansible version is 2.1.2.0
Help appreciated
--
You received this message because you are subscribed to the Google Groups
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/ansible-project/c430310b-1ec6-4a55-a198-2e62c6733ed5%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.