move files
This commit is contained in:
63
playbooks/managed-mailcow/use-syslog-server.yaml
Normal file
63
playbooks/managed-mailcow/use-syslog-server.yaml
Normal file
@@ -0,0 +1,63 @@
|
||||
---
|
||||
- name: Update Docker Daemon configuration to use Syslog Server
|
||||
hosts: all
|
||||
become: yes
|
||||
tasks:
|
||||
- name: Read current Docker daemon.json
|
||||
ansible.builtin.slurp:
|
||||
src: /etc/docker/daemon.json
|
||||
register: current_daemon_json
|
||||
|
||||
- name: Parse current Docker daemon.json
|
||||
set_fact:
|
||||
current_daemon_config: "{{ current_daemon_json['content'] | b64decode | from_json }}"
|
||||
|
||||
- name: Check current log-driver setting
|
||||
set_fact:
|
||||
log_driver_current: "{{ current_daemon_config['log-driver'] | default('not_set') }}"
|
||||
|
||||
- name: Update Docker daemon.json with syslog configuration if log-driver is local
|
||||
ansible.builtin.copy:
|
||||
dest: /etc/docker/daemon.json
|
||||
content: "{{ updated_daemon_json | to_nice_json }}"
|
||||
vars:
|
||||
syslog_config: {
|
||||
"log-driver": "syslog",
|
||||
"log-opts": {
|
||||
"syslog-address": "udp://[2a0e:b680:80::91]:5514",
|
||||
"syslog-format": "rfc5424",
|
||||
"tag": "{{ '{{.Name}}' }}"
|
||||
}
|
||||
}
|
||||
updated_daemon_json: "{{ current_daemon_config | combine(syslog_config) }}"
|
||||
when: log_driver_current == 'local' or log is undefined
|
||||
register: daemon_update
|
||||
|
||||
- name: Restart Docker to apply changes
|
||||
ansible.builtin.systemd:
|
||||
name: docker
|
||||
state: restarted
|
||||
when: daemon_update.changed
|
||||
|
||||
- include_role:
|
||||
name: managed-mailcow
|
||||
tasks_from: find-mailcow-composedir.yml
|
||||
when: daemon_update.changed
|
||||
|
||||
- name: Stop mailcow stack
|
||||
import_role:
|
||||
name: managed-mailcow
|
||||
tasks_from: stop-mailcow.yml
|
||||
vars:
|
||||
docker_compose_path: "{{ mailcow_dir_result.files[0].path }}"
|
||||
verbose: False
|
||||
when: daemon_update.changed and mailcow_dir_result.matched > 0
|
||||
|
||||
- name: Start mailcow stack
|
||||
import_role:
|
||||
name: managed-mailcow
|
||||
tasks_from: start-mailcow.yml
|
||||
vars:
|
||||
docker_compose_path: "{{ mailcow_dir_result.files[0].path }}"
|
||||
verbose: False
|
||||
when: daemon_update.changed and mailcow_dir_result.matched > 0
|
||||
Reference in New Issue
Block a user