FRITA-infra/roles/mediawiki/tasks/main.yml

83 lines
2.1 KiB
YAML
Raw Normal View History

2020-01-31 01:06:53 +00:00
- name: Install MySQL Support for Python
apt:
name: python-pymysql
state: present
- name: Create Database
mysql_db:
name: "{{ mw_db_name }}"
state: present
login_unix_socket: /var/run/mysqld/mysqld.sock
- name: Create Database User
mysql_user:
name: "{{ mw_db_user }}"
password: "{{ mw_db_pass }}"
priv: "{{ mw_db_name }}.*:ALL,GRANT"
state: present
login_unix_socket: /var/run/mysqld/mysqld.sock
2020-02-01 03:50:08 +00:00
- name: Install PHP Modules
apt:
name: ['php-xml', 'php-mbstring']
state: present
notify: Reload Apache2
2020-01-31 01:06:53 +00:00
- name: Create Public HTML Directory
file:
path: "{{ mw_dir }}/public_html"
state: directory
# https://www.mediawiki.org/wiki/Manual:Short_URL#Moving_a_wiki_from_/wiki_to_/w
- name: Create Directory /w for Short URLs
file:
path: "{{ mw_dir }}/public_html/w"
state: directory
2020-01-31 01:06:53 +00:00
- name: Create Logs Directory
file:
path: "{{ mw_dir }}/logs"
state: directory
- name: Download MediaWiki
get_url:
url: "https://releases.wikimedia.org/mediawiki/\
{{ mw_version | regex_replace('\\.\\d+$', '') }}/\
mediawiki-{{ mw_version }}.tar.gz"
dest: /tmp/mediawiki-{{ mw_version }}.tar.gz
- name: Extract MediaWiki
unarchive:
src: /tmp/mediawiki-{{ mw_version }}.tar.gz
dest: "{{ mw_dir }}/public_html/w"
2020-01-31 01:06:53 +00:00
owner: www-data
group: www-data
extra_opts: [--strip-components=1]
remote_src: yes
2020-01-31 06:44:59 +00:00
- name: Install MediaWiki
command: |
2020-02-01 08:28:53 +00:00
php maintenance/install.php --dbname="{{ mw_db_name }}" \
--dbuser="{{ mw_db_user }}" --dbpass="{{ mw_db_pass }}" \
--pass="{{ mw_admin_pass }}" "{{ mw_namespace }}" admin
2020-01-31 06:44:59 +00:00
args:
chdir: "{{ mw_dir }}/public_html/w"
creates: "{{ mw_dir }}/public_html/w/LocalSettings.php"
2020-02-01 03:50:08 +00:00
- name: "Enable Apache Module: rewrite"
apache2_module:
name: rewrite
state: present
2020-01-31 01:06:53 +00:00
- name: Apply Apache Configuration
template:
src: mediawiki.conf.j2
dest: /etc/apache2/sites-available/{{ mw_domain }}.conf
notify: Reload Apache2
- name: Enable Apache Website
shell: a2ensite {{ mw_domain }}
args:
creates: /etc/apache2/sites-enabled/{{ mw_domain }}.conf
notify: Reload Apache2