woodpecker-ssg-deploy/entrypoint.sh

29 lines
937 B
Bash

#!/bin/ash
branch=${PLUGIN_BRANCH:-"pages"}
token_env=${PLUGIN_TOKEN_ENV}
output=${PLUGIN_OUTPUT}
name=${PLUGIN_NAME}
email=${PLUGIN_EMAIL}
if [[ -z "$token_env" ]] || [[ -z "$branch" ]] || [[ -z "$name"]] || [[ -z "$email" ]]; then
echo "Invalid configuration: Token environment variable name, branch name empty, name, or email"
exit 1
fi
tokenified_url=$(/bin/ci-wrapper --clone-url "$CI_REPO_CLONE_URL" --token-env "$token_env")
if [[ "$?" -ne "0" ]]; then
echo "Failed to tokenify clone URL"
exit 1
fi
git config --global user.email "$email"
git config --global user.name "$name"
git config --global --add safe.directory "$CI_WORKSPACE/$CI_REPO_OWNER/$CI_REPO_NAME/$output"
# Init a new repository in the output directory and add all files
git init -b "$branch" "$output"
cd "$output"
git add --all
git commit -m "Deploy new version $CI_COMMIT_SHA"
# Push the repository
git push -u "$tokenified_url" -f "$branch"