[Blueprints] Allow skipping plugin install failures - #3853
Merged
Conversation
adamziel
force-pushed
the
add/plugin-install-on-error
branch
from
July 1, 2026 12:57
0f358ec to
d06d498
Compare
adamziel
marked this pull request as ready for review
July 1, 2026 13:53
adamziel
force-pushed
the
add/plugin-install-on-error
branch
from
July 1, 2026 13:55
d06d498 to
d3c1c16
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What?
Adds
installPlugin.options.onErrorwith two modes:throwskip-pluginAlso adds
installPlugin.options.humanReadableNameso skipped plugin warnings and progress text can use a useful display name when the source filename or URL is not readable.Why?
Some Blueprints install optional plugins, especially compatibility-testing Blueprints that target nightly or beta WordPress/PHP combinations. In those cases, one incompatible plugin should be visible in logs without preventing the rest of the environment from booting.
This keeps the default behavior strict and only changes execution when the Blueprint explicitly opts in with
skip-plugin.Consumers
onError: "skip-plugin"from the v2 spec to the existinginstallPluginstep.installPlugin.options.onError.Tests
npm exec nx run playground-blueprints:build:blueprint-schemanpm exec nx run playground-blueprints:test:vite -- --testFiles=packages/playground/blueprints/src/tests/steps/install-plugin.spec.tsnpm exec nx run playground-blueprints:test:vite -- --testFiles=packages/playground/blueprints/src/tests/v1/compile.spec.tsnpm exec nx run playground-blueprints:lintnpm exec nx run playground-blueprints:typecheckgit diff --check