- name: 'Install 3 packages: apache2, php{{ php_version }}, php{{ php_version }}-curl (debian)' package: #name: [u'apache2', u'php{{ php_version }}', u'php{{ php_version }}-curl'] # FAILS ('u' for Unicode strings) #name: ['apache2', 'php{{ php_version }}', 'php{{ php_version }}-curl'] # WORKS? name: - apache2 - "php{{ php_version }}" - "php{{ php_version }}-curl" state: present when: is_debian | bool #tags: download - name: 'Install 2 packages: apache2, php (ubuntu)' package: #name: [u'apache2', u'php'] # FAILS ('u' for Unicode strings) #name: ['apache2', 'php'] # WORKS name: - apache2 - php state: present when: is_ubuntu | bool #tags: download # 2019-05-30: It's interesting that http://box.lan/admin and everything seems # to work even without php{{ php_version }}-sqlite3 as confirmed on Ubuntu # 16.04 (SEE PR #1697). And likely all others? @tim-moody writes "I think # we decided that because sqlite3 and php are part of the base install the # connector should be too." # # We might *try* deprecating this here as we transition beyond {raspbian-9, # debian-9, ubuntu-18} in coming months to verify that roles/osm-vector-maps # is the only role that needs it? # # Legacy Comment: SQLite3 no longer included in another package - name: Install php{{ php_version }}-sqlite3 (raspbian-9+ or debian-9+ or ubuntu-18+) package: name: "php{{ php_version }}-sqlite3" #when: is_raspbian_9 or is_debian_9 or is_ubuntu_18 when: is_debuntu and (not is_debian_8) and (not is_ubuntu_16) #when: (is_debian and ansible_distribution_major_version == "9") or is_ubuntu_18 - name: 'Install 4 packages: httpd, mod_authnz_external, php, php-curl (redhat)' package: #name: [u'httpd', u'php', u'php-curl', u'mod_authnz_external'] # FAILS ('u' for Unicode strings) #name: ['httpd', 'php', 'php-curl', 'mod_authnz_external'] # WORKS name: - httpd - mod_authnz_external - php - php-curl state: present when: is_redhat | bool #tags: download # remove symlinks for mpm-event, replace with mpm-prefork - name: Remove both mpm_event symlinks from /etc/apache2/mods-enabled (debuntu) file: path: "/etc/apache2/mods-enabled/{{ item }}" state: absent with_items: - mpm_event.conf - mpm_event.load when: is_debuntu | bool - name: Create both mpm_prefork symlinks from /etc/apache2/mods-enabled to /etc/apache2/mods-available (debuntu) file: src: "/etc/apache2/mods-available/{{ item }}" path: "/etc/apache2/mods-enabled/{{ item }}" state: link with_items: - mpm_prefork.conf - mpm_prefork.load when: is_debuntu | bool #- name: 'Turn on mod_proxy using a2enmod with: proxy, proxy_html, headers, rewrite (debuntu)' # command: a2enmod {{ item }} # with_items: # - proxy # - proxy_html # - headers # - rewrite # when: is_debuntu | bool - name: 'Enable 5 Apache modules, as with "a2enmod" command: headers, proxy, proxy_html, proxy_http, rewrite (for http://box/kiwix, http://box/kolibri, http://box/nodered, etc--if debuntu)' apache2_module: name: "{{ item }}" with_items: - headers - proxy - proxy_html - proxy_http - rewrite when: is_debuntu | bool - name: Remove 000-default.conf from /etc/apache2 and /etc/apache2/sites-enabled (debuntu) file: path: "{{ item }}" state: absent with_items: - /etc/apache2/000-default.conf # Not nec on Raspbian. Is this really still needed elsewhere? - /etc/apache2/sites-enabled/000-default.conf when: is_debuntu | bool - name: Create Apache's pid dir /var/run/{{ apache_user }} file: path: "/var/run/{{ apache_user }}" owner: root group: root mode: '0755' state: directory - name: 'Create group: admin' group: name: admin state: present - name: Add user {{ apache_user }} (from variable apache_user) to group admin user: name: "{{ apache_user }}" groups: admin state: present createhome: no - name: Create Apache dir /var/log/{{ apache_service }} file: path: "/var/log/{{ apache_service }}" owner: "{{ apache_user }}" group: "{{ apache_user }}" mode: '0755' state: directory - name: Enable Apache systemd service ({{ apache_service }}) service: name: "{{ apache_service }}" enabled: yes state: stopped - name: Create /library/www/html/info directory for http://box/info offline docs file: path: "{{ doc_root }}/info" owner: "{{ apache_user }}" group: "{{ apache_user }}" mode: '0755' state: directory - name: "Add 'apache_installed: True' to {{ iiab_state_file }}" lineinfile: dest: "{{ iiab_state_file }}" # /etc/iiab/iiab_state.yml regexp: '^apache_installed' line: 'apache_installed: True'