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

potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new 945f48a1fd Implement the breeze add-back-references command (#32594)
945f48a1fd is described below

commit 945f48a1fdace8825f3949e5227bed0af2fd38ff
Author: Amogh Desai <[email protected]>
AuthorDate: Fri Jul 14 22:06:14 2023 +0530

    Implement the breeze add-back-references command (#32594)
    
    
    Co-authored-by: Jarek Potiuk <[email protected]>
---
 BREEZE.rst                                         |  32 ++++
 .../commands/release_management_commands.py        |  46 ++++++
 .../commands/release_management_commands_config.py |   6 +
 .../airflow_breeze/utils/add_back_references.py    | 162 +++++++++++++++++++++
 images/breeze/output-commands-hash.txt             |   9 +-
 images/breeze/output_release-management.svg        |  22 ++-
 ...tput_release-management_add-back-references.svg | 122 ++++++++++++++++
 .../output_setup_check-all-params-in-groups.svg    |  44 +++---
 .../output_setup_regenerate-command-images.svg     |  50 ++++---
 9 files changed, 441 insertions(+), 52 deletions(-)

diff --git a/BREEZE.rst b/BREEZE.rst
index 7805128776..367146259f 100644
--- a/BREEZE.rst
+++ b/BREEZE.rst
@@ -2020,6 +2020,38 @@ Those are all available flags of ``release-management 
publish-docs`` command:
   :width: 100%
   :alt: Breeze Publish documentation
 
+Adding back referencing HTML for the documentation
+""""""""""""""""""""""""""""""""""""""""""""""""""
+
+To add back references to the documentation generated by ``build-docs`` in 
Breeze to ``airflow-site``,
+use the ``release-management add-back-references`` command. This is important 
to support backward compatibility
+the airflow documentation.
+
+.. code-block:: bash
+
+     breeze release-management add-back-references
+
+.. code-block:: bash
+
+     release-management add-back-references --airflow-site-directory DIRECTORY
+
+The flag ``--airflow-site-directory`` takes the path of the cloned 
``airflow-site``. The command will
+not proceed if this is an invalid path.
+
+.. code-block:: bash
+
+     breeze release-management publish-docs --gen-type [airflow | providers | 
helm]
+
+The flag ``--gen-type`` is a string of which type of back references to 
generate. It can take the values of
+airflow, providers, or helm. The command will fail if this is incorrect.
+
+Those are all available flags of ``release-management add-back-references`` 
command:
+
+.. image:: .images/breeze/output_release-management_add-back-references.svg
+  :target: 
https://raw.githubusercontent.com/apache/airflow/main/images/breeze/output_release-management_add-back-references.svg
+  :width: 100%
+  :alt: Breeze Add Back References
+
 Generating 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 7c089eb3ad..84fe2517bd 100644
--- a/dev/breeze/src/airflow_breeze/commands/release_management_commands.py
+++ b/dev/breeze/src/airflow_breeze/commands/release_management_commands.py
@@ -46,6 +46,10 @@ from airflow_breeze.global_constants import (
     get_available_documentation_packages,
 )
 from airflow_breeze.params.shell_params import ShellParams
+from airflow_breeze.utils.add_back_references import (
+    GenerationType,
+    start_generating_back_references,
+)
 from airflow_breeze.utils.ci_group import ci_group
 from airflow_breeze.utils.common_options import (
     argument_packages,
@@ -808,6 +812,48 @@ def publish_docs(
         builder.publish(override_versioned=override_versioned, 
airflow_site_dir=airflow_site_directory)
 
 
+@release_management.command(
+    name="add-back-references",
+    help="Command to add back references for documentation to make it backward 
compatible",
+)
[email protected](
+    "-a",
+    "--airflow-site-directory",
+    envvar="AIRFLOW_SITE_DIRECTORY",
+    help="Local directory path of cloned airflow-site repo.",
+    required=True,
+)
[email protected](
+    "-g",
+    "--gen-type",
+    help="Type of back references to generate, supports: [airflow | providers 
| helm]",
+    type=str,
+    required=True,
+)
+@option_verbose
+@option_dry_run
+def add_back_references(
+    airflow_site_directory: bool,
+    gen_type: str,
+):
+    """Adds back references for documentation generated by build-docs and 
publish-docs"""
+    if not os.path.isdir(airflow_site_directory):
+        get_console().print(
+            "\n[error]location pointed by airflow_site_dir is not valid. "
+            "Provide the path of cloned airflow-site repo\n"
+        )
+        sys.exit(1)
+
+    gen = GenerationType[gen_type]
+    if gen not in GenerationType:
+        get_console().print(
+            "\n[error]invalid type of doc generation required. Pass one of 
[airflow | providers | helm]\n"
+        )
+        sys.exit(1)
+
+    start_generating_back_references(gen, airflow_site_directory)
+
+
 @release_management.command(
     name="release-prod-images", help="Release production images to DockerHub 
(needs DockerHub permissions)."
 )
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 0bd911e745..38196ea48a 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
@@ -169,6 +169,12 @@ RELEASE_MANAGEMENT_PARAMETERS: dict[str, list[dict[str, 
str | list[str]]]] = {
             ],
         },
     ],
+    "breeze release-management add-back-references": [
+        {
+            "name": "Add Back References to Docs",
+            "options": ["--airflow-site-directory", "--gen-type"],
+        },
+    ],
     "breeze release-management generate-issue-content-providers": [
         {
             "name": "Generate issue content flags",
diff --git a/dev/breeze/src/airflow_breeze/utils/add_back_references.py 
b/dev/breeze/src/airflow_breeze/utils/add_back_references.py
new file mode 100644
index 0000000000..1139648871
--- /dev/null
+++ b/dev/breeze/src/airflow_breeze/utils/add_back_references.py
@@ -0,0 +1,162 @@
+# 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.
+from __future__ import annotations
+
+import enum
+import os
+import tempfile
+from pathlib import Path
+from urllib.error import URLError
+from urllib.request import urlopen
+
+from rich import print
+
+airflow_redirects_link = (
+    
"https://raw.githubusercontent.com/apache/airflow/main/docs/apache-airflow/redirects.txt";
+)
+helm_redirects_link = 
"https://raw.githubusercontent.com/apache/airflow/main/docs/helm-chart/redirects.txt";
+
+
+# types of generations supported
+class GenerationType(enum.Enum):
+    airflow = 1
+    helm = 2
+    providers = 3
+
+
+def download_file(url):
+    try:
+        temp_dir = Path(tempfile.mkdtemp(prefix="temp_dir", suffix=""))
+        file_name = temp_dir / "redirects.txt"
+        filedata = urlopen(url)
+        data = filedata.read()
+        with open(file_name, "wb") as f:
+            f.write(data)
+        return True, file_name
+    except URLError as e:
+        if e.reason == "Not Found":
+            print(f"[blue]The {url} does not exist. Skipping.")
+        else:
+            print(f"[yellow]Could not download file {url}: {e}")
+        return False, "no-file"
+
+
+def construct_old_to_new_tuple_mapping(file_name: Path) -> list[tuple[str, 
str]]:
+    old_to_new_tuples: list[tuple[str, str]] = []
+    with open(file_name) as f:
+        file_content = []
+        lines = f.readlines()
+        # Skip empty line
+
+        for line in lines:
+            if not line.strip():
+                continue
+
+            # Skip comments
+            if line.startswith("#"):
+                continue
+
+            line = line.rstrip()
+            file_content.append(line)
+
+            old_path, new_path = line.split(" ")
+            old_path = old_path.replace(".rst", ".html")
+            new_path = new_path.replace(".rst", ".html")
+
+            old_to_new_tuples.append((old_path, new_path))
+    return old_to_new_tuples
+
+
+def get_redirect_content(url: str):
+    return f'<html><head><meta http-equiv="refresh" content="0; 
url={url}"/></head></html>'
+
+
+def get_github_redirects_url(provider_name: str):
+    return 
f"https://raw.githubusercontent.com/apache/airflow/main/docs/{provider_name}/redirects.txt";
+
+
+def get_provider_docs_path(docs_archive_path, provider_name: str):
+    return docs_archive_path + "/" + provider_name
+
+
+def create_back_reference_html(back_ref_url, path):
+    content = get_redirect_content(back_ref_url)
+
+    if Path(path).exists():
+        print(f"Skipping file:{path}, redirects already exist")
+        return
+
+    # creating a back reference html file
+    with open(path, "w") as f:
+        f.write(content)
+    print(f"[green]Created back reference redirect: {path}")
+
+
+def generate_back_references(link: str, base_path: str):
+    is_downloaded, file_name = download_file(link)
+    if not is_downloaded:
+        old_to_new: list[tuple[str, str]] = []
+    else:
+        print(f"Constructs old to new mapping from redirects.txt for 
{base_path}")
+        old_to_new = construct_old_to_new_tuple_mapping(file_name)
+    old_to_new.append(("index.html", "changelog.html"))
+    old_to_new.append(("index.html", "security.html"))
+
+    versions = [f.path.split("/")[-1] for f in os.scandir(base_path) if 
f.is_dir()]
+
+    for version in versions:
+        print(f"Processing {base_path}, version: {version}")
+        versioned_provider_path = base_path + "/" + version
+
+        for old, new in old_to_new:
+            # only if old file exists, add the back reference
+            if os.path.exists(versioned_provider_path + "/" + old):
+                split_new_path = new.split("/")
+                file_name = new.split("/")[-1]
+                dest_dir = versioned_provider_path + "/" + 
"/".join(split_new_path[: len(split_new_path) - 1])
+
+                # finds relative path of old file with respect to new and 
handles case of different file
+                # names also
+                relative_path = os.path.relpath(old, new)
+                # remove one directory level because file path was used above
+                relative_path = relative_path.replace("../", "", 1)
+
+                os.makedirs(dest_dir, exist_ok=True)
+                dest_file_path = dest_dir + "/" + file_name
+                create_back_reference_html(relative_path, dest_file_path)
+
+
+def start_generating_back_references(gen_type, airflow_site_directory):
+    docs_archive_path = airflow_site_directory + "/docs-archive"
+    airflow_docs_path = docs_archive_path + "/apache-airflow"
+    helm_docs_path = docs_archive_path + "/helm-chart"
+
+    if gen_type == GenerationType.airflow:
+        generate_back_references(airflow_redirects_link, airflow_docs_path)
+    elif gen_type == GenerationType.helm:
+        generate_back_references(helm_redirects_link, helm_docs_path)
+    elif gen_type == GenerationType.providers:
+        all_providers = [
+            f.path.split("/")[-1]
+            for f in os.scandir(docs_archive_path)
+            if f.is_dir() and "providers" in f.name
+        ]
+        for p in all_providers:
+            print(f"Processing airflow provider: {p}")
+            generate_back_references(
+                get_github_redirects_url(p), 
get_provider_docs_path(docs_archive_path, p)
+            )
diff --git a/images/breeze/output-commands-hash.txt 
b/images/breeze/output-commands-hash.txt
index 1890af0540..17bca23d51 100644
--- a/images/breeze/output-commands-hash.txt
+++ b/images/breeze/output-commands-hash.txt
@@ -35,6 +35,7 @@ prod-image:build:58ab53c2f5e799bbe05d6fac26d001bf
 prod-image:pull:76f1f27e6119928412abecf153fce4bb
 prod-image:verify:bd2b78738a7c388dbad6076c41a9f906
 prod-image:2da480c21d7eb120075489dc1da0f55b
+release-management:add-back-references:8dab6a30076a55f2d31c6d22a94e0ccb
 release-management:create-minor-branch:a3834afc4aa5d1e98002c9e9e7a9931d
 release-management:generate-constraints:b8fcaf8f0acd35ed5dbd48659bdb6485
 
release-management:generate-issue-content-providers:9cea234261547208ac812464d3e4a598
@@ -48,17 +49,17 @@ 
release-management:release-prod-images:4d85a23a2175bf8894de5aedbdd85614
 release-management:start-rc-process:b27bd524dd3c89f50a747b60a7e892c1
 release-management:start-release:419f48f6a4ff4457cb9de7ff496aebbe
 release-management:verify-provider-packages:96dce5644aad6b37080acf77b3d8de3a
-release-management:b53a6b829715075b5570de4760887a2a
+release-management:077bbb9b6bc15e9700735a3e25bfee1a
 sbom:generate-provider-requirements:1e7609a0ebafb839d30ec90e4254a628
 sbom:update-sbom-information:0ce56884e5f842e3e80d6619df1ccc64
 sbom:d9c57d78e23a29ec9cd0139e230e1811
 setup:autocomplete:fffcd49e102e09ccd69b3841a9e3ea8e
-setup:check-all-params-in-groups:c2ee7aa0ac0831c92167ed70c05f3bd3
+setup:check-all-params-in-groups:76b3b1d3726ca2a446bab0668b1c50f5
 setup:config:38ebaaf93ed42bc7b2a3000eeea2631d
-setup:regenerate-command-images:76cc7b6568a1488a25e54fd5b4506b0a
+setup:regenerate-command-images:9217287065e8d7b64d36bc6a80da1e7a
 setup:self-upgrade:4af905a147fcd6670a0e33d3d369a94b
 setup:version:be116d90a21c2afe01087f7609774e1e
-setup:d5f6d65e2da4274ee76abf712e7f699e
+setup:3bf520bc5f968107d5022679d7be7c7f
 shell:48db0babd831d704b97118d053ee639a
 start-airflow:52ad9113f74b39c1ffbd37464e1415e6
 static-checks:6ba0614c2c493b45bfc027c3570d737e
diff --git a/images/breeze/output_release-management.svg 
b/images/breeze/output_release-management.svg
index e751de1f99..54715bce84 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 708.8" 
xmlns="http://www.w3.org/2000/svg";>
+<svg class="rich-terminal" viewBox="0 0 1482 782.0" 
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="657.8" />
+      <rect x="0" y="0" width="1463.0" height="731.0" />
     </clipPath>
     <clipPath id="breeze-release-management-line-0">
     <rect x="0" y="1.5" width="1464" height="24.65"/>
@@ -122,9 +122,18 @@
 <clipPath id="breeze-release-management-line-25">
     <rect x="0" y="611.5" width="1464" height="24.65"/>
             </clipPath>
+<clipPath id="breeze-release-management-line-26">
+    <rect x="0" y="635.9" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-line-27">
+    <rect x="0" y="660.3" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-line-28">
+    <rect x="0" y="684.7" 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="706.8" rx="8"/><text 
class="breeze-release-management-title" fill="#c5c8c6" text-anchor="middle" 
x="740" y="27">Command:&#160;release-management</text>
+    <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" 
x="1" y="1" width="1480" height="780" rx="8"/><text 
class="breeze-release-management-title" fill="#c5c8c6" text-anchor="middle" 
x="740" y="27">Command:&#160;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,9 +167,12 @@
 </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&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="488" y="532.4" textLength="951.6" 
clip-path="url(#breeze-release-management-line-21)">Generates&#160;conte [...]
 </text><text class="breeze-release-management-r5" x="0" y="556.8" 
textLength="1464" 
clip-path="url(#breeze-release-management-line-22)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-r2" x="1464" y="556.8" textLength="12.2" 
clip-path="url(#breeze-release-management-line-22)">
 </text><text class="breeze-release-management-r5" x="0" y="581.2" 
textLength="24.4" 
clip-path="url(#breeze-release-management-line-23)">╭─</text><text 
class="breeze-release-management-r5" x="24.4" y="581.2" textLength="292.8" 
clip-path="url(#breeze-release-management-line-23)">&#160;Other&#160;release&#160;commands&#160;</text><text
 class="breeze-release-management-r5" x="317.2" y="581.2" textLength="1122.4" 
clip-path="url(#breeze-release-management-line-23)">────────────────────────────
 [...]
-</text><text class="breeze-release-management-r5" x="0" y="605.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-24)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="605.6" textLength="292.8" 
clip-path="url(#breeze-release-management-line-24)">generate-constraints&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="341.6" y="605.6" textLength="1098" 
clip-path="url(#breeze-release-management-line-24)">Generates&#160;pinned&#160;cons
 [...]
-</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="292.8" 
clip-path="url(#breeze-release-management-line-25)">publish-docs&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="341.6" y="630" textLength="1098" 
clip-path="url(#breeze-release-management-line-25 [...]
+</text><text class="breeze-release-management-r5" x="0" y="605.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-24)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="605.6" textLength="292.8" 
clip-path="url(#breeze-release-management-line-24)">publish-docs&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="341.6" y="605.6" textLength="1098" 
clip-path="url(#breeze-release-management-l [...]
+</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="292.8" 
clip-path="url(#breeze-release-management-line-25)">generate-constraints&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="341.6" y="630" textLength="1098" 
clip-path="url(#breeze-release-management-line-25)">Generates&#160;pinned&#160;constraint
 [...]
 </text><text class="breeze-release-management-r5" x="0" y="654.4" 
textLength="1464" 
clip-path="url(#breeze-release-management-line-26)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-r2" x="1464" y="654.4" textLength="12.2" 
clip-path="url(#breeze-release-management-line-26)">
+</text><text class="breeze-release-management-r5" x="0" y="678.8" 
textLength="24.4" 
clip-path="url(#breeze-release-management-line-27)">╭─</text><text 
class="breeze-release-management-r5" x="24.4" y="678.8" textLength="122" 
clip-path="url(#breeze-release-management-line-27)">&#160;Commands&#160;</text><text
 class="breeze-release-management-r5" x="146.4" y="678.8" textLength="1293.2" 
clip-path="url(#breeze-release-management-line-27)">──────────────────────────────────────────────────────
 [...]
+</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)">add-back-references&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="329.4" y="703.2" textLength="1110.2" 
clip-path="url(#breeze-release-management-line-28)">Command&#160;to&#160;add&#160;
 [...]
+</text><text class="breeze-release-management-r5" x="0" y="727.6" 
textLength="1464" 
clip-path="url(#breeze-release-management-line-29)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-r2" x="1464" y="727.6" textLength="12.2" 
clip-path="url(#breeze-release-management-line-29)">
 </text>
     </g>
     </g>
diff --git a/images/breeze/output_release-management_add-back-references.svg 
b/images/breeze/output_release-management_add-back-references.svg
new file mode 100644
index 0000000000..87839c0041
--- /dev/null
+++ b/images/breeze/output_release-management_add-back-references.svg
@@ -0,0 +1,122 @@
+<svg class="rich-terminal" viewBox="0 0 1482 416.0" 
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-add-back-references-matrix {
+        font-family: Fira Code, monospace;
+        font-size: 20px;
+        line-height: 24.4px;
+        font-variant-east-asian: full-width;
+    }
+
+    .breeze-release-management-add-back-references-title {
+        font-size: 18px;
+        font-weight: bold;
+        font-family: arial;
+    }
+
+    .breeze-release-management-add-back-references-r1 { fill: 
#c5c8c6;font-weight: bold }
+.breeze-release-management-add-back-references-r2 { fill: #c5c8c6 }
+.breeze-release-management-add-back-references-r3 { fill: #d0b344;font-weight: 
bold }
+.breeze-release-management-add-back-references-r4 { fill: #68a0b3;font-weight: 
bold }
+.breeze-release-management-add-back-references-r5 { fill: #868887 }
+.breeze-release-management-add-back-references-r6 { fill: #cc555a }
+.breeze-release-management-add-back-references-r7 { fill: #98a84b;font-weight: 
bold }
+.breeze-release-management-add-back-references-r8 { fill: #8d7b39 }
+.breeze-release-management-add-back-references-r9 { fill: #8a4346 }
+    </style>
+
+    <defs>
+    <clipPath id="breeze-release-management-add-back-references-clip-terminal">
+      <rect x="0" y="0" width="1463.0" height="365.0" />
+    </clipPath>
+    <clipPath id="breeze-release-management-add-back-references-line-0">
+    <rect x="0" y="1.5" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-add-back-references-line-1">
+    <rect x="0" y="25.9" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-add-back-references-line-2">
+    <rect x="0" y="50.3" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-add-back-references-line-3">
+    <rect x="0" y="74.7" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-add-back-references-line-4">
+    <rect x="0" y="99.1" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-add-back-references-line-5">
+    <rect x="0" y="123.5" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-add-back-references-line-6">
+    <rect x="0" y="147.9" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-add-back-references-line-7">
+    <rect x="0" y="172.3" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-add-back-references-line-8">
+    <rect x="0" y="196.7" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-add-back-references-line-9">
+    <rect x="0" y="221.1" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-add-back-references-line-10">
+    <rect x="0" y="245.5" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-add-back-references-line-11">
+    <rect x="0" y="269.9" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-add-back-references-line-12">
+    <rect x="0" y="294.3" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-add-back-references-line-13">
+    <rect x="0" y="318.7" 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="414" rx="8"/><text 
class="breeze-release-management-add-back-references-title" fill="#c5c8c6" 
text-anchor="middle" x="740" 
y="27">Command:&#160;release-management&#160;add-back-references</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-add-back-references-clip-terminal)">
+    
+    <g class="breeze-release-management-add-back-references-matrix">
+    <text class="breeze-release-management-add-back-references-r2" x="1464" 
y="20" textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-0)">
+</text><text class="breeze-release-management-add-back-references-r3" x="12.2" 
y="44.4" textLength="85.4" 
clip-path="url(#breeze-release-management-add-back-references-line-1)">Usage:&#160;</text><text
 class="breeze-release-management-add-back-references-r1" x="97.6" y="44.4" 
textLength="573.4" 
clip-path="url(#breeze-release-management-add-back-references-line-1)">breeze&#160;release-management&#160;add-back-references&#160;[</text><text
 class="breeze-release-management-add-back-referenc [...]
+</text><text class="breeze-release-management-add-back-references-r2" x="1464" 
y="68.8" textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-2)">
+</text><text class="breeze-release-management-add-back-references-r2" x="12.2" 
y="93.2" textLength="963.8" 
clip-path="url(#breeze-release-management-add-back-references-line-3)">Command&#160;to&#160;add&#160;back&#160;references&#160;for&#160;documentation&#160;to&#160;make&#160;it&#160;backward&#160;compatible</text><text
 class="breeze-release-management-add-back-references-r2" x="1464" y="93.2" 
textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-3)">
+</text><text class="breeze-release-management-add-back-references-r2" x="1464" 
y="117.6" textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-4)">
+</text><text class="breeze-release-management-add-back-references-r5" x="0" 
y="142" textLength="24.4" 
clip-path="url(#breeze-release-management-add-back-references-line-5)">╭─</text><text
 class="breeze-release-management-add-back-references-r5" x="24.4" y="142" 
textLength="353.8" 
clip-path="url(#breeze-release-management-add-back-references-line-5)">&#160;Add&#160;Back&#160;References&#160;to&#160;Docs&#160;</text><text
 class="breeze-release-management-add-back-references-r5" x="378.2" y [...]
+</text><text class="breeze-release-management-add-back-references-r5" x="0" 
y="166.4" textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-6)">│</text><text
 class="breeze-release-management-add-back-references-r6" x="24.4" y="166.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-6)">*</text><text
 class="breeze-release-management-add-back-references-r4" x="61" y="166.4" 
textLength="12.2" clip-path="url(#breeze-release-m [...]
+</text><text class="breeze-release-management-add-back-references-r5" x="0" 
y="190.8" textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-7)">│</text><text
 class="breeze-release-management-add-back-references-r6" x="24.4" y="190.8" 
textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-7)">*</text><text
 class="breeze-release-management-add-back-references-r4" x="61" y="190.8" 
textLength="12.2" clip-path="url(#breeze-release-m [...]
+</text><text class="breeze-release-management-add-back-references-r5" x="0" 
y="215.2" textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-8)">│</text><text
 class="breeze-release-management-add-back-references-r9" x="427" y="215.2" 
textLength="915" 
clip-path="url(#breeze-release-management-add-back-references-line-8)">[required]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16
 [...]
+</text><text class="breeze-release-management-add-back-references-r5" x="0" 
y="239.6" textLength="1464" 
clip-path="url(#breeze-release-management-add-back-references-line-9)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-add-back-references-r2" x="1464" y="239.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-9)">
+</text><text class="breeze-release-management-add-back-references-r5" x="0" 
y="264" textLength="24.4" 
clip-path="url(#breeze-release-management-add-back-references-line-10)">╭─</text><text
 class="breeze-release-management-add-back-references-r5" x="24.4" y="264" 
textLength="195.2" 
clip-path="url(#breeze-release-management-add-back-references-line-10)">&#160;Common&#160;options&#160;</text><text
 class="breeze-release-management-add-back-references-r5" x="219.6" y="264" 
textLength="1220" c [...]
+</text><text class="breeze-release-management-add-back-references-r5" x="0" 
y="288.4" textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-11)">│</text><text
 class="breeze-release-management-add-back-references-r4" x="24.4" y="288.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-11)">-</text><text
 class="breeze-release-management-add-back-references-r4" x="36.6" y="288.4" 
