Fix maintenance checker failures and sync upstream config changes#37
Merged
Conversation
DDEV's hosted addon-update-checker now requires the marker in every file listed in install.yaml project_files, including files inside listed directories. config.drupal-code-quality.yaml gets the marker plus a note telling users to remove it when customizing; dcq-packages.json carries it as a JSON key, which all consumers (PHP json_decode, the drift check, and the colon-filtering bash fallback parser) ignore.
Upstream gitlab_templates added 'autorun' to the words injected for environment variable names. Applied via scripts/sync-upstream-configs.sh --update; the DCQ non_project_directories patch is preserved.
Drupal core added eslint-formatter-gitlab and stylelint-checkstyle-formatter, which serialize lint results into GitLab code-quality JSON and Checkstyle XML for CI pipelines. They have no local CLI/IDE use, so instead of adopting them, record them in an 'excluded' map (package -> reason) that the upstream drift check now skips. The check also flags excluded entries that disappear from core so the list can be pruned.
The DDEV add-on update checker is a hosted script whose rules can change without any change in this repo; when that happens on a scheduled run it fails the tests workflow (the tests job needed it), turning the tests badge red for reasons unrelated to the tests. Give the checker its own maintenance-check workflow: it still blocks PRs and pushes to main, where a failure is caused by the change under review, but on scheduled runs it files or updates a labeled issue instead. The new workflow has no markdown paths-ignore because the checker validates README.md content.
The test appended nodejs_version: "16" to .ddev/config.yaml, but ddev config already writes a nodejs_version key and newer DDEV releases reject config files with duplicate mapping keys instead of taking the last value. Replace the existing key in place, appending only if absent.
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
#ddev-generatedmarkers DDEV's addon-update-checker now requires in every file listed ininstall.yamlproject_files, including files inside listed directories.config.drupal-code-quality.yamlgets the marker plus a note telling users to remove it when customizing;dcq-packages.jsoncarries it as a JSON key that all consumers ignore. This fixes the scheduled maintenance-checker failures.prepare-cspell.phpwith upstream gitlab_templates, which addedautorunto the injected flagwords. Applied viascripts/sync-upstream-configs.sh --update; the DCQnon_project_directoriespatch is preserved.dcq-packages.json. Drupal core addedeslint-formatter-gitlabandstylelint-checkstyle-formatter, which serialize lint results into GitLab code-quality JSON and Checkstyle XML for CI pipelines and have no local CLI/IDE use. Instead of adopting them, anexcludedmap (package → reason) documents the decision and the drift check skips them. The check also flags excluded entries that disappear from core so the list can be pruned.maintenance-checkworkflow. It still blocks PRs and pushes to main, where a failure is caused by the change under review, but on scheduled runs it files or updates a labeled issue instead of turning the tests badge red. The checker is a hosted script whose rules can change without any change in this repo, as happened here.Fixes #36
Testing
./scripts/sync-upstream-configs.shreports 10/10 checked files up to date with no package driftDCQ_FULL_TESTS=1) passes locally; parallel runs on the local machine hit a pre-existing ddev-router recreate race unrelated to these changes, so part of the suite was validated serially