mirror of
https://github.com/iiab/iiab.git
synced 2025-02-13 11:42:08 +00:00
92 lines
3.2 KiB
YAML
92 lines
3.2 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
|
|
|
|
- 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: u+rw,g+r,o+r # '0755' forced executable bits on files
|
|
keep_newer: yes
|
|
|
|
- name: Create symlink {{ doc_root }}/mwlink -> {{ mediawiki_abs_path }}
|
|
file:
|
|
src: "{{ mediawiki_abs_path }}"
|
|
path: "{{ doc_root }}/mwlink"
|
|
state: link
|
|
|
|
- name: Start MySQL systemd service ({{ mysql_service }}) so we can create db
|
|
systemd:
|
|
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 }} with password, and permissions to above db
|
|
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";'
|
|
|
|
- name: Configure $wgUsePathInfo variable in {{ mediawiki_abs_path }}/LocalSettings.php
|
|
lineinfile:
|
|
dest: "{{ mediawiki_abs_path }}/LocalSettings.php"
|
|
line: '$wgUsePathInfo = true;'
|
|
|
|
- name: Configure $wgServer variable in {{ mediawiki_abs_path }}/LocalSettings.php
|
|
lineinfile:
|
|
dest: "{{ mediawiki_abs_path }}/LocalSettings.php"
|
|
regexp: '^\$wgServer ='
|
|
line: '$wgServer = "//" . $_SERVER["HTTP_HOST"];'
|
|
|
|
- name: Install /etc/{{ apache_config_dir }}/mediawiki.conf from template, for http://box{{ mediawiki_url }} via Apache
|
|
template:
|
|
src: mediawiki.conf.j2
|
|
dest: "/etc/{{ apache_config_dir }}/mediawiki.conf"
|
|
|
|
- name: "Add 'mediawiki_installed: True' to {{ iiab_state_file }}"
|
|
lineinfile:
|
|
dest: "{{ iiab_state_file }}" # /etc/iiab/iiab_state.yml
|
|
regexp: '^mediawiki_installed'
|
|
line: 'mediawiki_installed: True'
|