textLength="97.6" clip-path="url(#breeze-relea [...]
+</text><text class="breeze-release-management-add-back-references-r5" x="0" 
y="312.8" textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-12)">│</text><text
 class="breeze-release-management-add-back-references-r4" x="24.4" y="312.8" 
textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-12)">-</text><text
 class="breeze-release-management-add-back-references-r4" x="36.6" y="312.8" 
textLength="48.8" clip-path="url(#breeze-relea [...]
+</text><text class="breeze-release-management-add-back-references-r5" x="0" 
y="337.2" textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-13)">│</text><text
 class="breeze-release-management-add-back-references-r4" x="24.4" y="337.2" 
textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-13)">-</text><text
 class="breeze-release-management-add-back-references-r4" x="36.6" y="337.2" 
textLength="61" clip-path="url(#breeze-release [...]
+</text><text class="breeze-release-management-add-back-references-r5" x="0" 
y="361.6" textLength="1464" 
clip-path="url(#breeze-release-management-add-back-references-line-14)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-add-back-references-r2" x="1464" y="361.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-add-back-references-line-14)">
+</text>
+    </g>
+    </g>
+</svg>
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 780fd4d61c..d7a60d1a9b 100644
--- a/images/breeze/output_setup_check-all-params-in-groups.svg
+++ b/images/breeze/output_setup_check-all-params-in-groups.svg
@@ -1,4 +1,4 @@
-<svg class="rich-terminal" viewBox="0 0 1482 757.5999999999999" 
xmlns="http://www.w3.org/2000/svg";>
+<svg class="rich-terminal" viewBox="0 0 1482 782.0" 
xmlns="http://www.w3.org/2000/svg";>
     <!-- Generated with Rich https://www.textualize.io -->
     <style>
 
