CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
43 lines
1.3 KiB
Python
43 lines
1.3 KiB
Python
"""
|
|
DTLTO Mock Distributor.
|
|
|
|
This script acts as a mock distributor for Distributed ThinLTO (DTLTO). It is
|
|
used for testing DTLTO when a Clang binary is not be available to invoke to
|
|
perform the backend compilation jobs.
|
|
|
|
Usage:
|
|
python mock.py <input_file1> <input_file2> ... <json_file>
|
|
|
|
Arguments:
|
|
- <input_file1>, <input_file2>, ... : Input files to be copied.
|
|
- <json_file> : JSON file describing the DTLTO jobs.
|
|
|
|
The script performs the following:
|
|
1. Reads the JSON file containing job descriptions.
|
|
2. For each job copies the corresponding input file to the output location
|
|
specified for that job.
|
|
3. Validates the JSON format using the `validate` module.
|
|
"""
|
|
|
|
import sys
|
|
import json
|
|
import shutil
|
|
from pathlib import Path
|
|
import validate
|
|
|
|
if __name__ == "__main__":
|
|
json_arg = sys.argv[-1]
|
|
input_files = sys.argv[1:-1]
|
|
|
|
# Load the DTLTO information from the input JSON file.
|
|
with Path(json_arg).open() as f:
|
|
data = json.load(f)
|
|
|
|
# Iterate over the jobs and create the output
|
|
# files by copying over the supplied input files.
|
|
for job_index, job in enumerate(data["jobs"]):
|
|
shutil.copy(input_files[job_index], job["outputs"][0])
|
|
|
|
# Check the format of the JSON.
|
|
validate.validate(data)
|