This is an automated email from the ASF dual-hosted git repository.

jscheffl pushed a commit to branch v3-1-test
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/v3-1-test by this push:
     new 9b3c71af395 [v3-1-test] Extract prek hooks for airflowctl (#57308) 
(#57312)
9b3c71af395 is described below

commit 9b3c71af395d421e8ed46516120459ead2f4aa73
Author: github-actions[bot] 
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Sun Oct 26 19:39:22 2025 +0100

    [v3-1-test] Extract prek hooks for airflowctl (#57308) (#57312)
    
    * Extract prek hooks for airflowctl
    
    * ups
    (cherry picked from commit 4bea383528f140cb7c8373123eb496b023b6de57)
    
    Co-authored-by: Jens Scheffler <[email protected]>
---
 .pre-commit-config.yaml             | 23 -----------------
 airflow-ctl/.pre-commit-config.yaml | 51 +++++++++++++++++++++++++++++++++++++
 2 files changed, 51 insertions(+), 23 deletions(-)

diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index f4eb511eee1..0a7bb568dfa 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -1069,22 +1069,6 @@ repos:
         pass_filenames: false
         files: ^.*\.py$
         require_serial: true
-      - id: mypy-airflow-ctl
-        stages: ['pre-push']
-        name: Run mypy for airflow-ctl
-        language: python
-        entry: ./scripts/ci/prek/mypy.py
-        files: ^airflow-ctl/src/airflowctl/.*\.py$|^airflow-ctl/tests/.*\.py$
-        exclude: .*generated.py
-        require_serial: true
-      - id: mypy-airflow-ctl
-        stages: ['manual']
-        name: Run mypy for airflow-ctl (manual)
-        language: python
-        entry: ./scripts/ci/prek/mypy_folder.py airflow-ctl
-        pass_filenames: false
-        files: ^.*\.py$
-        require_serial: true
       - id: generate-openapi-spec
         name: Generate the FastAPI API spec
         language: python
@@ -1141,13 +1125,6 @@ repos:
         require_serial: true
         pass_filenames: false
         files: ^airflow-core/src/airflow/config_templates/config\.yml$
-      - id: generate-airflowctl-help-images
-        name: Generate SVG from Airflow CTL Commands
-        entry: ./scripts/ci/prek/capture_airflowctl_help.py
-        language: python
-        pass_filenames: false
-        files:
-          
^airflow-ctl/src/airflowctl/ctl/cli_config.py$|airflow-ctl/src/airflowctl/api/operations.py|airflow-ctl/src/airflowctl/ctl/commands/.*\.py
       - id: check-airflow-version-checks-in-core
         language: pygrep
         name: No AIRFLOW_V_* imports in airflow-core
diff --git a/airflow-ctl/.pre-commit-config.yaml 
b/airflow-ctl/.pre-commit-config.yaml
new file mode 100644
index 00000000000..ed468195ad1
--- /dev/null
+++ b/airflow-ctl/.pre-commit-config.yaml
@@ -0,0 +1,51 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+---
+default_stages: [pre-commit, pre-push]
+minimum_prek_version: '0.0.28'
+repos:
+  - repo: local
+    hooks:
+      - id: mypy-airflow-ctl
+        stages: ['pre-push']
+        name: Run mypy for airflow-ctl
+        language: python
+        entry: ../scripts/ci/prek/mypy.py
+        files:
+          (?x)
+          ^src/airflowctl/.*\.py$|
+          ^tests/.*\.py$
+        exclude: .*generated.py
+        require_serial: true
+      - id: mypy-airflow-ctl
+        stages: ['manual']
+        name: Run mypy for airflow-ctl (manual)
+        language: python
+        entry: ../scripts/ci/prek/mypy_folder.py airflow-ctl
+        pass_filenames: false
+        files: ^.*\.py$
+        require_serial: true
+      - id: generate-airflowctl-help-images
+        name: Generate SVG from Airflow CTL Commands
+        entry: ../scripts/ci/prek/capture_airflowctl_help.py
+        language: python
+        pass_filenames: false
+        files:
+          (?x)
+          ^src/airflowctl/ctl/cli_config.py$|
+          ^src/airflowctl/api/operations.py$|
+          ^src/airflowctl/ctl/commands/.*\.py$

Reply via email to