# 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: [commit, push]
default_language_version:
  # force all unspecified python hooks to run python3
  python: python3
minimum_pre_commit_version: "1.20.0"
repos:
  - repo: meta
    hooks:
      - id: identity
      - id: check-hooks-apply
  - repo: https://github.com/Lucas-C/pre-commit-hooks
    rev: v1.1.9
    hooks:
      - id: forbid-tabs
        exclude: ^docs/Makefile$|^clients/gen/go.sh|\.gitmodules$
      - id: insert-license
        name: Add license for all SQL files
        files: \.sql$
        exclude: ^\.github/.*$
        args:
          - --comment-style
          - "/*||*/"
          - --license-filepath
          - license-templates/LICENSE.txt
          - --fuzzy-match-generates-todo
      - id: insert-license
        name: Add license for all other files
        exclude: ^\.github/.*$
        args:
          - --comment-style
          - "|#|"
          - --license-filepath
          - license-templates/LICENSE.txt
          - --fuzzy-match-generates-todo
        files: >
          \.properties$|\.cfg$|\.conf$|\.ini$|\.ldif$|\.readthedocs$|\.service$|\.tf$|Dockerfile.*$
      - id: insert-license
        name: Add license for all rst files
        exclude: ^\.github/.*$
        args:
          - --comment-style
          - "||"
          - --license-filepath
          - license-templates/LICENSE.rst
          - --fuzzy-match-generates-todo
        files: \.rst$
      - id: insert-license
        name: Add license for all JS/CSS/PUML files
        files: \.(js|css|puml)$
        exclude: ^\.github/.*$
        args:
          - --comment-style
          - "/*!| *| */"
          - --license-filepath
          - license-templates/LICENSE.txt
          - --fuzzy-match-generates-todo
      - id: insert-license
        name: Add license for all JINJA template files
        files: "^airflow/www/templates/.*\\.html$|^docs/templates/.*\\.html$.*\\.jinja2"
        exclude: ^\.github/.*$
        args:
          - --comment-style
          - "{#||#}"
          - --license-filepath
          - license-templates/LICENSE.txt
          - --fuzzy-match-generates-todo
      - id: insert-license
        name: Add license for all shell files
        exclude: ^\.github/.*$
        files: ^breeze$|^breeze-complete$|\.sh$|\.bash$|\.bats$
        args:
          - --comment-style
          - "|#|"
          - --license-filepath
          - license-templates/LICENSE.txt
          - --fuzzy-match-generates-todo
      - id: insert-license
        name: Add license for all python files
        exclude: ^\.github/.*$
        types: [python]
        args:
          - --comment-style
          - "|#|"
          - --license-filepath
          - license-templates/LICENSE.txt
          - --fuzzy-match-generates-todo
      - id: insert-license
        name: Add license for all XML files
        exclude: ^\.github/.*$
        files: \.xml$
        args:
          - --comment-style
          - "<!--||-->"
          - --license-filepath
          - license-templates/LICENSE.txt
          - --fuzzy-match-generates-todo
      - id: insert-license
        name: Add license for all yaml files
        exclude: ^\.github/.*$
        types: [yaml]
        files: \.yml$|\.yaml$
        args:
          - --comment-style
          - "|#|"
          - --license-filepath
          - license-templates/LICENSE.txt
          - --fuzzy-match-generates-todo
      - id: insert-license
        name: Add license for all md files
        files: \.md$
        exclude: ^\.github/.*$|PROVIDER_CHANGES.*\.md
        args:
          - --comment-style
          - "<!--|| -->"
          - --license-filepath
          - license-templates/LICENSE.txt
          - --fuzzy-match-generates-todo
      - id: insert-license
        name: Add license for all mermaid files
        args:
          - --comment-style
          - "|%%|"
          - --license-filepath
          - license-templates/LICENSE.txt
          - --fuzzy-match-generates-todo
        files: \.mermaid$
  - repo: https://github.com/thlorenz/doctoc.git
    rev: v2.0.0
    hooks:
      - id: doctoc
        name: Add TOC for md files
        files: ^README\.md$|^CONTRIBUTING\.md$|^UPDATING.*.md$|^dev/.*.md$
        args:
          - "--maxlevel"
          - "2"
  - repo: https://github.com/psf/black
    rev: 20.8b1
    hooks:
      - id: black
        args: [--config=./pyproject.toml]
  - repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v3.4.0
    hooks:
      - id: check-merge-conflict
      - id: debug-statements
      - id: check-builtin-literals
      - id: detect-private-key
      - id: end-of-file-fixer
      - id: mixed-line-ending
      - id: check-executables-have-shebangs
      - id: check-xml
      - id: trailing-whitespace
      - id: fix-encoding-pragma
        args:
          - --remove
  - repo: https://github.com/asottile/pyupgrade
    rev: v2.7.4
    hooks:
      - id: pyupgrade
        args: ["--py36-plus"]
  - repo: https://github.com/pre-commit/pygrep-hooks
    rev: v1.7.0
    hooks:
      - id: rst-backticks
      - id: python-no-log-warn
  - repo: https://github.com/adrienverge/yamllint
    rev: v1.25.0
    hooks:
      - id: yamllint
        name: Check yaml files with yamllint
        entry: yamllint -c yamllint-config.yml --strict
        types: [yaml]
        exclude:
          ^.*init_git_sync\.template\.yaml$|^.*airflow\.template\.yaml$|^chart/(?:templates|files)/.*\.yaml
  - repo: https://github.com/timothycrosley/isort
    rev: 5.6.4
    hooks:
      - id: isort
        name: Run isort to sort imports
        files: \.py$
        # To keep consistent with the global isort skip config defined in setup.cfg
        exclude: ^build/.*$|^.tox/.*$|^venv/.*$
  - repo: https://github.com/pycqa/pydocstyle
    rev: 5.1.1
    hooks:
      - id: pydocstyle
        name: Run pydocstyle
        args:
          - --convention=pep257
          - --add-ignore=D100,D102,D104,D105,D107,D205,D400,D401
        exclude: |
          (?x)
          ^tests/.*\.py$|
          ^scripts/.*\.py$|
          ^dev|
          ^provider_packages|
          ^kubernetes_tests|
          .*example_dags/.*|
          ^chart/.*\.py$
  - repo: local
    hooks:
      - id: lint-openapi
        name: Lint OpenAPI using spectral
        language: docker_image
        entry: stoplight/spectral lint -r ./scripts/ci/spectral_rules/connexion.yml
        files: ^airflow/api_connexion/openapi/
      - id: lint-openapi
        name: Lint OpenAPI using openapi-spec-validator
        entry: openapi-spec-validator --schema 3.0.0
        language: python
        additional_dependencies: ['openapi-spec-validator']
        files: ^airflow/api_connexion/openapi/
      - id: lint-dockerfile
        name: Lint dockerfile
        language: system
        entry: "./scripts/ci/pre_commit/pre_commit_lint_dockerfile.sh"
        files: Dockerfile.*$
        pass_filenames: true
      - id: setup-order
        name: Check order of dependencies in setup.py and setup.cfg
        language: python
        files: ^setup.py$|^setup.cfg$
        pass_filenames: false
        entry: ./scripts/ci/pre_commit/pre_commit_check_order_setup.py
        additional_dependencies: ['rich']
      - id: setup-extra-packages
        name: Checks setup extra packages
        description: Checks if all the libraries in setup.py are listed in extra-packages-ref.rst file
        language: python
        files: ^setup.py$|^docs/apache-airflow/extra-packages-ref.rst$
        pass_filenames: false
        entry: ./scripts/ci/pre_commit/pre_commit_check_setup_extra_packages_ref.py
        additional_dependencies: ['rich==9.2.0']
      - id: update-breeze-file
        name: Update output of breeze command in BREEZE.rst
        entry: "./scripts/ci/pre_commit/pre_commit_breeze_cmd_line.sh"
        language: system
        files: ^BREEZE.rst$|^breeze$|^breeze-complete$
        pass_filenames: false
      - id: update-local-yml-file
        name: Update mounts in the local yml file
        entry: "./scripts/ci/pre_commit/pre_commit_local_yml_mounts.sh"
        language: system
        files: ^scripts/ci/libraries/_local_mounts.sh$|s^scripts/ci/docker_compose/local.yml"
        pass_filenames: false
      - id: update-setup-cfg-file
        name: Update setup.cfg file with all licenses
        entry: "./scripts/ci/pre_commit/pre_commit_setup_cfg_file.sh"
        language: system
        files: ^setup.cfg$
        pass_filenames: false
      - id: build-providers-dependencies
        name: Build cross-dependencies for providers packages
        entry: "./scripts/ci/pre_commit/pre_commit_build_providers_dependencies.sh"
        language: system
        files: ^airflow/providers/.*\.py$|^tests/providers/.*\.py$
        pass_filenames: false
      - id: update-extras
        name: Update extras in documentation
        entry: ./scripts/ci/pre_commit/pre_commit_insert_extras.py
        language: python
        files: ^setup.py$|^INSTALL$|^CONTRIBUTING.rst$
        pass_filenames: false
      - id: pydevd
        language: pygrep
        name: Check for pydevd debug statements accidentally left
        entry: "pydevd.*settrace\\("
        pass_filenames: true
        files: \.py$
      - id: dont-use-safe-filter
        language: pygrep
        name: Don't use safe in templates
        description: the Safe filter is error-prone, use Markup() in code instead
        entry: "\\|\\s*safe"
        files: \.html$
        pass_filenames: true
      - id: no-providers-in-core-examples
        language: pygrep
        name: No providers imports in core example DAGs
        description: The core example DAGs have no dependencies other than core Airflow
        entry: "^\\s*from airflow\\.providers.*"
        pass_filenames: true
        files: ^airflow/example_dags/.*\.py$
      - id: no-relative-imports
        language: pygrep
        name: No relative imports
        description: Airflow style is to use absolute imports only
        entry: "^\\s*from\\s+\\."
        pass_filenames: true
        files: \.py$
        exclude: ^tests/
      - id: language-matters
        language: pygrep
        name: Check for language that we do not accept as community
        description: Please use "deny_list" or "allow_list"  instead.
        entry: "(?i)(black|white)[_-]?list"
        pass_filenames: true
        exclude: >
          (?x)
          ^airflow/providers/apache/cassandra/hooks/cassandra.py$|
          ^airflow/providers/apache/hive/operators/hive_stats.py$|
          ^airflow/providers/apache/hive/.*PROVIDER_CHANGES_*|
          ^airflow/providers/apache/hive/.*README.md$|
          ^tests/providers/apache/cassandra/hooks/test_cassandra.py$|
          ^docs/apache-airflow-providers-apache-cassandra/connections/cassandra.rst$|
          ^CHANGELOG.txt$
      - id: consistent-pylint
        language: pygrep
        name: Check for inconsistent pylint disable/enable without space
        entry: "pylint:disable|pylint:enable"
        pass_filenames: true
        files: \.py$
      - id: base-operator
        language: pygrep
        name: Check BaseOperator[Link] core imports
        description: Make sure BaseOperator[Link] is imported from airflow.models.baseoperator in core
        entry: "from airflow\\.models import.* BaseOperator"
        files: \.py$
        pass_filenames: true
        exclude: >
          (?x)
          ^airflow/gcp/.*$|
          ^airflow/hooks/.*$|
          ^airflow/operators/.*$|
          ^airflow/sensors/.*$|
          ^airflow/providers/.*$|
          ^dev/provider_packages/.*$
      - id: base-operator
        language: pygrep
        name: Check BaseOperator[Link] other imports
        description: Make sure BaseOperator[Link] is imported from airflow.models outside of core
        entry: "from airflow\\.models\\.baseoperator import.* BaseOperator"
        pass_filenames: true
        files: >
          (?x)
          ^airflow/gcp/.*$|
          ^airflow/hooks/.*$|
          ^airflow/operators/.*$|
          ^airflow/sensors/.*$|
          ^airflow/providers/.*\.py$
      - id: provide-create-sessions
        language: pygrep
        name: Check provide_session and create_session imports
        description: provide_session and create_session should be imported from airflow.utils.session
          to avoid import cycles.
        entry: "from airflow\\.utils\\.db import.* (provide_session|create_session)"
        files: \.py$
        pass_filenames: true
      - id: incorrect-use-of-LoggingMixin
        language: pygrep
        name: Make sure LoggingMixin is not used alone
        entry: "LoggingMixin\\(\\)"
        files: \.py$
        pass_filenames: true
      - id: daysago-import-check
        language: pygrep
        name: Make sure days_ago is imported from airflow.utils.dates
        entry: "(airflow\\.){0,1}utils\\.dates\\.days_ago"
        files: \.py$
        pass_filenames: true
      - id: restrict-start_date
        language: pygrep
        name: "'start_date' should not be defined in default_args in example_dags"
        entry: "default_args\\s*=\\s*{\\s*(\"|')start_date(\"|')|(\"|')start_date(\"|'):"
        files: \.*example_dags.*.py$
        pass_filenames: true
      - id: check-integrations
        name: Check if integration list is aligned
        entry: ./scripts/ci/pre_commit/pre_commit_check_integrations.sh
        language: system
        pass_filenames: false
        files: ^common/_common_values.sh$|^breeze-complete$
      - id: check-apache-license
        name: Check if licenses are OK for Apache
        entry: "./scripts/ci/pre_commit/pre_commit_check_license.sh"
        language: system
        files: ^.*LICENSE.*$|^.*LICENCE.*$
        pass_filenames: false
      - id: airflow-config-yaml
        name: Checks for consistency between config.yml and default_config.cfg
        language: python
        entry: ./scripts/ci/pre_commit/pre_commit_yaml_to_cfg.py
        files: "config.yml$|default_airflow.cfg$|default.cfg$"
        pass_filenames: false
        require_serial: true
        additional_dependencies: ['pyyaml']
      - id: sort-in-the-wild
        name: Sort INTHEWILD.md alphabetically
        entry: ./scripts/ci/pre_commit/pre_commit_sort_in_the_wild.sh
        language: system
        files: ^.pre-commit-config.yaml$|^INTHEWILD.md$
        require_serial: true
      - id: helm-lint
        name: Lint Helm Chart
        entry: ./scripts/ci/pre_commit/pre_commit_helm_lint.sh
        language: system
        pass_filenames: false
        files: ^chart
        require_serial: true
      - id: shellcheck
        name: Check Shell scripts syntax correctness
        language: docker_image
        entry: koalaman/shellcheck:stable -x -a
        files: ^breeze$|^breeze-complete$|\.sh$|^hooks/build$|^hooks/push$|\.bash$|\.bats$
      - id: bats-tests
        name: Run BATS bash tests for changed Breeze bash files
        language: system
        entry: "./scripts/ci/pre_commit/pre_commit_bat_tests.sh tests/bats/breeze/"
        files: ^breeze$|^breeze-complete$|^tests/bats/breeze
        pass_filenames: false
      - id: bats-tests
        name: Run BATS bash tests for changed bash files
        language: system
        entry: "./scripts/ci/pre_commit/pre_commit_bat_tests.sh"
        files: \.sh$|\.bash$|\.bats$
        exclude: ^tests/bats/in_container|^scripts/in_container|^tests/bats/breeze
        pass_filenames: true
        require_serial: true
      - id: stylelint
        name: stylelint
        entry: "stylelint"
        language: node
        files: ^airflow/www/.*\.(css|scss|sass)$
        # Keep dependency versions in sync w/ airflow/www/package.json
        additional_dependencies: ['stylelint@13.3.1', 'stylelint-config-standard@20.0.0']
      - id: providers-init-file
        name: Provider init file
        pass_filenames: false
        always_run: true
        entry: ./scripts/ci/pre_commit/pre_commit_check_providers_init.sh
        language: system
      - id: provider-yamls
        name: Validate providers.yaml files
        pass_filenames: false
        entry: ./scripts/ci/pre_commit/pre_commit_check_provider_yaml_files.py
        language: python
        require_serial: true
        files: provider.yaml$|scripts/ci/pre_commit/pre_commit_check_provider_yaml_files.py$|^docs/
        additional_dependencies: ['PyYAML==5.3.1', 'jsonschema==3.2.0', 'tabulate==0.8.7']
      - id: mermaid
        name: Generate mermaid images
        entry: ./scripts/ci/pre_commit/pre_commit_mermaid.sh
        language: system
        files: \.mermaid$
        require_serial: true
      - id: pre-commit-descriptions
        name: Check if pre-commits are described
        entry: ./scripts/ci/pre_commit/pre_commit_check_pre_commits.sh
        language: system
        files: ^.pre-commit-config.yaml$|^STATIC_CODE_CHECKS.rst|^breeze-complete$
        require_serial: true
      - id: pre-commit-hook-names
        name: Ensure hook ids are not overly long
        entry: ./scripts/ci/pre_commit/pre_commit_check_pre_commit_hook_names.py
        args:
          - --max-length=70
        language: python
        files: ^.pre-commit-config.yaml$
        additional_dependencies: ['pyyaml']
        require_serial: true
        pass_filenames: false
      - id: airflow-providers-available
        name: Checks providers available when declared by extras in setup.py
        language: python
        entry: ./scripts/ci/pre_commit/pre_commit_check_extras_have_providers.py
        files: "setup.py|^airflow/providers/.*.py"
        pass_filenames: false
        require_serial: true
        additional_dependencies: ['rich']
      - id: markdownlint
        name: Run markdownlint
        description: "Checks the style of Markdown files."
        entry: markdownlint
        language: node
        types: [markdown]
        files: \.(md|mdown|markdown)$
        additional_dependencies: ['markdownlint-cli']
      - id: json-schema
        name: Lint JSON Schema files with JSON Schema
        entry: ./scripts/ci/pre_commit/pre_commit_json_schema.py
        args:
          - --spec-url
          - https://json-schema.org/draft-07/schema
        language: python
        pass_filenames: true
        files: .*\.schema\.json$
        require_serial: true
        additional_dependencies: ['jsonschema==3.2.0', 'PyYAML==5.3.1', 'requests==2.25.0']
      - id: json-schema
        name: Lint JSON Schema files with JSON Schema
        entry: ./scripts/ci/pre_commit/pre_commit_json_schema.py
        args:
          - --spec-url
          - https://raw.githubusercontent.com/instrumenta/kubernetes-json-schema/master/v1.14.9/service-v1.json
        language: python
        pass_filenames: true
        files: scripts/ci/kubernetes/nodeport.yaml
        require_serial: true
        additional_dependencies: ['jsonschema==3.2.0', 'PyYAML==5.3.1', 'requests==2.25.0']
      - id: json-schema
        name: Lint Docker compose files with JSON Schema
        entry: ./scripts/ci/pre_commit/pre_commit_json_schema.py
        args:
          - --spec-url
          - https://raw.githubusercontent.com/compose-spec/compose-spec/master/schema/compose-spec.json
        language: python
        pass_filenames: true
        files: scripts/ci/docker-compose/.+.yml
        require_serial: true
        additional_dependencies: ['jsonschema==3.2.0', 'PyYAML==5.3.1', 'requests==2.25.0']
      - id: json-schema
        name: Lint chart/values.yaml file with JSON Schema
        entry: ./scripts/ci/pre_commit/pre_commit_json_schema.py
        args:
          - --spec-file
          - chart/values.schema.json
        language: python
        pass_filenames: true
        files: chart/values.yaml$
        require_serial: true
        additional_dependencies: ['jsonschema==3.2.0', 'PyYAML==5.3.1', 'requests==2.25.0']
      - id: json-schema
        name: Lint airflow/config_templates/config.yml file with JSON Schema
        entry: ./scripts/ci/pre_commit/pre_commit_json_schema.py
        args:
          - --spec-file
          - airflow/config_templates/config.yml.schema.json
        language: python
        pass_filenames: true
        files: airflow/config_templates/config.yml$
        require_serial: true
        additional_dependencies: ['jsonschema==3.2.0', 'PyYAML==5.3.1', 'requests==2.25.0']
        ## ADD MOST PRE-COMMITS ABOVE THAT LINE
        # The below pre-commits are those requiring CI image to be built
      - id: build
        name: Check if image build is needed
        entry: ./scripts/ci/pre_commit/pre_commit_ci_build.sh 3.6 false
        language: system
        always_run: true
        pass_filenames: false
      - id: mypy
        name: Run mypy
        language: system
        entry: "./scripts/ci/pre_commit/pre_commit_mypy.sh"
        files: \.py$
        exclude: ^dev|^provider_packages|^chart|^docs
      - id: mypy
        name: Run mypy for helm chart tests
        language: system
        entry: "./scripts/ci/pre_commit/pre_commit_mypy.sh"
        files: ^chart/.*\.py$
        require_serial: true
      - id: mypy
        name: Run mypy for /docs/ folder
        language: system
        entry: "./scripts/ci/pre_commit/pre_commit_mypy.sh"
        files: ^docs/.*\.py$
        exclude: rtd-deprecation
        require_serial: true
      - id: pylint
        name: Run pylint
        language: system
        entry: "./scripts/ci/pre_commit/pre_commit_pylint.sh"
        files: \.py$
        exclude: ^scripts/.*\.py$|^dev|^provider_packages|^chart
        pass_filenames: true
        require_serial: true
      - id: pylint
        name: Run pylint for helm chart tests
        language: system
        entry: "./scripts/ci/pre_commit/pre_commit_pylint.sh"
        files: ^chart/.*\.py$
        pass_filenames: true
        require_serial: true
      - id: flake8
        name: Run flake8
        language: system
        entry: "./scripts/ci/pre_commit/pre_commit_flake8.sh"
        files: \.py$
        pass_filenames: true
      - id: bats-in-container-tests
        name: Run in container bats tests
        language: system
        entry: "./scripts/ci/pre_commit/pre_commit_in_container_bats_test.sh"
        files: ^tests/bats/in_container/.*.bats$|^scripts/in_container/.*sh
        pass_filenames: false
        ## ONLY ADD PRE-COMMITS HERE THAT REQUIRE CI IMAGE
