1
0
Fork 0
mirror of https://github.com/iiab/iiab.git synced 2025-02-13 11:42:08 +00:00

Merge pull request #532 from holta/phpmyadmin

Toughened phpMyAdmin playbook
This commit is contained in:
A Holt 2017-11-17 18:23:34 -05:00 committed by GitHub
commit ae5a8e9896
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 81 additions and 44 deletions

View file

@ -60,10 +60,10 @@
with_items: "{{ files_to_delete.files }}"
- name: add mongodb to service list
ini_file: dest='{{ service_filelist }}'
ini_file: dest="{{ service_filelist }}"
section=mongodb
option='{{ item.option }}'
value='"{{ item.value }}"'
option="{{ item.option }}"
value="{{ item.value }}"
with_items:
- option: name
value: MongoDB

View file

@ -1,3 +1,4 @@
phpmyadmin_install: False
phpmyadmin_enabled: False
phpMyAdmin: "phpMyAdmin-4.7.5-all-languages.zip"
phpmyadmin_name: "phpMyAdmin-4.7.5-all-languages"
phpmyadmin_name_zip: "{{ phpmyadmin_name }}.zip"

View file

@ -1,45 +1,81 @@
- name: Get the phpMyAdmin software
get_url: url="{{ iiab_download_url }}/{{ phpMyAdmin }}" dest="{{ downloads_dir }}/phpMyAdmin.zip"
when: internet_available
- name: Download the phpMyAdmin software
get_url:
url: "{{ iiab_download_url }}/{{ phpmyadmin_name_zip }}"
dest: "{{ downloads_dir }}"
#register: phpmyadmin_dl_output
when: internet_available
- name: Copy it to permanent location /opt
unarchive: src={{ downloads_dir }}/phpMyAdmin.zip dest=/opt/
- name: Check if /opt/iiab/downloads/{{ phpmyadmin_name_zip }} exists
stat:
path: "{{ downloads_dir }}/{{ phpmyadmin_name_zip }}"
register: phpmyadmin_dl
- name: Create a symbolic link to the folder of the current version phpMyAdmin
file: path=/opt/phpmyadmin src=phpMyAdmin-4.7.5-all-languages state=link
- name: FAIL (force Ansible to exit) IF /opt/iiab/downloads/{{ phpmyadmin_name_zip }} doesn't exist
fail:
msg: "{{ downloads_dir }}/{{ phpmyadmin_name_zip }} is REQUIRED in order to install phpMyAdmin."
when: not phpmyadmin_dl.stat.exists
- name: Copy the phpMyAdmin config file into place
template: src=config.inc.php dest=/opt/phpmyadmin/config.inc.php
- name: Unzip to permanent location /opt/{{ phpmyadmin_name }}
unarchive:
src: "{{ downloads_dir }}/{{ phpmyadmin_name_zip }}"
dest: /opt
owner: "{{ apache_user }}"
- name: Change the owner of the PHP tree to Apache
shell: "chown -R {{ apache_user }} /opt/phpmyadmin"
- name: Create symbolic link /opt/phpmyadmin to phpMyAdmin folder above
file:
src: "{{ phpmyadmin_name }}"
dest: /opt/phpmyadmin
owner: "{{ apache_user }}"
state: link
- name: Put the alias into Apache config when enabled
template: src=phpmyadmin.j2 dest=/etc/{{ apache_config_dir }}/phpmyadmin.conf
when: phpmyadmin_enabled
- name: Copy phpMyAdmin's config file into place
template:
src: config.inc.php
dest: /opt/phpmyadmin/config.inc.php
owner: "{{ apache_user }}"
- name: Enable phpMyAdmin
file: path=/etc/apache2/sites-enabled/phpmyadmin.conf
src=/etc/apache2/sites-available/phpmyadmin.conf
state=link
when: phpmyadmin_enabled and is_debuntu
# Above 3 stanzas set link/tree/contents ownership to {{ apache_user }}:root
# OOPS: CHOWN BELOW CHANGED LINK ALONE (TREE/CONTENTS REMAINED root:root)
- name: Remove the alias into Apache config when not enabled
file: path=/etc/apache2/sites-enabled/phpmyadmin.conf
state=absent
when: not phpmyadmin_enabled and is_debuntu
# - name: Change the owner of the PHP tree to Apache
# shell: "chown -R {{ apache_user }} /opt/phpmyadmin"
# #file:
# # path: "/opt/{{ phpmyadmin_name_zip }}"
# # owner: "{{ apache_user }}"
# # recurse: yes
# # state: directory
- name: Add phpmyadmin to service list
ini_file: dest='{{ service_filelist }}'
section=phpmyadmin
option='{{ item.option }}'
value='"{{ item.value }}"'
with_items:
- option: name
value: phpMyAdmin
- option: description
value: '"phpMyAdmin is an interface with a MySQL database written in PHP, and available to administer the database engine locally or across the network."'
- option: path
value: /opt/phpmyadmin
- option: enabled
value: "{{ phpmyadmin_enabled }}"
- name: Put the alias into Apache config when enabled
template:
src: phpmyadmin.j2
dest: "/etc/{{ apache_config_dir }}/phpmyadmin.conf"
when: phpmyadmin_enabled
- name: Enable phpMyAdmin
file:
src: /etc/apache2/sites-available/phpmyadmin.conf
dest: /etc/apache2/sites-enabled/phpmyadmin.conf
state: link
when: phpmyadmin_enabled and is_debuntu
- name: Remove the alias into Apache config when not enabled
file:
path: /etc/apache2/sites-enabled/phpmyadmin.conf
state: absent
when: not phpmyadmin_enabled and is_debuntu
- name: Add phpmyadmin to service list
ini_file:
dest: "{{ service_filelist }}"
section: phpmyadmin
option: "{{ item.option }}"
value: "{{ item.value }}"
with_items:
- option: name
value: phpMyAdmin
- option: description
value: '"phpMyAdmin is an interface with a MySQL database written in PHP, and available to administer the database engine locally or across the network."'
- option: path
value: /opt/phpmyadmin
- option: enabled
value: "{{ phpmyadmin_enabled }}"

View file

@ -87,10 +87,10 @@
when: not sugarizer_enabled
- name: Add 'sugarizer' to service list
ini_file: dest='{{ service_filelist }}'
ini_file: dest="{{ service_filelist }}"
section=sugarizer
option='{{ item.option }}'
value='"{{ item.value }}"'
option="{{ item.option }}"
value="{{ item.value }}"
with_items:
- option: name
value: Sugarizer