This is an automated email from the ASF dual-hosted git repository. potiuk pushed a commit to branch v2-8-test in repository https://gitbox.apache.org/repos/asf/airflow.git
commit 2527fb0e0935d6bfdb8a78d694e3ec18b742cd69 Author: Jarek Potiuk <[email protected]> AuthorDate: Fri Jan 12 17:39:50 2024 +0100 Update Airflow release process to include reproducible tarballs (#36744) Source tarball is the main artifact produced by the release process - one that is the "official" release and named like that by the Apache Software Foundation. This PR makes the source tarball generation reproducible - following reproducibility of the `.whl` and `sdist` packages. This change adds: * vendors-in reproducible.py script that repacks .tar.gz package in reproducible way using source-date-epoch as timestamps * breeze release-management prepare-airflow-tarball command * adds verification of the tarballs to PMC verification process * adds --use-local-hatch for package building command to allow for faster / non-docker build of packages for PMC verification * improves diagnostic output of the release and build commands (cherry picked from commit 72a571dc6d21d90f92d5ce683a5d40c6a527fcb0) --- .rat-excludes | 2 + 3rd-party-licenses/LICENSE-reproducible.txt | 8 ++ BREEZE.rst | 24 ++++ dev/README_RELEASE_AIRFLOW.md | 15 ++- .../commands/release_candidate_command.py | 136 +++++++++++++++------ .../commands/release_management_commands.py | 31 ++++- .../commands/release_management_commands_config.py | 15 ++- .../src/airflow_breeze/utils/reproducible.py | 135 ++++++++++++++++++++ images/breeze/output_release-management.svg | 54 ++++---- images/breeze/output_release-management.txt | 2 +- ..._release-management_prepare-airflow-package.svg | 28 +++-- ..._release-management_prepare-airflow-package.txt | 2 +- ..._release-management_prepare-airflow-tarball.svg | 106 ++++++++++++++++ ..._release-management_prepare-airflow-tarball.txt | 1 + .../output_setup_check-all-params-in-groups.svg | 20 +-- .../output_setup_check-all-params-in-groups.txt | 2 +- .../output_setup_regenerate-command-images.svg | 46 +++---- .../output_setup_regenerate-command-images.txt | 2 +- .../in_container/run_prepare_airflow_packages.py | 5 +- 19 files changed, 514 insertions(+), 120 deletions(-) diff --git a/.rat-excludes b/.rat-excludes index 9822c9ac41..6464d827d5 100644 --- a/.rat-excludes +++ b/.rat-excludes @@ -132,6 +132,8 @@ scripts/* images/* dev/* chart/*.iml +out/* +airflow-build-dockerfile* # Sha files .*sha256 diff --git a/3rd-party-licenses/LICENSE-reproducible.txt b/3rd-party-licenses/LICENSE-reproducible.txt new file mode 100644 index 0000000000..65310b4f85 --- /dev/null +++ b/3rd-party-licenses/LICENSE-reproducible.txt @@ -0,0 +1,8 @@ +# Copyright 2013 The Servo Project Developers. +# Copyright 2017 zerolib Developers. +# +# Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or +# http://www.apache.org/licenses/LICENSE-2.0> or the MIT license +# <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your +# option. This file may not be copied, modified, or distributed +# except according to those terms. diff --git a/BREEZE.rst b/BREEZE.rst index 61b42c510f..e5a12a8ac9 100644 --- a/BREEZE.rst +++ b/BREEZE.rst @@ -1981,6 +1981,30 @@ default is to build ``both`` type of packages ``sdist`` and ``wheel``. :alt: Breeze release-management prepare-airflow-package +Preparing airflow tarball +""""""""""""""""""""""""" + +You can prepare airflow source tarball using Breeze: + +.. code-block:: bash + + breeze release-management prepare-airflow-tarball + +This prepares airflow -source.tar.gz package in the dist folder. + +You must specify ``--version`` flag which is a pre-release version of Airflow you are preparing the +tarball for. + +.. code-block:: bash + + breeze release-management prepare-airflow-tarball --version 2.8.0rc1 + +.. image:: ./images/breeze/output_release-management_prepare-airflow-tarball.svg + :target: https://raw.githubusercontent.com/apache/airflow/main/images/breeze/output_release-management_prepare-airflow-tarball.svg + :width: 100% + :alt: Breeze release-management prepare-airflow-tarball + + Start minor branch of Airflow """"""""""""""""""""""""""""" diff --git a/dev/README_RELEASE_AIRFLOW.md b/dev/README_RELEASE_AIRFLOW.md index 50ee3b280d..22013c90db 100644 --- a/dev/README_RELEASE_AIRFLOW.md +++ b/dev/README_RELEASE_AIRFLOW.md @@ -585,16 +585,23 @@ Airflow supports reproducible builds, which means that the packages prepared fro produce binary identical packages in reproducible way. You should check if the packages can be binary-reproduced when built from the sources. -Checkout airflow sources and build packages in dist folder: +Checkout airflow sources and build packages in dist folder (replace X.Y.Zrc1 with the version +you are checking): ```shell script -git checkout X.Y.Zrc1 +VERSION=X.Y.Zrc1 +git checkout ${VERSION} export AIRFLOW_REPO_ROOT=$(pwd) rm -rf dist/* -breeze release-management prepare-airflow-package --package-format both +breeze release-management prepare-airflow-tarball --version ${VERSION} +breeze release-management prepare-airflow-package --package-format both --use-local-hatch ``` -That should produce `.whl` and `.tar.gz` packages in dist folder. +Note that you need to have `hatch` installed in order to build the packages with the last command. +If you do not have `hatch`, you can remove the `--use-local-hatch` flag and it will build and use +docker image that has `hatch` and other necessary tools installed. + +That should produce `-source.tar.gz` tarball of sources and `.whl`, `.tar.gz` packages in dist folder. Change to the directory where you have the packages from svn: diff --git a/dev/breeze/src/airflow_breeze/commands/release_candidate_command.py b/dev/breeze/src/airflow_breeze/commands/release_candidate_command.py index 09cc67c226..11cba8d9f5 100644 --- a/dev/breeze/src/airflow_breeze/commands/release_candidate_command.py +++ b/dev/breeze/src/airflow_breeze/commands/release_candidate_command.py @@ -17,6 +17,7 @@ from __future__ import annotations import os +import shutil import click @@ -25,6 +26,7 @@ from airflow_breeze.commands.release_management_group import release_management from airflow_breeze.utils.confirm import confirm_action from airflow_breeze.utils.console import console_print from airflow_breeze.utils.path_utils import AIRFLOW_SOURCES_ROOT +from airflow_breeze.utils.reproducible import archive_deterministically, get_source_date_epoch from airflow_breeze.utils.run_utils import run_command CI = os.environ.get("CI") @@ -59,21 +61,30 @@ def merge_pr(version_branch): def git_tag(version): if confirm_action(f"Tag {version}?"): run_command(["git", "tag", "-s", f"{version}", "-m", f"Apache Airflow {version}"], check=True) - console_print("Tagged") + console_print("[success]Tagged") def git_clean(): if confirm_action("Clean git repo?"): run_command(["breeze", "ci", "fix-ownership"], dry_run_override=DRY_RUN, check=True) run_command(["git", "clean", "-fxd"], dry_run_override=DRY_RUN, check=True) - console_print("Git repo cleaned") + console_print("[success]Git repo cleaned") -def tarball_release(version, version_without_rc): - if confirm_action("Create tarball?"): - run_command(["rm", "-rf", "dist"], check=True) +DIST_DIR = AIRFLOW_SOURCES_ROOT / "dist" +OUT_DIR = AIRFLOW_SOURCES_ROOT / "out" +REPRODUCIBLE_DIR = OUT_DIR / "reproducible" + - run_command(["mkdir", "dist"], check=True) +def tarball_release(version: str, version_without_rc: str, source_date_epoch: int): + if confirm_action("Create tarball?"): + console_print(f"[info]Creating tarball for Airflow {version}") + shutil.rmtree(OUT_DIR, ignore_errors=True) + DIST_DIR.mkdir(exist_ok=True) + OUT_DIR.mkdir(exist_ok=True) + REPRODUCIBLE_DIR.mkdir(exist_ok=True) + archive_name = f"apache-airflow-{version_without_rc}-source.tar.gz" + temporary_archive = OUT_DIR / archive_name run_command( [ "git", @@ -82,19 +93,48 @@ def tarball_release(version, version_without_rc): f"{version}", f"--prefix=apache-airflow-{version_without_rc}/", "-o", - f"dist/apache-airflow-{version_without_rc}-source.tar.gz", + temporary_archive.as_posix(), ], check=True, ) - console_print("Tarball created") + run_command( + [ + "tar", + "-xf", + temporary_archive.as_posix(), + "-C", + REPRODUCIBLE_DIR.as_posix(), + "--strip", + "1", + ] + ) + final_archive = DIST_DIR / archive_name + archive_deterministically( + dir_to_archive=REPRODUCIBLE_DIR.as_posix(), + dest_archive=final_archive.as_posix(), + prepend_path=None, + timestamp=source_date_epoch, + ) + console_print(f"[success]Tarball created in {final_archive}") -def create_artifacts_with_sdist(): - run_command(["hatch", "build", "-t", "sdist", "-t", "wheel"], check=True) - console_print("Artifacts created") +def create_artifacts_with_hatch(source_date_epoch: int): + console_print("[info]Creating artifacts with hatch") + shutil.rmtree(DIST_DIR, ignore_errors=True) + DIST_DIR.mkdir(exist_ok=True) + env_copy = os.environ.copy() + env_copy["SOURCE_DATE_EPOCH"] = str(source_date_epoch) + run_command( + ["hatch", "build", "-c", "-t", "custom", "-t", "sdist", "-t", "wheel"], check=True, env=env_copy + ) + console_print("[success]Successfully prepared Airflow packages:") + for file in sorted(DIST_DIR.glob("apache_airflow*")): + console_print(print(file.name)) + console_print() -def create_artifacts_with_breeze(): +def create_artifacts_with_docker(): + console_print("[info]Creating artifacts with docker") run_command( [ "breeze", @@ -105,14 +145,14 @@ def create_artifacts_with_breeze(): ], check=True, ) - console_print("Artifacts created") + console_print("[success]Artifacts created") def sign_the_release(repo_root): if confirm_action("Do you want to sign the release?"): os.chdir(f"{repo_root}/dist") run_command("./../dev/sign.sh *", dry_run_override=DRY_RUN, check=True, shell=True) - console_print("Release signed") + console_print("[success]Release signed") def tag_and_push_constraints(version, version_branch): @@ -135,7 +175,7 @@ def tag_and_push_constraints(version, version_branch): run_command( ["git", "push", "origin", "tag", f"constraints-{version}"], dry_run_override=DRY_RUN, check=True ) - console_print("Constraints tagged and pushed") + console_print("[success]Constraints tagged and pushed") def clone_asf_repo(version, repo_root): @@ -146,7 +186,7 @@ def clone_asf_repo(version, repo_root): check=True, ) run_command(["svn", "update", "--set-depth=infinity", "asf-dist/dev/airflow"], check=True) - console_print("Cloned ASF repo successfully") + console_print("[success]Cloned ASF repo successfully") def move_artifacts_to_svn(version, repo_root): @@ -154,7 +194,7 @@ def move_artifacts_to_svn(version, repo_root): os.chdir(f"{repo_root}/asf-dist/dev/airflow") run_command(["svn", "mkdir", f"{version}"], dry_run_override=DRY_RUN, check=True) run_command(f"mv {repo_root}/dist/* {version}/", dry_run_override=DRY_RUN, check=True, shell=True) - console_print("Moved artifacts to SVN:") + console_print("[success]Moved artifacts to SVN:") run_command(["ls"], dry_run_override=DRY_RUN) @@ -171,7 +211,7 @@ def push_artifacts_to_asf_repo(version, repo_root): dry_run_override=DRY_RUN, check=True, ) - console_print("Files pushed to svn") + console_print("[success]Files pushed to svn") def delete_asf_repo(repo_root): @@ -182,7 +222,7 @@ def delete_asf_repo(repo_root): def prepare_pypi_packages(version, version_suffix, repo_root): if confirm_action("Prepare pypi packages?"): - console_print("Preparing PyPI packages") + console_print("[info]Preparing PyPI packages") os.chdir(repo_root) run_command(["git", "checkout", f"{version}"], dry_run_override=DRY_RUN, check=True) run_command( @@ -198,13 +238,13 @@ def prepare_pypi_packages(version, version_suffix, repo_root): check=True, ) run_command(["twine", "check", "dist/*"], check=True) - console_print("PyPI packages prepared") + console_print("[success]PyPI packages prepared") def push_packages_to_pypi(version): if confirm_action("Do you want to push packages to production PyPI?"): run_command(["twine", "upload", "-r", "pypi", "dist/*"], dry_run_override=DRY_RUN, check=True) - console_print("Packages pushed to production PyPI") + console_print("[success]Packages pushed to production PyPI") console_print( "Again, confirm that the package is available here: https://pypi.python.org/pypi/apache-airflow" ) @@ -240,7 +280,7 @@ def push_release_candidate_tag_to_github(version): ) confirm_action(f"Confirm that {version} is pushed to PyPI(not PyPI test). Is it pushed?", abort=True) run_command(["git", "push", "origin", "tag", f"{version}"], dry_run_override=DRY_RUN, check=True) - console_print("Release candidate tag pushed to GitHub") + console_print("[success]Release candidate tag pushed to GitHub") def create_issue_for_testing(version, previous_version, github_token): @@ -293,10 +333,31 @@ def remove_old_releases(version, repo_root): dry_run_override=DRY_RUN, check=True, ) - + console_print("[success]Old releases removed") os.chdir(repo_root) +@release_management.command( + name="prepare-airflow-tarball", + help="Prepare airflow's source tarball.", +) [email protected]( + "--version", required=True, help="The release candidate version e.g. 2.4.3rc1", envvar="VERSION" +) +def prepare_airflow_tarball(version: str): + from packaging.version import Version + + airflow_version = Version(version) + if not airflow_version.is_prerelease: + exit("--version value must be a pre-release") + source_date_epoch = get_source_date_epoch() + version_without_rc = airflow_version.base_version + # Create the tarball + tarball_release( + version=version, version_without_rc=version_without_rc, source_date_epoch=source_date_epoch + ) + + @release_management.command( name="start-rc-process", short_help="Start RC process", @@ -311,7 +372,8 @@ def remove_old_releases(version, repo_root): def publish_release_candidate(version, previous_version, github_token): from packaging.version import Version - if not Version(version).is_prerelease: + airflow_version = Version(version) + if not airflow_version.is_prerelease: exit("--version value must be a pre-release") if Version(previous_version).is_prerelease: exit("--previous-version value must be a release not a pre-release") @@ -320,9 +382,10 @@ def publish_release_candidate(version, previous_version, github_token): if not github_token: console_print("GITHUB_TOKEN is not set! Issue generation will fail.") confirm_action("Do you want to continue?", abort=True) - version_suffix = version[5:] - version_branch = version[:3].replace(".", "-") - version_without_rc = version[:5] + + version_suffix = airflow_version.pre[0] + str(airflow_version.pre[1]) + version_branch = str(airflow_version.release[0]) + "-" + str(airflow_version.release[1]) + version_without_rc = airflow_version.base_version os.chdir(AIRFLOW_SOURCES_ROOT) airflow_repo_root = os.getcwd() @@ -343,20 +406,21 @@ def publish_release_candidate(version, previous_version, github_token): confirm_action("Pushes will be made to origin. Do you want to continue?", abort=True) # Merge the sync PR merge_pr(version_branch) - - # Tag & clean the repo + # + # # Tag & clean the repo git_tag(version) git_clean() - # Build the latest image - if confirm_action("Build latest breeze image?"): - run_command(["breeze", "ci-image", "build", "--python", "3.8"], dry_run_override=DRY_RUN, check=True) + source_date_epoch = get_source_date_epoch() + shutil.rmtree(DIST_DIR, ignore_errors=True) # Create the tarball - tarball_release(version, version_without_rc) + tarball_release( + version=version, version_without_rc=version_without_rc, source_date_epoch=source_date_epoch + ) # Create the artifacts - if confirm_action("Use breeze to create artifacts?"): - create_artifacts_with_breeze() + if confirm_action("Use docker to create artifacts?"): + create_artifacts_with_docker() elif confirm_action("Use hatch to create artifacts?"): - create_artifacts_with_sdist() + create_artifacts_with_hatch() # Sign the release sign_the_release(airflow_repo_root) # Tag and push constraints diff --git a/dev/breeze/src/airflow_breeze/commands/release_management_commands.py b/dev/breeze/src/airflow_breeze/commands/release_management_commands.py index ca2041bd94..c19e9890bc 100644 --- a/dev/breeze/src/airflow_breeze/commands/release_management_commands.py +++ b/dev/breeze/src/airflow_breeze/commands/release_management_commands.py @@ -142,6 +142,7 @@ from airflow_breeze.utils.provider_dependencies import ( get_related_providers, ) from airflow_breeze.utils.python_versions import get_python_version_list +from airflow_breeze.utils.reproducible import get_source_date_epoch from airflow_breeze.utils.run_utils import ( run_command, ) @@ -282,6 +283,11 @@ AIRFLOW_BUILD_DOCKERFILE_IGNORE_PATH = AIRFLOW_SOURCES_ROOT / "airflow-build-doc name="prepare-airflow-package", help="Prepare sdist/whl package of Airflow.", ) [email protected]( + "--use-local-hatch", + is_flag=True, + help="Use local hatch instead of docker to build the package. You need to have hatch installed.", +) @option_package_format @option_version_suffix_for_pypi @option_verbose @@ -289,10 +295,30 @@ AIRFLOW_BUILD_DOCKERFILE_IGNORE_PATH = AIRFLOW_SOURCES_ROOT / "airflow-build-doc def prepare_airflow_packages( package_format: str, version_suffix_for_pypi: str, + use_local_hatch: bool, ): perform_environment_checks() fix_ownership_using_docker() cleanup_python_generated_files() + source_date_epoch = get_source_date_epoch() + if use_local_hatch: + hatch_build_command = ["hatch", "build", "-c", "-t", "custom"] + if package_format in ["sdist", "both"]: + hatch_build_command.extend(["-t", "sdist"]) + if package_format in ["wheel", "both"]: + hatch_build_command.extend(["-t", "wheel"]) + env_copy = os.environ.copy() + env_copy["SOURCE_DATE_EPOCH"] = str(source_date_epoch) + run_command( + hatch_build_command, + check=True, + env=env_copy, + ) + get_console().print("[success]Successfully prepared Airflow packages:") + for file in sorted(DIST_DIR.glob("apache_airflow*")): + get_console().print(file.name) + get_console().print() + return # This is security feature. # # Building the image needed to build airflow package including .git directory @@ -350,7 +376,10 @@ def prepare_airflow_packages( # Copy all files in the dist directory in container to the host dist directory (note '/.' in SRC) run_command(["docker", "cp", f"{container_id}:/opt/airflow/dist/.", "./dist"], check=True) run_command(["docker", "rm", "--force", container_id], check=True) - get_console().print("[success]Successfully prepared Airflow package!\n\n") + get_console().print("[success]Successfully prepared Airflow packages:") + for file in sorted(DIST_DIR.glob("apache_airflow*")): + get_console().print(file.name) + get_console().print() def provider_action_summary(description: str, message_type: MessageType, packages: list[str]): diff --git a/dev/breeze/src/airflow_breeze/commands/release_management_commands_config.py b/dev/breeze/src/airflow_breeze/commands/release_management_commands_config.py index e6ddec7e16..b0b1bb96e0 100644 --- a/dev/breeze/src/airflow_breeze/commands/release_management_commands_config.py +++ b/dev/breeze/src/airflow_breeze/commands/release_management_commands_config.py @@ -19,8 +19,9 @@ from __future__ import annotations RELEASE_AIRFLOW_COMMANDS: dict[str, str | list[str]] = { "name": "Airflow release commands", "commands": [ - "prepare-airflow-package", "create-minor-branch", + "prepare-airflow-package", + "prepare-airflow-tarball", "start-rc-process", "start-release", "release-prod-images", @@ -43,9 +44,10 @@ RELEASE_PROVIDERS_COMMANDS: dict[str, str | list[str]] = { RELEASE_OTHER_COMMANDS: dict[str, str | list[str]] = { "name": "Other release commands", "commands": [ + "add-back-references", "publish-docs", "generate-constraints", - "add-back-references", + "update-constraints", ], } @@ -55,10 +57,19 @@ RELEASE_MANAGEMENT_PARAMETERS: dict[str, list[dict[str, str | list[str]]]] = { "name": "Package flags", "options": [ "--package-format", + "--use-local-hatch", "--version-suffix-for-pypi", ], } ], + "breeze release-management prepare-airflow-tarball": [ + { + "name": "Package flags", + "options": [ + "--version", + ], + } + ], "breeze release-management verify-provider-packages": [ { "name": "Provider verification flags", diff --git a/dev/breeze/src/airflow_breeze/utils/reproducible.py b/dev/breeze/src/airflow_breeze/utils/reproducible.py new file mode 100644 index 0000000000..a85d871a3c --- /dev/null +++ b/dev/breeze/src/airflow_breeze/utils/reproducible.py @@ -0,0 +1,135 @@ +#!/usr/bin/env python3 + + +# 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. + +# Copyright 2013 The Servo Project Developers. +# Copyright 2017 zerolib Developers. +# +# Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or +# http://www.apache.org/licenses/LICENSE-2.0> or the MIT license +# <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your +# option. This file may not be copied, modified, or distributed +# except according to those terms. + +# This command is a largely vendored-in script from +# https://github.com/MuxZeroNet/reproducible/blob/master/reproducible.py +from __future__ import annotations + +import contextlib +import gzip +import itertools +import locale +import os +import tarfile +from argparse import ArgumentParser + +from airflow_breeze.utils.path_utils import AIRFLOW_SOURCES_ROOT + + +def get_source_date_epoch(): + import yaml + + reproducible_build_yaml = AIRFLOW_SOURCES_ROOT / "airflow" / "reproducible_build.yaml" + reproducible_build_dict = yaml.safe_load(reproducible_build_yaml.read_text()) + source_date_epoch: int = reproducible_build_dict["source-date-epoch"] + return source_date_epoch + + [email protected] +def cd(new_path): + """Context manager for changing the current working directory""" + previous_path = os.getcwd() + try: + os.chdir(new_path) + yield + finally: + os.chdir(previous_path) + + [email protected] +def setlocale(name): + """Context manager for changing the current locale""" + saved_locale = locale.setlocale(locale.LC_ALL) + try: + yield locale.setlocale(locale.LC_ALL, name) + finally: + locale.setlocale(locale.LC_ALL, saved_locale) + + +def archive_deterministically(dir_to_archive, dest_archive, prepend_path=None, timestamp=0): + """Create a .tar.gz archive in a deterministic (reproducible) manner. + + See https://reproducible-builds.org/docs/archives/ for more details.""" + + def reset(tarinfo): + """Helper to reset owner/group and modification time for tar entries""" + tarinfo.uid = tarinfo.gid = 0 + tarinfo.uname = tarinfo.gname = "root" + tarinfo.mtime = timestamp + return tarinfo + + dest_archive = os.path.abspath(dest_archive) + with cd(dir_to_archive): + current_dir = "." + file_list = [current_dir] + for root, dirs, files in os.walk(current_dir): + for name in itertools.chain(dirs, files): + file_list.append(os.path.join(root, name)) + + # Sort file entries with the fixed locale + with setlocale("C"): + file_list.sort(key=locale.strxfrm) + + # Use a temporary file and atomic rename to avoid partially-formed + # packaging (in case of exceptional situations like running out of disk space). + temp_file = f"{dest_archive}.temp~" + with os.fdopen(os.open(temp_file, os.O_WRONLY | os.O_CREAT, 0o644), "wb") as out_file: + with gzip.GzipFile("wb", fileobj=out_file, mtime=0) as gzip_file: + with tarfile.open(fileobj=gzip_file, mode="w:") as tar_file: + for entry in file_list: + arcname = entry + if prepend_path is not None: + arcname = os.path.normpath(os.path.join(prepend_path, arcname)) + tar_file.add(entry, filter=reset, recursive=False, arcname=arcname) + os.rename(temp_file, dest_archive) + + +def main(): + parser = ArgumentParser() + parser.add_argument("-d", "--dir", help="directory to archive") + parser.add_argument("-o", "--out", help="archive destination") + parser.add_argument("-p", "--prepend", help="prepend path") + parser.add_argument( + "-t", "--timestamp", help="timestamp of files", type=int, default=get_source_date_epoch() + ) + + args = parser.parse_args() + + if not args.dir or not args.out: + error = ( + "You should provide a directory to archive, and the " + f"archive file name, not {repr((args.dir, args.out))}" + ) + raise ValueError(error) + + archive_deterministically(args.dir, args.out, args.prepend, args.timestamp) + + +if __name__ == "__main__": + main() diff --git a/images/breeze/output_release-management.svg b/images/breeze/output_release-management.svg index f853a75b69..745601db24 100644 --- a/images/breeze/output_release-management.svg +++ b/images/breeze/output_release-management.svg @@ -1,4 +1,4 @@ -<svg class="rich-terminal" viewBox="0 0 1482 830.8" xmlns="http://www.w3.org/2000/svg"> +<svg class="rich-terminal" viewBox="0 0 1482 806.4" xmlns="http://www.w3.org/2000/svg"> <!-- Generated with Rich https://www.textualize.io --> <style> @@ -42,7 +42,7 @@ <defs> <clipPath id="breeze-release-management-clip-terminal"> - <rect x="0" y="0" width="1463.0" height="779.8" /> + <rect x="0" y="0" width="1463.0" height="755.4" /> </clipPath> <clipPath id="breeze-release-management-line-0"> <rect x="0" y="1.5" width="1464" height="24.65"/> @@ -134,12 +134,9 @@ <clipPath id="breeze-release-management-line-29"> <rect x="0" y="709.1" width="1464" height="24.65"/> </clipPath> -<clipPath id="breeze-release-management-line-30"> - <rect x="0" y="733.5" width="1464" height="24.65"/> - </clipPath> </defs> - <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="828.8" rx="8"/><text class="breeze-release-management-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command: release-management</text> + <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="804.4" rx="8"/><text class="breeze-release-management-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command: release-management</text> <g transform="translate(26,22)"> <circle cx="0" cy="0" r="7" fill="#ff5f57"/> <circle cx="22" cy="0" r="7" fill="#febc2e"/> @@ -158,29 +155,28 @@ </text><text class="breeze-release-management-r5" x="0" y="166.4" textLength="12.2" clip-path="url(#breeze-release-management-line-6)">│</text><text class="breeze-release-management-r4" x="24.4" y="166.4" textLength="12.2" clip-path="url(#breeze-release-management-line-6)">-</text><text class="breeze-release-management-r4" x="36.6" y="166.4" textLength="61" clip-path="url(#breeze-release-management-line-6)">-help</text><text class="breeze-release-management-r6" x="122" y="166.4" textLeng [...] </text><text class="breeze-release-management-r5" x="0" y="190.8" textLength="1464" clip-path="url(#breeze-release-management-line-7)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-r1" x="1464" y="190.8" textLength="12.2" clip-path="url(#breeze-release-management-line-7)"> </text><text class="breeze-release-management-r5" x="0" y="215.2" textLength="24.4" clip-path="url(#breeze-release-management-line-8)">╭─</text><text class="breeze-release-management-r5" x="24.4" y="215.2" textLength="317.2" clip-path="url(#breeze-release-management-line-8)"> Airflow release commands </text><text class="breeze-release-management-r5" x="341.6" y="215.2" textLength="1098" clip-path="url(#breeze-release-management-line-8)">─────────────────────────────── [...] -</text><text class="breeze-release-management-r5" x="0" y="239.6" textLength="12.2" clip-path="url(#breeze-release-management-line-9)">│</text><text class="breeze-release-management-r4" x="24.4" y="239.6" textLength="353.8" clip-path="url(#breeze-release-management-line-9)">prepare-airflow-package      </text><text class="breeze-release-management-r1" x="402.6" y="239.6" textLength="1037" clip-path="url(#breeze-release-management-line-9)">Prepare sdist/ [...] -</text><text class="breeze-release-management-r5" x="0" y="264" textLength="12.2" clip-path="url(#breeze-release-management-line-10)">│</text><text class="breeze-release-management-r4" x="24.4" y="264" textLength="353.8" clip-path="url(#breeze-release-management-line-10)">create-minor-branch          </text><text class="breeze-release-management-r1" x="402.6" y="264" textLength="1037" clip-path="url(#breeze-release-management-line-10)">Cr [...] -</text><text class="breeze-release-management-r5" x="0" y="288.4" textLength="12.2" clip-path="url(#breeze-release-management-line-11)">│</text><text class="breeze-release-management-r4" x="24.4" y="288.4" textLength="353.8" clip-path="url(#breeze-release-management-line-11)">start-rc-process             </text><text class="breeze-release-management-r1" x="402.6" y="288.4" textLength="1037" clip-path="url(#breeze-release-ma [...] -</text><text class="breeze-release-management-r5" x="0" y="312.8" textLength="12.2" clip-path="url(#breeze-release-management-line-12)">│</text><text class="breeze-release-management-r4" x="24.4" y="312.8" textLength="353.8" clip-path="url(#breeze-release-management-line-12)">start-release                </text><text class="breeze-release-management-r1" x="402.6" y="312.8" textLength="1037" clip-path="url(#br [...] -</text><text class="breeze-release-management-r5" x="0" y="337.2" textLength="12.2" clip-path="url(#breeze-release-management-line-13)">│</text><text class="breeze-release-management-r4" x="24.4" y="337.2" textLength="353.8" clip-path="url(#breeze-release-management-line-13)">release-prod-images          </text><text class="breeze-release-management-r1" x="402.6" y="337.2" textLength="1037" clip-path="url(#breeze-release-management-line-1 [...] -</text><text class="breeze-release-management-r5" x="0" y="361.6" textLength="1464" clip-path="url(#breeze-release-management-line-14)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-r1" x="1464" y="361.6" textLength="12.2" clip-path="url(#breeze-release-management-line-14)"> -</text><text class="breeze-release-management-r5" x="0" y="386" textLength="24.4" clip-path="url(#breeze-release-management-line-15)">╭─</text><text class="breeze-release-management-r5" x="24.4" y="386" textLength="341.6" clip-path="url(#breeze-release-management-line-15)"> Providers release commands </text><text class="breeze-release-management-r5" x="366" y="386" textLength="1073.6" clip-path="url(#breeze-release-management-line-15)">──────────────────────────────── [...] -</text><text class="breeze-release-management-r5" x="0" y="410.4" textLength="12.2" clip-path="url(#breeze-release-management-line-16)">│</text><text class="breeze-release-management-r4" x="24.4" y="410.4" textLength="439.2" clip-path="url(#breeze-release-management-line-16)">prepare-provider-documentation      </text><text class="breeze-release-management-r1" x="488" y="410.4" textLength="951.6" clip-path="url(#breeze-release-management-line-16)">Prepare [...] -</text><text class="breeze-release-management-r5" x="0" y="434.8" textLength="12.2" clip-path="url(#breeze-release-management-line-17)">│</text><text class="breeze-release-management-r4" x="24.4" y="434.8" textLength="439.2" clip-path="url(#breeze-release-management-line-17)">prepare-provider-packages           </text><text class="breeze-release-management-r1" x="488" y="434.8" textLength="951.6" clip-path="url(#breeze-release-manage [...] -</text><text class="breeze-release-management-r5" x="0" y="459.2" textLength="12.2" clip-path="url(#breeze-release-management-line-18)">│</text><text class="breeze-release-management-r4" x="24.4" y="459.2" textLength="439.2" clip-path="url(#breeze-release-management-line-18)">install-provider-packages           </text><text class="breeze-release-management-r1" x="488" y="459.2" textLength="951.6" clip-path="url(#breeze-release-manage [...] -</text><text class="breeze-release-management-r5" x="0" y="483.6" textLength="12.2" clip-path="url(#breeze-release-management-line-19)">│</text><text class="breeze-release-management-r4" x="24.4" y="483.6" textLength="439.2" clip-path="url(#breeze-release-management-line-19)">verify-provider-packages            </text><text class="breeze-release-management-r1" x="488" y="483.6" textLength="951.6" clip-path="url(#breeze-release-m [...] -</text><text class="breeze-release-management-r5" x="0" y="508" textLength="12.2" clip-path="url(#breeze-release-management-line-20)">│</text><text class="breeze-release-management-r4" x="24.4" y="508" textLength="439.2" clip-path="url(#breeze-release-management-line-20)">generate-providers-metadata         </text><text class="breeze-release-management-r1" x="488" y="508" textLength="951.6" clip-path="url(#breeze-release-management-line-20)">G [...] -</text><text class="breeze-release-management-r5" x="0" y="532.4" textLength="12.2" clip-path="url(#breeze-release-management-line-21)">│</text><text class="breeze-release-management-r4" x="24.4" y="532.4" textLength="439.2" clip-path="url(#breeze-release-management-line-21)">generate-issue-content-providers    </text><text class="breeze-release-management-r1" x="488" y="532.4" textLength="951.6" clip-path="url(#breeze-release-management-line-21)">Generates conte [...] -</text><text class="breeze-release-management-r5" x="0" y="556.8" textLength="12.2" clip-path="url(#breeze-release-management-line-22)">│</text><text class="breeze-release-management-r4" x="24.4" y="556.8" textLength="439.2" clip-path="url(#breeze-release-management-line-22)">clean-old-provider-artifacts        </text><text class="breeze-release-management-r1" x="488" y="556.8" textLength="951.6" clip-path="url(#breeze-release-management-line-22)"> [...] -</text><text class="breeze-release-management-r5" x="0" y="581.2" textLength="1464" clip-path="url(#breeze-release-management-line-23)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-r1" x="1464" y="581.2" textLength="12.2" clip-path="url(#breeze-release-management-line-23)"> -</text><text class="breeze-release-management-r5" x="0" y="605.6" textLength="24.4" clip-path="url(#breeze-release-management-line-24)">╭─</text><text class="breeze-release-management-r5" x="24.4" y="605.6" textLength="292.8" clip-path="url(#breeze-release-management-line-24)"> Other release commands </text><text class="breeze-release-management-r5" x="317.2" y="605.6" textLength="1122.4" clip-path="url(#breeze-release-management-line-24)">──────────────────────────── [...] -</text><text class="breeze-release-management-r5" x="0" y="630" textLength="12.2" clip-path="url(#breeze-release-management-line-25)">│</text><text class="breeze-release-management-r4" x="24.4" y="630" textLength="280.6" clip-path="url(#breeze-release-management-line-25)">publish-docs           </text><text class="breeze-release-management-r1" x="329.4" y="630" textLength="1110.2" clip-path="url(#breeze-release-management-line-25)">C [...] -</text><text class="breeze-release-management-r5" x="0" y="654.4" textLength="12.2" clip-path="url(#breeze-release-management-line-26)">│</text><text class="breeze-release-management-r4" x="24.4" y="654.4" textLength="280.6" clip-path="url(#breeze-release-management-line-26)">generate-constraints   </text><text class="breeze-release-management-r1" x="329.4" y="654.4" textLength="1110.2" clip-path="url(#breeze-release-management-line-26)">Generates pinned constrai [...] -</text><text class="breeze-release-management-r5" x="0" y="678.8" textLength="12.2" clip-path="url(#breeze-release-management-line-27)">│</text><text class="breeze-release-management-r4" x="24.4" y="678.8" textLength="280.6" clip-path="url(#breeze-release-management-line-27)">add-back-references    </text><text class="breeze-release-management-r1" x="329.4" y="678.8" textLength="1110.2" clip-path="url(#breeze-release-management-line-27)">Command to add  [...] -</text><text class="breeze-release-management-r5" x="0" y="703.2" textLength="1464" clip-path="url(#breeze-release-management-line-28)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-r1" x="1464" y="703.2" textLength="12.2" clip-path="url(#breeze-release-management-line-28)"> -</text><text class="breeze-release-management-r5" x="0" y="727.6" textLength="24.4" clip-path="url(#breeze-release-management-line-29)">╭─</text><text class="breeze-release-management-r5" x="24.4" y="727.6" textLength="122" clip-path="url(#breeze-release-management-line-29)"> Commands </text><text class="breeze-release-management-r5" x="146.4" y="727.6" textLength="1293.2" clip-path="url(#breeze-release-management-line-29)">────────────────────────────────────────────────────── [...] -</text><text class="breeze-release-management-r5" x="0" y="752" textLength="12.2" clip-path="url(#breeze-release-management-line-30)">│</text><text class="breeze-release-management-r4" x="24.4" y="752" textLength="390.4" clip-path="url(#breeze-release-management-line-30)">update-constraints              </text><text class="breeze-release-management-r1" x="439.2" y="752" textLength="1000.4" clip-path="url(#breeze-releas [...] -</text><text class="breeze-release-management-r5" x="0" y="776.4" textLength="1464" clip-path="url(#breeze-release-management-line-31)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-r1" x="1464" y="776.4" textLength="12.2" clip-path="url(#breeze-release-management-line-31)"> +</text><text class="breeze-release-management-r5" x="0" y="239.6" textLength="12.2" clip-path="url(#breeze-release-management-line-9)">│</text><text class="breeze-release-management-r4" x="24.4" y="239.6" textLength="353.8" clip-path="url(#breeze-release-management-line-9)">create-minor-branch          </text><text class="breeze-release-management-r1" x="402.6" y="239.6" textLength="1037" clip-path="url(#breeze-release-management-line-9)" [...] +</text><text class="breeze-release-management-r5" x="0" y="264" textLength="12.2" clip-path="url(#breeze-release-management-line-10)">│</text><text class="breeze-release-management-r4" x="24.4" y="264" textLength="353.8" clip-path="url(#breeze-release-management-line-10)">prepare-airflow-package      </text><text class="breeze-release-management-r1" x="402.6" y="264" textLength="1037" clip-path="url(#breeze-release-management-line-10)">Prepare sdist/whl [...] +</text><text class="breeze-release-management-r5" x="0" y="288.4" textLength="12.2" clip-path="url(#breeze-release-management-line-11)">│</text><text class="breeze-release-management-r4" x="24.4" y="288.4" textLength="353.8" clip-path="url(#breeze-release-management-line-11)">prepare-airflow-tarball      </text><text class="breeze-release-management-r1" x="402.6" y="288.4" textLength="1037" clip-path="url(#breeze-release-management-line-11)">Prepare air [...] +</text><text class="breeze-release-management-r5" x="0" y="312.8" textLength="12.2" clip-path="url(#breeze-release-management-line-12)">│</text><text class="breeze-release-management-r4" x="24.4" y="312.8" textLength="353.8" clip-path="url(#breeze-release-management-line-12)">start-rc-process             </text><text class="breeze-release-management-r1" x="402.6" y="312.8" textLength="1037" clip-path="url(#breeze-release-ma [...] +</text><text class="breeze-release-management-r5" x="0" y="337.2" textLength="12.2" clip-path="url(#breeze-release-management-line-13)">│</text><text class="breeze-release-management-r4" x="24.4" y="337.2" textLength="353.8" clip-path="url(#breeze-release-management-line-13)">start-release                </text><text class="breeze-release-management-r1" x="402.6" y="337.2" textLength="1037" clip-path="url(#br [...] +</text><text class="breeze-release-management-r5" x="0" y="361.6" textLength="12.2" clip-path="url(#breeze-release-management-line-14)">│</text><text class="breeze-release-management-r4" x="24.4" y="361.6" textLength="353.8" clip-path="url(#breeze-release-management-line-14)">release-prod-images          </text><text class="breeze-release-management-r1" x="402.6" y="361.6" textLength="1037" clip-path="url(#breeze-release-management-line-1 [...] +</text><text class="breeze-release-management-r5" x="0" y="386" textLength="1464" clip-path="url(#breeze-release-management-line-15)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-r1" x="1464" y="386" textLength="12.2" clip-path="url(#breeze-release-management-line-15)"> +</text><text class="breeze-release-management-r5" x="0" y="410.4" textLength="24.4" clip-path="url(#breeze-release-management-line-16)">╭─</text><text class="breeze-release-management-r5" x="24.4" y="410.4" textLength="341.6" clip-path="url(#breeze-release-management-line-16)"> Providers release commands </text><text class="breeze-release-management-r5" x="366" y="410.4" textLength="1073.6" clip-path="url(#breeze-release-management-line-16)">────────────────────────── [...] +</text><text class="breeze-release-management-r5" x="0" y="434.8" textLength="12.2" clip-path="url(#breeze-release-management-line-17)">│</text><text class="breeze-release-management-r4" x="24.4" y="434.8" textLength="439.2" clip-path="url(#breeze-release-management-line-17)">prepare-provider-documentation      </text><text class="breeze-release-management-r1" x="488" y="434.8" textLength="951.6" clip-path="url(#breeze-release-management-line-17)">Prepare [...] +</text><text class="breeze-release-management-r5" x="0" y="459.2" textLength="12.2" clip-path="url(#breeze-release-management-line-18)">│</text><text class="breeze-release-management-r4" x="24.4" y="459.2" textLength="439.2" clip-path="url(#breeze-release-management-line-18)">prepare-provider-packages           </text><text class="breeze-release-management-r1" x="488" y="459.2" textLength="951.6" clip-path="url(#breeze-release-manage [...] +</text><text class="breeze-release-management-r5" x="0" y="483.6" textLength="12.2" clip-path="url(#breeze-release-management-line-19)">│</text><text class="breeze-release-management-r4" x="24.4" y="483.6" textLength="439.2" clip-path="url(#breeze-release-management-line-19)">install-provider-packages           </text><text class="breeze-release-management-r1" x="488" y="483.6" textLength="951.6" clip-path="url(#breeze-release-manage [...] +</text><text class="breeze-release-management-r5" x="0" y="508" textLength="12.2" clip-path="url(#breeze-release-management-line-20)">│</text><text class="breeze-release-management-r4" x="24.4" y="508" textLength="439.2" clip-path="url(#breeze-release-management-line-20)">verify-provider-packages            </text><text class="breeze-release-management-r1" x="488" y="508" textLength="951.6" clip-path="url(#breeze-release-managem [...] +</text><text class="breeze-release-management-r5" x="0" y="532.4" textLength="12.2" clip-path="url(#breeze-release-management-line-21)">│</text><text class="breeze-release-management-r4" x="24.4" y="532.4" textLength="439.2" clip-path="url(#breeze-release-management-line-21)">generate-providers-metadata         </text><text class="breeze-release-management-r1" x="488" y="532.4" textLength="951.6" clip-path="url(#breeze-release-management-line- [...] +</text><text class="breeze-release-management-r5" x="0" y="556.8" textLength="12.2" clip-path="url(#breeze-release-management-line-22)">│</text><text class="breeze-release-management-r4" x="24.4" y="556.8" textLength="439.2" clip-path="url(#breeze-release-management-line-22)">generate-issue-content-providers    </text><text class="breeze-release-management-r1" x="488" y="556.8" textLength="951.6" clip-path="url(#breeze-release-management-line-22)">Generates conte [...] +</text><text class="breeze-release-management-r5" x="0" y="581.2" textLength="12.2" clip-path="url(#breeze-release-management-line-23)">│</text><text class="breeze-release-management-r4" x="24.4" y="581.2" textLength="439.2" clip-path="url(#breeze-release-management-line-23)">clean-old-provider-artifacts        </text><text class="breeze-release-management-r1" x="488" y="581.2" textLength="951.6" clip-path="url(#breeze-release-management-line-23)"> [...] +</text><text class="breeze-release-management-r5" x="0" y="605.6" textLength="1464" clip-path="url(#breeze-release-management-line-24)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-r1" x="1464" y="605.6" textLength="12.2" clip-path="url(#breeze-release-management-line-24)"> +</text><text class="breeze-release-management-r5" x="0" y="630" textLength="24.4" clip-path="url(#breeze-release-management-line-25)">╭─</text><text class="breeze-release-management-r5" x="24.4" y="630" textLength="292.8" clip-path="url(#breeze-release-management-line-25)"> Other release commands </text><text class="breeze-release-management-r5" x="317.2" y="630" textLength="1122.4" clip-path="url(#breeze-release-management-line-25)">────────────────────────────────── [...] +</text><text class="breeze-release-management-r5" x="0" y="654.4" textLength="12.2" clip-path="url(#breeze-release-management-line-26)">│</text><text class="breeze-release-management-r4" x="24.4" y="654.4" textLength="280.6" clip-path="url(#breeze-release-management-line-26)">add-back-references    </text><text class="breeze-release-management-r1" x="329.4" y="654.4" textLength="1110.2" clip-path="url(#breeze-release-management-line-26)">Command to add  [...] +</text><text class="breeze-release-management-r5" x="0" y="678.8" textLength="12.2" clip-path="url(#breeze-release-management-line-27)">│</text><text class="breeze-release-management-r4" x="24.4" y="678.8" textLength="280.6" clip-path="url(#breeze-release-management-line-27)">publish-docs           </text><text class="breeze-release-management-r1" x="329.4" y="678.8" textLength="1110.2" clip-path="url(#breeze-release-management-line- [...] +</text><text class="breeze-release-management-r5" x="0" y="703.2" textLength="12.2" clip-path="url(#breeze-release-management-line-28)">│</text><text class="breeze-release-management-r4" x="24.4" y="703.2" textLength="280.6" clip-path="url(#breeze-release-management-line-28)">generate-constraints   </text><text class="breeze-release-management-r1" x="329.4" y="703.2" textLength="1110.2" clip-path="url(#breeze-release-management-line-28)">Generates pinned constrai [...] +</text><text class="breeze-release-management-r5" x="0" y="727.6" textLength="12.2" clip-path="url(#breeze-release-management-line-29)">│</text><text class="breeze-release-management-r4" x="24.4" y="727.6" textLength="280.6" clip-path="url(#breeze-release-management-line-29)">update-constraints     </text><text class="breeze-release-management-r1" x="329.4" y="727.6" textLength="1110.2" clip-path="url(#breeze-release-management-line-29)">Update released  [...] +</text><text class="breeze-release-management-r5" x="0" y="752" textLength="1464" clip-path="url(#breeze-release-management-line-30)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-r1" x="1464" y="752" textLength="12.2" clip-path="url(#breeze-release-management-line-30)"> </text> </g> </g> diff --git a/images/breeze/output_release-management.txt b/images/breeze/output_release-management.txt index a0e84e6bf9..81a7a34a0e 100644 --- a/images/breeze/output_release-management.txt +++ b/images/breeze/output_release-management.txt @@ -1 +1 @@ -f4edc0671c6ceb04d81e936f600ba8c4 +531a745e860b739dd3e802e594db6e7e diff --git a/images/breeze/output_release-management_prepare-airflow-package.svg b/images/breeze/output_release-management_prepare-airflow-package.svg index c8490f5700..8ee42db614 100644 --- a/images/breeze/output_release-management_prepare-airflow-package.svg +++ b/images/breeze/output_release-management_prepare-airflow-package.svg @@ -1,4 +1,4 @@ -<svg class="rich-terminal" viewBox="0 0 1482 391.59999999999997" xmlns="http://www.w3.org/2000/svg"> +<svg class="rich-terminal" viewBox="0 0 1482 440.4" xmlns="http://www.w3.org/2000/svg"> <!-- Generated with Rich https://www.textualize.io --> <style> @@ -43,7 +43,7 @@ <defs> <clipPath id="breeze-release-management-prepare-airflow-package-clip-terminal"> - <rect x="0" y="0" width="1463.0" height="340.59999999999997" /> + <rect x="0" y="0" width="1463.0" height="389.4" /> </clipPath> <clipPath id="breeze-release-management-prepare-airflow-package-line-0"> <rect x="0" y="1.5" width="1464" height="24.65"/> @@ -84,9 +84,15 @@ <clipPath id="breeze-release-management-prepare-airflow-package-line-12"> <rect x="0" y="294.3" width="1464" height="24.65"/> </clipPath> +<clipPath id="breeze-release-management-prepare-airflow-package-line-13"> + <rect x="0" y="318.7" width="1464" height="24.65"/> + </clipPath> +<clipPath id="breeze-release-management-prepare-airflow-package-line-14"> + <rect x="0" y="343.1" width="1464" height="24.65"/> + </clipPath> </defs> - <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="389.6" rx="8"/><text class="breeze-release-management-prepare-airflow-package-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command: release-management prepare-airflow-package</text> + <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="438.4" rx="8"/><text class="breeze-release-management-prepare-airflow-package-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command: release-management prepare-airflow-package</text> <g transform="translate(26,22)"> <circle cx="0" cy="0" r="7" fill="#ff5f57"/> <circle cx="22" cy="0" r="7" fill="#febc2e"/> @@ -103,13 +109,15 @@ </text><text class="breeze-release-management-prepare-airflow-package-r1" x="1464" y="117.6" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-4)"> </text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="142" textLength="24.4" clip-path="url(#breeze-release-management-prepare-airflow-package-line-5)">╭─</text><text class="breeze-release-management-prepare-airflow-package-r5" x="24.4" y="142" textLength="183" clip-path="url(#breeze-release-management-prepare-airflow-package-line-5)"> Package flags </text><text class="breeze-release-management-prepare-airflow-package-r5" x="207.4" y="142" text [...] </text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="166.4" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-6)">│</text><text class="breeze-release-management-prepare-airflow-package-r4" x="24.4" y="166.4" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-6)">-</text><text class="breeze-release-management-prepare-airflow-package-r4" x="36.6" y="166.4" textLength="97.6" clip-path= [...] -</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="190.8" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-7)">│</text><text class="breeze-release-management-prepare-airflow-package-r4" x="24.4" y="190.8" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-7)">-</text><text class="breeze-release-management-prepare-airflow-package-r4" x="36.6" y="190.8" textLength="97.6" clip-path= [...] -</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="215.2" textLength="1464" clip-path="url(#breeze-release-management-prepare-airflow-package-line-8)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-prepare-airflow-package-r1" x="1464" y="215.2" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-8)"> -</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="239.6" textLength="24.4" clip-path="url(#breeze-release-management-prepare-airflow-package-line-9)">╭─</text><text class="breeze-release-management-prepare-airflow-package-r5" x="24.4" y="239.6" textLength="195.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-9)"> Common options </text><text class="breeze-release-management-prepare-airflow-package-r5" x="219.6" y="23 [...] -</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="264" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-10)">│</text><text class="breeze-release-management-prepare-airflow-package-r4" x="24.4" y="264" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-10)">-</text><text class="breeze-release-management-prepare-airflow-package-r4" x="36.6" y="264" textLength="97.6" clip-path="url [...] -</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="288.4" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-11)">│</text><text class="breeze-release-management-prepare-airflow-package-r4" x="24.4" y="288.4" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-11)">-</text><text class="breeze-release-management-prepare-airflow-package-r4" x="36.6" y="288.4" textLength="48.8" clip-pat [...] -</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="312.8" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-12)">│</text><text class="breeze-release-management-prepare-airflow-package-r4" x="24.4" y="312.8" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-12)">-</text><text class="breeze-release-management-prepare-airflow-package-r4" x="36.6" y="312.8" textLength="61" clip-path= [...] -</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="337.2" textLength="1464" clip-path="url(#breeze-release-management-prepare-airflow-package-line-13)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-prepare-airflow-package-r1" x="1464" y="337.2" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-13)"> +</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="190.8" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-7)">│</text><text class="breeze-release-management-prepare-airflow-package-r4" x="24.4" y="190.8" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-7)">-</text><text class="breeze-release-management-prepare-airflow-package-r4" x="36.6" y="190.8" textLength="48.8" clip-path= [...] +</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="215.2" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-8)">│</text><text class="breeze-release-management-prepare-airflow-package-r1" x="378.2" y="215.2" textLength="1061.4" clip-path="url(#breeze-release-management-prepare-airflow-package-line-8)">installed.                  & [...] +</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="239.6" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-9)">│</text><text class="breeze-release-management-prepare-airflow-package-r4" x="24.4" y="239.6" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-9)">-</text><text class="breeze-release-management-prepare-airflow-package-r4" x="36.6" y="239.6" textLength="97.6" clip-path= [...] +</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="264" textLength="1464" clip-path="url(#breeze-release-management-prepare-airflow-package-line-10)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-prepare-airflow-package-r1" x="1464" y="264" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-10)"> +</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="288.4" textLength="24.4" clip-path="url(#breeze-release-management-prepare-airflow-package-line-11)">╭─</text><text class="breeze-release-management-prepare-airflow-package-r5" x="24.4" y="288.4" textLength="195.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-11)"> Common options </text><text class="breeze-release-management-prepare-airflow-package-r5" x="219.6" y=" [...] +</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="312.8" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-12)">│</text><text class="breeze-release-management-prepare-airflow-package-r4" x="24.4" y="312.8" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-12)">-</text><text class="breeze-release-management-prepare-airflow-package-r4" x="36.6" y="312.8" textLength="97.6" clip-pat [...] +</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="337.2" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-13)">│</text><text class="breeze-release-management-prepare-airflow-package-r4" x="24.4" y="337.2" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-13)">-</text><text class="breeze-release-management-prepare-airflow-package-r4" x="36.6" y="337.2" textLength="48.8" clip-pat [...] +</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="361.6" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-14)">│</text><text class="breeze-release-management-prepare-airflow-package-r4" x="24.4" y="361.6" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-14)">-</text><text class="breeze-release-management-prepare-airflow-package-r4" x="36.6" y="361.6" textLength="61" clip-path= [...] +</text><text class="breeze-release-management-prepare-airflow-package-r5" x="0" y="386" textLength="1464" clip-path="url(#breeze-release-management-prepare-airflow-package-line-15)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-prepare-airflow-package-r1" x="1464" y="386" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-package-line-15)"> </text> </g> </g> diff --git a/images/breeze/output_release-management_prepare-airflow-package.txt b/images/breeze/output_release-management_prepare-airflow-package.txt index f295947476..315a3f647a 100644 --- a/images/breeze/output_release-management_prepare-airflow-package.txt +++ b/images/breeze/output_release-management_prepare-airflow-package.txt @@ -1 +1 @@ -8f786828b9862f9ae63f1b691921979f +92215dd76f7de9837fa03e88324d4be7 diff --git a/images/breeze/output_release-management_prepare-airflow-tarball.svg b/images/breeze/output_release-management_prepare-airflow-tarball.svg new file mode 100644 index 0000000000..5a982d348d --- /dev/null +++ b/images/breeze/output_release-management_prepare-airflow-tarball.svg @@ -0,0 +1,106 @@ +<svg class="rich-terminal" viewBox="0 0 1482 318.4" xmlns="http://www.w3.org/2000/svg"> + <!-- Generated with Rich https://www.textualize.io --> + <style> + + @font-face { + font-family: "Fira Code"; + src: local("FiraCode-Regular"), + url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"), + url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff"); + font-style: normal; + font-weight: 400; + } + @font-face { + font-family: "Fira Code"; + src: local("FiraCode-Bold"), + url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"), + url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff"); + font-style: bold; + font-weight: 700; + } + + .breeze-release-management-prepare-airflow-tarball-matrix { + font-family: Fira Code, monospace; + font-size: 20px; + line-height: 24.4px; + font-variant-east-asian: full-width; + } + + .breeze-release-management-prepare-airflow-tarball-title { + font-size: 18px; + font-weight: bold; + font-family: arial; + } + + .breeze-release-management-prepare-airflow-tarball-r1 { fill: #c5c8c6 } +.breeze-release-management-prepare-airflow-tarball-r2 { fill: #d0b344 } +.breeze-release-management-prepare-airflow-tarball-r3 { fill: #c5c8c6;font-weight: bold } +.breeze-release-management-prepare-airflow-tarball-r4 { fill: #68a0b3;font-weight: bold } +.breeze-release-management-prepare-airflow-tarball-r5 { fill: #868887 } +.breeze-release-management-prepare-airflow-tarball-r6 { fill: #cc555a } +.breeze-release-management-prepare-airflow-tarball-r7 { fill: #8d7b39 } +.breeze-release-management-prepare-airflow-tarball-r8 { fill: #8a4346 } +.breeze-release-management-prepare-airflow-tarball-r9 { fill: #98a84b;font-weight: bold } + </style> + + <defs> + <clipPath id="breeze-release-management-prepare-airflow-tarball-clip-terminal"> + <rect x="0" y="0" width="1463.0" height="267.4" /> + </clipPath> + <clipPath id="breeze-release-management-prepare-airflow-tarball-line-0"> + <rect x="0" y="1.5" width="1464" height="24.65"/> + </clipPath> +<clipPath id="breeze-release-management-prepare-airflow-tarball-line-1"> + <rect x="0" y="25.9" width="1464" height="24.65"/> + </clipPath> +<clipPath id="breeze-release-management-prepare-airflow-tarball-line-2"> + <rect x="0" y="50.3" width="1464" height="24.65"/> + </clipPath> +<clipPath id="breeze-release-management-prepare-airflow-tarball-line-3"> + <rect x="0" y="74.7" width="1464" height="24.65"/> + </clipPath> +<clipPath id="breeze-release-management-prepare-airflow-tarball-line-4"> + <rect x="0" y="99.1" width="1464" height="24.65"/> + </clipPath> +<clipPath id="breeze-release-management-prepare-airflow-tarball-line-5"> + <rect x="0" y="123.5" width="1464" height="24.65"/> + </clipPath> +<clipPath id="breeze-release-management-prepare-airflow-tarball-line-6"> + <rect x="0" y="147.9" width="1464" height="24.65"/> + </clipPath> +<clipPath id="breeze-release-management-prepare-airflow-tarball-line-7"> + <rect x="0" y="172.3" width="1464" height="24.65"/> + </clipPath> +<clipPath id="breeze-release-management-prepare-airflow-tarball-line-8"> + <rect x="0" y="196.7" width="1464" height="24.65"/> + </clipPath> +<clipPath id="breeze-release-management-prepare-airflow-tarball-line-9"> + <rect x="0" y="221.1" width="1464" height="24.65"/> + </clipPath> + </defs> + + <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="316.4" rx="8"/><text class="breeze-release-management-prepare-airflow-tarball-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command: release-management prepare-airflow-tarball</text> + <g transform="translate(26,22)"> + <circle cx="0" cy="0" r="7" fill="#ff5f57"/> + <circle cx="22" cy="0" r="7" fill="#febc2e"/> + <circle cx="44" cy="0" r="7" fill="#28c840"/> + </g> + + <g transform="translate(9, 41)" clip-path="url(#breeze-release-management-prepare-airflow-tarball-clip-terminal)"> + + <g class="breeze-release-management-prepare-airflow-tarball-matrix"> + <text class="breeze-release-management-prepare-airflow-tarball-r1" x="1464" y="20" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-0)"> +</text><text class="breeze-release-management-prepare-airflow-tarball-r2" x="12.2" y="44.4" textLength="73.2" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-1)">Usage:</text><text class="breeze-release-management-prepare-airflow-tarball-r3" x="97.6" y="44.4" textLength="597.8" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-1)">breeze release-management prepare-airflow-tarball</text><text class="breeze-release-management-prepare-ai [...] +</text><text class="breeze-release-management-prepare-airflow-tarball-r1" x="1464" y="68.8" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-2)"> +</text><text class="breeze-release-management-prepare-airflow-tarball-r1" x="12.2" y="93.2" textLength="402.6" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-3)">Prepare airflow's source tarball.</text><text class="breeze-release-management-prepare-airflow-tarball-r1" x="1464" y="93.2" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-3)"> +</text><text class="breeze-release-management-prepare-airflow-tarball-r1" x="1464" y="117.6" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-4)"> +</text><text class="breeze-release-management-prepare-airflow-tarball-r5" x="0" y="142" textLength="24.4" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-5)">╭─</text><text class="breeze-release-management-prepare-airflow-tarball-r5" x="24.4" y="142" textLength="183" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-5)"> Package flags </text><text class="breeze-release-management-prepare-airflow-tarball-r5" x="207.4" y="142" text [...] +</text><text class="breeze-release-management-prepare-airflow-tarball-r5" x="0" y="166.4" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-6)">│</text><text class="breeze-release-management-prepare-airflow-tarball-r6" x="24.4" y="166.4" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-6)">*</text><text class="breeze-release-management-prepare-airflow-tarball-r4" x="61" y="166.4" textLength="12.2" clip-path="u [...] +</text><text class="breeze-release-management-prepare-airflow-tarball-r5" x="0" y="190.8" textLength="1464" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-7)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-prepare-airflow-tarball-r1" x="1464" y="190.8" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-7)"> +</text><text class="breeze-release-management-prepare-airflow-tarball-r5" x="0" y="215.2" textLength="24.4" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-8)">╭─</text><text class="breeze-release-management-prepare-airflow-tarball-r5" x="24.4" y="215.2" textLength="195.2" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-8)"> Common options </text><text class="breeze-release-management-prepare-airflow-tarball-r5" x="219.6" y="21 [...] +</text><text class="breeze-release-management-prepare-airflow-tarball-r5" x="0" y="239.6" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-9)">│</text><text class="breeze-release-management-prepare-airflow-tarball-r4" x="24.4" y="239.6" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-9)">-</text><text class="breeze-release-management-prepare-airflow-tarball-r4" x="36.6" y="239.6" textLength="61" clip-path="u [...] +</text><text class="breeze-release-management-prepare-airflow-tarball-r5" x="0" y="264" textLength="1464" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-10)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-prepare-airflow-tarball-r1" x="1464" y="264" textLength="12.2" clip-path="url(#breeze-release-management-prepare-airflow-tarball-line-10)"> +</text> + </g> + </g> +</svg> diff --git a/images/breeze/output_release-management_prepare-airflow-tarball.txt b/images/breeze/output_release-management_prepare-airflow-tarball.txt new file mode 100644 index 0000000000..12bc4ebe94 --- /dev/null +++ b/images/breeze/output_release-management_prepare-airflow-tarball.txt @@ -0,0 +1 @@ +7cf8b45e0b23837e8bf99d5a4907d48c diff --git a/images/breeze/output_setup_check-all-params-in-groups.svg b/images/breeze/output_setup_check-all-params-in-groups.svg index f8b7ce58c0..05beab1bb3 100644 --- a/images/breeze/output_setup_check-all-params-in-groups.svg +++ b/images/breeze/output_setup_check-all-params-in-groups.svg @@ -170,16 +170,16 @@ </text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="361.6" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-14)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="361.6" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-14)">release-management:clean-old-provider-artifacts | release-management:create-minor-branch |          [...] </text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="386" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-15)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="386" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-15)">release-management:generate-constraints | release-management:generate-issue-content-providers |        </tex [...] </text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="410.4" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-16)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="410.4" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-16)">release-management:generate-providers-metadata | release-management:install-provider-packages |        < [...] -</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="434.8" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-17)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="434.8" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-17)">release-management:prepare-airflow-package | release-management:prepare-provider-documentation |       </text [...] -</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="459.2" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-18)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="459.2" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-18)">release-management:prepare-provider-packages | release-management:publish-docs |           [...] -</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="483.6" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-19)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="483.6" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-19)">release-management:release-prod-images | release-management:start-rc-process |            [...] -</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="508" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-20)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="508" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-20)">release-management:start-release | release-management:update-constraints |            &# [...] -</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="532.4" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-21)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="532.4" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-21)">release-management:verify-provider-packages | sbom | sbom:build-all-airflow-images |        &# [...] -</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="556.8" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-22)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="556.8" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-22)">sbom:generate-providers-requirements | sbom:update-sbom-information | setup | setup:autocomplete |    &# [...] -</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="581.2" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-23)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="581.2" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-23)">setup:check-all-params-in-groups | setup:config | setup:regenerate-command-images | setup:self-upgrade </text><text class="b [...] -</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="605.6" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-24)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="605.6" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-24)">| setup:synchronize-local-mounts | setup:version | shell | start-airflow | static-checks | testing  [...] -</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="630" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-25)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="630" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-25)">testing:db-tests | testing:docker-compose-tests | testing:helm-tests | testing:integration-tests |      [...] -</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="654.4" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-26)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="654.4" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-26)">testing:non-db-tests | testing:tests)                   [...] +</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="434.8" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-17)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="434.8" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-17)">release-management:prepare-airflow-package | release-management:prepare-airflow-tarball |         & [...] +</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="459.2" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-18)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="459.2" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-18)">release-management:prepare-provider-documentation | release-management:prepare-provider-packages |     </text><text cla [...] +</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="483.6" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-19)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="483.6" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-19)">release-management:publish-docs | release-management:release-prod-images |            [...] +</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="508" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-20)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="508" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-20)">release-management:start-rc-process | release-management:start-release |             [...] +</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="532.4" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-21)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="532.4" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-21)">release-management:update-constraints | release-management:verify-provider-packages | sbom |        [...] +</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="556.8" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-22)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="556.8" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-22)">sbom:build-all-airflow-images | sbom:generate-providers-requirements | sbom:update-sbom-information |  </text><text class="b [...] +</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="581.2" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-23)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="581.2" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-23)">setup | setup:autocomplete | setup:check-all-params-in-groups | setup:config |        [...] +</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="605.6" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-24)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="605.6" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-24)">setup:regenerate-command-images | setup:self-upgrade | setup:synchronize-local-mounts | setup:version |</text><text class="b [...] +</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="630" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-25)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="630" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-25)">shell | start-airflow | static-checks | testing | testing:db-tests | testing:docker-compose-tests |  [...] +</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="654.4" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-26)">│</text><text class="breeze-setup-check-all-params-in-groups-r6" x="183" y="654.4" textLength="1256.6" clip-path="url(#breeze-setup-check-all-params-in-groups-line-26)">testing:helm-tests | testing:integration-tests | testing:non-db-tests | testing:tests)       & [...] </text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="678.8" textLength="1464" clip-path="url(#breeze-setup-check-all-params-in-groups-line-27)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-setup-check-all-params-in-groups-r1" x="1464" y="678.8" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-27)"> </text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="703.2" textLength="24.4" clip-path="url(#breeze-setup-check-all-params-in-groups-line-28)">╭─</text><text class="breeze-setup-check-all-params-in-groups-r5" x="24.4" y="703.2" textLength="195.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-28)"> Common options </text><text class="breeze-setup-check-all-params-in-groups-r5" x="219.6" y="703.2" textLength="1220" clip-path="url(#breeze-se [...] </text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="727.6" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-29)">│</text><text class="breeze-setup-check-all-params-in-groups-r4" x="24.4" y="727.6" textLength="12.2" clip-path="url(#breeze-setup-check-all-params-in-groups-line-29)">-</text><text class="breeze-setup-check-all-params-in-groups-r4" x="36.6" y="727.6" textLength="97.6" clip-path="url(#breeze-setup-check-all-params-in-groups-li [...] diff --git a/images/breeze/output_setup_check-all-params-in-groups.txt b/images/breeze/output_setup_check-all-params-in-groups.txt index a785973bff..243d3eca55 100644 --- a/images/breeze/output_setup_check-all-params-in-groups.txt +++ b/images/breeze/output_setup_check-all-params-in-groups.txt @@ -1 +1 @@ -ff7ba7e2ad2a27deacc72227a3584b6b +69ae9158510708ca0793c715a62368b2 diff --git a/images/breeze/output_setup_regenerate-command-images.svg b/images/breeze/output_setup_regenerate-command-images.svg index 5057857969..fc59c7c211 100644 --- a/images/breeze/output_setup_regenerate-command-images.svg +++ b/images/breeze/output_setup_regenerate-command-images.svg @@ -1,4 +1,4 @@ -<svg class="rich-terminal" viewBox="0 0 1482 928.4" xmlns="http://www.w3.org/2000/svg"> +<svg class="rich-terminal" viewBox="0 0 1482 952.8" xmlns="http://www.w3.org/2000/svg"> <!-- Generated with Rich https://www.textualize.io --> <style> @@ -43,7 +43,7 @@ <defs> <clipPath id="breeze-setup-regenerate-command-images-clip-terminal"> - <rect x="0" y="0" width="1463.0" height="877.4" /> + <rect x="0" y="0" width="1463.0" height="901.8" /> </clipPath> <clipPath id="breeze-setup-regenerate-command-images-line-0"> <rect x="0" y="1.5" width="1464" height="24.65"/> @@ -150,9 +150,12 @@ <clipPath id="breeze-setup-regenerate-command-images-line-34"> <rect x="0" y="831.1" width="1464" height="24.65"/> </clipPath> +<clipPath id="breeze-setup-regenerate-command-images-line-35"> + <rect x="0" y="855.5" width="1464" height="24.65"/> + </clipPath> </defs> - <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="926.4" rx="8"/><text class="breeze-setup-regenerate-command-images-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command: setup regenerate-command-images</text> + <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="950.8" rx="8"/><text class="breeze-setup-regenerate-command-images-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command: setup regenerate-command-images</text> <g transform="translate(26,22)"> <circle cx="0" cy="0" r="7" fill="#ff5f57"/> <circle cx="22" cy="0" r="7" fill="#febc2e"/> @@ -180,24 +183,25 @@ </text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="386" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-15)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="386" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-15)">release-management:clean-old-provider-artifacts | release-management:create-minor-branch |          </ [...] </text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="410.4" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-16)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="410.4" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-16)">release-management:generate-constraints | release-management:generate-issue-content-providers |     </text><text class="bre [...] </text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="434.8" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-17)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="434.8" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-17)">release-management:generate-providers-metadata | release-management:install-provider-packages |     </text><text class="bre [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="459.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-18)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="459.2" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-18)">release-management:prepare-airflow-package | release-management:prepare-provider-documentation |    </text><text class="breeze-s [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="483.6" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-19)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="483.6" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-19)">release-management:prepare-provider-packages | release-management:publish-docs |           &# [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="508" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-20)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="508" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-20)">release-management:release-prod-images | release-management:start-rc-process |            &# [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="532.4" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-21)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="532.4" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-21)">release-management:start-release | release-management:update-constraints |            &# [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="556.8" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-22)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="556.8" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-22)">release-management:verify-provider-packages | sbom | sbom:build-all-airflow-images |          [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="581.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-23)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="581.2" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-23)">sbom:generate-providers-requirements | sbom:update-sbom-information | setup | setup:autocomplete |  </text><text class [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="605.6" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-24)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="605.6" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-24)">setup:check-all-params-in-groups | setup:config | setup:regenerate-command-images |         & [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="630" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-25)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="630" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-25)">setup:self-upgrade | setup:synchronize-local-mounts | setup:version | shell | start-airflow |      [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="654.4" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-26)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="654.4" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-26)">static-checks | testing | testing:db-tests | testing:docker-compose-tests | testing:helm-tests |    [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="678.8" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-27)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="678.8" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-27)">testing:integration-tests | testing:non-db-tests | testing:tests)              [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="703.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-28)">│</text><text class="breeze-setup-regenerate-command-images-r4" x="24.4" y="703.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-28)">-</text><text class="breeze-setup-regenerate-command-images-r4" x="36.6" y="703.2" textLength="73.2" clip-path="url(#breeze-setup-regenerate-command-images-line-28) [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="727.6" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-29)">│</text><text class="breeze-setup-regenerate-command-images-r1" x="219.6" y="727.6" textLength="170.8" clip-path="url(#breeze-setup-regenerate-command-images-line-29)">together with </text><text class="breeze-setup-regenerate-command-images-r4" x="390.4" y="727.6" textLength="12.2" clip-path="url(#breeze-setup-regenera [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="752" textLength="1464" clip-path="url(#breeze-setup-regenerate-command-images-line-30)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-setup-regenerate-command-images-r1" x="1464" y="752" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-30)"> -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="776.4" textLength="24.4" clip-path="url(#breeze-setup-regenerate-command-images-line-31)">╭─</text><text class="breeze-setup-regenerate-command-images-r5" x="24.4" y="776.4" textLength="195.2" clip-path="url(#breeze-setup-regenerate-command-images-line-31)"> Common options </text><text class="breeze-setup-regenerate-command-images-r5" x="219.6" y="776.4" textLength="1220" clip-path="url(#breeze-setup-r [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="800.8" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-32)">│</text><text class="breeze-setup-regenerate-command-images-r4" x="24.4" y="800.8" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-32)">-</text><text class="breeze-setup-regenerate-command-images-r4" x="36.6" y="800.8" textLength="97.6" clip-path="url(#breeze-setup-regenerate-command-images-line-32) [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="825.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-33)">│</text><text class="breeze-setup-regenerate-command-images-r4" x="24.4" y="825.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-33)">-</text><text class="breeze-setup-regenerate-command-images-r4" x="36.6" y="825.2" textLength="48.8" clip-path="url(#breeze-setup-regenerate-command-images-line-33) [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="849.6" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-34)">│</text><text class="breeze-setup-regenerate-command-images-r4" x="24.4" y="849.6" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-34)">-</text><text class="breeze-setup-regenerate-command-images-r4" x="36.6" y="849.6" textLength="61" clip-path="url(#breeze-setup-regenerate-command-images-line-34)"> [...] -</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="874" textLength="1464" clip-path="url(#breeze-setup-regenerate-command-images-line-35)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-setup-regenerate-command-images-r1" x="1464" y="874" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-35)"> +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="459.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-18)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="459.2" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-18)">release-management:prepare-airflow-package | release-management:prepare-airflow-tarball |           [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="483.6" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-19)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="483.6" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-19)">release-management:prepare-provider-documentation | release-management:prepare-provider-packages |  </text><text class="breeze-setup-regen [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="508" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-20)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="508" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-20)">release-management:publish-docs | release-management:release-prod-images |              [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="532.4" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-21)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="532.4" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-21)">release-management:start-rc-process | release-management:start-release |             [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="556.8" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-22)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="556.8" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-22)">release-management:update-constraints | release-management:verify-provider-packages | sbom |        [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="581.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-23)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="581.2" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-23)">sbom:build-all-airflow-images | sbom:generate-providers-requirements | sbom:update-sbom-information </text><text class="breeze-setup-regen [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="605.6" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-24)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="605.6" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-24)">| setup | setup:autocomplete | setup:check-all-params-in-groups | setup:config |       & [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="630" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-25)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="630" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-25)">setup:regenerate-command-images | setup:self-upgrade | setup:synchronize-local-mounts |         & [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="654.4" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-26)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="654.4" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-26)">setup:version | shell | start-airflow | static-checks | testing | testing:db-tests |     [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="678.8" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-27)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="678.8" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-27)">testing:docker-compose-tests | testing:helm-tests | testing:integration-tests | testing:non-db-tests</text><text class="breeze-setup- [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="703.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-28)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="703.2" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-28)">| testing:tests)                        [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="727.6" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-29)">│</text><text class="breeze-setup-regenerate-command-images-r4" x="24.4" y="727.6" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-29)">-</text><text class="breeze-setup-regenerate-command-images-r4" x="36.6" y="727.6" textLength="73.2" clip-path="url(#breeze-setup-regenerate-command-images-line-29) [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="752" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-30)">│</text><text class="breeze-setup-regenerate-command-images-r1" x="219.6" y="752" textLength="170.8" clip-path="url(#breeze-setup-regenerate-command-images-line-30)">together with </text><text class="breeze-setup-regenerate-command-images-r4" x="390.4" y="752" textLength="12.2" clip-path="url(#breeze-setup-regenerate-com [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="776.4" textLength="1464" clip-path="url(#breeze-setup-regenerate-command-images-line-31)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-setup-regenerate-command-images-r1" x="1464" y="776.4" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-31)"> +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="800.8" textLength="24.4" clip-path="url(#breeze-setup-regenerate-command-images-line-32)">╭─</text><text class="breeze-setup-regenerate-command-images-r5" x="24.4" y="800.8" textLength="195.2" clip-path="url(#breeze-setup-regenerate-command-images-line-32)"> Common options </text><text class="breeze-setup-regenerate-command-images-r5" x="219.6" y="800.8" textLength="1220" clip-path="url(#breeze-setup-r [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="825.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-33)">│</text><text class="breeze-setup-regenerate-command-images-r4" x="24.4" y="825.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-33)">-</text><text class="breeze-setup-regenerate-command-images-r4" x="36.6" y="825.2" textLength="97.6" clip-path="url(#breeze-setup-regenerate-command-images-line-33) [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="849.6" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-34)">│</text><text class="breeze-setup-regenerate-command-images-r4" x="24.4" y="849.6" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-34)">-</text><text class="breeze-setup-regenerate-command-images-r4" x="36.6" y="849.6" textLength="48.8" clip-path="url(#breeze-setup-regenerate-command-images-line-34) [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="874" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-35)">│</text><text class="breeze-setup-regenerate-command-images-r4" x="24.4" y="874" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-35)">-</text><text class="breeze-setup-regenerate-command-images-r4" x="36.6" y="874" textLength="61" clip-path="url(#breeze-setup-regenerate-command-images-line-35)">-help< [...] +</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="898.4" textLength="1464" clip-path="url(#breeze-setup-regenerate-command-images-line-36)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-setup-regenerate-command-images-r1" x="1464" y="898.4" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-36)"> </text> </g> </g> diff --git a/images/breeze/output_setup_regenerate-command-images.txt b/images/breeze/output_setup_regenerate-command-images.txt index c1fea28696..87d87112ba 100644 --- a/images/breeze/output_setup_regenerate-command-images.txt +++ b/images/breeze/output_setup_regenerate-command-images.txt @@ -1 +1 @@ -2dd686ef33844512aed7032351111991 +4f1d4b74c81fd81e8c6f32ec137ff480 diff --git a/scripts/in_container/run_prepare_airflow_packages.py b/scripts/in_container/run_prepare_airflow_packages.py index 66aae93ca4..9305d0dbd4 100755 --- a/scripts/in_container/run_prepare_airflow_packages.py +++ b/scripts/in_container/run_prepare_airflow_packages.py @@ -77,11 +77,10 @@ def get_current_airflow_version() -> str: def build_airflow_packages(package_format: str): build_command = [sys.executable, "-m", "hatch", "build", "-t", "custom"] - - if package_format in ["both", "wheel"]: - build_command.extend(["-t", "wheel"]) if package_format in ["both", "sdist"]: build_command.extend(["-t", "sdist"]) + if package_format in ["both", "wheel"]: + build_command.extend(["-t", "wheel"]) reproducible_date = yaml.safe_load(REPRODUCIBLE_BUILD_FILE.read_text())["source-date-epoch"]
