reitit/scripts/build-docs.sh

46 lines
846 B
Bash
Raw Normal View History

2017-08-07 11:08:39 +00:00
#!/bin/bash
set -euo pipefail
rev=$(git rev-parse HEAD)
remoteurl=$(git ls-remote --get-url origin)
repodir=gh-pages
tag=$(git tag --points-at HEAD)
name=$tag
if [[ -z $name ]]; then
name=master
fi
target=$repodir/$name
git fetch
if [[ -z $(git branch -r --list origin/gh-pages) ]]; then
(
mkdir "$repodir"
cd "$repodir"
git init
git remote add origin "${remoteurl}"
git checkout -b gh-pages
git commit --allow-empty -m "Init"
git push -u origin gh-pages
)
elif [[ ! -d "$repodir" ]]; then
git clone --branch gh-pages "${remoteurl}" "$repodir"
else
(
cd "$repodir"
git pull
)
fi
rm -fr doc
lein codox
# replace docs for current version with new docs
rm -fr "$target"
cp -r doc "$target"
cd "$repodir"
git add --all
git commit -m "Build docs from ${rev}."
git push origin gh-pages