Add artifact manager script for downloading toolchains #677
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
artifact_managerfor downloading toolchain artifacts used by stage 2 builds.This will replace the fetch functionality in
monorepo_build.pyand be used by all clang jobs in the future, both the mainline (standard post merge jobs which exist now) and the bisection jobs (jobs which will be setup to mimic the mainline jobs in a separate folder)The script will search for a stage1 build of both the mainline and bisection version of the job if needed and download the appropriate package. This saves on build time as we can utilize already built stage 1 packages. If no stage 1 artifact exist, the data is written to a props file and the CI system will fire off a stage 1 build accordingly.
This handles all of the logic around determining which toolchain package to download making it simple for CI libraries in the future to invoke the script as such:
By extracting the logic to the python scripts we can make the functionality portable across CI systems.