Skip to content

ci(test): first try pr as rfay - #46

Open
rfay wants to merge 6 commits into
ddev-test:mainfrom
rfay:20260821_test_fork_pr_image
Open

ci(test): first try pr as rfay#46
rfay wants to merge 6 commits into
ddev-test:mainfrom
rfay:20260821_test_fork_pr_image

Conversation

@rfay

@rfay rfay commented Aug 21, 2026

Copy link
Copy Markdown
Member

Short Summary (TL;DR)

Test PR against

This should not require auth, but should build ddev-traefik-router

…authorized authors [skip ci]

Moves the maintainer approval for a fork PR's image build/push from after the build finishes to right after detect knows a build is needed, and skips it entirely when the PR author already has push access to the repo.

Follow-up to ddev#8707. Two rough edges in the fork-PR image build/push flow:

1. The approval gate lived in image-push.yml, triggered via workflow_run only after the entire (often multi-minute, multi-arch) fork build finished. A maintainer had no visibility into the pending approval until well after it was actually knowable.
2. A maintainer's own fork PR (author_association OWNER/MEMBER/COLLABORATOR) still had to wait on the same approval as an unknown external contributor, even though they already have push access.

- image-build-push.yml's detect job gains an `is_authorized` output (from `github.event.pull_request.author_association`) alongside the existing `is_fork`.
- A new `approve` job runs right after detect, gated on the `image-push` environment, only when the PR is from a fork and the author is not authorized. The `build` job now depends on it.
- image-push.yml no longer has its own approval gate — by the time an artifact exists to push, image-build-push.yml's `approve` job already required sign-off.
- Updated the workflow header comments and the two docs pages (building-contributing.md, release-management.md) that described the old flow.
- Added a bullet to CLAUDE.md's Comments section: write comments as a plain description of the current design, not framed relative to what changed.

- `actionlint .github/workflows/image-build-push.yml .github/workflows/image-push.yml` passes clean.
- Open a PR from an external fork that touches `containers/**`: confirm the `image-push` environment approval request appears as soon as the "Image build" workflow's `detect` job completes, not after `build` finishes.
- Open a PR from a maintainer's own fork: confirm no approval is requested and the image still builds and pushes via the existing fork-safe split.
- Open a same-repo PR or push to main: confirm behavior is unchanged (no gate, direct build-and-push).

No new automated tests — this is GitHub Actions workflow orchestration, validated with actionlint and manual PR runs as described above.

No user-facing behavior change. Affects only the internal container image build/push CI flow for ddev/ddev.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@rfay
rfay deployed to image-push August 21, 2026 12:06 — with GitHub Actions Active
@github-actions

Copy link
Copy Markdown

Pushed updated container image(s) for this PR:

  • ddevhq/ddev-traefik-router:645b5f613c

@rfay
rfay force-pushed the 20260821_test_fork_pr_image branch from 5e3c6b6 to 22476d2 Compare August 21, 2026 12:11
@rfay
rfay deployed to image-push August 21, 2026 12:12 — with GitHub Actions Active
@github-actions

Copy link
Copy Markdown

Pushed updated container image(s) for this PR:

  • ddevhq/ddev-traefik-router:5e640b4380

@github-actions

github-actions Bot commented Aug 21, 2026

Copy link
Copy Markdown

@rfay
rfay force-pushed the 20260821_test_fork_pr_image branch from 22476d2 to fc0db77 Compare August 21, 2026 12:47
@rfay rfay changed the title first try pr as rfay ci(test): first try pr as rfay Aug 21, 2026
@rfay
rfay force-pushed the 20260821_test_fork_pr_image branch from fc0db77 to 0656472 Compare August 21, 2026 12:55
@github-actions

Copy link
Copy Markdown

Pushed updated container image(s) for this PR:

  • ddevhq/ddev-traefik-router:49c52cbcb6

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant