Skip to content

Publish each PHP version even when another version's test fails - #49

Merged
rick-lam merged 1 commit into
masterfrom
48/publish-each-version
Oct 22, 2026
Merged

rick-lam merged 1 commit into
masterfrom
48/publish-each-version

Conversation

@rick-lam

Copy link
Copy Markdown
Contributor

Summary

Fixes #48

The build and manifest jobs need every version's test to pass, so one failing version blocks publishing for all of them. pecl.php.net is currently returning bad REST data for the 5.6, 7.0, 7.1, 7.2, 8.3 and 8.4 builds (a re-run failed the same way), which blocks the PHP 7.4 security fix in #47 even though its 7.4 test passes.

Notable Changes

  • build and manifest now run with !cancelled() && needs.matrix.result == 'success' added to their existing master-push condition, so each version builds and publishes on its own.
  • A version whose PECL install still fails just fails its own build job; its manifest job then finds no digests and fails, without affecting the others.
  • Trade-off: a push to master no longer waits for every version's test. Every PR still runs all the tests, as Patch PHP 7.4 for CVE-2026-109618 and CVE-2026-109619 on Alpine 3.15 #47 did.

QA

Deployment

None. Merge before #47 so its merge publishes graze/php-alpine:7.4.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Uugex1w8qZoTbBRbcFwkcp

The build and manifest jobs needed every test in the matrix to pass, so
one failing version stopped every version from publishing. Since 22 Oct
2026 pecl.php.net returns bad REST data for the 5.6, 7.0, 7.1, 7.2, 8.3
and 8.4 builds, which blocks the PHP 7.4 security fix in #47 even though
its own test passes.

With !cancelled() each version builds and publishes on its own. A version
whose build breaks fails only its own build and manifest jobs. Every PR
still runs all the tests.

Fixes #48

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Uugex1w8qZoTbBRbcFwkcp
Copilot AI balanced review requested due to automatic review settings October 22, 2026 04:00
@rick-lam rick-lam self-assigned this Oct 22, 2026
@rick-lam
rick-lam merged commit abbc9ae into master Oct 22, 2026
8 of 14 checks passed
@rick-lam
rick-lam deleted the 48/publish-each-version branch October 22, 2026 04:02

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟡 Changes recommended

A partially successful architecture build can overwrite published tags with an incomplete platform set.

1 open issue
What changed in this PR

This PR addresses #48 by allowing PHP image publishing to continue when another version fails, unblocking releases such as the PHP 7.4 security update in #47.

Changes:

  • Updates build and manifest conditions to allow execution after dependency failures, provided matrix generation succeeds and the workflow is not cancelled.
  • Preserves existing dependencies and restricts publishing to pushes to master.
File Description
.github/​workflows/​build.yml Adjusts build and manifest job conditions to permit publishing despite failures elsewhere in the matrix.

Review effort: Balanced

Comment thread .github/workflows/build.yml
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.

Publish each PHP version even when another version's test fails

2 participants