Retry on Fedora CI Koji build submission failure#3040
Conversation
Fixes packit#3003 Assisted-by: Claude Opus 4.6 <noreply@anthropic.com>
|
Build succeeded. ✔️ pre-commit SUCCESS in 1m 50s |
There was a problem hiding this comment.
Code Review
This pull request introduces retry logic for Fedora CI Koji scratch build submissions, which is a great improvement for handling transient failures like network issues or temporary Koji outages. The implementation uses exponential backoff for retries and correctly reports the pending status to the user. The new integration test effectively verifies this retry mechanism. I have one suggestion to improve the retry logging.
Note: Security Review did not run due to the size of the PR.
| url=get_koji_build_info_url(koji_build.id), | ||
| ) | ||
| kargs = self.celery_task.task.request.kwargs.copy() | ||
| self.celery_task.retry(delay=interval * 60, kargs=kargs) |
There was a problem hiding this comment.
It's good practice to pass the exception to the retry call. This helps with logging and debugging, as Celery will log the exception that caused the retry.
| self.celery_task.retry(delay=interval * 60, kargs=kargs) | |
| self.celery_task.retry(ex=ex, delay=interval * 60, kargs=kargs) |
References
- All errors and exceptions should be logged, with sufficient information for administrators to begin triage. (link)
|
Build succeeded (gate pipeline). ✔️ pre-commit SUCCESS in 1m 46s |
Fixes #3003
Assisted-by: Claude Opus 4.6 noreply@anthropic.com
RELEASE NOTES BEGIN
Packit now retries on build submission failure for Fedora CI Koji scratch builds.
RELEASE NOTES END