pipeline.yml 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558
  1. - label: ":ferris_wheel: Wheels and Jars"
  2. conditions:
  3. [
  4. "RAY_CI_LINUX_WHEELS_AFFECTED",
  5. "RAY_CI_JAVA_AFFECTED",
  6. "RAY_CI_STREAMING_JAVA_AFFECTED",
  7. ]
  8. commands:
  9. # Build the wheels and jars
  10. - LINUX_WHEELS=1 LINUX_JARS=1 ./ci/travis/ci.sh build
  11. - bash ./java/build-jar-multiplatform.sh linux
  12. # Upload the wheels and jars
  13. # We don't want to push on PRs, in fact, the copy_files will fail because unauthenticated.
  14. - if [ "$BUILDKITE_PULL_REQUEST" != "false" ]; then exit 0; fi
  15. - pip install -q docker aws_requests_auth boto3
  16. # Upload to branch directory.
  17. - python .buildkite/copy_files.py --destination branch_wheels --path ./.whl
  18. - python .buildkite/copy_files.py --destination branch_jars --path ./.jar/linux
  19. # Upload to latest directory.
  20. - if [ "$BUILDKITE_BRANCH" == "master" ]; then python .buildkite/copy_files.py --destination wheels --path ./.whl; fi
  21. - if [ "$BUILDKITE_BRANCH" == "master" ]; then python .buildkite/copy_files.py --destination jars --path ./.jar/linux; fi
  22. - label: ":ferris_wheel: Post-wheel tests"
  23. conditions: ["RAY_CI_LINUX_WHEELS_AFFECTED"]
  24. commands:
  25. - LINUX_WHEELS=1 ./ci/travis/ci.sh build
  26. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  27. - bazel test --config=ci $(./scripts/bazel_export_options)
  28. --test_tag_filters=post_wheel_build
  29. --test_env=CONDA_EXE
  30. --test_env=CONDA_PYTHON_EXE
  31. --test_env=CONDA_SHLVL
  32. --test_env=CONDA_PREFIX
  33. --test_env=CONDA_DEFAULT_ENV
  34. --test_env=CI
  35. --test_env=RAY_CI_POST_WHEEL_TESTS=True
  36. python/ray/tests/... python/ray/serve/... python/ray/tune/... rllib/... doc/...
  37. - label: ":ferris_wheel: Debug Wheels"
  38. conditions:
  39. [
  40. "RAY_CI_LINUX_WHEELS_AFFECTED",
  41. "RAY_CI_JAVA_AFFECTED",
  42. "RAY_CI_STREAMING_JAVA_AFFECTED",
  43. ]
  44. commands:
  45. # Build the debug wheels
  46. - RAY_DEBUG_BUILD=debug LINUX_WHEELS=1 ./ci/travis/ci.sh build
  47. # Upload the wheels.
  48. # We don't want to push on PRs, in fact, the copy_files will fail because unauthenticated.
  49. - if [ "$BUILDKITE_PULL_REQUEST" != "false" ]; then exit 0; fi
  50. - pip install -q docker aws_requests_auth boto3
  51. # Upload to branch directory.
  52. - python .buildkite/copy_files.py --destination branch_wheels --path ./.whl
  53. # Upload to latest directory.
  54. - if [ "$BUILDKITE_BRANCH" == "master" ]; then python .buildkite/copy_files.py --destination wheels --path ./.whl; fi
  55. # Not working now.
  56. # - label: ":ferris_wheel: ASAN Wheels"
  57. # conditions:
  58. # [
  59. # "RAY_CI_LINUX_WHEELS_AFFECTED",
  60. # "RAY_CI_JAVA_AFFECTED",
  61. # "RAY_CI_STREAMING_JAVA_AFFECTED",
  62. # ]
  63. # commands:
  64. # # Build the asan wheels
  65. # - RAY_DEBUG_BUILD=asan LINUX_WHEELS=1 ./ci/travis/ci.sh build
  66. # # Upload the wheels.
  67. # # We don't want to push on PRs, in fact, the copy_files will fail because unauthenticated.
  68. # - if [ "$BUILDKITE_PULL_REQUEST" != "false" ]; then exit 0; fi
  69. # - pip install -q docker aws_requests_auth boto3
  70. # # Upload to branch directory.
  71. # - python .buildkite/copy_files.py --destination branch_wheels --path ./.whl
  72. # # Upload to latest directory.
  73. # - if [ "$BUILDKITE_BRANCH" == "master" ]; then python .buildkite/copy_files.py --destination wheels --path ./.whl; fi
  74. - label: ":docker: Build Images: py36"
  75. conditions: ["RAY_CI_LINUX_WHEELS_AFFECTED"]
  76. commands:
  77. - LINUX_WHEELS=1 ./ci/travis/ci.sh build
  78. - pip install -q docker aws_requests_auth boto3
  79. - if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then python .buildkite/copy_files.py --destination docker_login; fi
  80. - python ./ci/travis/build-docker-images.py --py-versions PY36 --build-type BUILDKITE --build-base
  81. - label: ":docker: Build Images: py37"
  82. conditions: ["RAY_CI_LINUX_WHEELS_AFFECTED"]
  83. commands:
  84. - LINUX_WHEELS=1 ./ci/travis/ci.sh build
  85. - pip install -q docker aws_requests_auth boto3
  86. - if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then python .buildkite/copy_files.py --destination docker_login; fi
  87. - python ./ci/travis/build-docker-images.py --py-versions PY37 --build-type BUILDKITE --build-base
  88. - label: ":docker: Build Images: py38"
  89. conditions: ["RAY_CI_LINUX_WHEELS_AFFECTED"]
  90. commands:
  91. - LINUX_WHEELS=1 ./ci/travis/ci.sh build
  92. - pip install -q docker aws_requests_auth boto3
  93. - if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then python .buildkite/copy_files.py --destination docker_login; fi
  94. - python ./ci/travis/build-docker-images.py --py-versions PY38 --build-type BUILDKITE --build-base
  95. - label: ":docker: Build Images: py39"
  96. conditions: ["RAY_CI_LINUX_WHEELS_AFFECTED"]
  97. commands:
  98. - LINUX_WHEELS=1 ./ci/travis/ci.sh build
  99. - pip install -q docker aws_requests_auth boto3
  100. - if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then python .buildkite/copy_files.py --destination docker_login; fi
  101. - python ./ci/travis/build-docker-images.py --py-versions PY39 --build-type BUILDKITE --build-base
  102. - label: ":book: Lint"
  103. commands:
  104. - export LINT=1
  105. - ./ci/travis/install-dependencies.sh
  106. - ./ci/travis/ci.sh lint
  107. - ./ci/travis/ci.sh build
  108. - label: ":java: Java"
  109. conditions: ["RAY_CI_JAVA_AFFECTED"]
  110. commands:
  111. - ./java/test.sh
  112. - label: ":java: Streaming"
  113. conditions:
  114. ["RAY_CI_STREAMING_PYTHON_AFFECTED", "RAY_CI_STREAMING_JAVA_AFFECTED", "RAY_CI_PYTHON_AFFECTED"]
  115. commands:
  116. - bazel test --config=ci $(./scripts/bazel_export_options)
  117. //streaming:all
  118. - bash streaming/src/test/run_streaming_queue_test.sh
  119. - label: ":cpp: Worker"
  120. commands:
  121. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  122. - ./ci/travis/ci.sh test_cpp
  123. - label: ":cpp: Tests"
  124. commands:
  125. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  126. - bazel test --config=ci --config=llvm $(./scripts/bazel_export_options)
  127. --build_tests_only
  128. --test_tag_filters=-flaky
  129. -- //:all -rllib/... -core_worker_test
  130. - label: ":cpp: Tests (ASAN)"
  131. commands:
  132. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  133. - bazel test --config=ci --config=asan-clang $(./scripts/bazel_export_options)
  134. --build_tests_only
  135. --jobs=2
  136. --test_tag_filters=-flaky
  137. -- //:all -//:core_worker_test
  138. - label: ":cpp: Tests (UBSAN)"
  139. commands:
  140. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  141. - bazel test --config=ci --config=ubsan $(./scripts/bazel_export_options)
  142. --build_tests_only
  143. --jobs=2
  144. --test_tag_filters=-flaky
  145. -- //:all -//:core_worker_test -//:logging_test
  146. - label: ":cpp: Tests (TSAN)"
  147. commands:
  148. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  149. - bazel test --config=ci --config=tsan-clang $(./scripts/bazel_export_options)
  150. --build_tests_only
  151. --jobs=2
  152. --test_tag_filters=-flaky
  153. -- //:all -//:core_worker_test -//:event_test -//:gcs_actor_manager_test
  154. -//:gcs_placement_group_manager_test -//:gcs_placement_group_scheduler_test
  155. -//:gcs_server_rpc_test -//:gcs_server_test
  156. -//:metric_exporter_client_test -//:stats_test -//:worker_pool_test
  157. - label: ":serverless: Dashboard + Serve Tests"
  158. conditions:
  159. [
  160. "RAY_CI_SERVE_AFFECTED",
  161. "RAY_CI_DASHBOARD_AFFECTED",
  162. "RAY_CI_PYTHON_AFFECTED",
  163. ]
  164. commands:
  165. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  166. - TORCH_VERSION=1.6 ./ci/travis/install-dependencies.sh
  167. - ./dashboard/tests/run_ui_tests.sh
  168. - bazel test --config=ci $(./scripts/bazel_export_options) python/ray/dashboard/...
  169. - bazel test --config=ci $(./scripts/bazel_export_options)
  170. --test_tag_filters=-post_wheel_build
  171. python/ray/serve/...
  172. - label: ":python: Minimal install"
  173. conditions: ["RAY_CI_PYTHON_AFFECTED"]
  174. commands:
  175. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  176. - ./ci/travis/install-minimal.sh
  177. - ./ci/travis/env_info.sh
  178. - python ./ci/travis/check_minimal_install.py
  179. - bazel test --test_output=streamed --config=ci $(./scripts/bazel_export_options)
  180. python/ray/tests/test_basic
  181. - bazel test --test_output=streamed --config=ci $(./scripts/bazel_export_options)
  182. python/ray/tests/test_basic_2
  183. - bazel test --test_output=streamed --config=ci $(./scripts/bazel_export_options)
  184. python/ray/tests/test_basic_3
  185. - bazel test --test_output=streamed --config=ci --test_env=RAY_MINIMAL=1 $(./scripts/bazel_export_options)
  186. python/ray/tests/test_output
  187. - bazel test --test_output=streamed --config=ci --test_env=RAY_MINIMAL=1 $(./scripts/bazel_export_options)
  188. python/ray/tests/test_runtime_env_ray_minimal
  189. # TODO(archit)
  190. - label: ":python: (Flaky tests)"
  191. conditions: ["RAY_CI_PYTHON_AFFECTED", "RAY_CI_SERVE_AFFECTED", "RAY_CI_RLLIB_AFFECTED", "RAY_CI_TUNE_AFFECTED"]
  192. commands:
  193. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  194. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  195. # - bazel test --config=ci $(./scripts/bazel_export_options)
  196. # --build_tests_only
  197. # --test_tag_filters=flaky
  198. # -- //:all -rllib/... -core_worker_test
  199. - bazel test --config=ci $(./scripts/bazel_export_options)
  200. --test_tag_filters=-kubernetes,flaky
  201. --test_env=CONDA_EXE
  202. --test_env=CONDA_PYTHON_EXE
  203. --test_env=CONDA_SHLVL
  204. --test_env=CONDA_PREFIX
  205. --test_env=CONDA_DEFAULT_ENV
  206. python/ray/tests/... python/ray/serve/... python/ray/tune/... rllib/...
  207. - label: ":python: (Small & Large)"
  208. conditions: ["RAY_CI_PYTHON_AFFECTED"]
  209. commands:
  210. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  211. - bazel test --config=ci $(./scripts/bazel_export_options)
  212. --test_tag_filters=-kubernetes,-medium_size_python_tests_a_to_j,-medium_size_python_tests_k_to_z,-client_tests,-flaky,-post_wheel_build,-worker-container
  213. --test_env=CONDA_EXE
  214. --test_env=CONDA_PYTHON_EXE
  215. --test_env=CONDA_SHLVL
  216. --test_env=CONDA_PREFIX
  217. --test_env=CONDA_DEFAULT_ENV
  218. python/ray/tests/...
  219. - bazel test --config=ci $(./scripts/bazel_export_options)
  220. --test_tag_filters=-kubernetes,client_tests,-flaky
  221. --test_env=RAY_CLIENT_MODE=1 --test_env=RAY_PROFILING=1
  222. python/ray/tests/...
  223. - label: ":python: (Medium A-J)"
  224. conditions: ["RAY_CI_PYTHON_AFFECTED"]
  225. commands:
  226. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  227. - bazel test --config=ci $(./scripts/bazel_export_options)
  228. --test_tag_filters=-kubernetes,medium_size_python_tests_a_to_j,-flaky
  229. python/ray/tests/...
  230. - label: ":python: (Medium K-Z)"
  231. conditions: ["RAY_CI_PYTHON_AFFECTED"]
  232. commands:
  233. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  234. - bazel test --config=ci $(./scripts/bazel_export_options)
  235. --test_tag_filters=-kubernetes,medium_size_python_tests_k_to_z,-flaky
  236. python/ray/tests/...
  237. - label: ":core: Debug Test"
  238. commands:
  239. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  240. - pip uninstall -y ray
  241. - RAY_DEBUG_BUILD=debug ./ci/travis/ci.sh build
  242. - bazel test --config=ci-debug $(./scripts/bazel_export_options)
  243. --test_tag_filters=-kubernetes,debug_tests,-flaky
  244. python/ray/tests/...
  245. - label: ":core: (ASAN tests)"
  246. conditions: ["RAY_CI_PYTHON_AFFECTED"]
  247. commands:
  248. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  249. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  250. - bazel test --config=ci --config=asan $(./scripts/bazel_export_options)
  251. --config=asan-buildkite
  252. --test_tag_filters=-kubernetes,asan_tests,-flaky
  253. --test_env=CONDA_EXE
  254. --test_env=CONDA_PYTHON_EXE
  255. --test_env=CONDA_SHLVL
  256. --test_env=CONDA_PREFIX
  257. --test_env=CONDA_DEFAULT_ENV
  258. python/ray/tests/...
  259. #- label: ":python: (Worker In Container)"
  260. #conditions: ["RAY_CI_PYTHON_AFFECTED"]
  261. #commands:
  262. #- LINUX_WHEELS=1 ./ci/travis/ci.sh build
  263. #- pip install docker
  264. #We build image ray-worker-container:nightly-py36-cpu which have installed podman,but not push it.
  265. #And we save this image to a tarball, so that we can load it to podman image storage in the
  266. #nested-container which run tests. And in this nested-container, Raylet will start ray worker
  267. #process in double-nested-container.
  268. #- python ./ci/travis/build-docker-images.py --py-versions PY36 --build-type BUILDKITE --only-build-worker-container
  269. #- mkdir /ray-mount/containers
  270. #- docker save -o /ray-mount/containers/images.tar rayproject/ray-worker-container:nightly-py36-cpu
  271. #- docker run --rm --privileged -v /ray/containers:/var/lib/containers -v /ray:/ray --entrypoint /bin/bash
  272. #rayproject/ray-worker-container:nightly-py36-cpu /ray/ci/travis/test-worker-in-container.sh
  273. - label: ":brain: RLlib: Learning discr. actions TF2 (from rllib/tuned_examples/*.yaml)"
  274. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  275. commands:
  276. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  277. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  278. - bazel test --config=ci $(./scripts/bazel_export_options)
  279. --build_tests_only
  280. --test_tag_filters=learning_tests_discrete_tf,-fake_gpus_tf,-fake_gpus_torch,-flaky
  281. rllib/...
  282. - label: ":brain: RLlib: Learning cont. actions TF2 (from rllib/tuned_examples/*.yaml)"
  283. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  284. commands:
  285. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  286. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  287. - bazel test --config=ci $(./scripts/bazel_export_options)
  288. --build_tests_only
  289. --test_tag_filters=learning_tests_continuous_tf,-fake_gpus_tf,-fake_gpus_torch,-flaky
  290. rllib/...
  291. - label: ":brain: RLlib: Learning discr. actions TF1 (from rllib/tuned_examples/*.yaml)"
  292. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  293. commands:
  294. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  295. - RLLIB_TESTING=1 TF_VERSION=1.14.0 TFP_VERSION=0.7 ./ci/travis/install-dependencies.sh
  296. - bazel test --config=ci $(./scripts/bazel_export_options)
  297. --build_tests_only
  298. --test_tag_filters=learning_tests_discrete_tf,-fake_gpus_tf,-fake_gpus_torch,-flaky
  299. rllib/...
  300. - label: ":brain: RLlib: Learning cont. actions TF1 (from rllib/tuned_examples/*.yaml)"
  301. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  302. commands:
  303. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  304. - RLLIB_TESTING=1 TF_VERSION=1.14.0 TFP_VERSION=0.7 ./ci/travis/install-dependencies.sh
  305. - bazel test --config=ci $(./scripts/bazel_export_options)
  306. --build_tests_only
  307. --test_tag_filters=learning_tests_continuous_tf,-fake_gpus_tf,-fake_gpus_torch,-flaky
  308. rllib/...
  309. - label: ":brain: RLlib: Learning discr. actions Torch (from rllib/tuned_examples/*.yaml)"
  310. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  311. commands:
  312. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  313. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  314. - bazel test --config=ci $(./scripts/bazel_export_options)
  315. --build_tests_only
  316. --test_tag_filters=learning_tests_discrete_torch,-fake_gpus_tf,-fake_gpus_torch,-flaky
  317. rllib/...
  318. - label: ":brain: RLlib: Learning cont. actions Torch (from rllib/tuned_examples/*.yaml)"
  319. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  320. commands:
  321. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  322. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  323. - bazel test --config=ci $(./scripts/bazel_export_options)
  324. --build_tests_only
  325. --test_tag_filters=learning_tests_continuous_torch,-fake_gpus_tf,-fake_gpus_torch,-flaky
  326. rllib/...
  327. - label: ":brain: RLlib: Learning tests w/ 2 fake GPUs TF (from rllib/tuned_examples/*.yaml)"
  328. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  329. commands:
  330. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  331. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  332. - bazel test --config=ci $(./scripts/bazel_export_options)
  333. --build_tests_only
  334. --test_tag_filters=fake_gpus_tf,-flaky
  335. rllib/...
  336. - label: ":brain: RLlib: Learning tests w/ 2 fake GPUs Torch (from rllib/tuned_examples/*.yaml)"
  337. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  338. commands:
  339. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  340. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  341. - bazel test --config=ci $(./scripts/bazel_export_options)
  342. --build_tests_only
  343. --test_tag_filters=fake_gpus_torch,-flaky
  344. rllib/...
  345. - label: ":brain: RLlib: Quick Agent train.py runs (TODO: obsolete)"
  346. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  347. commands:
  348. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  349. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  350. - bazel test --config=ci $(./scripts/bazel_export_options)
  351. --build_tests_only
  352. --test_tag_filters=quick_train,-flaky
  353. --test_env=RAY_USE_MULTIPROCESSING_CPU_COUNT=1
  354. rllib/...
  355. - label: ":brain: RLlib: Trainer Tests"
  356. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  357. commands:
  358. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  359. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  360. # Test all tests in the `agents` (soon to be "trainers") dir:
  361. - bazel test --config=ci $(./scripts/bazel_export_options)
  362. --build_tests_only
  363. --test_tag_filters=trainers_dir,-flaky
  364. --test_env=RAY_USE_MULTIPROCESSING_CPU_COUNT=1
  365. rllib/...
  366. - label: ":brain: RLlib: Everything else (env-, evaluation-, ... dirs)"
  367. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  368. commands:
  369. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  370. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  371. # Test everything that does not have any of the "main" labels:
  372. # "learning_tests|quick_train|examples|tests_dir".
  373. - bazel test --config=ci $(./scripts/bazel_export_options)
  374. --build_tests_only
  375. --test_tag_filters=-learning_tests_tf,-learning_tests_torch,-quick_train,-examples,-tests_dir,-trainers_dir,-flaky
  376. --test_env=RAY_USE_MULTIPROCESSING_CPU_COUNT=1
  377. rllib/...
  378. - label: ":brain: RLlib: Examples {A/B}"
  379. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  380. commands:
  381. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  382. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  383. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only
  384. --test_tag_filters=examples_A,examples_B,-flaky --test_env=RAY_USE_MULTIPROCESSING_CPU_COUNT=1 rllib/...
  385. - label: ":brain: RLlib: Examples {Ca..t}"
  386. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  387. commands:
  388. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  389. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  390. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only
  391. --test_tag_filters=examples_C_AtoT,-flaky --test_env=RAY_USE_MULTIPROCESSING_CPU_COUNT=1 rllib/...
  392. - label: ":brain: RLlib: Examples {Cu..z}"
  393. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  394. commands:
  395. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  396. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  397. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only
  398. --test_tag_filters=examples_C_UtoZ,-flaky --test_env=RAY_USE_MULTIPROCESSING_CPU_COUNT=1 rllib/...
  399. - label: ":brain: RLlib: Examples {D/P}"
  400. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  401. commands:
  402. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  403. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  404. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only
  405. --test_tag_filters=examples_D,examples_E,examples_F,examples_G,examples_H,examples_I,examples_J,examples_K,examples_L,examples_M,examples_N,examples_O,examples_P,-flaky --test_env=RAY_USE_MULTIPROCESSING_CPU_COUNT=1
  406. rllib/...
  407. - label: ":brain: RLlib: Examples {Q/Z}"
  408. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  409. commands:
  410. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  411. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  412. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only
  413. --test_tag_filters=examples_Q,examples_R,examples_S,examples_T,examples_U,examples_V,examples_W,examples_X,examples_Y,examples_Z,-flaky --test_env=RAY_USE_MULTIPROCESSING_CPU_COUNT=1
  414. rllib/...
  415. - label: ":brain: RLlib: tests/ dir (A-L)"
  416. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  417. commands:
  418. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  419. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  420. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only
  421. --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,-flaky --test_env=RAY_USE_MULTIPROCESSING_CPU_COUNT=1
  422. rllib/...
  423. - label: ":brain: RLlib: tests/ dir (M-Z (no R))"
  424. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  425. commands:
  426. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  427. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  428. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only
  429. --test_tag_filters=tests_dir_M,tests_dir_N,tests_dir_O,tests_dir_P,tests_dir_Q,tests_dir_S,tests_dir_T,tests_dir_U,tests_dir_V,tests_dir_W,tests_dir_X,tests_dir_Y,tests_dir_Z,-flaky --test_env=RAY_USE_MULTIPROCESSING_CPU_COUNT=1
  430. rllib/...
  431. - label: ":brain: RLlib: tests/ dir (R)"
  432. conditions: ["RAY_CI_RLLIB_AFFECTED"]
  433. commands:
  434. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  435. - RLLIB_TESTING=1 ./ci/travis/install-dependencies.sh
  436. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only
  437. --test_tag_filters=tests_dir_R,-flaky --test_env=RAY_USE_MULTIPROCESSING_CPU_COUNT=1
  438. rllib/...
  439. - label: ":octopus: Tune tests and examples {1/2}"
  440. conditions: ["RAY_CI_TUNE_AFFECTED"]
  441. commands:
  442. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  443. - TUNE_TESTING=1 ./ci/travis/install-dependencies.sh
  444. - bazel test --config=ci $(./scripts/bazel_export_options) --test_tag_filters=-example,-flaky,-py37,-soft_imports,-gpu_only python/ray/tune/...
  445. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=example,-tf,-pytorch,-py37,-flaky,-soft_imports,-gpu_only python/ray/tune/...
  446. - label: ":octopus: Tune tests and examples {2/2}"
  447. conditions: ["RAY_CI_TUNE_AFFECTED"]
  448. commands:
  449. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  450. - TUNE_TESTING=1 ./ci/travis/install-dependencies.sh
  451. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=tf,-pytorch,-py37,-flaky,-soft_imports,-gpu_only python/ray/tune/...
  452. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=-tf,pytorch,-py37,-flaky,-soft_imports,-gpu_only python/ray/tune/...
  453. - label: ":octopus: Tune soft imports test"
  454. conditions: ["RAY_CI_TUNE_AFFECTED"]
  455. commands:
  456. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  457. # no TUNE_TESTING=1 on purpose
  458. - ./ci/travis/install-dependencies.sh
  459. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=soft_imports python/ray/tune/...
  460. - label: ":steam_locomotive: Train tests and examples"
  461. conditions: ["RAY_CI_TRAIN_AFFECTED"]
  462. commands:
  463. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  464. - SGD_TESTING=1 INSTALL_HOROVOD=1 ./ci/travis/install-dependencies.sh
  465. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=-gpu_only python/ray/train/...
  466. - label: ":octopus: SGD tests and examples"
  467. conditions: ["RAY_CI_SGD_AFFECTED"]
  468. commands:
  469. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  470. - SGD_TESTING=1 INSTALL_HOROVOD=1 ./ci/travis/install-dependencies.sh
  471. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=tf,-pytorch,-py37,-flaky,-client,-gpu_only python/ray/util/sgd/...
  472. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=-tf,pytorch,-py37,-flaky,-client,-gpu_only python/ray/util/sgd/...
  473. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=client_unit_tests,-gpu_only --test_env=RAY_CLIENT_MODE=1 python/ray/util/sgd/...
  474. - label: ":octopus: Tune/SGD/Modin/Dask tests and examples. Python 3.7"
  475. conditions: ["RAY_CI_TUNE_AFFECTED", "RAY_CI_SGD_AFFECTED"]
  476. commands:
  477. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  478. - TUNE_TESTING=1 PYTHON=3.7 INSTALL_HOROVOD=1 ./ci/travis/install-dependencies.sh
  479. # Because Python version changed, we need to re-install Ray here
  480. - rm -rf ./python/ray/thirdparty_files; rm -rf ./python/ray/pickle5_files; ./ci/travis/ci.sh build
  481. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=py37,-flaky,-client python/ray/tune/...
  482. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=-client python/ray/util/xgboost/...
  483. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only python/ray/util/horovod/...
  484. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only python/ray/tests/modin/...
  485. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only python/ray/util/ray_lightning/...
  486. # Dask tests and examples.
  487. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=-client python/ray/util/dask/...
  488. - label: ":octopus: Ludwig tests and examples. Python 3.7"
  489. conditions: ["RAY_CI_TUNE_AFFECTED", "RAY_CI_SGD_AFFECTED"]
  490. commands:
  491. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  492. - SGD_TESTING=1 PYTHON=3.7 INSTALL_LUDWIG=1 INSTALL_HOROVOD=1 ./ci/travis/install-dependencies.sh
  493. # Because Python version changed, we need to re-install Ray here
  494. - rm -rf ./python/ray/thirdparty_files; rm -rf ./python/ray/pickle5_files; ./ci/travis/ci.sh build
  495. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only python/ray/tests/ludwig/...
  496. - label: ":tropical_fish: ML Libraries w/ Ray Client Examples (Python 3.7)."
  497. conditions: ["RAY_CI_TUNE_AFFECTED", "RAY_CI_SGD_AFFECTED"]
  498. commands:
  499. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  500. - TUNE_TESTING=1 PYTHON=3.7 INSTALL_HOROVOD=1 ./ci/travis/install-dependencies.sh
  501. - rm -rf ./python/ray/thirdparty_files; rm -rf ./python/ray/pickle5_files; ./ci/travis/ci.sh build
  502. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=client --test_env=RAY_CLIENT_MODE=1 python/ray/util/dask/...
  503. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=client,-flaky python/ray/tune/...
  504. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=client,-client_unit_tests python/ray/util/sgd/...
  505. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=client,-flaky python/ray/util/xgboost/...
  506. - label: ":potable_water: Workflow & Dataset tests (Python 3.7)"
  507. conditions: ["RAY_CI_PYTHON_AFFECTED"]
  508. commands:
  509. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  510. - DATA_PROCESSING_TESTING=1 PYTHON=3.7 ./ci/travis/install-dependencies.sh
  511. # Because Python version changed, we need to re-install Ray here
  512. - rm -rf ./python/ray/thirdparty_files; rm -rf ./python/ray/pickle5_files; ./ci/travis/ci.sh build
  513. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only python/ray/workflow/... python/ray/data/...
  514. - label: ":book: Doc tests and examples"
  515. conditions:
  516. ["RAY_CI_PYTHON_AFFECTED", "RAY_CI_TUNE_AFFECTED", "RAY_CI_DOC_AFFECTED"]
  517. commands:
  518. - cleanup() { if [ "${BUILDKITE_PULL_REQUEST}" = "false" ]; then ./ci/travis/upload_build_info.sh; fi }; trap cleanup EXIT
  519. - DOC_TESTING=1 ./ci/travis/install-dependencies.sh
  520. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=-tf,-pytorch,-py37,-post_wheel_build doc/...
  521. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=tf,-pytorch,-py37,-post_wheel_build doc/...
  522. - bazel test --config=ci $(./scripts/bazel_export_options) --build_tests_only --test_tag_filters=-tf,pytorch,-py37,-post_wheel_build doc/...