Skip to content

feat(thar-be-registries): add configurable capabilities per registry mirror #903

@tim-mcdonald

Description

@tim-mcdonald

Summary

thar-be-registries currently hardcodes ["pull", "resolve"] capabilities for all registry mirror endpoints. This blocks tools like Spegel that require pull-only mirrors. containerd 2.1's transfer service fails when Spegel's DHT hasn't initialized if resolve is also requested.

See the upstream tracking issue: bottlerocket-os/bottlerocket#4710

Proposed change

Add an optional capabilities field to the Mirror settings type and a resolve_capabilities helper in thar-be-registries that maps the configured values to containerd's Capability enum, defaulting to ["pull", "resolve"] when unset for backward compatibility.

Depends on bottlerocket-os/bottlerocket-settings-sdk#134 which adds the capabilities field to RegistryMirrorV1.

I have a PR ready to submit.

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