Browse Source

fix(`config_ini`): convert tabs to single space to prevent false +ves (#163)

* Fix #162
* Check for any number of tabs after the keyword
* If found, replace them by a single space to match the `separator` used
  in the `ini_options.present` state
tags/v0.41.0
Imran Iqbal 5 years ago
parent
commit
14966e9a09
1 changed files with 16 additions and 3 deletions
  1. +16
    -3
      openssh/config_ini.sls

+ 16
- 3
openssh/config_ini.sls View File

@@ -1,10 +1,23 @@
{% from "openssh/map.jinja" import openssh, sshd_config with context %}
{%- from "openssh/map.jinja" import openssh, sshd_config with context %}

include:
- openssh

{% if sshd_config %}
{%- if sshd_config %}
sshd_config-with-ini:
{#- Convert any tabs to a single space to prevent false positives #}
{#- Ref: https://github.com/saltstack-formulas/openssh-formula/issues/162 #}
{%- set regex_search_for_tabs = '^(\w+)\t+(\w)' %}
{%- if salt['file.contains_regex'](openssh.sshd_config, regex_search_for_tabs) %}
file.replace:
- name: {{ openssh.sshd_config }}
- pattern: {{ regex_search_for_tabs }}
- repl: '\1 \2'
- show_changes: True
- require_in:
- ini_manage: sshd_config-with-ini
{%- endif %}

ini.options_present:
- name: {{ openssh.sshd_config }}
- separator: ' '
@@ -14,4 +27,4 @@ sshd_config-with-ini:
{%- for k,v in sshd_config.items() %}
{{ k }}: '{{ v }}'
{%- endfor %}
{% endif %}
{%- endif %}

Loading…
Cancel
Save