2018-03-22 20:12:25 +00:00
|
|
|
- name: Install packages required by MediaWiki
|
2018-03-22 20:06:11 +00:00
|
|
|
package:
|
|
|
|
name: "{{ item }}"
|
|
|
|
state: present
|
2018-03-20 18:20:01 +00:00
|
|
|
with_items:
|
2018-03-21 16:05:51 +00:00
|
|
|
- "php{{ php_version }}-intl"
|
|
|
|
- "php{{ php_version }}-mbstring"
|
2018-09-20 23:15:56 +00:00
|
|
|
#tags:
|
|
|
|
# - download
|
2018-03-20 18:20:01 +00:00
|
|
|
|
2018-09-20 23:15:56 +00:00
|
|
|
- name: Download {{ mediawiki_download_base_url }}/{{ mediawiki_src }} to {{ downloads_dir }}
|
2018-03-20 18:20:01 +00:00
|
|
|
get_url:
|
|
|
|
url: "{{ mediawiki_download_base_url }}/{{ mediawiki_src }}"
|
|
|
|
dest: "{{ downloads_dir }}"
|
|
|
|
timeout: "{{ download_timeout }}"
|
2018-09-20 23:15:56 +00:00
|
|
|
#force: yes
|
|
|
|
#backup: yes
|
|
|
|
#register: mediawiki_download_output
|
2018-03-20 18:20:01 +00:00
|
|
|
when: internet_available
|
|
|
|
|
2018-09-20 22:27:53 +00:00
|
|
|
- name: Unpack it to permanent location {{ mediawiki_abs_path }}
|
2018-03-20 18:20:01 +00:00
|
|
|
unarchive:
|
2018-03-21 15:37:52 +00:00
|
|
|
src: "{{ downloads_dir }}/{{ mediawiki_src }}"
|
2018-03-20 18:20:01 +00:00
|
|
|
dest: "{{ mediawiki_install_path }}"
|
|
|
|
owner: root
|
|
|
|
group: "{{ apache_user }}"
|
2018-03-21 12:23:01 +00:00
|
|
|
mode: 0755
|
2018-03-20 18:20:01 +00:00
|
|
|
keep_newer: yes
|
|
|
|
|
2018-09-20 23:05:56 +00:00
|
|
|
- name: Ensure MySQL is running, so we can create db
|
2018-03-20 18:20:01 +00:00
|
|
|
service:
|
|
|
|
state: started
|
|
|
|
name: "{{ mysql_service }}"
|
|
|
|
|
2018-09-20 22:49:36 +00:00
|
|
|
- name: Create MySQL database {{ mediawiki_db_name }}
|
2018-03-20 18:20:01 +00:00
|
|
|
mysql_db:
|
|
|
|
name: "{{ mediawiki_db_name }}"
|
|
|
|
state: present
|
|
|
|
|
2018-09-20 22:46:45 +00:00
|
|
|
- name: Create MySQL database user {{ mediawiki_db_user }}
|
2018-03-20 18:20:01 +00:00
|
|
|
mysql_user:
|
|
|
|
name: "{{ mediawiki_db_user }}"
|
|
|
|
password: "{{ mediawiki_db_user_password }}"
|
|
|
|
priv: "{{ mediawiki_db_name }}.*:ALL,GRANT"
|
|
|
|
state: present
|
|
|
|
|
2018-03-21 15:37:52 +00:00
|
|
|
- name: Configure MediaWiki
|
|
|
|
shell: >
|
|
|
|
php '{{ mediawiki_abs_path }}/maintenance/install.php'
|
|
|
|
--dbname={{ mediawiki_db_name }}
|
|
|
|
--dbserver="localhost"
|
|
|
|
--installdbuser={{ mediawiki_db_user }}
|
|
|
|
--installdbpass={{ mediawiki_db_user_password }}
|
|
|
|
--dbuser={{ mediawiki_db_user }}
|
|
|
|
--dbpass={{ mediawiki_db_user_password }}
|
|
|
|
--scriptpath=/mediawiki
|
|
|
|
--lang=en
|
|
|
|
--pass={{ mediawiki_admin_user_password }}
|
|
|
|
"{{ mediawiki_site_name }}"
|
|
|
|
"{{ mediawiki_admin_user }}"
|
2018-03-21 16:05:51 +00:00
|
|
|
args:
|
|
|
|
chdir: "{{ mediawiki_abs_path }}"
|
|
|
|
creates: "{{ mediawiki_abs_path }}/LocalSettings.php"
|
2018-03-21 15:37:52 +00:00
|
|
|
|
2018-09-20 22:46:45 +00:00
|
|
|
- name: Copy mediawiki.conf to permit http://box{{ mediawiki_url }}
|
2018-03-20 18:20:01 +00:00
|
|
|
template:
|
|
|
|
src: mediawiki.conf.j2
|
|
|
|
dest: "/etc/{{ apache_config_dir }}/mediawiki.conf"
|
|
|
|
|
2018-09-20 22:46:45 +00:00
|
|
|
- name: Enable mediawiki.conf if mediawiki_enabled (debuntu)
|
2018-03-20 18:20:01 +00:00
|
|
|
file:
|
|
|
|
src: /etc/apache2/sites-available/mediawiki.conf
|
|
|
|
dest: /etc/apache2/sites-enabled/mediawiki.conf
|
|
|
|
state: link
|
|
|
|
when: mediawiki_enabled and is_debuntu
|
|
|
|
|
2018-09-20 22:46:45 +00:00
|
|
|
- name: Remove mediawiki.conf if not mediawiki_enabled (debuntu)
|
2018-03-20 18:20:01 +00:00
|
|
|
file:
|
|
|
|
path: /etc/apache2/sites-enabled/mediawiki.conf
|
|
|
|
state: absent
|
|
|
|
when: not mediawiki_enabled and is_debuntu
|
|
|
|
|
2018-09-20 22:46:45 +00:00
|
|
|
- name: Restart Apache to enable/disable http://box{{ mediawiki_url }}
|
2018-03-20 18:20:01 +00:00
|
|
|
service:
|
|
|
|
name: "{{ apache_service }}"
|
|
|
|
state: restarted
|
|
|
|
|
|
|
|
- name: Add 'mediawiki' to list of services at /etc/iiab/iiab.ini
|
|
|
|
ini_file:
|
|
|
|
dest: "{{ service_filelist }}"
|
|
|
|
section: mediawiki
|
|
|
|
option: "{{ item.option }}"
|
|
|
|
value: "{{ item.value }}"
|
|
|
|
with_items:
|
|
|
|
- option: name
|
|
|
|
value: mediawiki
|
|
|
|
- option: description
|
|
|
|
value: '"mediawiki is a blog and web site management application."'
|
|
|
|
- option: mediawiki_src
|
|
|
|
value: "{{ mediawiki_src }}"
|
|
|
|
- option: mediawiki_abs_path
|
|
|
|
value: "{{ mediawiki_abs_path }}"
|
|
|
|
- option: mediawiki_db_name
|
|
|
|
value: "{{ mediawiki_db_name }}"
|
|
|
|
- option: mediawiki_db_user
|
|
|
|
value: "{{ mediawiki_db_user }}"
|
|
|
|
- option: mediawiki_url
|
|
|
|
value: "{{ mediawiki_url }}"
|
|
|
|
- option: mediawiki_full_url
|
|
|
|
value: "{{ mediawiki_full_url }}"
|
|
|
|
- option: mediawiki_enabled
|
|
|
|
value: "{{ mediawiki_enabled }}"
|