name: pre-commit checks on: push: branches: - "master" - "[0-9].[0-9]*" pull_request: types: [synchronize, opened, reopened, ready_for_review] # cancel previous workflow jobs for PRs concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }} cancel-in-progress: true jobs: pre-commit: runs-on: ubuntu-24.04 strategy: matrix: python-version: ["current", "next", "previous"] steps: - name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )" uses: actions/checkout@v4 with: persist-credentials: false submodules: recursive - name: Setup Python uses: ./.github/actions/setup-backend/ with: python-version: ${{ matrix.python-version }} - name: Enable brew and helm-docs # Add brew to the path - see https://github.com/actions/runner-images/issues/6283 run: | echo "/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin" >> $GITHUB_PATH eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" echo "HOMEBREW_PREFIX=$HOMEBREW_PREFIX" >>"${GITHUB_ENV}" echo "HOMEBREW_CELLAR=$HOMEBREW_CELLAR" >>"${GITHUB_ENV}" echo "HOMEBREW_REPOSITORY=$HOMEBREW_REPOSITORY" >>"${GITHUB_ENV}" brew install norwoodj/tap/helm-docs - name: pre-commit run: | set +e # Don't exit immediately on failure pre-commit run --all-files if [ $? -ne 0 ] || ! git diff --quiet --exit-code; then echo "❌ Pre-commit check failed." echo "🚒 To prevent/address this CI issue, please install/use pre-commit locally." echo "📖 More details here: https://superset.apache.org/docs/contributing/development#git-hooks" exit 1 fi