Ver a proveniência

update run script

master
jdongmo há 4 anos
ascendente
cometimento
a62f57f498
1 ficheiros alterados com 58 adições e 58 eliminações
  1. +58
    -58
      run.sh

+ 58
- 58
run.sh Ver ficheiro

@@ -1,58 +1,58 @@
#!/usr/bin/env bash
# ENV Vars:
# VAGRANT_MODE - [0,1]
# - to be used with bovine-inventory's vagrant mode
# ANSIBLE_RUN_MODE - ["playbook","ad-hoc"]
# - specify which mode to run ansible in
# ANSIBLE_PLAYBOOK_FILE - defaults to "infra.yml"
# - specify playbook to pass to ansible-playbook
# - NB: only used when run mode is "playbook"
# ANSIBLE_BASE_ARA - ["0","1"]
# - a bash STRING (not numeral) to enable ARA
# VAULT_PASSWORD_FILE -
export ANSIBLE_RUN_MODE="${ANSIBLE_RUN_MODE:-playbook}"
export ANSIBLE_PLAYBOOK_FILE="${ANSIBLE_PLAYBOOK_FILE:-infra.yml}"
export VAULT_PASSWORD_FILE="${VAULT_PASSWORD_FILE:-${HOME}/.ssh/creds/vault_password.txt}"
export VAGRANT_MODE="${VAGRANT_MODE:-0}"
run_ansible() {
INOPTS=( "$@" )
VAULTOPTS=""
# Plaintext vault decryption key, not checked into SCM
if [ -f "${VAULT_PASSWORD_FILE}" ]; then
VAULTOPTS="--vault-password-file=${VAULT_PASSWORD_FILE}"
if [ ${ANSIBLE_RUN_MODE} == 'playbook' ]; then
time ansible-playbook --diff ${VAULTOPTS} "${ANSIBLE_PLAYBOOK_FILE}" "${INOPTS[@]}"
return $?
elif [ ${ANSIBLE_RUN_MODE} == 'ad-hoc' ]; then
time ansible --diff ${VAULTOPTS} "${INOPTS[@]}"
return $?
fi
else
if [ "${ANSIBLE_RUN_MODE}" == 'playbook' ]; then
echo "Vault password file unreachable. Skip steps require vault."
VAULTOPTS="--skip-tags=requires_vault"
#echo "ansible-playbook --diff $VAULTOPTS ${INOPTS[@]} ${ANSIBLE_PLAYBOOK_FILE}" && \
time ansible-playbook --diff ${VAULTOPTS} "${ANSIBLE_PLAYBOOK_FILE}" "${INOPTS[@]}"
return $?
elif [ "${ANSIBLE_RUN_MODE}" == 'ad-hoc' ]; then
#echo "ansible --diff $VAULTOPTS ${INOPTS[@]}" && \
time ansible --diff ${VAULTOPTS} "${INOPTS[@]}"
return $?
else
echo "Invalid run mode: ${ANSIBLE_RUN_MODE}"
exit 15
fi
fi
}
if [ "${VAGRANT_MODE}" -eq 1 ]; then
export ANSIBLE_SSH_ARGS="-o UserKnownHostsFile=/dev/null"
export ANSIBLE_HOST_KEY_CHECKING=false
fi
run_ansible "$@"
retcode=$?
exit $retcode
#!/usr/bin/env bash
# ENV Vars:
# VAGRANT_MODE - [0,1]
# - to be used with bovine-inventory's vagrant mode
# ANSIBLE_RUN_MODE - ["playbook","ad-hoc"]
# - specify which mode to run ansible in
# ANSIBLE_PLAYBOOK_FILE - defaults to "infra.yml"
# - specify playbook to pass to ansible-playbook
# - NB: only used when run mode is "playbook"
# ANSIBLE_BASE_ARA - ["0","1"]
# - a bash STRING (not numeral) to enable ARA
# VAULT_PASSWORD_FILE -
export ANSIBLE_RUN_MODE="${ANSIBLE_RUN_MODE:-playbook}"
export ANSIBLE_PLAYBOOK_FILE="${ANSIBLE_PLAYBOOK_FILE:-infra.yml}"
export VAULT_PASSWORD_FILE="${VAULT_PASSWORD_FILE:-${HOME}/.ssh/creds/vault_password.txt}"
export VAGRANT_MODE="${VAGRANT_MODE:-0}"
run_ansible() {
INOPTS=( "$@" )
VAULTOPTS=""
# Plaintext vault decryption key, not checked into SCM
if [ -f "${VAULT_PASSWORD_FILE}" ]; then
VAULTOPTS="--vault-password-file=${VAULT_PASSWORD_FILE}"
if [ ${ANSIBLE_RUN_MODE} == 'playbook' ]; then
time ansible-playbook --diff ${VAULTOPTS} "${ANSIBLE_PLAYBOOK_FILE}" "${INOPTS[@]}"
return $?
elif [ ${ANSIBLE_RUN_MODE} == 'ad-hoc' ]; then
time ansible --diff ${VAULTOPTS} "${INOPTS[@]}"
return $?
fi
else
if [ "${ANSIBLE_RUN_MODE}" == 'playbook' ]; then
echo "Vault password file unreachable. Skip steps require vault."
VAULTOPTS="--skip-tags=requires_vault"
#echo "ansible-playbook --diff $VAULTOPTS ${INOPTS[@]} ${ANSIBLE_PLAYBOOK_FILE}" && \
time ansible-playbook --diff ${VAULTOPTS} "${ANSIBLE_PLAYBOOK_FILE}" "${INOPTS[@]}"
return $?
elif [ "${ANSIBLE_RUN_MODE}" == 'ad-hoc' ]; then
#echo "ansible --diff $VAULTOPTS ${INOPTS[@]}" && \
time ansible --diff ${VAULTOPTS} "${INOPTS[@]}"
return $?
else
echo "Invalid run mode: ${ANSIBLE_RUN_MODE}"
exit 15
fi
fi
}
if [ "${VAGRANT_MODE}" -eq 1 ]; then
export ANSIBLE_SSH_ARGS="-o UserKnownHostsFile=/dev/null"
export ANSIBLE_HOST_KEY_CHECKING=false
fi
run_ansible "$@"
retcode=$?
exit $retcode

Carregando…
Cancelar
Guardar