@@ -43,7 +43,7 @@
 
     <defs>
     <clipPath id="breeze-setup-check-all-params-in-groups-clip-terminal">
-      <rect x="0" y="0" width="1463.0" height="706.5999999999999" />
+      <rect x="0" y="0" width="1463.0" height="731.0" />
     </clipPath>
     <clipPath id="breeze-setup-check-all-params-in-groups-line-0">
     <rect x="0" y="1.5" width="1464" height="24.65"/>
@@ -129,9 +129,12 @@
 <clipPath id="breeze-setup-check-all-params-in-groups-line-27">
     <rect x="0" y="660.3" width="1464" height="24.65"/>
             </clipPath>
+<clipPath id="breeze-setup-check-all-params-in-groups-line-28">
+    <rect x="0" y="684.7" 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="755.6" rx="8"/><text 
class="breeze-setup-check-all-params-in-groups-title" fill="#c5c8c6" 
text-anchor="middle" x="740" 
y="27">Command:&#160;setup&#160;check-all-params-in-groups</text>
+    <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" 
x="1" y="1" width="1480" height="780" rx="8"/><text 
class="breeze-setup-check-all-params-in-groups-title" fill="#c5c8c6" 
text-anchor="middle" x="740" 
y="27">Command:&#160;setup&#160;check-all-params-in-groups</text>
             <g transform="translate(26,22)">
             <circle cx="0" cy="0" r="7" fill="#ff5f57"/>
             <circle cx="22" cy="0" r="7" fill="#febc2e"/>
