ci: update pre commit jobs

This commit is contained in:
Chen Yudong
2025-07-03 13:05:06 +08:00
parent 95efe53cde
commit 3b91d7edc5

View File

@@ -3,32 +3,19 @@
- .before_script:minimal - .before_script:minimal
stage: pre_check stage: pre_check
image: $PRE_COMMIT_IMAGE 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: needs:
- pipeline_variables - pipeline_variables
variables:
# cache pre_commit
PRE_COMMIT_HOME: "$CI_PROJECT_DIR/.cache/pre-commit"
script: script:
- fetch_submodules - fetch_submodules
- pre-commit run --files $MODIFIED_FILES - pre-commit run --files $MODIFIED_FILES
- pre-commit run --hook-stage post-commit validate-sbom-manifest - 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: check_pre_commit:
extends: extends:
- .check_pre_commit_template - .check_pre_commit_template
@@ -37,10 +24,6 @@ check_pre_commit:
when: never when: never
- when: on_success - when: on_success
cache: cache:
- key: pre_commit-cache-${LATEST_GIT_TAG}
paths:
- .cache/pre-commit
policy: pull
- key: submodule-cache-${LATEST_GIT_TAG} - key: submodule-cache-${LATEST_GIT_TAG}
paths: paths:
- .cache/submodule_archives - .cache/submodule_archives
@@ -56,25 +39,20 @@ check_powershell:
tags: tags:
- dind - dind
- amd64 - amd64
- brew # faster "apk add"
needs: needs:
- pipeline_variables - pipeline_variables
variables: variables:
# cache pre_commit # brew runners always use fetch
PRE_COMMIT_HOME: "$CI_PROJECT_DIR/.cache/pre-commit" GIT_STRATEGY: fetch
GIT_DEPTH: 1
SUBMODULES_TO_FETCH: "none"
rules: rules:
- changes: - changes:
- "*.ps1" - "*.ps1"
- ".gitlab/ci/pre_commit.yml"
script: script:
- apk add python3 - apk add python3
- apk add py3-pip - apk add py3-pip
- pip install pre-commit --break-system-packages - pip install pre-commit --break-system-packages
- pre-commit run --hook-stage manual check-powershell-scripts --files $MODIFIED_FILES - 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