box: maven:3.3.9-jdk-8

build:
  steps:
  - script:
      name: setup mvn local repo
      code: |
        export MAVEN_OPTS="-Dmaven.repo.local=${WERCKER_CACHE_DIR}"
        mvn -version
        echo "------"
        du -hs ${WERCKER_CACHE_DIR}
        echo "------"
        du -hs ${WERCKER_CACHE_DIR}/* | sort -h

  - script:
      name: install groovy
      code: |
         if [ ! -d ${WERCKER_CACHE_DIR}/groovy ]; then
           wget -O ${WERCKER_CACHE_DIR}/groovy.zip https://dl.bintray.com/groovy/maven/apache-groovy-binary-2.4.7.zip;
           unzip ${WERCKER_CACHE_DIR}/groovy.zip -d ${WERCKER_CACHE_DIR};
           mv ${WERCKER_CACHE_DIR}/groovy-2.4.7 ${WERCKER_CACHE_DIR}/groovy
         fi
         export GROOVY_HOME=${WERCKER_CACHE_DIR}/groovy
         PATH=$GROOVY_HOME/bin:$PATH
         groovy -v

  - script:
      name: Build Checkstyle
      code: |
        SKIP_FILES="appveyor.yml|circle.yml|distelli-manifest.yml|.travis.yml|shippable.yml|fast-forward-merge.sh|LICENSE|LICENSE.apache20|README.md|release.sh|RIGHTS.antlr|intellij-idea-inspections.xml|org.eclipse.jdt.core.prefs"
        export SKIP_CI=$(if [[ $(git diff --name-only HEAD HEAD~1 | grep -vE "$SKIP_FILES" | cat | wc -c) > 0 ]]; then echo false; else echo true; fi;)
        echo "SKIP_CI="$SKIP_CI
        if [[ $SKIP_CI == 'false' ]]; then
          mvn clean install -Pno-validations
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoErrorTest - Postgresql JDBC Driver
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-error-pgjdbc
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoErrorTest - Orekit
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-error-orekit
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoErrorTest - XWiki
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-error-xwiki
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoErrorTest - Apache Apex
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-error-apex-core
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoErrorTest - Hibernate Search
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-error-hibernate-search
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoErrorTest - HtmlUnit
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-error-htmlunit
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoErrorTest - checkstyle's sevntu
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-error-checkstyles-sevntu
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoErrorTest - sevntu-checks
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-error-sevntu-checks
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoExceptiontest - Apache Struts
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-exception-struts
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoExceptiontest - Checkstyle ,sevntu-checkstyle
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-exception-checkstyle-sevntu
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoExceptiontest - Guava
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-exception-guava
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoExceptiontest - Hibernate
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-exception-hibernate-orm
        else
          echo "build is skipped ..."
        fi


  - script:
      name: NoExceptiontest - findbugs
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-exception-findbugs
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoExceptiontest - spring-framework
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-exception-spring-framework
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoExceptiontest - Hbase
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-exception-hbase
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoExceptiontest - pmd elasticsearch lombok-ast
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-exception-Pmd-elasticsearch-lombok-ast
        else
          echo "build is skipped ..."
        fi

  - script:
      name: NoExceptiontest - RxJava java-design-patterns MaterialDesignLibrary apache-ant apache-jsecurity android-launcher
      code: |
        if [[ $SKIP_CI == 'false' ]]; then
          ./.ci/wercker.sh no-exception-alot-of-projects
        else
          echo "build is skipped ..."
        fi

  - script:
      name: Cleanup maven local repo
      code: |
        find ${WERCKER_CACHE_DIR} -type d -name "*SNAPSHOT" -ls -exec rm -rf {} +
        echo "------"
        du -hs ${WERCKER_CACHE_DIR}
        echo "------"
        du -hs ${WERCKER_CACHE_DIR}/* | sort -h
        echo "------"
        du -hs * | sort -h
