fix(ci): derive image name from $GITHUB_REPOSITORY, not the event payload #7

Merged
claude merged 1 commits from fix/ci-schedule-image-name into main 2026-08-06 10:56:56 -04:00
Contributor

Problem

The weekly cron build has been failing at Build & push:

invalid tag "192.168.0.2:1234/justin/:2026.08.03": invalid reference format

github.event.repository.name is empty on Gitea schedule events (only workflow_dispatch populates the event payload), so the image name collapsed to .../justin/ with no repo. That's exactly why my manual-dispatch refreshes passed but every weekly cron run (#11110, #12829, #14617) failed at the build step — scrape/index/commit all succeeded first, so corpus still updated, but no image shipped.

Fix

  • New Resolve repo identity step derives owner/repo from $GITHUB_REPOSITORY (set on all event types) → steps.repo.outputs.{owner,name}.
  • Reference those in the metadata images, OCI labels, package-link, and prune steps. Drop the now-unused IMAGE env.
  • Same fix applied to image-only.yml (dispatch-only, so not failing today, but same latent bug).

Verification

YAML validates; no remaining github.event.repository.name template refs. Real proof is the next scheduled/dispatched run building a valid .../justin/morpheus-docs:<tag> — I'll dispatch a refresh after merge to confirm green end-to-end.

## Problem The weekly **cron** build has been failing at `Build & push`: ``` invalid tag "192.168.0.2:1234/justin/:2026.08.03": invalid reference format ``` `github.event.repository.name` is **empty on Gitea `schedule` events** (only `workflow_dispatch` populates the event payload), so the image name collapsed to `.../justin/` with no repo. That's exactly why my manual-dispatch refreshes passed but every weekly cron run (#11110, #12829, #14617) failed at the build step — scrape/index/commit all succeeded first, so corpus still updated, but no image shipped. ## Fix - New **`Resolve repo identity`** step derives owner/repo from **`$GITHUB_REPOSITORY`** (set on *all* event types) → `steps.repo.outputs.{owner,name}`. - Reference those in the metadata images, OCI labels, package-link, and prune steps. Drop the now-unused `IMAGE` env. - Same fix applied to `image-only.yml` (dispatch-only, so not failing today, but same latent bug). ## Verification YAML validates; no remaining `github.event.repository.name` template refs. Real proof is the next scheduled/dispatched run building a valid `.../justin/morpheus-docs:<tag>` — I'll dispatch a refresh after merge to confirm green end-to-end.
claude added 1 commit 2026-08-06 10:56:25 -04:00
The weekly cron build has been failing at "Build & push" with:
  invalid tag "192.168.0.2:1234/justin/:2026.08.03": invalid reference format

github.event.repository.name is EMPTY on Gitea `schedule` events (only
workflow_dispatch populates the event payload), so the image name collapsed
to ".../justin/" with no repo — invalid tag. That's why the manual dispatch
runs passed but every weekly cron run failed.

Derive owner/repo from $GITHUB_REPOSITORY (set on all event types) in a new
"Resolve repo identity" step and reference steps.repo.outputs.{owner,name}
in the metadata images, OCI labels, package-link, and prune steps. Drop the
now-unused IMAGE env. Same fix applied to image-only.yml for consistency
(it's dispatch-only so not currently failing, but same latent footgun).

Co-Authored-By: Claude Opus 4.8 <[email protected]>
Claude-Session: https://claude.ai/code/session_01LFowQzJu7k97QLCRDSAeh1
claude merged commit 43d891968e into main 2026-08-06 10:56:56 -04:00
claude deleted branch fix/ci-schedule-image-name 2026-08-06 10:56:56 -04:00
Sign in to join this conversation.