commit | author | age
|
f92636
|
1 |
sudo: required |
JS |
2 |
|
|
3 |
services: |
|
4 |
- docker |
|
5 |
addons: |
|
6 |
apt: |
|
7 |
sources: |
|
8 |
- git-core |
|
9 |
packages: |
|
10 |
- git |
|
11 |
|
|
12 |
language: java |
|
13 |
jdk: |
|
14 |
- oraclejdk11 |
|
15 |
|
|
16 |
before_install: |
|
17 |
- BRANCH=${TRAVIS_PULL_REQUEST_BRANCH:-$TRAVIS_BRANCH} |
|
18 |
- '[ $(git log --format=%B $TRAVIS_COMMIT_RANGE | grep -i "#doc" | wc -l) -gt 0 ] && FORCE_DOC_GEN=0 || FORCE_DOC_GEN=1' |
|
19 |
- MODIFIED_DOCS=$(git diff --name-only $TRAVIS_COMMIT_RANGE | grep -E 'site-*|README.adoc|^documentation/.*.adoc$' | wc -l) |
|
20 |
- '[ $BRANCH == "master" ] && [ $MODIFIED_DOCS -ge 1 ] && GENERATE_DOC=0 || GENERATE_DOC=1' |
|
21 |
- 'if [ $FORCE_DOC_GEN == 0 ] || [ $GENERATE_DOC == 0 ]; then |
|
22 |
git config user.name "${GH_USER}"; |
|
23 |
git config user.email "${GH_EMAIL}"; |
|
24 |
git config remote.origin.fetch +refs/heads/*:refs/remotes/origin/*; |
|
25 |
git fetch --unshallow origin gh-pages; |
|
26 |
git worktree add -b gh-pages gh-pages origin/gh-pages; |
|
27 |
GH_REF=$(git remote get-url origin | awk "{sub(/https:\/\//,\"https://${GH_TOKEN}@\")}; 1" | awk "{sub(/\.git/, \"\")} 1"); |
|
28 |
docker pull antora/antora:2.0.0; |
|
29 |
fi' |
|
30 |
|
|
31 |
script: |
|
32 |
- 'if [ $FORCE_DOC_GEN == 0 ] || [ $GENERATE_DOC == 0 ]; then |
|
33 |
docker run -v $TRAVIS_BUILD_DIR:/antora --rm -t antora/antora:2.0.0 --pull --stacktrace site-workshop.yml; |
|
34 |
docker run -v $TRAVIS_BUILD_DIR:/antora --rm -t antora/antora:2.0.0 --pull --stacktrace site-gh-pages.yml; |
|
35 |
fi' |
|
36 |
|
|
37 |
after_success: |
|
38 |
- 'if [ $FORCE_DOC_GEN == 0 ] || [ $GENERATE_DOC == 0 ]; then |
|
39 |
cd gh-pages; |
|
40 |
touch .nojekyll; |
|
41 |
git add .; |
|
42 |
git commit -m "Publishes new documentation"; |
|
43 |
git push --quiet "${GH_REF}" gh-pages > /dev/null 2>&1; |
|
44 |
fi' |