mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-02-04 07:51:50 +00:00
ini_file - support optional spaces around section names (#8075)
* ini_file - support optional spaces between section names and their surrounding brackets
Some ini files have spaces between some of their section names and the
brackets that enclose them. This is documented in the 'openssl.cnf(5)' man
page. In order to manage files such as /etc/ssl/openssl.cnf with ini_file
before now, one would have to include spaces in the section name like this:
section: ' crypto_policy '
option: Options
value: UnsafeLegacyRenegotiation
This change implements matching section headers with such optional spaces.
Existing tasks using the workaround above will continue to work, even in
cases where spaces in section headers are subsequently removed.
* readability improvement in the test content expressions
---------
Co-authored-by: Todd Lewis <todd_lewis@unc.edu>
This commit is contained in:
parent
4947786d36
commit
4363f8764b
4 changed files with 111 additions and 1 deletions
|
|
@ -304,9 +304,11 @@ def do_ini(module, filename, section=None, option=None, values=None,
|
|||
before = after = []
|
||||
section_lines = []
|
||||
|
||||
section_pattern = re.compile(to_text(r'^\[\s*%s\s*]' % re.escape(section.strip())))
|
||||
|
||||
for index, line in enumerate(ini_lines):
|
||||
# find start and end of section
|
||||
if line.startswith(u'[%s]' % section):
|
||||
if section_pattern.match(line):
|
||||
within_section = True
|
||||
section_start = index
|
||||
elif line.startswith(u'['):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue