- name: Install AWStats package package: name: "{{ item }}" state: present with_items: - awstats - pwauth - openssl tags: - download - name: Install AWStats package (debuntu) package: name: "{{ item }}" state: present with_items: - libapache2-mod-authnz-external - apache2-utils when: is_debuntu tags: - download - name: Enable cgi execution (debuntu) command: a2enmod cgi when: is_debuntu - name: Create directory for AWStats to use as intermediate summary storage file: path: "{{ item }}" mode: 0750 owner: "{{ apache_user }}" group: "{{ apache_user }}" state: directory force: true with_items: - "{{ awstats_data_dir }}" - "{{ apache_log_dir }}" - name: Install the Apache config for AWStats (debuntu) template: src: apache.conf dest: "/etc/{{ apache_config_dir }}/awstats.conf" owner: root group: root mode: 0644 when: awstats_enabled and is_debuntu - name: Install the Apache config for AWStats (OS's other than debuntu) template: src: apache-awstats.conf dest: "/etc/{{ apache_config_dir }}/awstats.conf" owner: root group: root mode: 0644 when: awstats_enabled and not is_debuntu - name: Make sure logrotate does not make logs unreadable (debuntu) template: src: logrotate.d.apache2 dest: /etc/logrotate.d/apache2 when: is_debuntu - name: See if AWStats package installed a config file stat: path: /etc/awstats/awstats.conf register: awstats - name: If there was a config file installed by package, move it aside command: mv /etc/awstats/awstats.conf /etc/awstats/awstats.conf.dist when: awstats.stat.islnk is defined and not awstats.stat.islnk - name: Enable AWStats (debuntu) file: src: /etc/apache2/sites-available/awstats.conf path: /etc/apache2/sites-enabled/awstats.conf state: link when: awstats_enabled and is_debuntu - name: Disable AWStats (debuntu) file: path: /etc/apache2/sites-enabled/awstats.conf state: absent when: not awstats_enabled and is_debuntu - name: Install the AWStats config template: src: awstats.schoolserver.conf.j2 dest: /etc/awstats/awstats.schoolserver.conf owner: root group: root mode: 0644 when: awstats_enabled - name: Create a symbolic link to use when access is by IP address file: src: /etc/awstats/awstats.schoolserver.conf dest: /etc/awstats/awstats.conf state: link when: awstats_enabled - name: On first enabling of AWStats, summarize httpd logs up to now (OS's other than debuntu) shell: /bin/perl /usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=schoolserver -update when: awstats_enabled and not is_debuntu - name: On first enabling of AWStats, summarize httpd logs up to now (debuntu) shell: /usr/bin/perl /usr/lib/cgi-bin/awstats.pl -config=schoolserver -update when: awstats_enabled and is_debuntu