24 lines
618 B
Bash
24 lines
618 B
Bash
#!/usr/bin/env bash
|
|
# Delete a deployed environment after a merge
|
|
# checks parent commits for environment/<env>.env
|
|
|
|
PROTECTED=master
|
|
|
|
function try_and_delete_environment () {
|
|
if [ -f "environments/${1}.env" ]; then
|
|
make delete env="${1}"
|
|
exit 0
|
|
fi
|
|
}
|
|
|
|
MERGED_ENVIRONMENT="${DRONE_SOURCE_BRANCH##*/}"
|
|
if [[ ! "$MERGED_ENVIRONMENT" =~ $PROTECTED ]]; then
|
|
try_and_delete_environment "$MERGED_ENVIRONMENT"
|
|
|
|
echo "Checking out parent commits for env file"
|
|
for PARENT in $(git log --pretty=%P -n 1 | tac -s ' '); do
|
|
git checkout "$PARENT"
|
|
try_and_delete_environment "$MERGED_ENVIRONMENT"
|
|
done
|
|
fi
|