@@ -153,23 +156,24 @@
 </text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" 
y="239.6" textLength="12.2" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-9)">│</text><text 
class="breeze-setup-check-all-params-in-groups-r6" x="183" y="239.6" 
textLength="1256.6" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-9)">compile-www-assets&#160;|&#160;down&#160;|&#160;exec&#160;|&#160;k8s:build-k8s-image&#160;|&#160;k8s:configure-cluster&#160;|&#160;k8s:create-cluster&#160;|&#160
 [...]
 </text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" y="264" 
textLength="12.2" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-10)">│</text><text 
class="breeze-setup-check-all-params-in-groups-r6" x="183" y="264" 
textLength="1256.6" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-10)">k8s:delete-cluster&#160;|&#160;k8s:deploy-airflow&#160;|&#160;k8s:k9s&#160;|&#160;k8s:logs&#160;|&#160;k8s:run-complete-tests&#160;|&#160;k8s:setup-env&#160;|</tex
 [...]
 </text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" 
y="288.4" textLength="12.2" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-11)">│</text><text 
class="breeze-setup-check-all-params-in-groups-r6" x="183" y="288.4" 
textLength="1256.6" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-11)">k8s:shell&#160;|&#160;k8s:status&#160;|&#160;k8s:tests&#160;|&#160;k8s:upload-k8s-image&#160;|&#160;k8s&#160;|&#160;prod-image:build&#160;|&#160;prod-image:pul
 [...]
