1
0
Fork 0
mirror of https://github.com/iiab/iiab.git synced 2025-03-09 15:40:17 +00:00

Merge pull request #355 from tim-moody/elgg-10-1

fix elgg: reorder so dbuser can be created
This commit is contained in:
A Holt 2017-10-01 22:39:00 -04:00 committed by GitHub
commit cfc5573738

View file

@ -1,7 +1,10 @@
# Assume we only get here if elgg_install: True
# Assume mysql is running
- name: download current version from our copy - name: download current version from our copy
shell: wget {{ iiab_download_url }}/elgg-{{ elgg_version }}.zip -c -P {{ downloads_dir }} shell: wget {{ iiab_download_url }}/elgg-{{ elgg_version }}.zip -c -P {{ downloads_dir }}
creates={{ downloads_dir }}/elgg-{{ elgg_version }}.zip creates={{ downloads_dir }}/elgg-{{ elgg_version }}.zip
when: internet_available when: internet_available
- name: Determine if software is already expanded - name: Determine if software is already expanded
stat: path=/opt/elgg-{{ elgg_version }}/index.php stat: path=/opt/elgg-{{ elgg_version }}/index.php
@ -11,7 +14,7 @@
# unarchive: dest=/opt/ # unarchive: dest=/opt/
# src={{ downloads_dir }}/elgg-{{ elgg_version }}.zip # src={{ downloads_dir }}/elgg-{{ elgg_version }}.zip
- name: Expand it to our location - name: Expand it to our location unless already done
shell: "/usr/bin/unzip -o {{ downloads_dir }}/elgg-{{ elgg_version }}.zip -d /opt" shell: "/usr/bin/unzip -o {{ downloads_dir }}/elgg-{{ elgg_version }}.zip -d /opt"
when: elgg.stat.exists is defined and not elgg.stat.exists when: elgg.stat.exists is defined and not elgg.stat.exists
@ -25,6 +28,7 @@
# use template to fix up settings in engine/settings.php with our variables substituted # use template to fix up settings in engine/settings.php with our variables substituted
# into engine/settings.example.php # into engine/settings.example.php
# note this will overwrite any manual settings
- name: Substitute our parameters in engine/settings.example.php - name: Substitute our parameters in engine/settings.example.php
template: src="settings.php.j2" template: src="settings.php.j2"
dest="/opt/{{ elgg_xx }}/elgg-config/settings.php" dest="/opt/{{ elgg_xx }}/elgg-config/settings.php"
@ -60,51 +64,53 @@
recurse=yes recurse=yes
state=directory state=directory
# elggdb.sql obtained with mysqldump --skip-add-drop-table elggdb > elggdb.sql - name: Create a mysql database for elgg - can be run more than once
# tar up a mysqldump of freshly installed database and use it in the install to avoid the startup mysql_db: name={{ dbname }}
# form, which worries me a lot. (/var/lib/mysql/elggdb) register: create_elgg_database
- name: Create a user to access the elgg database - name: Create a user to access the elgg database - can be run more than once
mysql_user: name={{ dbuser }} host={{ item }} password={{ dbpassword }} priv=*.*:ALL mysql_user: name={{ dbuser }} host={{ item }} password={{ dbpassword }} priv={{ dbname }}.*:ALL
with_items: with_items:
- 127.0.0.1 - 127.0.0.1
- ::1 - ::1
- localhost - localhost
when: mysql_enabled and elgg_enabled and not elgg.stat.exists
- name: Create file to load database - name: Create file to load database
template: src=elggdb.sql.j2 template: src=elggdb.sql.j2
dest=/tmp/elggdb.sql dest=/tmp/elggdb.sql
- name: Create a mysql database for elgg # elggdb.sql obtained with mysqldump --skip-add-drop-table elggdb > elggdb.sql
mysql_db: name={{ dbname }} # tar up a mysqldump of freshly installed database and use it in the install to avoid the startup
when: mysql_enabled and elgg_enabled # form, which worries me a lot. (/var/lib/mysql/elggdb)
register: create_elgg_database
- name: Load elgg database dump - name: Load elgg database dump
mysql_db: name={{ dbname }} mysql_db: name={{ dbname }}
state=import state=import
target=/tmp/elggdb.sql target=/tmp/elggdb.sql
when: mysql_enabled and elgg_enabled and create_elgg_database.changed when: create_elgg_database.changed
- name: Remove database dump after load - name: Remove database dump after load
file: name=/tmp/elggdb.sql state=absent file: name=/tmp/elggdb.sql state=absent
- name: Install config file for elgg in Apache - name: Install config file for elgg in Apache
template: src=elgg.conf dest=/etc/{{ apache_config_dir }}/elgg.conf template: src=elgg.conf dest=/etc/{{ apache_config_dir }}/elgg.conf
when: mysql_enabled and elgg_enabled
- name: enable elgg - name: Enable elgg for debuntu (will already be enabled above for Redhat)
file: path=/etc/apache2/sites-enabled/elgg.conf file: path=/etc/apache2/sites-enabled/elgg.conf
src=/etc/apache2/sites-available/elgg.conf src=/etc/apache2/sites-available/elgg.conf
state=link state=link
when: elgg_enabled and is_debuntu when: elgg_enabled and is_debuntu
- name: disable elgg - name: Disable elgg for debuntu
file: path=/etc/apache2/sites-enabled/elgg.conf file: path=/etc/apache2/sites-enabled/elgg.conf
state=absent state=absent
when: not elgg_enabled and is_debuntu when: not elgg_enabled and is_debuntu
- name: Disable elgg for Redhat - remove config file for elgg in Apache
file: dest=/etc/{{ apache_config_dir }}/elgg.conf
state=absent
when: not elgg_enabled and is_redhat
- name: add elgg to service list - name: add elgg to service list
ini_file: dest='{{ service_filelist }}' ini_file: dest='{{ service_filelist }}'
section=elgg section=elgg