From 1161b8d4ad68771b74281c22d5d516d51102bf72 Mon Sep 17 00:00:00 2001 From: nod_ <nod_@598310.no-reply.drupal.org> Date: Wed, 7 Aug 2024 01:29:23 +0200 Subject: [PATCH] Issue #3463108 by catch, smustgrave: Use artifacts to share the eslint and styleint caches from core to MRs (cherry picked from commit 5374786d8da638b55dc2e415d358febcc059c0a3) --- .gitlab-ci.yml | 25 +++++++++++++++++++++++-- core/.gitignore | 6 ++++++ core/misc/cspell/dictionary.txt | 2 ++ 3 files changed, 31 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b01c6a590be5..0a1510f847c0 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -115,6 +115,18 @@ default: # exist. - 'curl --location --output core/.cspellcache "https://git.drupalcode.org/api/v4/projects/$CI_PROJECT_ID/jobs/artifacts/{$CACHE_TARGET}/raw/core/.cspellcache?job=Lint%20cache%20warming" || true' +.eslint-cache: &eslint-cache + # Fetch the eslint cache from the artifacts of the latest successful job from + # the target branch. Allow the job to proceed and pass if the file doesn't + # exist. + - 'curl --location --output core/.eslintcache "https://git.drupalcode.org/api/v4/projects/$CI_PROJECT_ID/jobs/artifacts/{$CACHE_TARGET}/raw/core/.eslintcache?job=Lint%20cache%20warming" || true' + +.stylelint-cache: &stylelint-cache + # Fetch the stylelint cache from the artifacts of the latest successful job from + # the target branch. Allow the job to proceed and pass if the file doesn't + # exist. + - 'curl --location --output core/.stylelintcache "https://git.drupalcode.org/api/v4/projects/$CI_PROJECT_ID/jobs/artifacts/{$CACHE_TARGET}/raw/core/.stylelintcache?job=Lint%20cache%20warming" || true' + .core-spellcheck: &core-spellcheck - cd core - corepack enable @@ -271,14 +283,21 @@ default: script: - *phpstan-cache - *cspell-cache + - *eslint-cache + - *stylelint-cache - composer install - vendor/bin/phpstan --version - php vendor/bin/phpstan -vvv analyze --configuration=./core/phpstan.neon.dist - *core-spellcheck + - yarn run lint:core-js-passing --cache --cache-strategy content + - yarn run build:css --check + - yarn run lint:css --cache --cache-location .stylelintcache --cache-strategy content artifacts: paths: - core/phpstan-tmp/resultCache.php - core/.cspellcache + - core/.eslintcache + - core/.stylelintcache '🧹 PHP Static Analysis (phpstan)': <<: [ *default-job-settings-lint ] @@ -357,11 +376,12 @@ default: - when: manual allow_failure: true script: + - *eslint-cache - cd core - corepack enable - yarn install - yarn run check:ckeditor5 - - yarn run lint:core-js-passing --format gitlab + - yarn run lint:core-js-passing --cache --cache-strategy content --format gitlab artifacts: reports: codequality: eslint-quality-report.json @@ -383,11 +403,12 @@ default: - when: manual allow_failure: true script: + - *stylelint-cache - corepack enable - cd core - yarn install - yarn run build:css --check - - yarn run lint:css --color --custom-formatter=node_modules/stylelint-formatter-gitlab + - yarn run lint:css --cache --cache-location .stylelintcache --cache-strategy content --color --custom-formatter=node_modules/stylelint-formatter-gitlab artifacts: reports: codequality: stylelint-quality-report.json diff --git a/core/.gitignore b/core/.gitignore index f6b3bbea0fe3..164465dc429a 100644 --- a/core/.gitignore +++ b/core/.gitignore @@ -29,3 +29,9 @@ nightwatch.settings.json # Ignore phpstan cache phpstan-tmp + +# Ignore eslint cache +.eslintcache + +# Ignore stylelint cache +.stylelint-cache diff --git a/core/misc/cspell/dictionary.txt b/core/misc/cspell/dictionary.txt index 232320fd0874..8b686e221347 100644 --- a/core/misc/cspell/dictionary.txt +++ b/core/misc/cspell/dictionary.txt @@ -213,6 +213,7 @@ endtrans enoki entityviewedit errmode +eslintcache etag eurozone evenodd @@ -588,6 +589,7 @@ strs sttid styleguide stylelint +stylelintcache stylescombo subarrays subchild -- GitLab