-</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" 
y="312.8" textLength="12.2" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-12)">│</text><text 
class="breeze-setup-check-all-params-in-groups-r6" x="183" y="312.8" 
textLength="1256.6" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-12)">prod-image:verify&#160;|&#160;prod-image&#160;|&#160;release-management:create-minor-branch&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
-</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" 
y="337.2" textLength="12.2" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-13)">│</text><text 
class="breeze-setup-check-all-params-in-groups-r6" x="183" y="337.2" 
textLength="1256.6" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-13)">release-management:generate-constraints&#160;|&#160;release-management:generate-issue-content-providers&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<
 [...]
-</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:generate-providers-metadata&#160;|&#160;release-management:install-provider-packages&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<
 [...]
-</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:prepare-airflow-package&#160;|&#160;release-management:prepare-provider-documentation&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><te
 [...]
-</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:prepare-provider-packages&#160;|&#160;release-management:publish-docs&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16
 [...]
-</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:release-prod-images&#160;|&#160;release-management:start-rc-process&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;
 [...]
-</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:start-release&#160;|&#160;release-management:verify-provider-packages&#160;|&#160;release-management&#160;|&#160;&#160;</text><text
 class="b [...]
-</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)">sbom:generate-provider-requirements&#160;|&#160;sbom:update-sbom-information&#160;|&#160;sbom&#160;|&#160;setup:autocomplete&#160;|&#160;&#160;&#160;&#160;&#16
 [...]
