From 223eb00f15154e1be27d508fc07e4e4ce64c6758 Mon Sep 17 00:00:00 2001 From: Khaliq Date: Tue, 11 Aug 2026 00:24:19 +0200 Subject: [PATCH] fix(ci): lowercase the GHCR owner in the image name The first publish run failed at buildx: invalid tag "ghcr.io/AgentWorkforce/relaycast-self-host:8.0.0": repository name must be lowercase `github.repository_owner` is `AgentWorkforce`, and buildx rejects a mixed-case repository name rather than normalising it. Lowercased once into an env var and used for both tags and the summary. The tag-vs-pinned-version guard ran and passed before this, so that check is working; only the image name was wrong. Co-Authored-By: Claude Opus 5 --- .github/workflows/publish-container.yml | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/.github/workflows/publish-container.yml b/.github/workflows/publish-container.yml index a9747849..4acd8134 100644 --- a/.github/workflows/publish-container.yml +++ b/.github/workflows/publish-container.yml @@ -57,6 +57,11 @@ jobs: # The tag must match the engine version the image actually installs. # Version skew between the two ends of a federation is the run-stopper a # dry run exists to catch, so it is checked here rather than trusted. + # GHCR repository names must be lowercase, and the org is "AgentWorkforce". + # buildx rejects the tag outright rather than normalising it. + - name: Lowercase the owner for the image name + run: echo "OWNER_LC=${GITHUB_REPOSITORY_OWNER,,}" >> "$GITHUB_ENV" + - name: Verify the tag matches the pinned engine version env: TAG: ${{ inputs.tag }} @@ -78,12 +83,12 @@ jobs: push: true build-args: RELAYCAST_ENGINE_VERSION=${{ inputs.tag }} tags: | - ghcr.io/${{ github.repository_owner }}/relaycast-self-host:${{ inputs.tag }} - ${{ inputs.latest && format('ghcr.io/{0}/relaycast-self-host:latest', github.repository_owner) || '' }} + ghcr.io/${{ env.OWNER_LC }}/relaycast-self-host:${{ inputs.tag }} + ${{ inputs.latest && format('ghcr.io/{0}/relaycast-self-host:latest', env.OWNER_LC) || '' }} - name: Report the immutable reference env: - OWNER: ${{ github.repository_owner }} + OWNER: ${{ env.OWNER_LC }} TAG: ${{ inputs.tag }} DIGEST: ${{ steps.push.outputs.digest }} run: |