blob: 4d65b8901fcd284eeb127e71f544ef8fdc6a263f [file] [log] [blame]
# Copyright 2020 The Error Prone Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# https://github.com/google/dagger/blob/master/util/generate-latest-docs.sh
set -eu
echo -e "Publishing docs...\n"
GH_PAGES_DIR=$HOME/gh-pages
git clone --quiet --branch=gh-pages https://x-access-token:${GITHUB_TOKEN}@github.com/google/error-prone.git $GH_PAGES_DIR > /dev/null
(
cd $GH_PAGES_DIR
rm -rf _data/bugpatterns.yaml api/latest
mkdir -p _data api/latest
)
mvn -P '!examples' javadoc:aggregate
rsync -a target/site/apidocs/ ${GH_PAGES_DIR}/api/latest
# The "mvn clean" is necessary since the wiki docs are generated by an
# annotation processor that also compiles the code. If Maven thinks the code
# does not need to be recompiled, the wiki docs will not be generated either.
mvn clean
mvn -P run-annotation-processor compile site
rsync -a docgen/target/generated-wiki/ ${GH_PAGES_DIR}
cd $GH_PAGES_DIR
git add --all .
git config --global user.name "$GITHUB_ACTOR"
git config --global user.email "$GITHUB_ACTOR@users.noreply.github.com"
git commit -m "Latest docs on successful build $GITHUB_RUN_NUMBER auto-pushed to gh-pages"
git push -fq origin gh-pages > /dev/null
echo -e "Published docs to gh-pages.\n"