-</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)">setup:check-all-params-in-groups&#160;|&#160;setup:config&#160;|&#160;setup:regenerate-command-images&#160;|&#160;setup:self-upgrade&#160;</text><text
 class="breez [...]
-</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)">|&#160;setup:version&#160;|&#160;setup&#160;|&#160;shell&#160;|&#160;start-airflow&#160;|&#160;static-checks&#160;|&#160;testing:docker-compose-tests&#160;|&#1
 [...]
-</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)">testing:helm-tests&#160;|&#160;testing:integration-tests&#160;|&#160;testing:tests&#160;|&#160;testing)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#
 [...]
-</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" 
y="581.2" textLength="1464" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-23)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-setup-check-all-params-in-groups-r2" x="1464" 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-r5" x="0" 
y="605.6" textLength="24.4" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-24)">╭─</text><text
 class="breeze-setup-check-all-params-in-groups-r5" x="24.4" y="605.6" 
textLength="195.2" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-24)">&#160;Common&#160;options&#160;</text><text
 class="breeze-setup-check-all-params-in-groups-r5" x="219.6" y="605.6" 
textLength="1220" clip-path="url(#breeze-se [...]
-</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-r4" x="24.4" 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-r4" x="36.6" y="630" 
textLength="97.6" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-25) [...]
-</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-r4" x="24.4" 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-r4" x="36.6" y="654.4" 
textLength="48.8" clip-path="url(#breeze-setup-check-all-params-in-groups-li 
[...]
-</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" 
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-r4" x="24.4" 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-r4" x="36.6" y="678.8" 
textLength="61" clip-path="url(#breeze-setup-check-all-params-in-groups-line 
[...]
-</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" 
y="703.2" textLength="1464" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-28)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-setup-check-all-params-in-groups-r2" x="1464" y="703.2" 
textLength="12.2" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-28)">
+</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" 
y="312.8" textLength="12.2" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-12)">│</text><text 
class="breeze-setup-check-all-params-in-groups-r6" x="183" y="312.8" 
textLength="1256.6" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-12)">prod-image:verify&#160;|&#160;prod-image&#160;|&#160;release-management:add-back-references&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
+</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" 
y="337.2" textLength="12.2" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-13)">│</text><text 
class="breeze-setup-check-all-params-in-groups-r6" x="183" y="337.2" 
textLength="1256.6" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-13)">release-management:create-minor-branch&#160;|&#160;release-management:generate-constraints&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#
 [...]
+</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:generate-issue-content-providers&#160;|&#160;release-management:generate-providers-metadata&#160;|&#160;</text><text
 class="breeze-setup-che [...]
+</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:install-provider-packages&#160;|&#160;release-management:prepare-airflow-package&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
+</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:prepare-provider-documentation&#160;|&#160;release-management:prepare-provider-packages&#160;|&#160;&#160;&#160;&#160;&#160;</text><text
 cla [...]
+</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:publish-docs&#160;|&#160;release-management:release-prod-images&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16
 [...]
+</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:start-rc-process&#160;|&#160;release-management:start-release&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;
 [...]
+</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:verify-provider-packages&#160;|&#160;release-management&#160;|&#160;sbom:generate-provider-requirements&#160;</text><text
 class="breeze-setu [...]
+</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)">|&#160;sbom:update-sbom-information&#160;|&#160;sbom&#160;|&#160;setup:autocomplete&#160;|&#160;setup:check-all-params-in-groups&#160;|&#160;&#160;&#160;&#160;&#16
 [...]
+</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)">setup:config&#160;|&#160;setup:regenerate-command-images&#160;|&#160;setup:self-upgrade&#160;|&#160;setup:version&#160;|&#160;setup&#160;|&#160;shell&#160;|&#1
 [...]
+</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)">start-airflow&#160;|&#160;static-checks&#160;|&#160;testing:docker-compose-tests&#160;|&#160;testing:helm-tests&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160
 [...]
+</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)">testing:integration-tests&#160;|&#160;testing:tests&#160;|&#160;testing)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
+</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" 
y="605.6" textLength="1464" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-24)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-setup-check-all-params-in-groups-r2" x="1464" 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-r5" x="0" y="630" 
textLength="24.4" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-25)">╭─</text><text
 class="breeze-setup-check-all-params-in-groups-r5" x="24.4" y="630" 
textLength="195.2" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-25)">&#160;Common&#160;options&#160;</text><text
 class="breeze-setup-check-all-params-in-groups-r5" x="219.6" y="630" 
textLength="1220" clip-path="url(#breeze-setup-ch [...]
+</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-r4" x="24.4" 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-r4" x="36.6" y="654.4" 
textLength="97.6" clip-path="url(#breeze-setup-check-all-params-in-groups-li 
[...]
+</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" 
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-r4" x="24.4" 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-r4" x="36.6" y="678.8" 
textLength="48.8" clip-path="url(#breeze-setup-check-all-params-in-groups-li 
[...]
+</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" 
y="703.2" textLength="12.2" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-28)">│</text><text 
class="breeze-setup-check-all-params-in-groups-r4" x="24.4" y="703.2" 
textLength="12.2" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-28)">-</text><text 
class="breeze-setup-check-all-params-in-groups-r4" x="36.6" y="703.2" 
textLength="61" clip-path="url(#breeze-setup-check-all-params-in-groups-line 
[...]
+</text><text class="breeze-setup-check-all-params-in-groups-r5" x="0" 
y="727.6" textLength="1464" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-29)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-setup-check-all-params-in-groups-r2" x="1464" y="727.6" 
textLength="12.2" 
clip-path="url(#breeze-setup-check-all-params-in-groups-line-29)">
 </text>
     </g>
     </g>
