This commit is contained in:
parent
e7371d6f35
commit
82a9274bf9
@ -3,13 +3,46 @@
|
||||
hosts: rsyslog_servers
|
||||
gather_facts: false
|
||||
|
||||
vars:
|
||||
validate_dir: /tmp/rsyslog-validate
|
||||
validate_conf: /tmp/rsyslog-validate/rsyslog.conf
|
||||
|
||||
tasks:
|
||||
- name: Validate rsyslog main configuration
|
||||
command: rsyslogd -N1 -f "{{ rsyslog_main_config }}"
|
||||
register: validate_main
|
||||
failed_when: validate_main.rc != 0
|
||||
- name: Create temp validation directory
|
||||
file:
|
||||
path: "{{ validate_dir }}/rsyslog.d"
|
||||
state: directory
|
||||
mode: "0700"
|
||||
|
||||
- name: Copy main config to temp location
|
||||
copy:
|
||||
src: "{{ repo_root }}/files/rsyslog.conf"
|
||||
dest: "{{ validate_conf }}"
|
||||
remote_src: true
|
||||
|
||||
- name: Copy rsyslog.d configs to temp location
|
||||
copy:
|
||||
src: "{{ repo_root }}/files/rsyslog.d/"
|
||||
dest: "{{ validate_dir }}/rsyslog.d/"
|
||||
remote_src: true
|
||||
|
||||
- name: Update IncludeConfig path to point to temp dir
|
||||
replace:
|
||||
path: "{{ validate_conf }}"
|
||||
regexp: '^\$IncludeConfig\s+.*$'
|
||||
replace: '$IncludeConfig {{ validate_dir }}/rsyslog.d/*.conf'
|
||||
|
||||
- name: Validate repo rsyslog configuration
|
||||
command: rsyslogd -N1 -f "{{ validate_conf }}"
|
||||
register: validate_result
|
||||
failed_when: validate_result.rc != 0
|
||||
changed_when: false
|
||||
|
||||
- name: Display validation result
|
||||
debug:
|
||||
msg: "✓ rsyslog configuration is valid"
|
||||
|
||||
- name: Clean up temp validation directory
|
||||
file:
|
||||
path: "{{ validate_dir }}"
|
||||
state: absent
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user