2017-07-03 18:23:39 +02:00
|
|
|
---
|
|
|
|
|
2019-07-03 09:37:57 +02:00
|
|
|
- name: Install apg
|
2023-03-20 23:33:19 +01:00
|
|
|
ansible.builtin.apt:
|
2019-07-03 09:37:57 +02:00
|
|
|
name: apg
|
|
|
|
|
2021-05-04 14:57:18 +02:00
|
|
|
# On Debian 10, we need to install the package from buster-backports
|
|
|
|
- name: Enable backports (Debian 10)
|
2023-03-20 23:33:19 +01:00
|
|
|
ansible.builtin.include_role:
|
2021-05-04 14:57:18 +02:00
|
|
|
name: evolix/apt
|
|
|
|
tasks_from: backports.yml
|
|
|
|
when: ansible_distribution_major_version is version('10', '=')
|
2019-07-03 09:37:57 +02:00
|
|
|
|
2021-05-04 14:57:18 +02:00
|
|
|
- name: Prefer phpMyAdmin package from backports (Debian 10)
|
2023-03-20 23:33:19 +01:00
|
|
|
ansible.builtin.template:
|
2021-05-04 14:57:18 +02:00
|
|
|
src: phpmyadmin_apt_preferences.j2
|
|
|
|
dest: /etc/apt/preferences.d/999-phpmyadmin
|
|
|
|
force: yes
|
2021-05-04 16:43:48 +02:00
|
|
|
mode: "0644"
|
2021-05-04 14:57:18 +02:00
|
|
|
when: ansible_distribution_major_version is version('10', '=')
|
2019-07-03 09:37:57 +02:00
|
|
|
|
2021-05-04 14:57:18 +02:00
|
|
|
- name: Install phpmyadmin
|
2023-03-20 23:33:19 +01:00
|
|
|
ansible.builtin.apt:
|
2021-05-04 14:57:18 +02:00
|
|
|
name: phpmyadmin
|
|
|
|
update_cache: yes
|
2017-07-03 18:23:39 +02:00
|
|
|
|
|
|
|
- name: Check if phpmyadmin default configuration is present
|
2023-03-20 23:33:19 +01:00
|
|
|
ansible.builtin.stat:
|
2017-07-03 18:23:39 +02:00
|
|
|
path: /etc/apache2/conf-enabled/phpmyadmin.conf
|
|
|
|
register: pma_default_config
|
|
|
|
|
2023-03-20 23:33:19 +01:00
|
|
|
- ansible.builtin.debug:
|
2017-07-03 18:23:39 +02:00
|
|
|
var: pma_default_config
|
|
|
|
verbosity: 1
|
|
|
|
|
|
|
|
- name: Disable phpmyadmin default configuration
|
2023-03-20 23:33:19 +01:00
|
|
|
ansible.builtin.command:
|
|
|
|
cmd: "a2disconf phpmyadmin"
|
2017-07-03 18:23:39 +02:00
|
|
|
register: command_result
|
|
|
|
changed_when: "'Disabling' in command_result.stderr"
|
|
|
|
when: pma_default_config.stat.exists
|
|
|
|
|
2018-09-09 22:59:56 +02:00
|
|
|
- name: "phpmyadmin suffix dirname '{{ packweb_phpmyadmin_suffix_file | dirname }}' exists"
|
2023-03-20 23:33:19 +01:00
|
|
|
ansible.builtin.file:
|
2018-09-09 22:59:56 +02:00
|
|
|
dest: "{{ packweb_phpmyadmin_suffix_file | dirname }}"
|
|
|
|
mode: "0700"
|
|
|
|
owner: root
|
|
|
|
group: root
|
|
|
|
state: directory
|
|
|
|
|
|
|
|
- name: set phpmyadmin suffix if provided
|
2023-03-20 23:33:19 +01:00
|
|
|
ansible.builtin.copy:
|
2018-09-09 22:59:56 +02:00
|
|
|
dest: "{{ packweb_phpmyadmin_suffix_file }}"
|
|
|
|
# The last character "\u000A" is a line feed (LF), it's better to keep it
|
|
|
|
content: "{{ packweb_phpmyadmin_suffix }}\u000A"
|
|
|
|
force: yes
|
2021-05-09 23:06:42 +02:00
|
|
|
when: packweb_phpmyadmin_suffix | length > 0
|
2018-09-09 22:59:56 +02:00
|
|
|
|
2017-09-07 01:16:45 +02:00
|
|
|
- name: generate random string for phpmyadmin suffix
|
2023-03-20 23:33:19 +01:00
|
|
|
ansible.builtin.shell:
|
|
|
|
cmd: "apg -a 1 -M N -n 1 > {{ packweb_phpmyadmin_suffix_file }}"
|
2018-09-09 22:59:56 +02:00
|
|
|
args:
|
|
|
|
creates: "{{ packweb_phpmyadmin_suffix_file }}"
|
|
|
|
|
|
|
|
- name: read phpmyadmin suffix
|
2023-03-20 23:33:19 +01:00
|
|
|
ansible.builtin.command:
|
|
|
|
cmd: "tail -n 1 {{ packweb_phpmyadmin_suffix_file }}"
|
2017-09-07 01:16:45 +02:00
|
|
|
changed_when: False
|
2018-09-09 22:59:56 +02:00
|
|
|
check_mode: no
|
|
|
|
register: new_packweb_phpmyadmin_suffix
|
2017-09-07 01:16:45 +02:00
|
|
|
|
|
|
|
- name: overwrite packweb_phpmyadmin_suffix
|
2023-03-20 23:33:19 +01:00
|
|
|
ansible.builtin.set_fact:
|
2018-09-09 22:59:56 +02:00
|
|
|
packweb_phpmyadmin_suffix: "{{ new_packweb_phpmyadmin_suffix.stdout }}"
|
|
|
|
|
2023-03-20 23:33:19 +01:00
|
|
|
- ansible.builtin.debug:
|
2018-09-09 22:59:56 +02:00
|
|
|
var: packweb_phpmyadmin_suffix
|
|
|
|
verbosity: 1
|
2017-09-07 01:16:45 +02:00
|
|
|
|
|
|
|
- name: enable phpMyAdmin config
|
2023-03-20 23:33:19 +01:00
|
|
|
ansible.builtin.blockinfile:
|
2017-09-07 01:16:45 +02:00
|
|
|
dest: /etc/apache2/sites-available/000-evolinux-default.conf
|
|
|
|
marker: "# {mark} phpMyAdmin section"
|
|
|
|
block: |
|
|
|
|
Alias /phpmyadmin /var/www
|
|
|
|
Alias /phpmyadmin-{{ packweb_phpmyadmin_suffix }} /usr/share/phpmyadmin/
|
|
|
|
Include /etc/phpmyadmin/apache.conf
|
|
|
|
<Directory /usr/share/phpmyadmin/>
|
|
|
|
Require all denied
|
|
|
|
Include /etc/apache2/ipaddr_whitelist.conf
|
|
|
|
</Directory>
|
|
|
|
|
|
|
|
- name: enable phpmyadmin link in default site index
|
2023-03-20 23:33:19 +01:00
|
|
|
ansible.builtin.replace:
|
2017-09-07 01:16:45 +02:00
|
|
|
dest: /var/www/index.html
|
2017-09-08 01:10:08 +02:00
|
|
|
regexp: '<!-- <li><a href="/phpmyadmin-__PHPMYADMIN_SUFFIX__/">Accès PhpMyAdmin</a></li> -->'
|
|
|
|
replace: ' <li><a href="/phpmyadmin-__PHPMYADMIN_SUFFIX__/">Accès PhpMyAdmin</a></li>'
|
2017-09-07 01:16:45 +02:00
|
|
|
|
|
|
|
- name: replace phpmyadmin suffix in default site index
|
2023-03-20 23:33:19 +01:00
|
|
|
ansible.builtin.replace:
|
2017-09-07 01:16:45 +02:00
|
|
|
dest: /var/www/index.html
|
|
|
|
regexp: '__PHPMYADMIN_SUFFIX__'
|
|
|
|
replace: "{{ packweb_phpmyadmin_suffix }}"
|