Fix multi-release retries#3147
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces retry_tag and retry_version parameters to Celery tasks and handlers to track retried versions and tags, ensuring that only the failed version reuses the existing SyncReleaseModel run during a multi-version release retry. An integration test was also added to verify this behavior. The reviewer identified a potential backward compatibility issue during deployment transitions, where older tasks in the Celery queue lacking these new parameters would fail to reuse the run ID, and provided a code suggestion to handle this case.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
|
Build succeeded. ✔️ pre-commit SUCCESS in 1m 52s |
|
/gemini review |
There was a problem hiding this comment.
Code Review
This pull request introduces support for retrying specific versions and tags in multi-version release syncs by adding retry_tag and retry_version parameters to the handlers and tasks. This ensures that only the failed version reuses its SyncReleaseModel on retry, while other versions create new models. A new integration test has been added to verify this behavior. The feedback suggests adding a Google-style docstring and proper type hints to the _get_or_create_sync_release_run method in distgit.py to comply with the repository style guide.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
|
Build succeeded. ✔️ pre-commit SUCCESS in 1m 50s |
Signed-off-by: Nikola Forró <nforro@redhat.com> Assisted-by: Claude Opus 4.6 via Claude Code
|
/gemini review |
|
Build succeeded. ✔️ pre-commit SUCCESS in 1m 53s |
There was a problem hiding this comment.
Code Review
This pull request introduces support for handling retries in multi-version sync release runs. It adds retry_tag and retry_version parameters to the dist-git handlers and tasks, ensuring that during a retry, the existing SyncReleaseModel is only reused if the tag and version match the retry parameters, while other versions in a multi-version run correctly create their own models. Additionally, an integration test test_retry_pull_from_upstream_multi_version has been added to verify this behavior. There are no review comments, and I have no further feedback to provide.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
|
Build succeeded (gate pipeline). ✔️ pre-commit SUCCESS in 1m 51s |
Related to packit/specfile#542.
RELEASE NOTES BEGIN
When a package is configured to consume mutiple release streams and release-monitoring.org detects multiple releases at the same time, if a pull-from-upstream job run for one released version fails, only that one is retried and the rest are unaffected and properly processed. Before this fix it could happen that a failed job run for one released version could prevent other released versions from being processed at all.
RELEASE NOTES END