blob: 711fdfb69f0b15cadabe58880521f0e124282339 [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# send to fully-virtualized infrastructure: https://docs.travis-ci.com/user/reference/xenial/
sudo: required
dist: xenial
cache:
# default timeout is too low
timeout: 600
directories:
- $HOME/.m2
- $HOME/flink_cache
# keep in sync with tools/travis/setup_maven.sh
- $HOME/maven_cache
# keep in sync with tools/travis/docs.sh
- $HOME/gem_cache
# do not cache our own artifacts
before_cache:
- rm -rf $HOME/.m2/repository/org/apache/flink/
install: true
language: java
git:
depth: 100
env:
global:
# Global variable to avoid hanging travis builds when downloading cache archives.
- MALLOC_ARENA_MAX=2
- DOCKER_COMPOSE_VERSION=1.22.0
- CHANGE_MINIKUBE_NONE_USER=true
before_script:
- "export -f travis_nanoseconds"
- "export -f travis_time_start"
- "export -f travis_time_finish"
# Install maven 3.2.5 since xenial uses 3.3.9 for which shading is broken
before_install:
- source ./tools/travis/setup_maven.sh
notifications:
slack:
rooms:
- secure: ikPQn5JTpkyzxVyOPm/jIl3FPm6hY8xAdG4pSwxGWjBqF+NmmNTp9YZsJ6fD8xPql6T5n1hNDbZSC14jVUw/vvXGvibDXLN+06f25ZQl+4LJBXaiR7gTG6y3nO8G90Vw7XpvCme6n5Md9tvjygb17a4FEgRJFfwzWnnyPA1yvK0=
on_success: never
on_pull_requests: false
webhooks:
urls:
secure: gOR0ayYgTHvx2QsFxxH07KzI8fgrDk2vqp/6q2eN/RuWHJa6kHecXz/9F0JOXNI1siXrSJ1FwCKOxiMmTbnImJP4015L9VGMS++us6AYtnFp6SIRorRqA1QS5tHNrpBIM38ANxQvuPhFj8S6216BsonQOqBu9sp0jQCOZGKwBLg=
on_success: change
on_pull_requests: false
stages:
- name: compile
- name: test
- name: E2E
if: type = cron
- name: cleanup
jdk: "openjdk8"
jobs:
include:
# main profile
- if: type in (pull_request, push)
stage: compile
script: ./tools/travis_controller.sh compile
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11"
name: compile
- if: type in (pull_request, push)
stage: test
script: ./tools/travis_controller.sh core
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11"
name: core
- if: type in (pull_request, push)
script: ./tools/travis_controller.sh python
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11"
name: python
- if: type in (pull_request, push)
script: ./tools/travis_controller.sh libraries
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11"
name: libraries
- if: type in (pull_request, push)
script: ./tools/travis_controller.sh blink_planner
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11"
name: blink_planner
- if: type in (pull_request, push)
script: ./tools/travis_controller.sh connectors
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11"
name: connectors
- if: type in (pull_request, push)
script: ./tools/travis_controller.sh kafka/gelly
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11"
name: kafka/gelly
- if: type in (pull_request, push)
script: ./tools/travis_controller.sh tests
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11"
name: tests
- if: type in (pull_request, push)
script: ./tools/travis_controller.sh misc
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11"
name: misc
- if: type in (pull_request, push)
stage: cleanup
script: ./tools/travis_controller.sh cleanup
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11"
name: cleanup
# hadoop 2.4.1 profile
- if: type = cron
stage: compile
script: ./tools/travis_controller.sh compile
env: PROFILE="-Dhadoop.version=2.4.1 -Pinclude-kinesis -Pskip-hive-tests"
name: compile - hadoop 2.4.1
- if: type = cron
stage: test
script: ./tools/travis_controller.sh core
env: PROFILE="-Dhadoop.version=2.4.1 -Pinclude-kinesis -Pskip-hive-tests"
name: core - hadoop 2.4.1
- if: type = cron
script: ./tools/travis_controller.sh libraries
env: PROFILE="-Dhadoop.version=2.4.1 -Pinclude-kinesis -Pskip-hive-tests"
name: libraries - hadoop 2.4.1
- if: type = cron
script: ./tools/travis_controller.sh blink_planner
env: PROFILE="-Dhadoop.version=2.4.1 -Pinclude-kinesis -Pskip-hive-tests"
name: blink_planner - hadoop 2.4.1
- if: type = cron
script: ./tools/travis_controller.sh connectors
env: PROFILE="-Dhadoop.version=2.4.1 -Pinclude-kinesis -Pskip-hive-tests"
name: connectors - hadoop 2.4.1
- if: type = cron
script: ./tools/travis_controller.sh kafka/gelly
env: PROFILE="-Dhadoop.version=2.4.1 -Pinclude-kinesis -Pskip-hive-tests"
name: kafka/gelly - hadoop 2.4.1
- if: type = cron
script: ./tools/travis_controller.sh tests
env: PROFILE="-Dhadoop.version=2.4.1 -Pinclude-kinesis -Pskip-hive-tests"
name: tests - hadoop 2.4.1
- if: type = cron
script: ./tools/travis_controller.sh misc
env: PROFILE="-Dhadoop.version=2.4.1 -Pinclude-kinesis -Pskip-hive-tests"
name: misc - hadoop 2.4.1
- if: type = cron
stage: cleanup
script: ./tools/travis_controller.sh cleanup
env: PROFILE="-Dhadoop.version=2.4.1 -Pinclude-kinesis -Pskip-hive-tests"
name: cleanup - hadoop 2.4.1
# scala 2.12 profile
- if: type = cron
stage: compile
script: ./tools/travis_controller.sh compile
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.12"
name: compile - scala 2.12
- if: type = cron
stage: test
script: ./tools/travis_controller.sh core
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.12"
name: core - scala 2.12
- if: type = cron
script: ./tools/travis_controller.sh libraries
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.12"
name: libraries - scala 2.12
- if: type = cron
script: ./tools/travis_controller.sh blink_planner
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.12"
name: blink_planner - scala 2.12
- if: type = cron
script: ./tools/travis_controller.sh connectors
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.12"
name: connectors - scala 2.12
- if: type = cron
script: ./tools/travis_controller.sh kafka/gelly
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.12"
name: kafka/gelly - scala 2.12
- if: type = cron
script: ./tools/travis_controller.sh tests
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.12"
name: tests - scala 2.12
- if: type = cron
script: ./tools/travis_controller.sh misc
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.12"
name: misc - scala 2.12
- if: type = cron
stage: cleanup
script: ./tools/travis_controller.sh cleanup
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.12"
name: cleanup - scala 2.12
# JDK9 profile
- if: type = cron
jdk: "openjdk9"
stage: compile
script: ./tools/travis_controller.sh compile
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11 -Djdk9"
name: compile - jdk 9
- if: type = cron
jdk: "openjdk9"
stage: test
script: ./tools/travis_controller.sh core
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11 -Djdk9"
name: core - jdk 9
- if: type = cron
jdk: "openjdk9"
script: ./tools/travis_controller.sh python
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11 -Djdk9"
name: python - jdk 9
- if: type = cron
jdk: "openjdk9"
script: ./tools/travis_controller.sh libraries
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11 -Djdk9"
name: libraries - jdk 9
- if: type = cron
jdk: "openjdk9"
script: ./tools/travis_controller.sh blink_planner
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11 -Djdk9"
name: blink_planner - jdk 9
- if: type = cron
jdk: "openjdk9"
script: ./tools/travis_controller.sh connectors
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11 -Djdk9"
name: connectors - jdk 9
- if: type = cron
jdk: "openjdk9"
script: ./tools/travis_controller.sh kafka/gelly
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11 -Djdk9"
name: kafka/gelly - jdk 9
- if: type = cron
jdk: "openjdk9"
script: ./tools/travis_controller.sh tests
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11 -Djdk9"
name: tests - jdk 9
- if: type = cron
jdk: "openjdk9"
script: ./tools/travis_controller.sh misc
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11 -Djdk9"
name: misc
- if: type = cron
jdk: "openjdk9"
stage: cleanup
script: ./tools/travis_controller.sh cleanup
env: PROFILE="-Dhadoop.version=2.8.3 -Pinclude-kinesis -Dinclude_hadoop_aws -Dscala-2.11 -Djdk9"
name: cleanup - jdk 9
# Documentation 404 check
- if: type = cron
stage: test
script: ./tools/travis/docs.sh
language: ruby
rvm: 2.4.0
name: Documentation links check
# E2E profiles - Hadoop 2.8
- if: type = cron
stage: test
env: PROFILE="-Dinclude-hadoop -Dhadoop.version=2.8.3 -De2e-metrics -Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_misc.sh
name: misc - hadoop 2.8
- if: type = cron
env: PROFILE="-Dinclude-hadoop -Dhadoop.version=2.8.3 -Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_ha.sh
name: ha - hadoop 2.8
- if: type = cron
env: PROFILE="-Dinclude-hadoop -Dhadoop.version=2.8.3 -Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_sticky.sh
name: sticky - hadoop 2.8
- if: type = cron
env: PROFILE="-Dinclude-hadoop -Dhadoop.version=2.8.3 -Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_checkpoints.sh
name: checkpoints - hadoop 2.8
- if: type = cron
env: PROFILE="-Dinclude-hadoop -Dhadoop.version=2.8.3 -Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_container.sh
name: container - hadoop 2.8
- if: type = cron
env: PROFILE="-Dinclude-hadoop -Dhadoop.version=2.8.3 -Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_heavy.sh
name: heavy - hadoop 2.8
# E2E profiles - Scala 2.12
- if: type = cron
env: PROFILE="-Dinclude-hadoop -Dhadoop.version=2.8.3 -Dscala-2.12 -De2e-metrics -Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_misc.sh
name: misc - scala 2.12
- if: type = cron
env: PROFILE="-Dinclude-hadoop -Dhadoop.version=2.8.3 -Dscala-2.12 -Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_ha.sh
name: ha - scala 2.12
- if: type = cron
env: PROFILE="-Dinclude-hadoop -Dhadoop.version=2.8.3 -Dscala-2.12 -Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_sticky.sh
name: sticky - scala 2.12
- if: type = cron
env: PROFILE="-Dinclude-hadoop -Dhadoop.version=2.8.3 -Dscala-2.12 -Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_checkpoints.sh
name: checkpoints - scala 2.12
- if: type = cron
env: PROFILE="-Dinclude-hadoop -Dhadoop.version=2.8.3 -Dscala-2.12 -Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_container.sh
name: container - scala 2.12
- if: type = cron
env: PROFILE="-Dinclude-hadoop -Dhadoop.version=2.8.3 -Dscala-2.12 -Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_heavy.sh
name: heavy - scala 2.12
# E2E profiles - Hadoop-free
- if: type = cron
env: PROFILE="-De2e-metrics -Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_misc_hadoopfree.sh
name: misc
- if: type = cron
env: PROFILE="-Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_ha.sh
name: ha
- if: type = cron
env: PROFILE="-Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_sticky.sh
name: sticky
- if: type = cron
env: PROFILE="-Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_checkpoints.sh
name: checkpoints
- if: type = cron
env: PROFILE="-Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_container.sh
name: container
- if: type = cron
env: PROFILE="-Dinclude-kinesis"
script: ./tools/travis/nightly.sh split_heavy.sh
name: heavy
- # E2E profiles - Java 9
- if: type = cron
stage: test
jdk: "openjdk9"
env: PROFILE="-De2e-metrics -Dinclude-kinesis -Djdk9"
script: ./tools/travis/nightly.sh split_ha.sh
name: ha - jdk9
- if: type = cron
env: PROFILE="-Dinclude-kinesis -Djdk9"
script: ./tools/travis/nightly.sh split_sticky.sh
name: sticky - jdk 9
- if: type = cron
env: PROFILE="-Dinclude-kinesis -Djdk9"
script: ./tools/travis/nightly.sh split_checkpoints.sh
name: checkpoints - jdk 9