oxidecomputer / oxidecomputer/buildomat
jobs could depend on the prior upload of specific published files
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 72
- Forks
- 5
- PR merge metrics
- No merged PRs in 30d
Description
Today, a job created through the GitHub integration can depend on other jobs (by name) from the same CI run on the same commit.
If a job on a branch (e.g., for a pull request) needs access to a published file from the latest commit on another branch (e.g., master) for some sort of comparison, one would currently have to poll for those published files. When the files are not available, there is no particularly detailed feedback available as to why: perhaps a job is running that will eventually publish them, or perhaps the job has completed but did not publish the expected files.
It would be good if a job could specify, as a new sort of input dependency:
- a branch of the same repository for which the CI job is running; e.g., master
- the series and name of the published file (e.g., phd_build, propolis-server.tar.gz)
At a minimum we could hold the job in the waiting state until such a file is published. We may (currently or eventually) also be able to determine to some level of certainty whether such a published file can emerge later, though this will require sorting out a few other things around file publishing that are still a bit nascent today (e.g., see #10).
We could also conceivably arrange to download the file automatically, as we do with output artefacts from dependent jobs today.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the GitHub integration's job dependency handling and the published-file behavior described in the issue, then read the related concerns in #10. Done would mean jobs can declare a branch, series, and published-file name as a dependency and wait with useful feedback until that file is available.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- build-system, ci-cd
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100