You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by el...@apache.org on 2023/01/06 08:02:08 UTC
[airflow] branch main updated: Add `ImpalaHook` (#26970)
This is an automated email from the ASF dual-hosted git repository.
eladkal 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 6d09fc7b88 Add `ImpalaHook` (#26970)
6d09fc7b88 is described below
commit 6d09fc7b88623919b01cfbdee5566598cefba021
Author: Hossein Torabi <ho...@alopeyk.com>
AuthorDate: Fri Jan 6 09:02:00 2023 +0100
Add `ImpalaHook` (#26970)
Add `ImpalaHook`
Co-authored-by: eladkal <45...@users.noreply.github.com>
---
.../airflow_providers_bug_report.yml | 1 +
CONTRIBUTING.rst | 4 +-
INSTALL | 4 +-
airflow/providers/apache/impala/CHANGELOG.rst | 25 ++++++
airflow/providers/apache/impala/__init__.py | 17 ++++
airflow/providers/apache/impala/hooks/__init__.py | 17 ++++
airflow/providers/apache/impala/hooks/impala.py | 42 ++++++++++
airflow/providers/apache/impala/provider.yaml | 43 ++++++++++
airflow/utils/db.py | 1 +
.../commits.rst | 27 +++++++
.../connections/impala.rst | 50 ++++++++++++
.../index.rst | 48 +++++++++++
.../installing-providers-from-sources.rst | 18 +++++
docs/apache-airflow/extra-packages-ref.rst | 2 +
generated/provider_dependencies.json | 9 +++
images/breeze/output-commands-hash.txt | 10 +--
images/breeze/output-commands.svg | 88 ++++++++++----------
images/breeze/output_build-docs.svg | 92 +++++++++++----------
images/breeze/output_release-management.svg | 30 +++----
...t_release-management_generate-issue-content.svg | 38 ++++-----
...e-management_prepare-provider-documentation.svg | 30 +++----
...elease-management_prepare-provider-packages.svg | 28 +++----
images/breeze/output_setup.svg | 26 +++---
.../output_setup_regenerate-command-images.svg | 54 ++++++-------
setup.py | 4 +
tests/providers/apache/impala/__init__.py | 16 ++++
tests/providers/apache/impala/hooks/__init__.py | 16 ++++
tests/providers/apache/impala/hooks/test_impala.py | 93 ++++++++++++++++++++++
28 files changed, 633 insertions(+), 200 deletions(-)
diff --git a/.github/ISSUE_TEMPLATE/airflow_providers_bug_report.yml b/.github/ISSUE_TEMPLATE/airflow_providers_bug_report.yml
index 4b8f1881bf..00184cb0b8 100644
--- a/.github/ISSUE_TEMPLATE/airflow_providers_bug_report.yml
+++ b/.github/ISSUE_TEMPLATE/airflow_providers_bug_report.yml
@@ -33,6 +33,7 @@ body:
- apache-flink
- apache-hdfs
- apache-hive
+ - apache-impala
- apache-kylin
- apache-livy
- apache-pig
diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst
index e7590dea53..66de7c0eeb 100644
--- a/CONTRIBUTING.rst
+++ b/CONTRIBUTING.rst
@@ -611,8 +611,8 @@ This is the full list of those extras:
.. START EXTRAS HERE
airbyte, alibaba, all, all_dbs, amazon, apache.atlas, apache.beam, apache.cassandra, apache.drill,
-apache.druid, apache.flink, apache.hdfs, apache.hive, apache.kylin, apache.livy, apache.pig,
-apache.pinot, apache.spark, apache.sqoop, apache.webhdfs, arangodb, asana, async, atlas,
+apache.druid, apache.flink, apache.hdfs, apache.hive, apache.impala, apache.kylin, apache.livy,
+apache.pig, apache.pinot, apache.spark, apache.sqoop, apache.webhdfs, arangodb, asana, async, atlas,
atlassian.jira, aws, azure, cassandra, celery, cgroups, cloudant, cncf.kubernetes, common.sql,
crypto, dask, databricks, datadog, dbt.cloud, deprecated_api, devel, devel_all, devel_ci,
devel_hadoop, dingding, discord, doc, doc_gen, docker, druid, elasticsearch, exasol, facebook, ftp,
diff --git a/INSTALL b/INSTALL
index 90feb919e8..e3848a3716 100644
--- a/INSTALL
+++ b/INSTALL
@@ -95,8 +95,8 @@ The list of available extras:
# START EXTRAS HERE
airbyte, alibaba, all, all_dbs, amazon, apache.atlas, apache.beam, apache.cassandra, apache.drill,
-apache.druid, apache.flink, apache.hdfs, apache.hive, apache.kylin, apache.livy, apache.pig,
-apache.pinot, apache.spark, apache.sqoop, apache.webhdfs, arangodb, asana, async, atlas,
+apache.druid, apache.flink, apache.hdfs, apache.hive, apache.impala, apache.kylin, apache.livy,
+apache.pig, apache.pinot, apache.spark, apache.sqoop, apache.webhdfs, arangodb, asana, async, atlas,
atlassian.jira, aws, azure, cassandra, celery, cgroups, cloudant, cncf.kubernetes, common.sql,
crypto, dask, databricks, datadog, dbt.cloud, deprecated_api, devel, devel_all, devel_ci,
devel_hadoop, dingding, discord, doc, doc_gen, docker, druid, elasticsearch, exasol, facebook, ftp,
diff --git a/airflow/providers/apache/impala/CHANGELOG.rst b/airflow/providers/apache/impala/CHANGELOG.rst
new file mode 100644
index 0000000000..cef7dda807
--- /dev/null
+++ b/airflow/providers/apache/impala/CHANGELOG.rst
@@ -0,0 +1,25 @@
+ .. 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.
+
+
+Changelog
+---------
+
+1.0.0
+.....
+
+Initial version of the provider.
diff --git a/airflow/providers/apache/impala/__init__.py b/airflow/providers/apache/impala/__init__.py
new file mode 100644
index 0000000000..217e5db960
--- /dev/null
+++ b/airflow/providers/apache/impala/__init__.py
@@ -0,0 +1,17 @@
+#
+# 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.
diff --git a/airflow/providers/apache/impala/hooks/__init__.py b/airflow/providers/apache/impala/hooks/__init__.py
new file mode 100644
index 0000000000..217e5db960
--- /dev/null
+++ b/airflow/providers/apache/impala/hooks/__init__.py
@@ -0,0 +1,17 @@
+#
+# 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.
diff --git a/airflow/providers/apache/impala/hooks/impala.py b/airflow/providers/apache/impala/hooks/impala.py
new file mode 100644
index 0000000000..0bfd9975d7
--- /dev/null
+++ b/airflow/providers/apache/impala/hooks/impala.py
@@ -0,0 +1,42 @@
+# 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
+
+from impala.dbapi import connect
+from impala.interface import Connection
+
+from airflow.providers.common.sql.hooks.sql import DbApiHook
+
+
+class ImpalaHook(DbApiHook):
+ """Interact with Apache Impala through impyla."""
+
+ conn_name_attr = "impala_conn_id"
+ default_conn_name = "impala_default"
+ conn_type = "impala"
+ hook_name = "Impala"
+
+ def get_conn(self) -> Connection:
+ connection = self.get_connection(self.impala_conn_id) # pylint: disable=no-member
+ return connect(
+ host=connection.host,
+ port=connection.port,
+ user=connection.login,
+ password=connection.password,
+ database=connection.schema,
+ **connection.extra_dejson,
+ )
diff --git a/airflow/providers/apache/impala/provider.yaml b/airflow/providers/apache/impala/provider.yaml
new file mode 100644
index 0000000000..0d8501a652
--- /dev/null
+++ b/airflow/providers/apache/impala/provider.yaml
@@ -0,0 +1,43 @@
+# 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.
+
+---
+package-name: apache-airflow-providers-apache-impala
+name: Apache Impala
+description: |
+ `Apache Impala <https://impala.apache.org/>`__.
+
+versions:
+ - 1.0.0
+
+dependencies:
+ - impyla>=0.18.0,<1.0
+ - apache-airflow>=2.3.0
+
+integrations:
+ - integration-name: Apache Impala
+ external-doc-url: https://impala.apache.org
+ tags: [apache]
+
+hooks:
+ - integration-name: Apache Impala
+ python-modules:
+ - airflow.providers.apache.impala.hooks.impala
+
+connection-types:
+ - hook-class-name: airflow.providers.apache.impala.hooks.impala.ImpalaHook
+ connection-type: impala
diff --git a/airflow/utils/db.py b/airflow/utils/db.py
index b9e4f6d418..49600c143b 100644
--- a/airflow/utils/db.py
+++ b/airflow/utils/db.py
@@ -360,6 +360,7 @@ def create_default_connections(session: Session = NEW_SESSION):
),
session,
)
+ merge_conn(Connection(conn_id="impala_default", conn_type="impala", host="localhost", port=21050))
merge_conn(
Connection(
conn_id="kubernetes_default",
diff --git a/docs/apache-airflow-providers-apache-impala/commits.rst b/docs/apache-airflow-providers-apache-impala/commits.rst
new file mode 100644
index 0000000000..f37409143b
--- /dev/null
+++ b/docs/apache-airflow-providers-apache-impala/commits.rst
@@ -0,0 +1,27 @@
+
+ .. 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.
+
+
+Package apache-airflow-providers-apache-impala
+------------------------------------------------------
+
+`Apache Impala <https://impala.apache.org/>`__.
+
+
+This is detailed commit list of changes for versions provider package: ``apache.impala``.
+For high-level changelog, see :doc:`package information including changelog <index>`.
diff --git a/docs/apache-airflow-providers-apache-impala/connections/impala.rst b/docs/apache-airflow-providers-apache-impala/connections/impala.rst
new file mode 100644
index 0000000000..9c04cf17d4
--- /dev/null
+++ b/docs/apache-airflow-providers-apache-impala/connections/impala.rst
@@ -0,0 +1,50 @@
+ .. 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.
+
+.. _howto/connection:impala:
+
+Apache Impala Connection
+========================
+
+The Apache Impala connection type configures a connection to Apache Impala via the ``impyla`` Python package.
+
+Default Connection IDs
+----------------------
+
+Impala hooks and operators use ``impala_default`` by default.
+
+Configuring the Connection
+--------------------------
+Host (optional)
+ The hostname for HS2. For Impala, this can be any of the ``impalad`` service.
+
+Port (optional)
+ The port number for HS2. The Impala default is ``21050``. The Hive port is
+ likely different.
+
+Login (optional)
+ LDAP user, if applicable.
+
+Password (optional)
+ LDAP password, if applicable.
+
+Schema (optional)
+ The default database. If ``None``, the result is
+ implementation-dependent.
+
+Extra (optional)
+ A JSON dictionary specifying the extra parameters that can be used in ``impyla`` connection.
diff --git a/docs/apache-airflow-providers-apache-impala/index.rst b/docs/apache-airflow-providers-apache-impala/index.rst
new file mode 100644
index 0000000000..610d360b4c
--- /dev/null
+++ b/docs/apache-airflow-providers-apache-impala/index.rst
@@ -0,0 +1,48 @@
+ .. 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.
+
+``apache-airflow-providers-apache-impala``
+==========================================
+
+
+Content
+-------
+
+.. toctree::
+ :maxdepth: 1
+ :caption: Guides
+
+ Connection Types <connections/impala>
+
+.. toctree::
+ :maxdepth: 1
+ :caption: References
+
+ Python API<_api/airflow/providers/apache/impala/index>
+
+.. toctree::
+ :maxdepth: 1
+ :caption: Resources
+
+ PyPI Repository <https://pypi.org/project/apache-airflow-providers-apache-impala/>
+ Installing from sources <installing-providers-from-sources>
+
+.. toctree::
+ :maxdepth: 1
+ :caption: Commits
+
+ Detailed list of commits <commits>
diff --git a/docs/apache-airflow-providers-apache-impala/installing-providers-from-sources.rst b/docs/apache-airflow-providers-apache-impala/installing-providers-from-sources.rst
new file mode 100644
index 0000000000..1c90205d15
--- /dev/null
+++ b/docs/apache-airflow-providers-apache-impala/installing-providers-from-sources.rst
@@ -0,0 +1,18 @@
+ .. 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.
+
+.. include:: ../installing-providers-from-sources.rst
diff --git a/docs/apache-airflow/extra-packages-ref.rst b/docs/apache-airflow/extra-packages-ref.rst
index e834154cfe..457a34aafa 100644
--- a/docs/apache-airflow/extra-packages-ref.rst
+++ b/docs/apache-airflow/extra-packages-ref.rst
@@ -128,6 +128,8 @@ custom bash/python providers).
+---------------------+-----------------------------------------------------+------------------------------------------------+
| apache.hive | ``pip install 'apache-airflow[apache.hive]'`` | All Hive related operators |
+---------------------+-----------------------------------------------------+------------------------------------------------+
+| apache.impala | ``pip install 'apache-airflow[apache.impala]'`` | All Impala related operators & hooks |
++---------------------+-----------------------------------------------------+------------------------------------------------+
| apache.kylin | ``pip install 'apache-airflow[apache.kylin]'`` | All Kylin related operators & hooks |
+---------------------+-----------------------------------------------------+------------------------------------------------+
| apache.livy | ``pip install 'apache-airflow[apache.livy]'`` | All Livy related operators, hooks & sensors |
diff --git a/generated/provider_dependencies.json b/generated/provider_dependencies.json
index d7729e1a4b..90f878796b 100644
--- a/generated/provider_dependencies.json
+++ b/generated/provider_dependencies.json
@@ -116,6 +116,15 @@
"vertica"
]
},
+ "apache.impala": {
+ "deps": [
+ "apache-airflow>=2.3.0",
+ "impyla>=0.18.0,<1.0"
+ ],
+ "cross-providers-deps": [
+ "common.sql"
+ ]
+ },
"apache.kylin": {
"deps": [
"apache-airflow>=2.3.0",
diff --git a/images/breeze/output-commands-hash.txt b/images/breeze/output-commands-hash.txt
index b0e1511fac..52879583f6 100644
--- a/images/breeze/output-commands-hash.txt
+++ b/images/breeze/output-commands-hash.txt
@@ -2,7 +2,7 @@
# Please do not solve it but run `breeze setup regenerate-command-images`.
# This command should fix the conflict and regenerate help images that you have conflict with.
main:50fe93e07fbe182f6d374ea305841240
-build-docs:903fcf1600e1348d33614d8bec816a09
+build-docs:18235f12f85f8df82f3eb245e429f62d
ci:find-newer-dependencies:8fa2b57f5f0523c928743b235ee3ab5a
ci:fix-ownership:fee2c9ec9ef19686792002ae054fecdd
ci:free-space:47234aa0a60b0efd84972e6e797379f8
@@ -36,13 +36,13 @@ prod-image:pull:e3c89dd908fc44adf6e159c2950ebdd0
prod-image:verify:31bc5efada1d70a0a31990025db1a093
prod-image:4f98deab35e53ebddbdc9950a50555a4
release-management:generate-constraints:ae30d6ad49a1b2c15b61cb29080fd957
-release-management:generate-issue-content:92b05ebd1aa7e16763f1a9a4f4714bc9
+release-management:generate-issue-content:35ee0e755789aefd509f63e161aa150e
release-management:prepare-airflow-package:3ac14ea6d2b09614959c0ec4fd564789
-release-management:prepare-provider-documentation:ae873854b47240fa36019a14ccc0b705
-release-management:prepare-provider-packages:45d22c47b1d5e09a08d2a7218fe7a8a6
+release-management:prepare-provider-documentation:452b6165f09755d052501f6003ae3ea1
+release-management:prepare-provider-packages:c85c2997e01b7f9db95dc9a7abb9ea48
release-management:release-prod-images:c9bc40938e0efad49e51ef66e83f9527
release-management:verify-provider-packages:88bd609aff6d09d52ab8d80d6e055e7b
-release-management:c26f14d85c5a095bebc8aa4c74c6c5fb
+release-management:07fecd3ed21621993c55ac2487a412ce
setup:autocomplete:03343478bf1d0cf9c101d454cdb63b68
setup:config:3ffcd35dd24b486ddf1d08b797e3d017
setup:regenerate-command-images:ab2d83c339fa3a42b0c819b6b6cc88ae
diff --git a/images/breeze/output-commands.svg b/images/breeze/output-commands.svg
index c8763961ad..22001729e6 100644
--- a/images/breeze/output-commands.svg
+++ b/images/breeze/output-commands.svg
@@ -35,8 +35,8 @@
.breeze-help-r1 { fill: #c5c8c6;font-weight: bold }
.breeze-help-r2 { fill: #c5c8c6 }
.breeze-help-r3 { fill: #d0b344;font-weight: bold }
-.breeze-help-r4 { fill: #868887 }
-.breeze-help-r5 { fill: #68a0b3;font-weight: bold }
+.breeze-help-r4 { fill: #68a0b3;font-weight: bold }
+.breeze-help-r5 { fill: #868887 }
.breeze-help-r6 { fill: #98a84b;font-weight: bold }
.breeze-help-r7 { fill: #8d7b39 }
</style>
@@ -187,49 +187,49 @@
<g class="breeze-help-matrix">
<text class="breeze-help-r2" x="1464" y="20" textLength="12.2" clip-path="url(#breeze-help-line-0)">
-</text><text class="breeze-help-r3" x="12.2" y="44.4" textLength="85.4" clip-path="url(#breeze-help-line-1)">Usage: </text><text class="breeze-help-r1" x="97.6" y="44.4" textLength="414.8" clip-path="url(#breeze-help-line-1)">breeze [OPTIONS] COMMAND [ARGS]...</text><text class="breeze-help-r2" x="1464" y="44.4" textLength="12.2" clip-path="url(#breeze-help-line-1)">
+</text><text class="breeze-help-r3" x="12.2" y="44.4" textLength="85.4" clip-path="url(#breeze-help-line-1)">Usage: </text><text class="breeze-help-r1" x="97.6" y="44.4" textLength="97.6" clip-path="url(#breeze-help-line-1)">breeze [</text><text class="breeze-help-r4" x="195.2" y="44.4" textLength="85.4" clip-path="url(#breeze-help-line-1)">OPTIONS</text><text class="breeze-help-r1" x="280.6" y="44.4" textLength="24.4" clip-path="url(#breeze-help-line-1)">] </text><text cl [...]
</text><text class="breeze-help-r2" x="1464" y="68.8" textLength="12.2" clip-path="url(#breeze-help-line-2)">
-</text><text class="breeze-help-r4" x="0" y="93.2" textLength="24.4" clip-path="url(#breeze-help-line-3)">╭─</text><text class="breeze-help-r4" x="24.4" y="93.2" textLength="158.6" clip-path="url(#breeze-help-line-3)"> Basic flags </text><text class="breeze-help-r4" x="183" y="93.2" textLength="1256.6" clip-path="url(#breeze-help-line-3)">───────────────────────────────────────────────────────────────────────────────────────────────────────</text><text class="breeze-help-r [...]
-</text><text class="breeze-help-r4" x="0" y="117.6" textLength="12.2" clip-path="url(#breeze-help-line-4)">│</text><text class="breeze-help-r5" x="24.4" y="117.6" textLength="12.2" clip-path="url(#breeze-help-line-4)">-</text><text class="breeze-help-r5" x="36.6" y="117.6" textLength="85.4" clip-path="url(#breeze-help-line-4)">-python</text><text class="breeze-help-r6" x="305" y="117.6" textLength="24.4" clip-path="url(#breeze-help-line-4)">-p</text><text class="breeze-help-r2" x="353.8" [...]
-</text><text class="breeze-help-r4" x="0" y="142" textLength="12.2" clip-path="url(#breeze-help-line-5)">│</text><text class="breeze-help-r4" x="353.8" y="142" textLength="732" clip-path="url(#breeze-help-line-5)">[default: 3.7]                                           & [...]
-</text><text class="breeze-help-r4" x="0" y="166.4" textLength="12.2" clip-path="url(#breeze-help-line-6)">│</text><text class="breeze-help-r5" x="24.4" y="166.4" textLength="12.2" clip-path="url(#breeze-help-line-6)">-</text><text class="breeze-help-r5" x="36.6" y="166.4" textLength="97.6" clip-path="url(#breeze-help-line-6)">-backend</text><text class="breeze-help-r6" x="305" y="166.4" textLength="24.4" clip-path="url(#breeze-help-line-6)">-b</text><text class="breeze-help-r2" x="353.8 [...]
-</text><text class="breeze-help-r4" x="0" y="190.8" textLength="12.2" clip-path="url(#breeze-help-line-7)">│</text><text class="breeze-help-r5" x="24.4" y="190.8" textLength="12.2" clip-path="url(#breeze-help-line-7)">-</text><text class="breeze-help-r5" x="36.6" y="190.8" textLength="109.8" clip-path="url(#breeze-help-line-7)">-postgres</text><text class="breeze-help-r5" x="146.4" y="190.8" textLength="97.6" clip-path="url(#breeze-help-line-7)">-version</text><text class="breeze-help-r6 [...]
-</text><text class="breeze-help-r4" x="0" y="215.2" textLength="12.2" clip-path="url(#breeze-help-line-8)">│</text><text class="breeze-help-r5" x="24.4" y="215.2" textLength="12.2" clip-path="url(#breeze-help-line-8)">-</text><text class="breeze-help-r5" x="36.6" y="215.2" textLength="73.2" clip-path="url(#breeze-help-line-8)">-mysql</text><text class="breeze-help-r5" x="109.8" y="215.2" textLength="97.6" clip-path="url(#breeze-help-line-8)">-version</text><text class="breeze-help-r6" x= [...]
-</text><text class="breeze-help-r4" x="0" y="239.6" textLength="12.2" clip-path="url(#breeze-help-line-9)">│</text><text class="breeze-help-r5" x="24.4" y="239.6" textLength="12.2" clip-path="url(#breeze-help-line-9)">-</text><text class="breeze-help-r5" x="36.6" y="239.6" textLength="73.2" clip-path="url(#breeze-help-line-9)">-mssql</text><text class="breeze-help-r5" x="109.8" y="239.6" textLength="97.6" clip-path="url(#breeze-help-line-9)">-version</text><text class="breeze-help-r6" x= [...]
-</text><text class="breeze-help-r4" x="0" y="264" textLength="12.2" clip-path="url(#breeze-help-line-10)">│</text><text class="breeze-help-r5" x="24.4" y="264" textLength="12.2" clip-path="url(#breeze-help-line-10)">-</text><text class="breeze-help-r5" x="36.6" y="264" textLength="146.4" clip-path="url(#breeze-help-line-10)">-integration</text><text class="breeze-help-r2" x="353.8" y="264" textLength="744.2" clip-path="url(#breeze-help-line-10)">Integration(s) to enable wh [...]
-</text><text class="breeze-help-r4" x="0" y="288.4" textLength="12.2" clip-path="url(#breeze-help-line-11)">│</text><text class="breeze-help-r7" x="353.8" y="288.4" textLength="744.2" clip-path="url(#breeze-help-line-11)">(cassandra | kerberos | mongo | pinot | celery | trino | all)</text><text class="breeze-help-r4" x="1451.8" y="288.4" textLength="12.2" clip-path="url(#breeze-help-line-11)">│</text><text class="breeze-help-r2" [...]
-</text><text class="breeze-help-r4" x="0" y="312.8" textLength="12.2" clip-path="url(#breeze-help-line-12)">│</text><text class="breeze-help-r5" x="24.4" y="312.8" textLength="12.2" clip-path="url(#breeze-help-line-12)">-</text><text class="breeze-help-r5" x="36.6" y="312.8" textLength="97.6" clip-path="url(#breeze-help-line-12)">-forward</text><text class="breeze-help-r5" x="134.2" y="312.8" textLength="146.4" clip-path="url(#breeze-help-line-12)">-credentials</text><text class="breeze- [...]
-</text><text class="breeze-help-r4" x="0" y="337.2" textLength="12.2" clip-path="url(#breeze-help-line-13)">│</text><text class="breeze-help-r5" x="24.4" y="337.2" textLength="12.2" clip-path="url(#breeze-help-line-13)">-</text><text class="breeze-help-r5" x="36.6" y="337.2" textLength="36.6" clip-path="url(#breeze-help-line-13)">-db</text><text class="breeze-help-r5" x="73.2" y="337.2" textLength="73.2" clip-path="url(#breeze-help-line-13)">-reset</text><text class="breeze-help-r6" x="3 [...]
-</text><text class="breeze-help-r4" x="0" y="361.6" textLength="12.2" clip-path="url(#breeze-help-line-14)">│</text><text class="breeze-help-r5" x="24.4" y="361.6" textLength="12.2" clip-path="url(#breeze-help-line-14)">-</text><text class="breeze-help-r5" x="36.6" y="361.6" textLength="48.8" clip-path="url(#breeze-help-line-14)">-max</text><text class="breeze-help-r5" x="85.4" y="361.6" textLength="61" clip-path="url(#breeze-help-line-14)">-time</text><text class="breeze-help-r2" x="353 [...]
-</text><text class="breeze-help-r4" x="0" y="386" textLength="12.2" clip-path="url(#breeze-help-line-15)">│</text><text class="breeze-help-r7" x="353.8" y="386" textLength="1049.2" clip-path="url(#breeze-help-line-15)">(INTEGER RANGE)                                          & [...]
-</text><text class="breeze-help-r4" x="0" y="410.4" textLength="12.2" clip-path="url(#breeze-help-line-16)">│</text><text class="breeze-help-r5" x="24.4" y="410.4" textLength="12.2" clip-path="url(#breeze-help-line-16)">-</text><text class="breeze-help-r5" x="36.6" y="410.4" textLength="85.4" clip-path="url(#breeze-help-line-16)">-github</text><text class="breeze-help-r5" x="122" y="410.4" textLength="134.2" clip-path="url(#breeze-help-line-16)">-repository</text><text class="breeze-help [...]
-</text><text class="breeze-help-r4" x="0" y="434.8" textLength="1464" clip-path="url(#breeze-help-line-17)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-help-r2" x="1464" y="434.8" textLength="12.2" clip-path="url(#breeze-help-line-17)">
-</text><text class="breeze-help-r4" x="0" y="459.2" textLength="24.4" clip-path="url(#breeze-help-line-18)">╭─</text><text class="breeze-help-r4" x="24.4" y="459.2" textLength="195.2" clip-path="url(#breeze-help-line-18)"> Common options </text><text class="breeze-help-r4" x="219.6" y="459.2" textLength="1220" clip-path="url(#breeze-help-line-18)">────────────────────────────────────────────────────────────────────────────────────────────────────</text><text class="breeze- [...]
-</text><text class="breeze-help-r4" x="0" y="483.6" textLength="12.2" clip-path="url(#breeze-help-line-19)">│</text><text class="breeze-help-r5" x="24.4" y="483.6" textLength="12.2" clip-path="url(#breeze-help-line-19)">-</text><text class="breeze-help-r5" x="36.6" y="483.6" textLength="97.6" clip-path="url(#breeze-help-line-19)">-verbose</text><text class="breeze-help-r6" x="158.6" y="483.6" textLength="24.4" clip-path="url(#breeze-help-line-19)">-v</text><text class="breeze-help-r2" x= [...]
-</text><text class="breeze-help-r4" x="0" y="508" textLength="12.2" clip-path="url(#breeze-help-line-20)">│</text><text class="breeze-help-r5" x="24.4" y="508" textLength="12.2" clip-path="url(#breeze-help-line-20)">-</text><text class="breeze-help-r5" x="36.6" y="508" textLength="48.8" clip-path="url(#breeze-help-line-20)">-dry</text><text class="breeze-help-r5" x="85.4" y="508" textLength="48.8" clip-path="url(#breeze-help-line-20)">-run</text><text class="breeze-help-r6" x="158.6" y=" [...]
-</text><text class="breeze-help-r4" x="0" y="532.4" textLength="12.2" clip-path="url(#breeze-help-line-21)">│</text><text class="breeze-help-r5" x="24.4" y="532.4" textLength="12.2" clip-path="url(#breeze-help-line-21)">-</text><text class="breeze-help-r5" x="36.6" y="532.4" textLength="85.4" clip-path="url(#breeze-help-line-21)">-answer</text><text class="breeze-help-r6" x="158.6" y="532.4" textLength="24.4" clip-path="url(#breeze-help-line-21)">-a</text><text class="breeze-help-r2" x=" [...]
-</text><text class="breeze-help-r4" x="0" y="556.8" textLength="12.2" clip-path="url(#breeze-help-line-22)">│</text><text class="breeze-help-r5" x="24.4" y="556.8" textLength="12.2" clip-path="url(#breeze-help-line-22)">-</text><text class="breeze-help-r5" x="36.6" y="556.8" textLength="61" clip-path="url(#breeze-help-line-22)">-help</text><text class="breeze-help-r6" x="158.6" y="556.8" textLength="24.4" clip-path="url(#breeze-help-line-22)">-h</text><text class="breeze-help-r2" x="207. [...]
-</text><text class="breeze-help-r4" x="0" y="581.2" textLength="1464" clip-path="url(#breeze-help-line-23)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-help-r2" x="1464" y="581.2" textLength="12.2" clip-path="url(#breeze-help-line-23)">
-</text><text class="breeze-help-r4" x="0" y="605.6" textLength="24.4" clip-path="url(#breeze-help-line-24)">╭─</text><text class="breeze-help-r4" x="24.4" y="605.6" textLength="317.2" clip-path="url(#breeze-help-line-24)"> Basic developer commands </text><text class="breeze-help-r4" x="341.6" y="605.6" textLength="1098" clip-path="url(#breeze-help-line-24)">──────────────────────────────────────────────────────────────────────────────────────────</text><text class="br [...]
-</text><text class="breeze-help-r4" x="0" y="630" textLength="12.2" clip-path="url(#breeze-help-line-25)">│</text><text class="breeze-help-r5" x="24.4" y="630" textLength="219.6" clip-path="url(#breeze-help-line-25)">start-airflow     </text><text class="breeze-help-r2" x="268.4" y="630" textLength="1171.2" clip-path="url(#breeze-help-line-25)">Enter breeze environment and starts all Airflow components in the tmux [...]
-</text><text class="breeze-help-r4" x="0" y="654.4" textLength="12.2" clip-path="url(#breeze-help-line-26)">│</text><text class="breeze-help-r2" x="268.4" y="654.4" textLength="1171.2" clip-path="url(#breeze-help-line-26)">if contents of www directory changed.                                   [...]
-</text><text class="breeze-help-r4" x="0" y="678.8" textLength="12.2" clip-path="url(#breeze-help-line-27)">│</text><text class="breeze-help-r5" x="24.4" y="678.8" textLength="219.6" clip-path="url(#breeze-help-line-27)">static-checks     </text><text class="breeze-help-r2" x="268.4" y="678.8" textLength="1171.2" clip-path="url(#breeze-help-line-27)">Run static checks.              &# [...]
-</text><text class="breeze-help-r4" x="0" y="703.2" textLength="12.2" clip-path="url(#breeze-help-line-28)">│</text><text class="breeze-help-r5" x="24.4" y="703.2" textLength="219.6" clip-path="url(#breeze-help-line-28)">build-docs        </text><text class="breeze-help-r2" x="268.4" y="703.2" textLength="1171.2" clip-path="url(#breeze-help-line-28)">Build documentation in the container.        [...]
-</text><text class="breeze-help-r4" x="0" y="727.6" textLength="12.2" clip-path="url(#breeze-help-line-29)">│</text><text class="breeze-help-r5" x="24.4" y="727.6" textLength="219.6" clip-path="url(#breeze-help-line-29)">stop              </text><text class="breeze-help-r2" x="268.4" y="727.6" textLength="1171.2" clip-path="url(#breeze-help-line-29)">Stop running breeze environment.    [...]
-</text><text class="breeze-help-r4" x="0" y="752" textLength="12.2" clip-path="url(#breeze-help-line-30)">│</text><text class="breeze-help-r5" x="24.4" y="752" textLength="219.6" clip-path="url(#breeze-help-line-30)">shell             </text><text class="breeze-help-r2" x="268.4" y="752" textLength="1171.2" clip-path="url(#breeze-help-line-30)">Enter breeze environment. this is the default  [...]
-</text><text class="breeze-help-r4" x="0" y="776.4" textLength="12.2" clip-path="url(#breeze-help-line-31)">│</text><text class="breeze-help-r5" x="24.4" y="776.4" textLength="219.6" clip-path="url(#breeze-help-line-31)">exec              </text><text class="breeze-help-r2" x="268.4" y="776.4" textLength="1171.2" clip-path="url(#breeze-help-line-31)">Joins the interactive shell of running  [...]
-</text><text class="breeze-help-r4" x="0" y="800.8" textLength="12.2" clip-path="url(#breeze-help-line-32)">│</text><text class="breeze-help-r5" x="24.4" y="800.8" textLength="219.6" clip-path="url(#breeze-help-line-32)">compile-www-assets</text><text class="breeze-help-r2" x="268.4" y="800.8" textLength="1171.2" clip-path="url(#breeze-help-line-32)">Compiles www assets.                  & [...]
-</text><text class="breeze-help-r4" x="0" y="825.2" textLength="12.2" clip-path="url(#breeze-help-line-33)">│</text><text class="breeze-help-r5" x="24.4" y="825.2" textLength="219.6" clip-path="url(#breeze-help-line-33)">cleanup           </text><text class="breeze-help-r2" x="268.4" y="825.2" textLength="1171.2" clip-path="url(#breeze-help-line-33)">Cleans the cache of parameters, docker cache and& [...]
-</text><text class="breeze-help-r4" x="0" y="849.6" textLength="1464" clip-path="url(#breeze-help-line-34)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-help-r2" x="1464" y="849.6" textLength="12.2" clip-path="url(#breeze-help-line-34)">
-</text><text class="breeze-help-r4" x="0" y="874" textLength="24.4" clip-path="url(#breeze-help-line-35)">╭─</text><text class="breeze-help-r4" x="24.4" y="874" textLength="305" clip-path="url(#breeze-help-line-35)"> Advanced command groups </text><text class="breeze-help-r4" x="329.4" y="874" textLength="1110.2" clip-path="url(#breeze-help-line-35)">───────────────────────────────────────────────────────────────────────────────────────────</text><text class="breeze-h [...]
-</text><text class="breeze-help-r4" x="0" y="898.4" textLength="12.2" clip-path="url(#breeze-help-line-36)">│</text><text class="breeze-help-r5" x="24.4" y="898.4" textLength="280.6" clip-path="url(#breeze-help-line-36)">testing                </text><text class="breeze-help-r2" x="329.4" y="898.4" textLength="1110.2" clip-path="url(#breeze-help-line-36)">Tools that developers can use  [...]
-</text><text class="breeze-help-r4" x="0" y="922.8" textLength="12.2" clip-path="url(#breeze-help-line-37)">│</text><text class="breeze-help-r5" x="24.4" y="922.8" textLength="280.6" clip-path="url(#breeze-help-line-37)">ci-image               </text><text class="breeze-help-r2" x="329.4" y="922.8" textLength="1110.2" clip-path="url(#breeze-help-line-37)">Tools that developers can use to&# [...]
-</text><text class="breeze-help-r4" x="0" y="947.2" textLength="12.2" clip-path="url(#breeze-help-line-38)">│</text><text class="breeze-help-r5" x="24.4" y="947.2" textLength="280.6" clip-path="url(#breeze-help-line-38)">k8s                    </text><text class="breeze-help-r2" x="329.4" y="947.2" textLength="1110.2" clip-path="url(#breeze-help-line-38)">Tools that developers [...]
-</text><text class="breeze-help-r4" x="0" y="971.6" textLength="12.2" clip-path="url(#breeze-help-line-39)">│</text><text class="breeze-help-r5" x="24.4" y="971.6" textLength="280.6" clip-path="url(#breeze-help-line-39)">prod-image             </text><text class="breeze-help-r2" x="329.4" y="971.6" textLength="1110.2" clip-path="url(#breeze-help-line-39)">Tools that developers can use to manual [...]
-</text><text class="breeze-help-r4" x="0" y="996" textLength="12.2" clip-path="url(#breeze-help-line-40)">│</text><text class="breeze-help-r5" x="24.4" y="996" textLength="280.6" clip-path="url(#breeze-help-line-40)">setup                  </text><text class="breeze-help-r2" x="329.4" y="996" textLength="1110.2" clip-path="url(#breeze-help-line-40)">Tools that developers can use& [...]
-</text><text class="breeze-help-r4" x="0" y="1020.4" textLength="12.2" clip-path="url(#breeze-help-line-41)">│</text><text class="breeze-help-r5" x="24.4" y="1020.4" textLength="280.6" clip-path="url(#breeze-help-line-41)">release-management     </text><text class="breeze-help-r2" x="329.4" y="1020.4" textLength="1110.2" clip-path="url(#breeze-help-line-41)">Tools that release managers can use to prepare and manage [...]
-</text><text class="breeze-help-r4" x="0" y="1044.8" textLength="12.2" clip-path="url(#breeze-help-line-42)">│</text><text class="breeze-help-r5" x="24.4" y="1044.8" textLength="280.6" clip-path="url(#breeze-help-line-42)">ci                     </text><text class="breeze-help-r2" x="329.4" y="1044.8" textLength="1110.2" clip-path="url(#breeze-help-line-42)">Tools that CI [...]
-</text><text class="breeze-help-r4" x="0" y="1069.2" textLength="1464" clip-path="url(#breeze-help-line-43)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-help-r2" x="1464" y="1069.2" textLength="12.2" clip-path="url(#breeze-help-line-43)">
+</text><text class="breeze-help-r5" x="0" y="93.2" textLength="24.4" clip-path="url(#breeze-help-line-3)">╭─</text><text class="breeze-help-r5" x="24.4" y="93.2" textLength="158.6" clip-path="url(#breeze-help-line-3)"> Basic flags </text><text class="breeze-help-r5" x="183" y="93.2" textLength="1256.6" clip-path="url(#breeze-help-line-3)">───────────────────────────────────────────────────────────────────────────────────────────────────────</text><text class="breeze-help-r [...]
+</text><text class="breeze-help-r5" x="0" y="117.6" textLength="12.2" clip-path="url(#breeze-help-line-4)">│</text><text class="breeze-help-r4" x="24.4" y="117.6" textLength="12.2" clip-path="url(#breeze-help-line-4)">-</text><text class="breeze-help-r4" x="36.6" y="117.6" textLength="85.4" clip-path="url(#breeze-help-line-4)">-python</text><text class="breeze-help-r6" x="305" y="117.6" textLength="24.4" clip-path="url(#breeze-help-line-4)">-p</text><text class="breeze-help-r2" x="353.8" [...]
+</text><text class="breeze-help-r5" x="0" y="142" textLength="12.2" clip-path="url(#breeze-help-line-5)">│</text><text class="breeze-help-r5" x="353.8" y="142" textLength="732" clip-path="url(#breeze-help-line-5)">[default: 3.7]                                           & [...]
+</text><text class="breeze-help-r5" x="0" y="166.4" textLength="12.2" clip-path="url(#breeze-help-line-6)">│</text><text class="breeze-help-r4" x="24.4" y="166.4" textLength="12.2" clip-path="url(#breeze-help-line-6)">-</text><text class="breeze-help-r4" x="36.6" y="166.4" textLength="97.6" clip-path="url(#breeze-help-line-6)">-backend</text><text class="breeze-help-r6" x="305" y="166.4" textLength="24.4" clip-path="url(#breeze-help-line-6)">-b</text><text class="breeze-help-r2" x="353.8 [...]
+</text><text class="breeze-help-r5" x="0" y="190.8" textLength="12.2" clip-path="url(#breeze-help-line-7)">│</text><text class="breeze-help-r4" x="24.4" y="190.8" textLength="12.2" clip-path="url(#breeze-help-line-7)">-</text><text class="breeze-help-r4" x="36.6" y="190.8" textLength="109.8" clip-path="url(#breeze-help-line-7)">-postgres</text><text class="breeze-help-r4" x="146.4" y="190.8" textLength="97.6" clip-path="url(#breeze-help-line-7)">-version</text><text class="breeze-help-r6 [...]
+</text><text class="breeze-help-r5" x="0" y="215.2" textLength="12.2" clip-path="url(#breeze-help-line-8)">│</text><text class="breeze-help-r4" x="24.4" y="215.2" textLength="12.2" clip-path="url(#breeze-help-line-8)">-</text><text class="breeze-help-r4" x="36.6" y="215.2" textLength="73.2" clip-path="url(#breeze-help-line-8)">-mysql</text><text class="breeze-help-r4" x="109.8" y="215.2" textLength="97.6" clip-path="url(#breeze-help-line-8)">-version</text><text class="breeze-help-r6" x= [...]
+</text><text class="breeze-help-r5" x="0" y="239.6" textLength="12.2" clip-path="url(#breeze-help-line-9)">│</text><text class="breeze-help-r4" x="24.4" y="239.6" textLength="12.2" clip-path="url(#breeze-help-line-9)">-</text><text class="breeze-help-r4" x="36.6" y="239.6" textLength="73.2" clip-path="url(#breeze-help-line-9)">-mssql</text><text class="breeze-help-r4" x="109.8" y="239.6" textLength="97.6" clip-path="url(#breeze-help-line-9)">-version</text><text class="breeze-help-r6" x= [...]
+</text><text class="breeze-help-r5" x="0" y="264" textLength="12.2" clip-path="url(#breeze-help-line-10)">│</text><text class="breeze-help-r4" x="24.4" y="264" textLength="12.2" clip-path="url(#breeze-help-line-10)">-</text><text class="breeze-help-r4" x="36.6" y="264" textLength="146.4" clip-path="url(#breeze-help-line-10)">-integration</text><text class="breeze-help-r2" x="353.8" y="264" textLength="744.2" clip-path="url(#breeze-help-line-10)">Integration(s) to enable wh [...]
+</text><text class="breeze-help-r5" x="0" y="288.4" textLength="12.2" clip-path="url(#breeze-help-line-11)">│</text><text class="breeze-help-r7" x="353.8" y="288.4" textLength="744.2" clip-path="url(#breeze-help-line-11)">(cassandra | kerberos | mongo | pinot | celery | trino | all)</text><text class="breeze-help-r5" x="1451.8" y="288.4" textLength="12.2" clip-path="url(#breeze-help-line-11)">│</text><text class="breeze-help-r2" [...]
+</text><text class="breeze-help-r5" x="0" y="312.8" textLength="12.2" clip-path="url(#breeze-help-line-12)">│</text><text class="breeze-help-r4" x="24.4" y="312.8" textLength="12.2" clip-path="url(#breeze-help-line-12)">-</text><text class="breeze-help-r4" x="36.6" y="312.8" textLength="97.6" clip-path="url(#breeze-help-line-12)">-forward</text><text class="breeze-help-r4" x="134.2" y="312.8" textLength="146.4" clip-path="url(#breeze-help-line-12)">-credentials</text><text class="breeze- [...]
+</text><text class="breeze-help-r5" x="0" y="337.2" textLength="12.2" clip-path="url(#breeze-help-line-13)">│</text><text class="breeze-help-r4" x="24.4" y="337.2" textLength="12.2" clip-path="url(#breeze-help-line-13)">-</text><text class="breeze-help-r4" x="36.6" y="337.2" textLength="36.6" clip-path="url(#breeze-help-line-13)">-db</text><text class="breeze-help-r4" x="73.2" y="337.2" textLength="73.2" clip-path="url(#breeze-help-line-13)">-reset</text><text class="breeze-help-r6" x="3 [...]
+</text><text class="breeze-help-r5" x="0" y="361.6" textLength="12.2" clip-path="url(#breeze-help-line-14)">│</text><text class="breeze-help-r4" x="24.4" y="361.6" textLength="12.2" clip-path="url(#breeze-help-line-14)">-</text><text class="breeze-help-r4" x="36.6" y="361.6" textLength="48.8" clip-path="url(#breeze-help-line-14)">-max</text><text class="breeze-help-r4" x="85.4" y="361.6" textLength="61" clip-path="url(#breeze-help-line-14)">-time</text><text class="breeze-help-r2" x="353 [...]
+</text><text class="breeze-help-r5" x="0" y="386" textLength="12.2" clip-path="url(#breeze-help-line-15)">│</text><text class="breeze-help-r7" x="353.8" y="386" textLength="1049.2" clip-path="url(#breeze-help-line-15)">(INTEGER RANGE)                                          & [...]
+</text><text class="breeze-help-r5" x="0" y="410.4" textLength="12.2" clip-path="url(#breeze-help-line-16)">│</text><text class="breeze-help-r4" x="24.4" y="410.4" textLength="12.2" clip-path="url(#breeze-help-line-16)">-</text><text class="breeze-help-r4" x="36.6" y="410.4" textLength="85.4" clip-path="url(#breeze-help-line-16)">-github</text><text class="breeze-help-r4" x="122" y="410.4" textLength="134.2" clip-path="url(#breeze-help-line-16)">-repository</text><text class="breeze-help [...]
+</text><text class="breeze-help-r5" x="0" y="434.8" textLength="1464" clip-path="url(#breeze-help-line-17)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-help-r2" x="1464" y="434.8" textLength="12.2" clip-path="url(#breeze-help-line-17)">
+</text><text class="breeze-help-r5" x="0" y="459.2" textLength="24.4" clip-path="url(#breeze-help-line-18)">╭─</text><text class="breeze-help-r5" x="24.4" y="459.2" textLength="195.2" clip-path="url(#breeze-help-line-18)"> Common options </text><text class="breeze-help-r5" x="219.6" y="459.2" textLength="1220" clip-path="url(#breeze-help-line-18)">────────────────────────────────────────────────────────────────────────────────────────────────────</text><text class="breeze- [...]
+</text><text class="breeze-help-r5" x="0" y="483.6" textLength="12.2" clip-path="url(#breeze-help-line-19)">│</text><text class="breeze-help-r4" x="24.4" y="483.6" textLength="12.2" clip-path="url(#breeze-help-line-19)">-</text><text class="breeze-help-r4" x="36.6" y="483.6" textLength="97.6" clip-path="url(#breeze-help-line-19)">-verbose</text><text class="breeze-help-r6" x="158.6" y="483.6" textLength="24.4" clip-path="url(#breeze-help-line-19)">-v</text><text class="breeze-help-r2" x= [...]
+</text><text class="breeze-help-r5" x="0" y="508" textLength="12.2" clip-path="url(#breeze-help-line-20)">│</text><text class="breeze-help-r4" x="24.4" y="508" textLength="12.2" clip-path="url(#breeze-help-line-20)">-</text><text class="breeze-help-r4" x="36.6" y="508" textLength="48.8" clip-path="url(#breeze-help-line-20)">-dry</text><text class="breeze-help-r4" x="85.4" y="508" textLength="48.8" clip-path="url(#breeze-help-line-20)">-run</text><text class="breeze-help-r6" x="158.6" y=" [...]
+</text><text class="breeze-help-r5" x="0" y="532.4" textLength="12.2" clip-path="url(#breeze-help-line-21)">│</text><text class="breeze-help-r4" x="24.4" y="532.4" textLength="12.2" clip-path="url(#breeze-help-line-21)">-</text><text class="breeze-help-r4" x="36.6" y="532.4" textLength="85.4" clip-path="url(#breeze-help-line-21)">-answer</text><text class="breeze-help-r6" x="158.6" y="532.4" textLength="24.4" clip-path="url(#breeze-help-line-21)">-a</text><text class="breeze-help-r2" x=" [...]
+</text><text class="breeze-help-r5" x="0" y="556.8" textLength="12.2" clip-path="url(#breeze-help-line-22)">│</text><text class="breeze-help-r4" x="24.4" y="556.8" textLength="12.2" clip-path="url(#breeze-help-line-22)">-</text><text class="breeze-help-r4" x="36.6" y="556.8" textLength="61" clip-path="url(#breeze-help-line-22)">-help</text><text class="breeze-help-r6" x="158.6" y="556.8" textLength="24.4" clip-path="url(#breeze-help-line-22)">-h</text><text class="breeze-help-r2" x="207. [...]
+</text><text class="breeze-help-r5" x="0" y="581.2" textLength="1464" clip-path="url(#breeze-help-line-23)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-help-r2" x="1464" y="581.2" textLength="12.2" clip-path="url(#breeze-help-line-23)">
+</text><text class="breeze-help-r5" x="0" y="605.6" textLength="24.4" clip-path="url(#breeze-help-line-24)">╭─</text><text class="breeze-help-r5" x="24.4" y="605.6" textLength="317.2" clip-path="url(#breeze-help-line-24)"> Basic developer commands </text><text class="breeze-help-r5" x="341.6" y="605.6" textLength="1098" clip-path="url(#breeze-help-line-24)">──────────────────────────────────────────────────────────────────────────────────────────</text><text class="br [...]
+</text><text class="breeze-help-r5" x="0" y="630" textLength="12.2" clip-path="url(#breeze-help-line-25)">│</text><text class="breeze-help-r4" x="24.4" y="630" textLength="219.6" clip-path="url(#breeze-help-line-25)">start-airflow     </text><text class="breeze-help-r2" x="268.4" y="630" textLength="1171.2" clip-path="url(#breeze-help-line-25)">Enter breeze environment and starts all Airflow components in the tmux [...]
+</text><text class="breeze-help-r5" x="0" y="654.4" textLength="12.2" clip-path="url(#breeze-help-line-26)">│</text><text class="breeze-help-r2" x="268.4" y="654.4" textLength="1171.2" clip-path="url(#breeze-help-line-26)">if contents of www directory changed.                                   [...]
+</text><text class="breeze-help-r5" x="0" y="678.8" textLength="12.2" clip-path="url(#breeze-help-line-27)">│</text><text class="breeze-help-r4" x="24.4" y="678.8" textLength="219.6" clip-path="url(#breeze-help-line-27)">static-checks     </text><text class="breeze-help-r2" x="268.4" y="678.8" textLength="1171.2" clip-path="url(#breeze-help-line-27)">Run static checks.              &# [...]
+</text><text class="breeze-help-r5" x="0" y="703.2" textLength="12.2" clip-path="url(#breeze-help-line-28)">│</text><text class="breeze-help-r4" x="24.4" y="703.2" textLength="219.6" clip-path="url(#breeze-help-line-28)">build-docs        </text><text class="breeze-help-r2" x="268.4" y="703.2" textLength="1171.2" clip-path="url(#breeze-help-line-28)">Build documentation in the container.        [...]
+</text><text class="breeze-help-r5" x="0" y="727.6" textLength="12.2" clip-path="url(#breeze-help-line-29)">│</text><text class="breeze-help-r4" x="24.4" y="727.6" textLength="219.6" clip-path="url(#breeze-help-line-29)">stop              </text><text class="breeze-help-r2" x="268.4" y="727.6" textLength="1171.2" clip-path="url(#breeze-help-line-29)">Stop running breeze environment.    [...]
+</text><text class="breeze-help-r5" x="0" y="752" textLength="12.2" clip-path="url(#breeze-help-line-30)">│</text><text class="breeze-help-r4" x="24.4" y="752" textLength="219.6" clip-path="url(#breeze-help-line-30)">shell             </text><text class="breeze-help-r2" x="268.4" y="752" textLength="1171.2" clip-path="url(#breeze-help-line-30)">Enter breeze environment. this is the default  [...]
+</text><text class="breeze-help-r5" x="0" y="776.4" textLength="12.2" clip-path="url(#breeze-help-line-31)">│</text><text class="breeze-help-r4" x="24.4" y="776.4" textLength="219.6" clip-path="url(#breeze-help-line-31)">exec              </text><text class="breeze-help-r2" x="268.4" y="776.4" textLength="1171.2" clip-path="url(#breeze-help-line-31)">Joins the interactive shell of running  [...]
+</text><text class="breeze-help-r5" x="0" y="800.8" textLength="12.2" clip-path="url(#breeze-help-line-32)">│</text><text class="breeze-help-r4" x="24.4" y="800.8" textLength="219.6" clip-path="url(#breeze-help-line-32)">compile-www-assets</text><text class="breeze-help-r2" x="268.4" y="800.8" textLength="1171.2" clip-path="url(#breeze-help-line-32)">Compiles www assets.                  & [...]
+</text><text class="breeze-help-r5" x="0" y="825.2" textLength="12.2" clip-path="url(#breeze-help-line-33)">│</text><text class="breeze-help-r4" x="24.4" y="825.2" textLength="219.6" clip-path="url(#breeze-help-line-33)">cleanup           </text><text class="breeze-help-r2" x="268.4" y="825.2" textLength="805.2" clip-path="url(#breeze-help-line-33)">Cleans the cache of parameters, docker cache and&# [...]
+</text><text class="breeze-help-r5" x="0" y="849.6" textLength="1464" clip-path="url(#breeze-help-line-34)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-help-r2" x="1464" y="849.6" textLength="12.2" clip-path="url(#breeze-help-line-34)">
+</text><text class="breeze-help-r5" x="0" y="874" textLength="24.4" clip-path="url(#breeze-help-line-35)">╭─</text><text class="breeze-help-r5" x="24.4" y="874" textLength="305" clip-path="url(#breeze-help-line-35)"> Advanced command groups </text><text class="breeze-help-r5" x="329.4" y="874" textLength="1110.2" clip-path="url(#breeze-help-line-35)">───────────────────────────────────────────────────────────────────────────────────────────</text><text class="breeze-h [...]
+</text><text class="breeze-help-r5" x="0" y="898.4" textLength="12.2" clip-path="url(#breeze-help-line-36)">│</text><text class="breeze-help-r4" x="24.4" y="898.4" textLength="280.6" clip-path="url(#breeze-help-line-36)">testing                </text><text class="breeze-help-r2" x="329.4" y="898.4" textLength="1110.2" clip-path="url(#breeze-help-line-36)">Tools that developers can use  [...]
+</text><text class="breeze-help-r5" x="0" y="922.8" textLength="12.2" clip-path="url(#breeze-help-line-37)">│</text><text class="breeze-help-r4" x="24.4" y="922.8" textLength="280.6" clip-path="url(#breeze-help-line-37)">ci-image               </text><text class="breeze-help-r2" x="329.4" y="922.8" textLength="597.8" clip-path="url(#breeze-help-line-37)">Tools that developers can use to [...]
+</text><text class="breeze-help-r5" x="0" y="947.2" textLength="12.2" clip-path="url(#breeze-help-line-38)">│</text><text class="breeze-help-r4" x="24.4" y="947.2" textLength="280.6" clip-path="url(#breeze-help-line-38)">k8s                    </text><text class="breeze-help-r2" x="329.4" y="947.2" textLength="1110.2" clip-path="url(#breeze-help-line-38)">Tools that developers [...]
+</text><text class="breeze-help-r5" x="0" y="971.6" textLength="12.2" clip-path="url(#breeze-help-line-39)">│</text><text class="breeze-help-r4" x="24.4" y="971.6" textLength="280.6" clip-path="url(#breeze-help-line-39)">prod-image             </text><text class="breeze-help-r2" x="329.4" y="971.6" textLength="597.8" clip-path="url(#breeze-help-line-39)">Tools that developers can use to manuall [...]
+</text><text class="breeze-help-r5" x="0" y="996" textLength="12.2" clip-path="url(#breeze-help-line-40)">│</text><text class="breeze-help-r4" x="24.4" y="996" textLength="280.6" clip-path="url(#breeze-help-line-40)">setup                  </text><text class="breeze-help-r2" x="329.4" y="996" textLength="1110.2" clip-path="url(#breeze-help-line-40)">Tools that developers can use& [...]
+</text><text class="breeze-help-r5" x="0" y="1020.4" textLength="12.2" clip-path="url(#breeze-help-line-41)">│</text><text class="breeze-help-r4" x="24.4" y="1020.4" textLength="280.6" clip-path="url(#breeze-help-line-41)">release-management     </text><text class="breeze-help-r2" x="329.4" y="1020.4" textLength="1110.2" clip-path="url(#breeze-help-line-41)">Tools that release managers can use to prepare and manage [...]
+</text><text class="breeze-help-r5" x="0" y="1044.8" textLength="12.2" clip-path="url(#breeze-help-line-42)">│</text><text class="breeze-help-r4" x="24.4" y="1044.8" textLength="280.6" clip-path="url(#breeze-help-line-42)">ci                     </text><text class="breeze-help-r2" x="329.4" y="1044.8" textLength="134.2" clip-path="url(#breeze-help-line-42)">Tools that </text [...]
+</text><text class="breeze-help-r5" x="0" y="1069.2" textLength="1464" clip-path="url(#breeze-help-line-43)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-help-r2" x="1464" y="1069.2" textLength="12.2" clip-path="url(#breeze-help-line-43)">
</text>
</g>
</g>
diff --git a/images/breeze/output_build-docs.svg b/images/breeze/output_build-docs.svg
index 2b3d76f05a..84653d88b8 100644
--- a/images/breeze/output_build-docs.svg
+++ b/images/breeze/output_build-docs.svg
@@ -1,4 +1,4 @@
-<svg class="rich-terminal" viewBox="0 0 1482 1489.6" xmlns="http://www.w3.org/2000/svg">
+<svg class="rich-terminal" viewBox="0 0 1482 1514.0" xmlns="http://www.w3.org/2000/svg">
<!-- Generated with Rich https://www.textualize.io -->
<style>
@@ -43,7 +43,7 @@
<defs>
<clipPath id="breeze-build-docs-clip-terminal">
- <rect x="0" y="0" width="1463.0" height="1438.6" />
+ <rect x="0" y="0" width="1463.0" height="1463.0" />
</clipPath>
<clipPath id="breeze-build-docs-line-0">
<rect x="0" y="1.5" width="1464" height="24.65"/>
@@ -219,9 +219,12 @@
<clipPath id="breeze-build-docs-line-57">
<rect x="0" y="1392.3" width="1464" height="24.65"/>
</clipPath>
+<clipPath id="breeze-build-docs-line-58">
+ <rect x="0" y="1416.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="1487.6" rx="8"/><text class="breeze-build-docs-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command: build-docs</text>
+ <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="1512" rx="8"/><text class="breeze-build-docs-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command: build-docs</text>
<g transform="translate(26,22)">
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
@@ -249,47 +252,48 @@
</text><text class="breeze-build-docs-r5" x="0" y="386" textLength="12.2" clip-path="url(#breeze-build-docs-line-15)">│</text><text class="breeze-build-docs-r7" x="329.4" y="386" textLength="1110.2" clip-path="url(#breeze-build-docs-line-15)">apache-airflow-providers-apache-cassandra | apache-airflow-providers-apache-drill |        </text><text class="breeze-build-docs-r5" x="1451.8" y="386" textLength="12.2" clip-path="url(#breeze-b [...]
</text><text class="breeze-build-docs-r5" x="0" y="410.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-16)">│</text><text class="breeze-build-docs-r7" x="329.4" y="410.4" textLength="1110.2" clip-path="url(#breeze-build-docs-line-16)">apache-airflow-providers-apache-druid | apache-airflow-providers-apache-flink |            </text><text class="breeze-build-docs-r5" x="1451.8" y="410.4" textLength="12.2 [...]
</text><text class="breeze-build-docs-r5" x="0" y="434.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-17)">│</text><text class="breeze-build-docs-r7" x="329.4" y="434.8" textLength="1110.2" clip-path="url(#breeze-build-docs-line-17)">apache-airflow-providers-apache-hdfs | apache-airflow-providers-apache-hive |              </text><text class="breeze-build-docs-r5" x="1451.8" y="434.8" textLe [...]
-</text><text class="breeze-build-docs-r5" x="0" y="459.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-18)">│</text><text class="breeze-build-docs-r7" x="329.4" y="459.2" textLength="1110.2" clip-path="url(#breeze-build-docs-line-18)">apache-airflow-providers-apache-kylin | apache-airflow-providers-apache-livy |             </text><text class="breeze-build-docs-r5" x="1451.8" y="459.2" textLength= [...]
-</text><text class="breeze-build-docs-r5" x="0" y="483.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-19)">│</text><text class="breeze-build-docs-r7" x="329.4" y="483.6" textLength="1110.2" clip-path="url(#breeze-build-docs-line-19)">apache-airflow-providers-apache-pig | apache-airflow-providers-apache-pinot |              </text><text class="breeze-build-docs-r5" x="1451.8" y="483.6" textLe [...]
-</text><text class="breeze-build-docs-r5" x="0" y="508" textLength="12.2" clip-path="url(#breeze-build-docs-line-20)">│</text><text class="breeze-build-docs-r7" x="329.4" y="508" textLength="1110.2" clip-path="url(#breeze-build-docs-line-20)">apache-airflow-providers-apache-spark | apache-airflow-providers-apache-sqoop |            </text><text class="breeze-build-docs-r5" x="1451.8" y="508" textLength="12.2" clip [...]
-</text><text class="breeze-build-docs-r5" x="0" y="532.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-21)">│</text><text class="breeze-build-docs-r7" x="329.4" y="532.4" textLength="1110.2" clip-path="url(#breeze-build-docs-line-21)">apache-airflow-providers-arangodb | apache-airflow-providers-asana |                       </text><text class="bree [...]
-</text><text class="breeze-build-docs-r5" x="0" y="556.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-22)">│</text><text class="breeze-build-docs-r7" x="329.4" y="556.8" textLength="1110.2" clip-path="url(#breeze-build-docs-line-22)">apache-airflow-providers-atlassian-jira | apache-airflow-providers-celery |                </text><text class="breeze-build-docs-r5" x="1451.8" y="556 [...]
-</text><text class="breeze-build-docs-r5" x="0" y="581.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-23)">│</text><text class="breeze-build-docs-r7" x="329.4" y="581.2" textLength="1110.2" clip-path="url(#breeze-build-docs-line-23)">apache-airflow-providers-cloudant | apache-airflow-providers-cncf-kubernetes |             </text><text class="breeze-build-docs-r5" x="1451.8" y="581.2" textLength= [...]
-</text><text class="breeze-build-docs-r5" x="0" y="605.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-24)">│</text><text class="breeze-build-docs-r7" x="329.4" y="605.6" textLength="1110.2" clip-path="url(#breeze-build-docs-line-24)">apache-airflow-providers-common-sql | apache-airflow-providers-databricks |                </text><text class="breeze-build-docs-r5" x="1451.8" y="605 [...]
-</text><text class="breeze-build-docs-r5" x="0" y="630" textLength="12.2" clip-path="url(#breeze-build-docs-line-25)">│</text><text class="breeze-build-docs-r7" x="329.4" y="630" textLength="1110.2" clip-path="url(#breeze-build-docs-line-25)">apache-airflow-providers-datadog | apache-airflow-providers-dbt-cloud |                    </text><text class="breeze-build-docs-r5" x [...]
-</text><text class="breeze-build-docs-r5" x="0" y="654.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-26)">│</text><text class="breeze-build-docs-r7" x="329.4" y="654.4" textLength="1110.2" clip-path="url(#breeze-build-docs-line-26)">apache-airflow-providers-dingding | apache-airflow-providers-discord |                     </text><text class="breeze-build-d [...]
-</text><text class="breeze-build-docs-r5" x="0" y="678.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-27)">│</text><text class="breeze-build-docs-r7" x="329.4" y="678.8" textLength="1110.2" clip-path="url(#breeze-build-docs-line-27)">apache-airflow-providers-docker | apache-airflow-providers-elasticsearch |                 </text><text class="breeze-build-docs-r5" x="1451.8" y [...]
-</text><text class="breeze-build-docs-r5" x="0" y="703.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-28)">│</text><text class="breeze-build-docs-r7" x="329.4" y="703.2" textLength="1110.2" clip-path="url(#breeze-build-docs-line-28)">apache-airflow-providers-exasol | apache-airflow-providers-facebook |                      </text><text class="breeze-bu [...]
-</text><text class="breeze-build-docs-r5" x="0" y="727.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-29)">│</text><text class="breeze-build-docs-r7" x="329.4" y="727.6" textLength="1110.2" clip-path="url(#breeze-build-docs-line-29)">apache-airflow-providers-ftp | apache-airflow-providers-github |                           </te [...]
-</text><text class="breeze-build-docs-r5" x="0" y="752" textLength="12.2" clip-path="url(#breeze-build-docs-line-30)">│</text><text class="breeze-build-docs-r7" x="329.4" y="752" textLength="1110.2" clip-path="url(#breeze-build-docs-line-30)">apache-airflow-providers-google | apache-airflow-providers-grpc |                          </text><text [...]
-</text><text class="breeze-build-docs-r5" x="0" y="776.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-31)">│</text><text class="breeze-build-docs-r7" x="329.4" y="776.4" textLength="1110.2" clip-path="url(#breeze-build-docs-line-31)">apache-airflow-providers-hashicorp | apache-airflow-providers-http |                       </text><text class="bree [...]
-</text><text class="breeze-build-docs-r5" x="0" y="800.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-32)">│</text><text class="breeze-build-docs-r7" x="329.4" y="800.8" textLength="1110.2" clip-path="url(#breeze-build-docs-line-32)">apache-airflow-providers-imap | apache-airflow-providers-influxdb |                        </text><text class= [...]
-</text><text class="breeze-build-docs-r5" x="0" y="825.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-33)">│</text><text class="breeze-build-docs-r7" x="329.4" y="825.2" textLength="1110.2" clip-path="url(#breeze-build-docs-line-33)">apache-airflow-providers-jdbc | apache-airflow-providers-jenkins |                         </text><text c [...]
-</text><text class="breeze-build-docs-r5" x="0" y="849.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-34)">│</text><text class="breeze-build-docs-r7" x="329.4" y="849.6" textLength="1110.2" clip-path="url(#breeze-build-docs-line-34)">apache-airflow-providers-microsoft-azure | apache-airflow-providers-microsoft-mssql |      </text><text class="breeze-build-docs-r5" x="1451.8" y="849.6" textLength="12.2" clip-path="url(#breeze-build [...]
-</text><text class="breeze-build-docs-r5" x="0" y="874" textLength="12.2" clip-path="url(#breeze-build-docs-line-35)">│</text><text class="breeze-build-docs-r7" x="329.4" y="874" textLength="1110.2" clip-path="url(#breeze-build-docs-line-35)">apache-airflow-providers-microsoft-psrp | apache-airflow-providers-microsoft-winrm |       </text><text class="breeze-build-docs-r5" x="1451.8" y="874" textLength="12.2" clip-path="url(#breeze-build- [...]
-</text><text class="breeze-build-docs-r5" x="0" y="898.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-36)">│</text><text class="breeze-build-docs-r7" x="329.4" y="898.4" textLength="1110.2" clip-path="url(#breeze-build-docs-line-36)">apache-airflow-providers-mongo | apache-airflow-providers-mysql |                          </text><t [...]
-</text><text class="breeze-build-docs-r5" x="0" y="922.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-37)">│</text><text class="breeze-build-docs-r7" x="329.4" y="922.8" textLength="1110.2" clip-path="url(#breeze-build-docs-line-37)">apache-airflow-providers-neo4j | apache-airflow-providers-odbc |                           </te [...]
-</text><text class="breeze-build-docs-r5" x="0" y="947.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-38)">│</text><text class="breeze-build-docs-r7" x="329.4" y="947.2" textLength="1110.2" clip-path="url(#breeze-build-docs-line-38)">apache-airflow-providers-openfaas | apache-airflow-providers-opsgenie |                    </text><text class="breeze-build-docs-r [...]
-</text><text class="breeze-build-docs-r5" x="0" y="971.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-39)">│</text><text class="breeze-build-docs-r7" x="329.4" y="971.6" textLength="1110.2" clip-path="url(#breeze-build-docs-line-39)">apache-airflow-providers-oracle | apache-airflow-providers-pagerduty |                     </text><text class="breeze-build-d [...]
-</text><text class="breeze-build-docs-r5" x="0" y="996" textLength="12.2" clip-path="url(#breeze-build-docs-line-40)">│</text><text class="breeze-build-docs-r7" x="329.4" y="996" textLength="1110.2" clip-path="url(#breeze-build-docs-line-40)">apache-airflow-providers-papermill | apache-airflow-providers-plexus |                     </text><text class="breeze-build-docs- [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1020.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-41)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1020.4" textLength="1110.2" clip-path="url(#breeze-build-docs-line-41)">apache-airflow-providers-postgres | apache-airflow-providers-presto |                      </text><text class="breeze- [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1044.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-42)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1044.8" textLength="1110.2" clip-path="url(#breeze-build-docs-line-42)">apache-airflow-providers-qubole | apache-airflow-providers-redis |                         </text><text [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1069.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-43)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1069.2" textLength="1110.2" clip-path="url(#breeze-build-docs-line-43)">apache-airflow-providers-salesforce | apache-airflow-providers-samba |                     </text><text class="breeze-build [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1093.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-44)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1093.6" textLength="1110.2" clip-path="url(#breeze-build-docs-line-44)">apache-airflow-providers-segment | apache-airflow-providers-sendgrid |                     </text><text class="breeze-build [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1118" textLength="12.2" clip-path="url(#breeze-build-docs-line-45)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1118" textLength="1110.2" clip-path="url(#breeze-build-docs-line-45)">apache-airflow-providers-sftp | apache-airflow-providers-singularity |                     </text><text class="breeze-build-doc [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1142.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-46)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1142.4" textLength="1110.2" clip-path="url(#breeze-build-docs-line-46)">apache-airflow-providers-slack | apache-airflow-providers-snowflake |                      </text><text class="breeze- [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1166.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-47)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1166.8" textLength="1110.2" clip-path="url(#breeze-build-docs-line-47)">apache-airflow-providers-sqlite | apache-airflow-providers-ssh |                           </ [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1191.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-48)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1191.2" textLength="1110.2" clip-path="url(#breeze-build-docs-line-48)">apache-airflow-providers-tableau | apache-airflow-providers-tabular |                      </text><text class="breeze- [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1215.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-49)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1215.6" textLength="1110.2" clip-path="url(#breeze-build-docs-line-49)">apache-airflow-providers-telegram | apache-airflow-providers-trino |                       </text><text class="br [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1240" textLength="12.2" clip-path="url(#breeze-build-docs-line-50)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1240" textLength="1110.2" clip-path="url(#breeze-build-docs-line-50)">apache-airflow-providers-vertica | apache-airflow-providers-yandex |                       </text><text class="breeze [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1264.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-51)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1264.4" textLength="1110.2" clip-path="url(#breeze-build-docs-line-51)">apache-airflow-providers-zendesk | docker-stack | helm-chart)                            [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1288.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-52)">│</text><text class="breeze-build-docs-r4" x="24.4" y="1288.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-52)">-</text><text class="breeze-build-docs-r4" x="36.6" y="1288.8" textLength="85.4" clip-path="url(#breeze-build-docs-line-52)">-github</text><text class="breeze-build-docs-r4" x="122" y="1288.8" textLength="134.2" clip-path="url(#breeze-build-docs- [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1313.2" textLength="1464" clip-path="url(#breeze-build-docs-line-53)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-build-docs-r2" x="1464" y="1313.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-53)">
-</text><text class="breeze-build-docs-r5" x="0" y="1337.6" textLength="24.4" clip-path="url(#breeze-build-docs-line-54)">╭─</text><text class="breeze-build-docs-r5" x="24.4" y="1337.6" textLength="195.2" clip-path="url(#breeze-build-docs-line-54)"> Common options </text><text class="breeze-build-docs-r5" x="219.6" y="1337.6" textLength="1220" clip-path="url(#breeze-build-docs-line-54)">──────────────────────────────────────────────────────────────────────────────────────── [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1362" textLength="12.2" clip-path="url(#breeze-build-docs-line-55)">│</text><text class="breeze-build-docs-r4" x="24.4" y="1362" textLength="12.2" clip-path="url(#breeze-build-docs-line-55)">-</text><text class="breeze-build-docs-r4" x="36.6" y="1362" textLength="97.6" clip-path="url(#breeze-build-docs-line-55)">-verbose</text><text class="breeze-build-docs-r6" x="158.6" y="1362" textLength="24.4" clip-path="url(#breeze-build-docs-line-5 [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1386.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-56)">│</text><text class="breeze-build-docs-r4" x="24.4" y="1386.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-56)">-</text><text class="breeze-build-docs-r4" x="36.6" y="1386.4" textLength="48.8" clip-path="url(#breeze-build-docs-line-56)">-dry</text><text class="breeze-build-docs-r4" x="85.4" y="1386.4" textLength="48.8" clip-path="url(#breeze-build-docs-lin [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1410.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-57)">│</text><text class="breeze-build-docs-r4" x="24.4" y="1410.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-57)">-</text><text class="breeze-build-docs-r4" x="36.6" y="1410.8" textLength="61" clip-path="url(#breeze-build-docs-line-57)">-help</text><text class="breeze-build-docs-r6" x="158.6" y="1410.8" textLength="24.4" clip-path="url(#breeze-build-docs-lin [...]
-</text><text class="breeze-build-docs-r5" x="0" y="1435.2" textLength="1464" clip-path="url(#breeze-build-docs-line-58)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-build-docs-r2" x="1464" y="1435.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-58)">
+</text><text class="breeze-build-docs-r5" x="0" y="459.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-18)">│</text><text class="breeze-build-docs-r7" x="329.4" y="459.2" textLength="1110.2" clip-path="url(#breeze-build-docs-line-18)">apache-airflow-providers-apache-impala | apache-airflow-providers-apache-kylin |           </text><text class="breeze-build-docs-r5" x="1451.8" y="459.2" textLength="12.2" cli [...]
+</text><text class="breeze-build-docs-r5" x="0" y="483.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-19)">│</text><text class="breeze-build-docs-r7" x="329.4" y="483.6" textLength="1110.2" clip-path="url(#breeze-build-docs-line-19)">apache-airflow-providers-apache-livy | apache-airflow-providers-apache-pig |               </text><text class="breeze-build-docs-r5" x="1451.8" y="483.6" t [...]
+</text><text class="breeze-build-docs-r5" x="0" y="508" textLength="12.2" clip-path="url(#breeze-build-docs-line-20)">│</text><text class="breeze-build-docs-r7" x="329.4" y="508" textLength="1110.2" clip-path="url(#breeze-build-docs-line-20)">apache-airflow-providers-apache-pinot | apache-airflow-providers-apache-spark |            </text><text class="breeze-build-docs-r5" x="1451.8" y="508" textLength="12.2" clip [...]
+</text><text class="breeze-build-docs-r5" x="0" y="532.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-21)">│</text><text class="breeze-build-docs-r7" x="329.4" y="532.4" textLength="1110.2" clip-path="url(#breeze-build-docs-line-21)">apache-airflow-providers-apache-sqoop | apache-airflow-providers-arangodb |                </text><text class="breeze-build-docs-r5" x="1451.8" y="532 [...]
+</text><text class="breeze-build-docs-r5" x="0" y="556.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-22)">│</text><text class="breeze-build-docs-r7" x="329.4" y="556.8" textLength="1110.2" clip-path="url(#breeze-build-docs-line-22)">apache-airflow-providers-asana | apache-airflow-providers-atlassian-jira |                 </text><text class="breeze-build-docs-r5" x="1451.8" y [...]
+</text><text class="breeze-build-docs-r5" x="0" y="581.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-23)">│</text><text class="breeze-build-docs-r7" x="329.4" y="581.2" textLength="1110.2" clip-path="url(#breeze-build-docs-line-23)">apache-airflow-providers-celery | apache-airflow-providers-cloudant |                      </text><text class="breeze-bu [...]
+</text><text class="breeze-build-docs-r5" x="0" y="605.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-24)">│</text><text class="breeze-build-docs-r7" x="329.4" y="605.6" textLength="1110.2" clip-path="url(#breeze-build-docs-line-24)">apache-airflow-providers-cncf-kubernetes | apache-airflow-providers-common-sql |           </text><text class="breeze-build-docs-r5" x="1451.8" y="605.6" textLength="12.2" cli [...]
+</text><text class="breeze-build-docs-r5" x="0" y="630" textLength="12.2" clip-path="url(#breeze-build-docs-line-25)">│</text><text class="breeze-build-docs-r7" x="329.4" y="630" textLength="1110.2" clip-path="url(#breeze-build-docs-line-25)">apache-airflow-providers-databricks | apache-airflow-providers-datadog |                   </text><text class="breeze-build-docs-r5" x="145 [...]
+</text><text class="breeze-build-docs-r5" x="0" y="654.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-26)">│</text><text class="breeze-build-docs-r7" x="329.4" y="654.4" textLength="1110.2" clip-path="url(#breeze-build-docs-line-26)">apache-airflow-providers-dbt-cloud | apache-airflow-providers-dingding |                   </text><text class="breeze-build-docs-r5" x= [...]
+</text><text class="breeze-build-docs-r5" x="0" y="678.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-27)">│</text><text class="breeze-build-docs-r7" x="329.4" y="678.8" textLength="1110.2" clip-path="url(#breeze-build-docs-line-27)">apache-airflow-providers-discord | apache-airflow-providers-docker |                       </text><text class="bree [...]
+</text><text class="breeze-build-docs-r5" x="0" y="703.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-28)">│</text><text class="breeze-build-docs-r7" x="329.4" y="703.2" textLength="1110.2" clip-path="url(#breeze-build-docs-line-28)">apache-airflow-providers-elasticsearch | apache-airflow-providers-exasol |                 </text><text class="breeze-build-docs-r5" x="1451.8" y [...]
+</text><text class="breeze-build-docs-r5" x="0" y="727.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-29)">│</text><text class="breeze-build-docs-r7" x="329.4" y="727.6" textLength="1110.2" clip-path="url(#breeze-build-docs-line-29)">apache-airflow-providers-facebook | apache-airflow-providers-ftp |                         </text><text c [...]
+</text><text class="breeze-build-docs-r5" x="0" y="752" textLength="12.2" clip-path="url(#breeze-build-docs-line-30)">│</text><text class="breeze-build-docs-r7" x="329.4" y="752" textLength="1110.2" clip-path="url(#breeze-build-docs-line-30)">apache-airflow-providers-github | apache-airflow-providers-google |                        </text><text class="bre [...]
+</text><text class="breeze-build-docs-r5" x="0" y="776.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-31)">│</text><text class="breeze-build-docs-r7" x="329.4" y="776.4" textLength="1110.2" clip-path="url(#breeze-build-docs-line-31)">apache-airflow-providers-grpc | apache-airflow-providers-hashicorp |                       </text><text class="bree [...]
+</text><text class="breeze-build-docs-r5" x="0" y="800.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-32)">│</text><text class="breeze-build-docs-r7" x="329.4" y="800.8" textLength="1110.2" clip-path="url(#breeze-build-docs-line-32)">apache-airflow-providers-http | apache-airflow-providers-imap |                             [...]
+</text><text class="breeze-build-docs-r5" x="0" y="825.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-33)">│</text><text class="breeze-build-docs-r7" x="329.4" y="825.2" textLength="1110.2" clip-path="url(#breeze-build-docs-line-33)">apache-airflow-providers-influxdb | apache-airflow-providers-jdbc |                        </text><text class= [...]
+</text><text class="breeze-build-docs-r5" x="0" y="849.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-34)">│</text><text class="breeze-build-docs-r7" x="329.4" y="849.6" textLength="1110.2" clip-path="url(#breeze-build-docs-line-34)">apache-airflow-providers-jenkins | apache-airflow-providers-microsoft-azure |              </text><text class="breeze-build-docs-r5" x="1451.8" y="849.6" textLe [...]
+</text><text class="breeze-build-docs-r5" x="0" y="874" textLength="12.2" clip-path="url(#breeze-build-docs-line-35)">│</text><text class="breeze-build-docs-r7" x="329.4" y="874" textLength="1110.2" clip-path="url(#breeze-build-docs-line-35)">apache-airflow-providers-microsoft-mssql | apache-airflow-providers-microsoft-psrp |       </text><text class="breeze-build-docs-r5" x="1451.8" y="874" textLength="12.2" clip-path="url(#breeze-build- [...]
+</text><text class="breeze-build-docs-r5" x="0" y="898.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-36)">│</text><text class="breeze-build-docs-r7" x="329.4" y="898.4" textLength="1110.2" clip-path="url(#breeze-build-docs-line-36)">apache-airflow-providers-microsoft-winrm | apache-airflow-providers-mongo |                </text><text class="breeze-build-docs-r5" x="1451.8" y="898 [...]
+</text><text class="breeze-build-docs-r5" x="0" y="922.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-37)">│</text><text class="breeze-build-docs-r7" x="329.4" y="922.8" textLength="1110.2" clip-path="url(#breeze-build-docs-line-37)">apache-airflow-providers-mysql | apache-airflow-providers-neo4j |                          </text><t [...]
+</text><text class="breeze-build-docs-r5" x="0" y="947.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-38)">│</text><text class="breeze-build-docs-r7" x="329.4" y="947.2" textLength="1110.2" clip-path="url(#breeze-build-docs-line-38)">apache-airflow-providers-odbc | apache-airflow-providers-openfaas |                        </text><text class= [...]
+</text><text class="breeze-build-docs-r5" x="0" y="971.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-39)">│</text><text class="breeze-build-docs-r7" x="329.4" y="971.6" textLength="1110.2" clip-path="url(#breeze-build-docs-line-39)">apache-airflow-providers-opsgenie | apache-airflow-providers-oracle |                      </text><text class="breeze-bu [...]
+</text><text class="breeze-build-docs-r5" x="0" y="996" textLength="12.2" clip-path="url(#breeze-build-docs-line-40)">│</text><text class="breeze-build-docs-r7" x="329.4" y="996" textLength="1110.2" clip-path="url(#breeze-build-docs-line-40)">apache-airflow-providers-pagerduty | apache-airflow-providers-papermill |                  </text><text class="breeze-build-docs-r5" x="1451.8" [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1020.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-41)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1020.4" textLength="1110.2" clip-path="url(#breeze-build-docs-line-41)">apache-airflow-providers-plexus | apache-airflow-providers-postgres |                      </text><text class="breeze- [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1044.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-42)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1044.8" textLength="1110.2" clip-path="url(#breeze-build-docs-line-42)">apache-airflow-providers-presto | apache-airflow-providers-qubole |                        </text><text clas [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1069.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-43)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1069.2" textLength="1110.2" clip-path="url(#breeze-build-docs-line-43)">apache-airflow-providers-redis | apache-airflow-providers-salesforce |                     </text><text class="breeze-build [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1093.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-44)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1093.6" textLength="1110.2" clip-path="url(#breeze-build-docs-line-44)">apache-airflow-providers-samba | apache-airflow-providers-segment |                        </text><text clas [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1118" textLength="12.2" clip-path="url(#breeze-build-docs-line-45)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1118" textLength="1110.2" clip-path="url(#breeze-build-docs-line-45)">apache-airflow-providers-sendgrid | apache-airflow-providers-sftp |                        </text><text class="b [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1142.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-46)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1142.4" textLength="1110.2" clip-path="url(#breeze-build-docs-line-46)">apache-airflow-providers-singularity | apache-airflow-providers-slack |                    </text><text class="breeze-build-docs [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1166.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-47)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1166.8" textLength="1110.2" clip-path="url(#breeze-build-docs-line-47)">apache-airflow-providers-snowflake | apache-airflow-providers-sqlite |                     </text><text class="breeze-build [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1191.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-48)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1191.2" textLength="1110.2" clip-path="url(#breeze-build-docs-line-48)">apache-airflow-providers-ssh | apache-airflow-providers-tableau |                          </text> [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1215.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-49)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1215.6" textLength="1110.2" clip-path="url(#breeze-build-docs-line-49)">apache-airflow-providers-tabular | apache-airflow-providers-telegram |                     </text><text class="breeze-build [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1240" textLength="12.2" clip-path="url(#breeze-build-docs-line-50)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1240" textLength="1110.2" clip-path="url(#breeze-build-docs-line-50)">apache-airflow-providers-trino | apache-airflow-providers-vertica |                        </text><text class="b [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1264.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-51)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1264.4" textLength="1110.2" clip-path="url(#breeze-build-docs-line-51)">apache-airflow-providers-yandex | apache-airflow-providers-zendesk | docker-stack |        </text><text class="breeze-build-docs-r5" x="1451.8" y="1264.4" textLength="12.2" clip- [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1288.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-52)">│</text><text class="breeze-build-docs-r7" x="329.4" y="1288.8" textLength="1110.2" clip-path="url(#breeze-build-docs-line-52)">helm-chart)                                       [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1313.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-53)">│</text><text class="breeze-build-docs-r4" x="24.4" y="1313.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-53)">-</text><text class="breeze-build-docs-r4" x="36.6" y="1313.2" textLength="85.4" clip-path="url(#breeze-build-docs-line-53)">-github</text><text class="breeze-build-docs-r4" x="122" y="1313.2" textLength="134.2" clip-path="url(#breeze-build-docs- [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1337.6" textLength="1464" clip-path="url(#breeze-build-docs-line-54)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-build-docs-r2" x="1464" y="1337.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-54)">
+</text><text class="breeze-build-docs-r5" x="0" y="1362" textLength="24.4" clip-path="url(#breeze-build-docs-line-55)">╭─</text><text class="breeze-build-docs-r5" x="24.4" y="1362" textLength="195.2" clip-path="url(#breeze-build-docs-line-55)"> Common options </text><text class="breeze-build-docs-r5" x="219.6" y="1362" textLength="1220" clip-path="url(#breeze-build-docs-line-55)">────────────────────────────────────────────────────────────────────────────────────────────── [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1386.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-56)">│</text><text class="breeze-build-docs-r4" x="24.4" y="1386.4" textLength="12.2" clip-path="url(#breeze-build-docs-line-56)">-</text><text class="breeze-build-docs-r4" x="36.6" y="1386.4" textLength="97.6" clip-path="url(#breeze-build-docs-line-56)">-verbose</text><text class="breeze-build-docs-r6" x="158.6" y="1386.4" textLength="24.4" clip-path="url(#breeze-build-doc [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1410.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-57)">│</text><text class="breeze-build-docs-r4" x="24.4" y="1410.8" textLength="12.2" clip-path="url(#breeze-build-docs-line-57)">-</text><text class="breeze-build-docs-r4" x="36.6" y="1410.8" textLength="48.8" clip-path="url(#breeze-build-docs-line-57)">-dry</text><text class="breeze-build-docs-r4" x="85.4" y="1410.8" textLength="48.8" clip-path="url(#breeze-build-docs-lin [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1435.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-58)">│</text><text class="breeze-build-docs-r4" x="24.4" y="1435.2" textLength="12.2" clip-path="url(#breeze-build-docs-line-58)">-</text><text class="breeze-build-docs-r4" x="36.6" y="1435.2" textLength="61" clip-path="url(#breeze-build-docs-line-58)">-help</text><text class="breeze-build-docs-r6" x="158.6" y="1435.2" textLength="24.4" clip-path="url(#breeze-build-docs-lin [...]
+</text><text class="breeze-build-docs-r5" x="0" y="1459.6" textLength="1464" clip-path="url(#breeze-build-docs-line-59)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-build-docs-r2" x="1464" y="1459.6" textLength="12.2" clip-path="url(#breeze-build-docs-line-59)">
</text>
</g>
</g>
diff --git a/images/breeze/output_release-management.svg b/images/breeze/output_release-management.svg
index 5be8c4f4fa..22e76c65b0 100644
--- a/images/breeze/output_release-management.svg
+++ b/images/breeze/output_release-management.svg
@@ -35,8 +35,8 @@
.breeze-release-management-r1 { fill: #c5c8c6;font-weight: bold }
.breeze-release-management-r2 { fill: #c5c8c6 }
.breeze-release-management-r3 { fill: #d0b344;font-weight: bold }
-.breeze-release-management-r4 { fill: #868887 }
-.breeze-release-management-r5 { fill: #68a0b3;font-weight: bold }
+.breeze-release-management-r4 { fill: #68a0b3;font-weight: bold }
+.breeze-release-management-r5 { fill: #868887 }
.breeze-release-management-r6 { fill: #98a84b;font-weight: bold }
</style>
@@ -105,22 +105,22 @@
<g class="breeze-release-management-matrix">
<text class="breeze-release-management-r2" x="1464" y="20" textLength="12.2" clip-path="url(#breeze-release-management-line-0)">
-</text><text class="breeze-release-management-r3" x="12.2" y="44.4" textLength="85.4" clip-path="url(#breeze-release-management-line-1)">Usage: </text><text class="breeze-release-management-r1" x="97.6" y="44.4" textLength="646.6" clip-path="url(#breeze-release-management-line-1)">breeze release-management [OPTIONS] COMMAND [ARGS]...</text><text class="breeze-release-management-r2" x="1464" y="44.4" textLength="12.2" clip-path="url(#breeze-release-management-line-1)">
+</text><text class="breeze-release-management-r3" x="12.2" y="44.4" textLength="85.4" clip-path="url(#breeze-release-management-line-1)">Usage: </text><text class="breeze-release-management-r1" x="97.6" y="44.4" textLength="329.4" clip-path="url(#breeze-release-management-line-1)">breeze release-management [</text><text class="breeze-release-management-r4" x="427" y="44.4" textLength="85.4" clip-path="url(#breeze-release-management-line-1)">OPTIONS</text><text class="breez [...]
</text><text class="breeze-release-management-r2" x="1464" y="68.8" textLength="12.2" clip-path="url(#breeze-release-management-line-2)">
</text><text class="breeze-release-management-r2" x="12.2" y="93.2" textLength="902.8" clip-path="url(#breeze-release-management-line-3)">Tools that release managers can use to prepare and manage Airflow releases</text><text class="breeze-release-management-r2" x="1464" y="93.2" textLength="12.2" clip-path="url(#breeze-release-management-line-3)">
</text><text class="breeze-release-management-r2" x="1464" y="117.6" textLength="12.2" clip-path="url(#breeze-release-management-line-4)">
-</text><text class="breeze-release-management-r4" x="0" y="142" textLength="24.4" clip-path="url(#breeze-release-management-line-5)">╭─</text><text class="breeze-release-management-r4" x="24.4" y="142" textLength="195.2" clip-path="url(#breeze-release-management-line-5)"> Common options </text><text class="breeze-release-management-r4" x="219.6" y="142" textLength="1220" clip-path="url(#breeze-release-management-line-5)">──────────────────────────────────────────────────── [...]
-</text><text class="breeze-release-management-r4" x="0" y="166.4" textLength="12.2" clip-path="url(#breeze-release-management-line-6)">│</text><text class="breeze-release-management-r5" x="24.4" y="166.4" textLength="12.2" clip-path="url(#breeze-release-management-line-6)">-</text><text class="breeze-release-management-r5" 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-r4" x="0" y="190.8" textLength="1464" clip-path="url(#breeze-release-management-line-7)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-r2" x="1464" y="190.8" textLength="12.2" clip-path="url(#breeze-release-management-line-7)">
-</text><text class="breeze-release-management-r4" x="0" y="215.2" textLength="24.4" clip-path="url(#breeze-release-management-line-8)">╭─</text><text class="breeze-release-management-r4" x="24.4" y="215.2" textLength="122" clip-path="url(#breeze-release-management-line-8)"> Commands </text><text class="breeze-release-management-r4" x="146.4" y="215.2" textLength="1293.2" clip-path="url(#breeze-release-management-line-8)">───────────────────────────────────────────────────────── [...]
-</text><text class="breeze-release-management-r4" x="0" y="239.6" textLength="12.2" clip-path="url(#breeze-release-management-line-9)">│</text><text class="breeze-release-management-r5" x="24.4" y="239.6" textLength="402.6" clip-path="url(#breeze-release-management-line-9)">generate-constraints             </text><text class="breeze-release-management-r2" x="451.4" y="239.6" textLength="988.2" clip-path="url(#breeze-release [...]
-</text><text class="breeze-release-management-r4" x="0" y="264" textLength="12.2" clip-path="url(#breeze-release-management-line-10)">│</text><text class="breeze-release-management-r5" x="24.4" y="264" textLength="402.6" clip-path="url(#breeze-release-management-line-10)">generate-issue-content           </text><text class="breeze-release-management-r2" x="451.4" y="264" textLength="988.2" clip-path="url(#breeze-release-management-li [...]
-</text><text class="breeze-release-management-r4" x="0" y="288.4" textLength="12.2" clip-path="url(#breeze-release-management-line-11)">│</text><text class="breeze-release-management-r5" x="24.4" y="288.4" textLength="402.6" clip-path="url(#breeze-release-management-line-11)">prepare-airflow-package          </text><text class="breeze-release-management-r2" x="451.4" y="288.4" textLength="988.2" clip-path="url(#breeze-release-management-l [...]
-</text><text class="breeze-release-management-r4" x="0" y="312.8" textLength="12.2" clip-path="url(#breeze-release-management-line-12)">│</text><text class="breeze-release-management-r5" x="24.4" y="312.8" textLength="402.6" clip-path="url(#breeze-release-management-line-12)">prepare-provider-documentation   </text><text class="breeze-release-management-r2" x="451.4" y="312.8" textLength="988.2" clip-path="url(#breeze-release-management-line-12)">Prepare CHANGELOG, [...]
-</text><text class="breeze-release-management-r4" x="0" y="337.2" textLength="12.2" clip-path="url(#breeze-release-management-line-13)">│</text><text class="breeze-release-management-r5" x="24.4" y="337.2" textLength="402.6" clip-path="url(#breeze-release-management-line-13)">prepare-provider-packages        </text><text class="breeze-release-management-r2" x="451.4" y="337.2" textLength="988.2" clip-path="url(#breeze-release-management-line-13)">P [...]
-</text><text class="breeze-release-management-r4" x="0" y="361.6" textLength="12.2" clip-path="url(#breeze-release-management-line-14)">│</text><text class="breeze-release-management-r5" x="24.4" y="361.6" textLength="402.6" clip-path="url(#breeze-release-management-line-14)">release-prod-images              </text><text class="breeze-release-management-r2" x="451.4" y="361.6" textLength="988.2" clip-path="url(#breeze- [...]
-</text><text class="breeze-release-management-r4" x="0" y="386" textLength="12.2" clip-path="url(#breeze-release-management-line-15)">│</text><text class="breeze-release-management-r5" x="24.4" y="386" textLength="402.6" clip-path="url(#breeze-release-management-line-15)">verify-provider-packages         </text><text class="breeze-release-management-r2" x="451.4" y="386" textLength="988.2" clip-path="url(#breeze-release-management-line-15)">Ve [...]
-</text><text class="breeze-release-management-r4" x="0" y="410.4" textLength="1464" clip-path="url(#breeze-release-management-line-16)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-r2" x="1464" y="410.4" textLength="12.2" clip-path="url(#breeze-release-management-line-16)">
+</text><text class="breeze-release-management-r5" x="0" y="142" textLength="24.4" clip-path="url(#breeze-release-management-line-5)">╭─</text><text class="breeze-release-management-r5" x="24.4" y="142" textLength="195.2" clip-path="url(#breeze-release-management-line-5)"> Common options </text><text class="breeze-release-management-r5" x="219.6" y="142" textLength="1220" clip-path="url(#breeze-release-management-line-5)">──────────────────────────────────────────────────── [...]
+</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-r2" 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="122" clip-path="url(#breeze-release-management-line-8)"> Commands </text><text class="breeze-release-management-r5" x="146.4" y="215.2" textLength="1293.2" 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="402.6" clip-path="url(#breeze-release-management-line-9)">generate-constraints             </text><text class="breeze-release-management-r2" x="451.4" y="239.6" textLength="988.2" clip-path="url(#breeze-release [...]
+</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="402.6" clip-path="url(#breeze-release-management-line-10)">generate-issue-content           </text><text class="breeze-release-management-r2" x="451.4" y="264" textLength="988.2" clip-path="url(#breeze-release-management-li [...]
+</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="402.6" clip-path="url(#breeze-release-management-line-11)">prepare-airflow-package          </text><text class="breeze-release-management-r2" x="451.4" y="288.4" textLength="988.2" clip-path="url(#breeze-release-management-l [...]
+</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="402.6" clip-path="url(#breeze-release-management-line-12)">prepare-provider-documentation   </text><text class="breeze-release-management-r2" x="451.4" y="312.8" textLength="97.6" clip-path="url(#breeze-release-management-line-12)">Prepare </text><text c [...]
+</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="402.6" clip-path="url(#breeze-release-management-line-13)">prepare-provider-packages        </text><text class="breeze-release-management-r2" x="451.4" y="337.2" textLength="988.2" clip-path="url(#breeze-release-management-line-13)">P [...]
+</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="402.6" clip-path="url(#breeze-release-management-line-14)">release-prod-images              </text><text class="breeze-release-management-r2" x="451.4" y="361.6" textLength="988.2" clip-path="url(#breeze- [...]
+</text><text class="breeze-release-management-r5" x="0" y="386" textLength="12.2" clip-path="url(#breeze-release-management-line-15)">│</text><text class="breeze-release-management-r4" x="24.4" y="386" textLength="402.6" clip-path="url(#breeze-release-management-line-15)">verify-provider-packages         </text><text class="breeze-release-management-r2" x="451.4" y="386" textLength="988.2" clip-path="url(#breeze-release-management-line-15)">Ve [...]
+</text><text class="breeze-release-management-r5" x="0" y="410.4" textLength="1464" clip-path="url(#breeze-release-management-line-16)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-r2" x="1464" y="410.4" textLength="12.2" clip-path="url(#breeze-release-management-line-16)">
</text>
</g>
</g>
diff --git a/images/breeze/output_release-management_generate-issue-content.svg b/images/breeze/output_release-management_generate-issue-content.svg
index f10d41f76e..45bd522d44 100644
--- a/images/breeze/output_release-management_generate-issue-content.svg
+++ b/images/breeze/output_release-management_generate-issue-content.svg
@@ -35,8 +35,8 @@
.breeze-release-management-generate-issue-content-r1 { fill: #c5c8c6;font-weight: bold }
.breeze-release-management-generate-issue-content-r2 { fill: #c5c8c6 }
.breeze-release-management-generate-issue-content-r3 { fill: #d0b344;font-weight: bold }
-.breeze-release-management-generate-issue-content-r4 { fill: #868887 }
-.breeze-release-management-generate-issue-content-r5 { fill: #68a0b3;font-weight: bold }
+.breeze-release-management-generate-issue-content-r4 { fill: #68a0b3;font-weight: bold }
+.breeze-release-management-generate-issue-content-r5 { fill: #868887 }
.breeze-release-management-generate-issue-content-r6 { fill: #8d7b39 }
.breeze-release-management-generate-issue-content-r7 { fill: #98a84b;font-weight: bold }
</style>
@@ -145,13 +145,13 @@
<g class="breeze-release-management-generate-issue-content-matrix">
<text class="breeze-release-management-generate-issue-content-r2" x="1464" y="20" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-0)">
-</text><text class="breeze-release-management-generate-issue-content-r3" x="12.2" y="44.4" textLength="85.4" clip-path="url(#breeze-release-management-generate-issue-content-line-1)">Usage: </text><text class="breeze-release-management-generate-issue-content-r1" x="97.6" y="44.4" textLength="1244.4" clip-path="url(#breeze-release-management-generate-issue-content-line-1)">breeze release-management generate-issue-content [OPTIONS] [airbyte | alibaba  [...]
+</text><text class="breeze-release-management-generate-issue-content-r3" x="12.2" y="44.4" textLength="85.4" clip-path="url(#breeze-release-management-generate-issue-content-line-1)">Usage: </text><text class="breeze-release-management-generate-issue-content-r1" x="97.6" y="44.4" textLength="610" clip-path="url(#breeze-release-management-generate-issue-content-line-1)">breeze release-management generate-issue-content [</text><text class="breeze-release-management-gene [...]
</text><text class="breeze-release-management-generate-issue-content-r1" x="12.2" y="68.8" textLength="1427.4" clip-path="url(#breeze-release-management-generate-issue-content-line-2)">                                                   & [...]
-</text><text class="breeze-release-management-generate-issue-content-r1" x="12.2" y="93.2" textLength="1390.8" clip-path="url(#breeze-release-management-generate-issue-content-line-3)">                                                   & [...]
-</text><text class="breeze-release-management-generate-issue-content-r1" x="12.2" y="117.6" textLength="1378.6" clip-path="url(#breeze-release-management-generate-issue-content-line-4)">                                                    [...]
-</text><text class="breeze-release-management-generate-issue-content-r1" x="12.2" y="142" textLength="1354.2" clip-path="url(#breeze-release-management-generate-issue-content-line-5)">                                                   &# [...]
-</text><text class="breeze-release-management-generate-issue-content-r1" x="12.2" y="166.4" textLength="1329.8" clip-path="url(#breeze-release-management-generate-issue-content-line-6)">                                                    [...]
-</text><text class="breeze-release-management-generate-issue-content-r1" x="12.2" y="190.8" textLength="1378.6" clip-path="url(#breeze-release-management-generate-issue-content-line-7)">                                                    [...]
+</text><text class="breeze-release-management-generate-issue-content-r1" x="12.2" y="93.2" textLength="1415.2" clip-path="url(#breeze-release-management-generate-issue-content-line-3)">                                                   & [...]
+</text><text class="breeze-release-management-generate-issue-content-r1" x="12.2" y="117.6" textLength="1366.4" clip-path="url(#breeze-release-management-generate-issue-content-line-4)">                                                    [...]
+</text><text class="breeze-release-management-generate-issue-content-r1" x="12.2" y="142" textLength="1403" clip-path="url(#breeze-release-management-generate-issue-content-line-5)">                                                    [...]
+</text><text class="breeze-release-management-generate-issue-content-r1" x="12.2" y="166.4" textLength="1439.6" clip-path="url(#breeze-release-management-generate-issue-content-line-6)">                                                    [...]
+</text><text class="breeze-release-management-generate-issue-content-r1" x="12.2" y="190.8" textLength="1403" clip-path="url(#breeze-release-management-generate-issue-content-line-7)">                                                   &# [...]
</text><text class="breeze-release-management-generate-issue-content-r1" x="12.2" y="215.2" textLength="1439.6" clip-path="url(#breeze-release-management-generate-issue-content-line-8)">                                                    [...]
</text><text class="breeze-release-management-generate-issue-content-r1" x="12.2" y="239.6" textLength="1403" clip-path="url(#breeze-release-management-generate-issue-content-line-9)">                                                   &# [...]
</text><text class="breeze-release-management-generate-issue-content-r1" x="12.2" y="264" textLength="1415.2" clip-path="url(#breeze-release-management-generate-issue-content-line-10)">                                                   & [...]
@@ -163,17 +163,17 @@
</text><text class="breeze-release-management-generate-issue-content-r2" x="1464" y="410.4" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-16)">
</text><text class="breeze-release-management-generate-issue-content-r2" x="12.2" y="434.8" textLength="585.6" clip-path="url(#breeze-release-management-generate-issue-content-line-17)">Generates content for issue to test the release.</text><text class="breeze-release-management-generate-issue-content-r2" x="1464" y="434.8" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-17)">
</text><text class="breeze-release-management-generate-issue-content-r2" x="1464" y="459.2" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-18)">
-</text><text class="breeze-release-management-generate-issue-content-r4" x="0" y="483.6" textLength="24.4" clip-path="url(#breeze-release-management-generate-issue-content-line-19)">╭─</text><text class="breeze-release-management-generate-issue-content-r4" x="24.4" y="483.6" textLength="195.2" clip-path="url(#breeze-release-management-generate-issue-content-line-19)"> Common options </text><text class="breeze-release-management-generate-issue-content-r4" x="219.6" y="483.6 [...]
-</text><text class="breeze-release-management-generate-issue-content-r4" x="0" y="508" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-20)">│</text><text class="breeze-release-management-generate-issue-content-r5" x="24.4" y="508" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-20)">-</text><text class="breeze-release-management-generate-issue-content-r5" x="36.6" y="508" textLength="85.4" clip-path="url(#bre [...]
-</text><text class="breeze-release-management-generate-issue-content-r4" x="0" y="532.4" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-21)">│</text><text class="breeze-release-management-generate-issue-content-r2" x="390.4" y="532.4" textLength="1049.2" clip-path="url(#breeze-release-management-generate-issue-content-line-21)">variable set. Can be generated with:           [...]
-</text><text class="breeze-release-management-generate-issue-content-r4" x="0" y="556.8" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-22)">│</text><text class="breeze-release-management-generate-issue-content-r2" x="390.4" y="556.8" textLength="1049.2" clip-path="url(#breeze-release-management-generate-issue-content-line-22)">https://github.com/settings/tokens/new?description=Read%20sssues&scopes=repo:status   </text><text cla [...]
-</text><text class="breeze-release-management-generate-issue-content-r4" x="0" y="581.2" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-23)">│</text><text class="breeze-release-management-generate-issue-content-r6" x="390.4" y="581.2" textLength="1049.2" clip-path="url(#breeze-release-management-generate-issue-content-line-23)">(TEXT)                   & [...]
-</text><text class="breeze-release-management-generate-issue-content-r4" x="0" y="605.6" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-24)">│</text><text class="breeze-release-management-generate-issue-content-r5" x="24.4" y="605.6" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-24)">-</text><text class="breeze-release-management-generate-issue-content-r5" x="36.6" y="605.6" textLength="85.4" clip-path="ur [...]
-</text><text class="breeze-release-management-generate-issue-content-r4" x="0" y="630" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-25)">│</text><text class="breeze-release-management-generate-issue-content-r5" x="24.4" y="630" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-25)">-</text><text class="breeze-release-management-generate-issue-content-r5" x="36.6" y="630" textLength="61" clip-path="url(#breez [...]
-</text><text class="breeze-release-management-generate-issue-content-r4" x="0" y="654.4" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-26)">│</text><text class="breeze-release-management-generate-issue-content-r5" x="24.4" y="654.4" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-26)">-</text><text class="breeze-release-management-generate-issue-content-r5" x="36.6" y="654.4" textLength="109.8" clip-path="u [...]
-</text><text class="breeze-release-management-generate-issue-content-r4" x="0" y="678.8" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-27)">│</text><text class="breeze-release-management-generate-issue-content-r5" x="24.4" y="678.8" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-27)">-</text><text class="breeze-release-management-generate-issue-content-r5" x="36.6" y="678.8" textLength="97.6" clip-path="ur [...]
-</text><text class="breeze-release-management-generate-issue-content-r4" x="0" y="703.2" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-28)">│</text><text class="breeze-release-management-generate-issue-content-r5" x="24.4" y="703.2" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-28)">-</text><text class="breeze-release-management-generate-issue-content-r5" x="36.6" y="703.2" textLength="61" clip-path="url( [...]
-</text><text class="breeze-release-management-generate-issue-content-r4" x="0" y="727.6" textLength="1464" clip-path="url(#breeze-release-management-generate-issue-content-line-29)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-generate-issue-content-r2" x="1464" y="727.6" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-29)">
+</text><text class="breeze-release-management-generate-issue-content-r5" x="0" y="483.6" textLength="24.4" clip-path="url(#breeze-release-management-generate-issue-content-line-19)">╭─</text><text class="breeze-release-management-generate-issue-content-r5" x="24.4" y="483.6" textLength="195.2" clip-path="url(#breeze-release-management-generate-issue-content-line-19)"> Common options </text><text class="breeze-release-management-generate-issue-content-r5" x="219.6" y="483.6 [...]
+</text><text class="breeze-release-management-generate-issue-content-r5" x="0" y="508" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-20)">│</text><text class="breeze-release-management-generate-issue-content-r4" x="24.4" y="508" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-20)">-</text><text class="breeze-release-management-generate-issue-content-r4" x="36.6" y="508" textLength="85.4" clip-path="url(#bre [...]
+</text><text class="breeze-release-management-generate-issue-content-r5" x="0" y="532.4" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-21)">│</text><text class="breeze-release-management-generate-issue-content-r2" x="390.4" y="532.4" textLength="1049.2" clip-path="url(#breeze-release-management-generate-issue-content-line-21)">variable set. Can be generated with:           [...]
+</text><text class="breeze-release-management-generate-issue-content-r5" x="0" y="556.8" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-22)">│</text><text class="breeze-release-management-generate-issue-content-r2" x="390.4" y="556.8" textLength="1049.2" clip-path="url(#breeze-release-management-generate-issue-content-line-22)">https://github.com/settings/tokens/new?description=Read%20sssues&scopes=repo:status   </text><text cla [...]
+</text><text class="breeze-release-management-generate-issue-content-r5" x="0" y="581.2" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-23)">│</text><text class="breeze-release-management-generate-issue-content-r6" x="390.4" y="581.2" textLength="1049.2" clip-path="url(#breeze-release-management-generate-issue-content-line-23)">(TEXT)                   & [...]
+</text><text class="breeze-release-management-generate-issue-content-r5" x="0" y="605.6" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-24)">│</text><text class="breeze-release-management-generate-issue-content-r4" x="24.4" y="605.6" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-24)">-</text><text class="breeze-release-management-generate-issue-content-r4" x="36.6" y="605.6" textLength="85.4" clip-path="ur [...]
+</text><text class="breeze-release-management-generate-issue-content-r5" x="0" y="630" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-25)">│</text><text class="breeze-release-management-generate-issue-content-r4" x="24.4" y="630" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-25)">-</text><text class="breeze-release-management-generate-issue-content-r4" x="36.6" y="630" textLength="61" clip-path="url(#breez [...]
+</text><text class="breeze-release-management-generate-issue-content-r5" x="0" y="654.4" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-26)">│</text><text class="breeze-release-management-generate-issue-content-r4" x="24.4" y="654.4" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-26)">-</text><text class="breeze-release-management-generate-issue-content-r4" x="36.6" y="654.4" textLength="109.8" clip-path="u [...]
+</text><text class="breeze-release-management-generate-issue-content-r5" x="0" y="678.8" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-27)">│</text><text class="breeze-release-management-generate-issue-content-r4" x="24.4" y="678.8" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-27)">-</text><text class="breeze-release-management-generate-issue-content-r4" x="36.6" y="678.8" textLength="97.6" clip-path="ur [...]
+</text><text class="breeze-release-management-generate-issue-content-r5" x="0" y="703.2" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-28)">│</text><text class="breeze-release-management-generate-issue-content-r4" x="24.4" y="703.2" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-28)">-</text><text class="breeze-release-management-generate-issue-content-r4" x="36.6" y="703.2" textLength="61" clip-path="url( [...]
+</text><text class="breeze-release-management-generate-issue-content-r5" x="0" y="727.6" textLength="1464" clip-path="url(#breeze-release-management-generate-issue-content-line-29)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-release-management-generate-issue-content-r2" x="1464" y="727.6" textLength="12.2" clip-path="url(#breeze-release-management-generate-issue-content-line-29)">
</text>
</g>
</g>
diff --git a/images/breeze/output_release-management_prepare-provider-documentation.svg b/images/breeze/output_release-management_prepare-provider-documentation.svg
index 3523409f38..086fc47889 100644
--- a/images/breeze/output_release-management_prepare-provider-documentation.svg
+++ b/images/breeze/output_release-management_prepare-provider-documentation.svg
@@ -157,21 +157,21 @@
</text><text class="breeze-release-management-prepare-provider-documentation-r3" x="12.2" y="44.4" textLength="85.4" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-1)">Usage: </text><text class="breeze-release-management-prepare-provider-documentation-r1" x="97.6" y="44.4" textLength="707.6" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-1)">breeze release-management prepare-provider-documentation [</text>< [...]
</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="68.8" textLength="1366.4" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-2)">                                                 [...]
</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="93.2" textLength="1293.2" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-3)">                                                 [...]
-</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="117.6" textLength="1439.6" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-4)">                                                &# [...]
-</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="142" textLength="1390.8" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-5)">                                                 [...]
-</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="166.4" textLength="1439.6" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-6)">                                                &# [...]
-</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="190.8" textLength="1354.2" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-7)">                                                &# [...]
-</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="215.2" textLength="1439.6" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-8)">                                                &# [...]
-</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="239.6" textLength="1427.4" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-9)">                                                &# [...]
-</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="264" textLength="1281" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-10)">                                                  [...]
-</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="288.4" textLength="1415.2" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-11)">                                                & [...]
-</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="312.8" textLength="1366.4" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-12)">                                                & [...]
-</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="337.2" textLength="1439.6" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-13)">                                                & [...]
-</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="361.6" textLength="1329.8" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-14)">                                                & [...]
-</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="386" textLength="1366.4" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-15)">                                                 [...]
-</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="410.4" textLength="1366.4" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-16)">                                                & [...]
-</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="434.8" textLength="1366.4" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-17)">                                                & [...]
-</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="459.2" textLength="1024.8" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-18)">                                                & [...]
+</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="117.6" textLength="1317.6" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-4)">                                                &# [...]
+</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="142" textLength="1293.2" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-5)">                                                 [...]
+</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="166.4" textLength="1390.8" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-6)">                                                &# [...]
+</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="190.8" textLength="1390.8" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-7)">                                                &# [...]
+</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="215.2" textLength="1427.4" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-8)">                                                &# [...]
+</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="239.6" textLength="1415.2" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-9)">                                                &# [...]
+</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="264" textLength="1390.8" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-10)">                                                 [...]
+</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="288.4" textLength="1329.8" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-11)">                                                & [...]
+</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="312.8" textLength="1415.2" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-12)">                                                & [...]
+</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="337.2" textLength="1415.2" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-13)">                                                & [...]
+</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="361.6" textLength="1415.2" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-14)">                                                & [...]
+</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="386" textLength="1439.6" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-15)">                                                 [...]
+</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="410.4" textLength="1427.4" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-16)">                                                & [...]
+</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="434.8" textLength="1427.4" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-17)">                                                & [...]
+</text><text class="breeze-release-management-prepare-provider-documentation-r1" x="12.2" y="459.2" textLength="1146.8" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-18)">                                                & [...]
</text><text class="breeze-release-management-prepare-provider-documentation-r2" x="1464" y="483.6" textLength="12.2" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-19)">
</text><text class="breeze-release-management-prepare-provider-documentation-r2" x="12.2" y="508" textLength="97.6" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-20)">Prepare </text><text class="breeze-release-management-prepare-provider-documentation-r4" x="109.8" y="508" textLength="109.8" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-20)">CHANGELOG</text><text class="breeze-release-management-prepare-provider-documen [...]
</text><text class="breeze-release-management-prepare-provider-documentation-r2" x="1464" y="532.4" textLength="12.2" clip-path="url(#breeze-release-management-prepare-provider-documentation-line-21)">
diff --git a/images/breeze/output_release-management_prepare-provider-packages.svg b/images/breeze/output_release-management_prepare-provider-packages.svg
index e8f3061ee1..8d98428323 100644
--- a/images/breeze/output_release-management_prepare-provider-packages.svg
+++ b/images/breeze/output_release-management_prepare-provider-packages.svg
@@ -153,20 +153,20 @@
<text class="breeze-release-management-prepare-provider-packages-r2" x="1464" y="20" textLength="12.2" clip-path="url(#breeze-release-management-prepare-provider-packages-line-0)">
</text><text class="breeze-release-management-prepare-provider-packages-r3" x="12.2" y="44.4" textLength="85.4" clip-path="url(#breeze-release-management-prepare-provider-packages-line-1)">Usage: </text><text class="breeze-release-management-prepare-provider-packages-r1" x="97.6" y="44.4" textLength="646.6" clip-path="url(#breeze-release-management-prepare-provider-packages-line-1)">breeze release-management prepare-provider-packages [</text><text class="breeze-releas [...]
</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="68.8" textLength="1305.4" clip-path="url(#breeze-release-management-prepare-provider-packages-line-2)">                                                  & [...]
-</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="93.2" textLength="1415.2" clip-path="url(#breeze-release-management-prepare-provider-packages-line-3)">                                                  & [...]
-</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="117.6" textLength="1403" clip-path="url(#breeze-release-management-prepare-provider-packages-line-4)">                                                  &# [...]
-</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="142" textLength="1439.6" clip-path="url(#breeze-release-management-prepare-provider-packages-line-5)">                                                  &# [...]
-</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="166.4" textLength="1378.6" clip-path="url(#breeze-release-management-prepare-provider-packages-line-6)">                                                   [...]
-</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="190.8" textLength="1342" clip-path="url(#breeze-release-management-prepare-provider-packages-line-7)">                                                  &# [...]
-</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="215.2" textLength="1439.6" clip-path="url(#breeze-release-management-prepare-provider-packages-line-8)">                                                   [...]
-</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="239.6" textLength="1427.4" clip-path="url(#breeze-release-management-prepare-provider-packages-line-9)">                                                   [...]
-</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="264" textLength="1378.6" clip-path="url(#breeze-release-management-prepare-provider-packages-line-10)">                                                  & [...]
-</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="288.4" textLength="1439.6" clip-path="url(#breeze-release-management-prepare-provider-packages-line-11)">                                                   [...]
-</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="312.8" textLength="1354.2" clip-path="url(#breeze-release-management-prepare-provider-packages-line-12)">                                                   [...]
-</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="337.2" textLength="1415.2" clip-path="url(#breeze-release-management-prepare-provider-packages-line-13)">                                                   [...]
-</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="361.6" textLength="1439.6" clip-path="url(#breeze-release-management-prepare-provider-packages-line-14)">                                                   [...]
-</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="386" textLength="1390.8" clip-path="url(#breeze-release-management-prepare-provider-packages-line-15)">                                                  & [...]
-</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="410.4" textLength="1085.8" clip-path="url(#breeze-release-management-prepare-provider-packages-line-16)">                                                   [...]
+</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="93.2" textLength="1427.4" clip-path="url(#breeze-release-management-prepare-provider-packages-line-3)">                                                  & [...]
+</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="117.6" textLength="1403" clip-path="url(#breeze-release-management-prepare-provider-packages-line-4)">                                                  &# [...]
+</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="142" textLength="1305.4" clip-path="url(#breeze-release-management-prepare-provider-packages-line-5)">                                                  &# [...]
+</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="166.4" textLength="1378.6" clip-path="url(#breeze-release-management-prepare-provider-packages-line-6)">                                                   [...]
+</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="190.8" textLength="1427.4" clip-path="url(#breeze-release-management-prepare-provider-packages-line-7)">                                                   [...]
+</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="215.2" textLength="1427.4" clip-path="url(#breeze-release-management-prepare-provider-packages-line-8)">                                                   [...]
+</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="239.6" textLength="1354.2" clip-path="url(#breeze-release-management-prepare-provider-packages-line-9)">                                                   [...]
+</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="264" textLength="1268.8" clip-path="url(#breeze-release-management-prepare-provider-packages-line-10)">                                                  & [...]
+</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="288.4" textLength="1427.4" clip-path="url(#breeze-release-management-prepare-provider-packages-line-11)">                                                   [...]
+</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="312.8" textLength="1390.8" clip-path="url(#breeze-release-management-prepare-provider-packages-line-12)">                                                   [...]
+</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="337.2" textLength="1439.6" clip-path="url(#breeze-release-management-prepare-provider-packages-line-13)">                                                   [...]
+</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="361.6" textLength="1427.4" clip-path="url(#breeze-release-management-prepare-provider-packages-line-14)">                                                   [...]
+</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="386" textLength="1427.4" clip-path="url(#breeze-release-management-prepare-provider-packages-line-15)">                                                  & [...]
+</text><text class="breeze-release-management-prepare-provider-packages-r1" x="12.2" y="410.4" textLength="1439.6" clip-path="url(#breeze-release-management-prepare-provider-packages-line-16)">                                                   [...]
</text><text class="breeze-release-management-prepare-provider-packages-r2" x="1464" y="434.8" textLength="12.2" clip-path="url(#breeze-release-management-prepare-provider-packages-line-17)">
</text><text class="breeze-release-management-prepare-provider-packages-r2" x="12.2" y="459.2" textLength="585.6" clip-path="url(#breeze-release-management-prepare-provider-packages-line-18)">Prepare sdist/whl packages of Airflow Providers.</text><text class="breeze-release-management-prepare-provider-packages-r2" x="1464" y="459.2" textLength="12.2" clip-path="url(#breeze-release-management-prepare-provider-packages-line-18)">
</text><text class="breeze-release-management-prepare-provider-packages-r2" x="1464" y="483.6" textLength="12.2" clip-path="url(#breeze-release-management-prepare-provider-packages-line-19)">
diff --git a/images/breeze/output_setup.svg b/images/breeze/output_setup.svg
index 91df1eb737..206ba39938 100644
--- a/images/breeze/output_setup.svg
+++ b/images/breeze/output_setup.svg
@@ -35,8 +35,8 @@
.breeze-setup-r1 { fill: #c5c8c6;font-weight: bold }
.breeze-setup-r2 { fill: #c5c8c6 }
.breeze-setup-r3 { fill: #d0b344;font-weight: bold }
-.breeze-setup-r4 { fill: #868887 }
-.breeze-setup-r5 { fill: #68a0b3;font-weight: bold }
+.breeze-setup-r4 { fill: #68a0b3;font-weight: bold }
+.breeze-setup-r5 { fill: #868887 }
.breeze-setup-r6 { fill: #98a84b;font-weight: bold }
</style>
@@ -99,20 +99,20 @@
<g class="breeze-setup-matrix">
<text class="breeze-setup-r2" x="1464" y="20" textLength="12.2" clip-path="url(#breeze-setup-line-0)">
-</text><text class="breeze-setup-r3" x="12.2" y="44.4" textLength="85.4" clip-path="url(#breeze-setup-line-1)">Usage: </text><text class="breeze-setup-r1" x="97.6" y="44.4" textLength="488" clip-path="url(#breeze-setup-line-1)">breeze setup [OPTIONS] COMMAND [ARGS]...</text><text class="breeze-setup-r2" x="1464" y="44.4" textLength="12.2" clip-path="url(#breeze-setup-line-1)">
+</text><text class="breeze-setup-r3" x="12.2" y="44.4" textLength="85.4" clip-path="url(#breeze-setup-line-1)">Usage: </text><text class="breeze-setup-r1" x="97.6" y="44.4" textLength="170.8" clip-path="url(#breeze-setup-line-1)">breeze setup [</text><text class="breeze-setup-r4" x="268.4" y="44.4" textLength="85.4" clip-path="url(#breeze-setup-line-1)">OPTIONS</text><text class="breeze-setup-r1" x="353.8" y="44.4" textLength="24.4" clip-path="url(#breeze-setup-line-1)">]& [...]
</text><text class="breeze-setup-r2" x="1464" y="68.8" textLength="12.2" clip-path="url(#breeze-setup-line-2)">
</text><text class="breeze-setup-r2" x="12.2" y="93.2" textLength="597.8" clip-path="url(#breeze-setup-line-3)">Tools that developers can use to configure Breeze</text><text class="breeze-setup-r2" x="1464" y="93.2" textLength="12.2" clip-path="url(#breeze-setup-line-3)">
</text><text class="breeze-setup-r2" x="1464" y="117.6" textLength="12.2" clip-path="url(#breeze-setup-line-4)">
-</text><text class="breeze-setup-r4" x="0" y="142" textLength="24.4" clip-path="url(#breeze-setup-line-5)">╭─</text><text class="breeze-setup-r4" x="24.4" y="142" textLength="195.2" clip-path="url(#breeze-setup-line-5)"> Common options </text><text class="breeze-setup-r4" x="219.6" y="142" textLength="1220" clip-path="url(#breeze-setup-line-5)">────────────────────────────────────────────────────────────────────────────────────────────────────</text><text class="breeze-set [...]
-</text><text class="breeze-setup-r4" x="0" y="166.4" textLength="12.2" clip-path="url(#breeze-setup-line-6)">│</text><text class="breeze-setup-r5" x="24.4" y="166.4" textLength="12.2" clip-path="url(#breeze-setup-line-6)">-</text><text class="breeze-setup-r5" x="36.6" y="166.4" textLength="61" clip-path="url(#breeze-setup-line-6)">-help</text><text class="breeze-setup-r6" x="122" y="166.4" textLength="24.4" clip-path="url(#breeze-setup-line-6)">-h</text><text class="breeze-setup-r2" x="1 [...]
-</text><text class="breeze-setup-r4" x="0" y="190.8" textLength="1464" clip-path="url(#breeze-setup-line-7)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-setup-r2" x="1464" y="190.8" textLength="12.2" clip-path="url(#breeze-setup-line-7)">
-</text><text class="breeze-setup-r4" x="0" y="215.2" textLength="24.4" clip-path="url(#breeze-setup-line-8)">╭─</text><text class="breeze-setup-r4" x="24.4" y="215.2" textLength="122" clip-path="url(#breeze-setup-line-8)"> Commands </text><text class="breeze-setup-r4" x="146.4" y="215.2" textLength="1293.2" clip-path="url(#breeze-setup-line-8)">──────────────────────────────────────────────────────────────────────────────────────────────────────────</text><text class="breeze-se [...]
-</text><text class="breeze-setup-r4" x="0" y="239.6" textLength="12.2" clip-path="url(#breeze-setup-line-9)">│</text><text class="breeze-setup-r5" x="24.4" y="239.6" textLength="390.4" clip-path="url(#breeze-setup-line-9)">autocomplete                    </text><text class="breeze-setup-r2" x="439.2" y="239.6" textLength="1000.4" clip-path="url(#breeze-setup-line-9)">Enables autocompl [...]
-</text><text class="breeze-setup-r4" x="0" y="264" textLength="12.2" clip-path="url(#breeze-setup-line-10)">│</text><text class="breeze-setup-r5" x="24.4" y="264" textLength="390.4" clip-path="url(#breeze-setup-line-10)">config                          </text><text class="breeze-setup-r2" x="439.2" y="264" textLength="1000.4" clip-path="url(#breeze-setup-line- [...]
-</text><text class="breeze-setup-r4" x="0" y="288.4" textLength="12.2" clip-path="url(#breeze-setup-line-11)">│</text><text class="breeze-setup-r5" x="24.4" y="288.4" textLength="390.4" clip-path="url(#breeze-setup-line-11)">regenerate-command-images       </text><text class="breeze-setup-r2" x="439.2" y="288.4" textLength="1000.4" clip-path="url(#breeze-setup-line-11)">Regenerate breeze command images.       [...]
-</text><text class="breeze-setup-r4" x="0" y="312.8" textLength="12.2" clip-path="url(#breeze-setup-line-12)">│</text><text class="breeze-setup-r5" x="24.4" y="312.8" textLength="390.4" clip-path="url(#breeze-setup-line-12)">self-upgrade                    </text><text class="breeze-setup-r2" x="439.2" y="312.8" textLength="1000.4" clip-path="url(#breeze-setup-line-12)">Self upgrade&# [...]
-</text><text class="breeze-setup-r4" x="0" y="337.2" textLength="12.2" clip-path="url(#breeze-setup-line-13)">│</text><text class="breeze-setup-r5" x="24.4" y="337.2" textLength="390.4" clip-path="url(#breeze-setup-line-13)">version                         </text><text class="breeze-setup-r2" x="439.2" y="337.2" textLength="1000.4" clip-path="url(#breeze-setup-line [...]
-</text><text class="breeze-setup-r4" x="0" y="361.6" textLength="1464" clip-path="url(#breeze-setup-line-14)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-setup-r2" x="1464" y="361.6" textLength="12.2" clip-path="url(#breeze-setup-line-14)">
+</text><text class="breeze-setup-r5" x="0" y="142" textLength="24.4" clip-path="url(#breeze-setup-line-5)">╭─</text><text class="breeze-setup-r5" x="24.4" y="142" textLength="195.2" clip-path="url(#breeze-setup-line-5)"> Common options </text><text class="breeze-setup-r5" x="219.6" y="142" textLength="1220" clip-path="url(#breeze-setup-line-5)">────────────────────────────────────────────────────────────────────────────────────────────────────</text><text class="breeze-set [...]
+</text><text class="breeze-setup-r5" x="0" y="166.4" textLength="12.2" clip-path="url(#breeze-setup-line-6)">│</text><text class="breeze-setup-r4" x="24.4" y="166.4" textLength="12.2" clip-path="url(#breeze-setup-line-6)">-</text><text class="breeze-setup-r4" x="36.6" y="166.4" textLength="61" clip-path="url(#breeze-setup-line-6)">-help</text><text class="breeze-setup-r6" x="122" y="166.4" textLength="24.4" clip-path="url(#breeze-setup-line-6)">-h</text><text class="breeze-setup-r2" x="1 [...]
+</text><text class="breeze-setup-r5" x="0" y="190.8" textLength="1464" clip-path="url(#breeze-setup-line-7)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-setup-r2" x="1464" y="190.8" textLength="12.2" clip-path="url(#breeze-setup-line-7)">
+</text><text class="breeze-setup-r5" x="0" y="215.2" textLength="24.4" clip-path="url(#breeze-setup-line-8)">╭─</text><text class="breeze-setup-r5" x="24.4" y="215.2" textLength="122" clip-path="url(#breeze-setup-line-8)"> Commands </text><text class="breeze-setup-r5" x="146.4" y="215.2" textLength="1293.2" clip-path="url(#breeze-setup-line-8)">──────────────────────────────────────────────────────────────────────────────────────────────────────────</text><text class="breeze-se [...]
+</text><text class="breeze-setup-r5" x="0" y="239.6" textLength="12.2" clip-path="url(#breeze-setup-line-9)">│</text><text class="breeze-setup-r4" x="24.4" y="239.6" textLength="390.4" clip-path="url(#breeze-setup-line-9)">autocomplete                    </text><text class="breeze-setup-r2" x="439.2" y="239.6" textLength="1000.4" clip-path="url(#breeze-setup-line-9)">Enables autocompl [...]
+</text><text class="breeze-setup-r5" x="0" y="264" textLength="12.2" clip-path="url(#breeze-setup-line-10)">│</text><text class="breeze-setup-r4" x="24.4" y="264" textLength="390.4" clip-path="url(#breeze-setup-line-10)">config                          </text><text class="breeze-setup-r2" x="439.2" y="264" textLength="683.2" clip-path="url(#breeze-setup-line-1 [...]
+</text><text class="breeze-setup-r5" x="0" y="288.4" textLength="12.2" clip-path="url(#breeze-setup-line-11)">│</text><text class="breeze-setup-r4" x="24.4" y="288.4" textLength="390.4" clip-path="url(#breeze-setup-line-11)">regenerate-command-images       </text><text class="breeze-setup-r2" x="439.2" y="288.4" textLength="1000.4" clip-path="url(#breeze-setup-line-11)">Regenerate breeze command images.       [...]
+</text><text class="breeze-setup-r5" x="0" y="312.8" textLength="12.2" clip-path="url(#breeze-setup-line-12)">│</text><text class="breeze-setup-r4" x="24.4" y="312.8" textLength="390.4" clip-path="url(#breeze-setup-line-12)">self-upgrade                    </text><text class="breeze-setup-r2" x="439.2" y="312.8" textLength="1000.4" clip-path="url(#breeze-setup-line-12)">Self upgrade&# [...]
+</text><text class="breeze-setup-r5" x="0" y="337.2" textLength="12.2" clip-path="url(#breeze-setup-line-13)">│</text><text class="breeze-setup-r4" x="24.4" y="337.2" textLength="390.4" clip-path="url(#breeze-setup-line-13)">version                         </text><text class="breeze-setup-r2" x="439.2" y="337.2" textLength="1000.4" clip-path="url(#breeze-setup-line [...]
+</text><text class="breeze-setup-r5" x="0" y="361.6" textLength="1464" clip-path="url(#breeze-setup-line-14)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-setup-r2" x="1464" y="361.6" textLength="12.2" clip-path="url(#breeze-setup-line-14)">
</text>
</g>
</g>
diff --git a/images/breeze/output_setup_regenerate-command-images.svg b/images/breeze/output_setup_regenerate-command-images.svg
index 3ecbb459e5..a3231713af 100644
--- a/images/breeze/output_setup_regenerate-command-images.svg
+++ b/images/breeze/output_setup_regenerate-command-images.svg
@@ -35,8 +35,8 @@
.breeze-setup-regenerate-command-images-r1 { fill: #c5c8c6;font-weight: bold }
.breeze-setup-regenerate-command-images-r2 { fill: #c5c8c6 }
.breeze-setup-regenerate-command-images-r3 { fill: #d0b344;font-weight: bold }
-.breeze-setup-regenerate-command-images-r4 { fill: #868887 }
-.breeze-setup-regenerate-command-images-r5 { fill: #68a0b3;font-weight: bold }
+.breeze-setup-regenerate-command-images-r4 { fill: #68a0b3;font-weight: bold }
+.breeze-setup-regenerate-command-images-r5 { fill: #868887 }
.breeze-setup-regenerate-command-images-r6 { fill: #8d7b39 }
.breeze-setup-regenerate-command-images-r7 { fill: #98a84b;font-weight: bold }
</style>
@@ -142,34 +142,34 @@
<g class="breeze-setup-regenerate-command-images-matrix">
<text class="breeze-setup-regenerate-command-images-r2" x="1464" y="20" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-0)">
-</text><text class="breeze-setup-regenerate-command-images-r3" x="12.2" y="44.4" textLength="85.4" clip-path="url(#breeze-setup-regenerate-command-images-line-1)">Usage: </text><text class="breeze-setup-regenerate-command-images-r1" x="97.6" y="44.4" textLength="585.6" clip-path="url(#breeze-setup-regenerate-command-images-line-1)">breeze setup regenerate-command-images [OPTIONS]</text><text class="breeze-setup-regenerate-command-images-r2" x="1464" y="44.4" textLengt [...]
+</text><text class="breeze-setup-regenerate-command-images-r3" x="12.2" y="44.4" textLength="85.4" clip-path="url(#breeze-setup-regenerate-command-images-line-1)">Usage: </text><text class="breeze-setup-regenerate-command-images-r1" x="97.6" y="44.4" textLength="488" clip-path="url(#breeze-setup-regenerate-command-images-line-1)">breeze setup regenerate-command-images [</text><text class="breeze-setup-regenerate-command-images-r4" x="585.6" y="44.4" textLength="85.4" [...]
</text><text class="breeze-setup-regenerate-command-images-r2" x="1464" y="68.8" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-2)">
</text><text class="breeze-setup-regenerate-command-images-r2" x="12.2" y="93.2" textLength="402.6" clip-path="url(#breeze-setup-regenerate-command-images-line-3)">Regenerate breeze command images.</text><text class="breeze-setup-regenerate-command-images-r2" x="1464" y="93.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-3)">
</text><text class="breeze-setup-regenerate-command-images-r2" x="1464" y="117.6" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-4)">
-</text><text class="breeze-setup-regenerate-command-images-r4" x="0" y="142" textLength="24.4" clip-path="url(#breeze-setup-regenerate-command-images-line-5)">╭─</text><text class="breeze-setup-regenerate-command-images-r4" x="24.4" y="142" textLength="329.4" clip-path="url(#breeze-setup-regenerate-command-images-line-5)"> Image regeneration option </text><text class="breeze-setup-regenerate-command-images-r4" x="353.8" y="142" textLength="1085.8" clip-path="url(#bree [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" x="0" y="166.4" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-6)">│</text><text class="breeze-setup-regenerate-command-images-r5" x="24.4" y="166.4" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-6)">-</text><text class="breeze-setup-regenerate-command-images-r5" x="36.6" y="166.4" textLength="73.2" clip-path="url(#breeze-setup-regenerate-command-images-line-6)">- [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" x="0" y="190.8" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-7)">│</text><text class="breeze-setup-regenerate-command-images-r5" x="24.4" y="190.8" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-7)">-</text><text class="breeze-setup-regenerate-command-images-r5" x="36.6" y="190.8" textLength="97.6" clip-path="url(#breeze-setup-regenerate-command-images-line-7)">- [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" x="0" y="215.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-8)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="215.2" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-8)">(main | build-docs | ci:find-newer-dependencies | ci:fix-ownership | ci:free-space |       [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" x="0" y="239.6" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-9)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="239.6" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-9)">ci:get-workflow-info | ci:resource-check | ci:selective-check | ci | ci-image:build | ci-image:pull </text><te [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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)">| ci-image:verify | ci-image | cleanup | compile-www-assets | exec | k8s:build-k8s-image |    [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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)">k8s:configure-cluster | k8s:create-cluster | k8s:delete-cluster | k8s:deploy-airflow | k8s:k9s |    [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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:logs | k8s:run-complete-tests | k8s:setup-env | k8s:shell | k8s:status | k8s:tests |   &# [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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)">k8s:upload-k8s-image | k8s | prod-image:build | prod-image:pull | prod-image:verify | prod-image |  [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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 | release-management:generate-issue-content |           [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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:prepare-airflow-package | release-management:prepare-provider-documentation |    </text><text class="breeze-setup [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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-provider-packages | release-management:release-prod-images |          & [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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:verify-provider-packages | release-management | setup:autocomplete | setup:config</text><text class="breeze-setup- [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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)">| setup:regenerate-command-images | setup:self-upgrade | setup:version | setup | shell |    & [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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)">start-airflow | static-checks | stop | testing:docker-compose-tests | testing:helm-tests |     [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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)">testing:integration-tests | testing:tests | testing)                 [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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-r5" x="24.4" y="532.4" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-21)">-</text><text class="breeze-setup-regenerate-command-images-r5" x="36.6" y="532.4" textLength="73.2" clip-path="url(#breeze-setup-regenerate-command-images-line-21) [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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-r2" x="219.6" y="556.8" textLength="170.8" clip-path="url(#breeze-setup-regenerate-command-images-line-22)">together with </text><text class="breeze-setup-regenerate-command-images-r5" x="390.4" y="556.8" textLength="12.2" clip-path="url(#breeze-setup-regenera [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" x="0" y="581.2" textLength="1464" clip-path="url(#breeze-setup-regenerate-command-images-line-23)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-setup-regenerate-command-images-r2" x="1464" y="581.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-23)">
-</text><text class="breeze-setup-regenerate-command-images-r4" x="0" y="605.6" textLength="24.4" clip-path="url(#breeze-setup-regenerate-command-images-line-24)">╭─</text><text class="breeze-setup-regenerate-command-images-r4" x="24.4" y="605.6" textLength="195.2" clip-path="url(#breeze-setup-regenerate-command-images-line-24)"> Common options </text><text class="breeze-setup-regenerate-command-images-r4" x="219.6" y="605.6" textLength="1220" clip-path="url(#breeze-setup-r [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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-r5" 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-r5" x="36.6" y="630" textLength="97.6" clip-path="url(#breeze-setup-regenerate-command-images-line-25)">-ver [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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-r5" 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-r5" x="36.6" y="654.4" textLength="48.8" clip-path="url(#breeze-setup-regenerate-command-images-line-26) [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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-r5" x="24.4" 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="36.6" y="678.8" textLength="61" clip-path="url(#breeze-setup-regenerate-command-images-line-27)"> [...]
-</text><text class="breeze-setup-regenerate-command-images-r4" 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="142" textLength="24.4" clip-path="url(#breeze-setup-regenerate-command-images-line-5)">╭─</text><text class="breeze-setup-regenerate-command-images-r5" x="24.4" y="142" textLength="329.4" clip-path="url(#breeze-setup-regenerate-command-images-line-5)"> Image regeneration option </text><text class="breeze-setup-regenerate-command-images-r5" x="353.8" y="142" textLength="1085.8" clip-path="url(#bree [...]
+</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="166.4" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-6)">│</text><text class="breeze-setup-regenerate-command-images-r4" x="24.4" y="166.4" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-6)">-</text><text class="breeze-setup-regenerate-command-images-r4" x="36.6" y="166.4" textLength="73.2" clip-path="url(#breeze-setup-regenerate-command-images-line-6)">- [...]
+</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="190.8" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-7)">│</text><text class="breeze-setup-regenerate-command-images-r4" x="24.4" y="190.8" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-7)">-</text><text class="breeze-setup-regenerate-command-images-r4" x="36.6" y="190.8" textLength="97.6" clip-path="url(#breeze-setup-regenerate-command-images-line-7)">- [...]
+</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="215.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-8)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="215.2" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-8)">(main | build-docs | ci:find-newer-dependencies | ci:fix-ownership | ci:free-space |       [...]
+</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="239.6" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-9)">│</text><text class="breeze-setup-regenerate-command-images-r6" x="219.6" y="239.6" textLength="1220" clip-path="url(#breeze-setup-regenerate-command-images-line-9)">ci:get-workflow-info | ci:resource-check | ci:selective-check | ci | ci-image:build | ci-image:pull </text><te [...]
+</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)">| ci-image:verify | ci-image | cleanup | compile-www-assets | exec | k8s:build-k8s-image |    [...]
+</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)">k8s:configure-cluster | k8s:create-cluster | k8s:delete-cluster | k8s:deploy-airflow | k8s:k9s |    [...]
+</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:logs | k8s:run-complete-tests | k8s:setup-env | k8s:shell | k8s:status | k8s:tests |   &# [...]
+</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)">k8s:upload-k8s-image | k8s | prod-image:build | prod-image:pull | prod-image:verify | prod-image |  [...]
+</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 | release-management:generate-issue-content |           [...]
+</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:prepare-airflow-package | release-management:prepare-provider-documentation |    </text><text class="breeze-setup [...]
+</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-provider-packages | release-management:release-prod-images |          & [...]
+</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:verify-provider-packages | release-management | setup:autocomplete | setup:config</text><text class="breeze-setup- [...]
+</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)">| setup:regenerate-command-images | setup:self-upgrade | setup:version | setup | shell |    & [...]
+</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)">start-airflow | static-checks | stop | testing:docker-compose-tests | testing:helm-tests |     [...]
+</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)">testing:integration-tests | testing:tests | testing)                 [...]
+</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-r4" x="24.4" y="532.4" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-21)">-</text><text class="breeze-setup-regenerate-command-images-r4" x="36.6" y="532.4" textLength="73.2" clip-path="url(#breeze-setup-regenerate-command-images-line-21) [...]
+</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-r2" x="219.6" y="556.8" textLength="170.8" clip-path="url(#breeze-setup-regenerate-command-images-line-22)">together with </text><text class="breeze-setup-regenerate-command-images-r4" x="390.4" y="556.8" textLength="12.2" clip-path="url(#breeze-setup-regenera [...]
+</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="581.2" textLength="1464" clip-path="url(#breeze-setup-regenerate-command-images-line-23)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-setup-regenerate-command-images-r2" x="1464" y="581.2" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-23)">
+</text><text class="breeze-setup-regenerate-command-images-r5" x="0" y="605.6" textLength="24.4" clip-path="url(#breeze-setup-regenerate-command-images-line-24)">╭─</text><text class="breeze-setup-regenerate-command-images-r5" x="24.4" y="605.6" textLength="195.2" clip-path="url(#breeze-setup-regenerate-command-images-line-24)"> Common options </text><text class="breeze-setup-regenerate-command-images-r5" x="219.6" y="605.6" textLength="1220" clip-path="url(#breeze-setup-r [...]
+</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="97.6" clip-path="url(#breeze-setup-regenerate-command-images-line-25)">-ver [...]
+</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="48.8" 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-r4" x="24.4" y="678.8" textLength="12.2" clip-path="url(#breeze-setup-regenerate-command-images-line-27)">-</text><text class="breeze-setup-regenerate-command-images-r4" x="36.6" y="678.8" textLength="61" 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="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>
</g>
</g>
diff --git a/setup.py b/setup.py
index 322440ab98..9411bbb0e2 100644
--- a/setup.py
+++ b/setup.py
@@ -449,6 +449,9 @@ devel_hadoop = get_unique_dependency_list(
devel,
get_provider_dependencies("apache.hdfs"),
get_provider_dependencies("apache.hive"),
+ get_provider_dependencies("apache.hdfs"),
+ get_provider_dependencies("apache.hive"),
+ get_provider_dependencies("apache.impala"),
kerberos,
get_provider_dependencies("presto"),
webhdfs,
@@ -582,6 +585,7 @@ ALL_DB_PROVIDERS = [
"apache.druid",
"apache.hdfs",
"apache.hive",
+ "apache.impala",
"apache.pinot",
"arangodb",
"cloudant",
diff --git a/tests/providers/apache/impala/__init__.py b/tests/providers/apache/impala/__init__.py
new file mode 100644
index 0000000000..13a83393a9
--- /dev/null
+++ b/tests/providers/apache/impala/__init__.py
@@ -0,0 +1,16 @@
+# 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.
diff --git a/tests/providers/apache/impala/hooks/__init__.py b/tests/providers/apache/impala/hooks/__init__.py
new file mode 100644
index 0000000000..13a83393a9
--- /dev/null
+++ b/tests/providers/apache/impala/hooks/__init__.py
@@ -0,0 +1,16 @@
+# 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.
diff --git a/tests/providers/apache/impala/hooks/test_impala.py b/tests/providers/apache/impala/hooks/test_impala.py
new file mode 100644
index 0000000000..829a543e08
--- /dev/null
+++ b/tests/providers/apache/impala/hooks/test_impala.py
@@ -0,0 +1,93 @@
+# 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
+
+from unittest.mock import MagicMock, patch
+
+import pytest
+
+from airflow.models import Connection
+from airflow.providers.apache.impala.hooks.impala import ImpalaHook
+
+
+@pytest.fixture()
+def impala_hook_fixture() -> ImpalaHook:
+ hook = ImpalaHook()
+ mock_get_conn = MagicMock()
+ mock_get_conn.return_value.cursor = MagicMock()
+ mock_get_conn.return_value.cursor.return_value.rowcount = 2
+ hook.get_conn = mock_get_conn
+
+ return hook
+
+
+@patch("airflow.providers.apache.impala.hooks.impala.connect")
+def test_get_conn(mock_connect):
+ hook = ImpalaHook()
+ hook.get_connection = MagicMock(
+ return_value=Connection(
+ login="login", password="password", host="host", port=21050, schema="test", extra={"ssl": True}
+ )
+ )
+ hook.get_conn()
+ mock_connect.assert_called_once_with(
+ host="host", port=21050, user="login", password="password", database="test", ssl=True
+ )
+
+
+@patch("airflow.providers.common.sql.hooks.sql.DbApiHook.insert_rows")
+def test_insert_rows(mock_insert_rows, impala_hook_fixture):
+ table = "table"
+ rows = [("hello",), ("world",)]
+ target_fields = None
+ commit_every = 10
+ impala_hook_fixture.insert_rows(table, rows, target_fields, commit_every)
+ mock_insert_rows.assert_called_once_with(table, rows, None, 10)
+
+
+def test_get_first_record(impala_hook_fixture):
+ statement = "SQL"
+ result_sets = [("row1",), ("row2",)]
+ impala_hook_fixture.get_conn.return_value.cursor.return_value.fetchone.return_value = result_sets[0]
+
+ assert result_sets[0] == impala_hook_fixture.get_first(statement)
+ impala_hook_fixture.get_conn.return_value.cursor.return_value.execute.assert_called_once_with(statement)
+
+
+def test_get_records(impala_hook_fixture):
+ statement = "SQL"
+ result_sets = [("row1",), ("row2",)]
+ impala_hook_fixture.get_conn.return_value.cursor.return_value.fetchall.return_value = result_sets
+
+ assert result_sets == impala_hook_fixture.get_records(statement)
+ impala_hook_fixture.get_conn.return_value.cursor.return_value.execute.assert_called_once_with(statement)
+
+
+def test_get_pandas_df(impala_hook_fixture):
+ statement = "SQL"
+ column = "col"
+ result_sets = [("row1",), ("row2",)]
+ impala_hook_fixture.get_conn.return_value.cursor.return_value.description = [(column,)]
+ impala_hook_fixture.get_conn.return_value.cursor.return_value.fetchall.return_value = result_sets
+ df = impala_hook_fixture.get_pandas_df(statement)
+
+ assert column == df.columns[0]
+
+ assert result_sets[0][0] == df.values.tolist()[0][0]
+ assert result_sets[1][0] == df.values.tolist()[1][0]
+
+ impala_hook_fixture.get_conn.return_value.cursor.return_value.execute.assert_called_once_with(statement)