checkout:
  post:
    - git clone https://github.com/checkstyle/contribution
dependencies:
  cache_directories:
    - groovy-2.4.7
  pre:
    - if [ ! -d 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; fi

  # we to override as 'mvn dependecy:go-ofline' does not download all dependencies
  override:
    - mvn install -Pno-validations
    - eval $TESTER_DEPENDENCIES
machine:
  java:
    version: oraclejdk8
  environment:
    CMD1: "cd contribution/checkstyle-tester"
    DEP1: " && sed -i'' 's/^guava/#guava/' projects-to-test-on.properties"
    # we need this to let pass 'mvn site' on no-projects mode to download all dependecies
    DEP2: " && echo 'class ClassEmpty{}' > src/main/java/EmptyClass.java"
    DEP3: " && /home/ubuntu/checkstyle/groovy-2.4.7/bin/groovy launch.groovy --listOfProjects projects-to-test-on.properties --config my_check.xml"
    TESTER_DEPENDENCIES: $CMD1$DEP1$DEP2$DEP3
    CMD2: " && sed -i'' 's/^openjdk/#openjdk/' projects-for-circle.properties"
    CMD3: " && /home/ubuntu/checkstyle/groovy-2.4.7/bin/groovy launch.groovy --listOfProjects projects-for-circle.properties --config checks-nonjavadoc-error.xml"
    OPENJDK7: " && sed -i'' 's/#openjdk7/openjdk7/' projects-for-circle.properties"
    OPENJDK8: " && sed -i'' 's/#openjdk8/openjdk8/' projects-for-circle.properties"
    OPENJDK9: " && sed -i'' 's/#openjdk9/openjdk9/' projects-for-circle.properties"
    INFINISPAN: " && sed -i'' 's/#infinispan/infinispan/' projects-for-circle.properties"
    PROTONPACK: " && sed -i'' 's/#protonpack/protonpack/' projects-for-circle.properties"
    JOOL: " && sed -i'' 's/#jOOL/jOOL/' projects-for-circle.properties"
    TAPESTRY: " && sed -i'' 's/#tapestry-5/tapestry-5/' projects-for-circle.properties"
    COMMONS: " && sed -i'' 's/#apache-commons/apache-commons/' projects-for-circle.properties"
    LUCENE: " && sed -i'' 's/#lucene-solr/lucene-solr/' projects-for-circle.properties"
    STORM: " && sed -i'' 's/#storm/storm/' projects-for-circle.properties"
    HADOOP: " && sed -i'' 's/#hadoop/hadoop/' projects-for-circle.properties"
    CASSANDRA: " && sed -i'' 's/#cassandra/cassandra/' projects-for-circle.properties"
    SCOUTER: " && sed -i'' 's/#scouter/scouter/' projects-for-circle.properties"
    GROOVY: " && sed -i'' 's/#groovy/groovy/' projects-for-circle.properties"
    # Test over openjdk7,8
    TEST_1: $CMD1$CMD2$OPENJDK7$OPENJDK8$CMD3
    # Test over infinispan, protonpack, jOOL, lucene-solr, openjdk9
    TEST_2: $CMD1$CMD2$INFINISPAN$PROTONPACK$JOOL$LUCENE$OPENJDK9$CMD3
    # Test over tapestry5, storm, cassandra
    TEST_3: $CMD1$CMD2$TAPESTRY$STORM$CASSANDRA$CMD3
    # Test over apache-commons, hadoop, scouter, groovy
    TEST_4: $CMD1$CMD2$COMMONS$HADOOP$SCOUTER$GROOVY$CMD3
    SKIP_FILES: ".github|appveyor.yml|.travis.yml|.ci|distelli-manifest.yml|fast-forward-merge.sh|LICENSE|LICENSE.apache20|README.md|release.sh|RIGHTS.antlr|shippable.yml|wercker.yml|intellij-idea-inspections.xml|org.eclipse.jdt.core.prefs"
test:
  override:
    - if [ $(git diff --name-only HEAD HEAD~1 | grep -vE $SKIP_FILES | wc -c) -gt 0 ] ; then case $CIRCLE_NODE_INDEX in 0) eval $TEST_1 ;; 1) eval $TEST_2 ;; 2) eval $TEST_3 ;;  3) eval $TEST_4 ;; esac; fi:
            parallel: true
