mirror of
https://github.com/vale981/ray
synced 2025-03-05 10:01:43 -05:00
361 lines
14 KiB
YAML
361 lines
14 KiB
YAML
language: generic
|
|
# Use Ubuntu 16.04
|
|
dist: xenial
|
|
|
|
git:
|
|
clone: false # Clone manually to work around Travis issues like https://github.com/travis-ci/travis-ci/issues/6337
|
|
depth: false # Shallow clones can prevent diff against base branch
|
|
quiet: true
|
|
|
|
before_install:
|
|
- unset -f cd # Travis defines this on Mac for RVM, but it breaks the Mac build
|
|
- |
|
|
git clone -q -n "https://github.com/${TRAVIS_REPO_SLUG}.git" "${TRAVIS_REPO_SLUG}"
|
|
cd -- "${TRAVIS_REPO_SLUG}"
|
|
to_fetch=("${TRAVIS_COMMIT}")
|
|
if [ -n "${TRAVIS_PULL_REQUEST-}" ]; then to_fetch+=("+refs/pull/${TRAVIS_PULL_REQUEST}/merge:"); fi
|
|
git fetch -q -- origin "${to_fetch[@]}"
|
|
git checkout -qf "${TRAVIS_COMMIT}" --
|
|
|
|
matrix:
|
|
include:
|
|
- os: linux
|
|
env:
|
|
- PYTHON=3.6
|
|
- PYTHONWARNINGS=ignore
|
|
- RAY_DEFAULT_BUILD=1
|
|
- RAY_CYTHON_EXAMPLES=1
|
|
- RAY_USE_RANDOM_PORTS=1
|
|
install:
|
|
- . ./ci/travis/ci.sh init RAY_CI_SERVE_AFFECTED,RAY_CI_TUNE_AFFECTED,RAY_CI_PYTHON_AFFECTED
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
|
|
- os: linux
|
|
env:
|
|
- PYTHON=3.6 BAZEL_CONFIG="asan"
|
|
- PYTHONWARNINGS=ignore
|
|
- RAY_DEFAULT_BUILD=1
|
|
install:
|
|
- . ./ci/travis/ci.sh init
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
# Run all C++ unit tests with ASAN enabled. ASAN adds too much overhead to run Python tests.
|
|
- bazel test --config=ci --build_tests_only -- //:all
|
|
|
|
- os: osx
|
|
osx_image: xcode7
|
|
env:
|
|
- PYTHON=3.6
|
|
- PYTHONWARNINGS=ignore
|
|
- RAY_DEFAULT_BUILD=1
|
|
- RAY_CYTHON_EXAMPLES=1
|
|
- RAY_USE_RANDOM_PORTS=1
|
|
install:
|
|
- . ./ci/travis/ci.sh init RAY_CI_SERVE_AFFECTED,RAY_CI_TUNE_AFFECTED,RAY_CI_PYTHON_AFFECTED
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
|
|
- os: linux
|
|
env:
|
|
- JDK='Oracle JDK 8'
|
|
- PYTHON=3.6 PYTHONWARNINGS=ignore
|
|
- RAY_INSTALL_JAVA=1
|
|
- RAY_GCS_ACTOR_SERVICE_ENABLED=true
|
|
install:
|
|
- . ./ci/travis/ci.sh init RAY_CI_JAVA_AFFECTED
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
- ./java/test.sh
|
|
|
|
- os: linux
|
|
env:
|
|
- TESTSUITE=streaming
|
|
- JDK='Oracle JDK 8'
|
|
- RAY_INSTALL_JAVA=1
|
|
- RAY_GCS_ACTOR_SERVICE_ENABLED=true
|
|
- PYTHON=3.6 PYTHONWARNINGS=ignore
|
|
- RAY_USE_RANDOM_PORTS=1
|
|
install:
|
|
- . ./ci/travis/ci.sh init RAY_CI_STREAMING_PYTHON_AFFECTED,RAY_CI_STREAMING_JAVA_AFFECTED
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
# Streaming cpp test.
|
|
- if [ $RAY_CI_STREAMING_CPP_AFFECTED == "1" ]; then bazel test --config=ci --test_output=all //streaming:all && bash streaming/src/test/run_streaming_queue_test.sh; fi
|
|
- if [ $RAY_CI_STREAMING_PYTHON_AFFECTED == "1" ]; then python -m pytest -v --durations=5 --timeout=300 streaming/python/tests/; fi
|
|
- if [ $RAY_CI_STREAMING_JAVA_AFFECTED == "1" ]; then ./streaming/java/test.sh; fi
|
|
|
|
- os: linux
|
|
env:
|
|
- TESTSUITE=gcs_service_disabled
|
|
- JDK='Oracle JDK 8'
|
|
- PYTHON=3.6 PYTHONWARNINGS=ignore
|
|
- RAY_INSTALL_JAVA=1
|
|
- RAY_GCS_SERVICE_ENABLED=false
|
|
- RAY_CYTHON_EXAMPLES=1
|
|
install:
|
|
- . ./ci/travis/ci.sh init RAY_CI_ONLY_RLLIB_AFFECTED
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
- ./ci/suppress_output bash streaming/src/test/run_streaming_queue_test.sh
|
|
- ./java/test.sh
|
|
|
|
- os: linux
|
|
env:
|
|
- TESTSUITE=gcs_service_disabled_python_testcase
|
|
- JDK='Oracle JDK 8'
|
|
- PYTHON=3.6 PYTHONWARNINGS=ignore
|
|
- RAY_INSTALL_JAVA=1
|
|
- RAY_GCS_SERVICE_ENABLED=false
|
|
- RAY_CYTHON_EXAMPLES=1
|
|
- RAY_USE_RANDOM_PORTS=1
|
|
install:
|
|
- . ./ci/travis/ci.sh init RAY_CI_ONLY_RLLIB_AFFECTED
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
- ./ci/keep_alive bazel test --config=ci --test_tag_filters=-jenkins_only python/ray/tests/...
|
|
|
|
- os: linux
|
|
env:
|
|
- LINT=1
|
|
- PYTHONWARNINGS=ignore
|
|
install:
|
|
- . ./ci/travis/ci.sh init
|
|
before_script:
|
|
- . ./ci/travis/ci.sh lint
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
- true # we still need this block to exist, otherwise it will fall back to the global one
|
|
|
|
# Build Linux wheels.
|
|
- os: linux
|
|
env:
|
|
- LINUX_WHEELS=1
|
|
- PYTHONWARNINGS=ignore
|
|
- RAY_INSTALL_JAVA=1
|
|
- RAY_GCS_ACTOR_SERVICE_ENABLED=true
|
|
install:
|
|
- . ./ci/travis/ci.sh init RAY_CI_LINUX_WHEELS_AFFECTED
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
- . ./ci/travis/ci.sh test_wheels
|
|
cache: false
|
|
|
|
# Build MacOS wheels.
|
|
- os: osx
|
|
osx_image: xcode7
|
|
env:
|
|
- MAC_WHEELS=1
|
|
- PYTHONWARNINGS=ignore
|
|
- RAY_INSTALL_JAVA=1
|
|
- RAY_GCS_ACTOR_SERVICE_ENABLED=true
|
|
install:
|
|
- . ./ci/travis/ci.sh init RAY_CI_MACOS_WHEELS_AFFECTED
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
- . ./ci/travis/ci.sh test_wheels
|
|
|
|
# RLlib: Learning tests (from rllib/tuned_examples/*.yaml).
|
|
- os: linux
|
|
env:
|
|
- RLLIB_TESTING=1 RLLIB_REGRESSION_TESTS=1
|
|
- TF_VERSION=2.1.0
|
|
- TFP_VERSION=0.8
|
|
- TORCH_VERSION=1.4
|
|
- PYTHON=3.6
|
|
- PYTHONWARNINGS=ignore
|
|
install:
|
|
- . ./ci/travis/ci.sh init RAY_CI_RLLIB_AFFECTED
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
- ./ci/keep_alive bazel test --config=ci --build_tests_only --test_tag_filters=learning_tests_tf rllib/...
|
|
|
|
# RLlib: Learning tests with tf=1.x (from rllib/tuned_examples/*.yaml).
|
|
# Requested by Edi (MS): Test all learning capabilities with tf1.x
|
|
- os: linux
|
|
env:
|
|
- RLLIB_TESTING=1 RLLIB_REGRESSION_TESTS_TF1X=1
|
|
- TF_VERSION=1.14.0
|
|
- TFP_VERSION=0.7
|
|
- TORCH_VERSION=1.4
|
|
- PYTHON=3.6
|
|
- PYTHONWARNINGS=ignore
|
|
install:
|
|
- . ./ci/travis/ci.sh init RAY_CI_RLLIB_FULL_AFFECTED
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
- ./ci/keep_alive bazel test --config=ci --build_tests_only --test_tag_filters=learning_tests_tf rllib/...
|
|
|
|
# RLlib: Learning tests with torch (from rllib/tuned_examples/*.yaml).
|
|
- os: linux
|
|
env:
|
|
- RLLIB_TESTING=1 RLLIB_REGRESSION_TESTS_TORCH=1
|
|
- TF_VERSION=2.1.0
|
|
- TFP_VERSION=0.8
|
|
- TORCH_VERSION=1.4
|
|
- PYTHON=3.6
|
|
- PYTHONWARNINGS=ignore
|
|
install:
|
|
- . ./ci/travis/ci.sh init RAY_CI_RLLIB_AFFECTED
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
- ./ci/keep_alive bazel test --config=ci --build_tests_only --test_tag_filters=learning_tests_torch rllib/...
|
|
|
|
# RLlib: Quick Agent train.py runs (compilation & running, no(!) learning).
|
|
# Agent single tests (compilation, loss-funcs, etc..).
|
|
- os: linux
|
|
env:
|
|
- RLLIB_TESTING=1 RLLIB_QUICK_TRAIN_AND_MISC_TESTS=1
|
|
- PYTHON=3.6
|
|
- TF_VERSION=2.1.0
|
|
- TFP_VERSION=0.8
|
|
- TORCH_VERSION=1.4
|
|
- PYTHONWARNINGS=ignore
|
|
install:
|
|
- . ./ci/travis/ci.sh init RAY_CI_RLLIB_FULL_AFFECTED
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
- ./ci/keep_alive bazel test --config=ci --build_tests_only --test_tag_filters=quick_train rllib/...
|
|
# Test everything that does not have any of the "main" labels:
|
|
# "learning_tests|quick_train|examples|tests_dir".
|
|
- ./ci/keep_alive bazel test --config=ci --build_tests_only --test_tag_filters=-learning_tests_tf,-learning_tests_torch,-quick_train,-examples,-tests_dir rllib/...
|
|
|
|
# RLlib: Everything in rllib/examples/ directory.
|
|
- os: linux
|
|
env:
|
|
- RLLIB_TESTING=1 RLLIB_EXAMPLE_DIR_TESTS=1
|
|
- PYTHON=3.6
|
|
- TF_VERSION=2.1.0
|
|
- TFP_VERSION=0.8
|
|
- TORCH_VERSION=1.4
|
|
- PYTHONWARNINGS=ignore
|
|
install:
|
|
- . ./ci/travis/ci.sh init RAY_CI_RLLIB_FULL_AFFECTED
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
- ./ci/keep_alive bazel test --config=ci --build_tests_only --test_tag_filters=examples_A,examples_B rllib/...
|
|
- ./ci/keep_alive bazel test --config=ci --build_tests_only --test_tag_filters=examples_C,examples_D rllib/...
|
|
- ./ci/keep_alive bazel test --config=ci --build_tests_only --test_tag_filters=examples_E,examples_F,examples_G,examples_H,examples_I,examples_J,examples_K,examples_L,examples_M,examples_N,examples_O,examples_P rllib/...
|
|
- ./ci/keep_alive bazel test --config=ci --build_tests_only --test_tag_filters=examples_Q,examples_R,examples_S,examples_T,examples_U,examples_V,examples_W,examples_X,examples_Y,examples_Z rllib/...
|
|
|
|
# RLlib: tests_dir: Everything in rllib/tests/ directory (A-L).
|
|
- os: linux
|
|
env:
|
|
- RLLIB_TESTING=1 RLLIB_TESTS_DIR_TESTS_A_TO_L=1
|
|
- PYTHON=3.6
|
|
- TF_VERSION=2.1.0
|
|
- TFP_VERSION=0.8
|
|
- TORCH_VERSION=1.4
|
|
- PYTHONWARNINGS=ignore
|
|
install:
|
|
- . ./ci/travis/ci.sh init RAY_CI_RLLIB_FULL_AFFECTED
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
- ./ci/keep_alive bazel test --config=ci --build_tests_only --test_tag_filters=tests_dir_A,tests_dir_B,tests_dir_C,tests_dir_D,tests_dir_E,tests_dir_F,tests_dir_G,tests_dir_H,tests_dir_I,tests_dir_J,tests_dir_K,tests_dir_L rllib/...
|
|
|
|
# RLlib: tests_dir: Everything in rllib/tests/ directory (M-Z).
|
|
- os: linux
|
|
env:
|
|
- RLLIB_TESTING=1 RLLIB_TESTS_DIR_TESTS_M_TO_Z=1
|
|
- PYTHON=3.6
|
|
- TF_VERSION=2.1.0
|
|
- TFP_VERSION=0.8
|
|
- TORCH_VERSION=1.4
|
|
- PYTHONWARNINGS=ignore
|
|
install:
|
|
- . ./ci/travis/ci.sh init RAY_CI_RLLIB_FULL_AFFECTED
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
- ./ci/keep_alive bazel test --config=ci --build_tests_only --test_tag_filters=tests_dir_M,tests_dir_N,tests_dir_O,tests_dir_P,tests_dir_Q,tests_dir_R,tests_dir_S,tests_dir_T,tests_dir_U,tests_dir_V,tests_dir_W,tests_dir_X,tests_dir_Y,tests_dir_Z rllib/...
|
|
|
|
# Cpp worker test
|
|
- os: linux
|
|
env:
|
|
- TESTSUITE=cpp_worker
|
|
- PYTHON=3.6
|
|
install:
|
|
- . ./ci/travis/ci.sh init
|
|
before_script:
|
|
- . ./ci/travis/ci.sh build
|
|
script:
|
|
- . ./ci/travis/ci.sh test_cpp
|
|
|
|
script:
|
|
# raylet integration tests (core_worker_tests included in bazel tests below)
|
|
- ./ci/suppress_output bash src/ray/test/run_object_manager_tests.sh
|
|
|
|
# cc bazel tests (w/o RLlib)
|
|
- ./ci/suppress_output bazel test --config=ci --build_tests_only -- //:all -rllib/...
|
|
|
|
# ray serve tests
|
|
- if [ $RAY_CI_SERVE_AFFECTED == "1" ]; then ./ci/keep_alive bazel test --config=ci --test_tag_filters=-jenkins_only python/ray/serve/...; fi
|
|
|
|
# ray dashboard tests
|
|
- if [ "$RAY_CI_DASHBOARD_AFFECTED" == "1" ]; then ./ci/keep_alive bazel test python/ray/dashboard/...; fi
|
|
|
|
# ray operator tests
|
|
- (cd deploy/ray-operator && export CC=gcc && suppress_output go build && suppress_output go test ./...)
|
|
|
|
# random python tests TODO(ekl): these should be moved to bazel
|
|
- if [ $RAY_CI_PYTHON_AFFECTED == "1" ]; then python -m pytest -v --durations=5 --timeout=300 python/ray/experimental/test/async_test.py; fi
|
|
|
|
# bazel python tests. This should be run last to keep its logs at the end of travis logs.
|
|
- if [ $RAY_CI_PYTHON_AFFECTED == "1" ]; then ./ci/keep_alive bazel test --config=ci --test_tag_filters=-jenkins_only python/ray/tests/...; fi
|
|
- if [ $RAY_CI_TUNE_AFFECTED == "1" ]; then ./ci/keep_alive bazel test --config=ci --test_tag_filters=-jenkins_only python/ray/tune/...; fi
|
|
# NO MORE TESTS BELOW, keep them above.
|
|
|
|
deploy:
|
|
- provider: s3
|
|
edge: true # This supposedly opts in to deploy v2.
|
|
access_key_id: AKIAU6DMUCJUFL3EX3SM
|
|
secret_access_key:
|
|
secure: J1sX71fKFPQhgWzColllxfzcF877ScBZ1cIl71krZ6SO0LKnwsCScpQck5eZOyQo/Iverwye0iKtE87qNsiRi3+V2D9iulSr18T09j7+FjPKfxAmXmjfrNafoMXTDQroSJblCri5vl+DysISPqImJkWTNaYhGJ9QakoSd5djnAopLNWj6PCR3S50baS49+nB5nSIY3jMhtUzlaBdniFPFC81Cxyuafr4pv6McGRfR/dK+ZnPhdGtMnVeIJXB+ooZKQ26mDJKBPka4jm3u1Oa72b/Atu2RO3MwxTg79LTrMxXKh2OcCqhtD2Z3lz1OltvNSunCuwY8AejCJsfSLbM9mGDoz+xhNUWmYNy48YFf+61OY8PXi8S/9Q817yb3GpLbb2l/P+KMgq9eSEiELIOwuYsDxPX5TuAg6dx0wCNgDEBJoThSQjYl6MgJrLrs7p+JBxp3giedHiy0TLa5hCVKTj3euONAXDArYnnT+DvUIOkaeTk5DClRZbZ0sUXhLy//HuT5WJvjFBJJZ0u0f4RLVb5D7DI4uMZr7+yJPDR2AXCyW9YMaBEbmEYbPaKi283jlEyn7R33+AZlnXv0THHwZ4xvjKKG3/fBSXsOUmv5wmUveEqVGDj1mKPGj9NF8iA5qMm2AaZuJpEEBVBZtSlTZt6ZG7rzAJZGNL52t7xuMo=
|
|
bucket: ray-wheels
|
|
acl: public_read
|
|
region: us-west-2
|
|
local_dir: .whl
|
|
upload-dir: "$TRAVIS_BRANCH/$TRAVIS_COMMIT"
|
|
skip_cleanup: true
|
|
on:
|
|
repo: ray-project/ray
|
|
all_branches: true
|
|
condition: $LINUX_WHEELS = 1 || $MAC_WHEELS = 1
|
|
|
|
- provider: s3
|
|
edge: true # This supposedly opts in to deploy v2.
|
|
access_key_id: AKIAU6DMUCJUFL3EX3SM
|
|
secret_access_key:
|
|
secure: J1sX71fKFPQhgWzColllxfzcF877ScBZ1cIl71krZ6SO0LKnwsCScpQck5eZOyQo/Iverwye0iKtE87qNsiRi3+V2D9iulSr18T09j7+FjPKfxAmXmjfrNafoMXTDQroSJblCri5vl+DysISPqImJkWTNaYhGJ9QakoSd5djnAopLNWj6PCR3S50baS49+nB5nSIY3jMhtUzlaBdniFPFC81Cxyuafr4pv6McGRfR/dK+ZnPhdGtMnVeIJXB+ooZKQ26mDJKBPka4jm3u1Oa72b/Atu2RO3MwxTg79LTrMxXKh2OcCqhtD2Z3lz1OltvNSunCuwY8AejCJsfSLbM9mGDoz+xhNUWmYNy48YFf+61OY8PXi8S/9Q817yb3GpLbb2l/P+KMgq9eSEiELIOwuYsDxPX5TuAg6dx0wCNgDEBJoThSQjYl6MgJrLrs7p+JBxp3giedHiy0TLa5hCVKTj3euONAXDArYnnT+DvUIOkaeTk5DClRZbZ0sUXhLy//HuT5WJvjFBJJZ0u0f4RLVb5D7DI4uMZr7+yJPDR2AXCyW9YMaBEbmEYbPaKi283jlEyn7R33+AZlnXv0THHwZ4xvjKKG3/fBSXsOUmv5wmUveEqVGDj1mKPGj9NF8iA5qMm2AaZuJpEEBVBZtSlTZt6ZG7rzAJZGNL52t7xuMo=
|
|
bucket: ray-wheels
|
|
acl: public_read
|
|
region: us-west-2
|
|
local_dir: .whl
|
|
upload-dir: latest
|
|
skip_cleanup: true
|
|
on:
|
|
branch: master
|
|
repo: ray-project/ray
|
|
condition: $LINUX_WHEELS = 1 || $MAC_WHEELS = 1
|
|
|
|
- provider: script
|
|
edge: true # This supposedly opts in to deploy v2.
|
|
script: bash $TRAVIS_BUILD_DIR/ci/travis/build-autoscaler-images.sh || true
|
|
skip_cleanup: true
|
|
on:
|
|
repo: ray-project/ray
|
|
all_branches: true
|
|
condition: $LINUX_WHEELS = 1 || $MAC_WHEELS = 1
|