| os: linux |
| dist: bionic |
| language: java |
| services: |
| - docker |
| - mysql |
| jdk: openjdk11 |
| addons: |
| hosts: |
| - mariadb.example.com |
| - mariadb1.example.com |
| - mariadb2.example.com |
| - mariadb3.example.com |
| |
| before_install: |
| - git clone https://github.com/mariadb-corporation/connector-test-machine.git |
| # Load cached docker images |
| - if [[ -d $HOME/docker ]]; then ls $HOME/docker/*.tar.gz | xargs -I {file} sh -c "zcat {file} | docker load"; fi |
| |
| cache: |
| directories: |
| - $HOME/docker |
| - $HOME/.m2 |
| |
| env: local=0 RUN_LONG_TEST=true |
| |
| install: |
| - |- |
| case $TRAVIS_OS_NAME in |
| windows) |
| choco install openjdk11 maven |
| export PATH=$(cmd.exe //c "refreshenv > nul & C:\Progra~1\Git\bin\bash -c 'echo \$PATH' ") |
| connector-test-machine/launch.bat -t "$srv" -v "$v" -d testj |
| ;; |
| linux) |
| source connector-test-machine/launch.sh -t "$srv" -v "$v" -d testj -l "$local" -p "$packet" |
| ;; |
| esac |
| |
| stages: |
| - Minimal |
| - name: Enterprise |
| if: type = push AND fork = false |
| - Community |
| |
| jobs: |
| allow_failures: |
| - env: srv=build |
| - env: srv=xpand TEST_DB_OTHER="&initSql=SET NAMES UTF8" |
| include: |
| - stage: Minimal |
| env: srv=mariadb v=10.6 packet=8 |
| name: "CS 10.6" |
| - env: srv=mariadb-es v=10.6 |
| name: "ES 10.6" |
| if: type = push AND fork = false |
| |
| - stage: Enterprise |
| env: srv=mariadb-es v=10.4 |
| name: "ES 10.4" |
| - env: srv=mariadb-es v=10.5 |
| name: "ES 10.5" |
| - env: srv=maxscale |
| name: "Maxscale" |
| - env: srv=xpand TEST_DB_OTHER="&initSql=SET NAMES UTF8" |
| name: "Xpand" |
| - env: srv=skysql |
| name: "SkySQL" |
| - env: srv=skysql-ha |
| name: "SkySQL with replication" |
| |
| - stage: Community |
| env: srv=mariadb v=10.6 |
| os: windows |
| language: shell |
| name: "CS 10.6 - Windows" |
| - env: srv=mariadb v=10.3 local=1 |
| name: "CS 10.3" |
| - env: srv=mariadb v=10.4 local=1 |
| name: "CS 10.4" |
| - env: srv=mariadb v=10.5 local=1 |
| name: "CS 10.5" |
| - env: srv=mariadb v=10.7 local=1 |
| name: "CS 10.7" |
| - env: srv=mariadb v=10.8 local=1 |
| name: "CS 10.8" |
| - env: srv=mariadb v=10.9 local=1 |
| name: "CS 10.9" |
| - env: srv=mariadb v=10.6 packet=40 |
| jdk: openjdk17 |
| name: "CS 10.6 - openjdk 17" |
| - env: srv=mariadb v=10.6 packet=8 |
| name: "CS 10.6 - packet 8M" |
| - env: srv=mariadb v=10.6 local=1 BENCH=1 |
| name: "Benchmarks" |
| - env: srv=galera v=10.8 |
| name: "Galera 10.8" |
| - env: srv=mysql v=5.7 |
| name: "MySQL 5.7" |
| - env: srv=mysql v=8.0 |
| name: "MySQL 8.0" |
| - env: srv=build |
| name: "CS build" |
| |
| script: |
| - mvn clean -Dmaven.test.skip |
| - if [ -n "$BENCH" ] ; then mvn package -P bench -Dmaven.test.skip -Dmaven.javadoc.skip=true ; fi |
| - if [ -n "$BENCH" ] ; then java -Duser.country=US -Duser.language=en -DTEST_PORT=$TEST_DB_PORT -DTEST_HOST=$TEST_DB_HOST -DTEST_USERNAME=$TEST_DB_USER -DTEST_PASSWORD=$TEST_DB_PASSWORD -jar target/benchmarks.jar; fi |
| - if [ -z "$BENCH" ] ; then MAVEN_SKIP_RC=true MAVEN_OPTS="-Xmx2g" mvn clean test -DjobId=${TRAVIS_JOB_ID}; fi |
| |
| after_script: |
| - bash <(curl -s https://codecov.io/bash) |
| |
| after_failure: |
| - if [ "$srv" == "maxscale" ] ; then docker-compose -f ${COMPOSE_FILE} exec -u root maxscale tail -500 /var/log/maxscale/maxscale.log; fi |