sudo: required
|
|
services:
|
- docker
|
addons:
|
apt:
|
sources:
|
- git-core
|
packages:
|
- git
|
|
language: java
|
jdk:
|
- oraclejdk11
|
|
before_install:
|
- BRANCH=${TRAVIS_PULL_REQUEST_BRANCH:-$TRAVIS_BRANCH}
|
- '[ $(git log --format=%B $TRAVIS_COMMIT_RANGE | grep -i "#doc" | wc -l) -gt 0 ] && FORCE_DOC_GEN=0 || FORCE_DOC_GEN=1'
|
- MODIFIED_DOCS=$(git diff --name-only $TRAVIS_COMMIT_RANGE | grep -E 'site-*|README.adoc|^documentation/.*.adoc$' | wc -l)
|
- '[ $BRANCH == "master" ] && [ $MODIFIED_DOCS -ge 1 ] && GENERATE_DOC=0 || GENERATE_DOC=1'
|
- 'if [ $FORCE_DOC_GEN == 0 ] || [ $GENERATE_DOC == 0 ]; then
|
git config user.name "${GH_USER}";
|
git config user.email "${GH_EMAIL}";
|
git config remote.origin.fetch +refs/heads/*:refs/remotes/origin/*;
|
git fetch --unshallow origin gh-pages;
|
git worktree add -b gh-pages gh-pages origin/gh-pages;
|
GH_REF=$(git remote get-url origin | awk "{sub(/https:\/\//,\"https://${GH_TOKEN}@\")}; 1" | awk "{sub(/\.git/, \"\")} 1");
|
docker pull antora/antora:2.0.0;
|
fi'
|
|
script:
|
- 'if [ $FORCE_DOC_GEN == 0 ] || [ $GENERATE_DOC == 0 ]; then
|
docker run -v $TRAVIS_BUILD_DIR:/antora --rm -t antora/antora:2.0.0 --pull --stacktrace site-workshop.yml;
|
docker run -v $TRAVIS_BUILD_DIR:/antora --rm -t antora/antora:2.0.0 --pull --stacktrace site-gh-pages.yml;
|
fi'
|
|
after_success:
|
- 'if [ $FORCE_DOC_GEN == 0 ] || [ $GENERATE_DOC == 0 ]; then
|
cd gh-pages;
|
touch .nojekyll;
|
git add .;
|
git commit -m "Publishes new documentation";
|
git push --quiet "${GH_REF}" gh-pages > /dev/null 2>&1;
|
fi'
|