language: java # skip default "install" command install: true # We can clean the caches via web at https://travis-ci.org/apache/jmeter/caches before_cache: - F=CleanupGradleCache sh -x -c 'curl -O https://raw.githubusercontent.com/vlsi/cleanup-gradle-cache/v1.x/$F.java && javac -J-Xmx128m $F.java && java -Xmx128m $F' - rm -rf $HOME/.m2/repository/org/apache/jmeter cache: directories: - $HOME/.gradle/caches/ - $HOME/.gradle/wrapper/ - $HOME/.m2/repository env: global: - SKIP_TAR="-x distTar -x distTarSource -x distTarSha512 -x distTarSourceSha512" - ORG_GRADLE_PROJECT_checksumFailOn=build_finish - ORG_GRADLE_PROJECT_checksumPrint=true matrix: allow_failures: # j-m-p does not seem to download all the dependencies: https://github.com/jmeter-maven-plugin/jmeter-maven-plugin/issues/187 - name: jmeter-maven-plugin tests - name: jmeter-maven-plugin tests on s390x - name: Tests with OpenJDK 11 on s390x include: - name: Tests with OpenJDK 8 + code coverage jdk: openjdk8 script: - xvfb-run ./gradlew build jacocoReport $SKIP_TAR after_success: - bash <(curl -s https://codecov.io/bash) - name: Tests with OpenJDK 11 jdk: openjdk11 addons: apt: packages: - language-pack-fr env: - TZ=Pacific/Chatham # flips between +12:45 and +13:45 - LANG=fr_FR.UTF-8 - LC_ALL=fr_FR.UTF-8 script: # This job verifies headless mode to ensure Apache JMeter is workable in headless as well # Spotless and Checkstyle are skipped here to save some time. They are verified anyway in Java 8 and Java 13 builds, so skipping them for Java 11 does not harm - ./gradlew build -Djava.awt.headless=true -Duser.language=fr -Duser.country=FR -PskipCheckstyle -PskipSpotless $SKIP_TAR - name: Tests with OpenJDK 11 and Java Regex jdk: openjdk11 addons: apt: packages: - language-pack-fr env: - TZ=Pacific/Chatham # flips between +12:45 and +13:45 - LANG=fr_FR.UTF-8 - LC_ALL=fr_FR.UTF-8 script: # This job verifies headless mode to ensure Apache JMeter is workable in headless as well # Spotless and Checkstyle are skipped here to save some time. They are verified anyway in Java 8 and Java 13 builds, so skipping them for Java 11 does not harm - ./gradlew build -Djava.awt.headless=true -Djmeter.properties.jmeter.regex.engine=java -Duser.language=fr -Duser.country=FR -PskipCheckstyle -PskipSpotless $SKIP_TAR - name: Tests with OpenJDK 11 on s390x os: linux arch: s390x dist: bionic jdk: openjdk11 addons: apt: packages: - language-pack-fr script: - sudo apt-get install -y openjdk-11-jdk - export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-s390x/ - export PATH=$JAVA_HOME/bin:$PATH - ./gradlew build -Djava.awt.headless=true -PskipCheckstyle -PskipSpotless $SKIP_TAR # We test with so-called LTS releases: 8, 11, 17 - name: Tests with OpenJDK 17 jdk: openjdk17 addons: apt: packages: - language-pack-fr env: - TZ=America/New_York # flips between −05:00 and −04:00 - LANG=fr_FR.UTF-8 - LC_ALL=fr_FR.UTF-8 script: # Spotless, Checkstyle, and JaCoCo are verified here to ensure they all work with the latest supported Java - xvfb-run ./gradlew build jacocoReport -Duser.language=fr -Duser.country=FR $SKIP_TAR - name: jmeter-maven-plugin tests jdk: openjdk8 script: - ./gradlew -PskipJavadoc publishToMavenLocal -Pjmeter.version=42.0 -PchecksumIgnore - cd .. - git clone --depth 100 https://github.com/jmeter-maven-plugin/jmeter-maven-plugin.git - cd jmeter-maven-plugin - mvn verify -Djmeter.version=42.0-SNAPSHOT - name: jmeter-maven-plugin tests on s390x os: linux arch: s390x jdk: openjdk11 script: - wget https://www.apache.org/dist/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz - tar -xvzf apache-maven-3.6.3-bin.tar.gz - export PATH=`pwd`/apache-maven-3.6.3/bin/:$PATH - ./gradlew -PskipJavadoc publishToMavenLocal -Pjmeter.version=42.0 -PchecksumIgnore - cd .. - git clone --depth 100 https://github.com/jmeter-maven-plugin/jmeter-maven-plugin.git - cd jmeter-maven-plugin - mvn verify -Djmeter.version=42.0-SNAPSHOT