#!/bin/bash INVENTORY="ansible_hosts" PLAYBOOK="iiab.yml" #PLAYBOOK="iiab-stages.yml" CWD=`pwd` export ANSIBLE_LOG_PATH="$CWD/iiab-debug.log" if [ ! -f $PLAYBOOK ]; then echo "Exiting: IIAB Playbook not found." echo "Please run this in /opt/iiab/iiab (top level of the git repo)." exit 1 fi # Is the following stanza nec? if [ ! -f /etc/iiab/config_vars.yml ]; then mkdir -p /etc/iiab echo "{}" > /etc/iiab/config_vars.yml fi tags=$(echo $1 | tr "," "\n") if [ "$tags" == "" ]; then echo " usage: ./runtags " echo " usage: ./runtags ,," echo " Can take a single value or a comma-separated list (no spaces within the list!)" echo " Now retrieving a list of possible Ansible playbook and tagname values..." ansible-playbook -i $INVENTORY $PLAYBOOK --connection=local --list-tags exit 0 fi found="N" for tag in $tags; do if [ "$tag" == "0-init" ]; then found="Y" fi done taglist=$1 if [ "$found" == "N" ]; then taglist="0-init,"$taglist fi ansible-playbook -i $INVENTORY $PLAYBOOK --connection=local --tags=$taglist