Files
ansible-lxc-templates/playbooks/own/phpmyadmin.yml
2025-11-05 20:23:07 +03:00

60 lines
2.4 KiB
YAML

---
- name: Install PhpMyAdmin
collections: [ 'debops.debops', 'debops.roles01',
'debops.roles02', 'debops.roles03' ]
hosts: [ 'debian10' ]
vars:
phpmyadmin_version: 5.2.1
# https://docs.ansible.com/ansible/latest/collections/community/general/random_string_lookup.html#keyword-parameters
blowfish_secret: "{{ lookup('community.general.random_string', length=32) }}"
tasks:
- name: 'Download phpMyAdmin {{ phpmyadmin_version }} into var/www dir and uncompress'
become: true
become_user: '{{ site_name }}'
shell: |-
cd /var/www
rm -rf phpmyadmin
wget -q https://files.phpmyadmin.net/phpMyAdmin/{{ phpmyadmin_version }}/phpMyAdmin-{{ phpmyadmin_version }}-all-languages.zip
unzip -qq phpMyAdmin-{{ phpmyadmin_version }}-all-languages.zip
rm phpMyAdmin-{{ phpmyadmin_version }}-all-languages.zip
mv phpMyAdmin-{{ phpmyadmin_version }}-all-languages phpmyadmin
cd phpmyadmin
cp config.sample.inc.php config.inc.php
mkdir tmp && sudo chown :33 tmp && chmod g+w tmp
- name: 'Set cookie blowfish secret'
ansible.builtin.lineinfile:
path: /var/www/phpmyadmin/config.inc.php
regexp: "^\\^\\$\\\\cfg\\\\[\\'blowfish_secret\\'\\\\] = '';"
line: "$cfg['blowfish_secret'] = '{{ blowfish_secret }}';"
owner: '{{ site_name }}'
group: '{{ site_name }}'
mode: '0640'
- name: 'Set CookieSameSite to Lax'
ansible.builtin.lineinfile:
path: /var/www/phpmyadmin/config.inc.php
# Добавляет строку в конец файла, если она еще не существует
line: "$cfg['CookieSameSite'] = 'Lax';"
insertafter: EOF # Вставляет в конец файла
# Необязательно, но полезно убедиться, что строки нет до добавления
create: false
owner: '{{ site_name }}'
group: '{{ site_name }}'
mode: '0640'
- name: 'Set MaxTableList'
ansible.builtin.lineinfile:
path: /var/www/phpmyadmin/config.inc.php
regexp: "^//\\$cfg\\['MaxRows'\\]"
line: "$cfg['MaxTableList'] = 500;"
insertafter: "^//\\$cfg\\['MaxRows'\\]" # Вставит сразу после закомментированной строки
owner: '{{ site_name }}'
group: '{{ site_name }}'
mode: '0640'