.check_pre_commit_template: stage: pre image: python:3.8 tags: - build rules: - if: $CI_PIPELINE_SOURCE == "merge_request_event" script: - python3 -m venv .venv - source .venv/bin/activate - pip install --upgrade pip - pip install pre-commit - git fetch origin $CI_MERGE_REQUEST_TARGET_BRANCH_NAME --depth=1 - git fetch origin $CI_COMMIT_REF_NAME --depth=1 - | echo "Target branch: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME" echo "Source branch: $CI_COMMIT_REF_NAME" MODIFIED_FILES=$(git diff --name-only origin/$CI_MERGE_REQUEST_TARGET_BRANCH_NAME..origin/$CI_COMMIT_REF_NAME) echo "Modified files to check:" echo "$MODIFIED_FILES" if [ -n "$MODIFIED_FILES" ]; then CI=true pre-commit run --files $MODIFIED_FILES else echo "No modified files to check." fi check_pre_commit: extends: - .check_pre_commit_template