diff --git a/images/breeze/output_setup_regenerate-command-images.svg 
b/images/breeze/output_setup_regenerate-command-images.svg
index 7ba3f46768..a804b3d2f9 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 855.1999999999999" 
xmlns="http://www.w3.org/2000/svg";>
+<svg class="rich-terminal" viewBox="0 0 1482 879.5999999999999" 
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="804.1999999999999" />
+      <rect x="0" y="0" width="1463.0" height="828.5999999999999" />
     </clipPath>
     <clipPath id="breeze-setup-regenerate-command-images-line-0">
     <rect x="0" y="1.5" width="1464" height="24.65"/>
@@ -141,9 +141,12 @@
 <clipPath id="breeze-setup-regenerate-command-images-line-31">
     <rect x="0" y="757.9" width="1464" height="24.65"/>
             </clipPath>
+<clipPath id="breeze-setup-regenerate-command-images-line-32">
+    <rect x="0" y="782.3" 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="853.2" rx="8"/><text 
class="breeze-setup-regenerate-command-images-title" fill="#c5c8c6" 
text-anchor="middle" x="740" 
y="27">Command:&#160;setup&#160;regenerate-command-images</text>
+    <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" 
x="1" y="1" width="1480" height="877.6" rx="8"/><text 
class="breeze-setup-regenerate-command-images-title" fill="#c5c8c6" 
text-anchor="middle" x="740" 
y="27">Command:&#160;setup&#160;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"/>
@@ -166,26 +169,27 @@
 </text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="264" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-10)">│</text><text 
class="breeze-setup-regenerate-command-images-r6" x="219.6" y="264" 
textLength="1220" 
clip-path="url(#breeze-setup-regenerate-command-images-line-10)">compile-www-assets&#160;|&#160;down&#160;|&#160;exec&#160;|&#160;k8s:build-k8s-image&#160;|&#160;k8s:configure-cluster&#160;|&#160;k8s:create-cluster&#160;</text><text
 [...]
 </text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="288.4" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-11)">│</text><text 
class="breeze-setup-regenerate-command-images-r6" x="219.6" y="288.4" 
textLength="1220" 
clip-path="url(#breeze-setup-regenerate-command-images-line-11)">|&#160;k8s:delete-cluster&#160;|&#160;k8s:deploy-airflow&#160;|&#160;k8s:k9s&#160;|&#160;k8s:logs&#160;|&#160;k8s:run-complete-tests&#160;|&#160;&#160;&#160;&#160;
 [...]
 </text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="312.8" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-12)">│</text><text 
class="breeze-setup-regenerate-command-images-r6" x="219.6" y="312.8" 
textLength="1220" 
clip-path="url(#breeze-setup-regenerate-command-images-line-12)">k8s:setup-env&#160;|&#160;k8s:shell&#160;|&#160;k8s:status&#160;|&#160;k8s:tests&#160;|&#160;k8s:upload-k8s-image&#160;|&#160;k8s&#160;|&#160;prod-image:build&#160
 [...]
-</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="337.2" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-13)">│</text><text 
class="breeze-setup-regenerate-command-images-r6" x="219.6" y="337.2" 
textLength="1220" 
clip-path="url(#breeze-setup-regenerate-command-images-line-13)">prod-image:pull&#160;|&#160;prod-image:verify&#160;|&#160;prod-image&#160;|&#160;release-management:create-minor-branch&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
-</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="361.6" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-14)">│</text><text 
class="breeze-setup-regenerate-command-images-r6" x="219.6" y="361.6" 
textLength="1220" 
clip-path="url(#breeze-setup-regenerate-command-images-line-14)">release-management:generate-constraints&#160;|&#160;release-management:generate-issue-content-providers&#160;|&#160;&#160;&#160;&#160;&#160;</text><text
 class="bre [...]
-</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:generate-providers-metadata&#160;|&#160;release-management:install-provider-packages&#160;|&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze- [...]
-</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:prepare-airflow-package&#160;|&#160;release-management:prepare-provider-documentation&#160;|&#160;&#160;&#160;&#160;</text><text
 class="breeze-s [...]
-</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:prepare-provider-packages&#160;|&#160;release-management:publish-docs&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#
 [...]
-</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:release-prod-images&#160;|&#160;release-management:start-rc-process&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16
 [...]
-</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:start-release&#160;|&#160;release-management:verify-provider-packages&#160;|&#160;release-management&#160;</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)">|&#160;sbom:generate-provider-requirements&#160;|&#160;sbom:update-sbom-information&#160;|&#160;sbom&#160;|&#160;setup:autocomplete&#160;|&#160;&#160;</text><text
 clas [...]
-</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)">setup:check-all-params-in-groups&#160;|&#160;setup:config&#160;|&#160;setup:regenerate-command-images&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
-</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)">setup:self-upgrade&#160;|&#160;setup:version&#160;|&#160;setup&#160;|&#160;shell&#160;|&#160;start-airflow&#160;|&#160;static-checks&#160;|&#160;&#160;&#160;&#160;
 [...]
-</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)">testing:docker-compose-tests&#160;|&#160;testing:helm-tests&#160;|&#160;testing:integration-tests&#160;|&#160;testing:tests&#160;|&#160;&#160;&#160;&#160;&#160;</t
 [...]
-</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)">testing)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160
 [...]
-</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-r4" x="24.4" y="630" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-25)">-</text><text 
class="breeze-setup-regenerate-command-images-r4" x="36.6" y="630" 
textLength="73.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-25)">-che [...]
-</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-r2" x="219.6" y="654.4" 
textLength="170.8" 
clip-path="url(#breeze-setup-regenerate-command-images-line-26)">together&#160;with&#160;</text><text
 class="breeze-setup-regenerate-command-images-r4" x="390.4" y="654.4" 
