mirror of
https://github.com/XRPLF/clio.git
synced 2025-11-04 20:05:51 +00:00
42 lines
1.1 KiB
Python
Executable File
42 lines
1.1 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
import itertools
|
|
import json
|
|
|
|
LINUX_OS = ["heavy", "heavy-arm64"]
|
|
LINUX_CONTAINERS = [
|
|
'{ "image": "ghcr.io/xrplf/clio-ci:b2be4b51d1d81548ca48e2f2b8f67356b880c96d" }'
|
|
]
|
|
LINUX_COMPILERS = ["gcc", "clang"]
|
|
|
|
MACOS_OS = ["macos15"]
|
|
MACOS_CONTAINERS = [""]
|
|
MACOS_COMPILERS = ["apple-clang"]
|
|
|
|
BUILD_TYPES = ["Release", "Debug"]
|
|
SANITIZER_EXT = [".asan", ".tsan", ".ubsan", ""]
|
|
|
|
|
|
def generate_matrix():
|
|
configurations = []
|
|
|
|
for os, container, compiler in itertools.chain(
|
|
itertools.product(LINUX_OS, LINUX_CONTAINERS, LINUX_COMPILERS),
|
|
itertools.product(MACOS_OS, MACOS_CONTAINERS, MACOS_COMPILERS),
|
|
):
|
|
for sanitizer_ext, build_type in itertools.product(SANITIZER_EXT, BUILD_TYPES):
|
|
configurations.append(
|
|
{
|
|
"os": os,
|
|
"container": container,
|
|
"compiler": compiler,
|
|
"sanitizer_ext": sanitizer_ext,
|
|
"build_type": build_type,
|
|
}
|
|
)
|
|
|
|
return {"include": configurations}
|
|
|
|
|
|
if __name__ == "__main__":
|
|
print(f"matrix={json.dumps(generate_matrix())}")
|