Proposal: defer GitHub Actions publish until a platform build completes
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 20
- Forks
- 24
- Avg merge
- 1d 16h
- Merged PRs (30d)
- 17
Description
Hi, while looking into partial-update dependency conflicts in downstream RoboStack channels, I wondered whether generated GitHub Actions workflows may be publishing a platform too early.
From what I can tell, packages can currently be uploaded while only part of a platform's dependency graph has finished building. For large ROS distributions, that seems likely to expose a partially updated platform state for some period of time.
Would you be open to an optional generator-level mode that defers upload until the full platform build has completed successfully?
A possible approach would be:
- keep the current behavior as the default
- add an opt-in mode such as
platform-finalize - in that mode, batch jobs only build and upload workflow artifacts
- add a final per-platform publish job that downloads those artifacts and uploads them only after the required build jobs succeed
I have a local prototype in progress that follows this pattern, and it seems compatible with GitHub Actions' documented needs and artifact flow. If this is the wrong layer or there is already a preferred mechanism, I would appreciate the correction.
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 generator's GitHub Actions workflow output and the local prototype mentioned in the issue. Trace how batch jobs build and upload artifacts, then determine how an opt-in platform-finalize mode could add a per-platform publish job using needs and artifacts. Done means the default behavior is unchanged and the optional mode publishes only after the full platform build succeeds.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, python
- Domain
- build-system, ci-cd
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100