fix(ci): switch Woodpecker image push to internal Harbor URL #5
Labels
No labels
domain:backend
domain:devops
domain:frontend
status:approved
status:in-progress
status:needs-fix
status:qa
type:bug
type:devops
type:feature
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
ldraney/notion-mcp-remote#5
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Type
Bug
Lineage
Standalone — surfaced during deploy scoping for
project-notion-mcp-remote. SOP violation identified by cross-referencing.woodpecker.yamlagainstservice-onboarding-sop→ Pre-Deploy Validation Checklist row "CI registry URL".Repo
forgejo_admin/notion-mcp-remoteWhat Broke
.woodpecker.yaml:15pushes images toharbor.tail5b443a.ts.net(the external Tailscale-routed URL). SOP requires the internal cluster URL (harbor-core.harbor.svc.cluster.local). External URL routes through the Tailscale DERP relay and is unreliable from inside the cluster — causes intermittent CI failures on image push.Offending snippet:
Repro Steps
mainon notion-mcp-remotebuild-and-pushstep attempt to push toharbor.tail5b443a.ts.netExpected Behavior
Pipeline pushes the image to
harbor-core.harbor.svc.cluster.local(or$HARBOR_INTERNALenv var if defined on the Woodpecker agent). No references to the external Harbor URL in.woodpecker.yaml. SOP-compliant behavior.Environment
837e2f2(main HEAD)Acceptance Criteria
.woodpecker.yamlregistry value isharbor-core.harbor.svc.cluster.local(or$HARBOR_INTERNAL)harbor.tail5b443a.ts.netin.woodpecker.yamlRelated
project-notion-mcp-remoteservice-onboarding-sop(Pre-Deploy Validation Checklist → "CI registry URL" row)story-notion-mcp-remote-ops-deploy-gitopsScope Review: APPROVED
Review note:
review-1042-2026-04-21Scope is solid: bug template complete,
.woodpecker.yamlfile target verified, SOP violation confirmed againstservice-onboarding-sop→ Pre-Deploy Validation → "CI registry URL" row. Single-file, single-line fix with testable ACs. Ready to advance from backlog to next_up.Minor notes for the implementing agent (non-blocking):
.woodpecker.yaml:15; the actual offending line is:22(the quoted snippet makes the target unambiguous).k8s/deployment.yaml:23also references the external Harbor URL, but that's the runtime image pull — out of scope for this CI-push bug. Do NOT expand scope; file a separate ticket if that needs changing.harbor-core.harbor.svc.cluster.local). If it runs externally, fall back to$HARBOR_INTERNALenv var as already noted in Expected Behavior.