blob: bcc1353a87240a4ac31766e1768260e19b2762b1 [file] [log] [blame]
Andrea Frittoli (andreaf)9c977b52017-12-08 17:41:40 +00001- name: Ensure {{ stage_dir }}/apache exists
2 file:
3 path: "{{ stage_dir }}/apache"
4 state: directory
5
6- name: Link apache logs on Debian/SuSE
7 block:
8 - name: Find logs
9 find:
10 path: "/var/log/apache2"
11 file_type: any
12 register: debian_suse_apache_logs
Paul Belangerc9c39a42018-02-21 14:23:10 -050013
Andrea Frittoli (andreaf)9c977b52017-12-08 17:41:40 +000014 - name: Dereference files
15 stat:
16 path: "{{ item.path }}"
17 with_items: "{{ debian_suse_apache_logs.files }}"
18 register: debian_suse_apache_deref_logs
Paul Belangerc9c39a42018-02-21 14:23:10 -050019
Andrea Frittoli (andreaf)9c977b52017-12-08 17:41:40 +000020 - name: Create hard links
21 file:
22 src: "{{ item.stat.lnk_source | default(item.stat.path) }}"
23 dest: "{{ stage_dir }}/apache/{{ item.stat.path | basename }}"
24 state: hard
25 with_items: "{{ debian_suse_apache_deref_logs.results }}"
26 when:
27 - item.stat.isreg or item.stat.islnk
28 when: ansible_os_family in ('Debian', 'Suse')
Paul Belangerc9c39a42018-02-21 14:23:10 -050029 no_log: true
Andrea Frittoli (andreaf)9c977b52017-12-08 17:41:40 +000030
31- name: Link apache logs on RedHat
32 block:
33 - name: Find logs
34 find:
35 path: "/var/log/httpd"
36 file_type: any
37 register: redhat_apache_logs
Paul Belangerc9c39a42018-02-21 14:23:10 -050038
Andrea Frittoli (andreaf)9c977b52017-12-08 17:41:40 +000039 - name: Dereference files
40 stat:
41 path: "{{ item.path }}"
42 with_items: "{{ redhat_apache_logs.files }}"
43 register: redhat_apache_deref_logs
Paul Belangerc9c39a42018-02-21 14:23:10 -050044
Andrea Frittoli (andreaf)9c977b52017-12-08 17:41:40 +000045 - name: Create hard links
46 file:
47 src: "{{ item.stat.lnk_source | default(item.stat.path) }}"
48 dest: "{{ stage_dir }}/apache/{{ item.stat.path | basename }}"
49 state: hard
50 with_items: "{{ redhat_apache_deref_logs.results }}"
51 when:
52 - item.stat.isreg or item.stat.islnk
53 when: ansible_os_family == 'Redhat'
Paul Belangerc9c39a42018-02-21 14:23:10 -050054 no_log: true
Andrea Frittoli (andreaf)9c977b52017-12-08 17:41:40 +000055
56- name: Ensure {{ stage_dir }}/apache_config apache_config exists
57 file:
58 path: "{{ stage_dir }}/apache_config"
59 state: directory
60
61- name: Define config paths
62 set_fact:
63 apache_config_paths:
64 'Debian': '/etc/apache2/sites-enabled/'
65 'Suse': '/etc/apache2/conf.d/'
Daniel Mellado2e9e90b2018-02-20 12:17:55 +010066 'RedHat': '/etc/httpd/conf.d/'
Andrea Frittoli (andreaf)9c977b52017-12-08 17:41:40 +000067
68- name: Discover configurations
69 find:
70 path: "{{ apache_config_paths[ansible_os_family] }}"
71 file_type: any
72 register: apache_configs
Andrea Frittoli0f397562018-02-02 17:03:24 +000073 no_log: true
Andrea Frittoli (andreaf)9c977b52017-12-08 17:41:40 +000074
75- name: Dereference configurations
76 stat:
77 path: "{{ item.path }}"
78 with_items: "{{ apache_configs.files }}"
79 register: apache_configs_deref
Andrea Frittoli0f397562018-02-02 17:03:24 +000080 no_log: true
Andrea Frittoli (andreaf)9c977b52017-12-08 17:41:40 +000081
82- name: Link configurations
83 file:
84 src: "{{ item.stat.lnk_source | default(item.stat.path) }}"
85 dest: "{{ stage_dir }}/apache_config/{{ item.stat.path | basename }}"
86 state: hard
87 with_items: "{{ apache_configs_deref.results }}"
88 when: item.stat.isreg or item.stat.islnk
Andrea Frittoli0f397562018-02-02 17:03:24 +000089 no_log: true