diff --git a/.gitlab/ci/pre_commit.yml b/.gitlab/ci/pre_commit.yml index 49449106e7..103ed953e5 100644 --- a/.gitlab/ci/pre_commit.yml +++ b/.gitlab/ci/pre_commit.yml @@ -3,32 +3,19 @@ - .before_script:minimal stage: pre_check image: $PRE_COMMIT_IMAGE - tags: [cache, shiny] + tags: [pre-commit] + variables: + # Both shiny and brew runners can pick this job + GIT_STRATEGY: fetch + GIT_DEPTH: 1 + SUBMODULES_TO_FETCH: "all" needs: - pipeline_variables - variables: - # cache pre_commit - PRE_COMMIT_HOME: "$CI_PROJECT_DIR/.cache/pre-commit" script: - fetch_submodules - pre-commit run --files $MODIFIED_FILES - pre-commit run --hook-stage post-commit validate-sbom-manifest -check_pre_commit_upload_cache: - extends: - - .check_pre_commit_template - rules: - - if: '($CI_COMMIT_REF_NAME == "master" || $CI_COMMIT_BRANCH =~ /^release\/v/) && $CI_PIPELINE_SOURCE == "push"' - cache: - - key: pre_commit-cache-${LATEST_GIT_TAG} - paths: - - .cache/pre-commit - policy: pull-push - - key: submodule-cache-${LATEST_GIT_TAG} - paths: - - .cache/submodule_archives - policy: pull - check_pre_commit: extends: - .check_pre_commit_template @@ -37,10 +24,6 @@ check_pre_commit: when: never - when: on_success cache: - - key: pre_commit-cache-${LATEST_GIT_TAG} - paths: - - .cache/pre-commit - policy: pull - key: submodule-cache-${LATEST_GIT_TAG} paths: - .cache/submodule_archives @@ -56,25 +39,20 @@ check_powershell: tags: - dind - amd64 + - brew # faster "apk add" needs: - pipeline_variables variables: - # cache pre_commit - PRE_COMMIT_HOME: "$CI_PROJECT_DIR/.cache/pre-commit" + # brew runners always use fetch + GIT_STRATEGY: fetch + GIT_DEPTH: 1 + SUBMODULES_TO_FETCH: "none" rules: - changes: - "*.ps1" + - ".gitlab/ci/pre_commit.yml" script: - apk add python3 - apk add py3-pip - pip install pre-commit --break-system-packages - pre-commit run --hook-stage manual check-powershell-scripts --files $MODIFIED_FILES - cache: - - key: pre_commit-cache-${LATEST_GIT_TAG} - paths: - - .cache/pre-commit - policy: pull - - key: submodule-cache-${LATEST_GIT_TAG} - paths: - - .cache/submodule_archives - policy: pull