textLength="12.2" clip-path="url(#breeze-setup-regenera [...]
-</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="678.8" 
textLength="1464" 
clip-path="url(#breeze-setup-regenerate-command-images-line-27)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-setup-regenerate-command-images-r2" x="1464" y="678.8" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-27)">
-</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="703.2" 
textLength="24.4" 
clip-path="url(#breeze-setup-regenerate-command-images-line-28)">╭─</text><text 
class="breeze-setup-regenerate-command-images-r5" x="24.4" y="703.2" 
textLength="195.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-28)">&#160;Common&#160;options&#160;</text><text
 class="breeze-setup-regenerate-command-images-r5" x="219.6" y="703.2" 
textLength="1220" clip-path="url(#breeze-setup-r [...]
-</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="97.6" 
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-r4" x="24.4" y="752" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-30)">-</text><text 
class="breeze-setup-regenerate-command-images-r4" x="36.6" y="752" 
textLength="48.8" 
clip-path="url(#breeze-setup-regenerate-command-images-line-30)">-dry [...]
-</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="776.4" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-31)">│</text><text 
class="breeze-setup-regenerate-command-images-r4" x="24.4" y="776.4" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-31)">-</text><text 
class="breeze-setup-regenerate-command-images-r4" x="36.6" y="776.4" 
textLength="61" 
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="1464" 
clip-path="url(#breeze-setup-regenerate-command-images-line-32)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-setup-regenerate-command-images-r2" x="1464" y="800.8" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-32)">
+</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="337.2" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-13)">│</text><text 
class="breeze-setup-regenerate-command-images-r6" x="219.6" y="337.2" 
textLength="1220" 
clip-path="url(#breeze-setup-regenerate-command-images-line-13)">prod-image:pull&#160;|&#160;prod-image:verify&#160;|&#160;prod-image&#160;|&#160;release-management:add-back-references&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
+</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="361.6" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-14)">│</text><text 
class="breeze-setup-regenerate-command-images-r6" x="219.6" y="361.6" 
textLength="1220" 
clip-path="url(#breeze-setup-regenerate-command-images-line-14)">release-management:create-minor-branch&#160;|&#160;release-management:generate-constraints&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;
 [...]
+</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:generate-issue-content-providers&#160;|&#160;release-management:generate-providers-metadata</text><text
 class="breeze-setup-regenerate-command-image [...]
+</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)">|&#160;release-management:install-provider-packages&#160;|&#160;release-management:prepare-airflow-package&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><
 [...]
+</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:prepare-provider-documentation&#160;|&#160;release-management:prepare-provider-packages&#160;|&#160;&#160;</text><text
 class="breeze-setup-regen [...]
+</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:publish-docs&#160;|&#160;release-management:release-prod-images&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#
 [...]
+</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:start-rc-process&#160;|&#160;release-management:start-release&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16
 [...]
+</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:verify-provider-packages&#160;|&#160;release-management&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#
 [...]
+</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)">sbom:generate-provider-requirements&#160;|&#160;sbom:update-sbom-information&#160;|&#160;sbom&#160;|&#160;setup:autocomplete&#160;|&#160;&#160;&#160;&#160;</text><
 [...]
+</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)">setup:check-all-params-in-groups&#160;|&#160;setup:config&#160;|&#160;setup:regenerate-command-images&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
+</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)">setup:self-upgrade&#160;|&#160;setup:version&#160;|&#160;setup&#160;|&#160;shell&#160;|&#160;start-airflow&#160;|&#160;static-checks&#160;|&#160;&#160;&#160;&#160;
 [...]
+</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)">testing:docker-compose-tests&#160;|&#160;testing:helm-tests&#160;|&#160;testing:integration-tests&#160;|&#160;testing:tests&#160;|&#160;&#160;&#160;&#160;&#160;</t
 [...]
+</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)">testing)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
+</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-r4" x="24.4" y="654.4" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-26)">-</text><text 
class="breeze-setup-regenerate-command-images-r4" x="36.6" y="654.4" 
textLength="73.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-26) [...]
+</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-r2" x="219.6" y="678.8" 
textLength="170.8" 
clip-path="url(#breeze-setup-regenerate-command-images-line-27)">together&#160;with&#160;</text><text
 class="breeze-setup-regenerate-command-images-r4" x="390.4" y="678.8" 
textLength="12.2" clip-path="url(#breeze-setup-regenera [...]
+</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="703.2" 
textLength="1464" 
clip-path="url(#breeze-setup-regenerate-command-images-line-28)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-setup-regenerate-command-images-r2" x="1464" y="703.2" 
textLength="12.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="24.4" 
clip-path="url(#breeze-setup-regenerate-command-images-line-29)">╭─</text><text 
class="breeze-setup-regenerate-command-images-r5" x="24.4" y="727.6" 
textLength="195.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-29)">&#160;Common&#160;options&#160;</text><text
 class="breeze-setup-regenerate-command-images-r5" x="219.6" y="727.6" 
textLength="1220" clip-path="url(#breeze-setup-r [...]
+</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-r4" x="24.4" y="752" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-30)">-</text><text 
class="breeze-setup-regenerate-command-images-r4" x="36.6" y="752" 
textLength="97.6" 
clip-path="url(#breeze-setup-regenerate-command-images-line-30)">-ver [...]
+</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="776.4" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-31)">│</text><text 
class="breeze-setup-regenerate-command-images-r4" x="24.4" y="776.4" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-31)">-</text><text 
class="breeze-setup-regenerate-command-images-r4" x="36.6" y="776.4" 
textLength="48.8" 
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="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="61" 
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="1464" 
clip-path="url(#breeze-setup-regenerate-command-images-line-33)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-setup-regenerate-command-images-r2" x="1464" y="825.2" 
textLength="12.2" 
clip-path="url(#breeze-setup-regenerate-command-images-line-33)">
 </text>
     </g>
     </g>

Reply via email to