molecule/gce-entrypoint.sh

34 lines
967 B
Bash
Executable File

#!/usr/bin/env bash
set -o pipefail
set -o errtrace
set -o nounset
set -o errexit
ANSIBLE_ROLES_PATH=${ANSIBLE_ROLES_PATH:-/drone/src}
MOLECULE_REQUIREMENTS_FILE=${MOLECULE_REQUIREMENTS_FILE:-./requirements.yml}
if [ "$GCE_SSH_KEY" ]; then
echo "$GCE_SSH_KEY" > $HOME/.ssh/google_compute_engine
chmod 600 $HOME/.ssh/google_compute_engine
fi
if [ "$GCE_CREDENTIALS_JSON" ] && [ "$GCE_CREDENTIALS_FILE" ]; then
DIR=$(dirname "$GCE_CREDENTIALS_FILE")
mkdir -p "${DIR}"
echo "$GCE_CREDENTIALS_JSON" > "$GCE_CREDENTIALS_FILE"
fi
if [ "${MOLECULE_CUSTOM_MODULES_REPO}" ]; then
mkdir ./library/
git clone "$MOLECULE_CUSTOM_MODULES_REPO" ./library/
fi
if [ "${MOLECULE_CUSTOM_FILTERS_REPO}" ]; then
mkdir -p ./plugins/filters/
git clone "$MOLECULE_CUSTOM_FILTERS_REPO" ./plugins/filters/
fi
if [ -f "$MOLECULE_REQUIREMENTS_FILE" ]; then
ansible-galaxy install --force -r "$MOLECULE_REQUIREMENTS_FILE" -p "$ANSIBLE_ROLES_PATH"
fi