#!/bin/bash -e # 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 [ ! -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 if [ -f /etc/iiab/iiab.env ] then . /etc/iiab/iiab.env cd $XSCE_DIR else XSCE_DIR=/opt/iiab/iiab mkdir -p /etc/iiab fi if [ ! -f iiab.yml ] 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 [ ! -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 PLAYBOOK="iiab.yml" INVENTORY="ansible_hosts" CWD=`pwd` echo "Running local playbooks! " XSDOMAIN="" # Pass in Existing Domain if [ -f /etc/sysconfig/xs_domain_name ] then XSDOMAIN=`cat /etc/sysconfig/xs_domain_name` fi # Or accept Domain on command line if [ x"$1" != x ] then XSDOMAIN=$1 fi # Pass in git location if [ x"$XSDOMAIN" != x ] then ARGS="--extra-vars '{\"iiab_domain\":\"$XSDOMAIN\"}'" else ARGS="" fi export ANSIBLE_LOG_PATH="$XSCE_DIR/iiab-install.log" ansible -m setup -i $INVENTORY localhost --connection=local >> /dev/null ansible-playbook -i $INVENTORY $PLAYBOOK ${ARGS} --connection=local