-
Notifications
You must be signed in to change notification settings - Fork 5
fix: ci build failures php containers #28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
WalkthroughChanges update GitHub workflows by adding error tolerance to the build-php job, upgrading docker/build-push-action from v5 to v6, and modifying the WP-CLI Docker build stage to install doctor-command via git URL instead of the published package. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Suggested labels
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This comment was marked as off-topic.
This comment was marked as off-topic.
✅ Actions performedReview triggered.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
.github/workflows/deploy.yml (1)
39-39: Version mismatch:test.ymlusesdocker/build-push-action@v6butdeploy.ymlstill usesv5.The test workflow was upgraded to v6 (lines 35, 80 in test.yml), but the deploy workflow remains on v5. This inconsistency means tests run with different action behavior than production deployments. Align both workflows to the same version.
Suggested fix
- name: Build PHP Docker image - uses: docker/build-push-action@v5 + uses: docker/build-push-action@v6 with:- name: Push PHP Docker image if: success() - uses: docker/build-push-action@v5 + uses: docker/build-push-action@v6 with:Same change needed for lines 105 and 133 (OpenLiteSpeed builds).
Also applies to: 66-66
🤖 Fix all issues with AI agents
In @.github/workflows/deploy.yml:
- Line 22: The workflow currently sets continue-on-error: true which should only
be temporary; change the key (continue-on-error) back to false (or remove it) so
failed PHP-version jobs will fail the deployment, and add a TODO comment
referencing a tracking issue or ticket ID to remove the temporary allowance once
the root cause is fixed; update the deploy.yml entry that defines
continue-on-error to reflect this and include the TODO/issue reference in the
comment.
🧹 Nitpick comments (2)
.github/workflows/deploy.yml (1)
25-25: Remove or uncomment the dead configuration.The commented
#fail-fast: falseserves no purpose. Either uncomment it if you want matrix jobs to continue independently, or remove the line entirely.Suggested fix
strategy: - `#fail-fast`: false + fail-fast: false matrix:php/Dockerfile (1)
17-17: Consider using a package name reference instead of a raw Git URL to enable version pinning.The raw Git URL
https://github.com/wp-cli/doctor-command.gitfetches the latest commit and cannot be pinned to a specific version using inline syntax (:@stable`` or#v0.12.1do not work with Git URLs in wp-cli package install).Use the package name format instead:
Suggested fix
- && wp --allow-root package install https://github.com/wp-cli/doctor-command.git \ + && wp --allow-root package install wp-cli/doctor-command:`@stable` \Or pin to a specific version tag:
- && wp --allow-root package install https://github.com/wp-cli/doctor-command.git \ + && wp --allow-root package install wp-cli/doctor-command:v0.12.1 \
|
|
||
| jobs: | ||
| build-php: | ||
| continue-on-error: true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
continue-on-error: true should be temporary.
This allows broken PHP version builds to be silently ignored in production deployments. While useful for debugging which versions fail, leaving this permanently risks pushing incomplete image sets. Consider adding a TODO comment or tracking issue to remove this once the root cause is fixed.
🤖 Prompt for AI Agents
In @.github/workflows/deploy.yml at line 22, The workflow currently sets
continue-on-error: true which should only be temporary; change the key
(continue-on-error) back to false (or remove it) so failed PHP-version jobs will
fail the deployment, and add a TODO comment referencing a tracking issue or
ticket ID to remove the temporary allowance once the root cause is fixed; update
the deploy.yml entry that defines continue-on-error to reflect this and include
the TODO/issue reference in the comment.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
to be resolved while merging. Currently there for debugging
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ma-04, thanks for the clarification! That makes perfect sense for debugging purposes. I appreciate you planning to address this before merging. If you'd like, adding a TODO comment in the workflow file itself could serve as a helpful reminder during the merge process.
Looking forward to seeing the final fix!

Fix CI build failures for PHP builds.
Main cause
The issue was caused by the following line. Where, when
wp-cliis trying to install the package through git & ssh. But the Alpine image did not have the git/ssh package installed.dockerfiles/php/Dockerfile
Line 15 in 369c70f
Error log
Extra
continue-on-error: trueas a temporary measure to check which php version is failing more oftendocker/build-push-action@v6Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.