Problem/Motivation
Currently, the CI pipeline for the migrate_queue_importer module allows failures for several validate stage jobs, which can cause code quality issues to go unnoticed. In particular, jobs such as composer-lint, phpcs, phpstan, stylelint, eslint, and even PHPUnit (if configured to allow failures) do not enforce strict success criteria. To ensure all issues are caught before merging, these jobs should be set to fail the pipeline when errors occur.
Steps to reproduce
- Fork or clone the migrate_queue_importer repository.
- Open the
.gitlab-ci.yml
file in the repository root.
- Review the settings for validate stage jobs (e.g., composer-lint, phpcs, phpstan, stylelint, eslint, and PHPUnit if available).
- Notice that these jobs are either not configured with
allow_failure: false
or are explicitly set to allow failures.
Proposed resolution
Update the .gitlab-ci.yml
file to enforce that all validate stage jobs (including PHPUnit) do not allow failures.
composer-lint:
allow_failure: false
phpcs:
allow_failure: false
phpstan:
allow_failure: false
stylelint:
allow_failure: false
eslint:
allow_failure: false
phpunit:
allow_failure: false
This change ensures that any failure in linting, static analysis, CSS style checks, JavaScript linting, or running PHPUnit tests will cause the CI pipeline to fail and block merging until the issue is resolved.
Remaining tasks
- Create a merge request with the updated
.gitlab-ci.yml
changes.
- Run CI to ensure that the updated configuration correctly fails on errors.
- Verify that local and CI test suites catch issues when they occur.
- Update any developer documentation regarding the strict CI requirements if necessary.
User interface changes
No user interface changes are involved; this update affects only the continuous integration configuration.
Introduced terminology
No new terminology is introduced.
API changes
No API changes are required by this update.
Data model changes
There are no changes to data models in this update.
Release notes snippet
CI validation jobs (composer-lint, phpcs, phpstan, stylelint, eslint, and PHPUnit) are now configured to not allow failures. This change enforces stricter code quality controls and prevents merging code that does not pass all validate stage checks.