ghaction-github-pages/entrypoint.sh
2019-08-31 23:43:53 +02:00

37 lines
878 B
Bash
Executable File

#!/bin/sh
set -e
TARGET_BRANCH=$1
BUILD_DIR=$2
if [ -z "$TARGET_BRANCH" ]; then
echo "⛔️ Target branch not defined"
exit 1
fi
if [ ! -d "$BUILD_DIR" ]; then
echo "⛔️ Build dir does not exist"
exit 1
fi
echo "🏃 Deploying $BUILD_DIR directory to $TARGET_BRANCH branch"
cd "$BUILD_DIR"
git init
git config user.name "${GITHUB_ACTOR}"
git config user.email "${GITHUB_ACTOR}@users.noreply.github.com"
if [ -z "$(git status --porcelain)" ]; then
echo "⚠️ Nothing to publish"
exit 0
fi
git remote rm origin > /dev/null 2>&1 || true
git remote add origin "${REPO}"
git add .
git commit --allow-empty -m 'Deploy to GitHub pages'
git push --force --quiet "https://${GITHUB_ACTOR}:${GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git" "$TARGET_BRANCH"
rm -rf .git
cd "$GITHUB_WORKSPACE"
echo "🎉 Content of $BUILD_DIR has been deployed to GitHub Pages."