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

Merge pull request #7 from iiab/master

sync from iiab/iiab
This commit is contained in:
A Holt 2017-10-02 21:37:19 -04:00 committed by GitHub
commit b3dfeea480
5 changed files with 44 additions and 35 deletions

View file

@ -6,6 +6,7 @@
- vars/default_vars.yml - vars/default_vars.yml
- vars/{{ ansible_local.local_facts.os_ver}}.yml - vars/{{ ansible_local.local_facts.os_ver}}.yml
- vars/local_vars.yml - vars/local_vars.yml
- /etc/iiab/config_vars.yml
roles: roles:
- { role: 1-prep, tags: ['prep','platform','base'] } - { role: 1-prep, tags: ['prep','platform','base'] }

View file

@ -1,5 +1,3 @@
- name: Addon services installed - name: Addon services installed
command: echo Addon services installed command: echo Addon services installed
- name: Installation Complete
shell: echo "{}" > /etc/iiab/config_vars.yml

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

View file

@ -46,7 +46,7 @@
group=root group=root
mode=0644 mode=0644
with_items: with_items:
- { src: 'sugarizer.service.j2' , dest: '/etc/systemd/system/sugarizer.service'} # - { src: 'sugarizer.service.j2' , dest: '/etc/systemd/system/sugarizer.service'}
- { src: 'sugarizer.ini' , dest: '{{ sugarizer_location }}/sugarizer/server' } - { src: 'sugarizer.ini' , dest: '{{ sugarizer_location }}/sugarizer/server' }
# - { src: 'sugarizer.conf' , dest: '/etc/apache2/sites-available' } # - { src: 'sugarizer.conf' , dest: '/etc/apache2/sites-available' }
@ -68,22 +68,22 @@
chdir: "{{ sugarizer_location }}/sugarizer/server" chdir: "{{ sugarizer_location }}/sugarizer/server"
when: is_F18 when: is_F18
- name: enable services #- name: enable services
service: name={{ item.name }} # service: name={{ item.name }}
enabled=yes # enabled=yes
state=restarted # state=restarted
with_items: # with_items:
- { name: sugarizer } # - { name: sugarizer }
when: sugarizer_enabled # when: sugarizer_enabled
- name: disable services #- name: disable services
service: name={{ item.name }} # service: name={{ item.name }}
enabled=no # enabled=no
state=stopped # state=stopped
with_items: # with_items:
- { name: sugarizer } # - { name: sugarizer }
when: not sugarizer_enabled # when: not sugarizer_enabled
- name: add sugarizer to service list - name: add sugarizer to service list
ini_file: dest='{{ service_filelist }}' ini_file: dest='{{ service_filelist }}'

View file

@ -1,6 +1,11 @@
#!/bin/bash -e #!/bin/bash -e
# ./scripts/ansible
# copy var files to /etc/iiab for subsequent use # copy var files to /etc/iiab for subsequent use
mkdir -p /etc/iiab
if [ ! -f /etc/iiab/config_vars.yml ]; then
echo "{}" > /etc/iiab/config_vars.yml
fi
# if vars/local_vars.yml is missing, put a default one in place # if vars/local_vars.yml is missing, put a default one in place
if [ ! -f ./vars/local_vars.yml ]; then if [ ! -f ./vars/local_vars.yml ]; then
OS=`grep ^ID= /etc/*release|cut -d= -f2` OS=`grep ^ID= /etc/*release|cut -d= -f2`
@ -73,4 +78,3 @@ export ANSIBLE_LOG_PATH="$XSCE_DIR/iiab-install.log"
ansible -m setup -i $INVENTORY localhost --connection=local >> /dev/null ansible -m setup -i $INVENTORY localhost --connection=local >> /dev/null
ansible-playbook -i $INVENTORY $PLAYBOOK ${ARGS} --connection=local ansible-playbook -i $INVENTORY $PLAYBOOK ${ARGS} --connection=local
#ansible-playbook -i $INVENTORY $PLAYBOOK ${ARGS} --syntax-check