| language: java |
| |
| jdk: |
| - oraclejdk8 |
| |
| env: |
| matrix: |
| # we skip openjdk till we find way to install "hg" to shippable image |
| #- CMD="./.ci/shippable.sh no-exception-openjdk7-openjdk8" |
| - CMD="./.ci/shippable.sh no-exception-openjdk9-lucene-and-others" |
| - CMD="./.ci/shippable.sh no-exception-cassandra-storm-tapestry" |
| - CMD="./.ci/shippable.sh no-exception-hadoop-apache-groovy-scouter" |
| |
| branches: |
| only: |
| - master |
| |
| build: |
| cache: true |
| cache_dir_list: |
| - /root/.m2 |
| - /root/groovy-2.4.7 |
| |
| # default is drydock/u14javall with jdk 1.8.0.25 |
| # that make pitest make different results with latest jdk builds, |
| # "v5.9.4" is latest jdk8_144, versions above 5.9.4 use jdk9 |
| pre_ci_boot: |
| image_name: drydock/u16javall |
| image_tag: v5.9.4 |
| |
| ci: |
| # we skip PRs and commits that are not for Issues, as pitest is too time consuming |
| - | |
| set -e |
| pwd |
| ls -la |
| if [ ! -d /root/groovy-2.4.7 ]; then |
| wget https://dl.bintray.com/groovy/maven/apache-groovy-binary-2.4.7.zip |
| unzip apache-groovy-binary-2.4.7.zip -d /root/ |
| fi |
| # load custom PATH |
| export PATH=/root/groovy-2.4.7/bin:$PATH |
| SKIP_FILES1="appveyor.yml|codeship-*|buddy.yml|circleci|distelli-manifest.yml|.travis.yml" |
| SKIP_FILES2="|wercker.yml|wercker.sh|fast-forward-merge.sh|LICENSE|LICENSE.apache20|README.md" |
| SKIP_FILES3="|release.sh|RIGHTS.antlr|intellij-idea-inspections.xml" |
| SKIP_FILES4="|org.eclipse.jdt.core.prefs" |
| SKIP_FILES5="|Jenkinsfile" |
| SKIP_FILES=$SKIP_FILES1$SKIP_FILES2$SKIP_FILES3$SKIP_FILES4$SKIP_FILES5 |
| SKIP_CI=false |
| if [[ $(git diff --name-only HEAD HEAD~1 | grep -vE "$SKIP_FILES" | cat | wc -c) > 0 ]]; then |
| SKIP_CI=false; |
| else |
| SKIP_CI=true; |
| fi |
| echo "SKIP_CI="$SKIP_CI |
| if [[ $SKIP_CI == 'false' ]]; |
| then |
| echo "Command: $CMD" |
| eval $CMD |
| else |
| echo "Build is skipped, changed files:" |
| git diff --name-only HEAD HEAD~1 |
| fi |