Skip to content

ci(pyatlan): mirror the Harbor tag ladder to ghcr.io/atlanhq/pyatlan - #1035

Merged
Aryamanz29 merged 1 commit into
mainfrom
feat/pyatlan-ghcr-mirror
Sep 8, 2026
Merged

ci(pyatlan): mirror the Harbor tag ladder to ghcr.io/atlanhq/pyatlan#1035
Aryamanz29 merged 1 commit into
mainfrom
feat/pyatlan-ghcr-mirror

Conversation

@anurag-atlan

@anurag-atlan anurag-atlan commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

No description provided.

Harbor is being retired and this workflow is the only producer of
registry.atlan.com/public/pyatlan. It already pushes to GHCR in the same
buildx invocation, but under a different name --
ghcr.io/atlanhq/pyatlan-chainguard-base -- so ghcr.io/atlanhq/pyatlan does
not exist at all (an authenticated registry lookup returns 404, against a
control that also returns 404 for a name that was never published).

That flat name is the one the registry gateway resolves. It maps
public/<name> -> atlanhq/<name>, so registry.atlan.com/public/pyatlan
keeps working through the gateway only once ghcr.io/atlanhq/pyatlan
carries the same tags. Without this, the pyatlan reference breaks the
moment the host rule moves off Harbor, and there is nothing to make
public for the consumers that pull it directly -- atlan-python,
agent-toolkit, and external repos.

A mirror rather than a rename, deliberately: pyatlan-chainguard-base is
already published and consumed, and moving it would break those users to
fix a different problem. Both names come out of the one buildx push, so
every reference is the same digest.

The ladder is mirrored suffix for suffix, verified against both build
types: dev gets <version>-<python>-<sha> and sha-<sha>; release gets
<version>-<python>, main-latest, main-<version> and sha-<sha>.

Note for whoever merges: the first run creates the package, and GitHub
creates it private. Making it public is a separate step, and the org
currently disables public package visibility ("Setting is disabled by
organization administrators"), so that policy has to be lifted before
anonymous pulls work -- which is what public/pyatlan offers today.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

@Aryamanz29 Aryamanz29 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM - thanks!

@Aryamanz29
Aryamanz29 merged commit de2500d into main Sep 8, 2026
12 of 13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants