Support multiple release streams in sync release jobs#3083
Support multiple release streams in sync release jobs#3083centosinfra-prod-github-app[bot] merged 1 commit intopackit:mainfrom
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces support for handling multiple upstream versions and tags simultaneously, primarily focusing on Anitya (Release Monitoring) updates. Key changes include updating event models to store lists of versions and tags, modifying the NewHotness event to parse multiple versions from messages, and updating the sync-release logic to iterate over and process each identified release. However, a critical issue was identified in the database association logic within the event classes: the current implementation loops over tags but overwrites the internal database object references in each iteration, meaning only the final tag in a list is correctly associated with the event instance. This could lead to incorrect behavior in downstream tasks that rely on these properties.
|
/gemini review |
|
Build succeeded. ✔️ pre-commit SUCCESS in 1m 58s |
There was a problem hiding this comment.
Code Review
This pull request updates the Anitya event handling to support multiple versions simultaneously, transitioning from a single version string to a versions list across events, models, and handlers. The changes include updating the database models to use AnityaMultipleVersionsModel, adjusting the worker logic to iterate over multiple releases, and updating the test suite to reflect these architectural changes. I have identified two significant issues: first, the run_condition check currently only evaluates the highest version, which could lead to incorrectly skipping jobs for other valid versions; second, there are inconsistencies in the integration test mocking regarding the expected ProjectEventModelType and the relationship between Anitya events and release models.
|
/gemini review |
There was a problem hiding this comment.
Code Review
This pull request refactors Anitya event handling to support multiple upstream versions. It replaces single version attributes with lists across event models, parsers, and handlers, allowing the service to process multiple releases from a single event. The SyncReleaseHandler now iterates through the provided versions to trigger individual sync processes. Feedback includes a suggestion to fix a minor typo in a failure message string.
|
Build succeeded. ✔️ pre-commit SUCCESS in 1m 53s |
|
Build succeeded. ✔️ pre-commit SUCCESS in 1m 55s |
|
✔️ pre-commit SUCCESS in 1m 58s |
Signed-off-by: Nikola Forró <nforro@redhat.com> Assisted-by: Claude Opus 4.6 via Claude Code Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
|
Build succeeded. ✔️ pre-commit SUCCESS in 1m 55s |
|
Build succeeded (gate pipeline). ✔️ pre-commit SUCCESS in 1m 49s |
A few follow-ups to multiple release streams support Related to #3083. Reviewed-by: gemini-code-assist[bot] Reviewed-by: Nikola Forró Reviewed-by: Laura Barcziová
Replaces #3024.
RELEASE NOTES BEGIN
You can now configure multiple
pull-from-upstreamjobs with different version/tag filters. In conjunction with theMonitoring allrelease monitoring option this allows you to consume multiple release streams and freely configure Fedora releases you want to target with each.RELEASE NOTES END