Skip to content

Commit 6a2d1e0

Browse files
committed
Add script to update orphan gh-pages branch
1 parent e64c2e2 commit 6a2d1e0

File tree

3 files changed

+86
-0
lines changed

3 files changed

+86
-0
lines changed

.drone.yml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,23 @@ pipeline:
66
- ln -s /var/cache/drone/scala-scala scala-scala
77
- ./scripts/update-scala-library
88
- sbt -J-Xmx4096m -J-XX:ReservedCodeCacheSize=512m -J-XX:MaxMetaspaceSize=1024m -Ddotty.drone.mem=4096m -ivy /var/cache/drone/ivy2 "${TEST}"
9+
when:
10+
branch:
11+
exclude: gh-pages
12+
13+
documentation:
14+
image: lampepfl/dotty:latest
15+
pull: true
16+
commands:
17+
- ./project/scripts/genDocs "${TEST}" $BOT_PASS
18+
when:
19+
branch: master
20+
21+
slack:
22+
image: plugins/slack
23+
channel: dotty
24+
when:
25+
branch: master
926

1027
matrix:
1128
TEST:

.drone.yml.sig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
eyJhbGciOiJIUzI1NiJ9.cGlwZWxpbmU6CiAgdGVzdDoKICAgIGltYWdlOiBsYW1wZXBmbC9kb3R0eTpsYXRlc3QKICAgIHB1bGw6IHRydWUKICAgIGNvbW1hbmRzOgogICAgICAtIGxuIC1zIC92YXIvY2FjaGUvZHJvbmUvc2NhbGEtc2NhbGEgc2NhbGEtc2NhbGEKICAgICAgLSAuL3NjcmlwdHMvdXBkYXRlLXNjYWxhLWxpYnJhcnkKICAgICAgLSBzYnQgLUotWG14NDA5Nm0gLUotWFg6UmVzZXJ2ZWRDb2RlQ2FjaGVTaXplPTUxMm0gLUotWFg6TWF4TWV0YXNwYWNlU2l6ZT0xMDI0bSAtRGRvdHR5LmRyb25lLm1lbT00MDk2bSAtaXZ5IC92YXIvY2FjaGUvZHJvbmUvaXZ5MiAiJHtURVNUfSIKICAgIHdoZW46CiAgICAgIGJyYW5jaDoKICAgICAgICBleGNsdWRlOiBnaC1wYWdlcwoKICBkb2N1bWVudGF0aW9uOgogICAgaW1hZ2U6IGxhbXBlcGZsL2RvdHR5OmxhdGVzdAogICAgcHVsbDogdHJ1ZQogICAgY29tbWFuZHM6CiAgICAgIC0gLi9wcm9qZWN0L3NjcmlwdHMvZ2VuRG9jcyAiJHtURVNUfSIgJEJPVF9QQVNTCiAgICB3aGVuOgogICAgICBicmFuY2g6IG1hc3RlcgoKICBzbGFjazoKICAgIGltYWdlOiBwbHVnaW5zL3NsYWNrCiAgICBjaGFubmVsOiBkb3R0eQogICAgd2hlbjoKICAgICAgYnJhbmNoOiBtYXN0ZXIKCm1hdHJpeDoKICBURVNUOgogICAgLSB0ZXN0CiAgICAtIDtwdWJsaXNoTG9jYWw7ZG90dHktYm9vdHN0cmFwcGVkL3Rlc3QKICAgIC0gcGFydGVzdC1vbmx5LW5vLWJvb3RzdHJhcCAtLXNob3ctZGlmZiAtLXZlcmJvc2UKICAgIC0gcGFydGVzdC1vbmx5IC0tc2hvdy1kaWZmIC0tdmVyYm9zZQo.l7I2yJ5gewe0ObfP09MyJ9iGlXaPffen5Sh3HjS2oKs

project/scripts/genDocs

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
#!/usr/bin/env bash
2+
3+
# Usage: ./genDocs <test variable> <dotty-bot password>
4+
5+
set -e
6+
# set extended glob, needed for rm everything but x
7+
shopt -s extglob
8+
9+
if [ "$1" = "test" ]; then
10+
11+
# make sure that BOT_PASS is set
12+
if [ -z ${2+x} ]; then
13+
echo "BOT_PASS unset, unable to push without password" 1>&2
14+
exit 1
15+
else
16+
BOT_PASS=$2
17+
fi
18+
19+
echo "Working directory: $PWD"
20+
21+
# this command will generate docs in $PWD/docs/_site
22+
sbt -J-Xmx4096m \
23+
-J-XX:ReservedCodeCacheSize=512m \
24+
-J-XX:MaxMetaspaceSize=1024m \
25+
-Ddotty.drone.mem=4096m \
26+
-ivy /var/cache/drone/ivy2 \
27+
"genDocs"
28+
29+
# make sure that the previous command actually succeeded
30+
if [ ! -d "$PWD/docs/_site" ]; then
31+
echo "Output directory did not exist: $PWD/docs/_site" 1>&2
32+
exit 1
33+
fi
34+
35+
# save current head for commit message in gh-pages
36+
GIT_HEAD=$(git rev-parse HEAD)
37+
38+
# check out correct branch
39+
git fetch origin gh-pages:gh-pages
40+
git checkout gh-pages
41+
42+
# move newly generated _site dir to $PWD
43+
mv $PWD/docs/_site .
44+
45+
# remove everything BUT _site dir
46+
rm -rf !(_site)
47+
48+
# copy new contents to $PWD
49+
mv _site/* .
50+
51+
# remove now empty _site dir
52+
rm -rf _site
53+
54+
# set github credentials
55+
git config user.name "dotty-bot"
56+
git config user.email "felix.mulder@epfl.ch"
57+
58+
# add all contents of $PWD to commit
59+
git add -A
60+
git commit -m "Update gh-pages site for $GIT_HEAD"
61+
62+
# push using dotty-bot to origin
63+
git push https://dotty-bot:$BOT_PASS@github.com/lampepfl/dotty.git
64+
else
65+
# wrong parameter passed, should only generate docs if argument is "test"
66+
# to avoid multiple site gens
67+
echo "Not generating docs for $1"
68+
fi

0 commit comments

Comments
 (0)