#!/bin/bash
|
|
|
|
if [[ `git status --porcelain` ]]; then
|
|
# changes
|
|
>&2 echo "You have unstaged changes. Please commit before you run this."
|
|
exit 1
|
|
fi
|
|
|
|
# REPO=git@github.com:Blizzard/node-rdkafka.git
|
|
REPO=https://github.com/Blizzard/node-rdkafka.git
|
|
|
|
git remote add deploy $REPO
|
|
|
|
# Get the most recent stuff if we don't have it
|
|
git fetch deploy gh-pages || exit $?
|
|
|
|
make docs || exit $?
|
|
|
|
# Get package version and save to variable
|
|
|
|
PACKAGE=$(node -pe 'require("./package.json").name.split("/")[1]')
|
|
VERSION=$(node -pe 'require("./package.json").version')
|
|
|
|
# Make a temporary folder
|
|
|
|
TEMPDIR=$(mktemp -d)
|
|
|
|
VERSIONDIR="$TEMPDIR/$VERSION"
|
|
cp -r docs $VERSIONDIR
|
|
|
|
# Now, checkout the gh-pages, but first get current checked out branch
|
|
#
|
|
|
|
CURRENT_BRANCH=$(git rev-parse --symbolic-full-name --abbrev-ref HEAD)
|
|
|
|
COMMIT_MESSAGE=$(git log --pretty='format:%B' -1)
|
|
COMMIT_AUTHOR=$(git log --pretty='format:%aN <%aE>' -1)
|
|
|
|
if [[ `git checkout --quiet -b gh-pages deploy/gh-pages` ]]; then
|
|
>&2 echo "Could not checkout gh-pages"
|
|
exit 1
|
|
fi
|
|
|
|
rm -rf current
|
|
rm -rf $VERSION
|
|
|
|
cp -r $VERSIONDIR $VERSION
|
|
cp -r $VERSIONDIR current
|
|
|
|
git add --all
|
|
git commit --author="$COMMIT_AUTHOR" -m "Updated docs for '$COMMIT_MESSAGE'"
|
|
|
|
rm -rf $TEMPDIR
|
|
|
|
git push $REPO gh-pages || exit $?
|
|
|
|
git checkout $CURRENT_BRANCH
|