From 452e14c4014cfc01d20bfdc2b9a0736c52ae0c4a Mon Sep 17 00:00:00 2001 From: tedbow <tedbow@240860.no-reply.drupal.org> Date: Fri, 13 Aug 2021 22:56:01 +0000 Subject: [PATCH] Issue #3228101 by tedbow, Wim Leers: Run core standards checks on drupalci --- automatic_updates.info.yml | 4 +- drupalci.yml | 73 +++++++++++++++++++ .../new_project_added/active/composer.lock | 4 +- .../new_project_added/staged/composer.lock | 8 +- .../no_errors/active/composer.lock | 4 +- .../no_errors/staged/composer.lock | 4 +- .../project_removed/active/composer.lock | 4 +- .../project_removed/staged/composer.lock | 4 +- .../version_changed/active/composer.lock | 4 +- .../version_changed/staged/composer.lock | 4 +- .../automatic_updates_test.info.yml | 1 - .../automatic_updates_test2.info.yml | 1 - tests/src/Functional/UpdaterFormTest.php | 2 +- .../ReadinessValidationManagerTest.php | 2 +- .../src/Unit/StagedProjectsValidationTest.php | 8 +- 15 files changed, 99 insertions(+), 28 deletions(-) create mode 100644 drupalci.yml diff --git a/automatic_updates.info.yml b/automatic_updates.info.yml index 923883316d..27a6926201 100644 --- a/automatic_updates.info.yml +++ b/automatic_updates.info.yml @@ -3,5 +3,5 @@ type: module description: 'Experimental module to develop automatic updates. Currently the module provides checks for update readiness but does not yet provide update functionality.' core_version_requirement: ^9 dependencies: - - automatic_updates_9_3_shim - - update + - drupal:automatic_updates_9_3_shim + - drupal:update diff --git a/drupalci.yml b/drupalci.yml new file mode 100644 index 0000000000..232228cdb2 --- /dev/null +++ b/drupalci.yml @@ -0,0 +1,73 @@ +# https://www.drupal.org/drupalorg/docs/drupal-ci/customizing-drupalci-testing +# Copied from https://git.drupalcode.org/project/ckeditor5/-/blob/c68be57fbc2c29969e9726ec932af3f0e80c3dd9/drupalci.yml +# cspell:disable +build: + assessment: + validate_codebase: + # automatic_updates code quality checking matches that of Drupal core: it is checked by container_command.commit_checks. + testing: + # Run code quality checks. + container_command.commit-checks: + commands: + # Copy core's checking script into this contrib module. + - "cp /var/www/html/core/scripts/dev/commit-code-check.sh modules/contrib/automatic_updates/" + # Comply with core's checking script file permissions expectations. + - chmod 644 modules/contrib/automatic_updates/ + # Rewrite $TOP_LEVEL/core since $TOP_LEVEL now refers to the contrib module. + - sed -i "s/\$TOP_LEVEL\/core/\/var\/www\/html\/core/" modules/contrib/automatic_updates/commit-code-check.sh + # Ensure the remainder of the script runs from the script's directory and not the current working directory. + - sed -i "s/# Gets list of files to check./cd \"\$\(dirname \"\$0\"\)\";/" modules/contrib/automatic_updates/commit-code-check.sh + # When constructing $FILES, ignore the `commit-code-check.sh` file we just copied. + - sed -i "s/--exclude=vendor/--exclude=vendor --exclude=commit-code-check.sh/" modules/contrib/automatic_updates/commit-code-check.sh + # vendor/bin/phpcs now needs to be prefixed. And $TOP_LEVEL/vendor needs to be rewritten. + - sed -i "s/vendor\/bin\/phpcs/\/var\/www\/html\/vendor\/bin\/phpcs/" modules/contrib/automatic_updates/commit-code-check.sh + - sed -i "s/\$TOP_LEVEL\/vendor/\/var\/www\/html\/vendor/" modules/contrib/automatic_updates/commit-code-check.sh + # Disable all JS compile checks until we've matched core's build process. + # @todo Remove this in https://www.drupal.org/project/automatic_updates/issues/3221082. + - sed -i "s/COMPILE_CHECK=1/COMPILE_CHECK=0/" modules/contrib/automatic_updates/commit-code-check.sh + - sed -i "s/core\/scripts\/js/js/" modules/contrib/automatic_updates/commit-code-check.sh + # Uncomment to Check all files + #- sed -i "s/git diff --name-only HEAD~1 HEAD/find \* -type f -not -path \"\.\/\.git\*\"/" modules/contrib/automatic_updates/commit-code-check.sh + # Add our words to the dictionary + - sed -i "s/abiword/updater's/" core/misc/cspell/dictionary.txt + - sed -i "s/absolutezero/stager's/" core/misc/cspell/dictionary.txt + # After all of the shenanigans above, we're finally ready to run core's `commit-code-check.sh`! :) + - "modules/contrib/automatic_updates/commit-code-check.sh --drupalci" + # Restore the original permissions. + - chmod 777 modules/contrib/automatic_updates/ + halt-on-fail: true + # run_tests task is executed several times in order of performance speeds. + # halt-on-fail can be set on the run_tests tasks in order to fail fast. + # suppress-deprecations is false in order to be alerted to usages of + # deprecated code. + # @todo Uncomment in https://www.drupal.org/i/3228125 +# run_tests.build: +# # Limit concurrency due to disk space concerns. +# concurrency: 15 +# types: 'PHPUnit-Build' +# testgroups: '--all' +# suppress-deprecations: false +# halt-on-fail: false + run_tests.phpunit: + types: 'PHPUnit-Unit' + testgroups: '--all' + suppress-deprecations: false + halt-on-fail: false + run_tests.kernel: + types: 'PHPUnit-Kernel' + testgroups: '--all' + suppress-deprecations: false + halt-on-fail: false + run_tests.functional: + types: 'PHPUnit-Functional' + testgroups: '--all' + suppress-deprecations: false + halt-on-fail: false + # Functional JavaScript tests require a concurrency of 1 because there is + # only one instance of PhantomJS on the testbot machine. + #run_tests.javascript: + # concurrency: 1 + # types: 'PHPUnit-FunctionalJavascript' + # testgroups: '--all' + # suppress-deprecations: false + # halt-on-fail: false diff --git a/tests/fixtures/project_staged_validation/new_project_added/active/composer.lock b/tests/fixtures/project_staged_validation/new_project_added/active/composer.lock index 94120e7e01..a98bc9cad7 100644 --- a/tests/fixtures/project_staged_validation/new_project_added/active/composer.lock +++ b/tests/fixtures/project_staged_validation/new_project_added/active/composer.lock @@ -1,7 +1,7 @@ { "packages": [ { - "name": "drupal/testmodule", + "name": "drupal/test_module", "version": "1.3.0", "type": "drupal-module" }, @@ -14,7 +14,7 @@ ], "packages-dev": [ { - "name": "drupal/dev-testmodule", + "name": "drupal/dev-test_module", "version": "1.3.0", "type": "drupal-module" }, diff --git a/tests/fixtures/project_staged_validation/new_project_added/staged/composer.lock b/tests/fixtures/project_staged_validation/new_project_added/staged/composer.lock index 4f13ff8c34..a5b3e1c62a 100644 --- a/tests/fixtures/project_staged_validation/new_project_added/staged/composer.lock +++ b/tests/fixtures/project_staged_validation/new_project_added/staged/composer.lock @@ -1,12 +1,12 @@ { "packages": [ { - "name": "drupal/testmodule", + "name": "drupal/test_module", "version": "1.3.0", "type": "drupal-module" }, { - "name": "drupal/testmodule2", + "name": "drupal/test_module2", "version": "1.3.1", "type": "drupal-module" }, @@ -19,12 +19,12 @@ ], "packages-dev": [ { - "name": "drupal/dev-testmodule", + "name": "drupal/dev-test_module", "version": "1.3.0", "type": "drupal-module" }, { - "name": "drupal/dev-testmodule2", + "name": "drupal/dev-test_module2", "version": "1.3.1", "type": "drupal-custom-module" }, diff --git a/tests/fixtures/project_staged_validation/no_errors/active/composer.lock b/tests/fixtures/project_staged_validation/no_errors/active/composer.lock index 9130122783..0eeceb0c96 100644 --- a/tests/fixtures/project_staged_validation/no_errors/active/composer.lock +++ b/tests/fixtures/project_staged_validation/no_errors/active/composer.lock @@ -1,7 +1,7 @@ { "packages": [ { - "name": "drupal/testmodule", + "name": "drupal/test_module", "version": "1.3.0", "type": "drupal-module" }, @@ -20,7 +20,7 @@ ], "packages-dev": [ { - "name": "drupal/dev-testmodule", + "name": "drupal/dev-test_module", "version": "1.3.0", "type": "drupal-module" }, diff --git a/tests/fixtures/project_staged_validation/no_errors/staged/composer.lock b/tests/fixtures/project_staged_validation/no_errors/staged/composer.lock index 07411d7f7d..93ef0ebbc5 100644 --- a/tests/fixtures/project_staged_validation/no_errors/staged/composer.lock +++ b/tests/fixtures/project_staged_validation/no_errors/staged/composer.lock @@ -1,7 +1,7 @@ { "packages": [ { - "name": "drupal/testmodule", + "name": "drupal/test_module", "version": "1.3.0", "type": "drupal-module" }, @@ -20,7 +20,7 @@ ], "packages-dev": [ { - "name": "drupal/dev-testmodule", + "name": "drupal/dev-test_module", "version": "1.3.0", "type": "drupal-module" }, diff --git a/tests/fixtures/project_staged_validation/project_removed/active/composer.lock b/tests/fixtures/project_staged_validation/project_removed/active/composer.lock index d42425d52d..ef2f849c66 100644 --- a/tests/fixtures/project_staged_validation/project_removed/active/composer.lock +++ b/tests/fixtures/project_staged_validation/project_removed/active/composer.lock @@ -6,7 +6,7 @@ "type": "drupal-theme" }, { - "name": "drupal/testmodule2", + "name": "drupal/test_module2", "version": "1.3.1", "type": "drupal-module" }, @@ -24,7 +24,7 @@ "type": "drupal-custom-theme" }, { - "name": "drupal/dev-testmodule2", + "name": "drupal/dev-test_module2", "version": "1.3.1", "type": "drupal-module" }, diff --git a/tests/fixtures/project_staged_validation/project_removed/staged/composer.lock b/tests/fixtures/project_staged_validation/project_removed/staged/composer.lock index 49ef1a451e..d8a60b1264 100644 --- a/tests/fixtures/project_staged_validation/project_removed/staged/composer.lock +++ b/tests/fixtures/project_staged_validation/project_removed/staged/composer.lock @@ -1,14 +1,14 @@ { "packages": [ { - "name": "drupal/testmodule2", + "name": "drupal/test_module2", "version": "1.3.1", "type": "drupal-module" } ], "packages-dev": [ { - "name": "drupal/dev-testmodule2", + "name": "drupal/dev-test_module2", "version": "1.3.1", "type": "drupal-module" } diff --git a/tests/fixtures/project_staged_validation/version_changed/active/composer.lock b/tests/fixtures/project_staged_validation/version_changed/active/composer.lock index ed424c5930..5da8f50209 100644 --- a/tests/fixtures/project_staged_validation/version_changed/active/composer.lock +++ b/tests/fixtures/project_staged_validation/version_changed/active/composer.lock @@ -1,7 +1,7 @@ { "packages": [ { - "name": "drupal/testmodule", + "name": "drupal/test_module", "version": "1.3.0", "type": "drupal-module" }, @@ -14,7 +14,7 @@ ], "packages-dev": [ { - "name": "drupal/dev-testmodule", + "name": "drupal/dev-test_module", "version": "1.3.0", "type": "drupal-module" }, diff --git a/tests/fixtures/project_staged_validation/version_changed/staged/composer.lock b/tests/fixtures/project_staged_validation/version_changed/staged/composer.lock index 033fbec94d..129f0ffdc1 100644 --- a/tests/fixtures/project_staged_validation/version_changed/staged/composer.lock +++ b/tests/fixtures/project_staged_validation/version_changed/staged/composer.lock @@ -1,7 +1,7 @@ { "packages": [ { - "name": "drupal/testmodule", + "name": "drupal/test_module", "version": "1.3.1", "type": "drupal-module" }, @@ -14,7 +14,7 @@ ], "packages-dev": [ { - "name": "drupal/dev-testmodule", + "name": "drupal/dev-test_module", "version": "1.3.1", "type": "drupal-module" }, diff --git a/tests/modules/automatic_updates_test/automatic_updates_test.info.yml b/tests/modules/automatic_updates_test/automatic_updates_test.info.yml index eee46d1e2a..ad42f727c2 100644 --- a/tests/modules/automatic_updates_test/automatic_updates_test.info.yml +++ b/tests/modules/automatic_updates_test/automatic_updates_test.info.yml @@ -2,6 +2,5 @@ name: 'Automatic Updates Test module 1' type: module description: 'Module for testing Automatic Updates.' package: Testing -version: VERSION dependencies: - drupal:automatic_updates diff --git a/tests/modules/automatic_updates_test2/automatic_updates_test2.info.yml b/tests/modules/automatic_updates_test2/automatic_updates_test2.info.yml index c6029d2b96..89f9ae2276 100644 --- a/tests/modules/automatic_updates_test2/automatic_updates_test2.info.yml +++ b/tests/modules/automatic_updates_test2/automatic_updates_test2.info.yml @@ -2,6 +2,5 @@ name: 'Automatic Updates Test module 2' type: module description: 'Test module to provide an additional readiness checker.' package: Testing -version: VERSION dependencies: - drupal:automatic_updates_test diff --git a/tests/src/Functional/UpdaterFormTest.php b/tests/src/Functional/UpdaterFormTest.php index abe90381eb..2354113d17 100644 --- a/tests/src/Functional/UpdaterFormTest.php +++ b/tests/src/Functional/UpdaterFormTest.php @@ -48,7 +48,7 @@ class UpdaterFormTest extends BrowserTestBase { /** * {@inheritdoc} */ - protected function setUp() { + protected function setUp(): void { parent::setUp(); $this->config('update_test.settings') diff --git a/tests/src/Kernel/ReadinessValidation/ReadinessValidationManagerTest.php b/tests/src/Kernel/ReadinessValidation/ReadinessValidationManagerTest.php index cebf09f39a..a8e5dc869d 100644 --- a/tests/src/Kernel/ReadinessValidation/ReadinessValidationManagerTest.php +++ b/tests/src/Kernel/ReadinessValidation/ReadinessValidationManagerTest.php @@ -1,6 +1,6 @@ <?php -namespace Drupal\Tests\automatic_updates\Kernel\Validation; +namespace Drupal\Tests\automatic_updates\Kernel\ReadinessValidation; use Drupal\automatic_updates_test\ReadinessChecker\TestChecker1; use Drupal\automatic_updates_test2\ReadinessChecker\TestChecker2; diff --git a/tests/src/Unit/StagedProjectsValidationTest.php b/tests/src/Unit/StagedProjectsValidationTest.php index 1596f0e9dc..c3b256bfa7 100644 --- a/tests/src/Unit/StagedProjectsValidationTest.php +++ b/tests/src/Unit/StagedProjectsValidationTest.php @@ -91,8 +91,8 @@ class StagedProjectsValidationTest extends UnitTestCase { "$fixtures_folder/new_project_added", 'The update cannot proceed because the following Drupal projects were installed during the update.', [ - "module 'drupal/testmodule2' installed.", - "custom module 'drupal/dev-testmodule2' installed.", + "module 'drupal/test_module2' installed.", + "custom module 'drupal/dev-test_module2' installed.", ], ], 'project_removed' => [ @@ -107,8 +107,8 @@ class StagedProjectsValidationTest extends UnitTestCase { "$fixtures_folder/version_changed", 'The update cannot proceed because the following Drupal projects were unexpectedly updated. Only Drupal Core updates are currently supported.', [ - "module 'drupal/testmodule' from 1.3.0 to 1.3.1.", - "module 'drupal/dev-testmodule' from 1.3.0 to 1.3.1.", + "module 'drupal/test_module' from 1.3.0 to 1.3.1.", + "module 'drupal/dev-test_module' from 1.3.0 to 1.3.1.", ], ], ]; -- GitLab