Skip to content

Epic: package registry — AWS CodeArtifact (+ ECR pull-through cache) — implement ADR-098 #1249

Description

@gangster

Implement the package-registry decision recorded in ADR-098 (docs/adrs/098-package-registry-codeartifact.md, PR #1248).

Goal

Give the platform a first-class language-package registry (the sibling to ECR for OCI), plus a public-Docker mirror, without a self-hosted registry — reusing the existing IAM / Pod-Identity / GitHub-OIDC auth model.

Shape (from ADR-098)

  • CodeArtifact — one domain in the platform account, cross-account read, per-Team/Product repos, upstream connections proxying+caching public repos (npmjs / PyPI / Maven Central / NuGet / …).
  • ECR pull-through cache for docker.io / ghcr.io / quay.io / registry.k8s.io — closes the Docker-mirror gap natively (no new tool).
  • Auth reuses the model — Pod Identity (runtime read) + GitHub OIDC (CI publish); no local users, no SSO surface.
  • Derive per-Product scoping from the Product registry (ADR-069), consistent with ecr/policy/github-oidc.

Workstreams

Deferred (ADR-098 D5)

  • Go modules — CodeArtifact doesn't serve them. Follow-up spike: Athens GOPROXY vs. accepting direct GOPROXY (already used for crank). Not in this epic's scope.

Decision record: ADR-098. Sibling: ADR-028 (ECR).

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/infraGeneral IaC / AWS platform infrastructurearea/supply-chaincosign, SLSA, CI provenance, image signingenhancementNew feature or requestepicUmbrella/tracking issue spanning multiple work items

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions