From c8a67332e105a5519625371d266e0dd0400d81ad Mon Sep 17 00:00:00 2001 From: Jarek Potiuk Date: Wed, 22 Nov 2023 16:59:19 +0000 Subject: [PATCH] Avoid breeze self-upgrade run in some pre-commits. After recent refactors, some of the pre-commits imported breeze code and accidentally triggered breeze self-upgrade. This slowed them down a bit because every time they run breeze attempted to self-upgrade. This was especially visible in mypy. This PR sets "SKIP_UPGRADE_CHECK" by all the pre-commits which skips the self-upgrade during breeze importing. --- .../pre_commit/pre_commit_breeze_cmd_line.py | 9 ++--- .../pre_commit/pre_commit_local_yml_mounts.py | 39 ++++++++++--------- scripts/ci/pre_commit/pre_commit_mypy.py | 2 + 3 files changed, 26 insertions(+), 24 deletions(-) diff --git a/scripts/ci/pre_commit/pre_commit_breeze_cmd_line.py b/scripts/ci/pre_commit/pre_commit_breeze_cmd_line.py index bcb41e489e5f1..5276e50dee867 100755 --- a/scripts/ci/pre_commit/pre_commit_breeze_cmd_line.py +++ b/scripts/ci/pre_commit/pre_commit_breeze_cmd_line.py @@ -60,10 +60,6 @@ def verify_all_commands_described_in_docs(): def is_regeneration_needed() -> bool: - env = os.environ.copy() - env["AIRFLOW_SOURCES_ROOT"] = str(AIRFLOW_SOURCES_DIR) - # needed to keep consistent output - env["PYTHONPATH"] = str(BREEZE_SOURCES_DIR) return_code = call( [ sys.executable, @@ -72,12 +68,15 @@ def is_regeneration_needed() -> bool: "regenerate-command-images", "--check-only", ], - env=env, ) return return_code != 0 if __name__ == "__main__": + os.environ["AIRFLOW_SOURCES_ROOT"] = str(AIRFLOW_SOURCES_DIR) + # needed to keep consistent output + os.environ["PYTHONPATH"] = str(BREEZE_SOURCES_DIR) + os.environ["SKIP_UPGRADE_CHECK"] = "true" return_code = 0 verify_all_commands_described_in_docs() if is_regeneration_needed(): diff --git a/scripts/ci/pre_commit/pre_commit_local_yml_mounts.py b/scripts/ci/pre_commit/pre_commit_local_yml_mounts.py index 5f61252e7814f..97ffccfbe6b2b 100755 --- a/scripts/ci/pre_commit/pre_commit_local_yml_mounts.py +++ b/scripts/ci/pre_commit/pre_commit_local_yml_mounts.py @@ -17,34 +17,35 @@ # under the License. from __future__ import annotations +import os import sys from pathlib import Path -sys.path.insert(0, str(Path(__file__).parent.resolve())) # make sure common_precommit_utils is imported +if __name__ == "__main__": + os.environ["SKIP_UPGRADE_CHECK"] = "true" + sys.path.insert(0, str(Path(__file__).parent.resolve())) # make sure common_precommit_utils is imported -from common_precommit_utils import AIRFLOW_SOURCES_ROOT_PATH # isort: skip # noqa: E402 + from common_precommit_utils import AIRFLOW_SOURCES_ROOT_PATH # isort: skip -sys.path.insert(0, str(AIRFLOW_SOURCES_ROOT_PATH)) # make sure setup is imported from Airflow -sys.path.insert( - 0, str(AIRFLOW_SOURCES_ROOT_PATH / "dev" / "breeze" / "src") -) # make sure setup is imported from Airflow -# flake8: noqa: F401 -from airflow_breeze.utils.docker_command_utils import VOLUMES_FOR_SELECTED_MOUNTS # isort: skip # noqa: E402 + sys.path.insert(0, str(AIRFLOW_SOURCES_ROOT_PATH)) # make sure setup is imported from Airflow + sys.path.insert( + 0, str(AIRFLOW_SOURCES_ROOT_PATH / "dev" / "breeze" / "src") + ) # make sure setup is imported from Airflow -from common_precommit_utils import insert_documentation # isort: skip # noqa: E402 + from airflow_breeze.utils.docker_command_utils import VOLUMES_FOR_SELECTED_MOUNTS + from common_precommit_utils import insert_documentation -sys.path.append(str(AIRFLOW_SOURCES_ROOT_PATH)) + sys.path.append(str(AIRFLOW_SOURCES_ROOT_PATH)) -MOUNTS_HEADER = ( - " # START automatically generated volumes from " - "VOLUMES_FOR_SELECTED_MOUNTS in docker_command_utils.py" -) -MOUNTS_FOOTER = ( - " # END automatically generated volumes from " - "VOLUMES_FOR_SELECTED_MOUNTS in docker_command_utils.py" -) + MOUNTS_HEADER = ( + " # START automatically generated volumes from " + "VOLUMES_FOR_SELECTED_MOUNTS in docker_command_utils.py" + ) + MOUNTS_FOOTER = ( + " # END automatically generated volumes from " + "VOLUMES_FOR_SELECTED_MOUNTS in docker_command_utils.py" + ) -if __name__ == "__main__": local_mount_file_path = AIRFLOW_SOURCES_ROOT_PATH / "scripts" / "ci" / "docker-compose" / "local.yml" PREFIX = " " volumes = [] diff --git a/scripts/ci/pre_commit/pre_commit_mypy.py b/scripts/ci/pre_commit/pre_commit_mypy.py index 9cd9b876915cb..d478a3c5eea02 100755 --- a/scripts/ci/pre_commit/pre_commit_mypy.py +++ b/scripts/ci/pre_commit/pre_commit_mypy.py @@ -34,6 +34,8 @@ if __name__ == "__main__": sys.path.insert(0, str(Path(__file__).parent.resolve())) # make sure common_precommit_utils is imported + + os.environ["SKIP_UPGRADE_CHECK"] = "true" from common_precommit_utils import filter_out_providers_on_non_main_branch sys.path.insert(0, str(AIRFLOW_SOURCES / "dev" / "breeze" / "src"))