You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by ep...@apache.org on 2022/11/11 07:34:31 UTC

[airflow] branch v2-4-test updated (5cda86a2fa -> 1d22d31d38)

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

ephraimanierobi pushed a change to branch v2-4-test
in repository https://gitbox.apache.org/repos/asf/airflow.git


    omit 5cda86a2fa Only run mypy/flake static tests for providers in main branch (#27608)
     new 1d22d31d38 Only run mypy/flake static tests for providers in main branch (#27608)

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (5cda86a2fa)
            \
             N -- N -- N   refs/heads/v2-4-test (1d22d31d38)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:


[airflow] 01/01: Only run mypy/flake static tests for providers in main branch (#27608)

Posted by ep...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ephraimanierobi pushed a commit to branch v2-4-test
in repository https://gitbox.apache.org/repos/asf/airflow.git

commit 1d22d31d38f4158f410371c010670d89a4ade292
Author: Jarek Potiuk <ja...@potiuk.com>
AuthorDate: Thu Nov 10 23:38:06 2022 +0100

    Only run mypy/flake static tests for providers in main branch (#27608)
    
    (cherry picked from commit 93459535684b847f16c4fdeb043aeb10dae1c852)
---
 .github/workflows/ci.yml                        |  1 +
 scripts/ci/pre_commit/common_precommit_utils.py |  8 ++++++++
 scripts/ci/pre_commit/pre_commit_flake8.py      | 11 +++++++++--
 scripts/ci/pre_commit/pre_commit_mypy.py        | 11 +++++++++--
 4 files changed, 27 insertions(+), 4 deletions(-)

diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 196dcf42c2..9b1f392129 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -703,6 +703,7 @@ ${{ hashFiles('.pre-commit-config.yaml') }}"
           SKIP: ${{ needs.build-info.outputs.skip-pre-commits }}
           COLUMNS: "250"
           SKIP_GROUP_OUTPUT: "true"
+          DEFAULT_BRANCH: ${{ needs.build-info.outputs.default-branch }}
       - name: "Fix ownership"
         run: breeze ci fix-ownership
         if: always()
diff --git a/scripts/ci/pre_commit/common_precommit_utils.py b/scripts/ci/pre_commit/common_precommit_utils.py
index 9a3a4b1705..8326c28a5f 100644
--- a/scripts/ci/pre_commit/common_precommit_utils.py
+++ b/scripts/ci/pre_commit/common_precommit_utils.py
@@ -24,6 +24,14 @@ from pathlib import Path
 AIRFLOW_SOURCES_ROOT = Path(__file__).parents[3].resolve()
 
 
+def filter_out_providers_on_non_main_branch(files: list[str]) -> list[str]:
+    """When running build on non-main branch do not take providers into account"""
+    default_branch = os.environ.get("DEFAULT_BRANCH")
+    if not default_branch or default_branch == "main":
+        return files
+    return [file for file in files if not file.startswith(f"airflow{os.sep}providers")]
+
+
 def insert_documentation(file_path: Path, content: list[str], header: str, footer: str):
     text = file_path.read_text().splitlines(keepends=True)
     replacing = False
diff --git a/scripts/ci/pre_commit/pre_commit_flake8.py b/scripts/ci/pre_commit/pre_commit_flake8.py
index 9ffd881e82..1a438588b9 100755
--- a/scripts/ci/pre_commit/pre_commit_flake8.py
+++ b/scripts/ci/pre_commit/pre_commit_flake8.py
@@ -34,12 +34,19 @@ VERBOSE = os.environ.get('VERBOSE', "false")[0].lower() == "t"
 DRY_RUN = os.environ.get('DRY_RUN', "false")[0].lower() == "t"
 os.environ['SKIP_GROUP_OUTPUT'] = "true"
 
-if __name__ == '__main__':
+if __name__ == "__main__":
+    sys.path.insert(0, str(Path(__file__).parent.resolve()))  # make sure common_precommit_utils is imported
+    from common_precommit_utils import filter_out_providers_on_non_main_branch
+
     sys.path.insert(0, str(AIRFLOW_SOURCES / "dev" / "breeze" / "src"))
     from airflow_breeze.global_constants import MOUNT_SELECTED
     from airflow_breeze.utils.docker_command_utils import get_extra_docker_flags
     from airflow_breeze.utils.run_utils import get_ci_image_for_pre_commits, run_command
 
+    files_to_test = filter_out_providers_on_non_main_branch(sys.argv[1:])
+    if not files_to_test:
+        print("No files to tests. Quitting")
+        sys.exit(0)
     airflow_image = get_ci_image_for_pre_commits(verbose=VERBOSE, dry_run=DRY_RUN)
     cmd_result = run_command(
         [
@@ -55,7 +62,7 @@ if __name__ == '__main__':
             "never",
             airflow_image,
             "/opt/airflow/scripts/in_container/run_flake8.sh",
-            *sys.argv[1:],
+            *files_to_test,
         ],
         check=False,
         verbose=VERBOSE,
diff --git a/scripts/ci/pre_commit/pre_commit_mypy.py b/scripts/ci/pre_commit/pre_commit_mypy.py
index 8ff73e888f..a5f6a185bd 100755
--- a/scripts/ci/pre_commit/pre_commit_mypy.py
+++ b/scripts/ci/pre_commit/pre_commit_mypy.py
@@ -35,13 +35,20 @@ VERBOSE = os.environ.get('VERBOSE', "false")[0].lower() == "t"
 DRY_RUN = os.environ.get('DRY_RUN', "false")[0].lower() == "t"
 os.environ['SKIP_GROUP_OUTPUT'] = "true"
 
-if __name__ == '__main__':
+if __name__ == "__main__":
+    sys.path.insert(0, str(Path(__file__).parent.resolve()))  # make sure common_precommit_utils is imported
+    from common_precommit_utils import filter_out_providers_on_non_main_branch
+
     sys.path.insert(0, str(AIRFLOW_SOURCES / "dev" / "breeze" / "src"))
     from airflow_breeze.global_constants import MOUNT_SELECTED
     from airflow_breeze.utils.docker_command_utils import get_extra_docker_flags
     from airflow_breeze.utils.path_utils import create_mypy_volume_if_needed
     from airflow_breeze.utils.run_utils import get_ci_image_for_pre_commits, run_command
 
+    files_to_test = filter_out_providers_on_non_main_branch(sys.argv[1:])
+    if files_to_test == ["--namespace-packages"]:
+        print("No files to tests. Quitting")
+        sys.exit(0)
     airflow_image = get_ci_image_for_pre_commits(verbose=VERBOSE, dry_run=DRY_RUN)
     create_mypy_volume_if_needed()
     cmd_result = run_command(
@@ -58,7 +65,7 @@ if __name__ == '__main__':
             "never",
             airflow_image,
             "/opt/airflow/scripts/in_container/run_mypy.sh",
-            *sys.argv[1:],
+            *files_to_test,
         ],
         check=False,
         verbose=VERBOSE,