Module for managing comment delimited sections in configuration files?

53 views
Skip to first unread message

Alan Langford

unread,
Jun 21, 2016, 3:07:46 PM6/21/16
to Ansible Project
I have a couple of situations where there are informal sections in a configuration file that are delimited by comments, and I'd like to update these with Ansible. Is there a module for this?

For example, the file some.cfg looks like this:

# this is the some.cfg file
var1=1
var2=2

# some section start
svar1=1
svar2=2
# some section end

var3=3

I want to be able to replace the variables delimited by "some section start" and "some section end". This is complicated by the fact that the delimiters are created ad-hoc by application developers, so there's no consistent syntax.

I can't assemble the file from components because users can take actions that cause the file to change, so there's no master copy.

Joanna Delaporte

unread,
Jun 22, 2016, 4:10:19 PM6/22/16
to Ansible Project
Hi Alan, 

If you want to manage blocks of text, take a look at blockinfile. You can use insertafter/insertbefore with a regex statement to look for the comment lines. Blockinfile also includes a marker that you can place at the beginning and end of a bock of Ansible-managed text. Just make sure each marker you use is uniquely named, or the block will be overwritten with subsequent writes to a block with the same marker.
Reply all
Reply to author
Forward
0 new messages