Hi,
I've been writing a playbook for openstack for our very specific openstack
architecture here and, as I am completely new to ansible, I have some
issues with adding some configurations at the end of a file.
My goal : Adding a block of text at the end of the nova.conf file that will
reference neutron settings.
What I've figured out up to now : I can use the lineinfile module and loop
it with "with_items" to add several lines. The regexp should be as close to
the line as possible and should be unique, so that not only the line is
added at the end of the file, but also isn't written each time the playbook
is run.
So this looks somewhat like this up to now :
- name: Add neutron section to nova.conf
> lineinfile: dest=/etc/nova/nova.conf
> regexp: "{{ item.regexp }}"
> line: "{{ item.line }}"
> state: present
> insertafter: EOF
> with_items:
> - { regexp: '^[neutron]', line: '[neutron]'}
> - { "regexp= '^url = http:', line= 'url = http://neutron:9696'"}
>
*you can see I put " on my last line and replaced : with = as it may cause
issues with yaml I believe. Not sure if I'm right on this one, but that's
not the main issue I have right now.
The main issue: I need to add this line in the neutron section of the
config file : auth_strategy = keystone . However, this exact same line
already exist in the file in the default section. So, if I specify a regexp
for it, it will consider that the line already exists and won't write the
line at the end of file. However, if I specify a regexp that does not exist
at all, the line will be added each time the playbook is run.
What would be the best way to bypass this problem? Alternatively, if I
could just set the neutron section as a template and then add it to the
nova.conf file, it would simplify this whole operation a lot. I haven't
seen a way to add a template's content to an already existing file though.
--
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/005da5ca-5256-491e-93bf-f114d80cd98d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.