ClickHouse/tests/ci/ci_config.py

372 lines
12 KiB
Python
Raw Normal View History

2021-11-12 11:12:42 +00:00
#!/usr/bin/env python3
2022-01-12 12:14:31 +00:00
from typing import Dict, TypeVar
ConfValue = TypeVar("ConfValue", str, bool)
BuildConfig = Dict[str, ConfValue]
2021-11-12 11:12:42 +00:00
CI_CONFIG = {
"build_config": {
"package_release": {
2021-11-12 11:12:42 +00:00
"compiler": "clang-13",
2021-11-12 12:13:13 +00:00
"build_type": "",
2021-11-12 11:12:42 +00:00
"sanitizer": "",
2021-11-12 12:13:13 +00:00
"package_type": "deb",
2021-11-12 11:12:42 +00:00
"bundled": "bundled",
"splitted": "unsplitted",
2022-03-14 21:06:53 +00:00
"additional_pkgs": True,
2021-11-12 11:12:42 +00:00
"tidy": "disable",
2021-12-14 17:47:45 +00:00
"with_coverage": False,
2021-11-12 11:12:42 +00:00
},
"coverity": {
"compiler": "clang-13",
"build_type": "",
"sanitizer": "",
"package_type": "coverity",
"bundled": "bundled",
"splitted": "unsplitted",
"tidy": "disable",
"with_coverage": False,
2022-05-13 17:22:23 +00:00
"official": False,
},
2022-05-10 11:24:20 +00:00
# FIXME update to gcc-12 and turn on
# "binary_gcc": {
# "compiler": "gcc-11",
# "build_type": "",
# "sanitizer": "",
# "package_type": "binary",
# "bundled": "bundled",
# "splitted": "unsplitted",
# "tidy": "disable",
# "with_coverage": False,
# },
2021-12-08 21:52:00 +00:00
"package_aarch64": {
"compiler": "clang-13-aarch64",
"build_type": "",
"sanitizer": "",
"package_type": "deb",
"bundled": "bundled",
"splitted": "unsplitted",
2022-03-14 21:06:53 +00:00
"additional_pkgs": True,
2021-12-08 21:52:00 +00:00
"tidy": "disable",
"with_coverage": False,
},
"package_asan": {
2021-11-12 11:12:42 +00:00
"compiler": "clang-13",
2021-11-12 12:13:13 +00:00
"build_type": "",
2021-11-12 11:12:42 +00:00
"sanitizer": "address",
2021-11-12 12:13:13 +00:00
"package_type": "deb",
2021-11-12 11:12:42 +00:00
"bundled": "bundled",
"splitted": "unsplitted",
"tidy": "disable",
2021-12-14 17:47:45 +00:00
"with_coverage": False,
2021-11-12 11:12:42 +00:00
},
"package_ubsan": {
2021-11-12 11:12:42 +00:00
"compiler": "clang-13",
2021-11-12 12:13:13 +00:00
"build_type": "",
2021-11-12 11:12:42 +00:00
"sanitizer": "undefined",
2021-11-12 12:13:13 +00:00
"package_type": "deb",
2021-11-12 11:12:42 +00:00
"bundled": "bundled",
"splitted": "unsplitted",
"tidy": "disable",
2021-12-14 17:47:45 +00:00
"with_coverage": False,
2021-11-12 11:12:42 +00:00
},
"package_tsan": {
2021-11-12 11:12:42 +00:00
"compiler": "clang-13",
2021-11-12 12:13:13 +00:00
"build_type": "",
2021-11-12 11:12:42 +00:00
"sanitizer": "thread",
2021-11-12 12:13:13 +00:00
"package_type": "deb",
2021-11-12 11:12:42 +00:00
"bundled": "bundled",
"splitted": "unsplitted",
"tidy": "disable",
2021-12-14 17:47:45 +00:00
"with_coverage": False,
2021-11-12 11:12:42 +00:00
},
"package_msan": {
2021-11-12 11:12:42 +00:00
"compiler": "clang-13",
2021-11-12 12:13:13 +00:00
"build_type": "",
2021-11-12 11:12:42 +00:00
"sanitizer": "memory",
2021-11-12 12:13:13 +00:00
"package_type": "deb",
2021-11-12 11:12:42 +00:00
"bundled": "bundled",
"splitted": "unsplitted",
"tidy": "disable",
2021-12-14 17:47:45 +00:00
"with_coverage": False,
2021-11-12 11:12:42 +00:00
},
"package_debug": {
2021-11-12 11:12:42 +00:00
"compiler": "clang-13",
2021-11-12 12:13:13 +00:00
"build_type": "debug",
2021-11-12 11:12:42 +00:00
"sanitizer": "",
2021-11-12 12:13:13 +00:00
"package_type": "deb",
2021-11-12 11:12:42 +00:00
"bundled": "bundled",
"splitted": "unsplitted",
"tidy": "disable",
2021-12-14 17:47:45 +00:00
"with_coverage": False,
2021-11-12 11:12:42 +00:00
},
"binary_release": {
2021-11-12 11:12:42 +00:00
"compiler": "clang-13",
2021-11-12 12:13:13 +00:00
"build_type": "",
2021-11-12 11:12:42 +00:00
"sanitizer": "",
2021-11-12 12:13:13 +00:00
"package_type": "binary",
2022-01-13 12:55:51 +00:00
"static_binary_name": "amd64",
2021-11-12 11:12:42 +00:00
"bundled": "bundled",
"splitted": "unsplitted",
"tidy": "disable",
2021-12-14 17:47:45 +00:00
"with_coverage": False,
},
2021-11-30 12:45:18 +00:00
"binary_tidy": {
2021-11-12 11:12:42 +00:00
"compiler": "clang-13",
2021-11-12 12:13:13 +00:00
"build_type": "debug",
2021-11-12 11:12:42 +00:00
"sanitizer": "",
2021-11-30 12:45:18 +00:00
"package_type": "binary",
2022-01-13 12:55:51 +00:00
"static_binary_name": "debug-amd64",
2021-11-12 11:12:42 +00:00
"bundled": "bundled",
"splitted": "unsplitted",
"tidy": "enable",
2021-12-14 17:47:45 +00:00
"with_coverage": False,
2021-11-12 11:12:42 +00:00
},
"binary_splitted": {
2021-11-12 11:12:42 +00:00
"compiler": "clang-13",
2021-11-12 12:13:13 +00:00
"build_type": "",
2021-11-12 11:12:42 +00:00
"sanitizer": "",
2021-11-12 12:13:13 +00:00
"package_type": "binary",
2021-11-12 11:12:42 +00:00
"bundled": "bundled",
"splitted": "splitted",
"tidy": "disable",
2021-12-14 17:47:45 +00:00
"with_coverage": False,
2021-11-12 11:12:42 +00:00
},
"binary_darwin": {
2021-11-12 11:12:42 +00:00
"compiler": "clang-13-darwin",
2021-11-12 12:13:13 +00:00
"build_type": "",
2021-11-12 11:12:42 +00:00
"sanitizer": "",
2021-11-12 12:13:13 +00:00
"package_type": "binary",
2022-01-13 12:55:51 +00:00
"static_binary_name": "macos",
2021-11-12 11:12:42 +00:00
"bundled": "bundled",
"splitted": "unsplitted",
"tidy": "disable",
2021-12-14 17:47:45 +00:00
"with_coverage": False,
2021-11-12 11:12:42 +00:00
},
"binary_aarch64": {
2021-11-12 11:12:42 +00:00
"compiler": "clang-13-aarch64",
2021-11-12 12:13:13 +00:00
"build_type": "",
2021-11-12 11:12:42 +00:00
"sanitizer": "",
2021-11-12 12:13:13 +00:00
"package_type": "binary",
2022-01-13 12:55:51 +00:00
"static_binary_name": "aarch64",
2021-11-12 11:12:42 +00:00
"bundled": "bundled",
"splitted": "unsplitted",
"tidy": "disable",
2021-12-14 17:47:45 +00:00
"with_coverage": False,
2021-11-12 11:12:42 +00:00
},
"binary_freebsd": {
2021-11-12 11:12:42 +00:00
"compiler": "clang-13-freebsd",
2021-11-12 12:13:13 +00:00
"build_type": "",
2021-11-12 11:12:42 +00:00
"sanitizer": "",
2021-11-12 12:13:13 +00:00
"package_type": "binary",
2022-01-13 12:55:51 +00:00
"static_binary_name": "freebsd",
2021-11-12 11:12:42 +00:00
"bundled": "bundled",
"splitted": "unsplitted",
"tidy": "disable",
2021-12-14 17:47:45 +00:00
"with_coverage": False,
2021-11-12 11:12:42 +00:00
},
"binary_darwin_aarch64": {
2021-11-12 11:12:42 +00:00
"compiler": "clang-13-darwin-aarch64",
2021-11-12 12:13:13 +00:00
"build_type": "",
2021-11-12 11:12:42 +00:00
"sanitizer": "",
2021-11-12 12:13:13 +00:00
"package_type": "binary",
2022-01-13 12:55:51 +00:00
"static_binary_name": "macos-aarch64",
2021-11-12 11:12:42 +00:00
"bundled": "bundled",
"splitted": "unsplitted",
"tidy": "disable",
2021-12-14 17:47:45 +00:00
"with_coverage": False,
2021-11-12 11:12:42 +00:00
},
"binary_ppc64le": {
2021-11-12 11:12:42 +00:00
"compiler": "clang-13-ppc64le",
2021-11-12 12:13:13 +00:00
"build_type": "",
2021-11-12 11:12:42 +00:00
"sanitizer": "",
2021-11-12 12:13:13 +00:00
"package_type": "binary",
"static_binary_name": "powerpc64le",
2021-11-12 11:12:42 +00:00
"bundled": "bundled",
"splitted": "unsplitted",
"tidy": "disable",
2021-12-14 17:47:45 +00:00
"with_coverage": False,
},
},
2021-11-30 15:33:29 +00:00
"builds_report_config": {
"ClickHouse build check (actions)": [
"package_release",
"coverity",
2021-12-08 21:52:00 +00:00
"package_aarch64",
2021-11-30 15:33:29 +00:00
"package_asan",
"package_ubsan",
"package_tsan",
"package_msan",
"package_debug",
2021-12-14 17:47:45 +00:00
"binary_release",
2021-11-30 15:33:29 +00:00
],
"ClickHouse special build check (actions)": [
"binary_tidy",
"binary_splitted",
"binary_darwin",
2021-12-15 07:45:27 +00:00
"binary_aarch64",
2021-11-30 15:33:29 +00:00
"binary_freebsd",
2021-12-15 07:45:27 +00:00
"binary_darwin_aarch64",
"binary_ppc64le",
2022-05-10 11:24:20 +00:00
# "binary_gcc",
2021-11-30 15:33:29 +00:00
],
},
2021-11-12 11:12:42 +00:00
"tests_config": {
2022-01-10 16:45:17 +00:00
# required_build - build name for artifacts
# force_tests - force success status for tests
2021-11-12 11:12:42 +00:00
"Stateful tests (address, actions)": {
"required_build": "package_asan",
2021-11-12 11:12:42 +00:00
},
"Stateful tests (thread, actions)": {
"required_build": "package_tsan",
2021-11-12 11:12:42 +00:00
},
"Stateful tests (memory, actions)": {
"required_build": "package_msan",
2021-11-12 11:12:42 +00:00
},
"Stateful tests (ubsan, actions)": {
"required_build": "package_ubsan",
2021-11-12 11:12:42 +00:00
},
"Stateful tests (debug, actions)": {
"required_build": "package_debug",
2021-11-12 11:12:42 +00:00
},
"Stateful tests (release, actions)": {
"required_build": "package_release",
2021-11-12 11:12:42 +00:00
},
2021-12-20 11:40:27 +00:00
"Stateful tests (aarch64, actions)": {
"required_build": "package_aarch64",
},
2021-11-12 11:12:42 +00:00
"Stateful tests (release, DatabaseOrdinary, actions)": {
"required_build": "package_release",
2021-11-12 11:12:42 +00:00
},
"Stateful tests (release, DatabaseReplicated, actions)": {
"required_build": "package_release",
2021-11-12 11:12:42 +00:00
},
"Stateless tests (address, actions)": {
"required_build": "package_asan",
2021-11-12 11:12:42 +00:00
},
"Stateless tests (thread, actions)": {
"required_build": "package_tsan",
2021-11-12 11:12:42 +00:00
},
"Stateless tests (memory, actions)": {
"required_build": "package_msan",
2021-11-12 11:12:42 +00:00
},
"Stateless tests (ubsan, actions)": {
"required_build": "package_ubsan",
2021-11-12 11:12:42 +00:00
},
"Stateless tests (debug, actions)": {
"required_build": "package_debug",
2021-11-12 11:12:42 +00:00
},
"Stateless tests (release, actions)": {
"required_build": "package_release",
2021-11-12 11:12:42 +00:00
},
2021-12-20 11:40:27 +00:00
"Stateless tests (aarch64, actions)": {
"required_build": "package_aarch64",
},
2021-11-12 11:12:42 +00:00
"Stateless tests (release, wide parts enabled, actions)": {
"required_build": "package_release",
2021-11-12 11:12:42 +00:00
},
"Stateless tests (release, DatabaseOrdinary, actions)": {
"required_build": "package_release",
2021-11-12 11:12:42 +00:00
},
"Stateless tests (release, DatabaseReplicated, actions)": {
"required_build": "package_release",
2021-11-12 11:12:42 +00:00
},
"Stateless tests (release, s3 storage, actions)": {
"required_build": "package_release",
},
2021-11-12 11:12:42 +00:00
"Stress test (address, actions)": {
"required_build": "package_asan",
2021-11-12 11:12:42 +00:00
},
"Stress test (thread, actions)": {
"required_build": "package_tsan",
2021-11-12 11:12:42 +00:00
},
"Stress test (undefined, actions)": {
"required_build": "package_ubsan",
2021-11-12 11:12:42 +00:00
},
"Stress test (memory, actions)": {
"required_build": "package_msan",
2021-11-12 11:12:42 +00:00
},
"Stress test (debug, actions)": {
"required_build": "package_debug",
2021-11-12 11:12:42 +00:00
},
"Integration tests (asan, actions)": {
"required_build": "package_asan",
2021-11-12 11:12:42 +00:00
},
"Integration tests (thread, actions)": {
"required_build": "package_tsan",
2021-11-12 11:12:42 +00:00
},
"Integration tests (release, actions)": {
"required_build": "package_release",
2021-11-12 11:12:42 +00:00
},
"Integration tests (memory, actions)": {
"required_build": "package_msan",
2021-11-12 11:12:42 +00:00
},
"Integration tests flaky check (asan, actions)": {
"required_build": "package_asan",
2021-11-12 11:12:42 +00:00
},
"Compatibility check (actions)": {
"required_build": "package_release",
2021-11-12 11:12:42 +00:00
},
"Split build smoke test (actions)": {
"required_build": "binary_splitted",
2021-11-12 11:12:42 +00:00
},
"Testflows check (actions)": {
"required_build": "package_release",
2021-11-12 11:12:42 +00:00
},
2022-05-10 11:24:20 +00:00
# "Unit tests (release-gcc, actions)": {
# "required_build": "binary_gcc",
# },
2021-11-12 11:12:42 +00:00
"Unit tests (release-clang, actions)": {
2021-11-26 13:37:46 +00:00
"required_build": "binary_release",
2021-11-12 11:12:42 +00:00
},
"Unit tests (asan, actions)": {
"required_build": "package_asan",
2021-11-12 11:12:42 +00:00
},
"Unit tests (msan, actions)": {
"required_build": "package_msan",
2021-11-12 11:12:42 +00:00
},
"Unit tests (tsan, actions)": {
"required_build": "package_tsan",
2021-11-12 11:12:42 +00:00
},
"Unit tests (ubsan, actions)": {
"required_build": "package_ubsan",
2021-11-12 11:12:42 +00:00
},
"AST fuzzer (debug, actions)": {
"required_build": "package_debug",
2021-11-12 11:12:42 +00:00
},
"AST fuzzer (ASan, actions)": {
"required_build": "package_asan",
2021-11-12 11:12:42 +00:00
},
"AST fuzzer (MSan, actions)": {
"required_build": "package_msan",
2021-11-12 11:12:42 +00:00
},
"AST fuzzer (TSan, actions)": {
"required_build": "package_tsan",
2021-11-12 11:12:42 +00:00
},
"AST fuzzer (UBSan, actions)": {
"required_build": "package_ubsan",
2021-11-12 11:12:42 +00:00
},
"Release (actions)": {
"required_build": "package_release",
2021-11-12 11:12:42 +00:00
},
"Stateless tests flaky check (address, actions)": {
"required_build": "package_asan",
2021-11-12 11:12:42 +00:00
},
2022-03-09 11:19:50 +00:00
"Stateless tests bugfix validate check (address, actions)": {
"required_build": "package_asan",
},
2021-11-12 11:12:42 +00:00
"ClickHouse Keeper Jepsen (actions)": {
"required_build": "binary_release",
2021-11-17 09:41:19 +00:00
},
"Performance Comparison": {
"required_build": "package_release",
2022-06-02 14:13:52 +00:00
"test_grep_exclude_filter": "",
2021-12-14 17:47:45 +00:00
},
2022-05-24 19:47:49 +00:00
"Performance Comparison Aarch64": {
"required_build": "package_aarch64",
2022-06-02 14:13:52 +00:00
"test_grep_exclude_filter": "constant_column_search",
2022-05-24 19:47:49 +00:00
},
2021-12-14 17:47:45 +00:00
},
2022-01-12 12:14:31 +00:00
} # type: dict