Skip to content

Retry transient registry failures during image preparation #2466

Description

@HarshwardhanPatil07

Problem

The image preparation step is still not retried. prepare_for_pull() fetches the manifest through OpenImage, which can fail transiently because of DNS, TCP, or registry errors.

For example:

failed to invoke method OpenImage: fetching manifest:
dial tcp ...:443: connect: connection refused

containers-image-proxy-rs currently reports this as an opaque RequestInitiationFailure. bootc cannot safely distinguish transient network failures from permanent failures such as:

  • missing images or manifests
  • invalid image references
  • signature-policy rejection
    Retrying every RequestInitiationFailure would unnecessarily delay permanent errors.

Desired behavior

bootc should apply its bounded registry retry policy to transient failures during image preparation as well as blob downloads, while returning permanent failures immediately.
This likely requires typed retryability information from containers-image-proxy-rs instead of parsing error strings.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions