ci: migrate to reusable PHP CI workflows#36
Merged
Conversation
Replace inlined workflows with thin callers of openCoreEMR/github-workflows-public@0.0.4, matching the pattern established by openCoreEMR/oce-module-perspectives-scribe#8. Migrated: actionlint, composer-normalize, composer-validate, conventional-pr-title, dclint, php-syntax-check, phpcs, phpstan, phpunit, rector. Each caller pins the reusable to @0.0.4 and adds the path filters recommended by the github-workflows-public README. Skipped (CLI-specific or already migrated): build-phar.yml, build-phar-on-release.yml, release-please.yml. NOTE — phpunit matrix narrowed: previously this workflow ran on PHP 8.2/8.3/8.4. The new caller uses php-versions ["8.2"] only, matching the directive in the migration plan. If we want to keep the wider matrix, change php-versions to ["8.2","8.3","8.4"] before merge. composer phpstan still bootstraps tools/openemr/vendor itself, so the reusable does not need a second install step.
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.
Summary
Replace inlined CI workflows with thin callers of
openCoreEMR/github-workflows-public@0.0.4, matching the pattern established by openCoreEMR/oce-module-perspectives-scribe#8.Migrated
actionlint.ymlactionlint.ymlcomposer-normalize.ymlphp-composer-script.yml(composer normalize --dry-run)composer-validate.ymlphp-composer-script.yml(composer validate --strict,install-deps: false)conventional-pr-title.ymlconventional-pr-title.ymldclint.ymldclint.ymlphp-syntax-check.ymlphp-composer-script.yml(composer php-lint,install-deps: false)phpcs.ymlphp-composer-script.yml(composer phpcs)phpstan.ymlphp-composer-script.yml(composer phpstan)phpunit.ymlphp-tests.yml(php-versions: ["8.2"])rector.ymlphp-composer-script.yml(composer rector)Every
php-composer-scriptcaller pinsphp-version: '8.2'(the reusable's default) so the file is self-documenting. Each caller also adds thepaths:filter the github-workflows-public README recommends for that check.Stayed inlined
build-phar.yml,build-phar-on-release.yml— CLI-specific PHAR build, no reusable counterpart yet.release-please.yml— already migrated separately.Notes / behavior changes
phpunitmatrix narrowed. The previous inlined workflow ran on PHP 8.2, 8.3, and 8.4. The new caller usesphp-versions: '["8.2"]'only, per the migration plan. If you want to preserve the wider matrix, change to'["8.2","8.3","8.4"]'before merge.composer phpstanscript self-installstools/openemr/vendor(pertools/openemr/README.md), so the reusable's single rootcomposer installpluscomposer phpstancovers what the previous workflow did with two explicit install steps.Test plan
phpunitback to 8.2/8.3/8.4 before merge