blob: 3781732bb08199b80e0f6a89cd63f84f38990f75 [file] [log] [blame]
#! /bin/bash
set -e
if [ ! -d html ]; then
echo "Please generate the html files first."
exit 1
fi
export GIT_COMMITTER_NAME="SymbiFlow Travis Bot"
export GIT_COMMITTER_EMAIL="nobody@nowhere.com"
export GIT_AUTHOR_NAME="$(git log -1 --pretty=%an)"
export GIT_AUTHOR_EMAIL="$(git log -1 --pretty=%ae)"
export CURRENT_OWNER="$(git remote get-url origin | sed -e's@/[^/]\+$@@' -e's@.*[:/]\([^:/]\+\)$@\1@')"
export CURRENT_REVISION="$(git describe --always)"
export CURRENT_MESSAGE="$(git log -1 --pretty=%s)"
SRCDIR=$PWD
TMPDIR=$(mktemp -d)
(
cd $TMPDIR
# Clone the destination
echo
echo "::group::Cloning GitHub pages"
echo "--------------------------------------------"
ssh-add -l
ssh -v github.com || true
git clone git+ssh://git@github.com/$CURRENT_OWNER/prjxray-db.git --reference $SRCDIR/.git -b gh-pages html
echo "--------------------------------------------"
(
cd html
git log -1
find -type f | grep -v .git | sort
)
echo "--------------------------------------------"
echo "::endgroup::"
echo
echo "::group::Updating html"
echo "--------------------------------------------"
rm -rf html/*
cp -a $SRCDIR/html/* html/
(
cd html
git add --all .
)
echo "--------------------------------------------"
echo "::endgroup::"
(
cd html
echo
echo "::group::Committing"
echo "--------------------------------------------"
git status
echo "--------------------------------------------"
if [ ! -z "$GITHUB_WORKFLOW" ]; then
git commit -a \
-m "GitHub Actions build #$GITHUB_RUN_NUMBER of $CURRENT_REVISION" \
-m "" \
-m "From https://github.com/$GITHUB_REPOSITORY/tree/$GITHUB_SHA" \
-m "$CURRENT_MESSAGE"
else
git commit -a \
-m "Manual build of $CURRENT_REVISION" \
-m "" \
-m "$CURRENT_MESSAGE"
fi
echo "--------------------------------------------"
echo "::endgroup::"
echo
echo "::group::Pushing"
echo "--------------------------------------------"
git push origin
echo "--------------------------------------------"
echo "::endgroup::"
)
)