From 5727dabd38aede36c688192b77b28a74f68bbf25 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Sun, 23 Jul 2017 11:00:52 +0200 Subject: [PATCH] [doc] Add build script for PMD documentation, disable old site build --- .travis.yml | 7 ++++--- .travis/build-doc.sh | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 3 deletions(-) create mode 100644 .travis/build-doc.sh diff --git a/.travis.yml b/.travis.yml index dda23909e1..d943669fad 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,6 @@ -sudo: false - +sudo: required +services: + - docker addons: apt: packages: @@ -23,7 +24,7 @@ env: - secure: "JIhuqaI0i+zvuqqXiQBHpuKr7AQ8jfk6Gbr8Qgiq4yJtdEWXZGxnAT9BmlbjkgT7ABXvLgxf2CIdUOMo1yYfBlxQL/y5+e89jaVpYF3tvNAzYQ1e12VzQRsd/jDb7qvm7tw3rDHEn3dSEot7Q6KbPcL6WzWJINVMCCmOgvq9gKHgE6Y5q5EgZ5rxiXyuO27ndzcbxaor4PIaiSzHO9+AJQ7p2zDLP+kG4nKVTBX0l9VoKiYFhIpIhpbigi3jyLDMDRiWpwTWZC6P8/RXfZg/lc5ADOuM2DM8oXPpZuqOa/g31LWQOSCuEnQ1G16vbLgipSPpgAc7jYWD5cywhG9dLkiKaZDh5x0meLM2RoAgz6eAnQfTTqJ68OM9o9yXjubEedsNpNRAr9/DXMd+fbh10W2vbvL5HCNB3lic3anehhR9le7PLuEKxg654wXt3KM2PZGVWbotIyBK0CvGzqGkppvwT23QdDDqSdkWuGQIhGQ0xBOdYkwebycxP5wwPUmObG+mymQ1Be2BXvmghttsiJdKlt4CVSYOJUMus6kU32G95hdTgKblsX4J1Of2i1nYsjyMKh3k945tqXwQrIsxOOQug0oIkz24zlLaOaQcorWtJ6Y1HPaZKpVIFUEF0y8Uq/O4oB2bOYC6WDUQfpj7nRG6xbi+BeBS84m1ttCEk4g=" matrix: - BUILD=deploy - - BUILD=site + - BUILD=doc - BUILD=sonar - BUILD=coveralls diff --git a/.travis/build-doc.sh b/.travis/build-doc.sh new file mode 100644 index 0000000000..444cd6b630 --- /dev/null +++ b/.travis/build-doc.sh @@ -0,0 +1,40 @@ +#!/bin/bash +set -e + +source .travis/common-functions.sh + +VERSION=$(./mvnw -q -Dexec.executable="echo" -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.5.0:exec | tail -1) +echo "Building PMD Documentation ${VERSION} on branch ${TRAVIS_BRANCH}" + +if ! travis_isPush; then + echo "Not building site, since this is not a push!" + exit 0 +fi + +cd docs + +# run jekyll +echo -e "\n\nBuilding documentation using jekyll...\n\n" +export JEKYLL_VERSION=3.5 +docker run --rm \ + --volume=$PWD:/srv/jekyll \ + -it jekyll/jekyll:$JEKYLL_VERSION \ + jekyll build + +# create pmd-doc archive +echo -e "\n\nCreating pmd-doc archive...\n\n" +mv _site pmd-doc-${VERSION} +zip -qr pmd-doc-${VERSION}.zip pmd-doc-${VERSION}/ + + +# Uploading pmd doc distribution to sourceforge +if [[ "$TRAVIS_TAG" != "" || "$VERSION" == *-SNAPSHOT ]]; then + echo -e "\n\nUploading pmd-doc archive to sourceforge...\n\n" + rsync -avh target/pmd-doc-${VERSION}.zip ${PMD_SF_USER}@web.sourceforge.net:/home/frs/project/pmd/pmd/${VERSION}/ +fi + +# rsync site to pmd.sourceforge.net/snapshot +if [[ "$VERSION" == *-SNAPSHOT && "$TRAVIS_BRANCH" == "master" ]]; then + echo -e "\n\nUploading snapshot site...\n\n" + travis_wait rsync -ah --stats --delete target/pmd-doc-${VERSION}/ ${PMD_SF_USER}@web.sourceforge.net:/home/project-web/pmd/htdocs/snapshot/ +fi