mirror of
https://github.com/iiab/iiab.git
synced 2025-03-09 15:40:17 +00:00
Merge pull request #24 from jvonau/iiab-install
sync from jvonau/iiab branch iiab-install
This commit is contained in:
commit
20cb253da0
17 changed files with 214 additions and 99 deletions
74
iiab-install
Executable file
74
iiab-install
Executable file
|
@ -0,0 +1,74 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
# running from a git repo
|
||||||
|
PLAYBOOK="iiab-steps.yml"
|
||||||
|
INVENTORY="ansible_hosts"
|
||||||
|
CWD=`pwd`
|
||||||
|
# Add cmdline options for passing to ansible
|
||||||
|
# todo add proper shift to gobble up --debug --reinstall
|
||||||
|
ARGS=""
|
||||||
|
|
||||||
|
export ANSIBLE_LOG_PATH="$CWD/iiab-install.log"
|
||||||
|
|
||||||
|
if [ ! -f /etc/ansible/facts.d/local_facts.fact ]; then
|
||||||
|
mkdir -p /etc/ansible/facts.d
|
||||||
|
fi
|
||||||
|
cp ./scripts/local_facts.fact /etc/ansible/facts.d/local_facts.fact
|
||||||
|
|
||||||
|
STAGE=""
|
||||||
|
|
||||||
|
if [ ! -f /etc/iiab/iiab.env ]; then
|
||||||
|
mkdir -p /etc/iiab
|
||||||
|
else
|
||||||
|
OLD=`grep XSCE /etc/iiab/iiab.env | wc -l`
|
||||||
|
if [ "$OLD" != 0 ] || [ "$1" = "--reinstall" ]; then
|
||||||
|
echo "Found old XSCE install - re-installing from scratch"
|
||||||
|
rm /etc/iiab/iiab.env
|
||||||
|
# check ansible version here and force ansible upgrade if needed
|
||||||
|
else
|
||||||
|
source /etc/iiab/iiab.env
|
||||||
|
if [ $STAGE == 9 ] && [ "$1" = "--debug" ]; then
|
||||||
|
echo "Entering debug mode"
|
||||||
|
sed -i -e 's/^STAGE=.*/STAGE=2/' /etc/iiab/iiab.env
|
||||||
|
elif [ ! $STAGE == 9 ]; then
|
||||||
|
echo "Restarting from STAGE $STAGE"
|
||||||
|
else
|
||||||
|
# place keeper add read response
|
||||||
|
# "offer 'Y' or stage number dialog box option to override"
|
||||||
|
echo "'iiab-install' has already been completed"
|
||||||
|
echo "use --debug to override "
|
||||||
|
#echo "In demo mode not preventing second run"
|
||||||
|
echo "Exiting."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -f $PLAYBOOK ]; then
|
||||||
|
echo "IIAB Playbook not found."
|
||||||
|
echo "Please run this command from the top level of the git repo."
|
||||||
|
echo "Exiting."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# if vars/local_vars.yml is missing, put a default one in place - First Run
|
||||||
|
if [ ! -f ./vars/local_vars.yml ]; then
|
||||||
|
OS=`grep ^ID= /etc/*release|cut -d= -f2`
|
||||||
|
OS=${OS//\"/}
|
||||||
|
|
||||||
|
case $OS in
|
||||||
|
OLPC | fedora)
|
||||||
|
cp ./vars/olpc.localvars ./vars/local_vars.yml
|
||||||
|
;;
|
||||||
|
centos | debian | ubuntu | raspbian)
|
||||||
|
cp ./vars/medium.localvars ./vars/local_vars.yml
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "IIAB supports raspbian, debian, ubuntu, centos, and OLPC - exiting now..."
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Running local playbooks! "
|
||||||
|
ansible -m setup -i $INVENTORY localhost --connection=local >> /dev/null
|
||||||
|
ansible-playbook -i $INVENTORY $PLAYBOOK ${ARGS} --connection=local
|
14
iiab-network
14
iiab-network
|
@ -1,15 +1,8 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
# running from a git repo
|
||||||
if [ -f /etc/iiab/iiab.env ]
|
# ansible files exist
|
||||||
then
|
|
||||||
. /etc/iiab/iiab.env
|
|
||||||
cd $IIAB_DIR
|
|
||||||
else
|
|
||||||
echo /etc/iiab/iiab.env is missing. Playbook has not been run.
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
CWD=`pwd`
|
CWD=`pwd`
|
||||||
|
export ANSIBLE_LOG_PATH="$CWD/iiab-network.log"
|
||||||
|
|
||||||
if [ ! -f iiab-network.yml ]
|
if [ ! -f iiab-network.yml ]
|
||||||
then
|
then
|
||||||
|
@ -24,7 +17,6 @@ then
|
||||||
touch /etc/iiab/config_vars.yml
|
touch /etc/iiab/config_vars.yml
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export ANSIBLE_LOG_PATH="$CWD/iiab-network.log"
|
|
||||||
ansible-playbook -i ansible_hosts iiab-network.yml --connection=local
|
ansible-playbook -i ansible_hosts iiab-network.yml --connection=local
|
||||||
echo "" >> iiab-network.log
|
echo "" >> iiab-network.log
|
||||||
ls -la /etc/sys*/net*/ifcfg* >> iiab-network.log
|
ls -la /etc/sys*/net*/ifcfg* >> iiab-network.log
|
||||||
|
|
29
iiab-steps.yml
Normal file
29
iiab-steps.yml
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
---
|
||||||
|
- hosts: all
|
||||||
|
become: yes
|
||||||
|
|
||||||
|
vars_files:
|
||||||
|
- vars/default_vars.yml
|
||||||
|
- vars/{{ ansible_local.local_facts.os_ver }}.yml
|
||||||
|
- vars/local_vars.yml
|
||||||
|
|
||||||
|
roles:
|
||||||
|
- { role: 0-init, tags: ['0-init'] }
|
||||||
|
- { role: 1-prep, tags: ['1-prep','platform','base'],
|
||||||
|
when: ansible_local.local_facts.stage|int < 1 }
|
||||||
|
- { role: 2-common, tags: ['2-common','base'],
|
||||||
|
when: ansible_local.local_facts.stage|int < 2 }
|
||||||
|
- { role: 3-base-server, tags: ['3-base-server','base'],
|
||||||
|
when: ansible_local.local_facts.stage|int < 3 }
|
||||||
|
- { role: 4-server-options, tags: ['4-server-options'],
|
||||||
|
when: ansible_local.local_facts.stage|int < 4 }
|
||||||
|
- { role: 5-xo-services, tags: ['5-xo-services'],
|
||||||
|
when: ansible_local.local_facts.stage|int < 5 }
|
||||||
|
- { role: 6-generic-apps, tags: ['6-generic-apps'],
|
||||||
|
when: ansible_local.local_facts.stage|int < 6 }
|
||||||
|
- { role: 7-edu-apps, tags: ['7-edu-apps'],
|
||||||
|
when: ansible_local.local_facts.stage|int < 7 }
|
||||||
|
- { role: 8-mgmt-tools, tags: ['8-mgmt-tools'],
|
||||||
|
when: ansible_local.local_facts.stage|int < 8 }
|
||||||
|
- { role: 9-local-addons, tags: ['9-local-addons'],
|
||||||
|
when: ansible_local.local_facts.stage|int < 9 }
|
|
@ -4,6 +4,8 @@ PLAYBOOK="iiab-base.yml"
|
||||||
INVENTORY="ansible_hosts"
|
INVENTORY="ansible_hosts"
|
||||||
CWD=`pwd`
|
CWD=`pwd`
|
||||||
|
|
||||||
|
export ANSIBLE_LOG_PATH="$CWD/iiab-install.log"
|
||||||
|
|
||||||
if [ ! -f $PLAYBOOK ]
|
if [ ! -f $PLAYBOOK ]
|
||||||
then
|
then
|
||||||
echo "IIAB Playbook not found."
|
echo "IIAB Playbook not found."
|
||||||
|
@ -15,5 +17,4 @@ fi
|
||||||
sed -i -e "s/openvpn_install: False/openvpn_install: True/" vars/local_vars.yml
|
sed -i -e "s/openvpn_install: False/openvpn_install: True/" vars/local_vars.yml
|
||||||
sed -i -e "s/openvpn_enabled: False/openvpn_enabled: True/" vars/local_vars.yml
|
sed -i -e "s/openvpn_enabled: False/openvpn_enabled: True/" vars/local_vars.yml
|
||||||
|
|
||||||
export ANSIBLE_LOG_PATH="$CWD/iiab-install.log"
|
|
||||||
ansible-playbook -i $INVENTORY $PLAYBOOK --connection=local
|
ansible-playbook -i $INVENTORY $PLAYBOOK --connection=local
|
||||||
|
|
|
@ -6,8 +6,9 @@
|
||||||
|
|
||||||
# set top level variables from local facts for convenience
|
# set top level variables from local facts for convenience
|
||||||
- set_fact:
|
- set_fact:
|
||||||
xo_model: '{{ ansible_local["local_facts"]["xo_model"] }}'
|
xo_model: '{{ ansible_local.local_facts.xo_model }}'
|
||||||
phplib_dir: '{{ ansible_local["local_facts"]["phplib_dir"] }}'
|
phplib_dir: '{{ ansible_local.local_facts.phplib_dir }}'
|
||||||
|
iiab_stage: '{{ ansible_local.local_facts.stage }}'
|
||||||
|
|
||||||
- name: Set exFAT enabled for XO laptops
|
- name: Set exFAT enabled for XO laptops
|
||||||
set_fact:
|
set_fact:
|
||||||
|
@ -46,33 +47,6 @@
|
||||||
file: path=/tmp/heart-beat.txt
|
file: path=/tmp/heart-beat.txt
|
||||||
state=absent
|
state=absent
|
||||||
|
|
||||||
- name: add version section
|
|
||||||
ini_file: dest='{{ iiab_config_file }}'
|
|
||||||
section=runtime
|
|
||||||
option='{{ item.option }}'
|
|
||||||
value='{{ item.value }}'
|
|
||||||
with_items:
|
|
||||||
- option: 'runtime_branch'
|
|
||||||
value: '{{ ansible_local["local_facts"]["iiab_branch"] }}'
|
|
||||||
- option: 'runtime_commit'
|
|
||||||
value: '{{ ansible_local["local_facts"]["iiab_commit"] }}'
|
|
||||||
- option: 'runtime_date'
|
|
||||||
value: '{{ ansible_date_time["iso8601"] }}'
|
|
||||||
- option: 'runtime_php'
|
|
||||||
value: '{{ phplib_dir }}'
|
|
||||||
- option: 'kernel'
|
|
||||||
value: '{{ ansible_kernel }}'
|
|
||||||
- option: 'memory_mb'
|
|
||||||
value: '{{ ansible_memtotal_mb }}'
|
|
||||||
- option: 'swap_mb'
|
|
||||||
value: '{{ ansible_swaptotal_mb }}'
|
|
||||||
- option: 'product_id'
|
|
||||||
value: '{{ ansible_product_uuid }}'
|
|
||||||
- option: 'gw_active'
|
|
||||||
value: '{{ gw_active }}'
|
|
||||||
- option: 'internet_available'
|
|
||||||
value: '{{ internet_available }}'
|
|
||||||
|
|
||||||
# Put all computed vars here so derive properly from any prior var file
|
# Put all computed vars here so derive properly from any prior var file
|
||||||
- name: If the TZ is not set in env, set it to UTC
|
- name: If the TZ is not set in env, set it to UTC
|
||||||
set_fact: local_tz='UTC'
|
set_fact: local_tz='UTC'
|
||||||
|
@ -176,3 +150,34 @@
|
||||||
set_fact:
|
set_fact:
|
||||||
is_CentOS: True
|
is_CentOS: True
|
||||||
when: ansible_distribution == "CentOS"
|
when: ansible_distribution == "CentOS"
|
||||||
|
|
||||||
|
- name: add version section
|
||||||
|
ini_file: dest='{{ iiab_config_file }}'
|
||||||
|
section=runtime
|
||||||
|
option='{{ item.option }}'
|
||||||
|
value='{{ item.value }}'
|
||||||
|
with_items:
|
||||||
|
- option: 'iiab_stage'
|
||||||
|
value: '{{ iiab_stage }}'
|
||||||
|
- option: 'runtime_php'
|
||||||
|
value: '{{ phplib_dir }}'
|
||||||
|
- option: 'runtime_branch'
|
||||||
|
value: '{{ ansible_local.local_facts.iiab_branch }}'
|
||||||
|
- option: 'runtime_commit'
|
||||||
|
value: '{{ ansible_local.local_facts.iiab_commit }}'
|
||||||
|
- option: 'runtime_date'
|
||||||
|
value: '{{ ansible_date_time.iso8601 }}'
|
||||||
|
- option: 'ansible_version'
|
||||||
|
value: '{{ ansible_local.local_facts.ansible_version }}'
|
||||||
|
- option: 'kernel'
|
||||||
|
value: '{{ ansible_kernel }}'
|
||||||
|
- option: 'memory_mb'
|
||||||
|
value: '{{ ansible_memtotal_mb }}'
|
||||||
|
- option: 'swap_mb'
|
||||||
|
value: '{{ ansible_swaptotal_mb }}'
|
||||||
|
- option: 'product_id'
|
||||||
|
value: '{{ ansible_product_uuid }}'
|
||||||
|
- option: 'gw_active'
|
||||||
|
value: '{{ gw_active }}'
|
||||||
|
- option: 'internet_available'
|
||||||
|
value: '{{ internet_available }}'
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# Preparations (Hardware Level)
|
# Preparations (Hardware Level)
|
||||||
|
|
||||||
- name: ...IS BEGINNING ============================================
|
- name: ...IS BEGINNING ==================================
|
||||||
command: echo
|
command: echo
|
||||||
|
|
||||||
- name: Get the uuidgen program
|
- name: Get the uuidgen program
|
||||||
|
@ -88,5 +88,10 @@
|
||||||
url={{ iiab_download_url }}/iwlwifi-8000C-13.ucode
|
url={{ iiab_download_url }}/iwlwifi-8000C-13.ucode
|
||||||
when: first_run and usb_NUC6.stdout|int > 0
|
when: first_run and usb_NUC6.stdout|int > 0
|
||||||
|
|
||||||
- name: ...HAS COMPLETED ===========================================
|
# this script can be sourced to get IIAB location
|
||||||
command: echo
|
- name: Recording STAGE 1 HAS COMPLETED ==================
|
||||||
|
template: src=roles/1-prep/templates/iiab.env.j2
|
||||||
|
dest=/etc/iiab/iiab.env
|
||||||
|
owner=root
|
||||||
|
group=root
|
||||||
|
mode=0644
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
# This is a configuration file for XSCE
|
# This is a configuration file for IIAB
|
||||||
# It can sourced in a shell script or read into an application
|
# It can sourced in a shell script or read into an application
|
||||||
IIAB_BASE_PATH={{ iiab_base }}
|
IIAB_BASE_PATH={{ iiab_base }}
|
||||||
IIAB_DIR={{ iiab_dir }}
|
IIAB_DIR={{ iiab_dir }}
|
||||||
OS={{ ansible_local.local_facts.os }}
|
OS={{ ansible_local.local_facts.os }}
|
||||||
OS_VER={{ ansible_local.local_facts.os_ver }}
|
OS_VER={{ ansible_local.local_facts.os_ver }}
|
||||||
WWWROOT={{ doc_root }}
|
WWWROOT={{ doc_root }}
|
||||||
|
STAGE=1
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# Common OS-Level Additions & Mods (that only need to be performed once)
|
# Common OS-Level Additions & Mods (that only need to be performed once)
|
||||||
|
|
||||||
- name: ...IS BEGINNING ==========================================
|
- name: ...IS BEGINNING ==================================
|
||||||
command: echo
|
command: echo
|
||||||
|
|
||||||
#- include: iiab_ini.yml
|
#- include: iiab_ini.yml
|
||||||
|
@ -48,5 +48,8 @@
|
||||||
|
|
||||||
- include: udev.yml
|
- include: udev.yml
|
||||||
|
|
||||||
- name: ...HAS COMPLETED =========================================
|
- name: Recording STAGE 2 HAS COMPLETED ==================
|
||||||
command: echo
|
lineinfile: dest=/etc/iiab/iiab.env
|
||||||
|
regexp='^STAGE=*'
|
||||||
|
line='STAGE=2'
|
||||||
|
state=present
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
# Base Server
|
# Base Server
|
||||||
|
- name: ...IS BEGINNING ==================================
|
||||||
- name: ...IS BEGINNING =====================================
|
|
||||||
command: echo
|
command: echo
|
||||||
|
|
||||||
- name: HTTPD
|
- name: HTTPD
|
||||||
|
@ -30,12 +29,9 @@
|
||||||
state=restarted
|
state=restarted
|
||||||
when: not installing
|
when: not installing
|
||||||
|
|
||||||
# If we got here we're done
|
- name: Record STAGE 3 HAS COMPLETED =====================
|
||||||
#- name: Record base gui version
|
lineinfile: dest=/etc/iiab/iiab.env
|
||||||
# lineinfile: dest=/etc/iiab/iiab.env
|
regexp='^STAGE=*'
|
||||||
# regexp='^BASE_VERSION=*'
|
line='STAGE=3'
|
||||||
# line='BASE_VERSION="{{ gui_version }}"'
|
state=present
|
||||||
# state=present
|
|
||||||
|
|
||||||
- name: ...HAS COMPLETED ====================================
|
|
||||||
command: echo
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Server Options
|
# Server Options
|
||||||
|
|
||||||
- name: ...IS BEGINNING ==================================
|
- name: ...IS BEGINNING ==================================
|
||||||
command: echo
|
command: echo
|
||||||
|
|
||||||
|
@ -57,14 +56,6 @@
|
||||||
when: usb_lib_install
|
when: usb_lib_install
|
||||||
tags: usb-lib
|
tags: usb-lib
|
||||||
|
|
||||||
# this script can be sourced to get IIAB location
|
|
||||||
- name: Create iiab.env file
|
|
||||||
template: src=roles/1-prep/templates/iiab.env.j2
|
|
||||||
dest=/etc/iiab/iiab.env
|
|
||||||
owner=root
|
|
||||||
group=root
|
|
||||||
mode=0644
|
|
||||||
|
|
||||||
- name: Put a Python interface to iiab.env
|
- name: Put a Python interface to iiab.env
|
||||||
template: src=roles/1-prep/templates/iiab_env.py.j2
|
template: src=roles/1-prep/templates/iiab_env.py.j2
|
||||||
dest=/etc/iiab/iiab_env.py
|
dest=/etc/iiab/iiab_env.py
|
||||||
|
@ -73,5 +64,8 @@
|
||||||
command: /usr/bin/iiab-refresh-wiki-docs
|
command: /usr/bin/iiab-refresh-wiki-docs
|
||||||
when: not nodocs
|
when: not nodocs
|
||||||
|
|
||||||
- name: ...HAS COMPLETED =================================
|
- name: Recording STAGE 4 HAS COMPLETED ==================
|
||||||
command: echo
|
lineinfile: dest=/etc/iiab/iiab.env
|
||||||
|
regexp='^STAGE=*'
|
||||||
|
line='STAGE=4'
|
||||||
|
state=present
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
# XO Services
|
# XO Services
|
||||||
|
- name: ...IS BEGINNING ==================================
|
||||||
- name: ...IS BEGINNING =====================================
|
|
||||||
command: echo
|
command: echo
|
||||||
|
|
||||||
- name: ACTIVITY-SERVER
|
- name: ACTIVITY-SERVER
|
||||||
|
@ -21,5 +20,8 @@
|
||||||
when: idmgr_install
|
when: idmgr_install
|
||||||
tags: olpc, idmgr
|
tags: olpc, idmgr
|
||||||
|
|
||||||
- name: ...HAS COMPLETED ====================================
|
- name: Recording STAGE 5 HAS COMPLETED ==================
|
||||||
command: echo
|
lineinfile: dest=/etc/iiab/iiab.env
|
||||||
|
regexp='^STAGE=*'
|
||||||
|
line='STAGE=5'
|
||||||
|
state=present
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
# Generic Apps
|
# Generic Apps
|
||||||
|
- name: ...IS BEGINNING ==================================
|
||||||
- name: ...IS BEGINNING ====================================
|
|
||||||
command: echo
|
command: echo
|
||||||
|
|
||||||
- name: CALIBRE
|
- name: CALIBRE
|
||||||
|
@ -45,5 +44,8 @@
|
||||||
when: wordpress_install
|
when: wordpress_install
|
||||||
tags: wordpress
|
tags: wordpress
|
||||||
|
|
||||||
- name: ...HAS COMPLETED ===================================
|
- name: Recording STAGE 6 HAS COMPLETED ==================
|
||||||
command: echo
|
lineinfile: dest=/etc/iiab/iiab.env
|
||||||
|
regexp='^STAGE=*'
|
||||||
|
line='STAGE=6'
|
||||||
|
state=present
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
# Educational Apps
|
# Educational Apps
|
||||||
|
- name: ...IS BEGINNING ==================================
|
||||||
- name: ...IS BEGINNING ========================================
|
|
||||||
command: echo
|
command: echo
|
||||||
|
|
||||||
- name: KALITE
|
- name: KALITE
|
||||||
|
@ -39,5 +38,8 @@
|
||||||
when: sugarizer_install
|
when: sugarizer_install
|
||||||
tags: sugarizer
|
tags: sugarizer
|
||||||
|
|
||||||
- name: ...HAS COMPLETED =======================================
|
- name: Recording STAGE 7 HAS COMPLETED ==================
|
||||||
command: echo
|
lineinfile: dest=/etc/iiab/iiab.env
|
||||||
|
regexp='^STAGE=*'
|
||||||
|
line='STAGE=7'
|
||||||
|
state=present
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# Assessment and Monitoring Tools
|
# Assessment and Monitoring Tools
|
||||||
|
|
||||||
- name: ...IS BEGINNING ======================================
|
- name: ...IS BEGINNING ==================================
|
||||||
command: echo
|
command: echo
|
||||||
|
|
||||||
- name: AWSTATS
|
- name: AWSTATS
|
||||||
|
@ -51,5 +51,8 @@
|
||||||
when: xovis_install and ansible_distribution != "CentOS"
|
when: xovis_install and ansible_distribution != "CentOS"
|
||||||
tags: xovis
|
tags: xovis
|
||||||
|
|
||||||
- name: ...HAS COMPLETED =====================================
|
- name: Recording STAGE 8 HAS COMPLETED ==================
|
||||||
command: echo
|
lineinfile: dest=/etc/iiab/iiab.env
|
||||||
|
regexp='^STAGE=*'
|
||||||
|
line='STAGE=8'
|
||||||
|
state=present
|
||||||
|
|
|
@ -1,7 +1,10 @@
|
||||||
# Local Add-ons
|
# Local Add-ons
|
||||||
|
|
||||||
- name: ...IS BEGINNING ====================================
|
- name: ...IS BEGINNING =============================
|
||||||
command: echo
|
command: echo
|
||||||
|
|
||||||
- name: ...HAS COMPLETED ===================================
|
- name: Recording STAGE 9 HAS COMPLETED =============
|
||||||
command: echo
|
lineinfile: dest=/etc/iiab/iiab.env
|
||||||
|
regexp='^STAGE=*'
|
||||||
|
line='STAGE=9'
|
||||||
|
state=present
|
||||||
|
|
14
runtags
14
runtags
|
@ -1,16 +1,11 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
# running from a git repo
|
||||||
PLAYBOOK="iiab.yml"
|
PLAYBOOK="iiab.yml"
|
||||||
INVENTORY="ansible_hosts"
|
INVENTORY="ansible_hosts"
|
||||||
# Pass cmdline options for ansible
|
|
||||||
|
|
||||||
if [ -f /etc/iiab/iiab.env ]
|
|
||||||
then
|
|
||||||
. /etc/iiab/iiab.env
|
|
||||||
cd $IIAB_DIR
|
|
||||||
fi
|
|
||||||
|
|
||||||
CWD=`pwd`
|
CWD=`pwd`
|
||||||
|
|
||||||
|
export ANSIBLE_LOG_PATH="$CWD/iiab-debug.log"
|
||||||
|
|
||||||
if [ ! -f $PLAYBOOK ]
|
if [ ! -f $PLAYBOOK ]
|
||||||
then
|
then
|
||||||
echo "IIAB Playbook not found."
|
echo "IIAB Playbook not found."
|
||||||
|
@ -41,8 +36,6 @@ do
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# echo $found
|
|
||||||
|
|
||||||
taglist=$1
|
taglist=$1
|
||||||
|
|
||||||
if [ "$found" == "N" ]
|
if [ "$found" == "N" ]
|
||||||
|
@ -50,5 +43,4 @@ then
|
||||||
taglist="0-init,"$taglist
|
taglist="0-init,"$taglist
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export ANSIBLE_LOG_PATH="$CWD/iiab-debug.log"
|
|
||||||
ansible-playbook -i ansible_hosts iiab.yml --connection=local --tags="""$taglist"""
|
ansible-playbook -i ansible_hosts iiab.yml --connection=local --tags="""$taglist"""
|
||||||
|
|
|
@ -41,13 +41,24 @@ else
|
||||||
XO_VERSION="none"
|
XO_VERSION="none"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# upgrades return found, clean installs return 0
|
||||||
|
# interruptions return last stage number recorded (1-9)
|
||||||
|
if [ -f /etc/iiab/iiab.env ]
|
||||||
|
then
|
||||||
|
STAGE=1
|
||||||
|
source /etc/iiab/iiab.env
|
||||||
|
STAGE=$STAGE
|
||||||
|
else
|
||||||
|
STAGE=0
|
||||||
|
fi
|
||||||
ANSIBLE_VERSION=$(ansible --version|head -n 1|cut -f 2 -d " ")
|
ANSIBLE_VERSION=$(ansible --version|head -n 1|cut -f 2 -d " ")
|
||||||
cat <<EOF
|
cat <<EOF
|
||||||
{"phplib_dir" : "$PHPLIB_DIR",
|
{"phplib_dir" : "$PHPLIB_DIR",
|
||||||
|
"stage" : "$STAGE",
|
||||||
"iiab_branch" : "$BRANCH",
|
"iiab_branch" : "$BRANCH",
|
||||||
"iiab_commit" : "$COMMIT",
|
"iiab_commit" : "$COMMIT",
|
||||||
"xo_model" : "$XO_VERSION",
|
"xo_model" : "$XO_VERSION",
|
||||||
"ansble_version" : "$ANSIBLE_VERSION",
|
"ansible_version" : "$ANSIBLE_VERSION",
|
||||||
"os" : "$OS",
|
"os" : "$OS",
|
||||||
"os_ver" : "$OS_VER"}
|
"os_ver" : "$OS_VER"}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue