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

92 lines
2.9 KiB
YAML

- name: 'Install packages: php{{ php_version }}-intl, php{{ php_version }}-mbstring'
package:
name:
- "php{{ php_version }}-intl"
- "php{{ php_version }}-mbstring"
state: present
#tags:
# - download
- name: Download {{ mediawiki_download_base_url }}/{{ mediawiki_src }} to {{ downloads_dir }}
get_url:
url: "{{ mediawiki_download_base_url }}/{{ mediawiki_src }}"
dest: "{{ downloads_dir }}"
timeout: "{{ download_timeout }}"
#force: yes
#backup: yes
when: internet_available | bool
- name: Unpack it to permanent location {{ mediawiki_abs_path }}
unarchive:
src: "{{ downloads_dir }}/{{ mediawiki_src }}"
dest: "{{ mediawiki_install_path }}"
owner: root
group: "{{ apache_user }}"
mode: 0755
keep_newer: yes
- name: Create symlink mwlink from docroot to {{ mediawiki_abs_path }}
file:
src: "{{ mediawiki_abs_path }}"
dest: "{{ doc_root }}/mwlink"
state: link
- name: Start MySQL service, so we can create db
service:
state: started
name: "{{ mysql_service }}"
- name: Create MySQL database {{ mediawiki_db_name }}
mysql_db:
name: "{{ mediawiki_db_name }}"
state: present
- name: Create MySQL database user {{ mediawiki_db_user }}
mysql_user:
name: "{{ mediawiki_db_user }}"
password: "{{ mediawiki_db_user_password }}"
priv: "{{ mediawiki_db_name }}.*:ALL,GRANT"
state: present
- name: Configure MediaWiki, if {{ mediawiki_abs_path }}/LocalSettings.php doesn't exist
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=/mwlink
--lang=en
--pass={{ mediawiki_admin_user_password }}
"{{ mediawiki_site_name }}"
"{{ mediawiki_admin_user }}"
args:
chdir: "{{ mediawiki_abs_path }}"
creates: "{{ mediawiki_abs_path }}/LocalSettings.php"
- name: Configure wgArticlePath variable in {{ mediawiki_abs_path }}/LocalSettings.php
lineinfile:
dest: "{{ mediawiki_abs_path }}/LocalSettings.php"
line: '$wgArticlePath = "/wiki/$1";'
create: yes
- name: Configure wgUsePathInfo variable in {{ mediawiki_abs_path }}/LocalSettings.php
lineinfile:
dest: "{{ mediawiki_abs_path }}/LocalSettings.php"
line: '$wgUsePathInfo = true;'
create: yes
- name: Install /etc/{{ apache_config_dir }}/mediawiki.conf from template, for http://box{{ mediawiki_url }}
template:
src: mediawiki.conf.j2
dest: "/etc/{{ apache_config_dir }}/mediawiki.conf"
# Install {{ nginx_config_dir }}/mediawiki-nginx.conf from template in enable.yml
- name: "Add 'mediawiki_installed: True' to {{ iiab_state_file }}" # /etc/iiab/iiab_state.yml
lineinfile:
dest: "{{ iiab_state_file }}"
regexp: '^mediawiki_installed'
line: 'mediawiki_installed: True'