This is an automated email from the ASF dual-hosted git repository.
potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/main by this push:
new 67a24aed68 Disable provider packages building for non-main branch
builds (#25056)
67a24aed68 is described below
commit 67a24aed68c74aee2706d2c7b6b029a5846f0d55
Author: Jarek Potiuk <[email protected]>
AuthorDate: Tue Jul 19 14:37:44 2022 +0200
Disable provider packages building for non-main branch builds (#25056)
* Disable provider packages building for non-main branch builds
When running the builds from non-main, we do not want to use
provider packages built locally, but we want to install those from
PyPI. This is achieved by skipping the step of building providers
in case default branch is not main.
During this change it was also discovered that we do not need
AIRFLOW_FROM_CONTEXT flag to indicate whether airflow is
among those being installed from docker-context files. This is
now detected automatically and airflow is installed from Pypi
if not installed from docker context files. Providers
and airflow are automatically detected and installed if they are
present.
Installing pre-cached dependencies from GitHub is skipped in
case docker-context-files are used.
---
.github/workflows/build-images.yml | 5 +-
.github/workflows/ci.yml | 19 +-
Dockerfile | 29 +-
IMAGES.rst | 3 +-
.../commands/production_image_commands.py | 9 +-
.../src/airflow_breeze/params/build_prod_params.py | 22 +-
dev/refresh_images.sh | 2 -
docs/docker-stack/build-arg-ref.rst | 5 -
docs/docker-stack/changelog.rst | 3 +-
images/breeze/output-build-prod-image.svg | 352 ++++++++++-----------
images/breeze/output-commands-hash.txt | 2 +-
scripts/ci/libraries/_initialization.sh | 7 -
12 files changed, 208 insertions(+), 250 deletions(-)
diff --git a/.github/workflows/build-images.yml
b/.github/workflows/build-images.yml
index b675e9bb43..c9ebd3c1d0 100644
--- a/.github/workflows/build-images.yml
+++ b/.github/workflows/build-images.yml
@@ -319,12 +319,10 @@ ${{ hashFiles('.pre-commit-config.yaml') }}"
key:
"pre-commit-${{steps.host-python-version.outputs.host-python-version}}-\
${{ hashFiles('.pre-commit-config.yaml') }}"
restore-keys:
pre-commit-${{steps.host-python-version.outputs.host-python-version}}
- if: needs.build-info.outputs.default-branch == 'main'
- name: "Regenerate dependencies in case they was modified manually so
that we can build an image"
run: >
breeze static-checks --type update-providers-dependencies --all-files
--show-diff-on-failure --color always || true
- if: needs.build-info.outputs.default-branch == 'main'
- name: >
Pull CI image for PROD build:
${{ needs.build-info.outputs.default-python-version }}:${{
env.IMAGE_TAG_FOR_THE_BUILD }}
@@ -341,6 +339,7 @@ ${{ hashFiles('.pre-commit-config.yaml') }}"
--package-list-file ./scripts/ci/installed_providers.txt
--package-format wheel
--version-suffix-for-pypi dev0
+ if: needs.build-info.outputs.default-branch == 'main'
- name: "Prepare airflow package"
run: breeze prepare-airflow-package --package-format wheel
--version-suffix-for-pypi dev0
- name: "Move dist packages to docker-context files"
@@ -354,8 +353,6 @@ ${{ hashFiles('.pre-commit-config.yaml') }}"
--tag-as-latest
--push-image
--install-packages-from-context
- --disable-airflow-repo-cache
- --airflow-is-in-context
env:
UPGRADE_TO_NEWER_DEPENDENCIES: ${{
needs.build-info.outputs.upgrade-to-newer-dependencies }}
DOCKER_CACHE: ${{ needs.build-info.outputs.cache-directive }}
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 1f7613c412..ceb0c15c93 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -434,7 +434,9 @@ ${{ hashFiles('.pre-commit-config.yaml') }}"
breeze prepare-provider-packages
--package-list-file ./scripts/ci/installed_providers.txt
--package-format wheel --version-suffix-for-pypi dev0
- if: needs.build-info.outputs.in-workflow-build == 'true'
+ if: >
+ needs.build-info.outputs.in-workflow-build == 'true' &&
+ needs.build-info.outputs.default-branch == 'main'
- name: "Prepare airflow package"
run: breeze prepare-airflow-package --package-format wheel
--version-suffix-for-pypi dev0
if: needs.build-info.outputs.in-workflow-build == 'true'
@@ -450,8 +452,6 @@ ${{ hashFiles('.pre-commit-config.yaml') }}"
--run-in-parallel
--push-image
--install-packages-from-context
- --disable-airflow-repo-cache
- --airflow-is-in-context
env:
UPGRADE_TO_NEWER_DEPENDENCIES: ${{
needs.build-info.outputs.upgrade-to-newer-dependencies }}
DOCKER_CACHE: ${{ needs.build-info.outputs.cache-directive }}
@@ -1720,6 +1720,10 @@ ${{ hashFiles('.pre-commit-config.yaml') }}"
IMAGE_TAG: ${{ env.IMAGE_TAG_FOR_THE_BUILD }}
- name: "Cleanup dist and context file"
run: rm -fv ./dist/* ./docker-context-files/*
+ - name: "Prepare airflow package for PROD build"
+ run: breeze prepare-airflow-package --package-format wheel
+ env:
+ VERSION_SUFFIX_FOR_PYPI: "dev0"
- name: "Prepare providers packages for PROD build"
run: >
breeze prepare-provider-packages
@@ -1727,10 +1731,7 @@ ${{ hashFiles('.pre-commit-config.yaml') }}"
--package-format wheel
env:
VERSION_SUFFIX_FOR_PYPI: "dev0"
- - name: "Prepare airflow package for PROD build"
- run: breeze prepare-airflow-package --package-format wheel
- env:
- VERSION_SUFFIX_FOR_PYPI: "dev0"
+ if: needs.build-info.outputs.default-branch == 'main'
- name: "Start ARM instance"
run: ./scripts/ci/images/ci_start_arm_instance_and_connect_to_docker.sh
if: matrix.platform == 'linux/arm64'
@@ -1746,17 +1747,17 @@ ${{ hashFiles('.pre-commit-config.yaml') }}"
PYTHON_MAJOR_MINOR_VERSION: ${{ matrix.python-version }}
- name: "Move dist packages to docker-context files"
run: mv -v ./dist/*.whl ./docker-context-files
+ if: needs.build-info.outputs.default-branch == 'main'
- name: "Push PROD cache ${{ matrix.python-version }} ${{
matrix.platform }}"
run: >
breeze build-prod-image
--builder airflow_cache
- --airflow-is-in-context
--install-packages-from-context
--prepare-buildx-cache
- --disable-airflow-repo-cache
--platform ${{ matrix.platform }}
env:
PYTHON_MAJOR_MINOR_VERSION: ${{ matrix.python-version }}
+ if: needs.build-info.outputs.default-branch == 'main'
- name: "Stop ARM instance"
run: ./scripts/ci/images/ci_stop_arm_instance.sh
if: always() && matrix.platform == 'linux/arm64'
diff --git a/Dockerfile b/Dockerfile
index fdcbb6fa11..b4ddddef80 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1283,16 +1283,23 @@ ENV AIRFLOW_PIP_VERSION=${AIRFLOW_PIP_VERSION} \
COPY --from=scripts common.sh install_pip_version.sh \
install_airflow_dependencies_from_branch_tip.sh /scripts/docker/
+# We can set this value to true in case we want to install .whl/.tar.gz
packages placed in the
+# docker-context-files folder. This can be done for both additional packages
you want to install
+# as well as Airflow and Provider packages (it will be automatically detected
if airflow
+# is installed from docker-context files rather than from PyPI)
+ARG INSTALL_PACKAGES_FROM_CONTEXT="false"
+
# In case of Production build image segment we want to pre-install main
version of airflow
# dependencies from GitHub so that we do not have to always reinstall it from
the scratch.
# The Airflow (and providers in case INSTALL_PROVIDERS_FROM_SOURCES is "false")
# are uninstalled, only dependencies remain
# the cache is only used when "upgrade to newer dependencies" is not set to
automatically
-# account for removed dependencies (we do not install them in the first place)
-# Upgrade to specific PIP version
+# account for removed dependencies (we do not install them in the first place)
and in case
+# INSTALL_PACKAGES_FROM_CONTEXT is not set (because then caching it from main
makes no sense).
RUN bash /scripts/docker/install_pip_version.sh; \
if [[ ${AIRFLOW_PRE_CACHED_PIP_PACKAGES} == "true" && \
- ${UPGRADE_TO_NEWER_DEPENDENCIES} == "false" ]]; then \
+ ${INSTALL_PACKAGES_FROM_CONTEXT} == "false" && \
+ ${UPGRADE_TO_NEWER_DEPENDENCIES} == "false" ]]; then \
bash /scripts/docker/install_airflow_dependencies_from_branch_tip.sh; \
fi
@@ -1302,8 +1309,7 @@ COPY --chown=airflow:0 ${AIRFLOW_SOURCES_WWW_FROM}
${AIRFLOW_SOURCES_WWW_TO}
# hadolint ignore=SC2086, SC2010
RUN if [[ ${AIRFLOW_INSTALLATION_METHOD} == "." ]]; then \
# only prepare node modules and compile assets if the prod image is
build from sources
- # otherwise they are already compiled-in. We should do it in one step
with removing artifacts \
- # as we want to keep the final image small
+ # otherwise they are already compiled-in the package.
bash /scripts/docker/prepare_node_modules.sh; \
REMOVE_ARTIFACTS="true" BUILD_TYPE="prod" bash
/scripts/docker/compile_www_assets.sh; \
# Copy generated dist folder (otherwise it will be overridden by the
COPY step below)
@@ -1319,14 +1325,7 @@ RUN if [[ ${AIRFLOW_INSTALLATION_METHOD} == "." ]]; then
\
# Add extra python dependencies
ARG ADDITIONAL_PYTHON_DEPS=""
-# We can set this value to true in case we want to install .whl .tar.gz
packages placed in the
-# docker-context-files folder. This can be done for both - additional packages
you want to install
-# and for airflow as well (you have to set AIRFLOW_IS_IN_CONTEXT to true in
this case)
-ARG INSTALL_PACKAGES_FROM_CONTEXT="false"
-# By default we install latest airflow from PyPI or sources. You can set this
parameter to false
-# if Airflow is in the .whl or .tar.gz packages placed in
`docker-context-files` folder and you want
-# to skip installing Airflow/Providers from PyPI or sources.
-ARG AIRFLOW_IS_IN_CONTEXT="false"
+
# Those are additional constraints that are needed for some extras but we do
not want to
# Force them on the main Airflow package.
# * dill<0.3.3 required by apache-beam
@@ -1334,7 +1333,6 @@ ARG EAGER_UPGRADE_ADDITIONAL_REQUIREMENTS="dill<0.3.3"
ENV ADDITIONAL_PYTHON_DEPS=${ADDITIONAL_PYTHON_DEPS} \
INSTALL_PACKAGES_FROM_CONTEXT=${INSTALL_PACKAGES_FROM_CONTEXT} \
- AIRFLOW_IS_IN_CONTEXT=${AIRFLOW_IS_IN_CONTEXT} \
EAGER_UPGRADE_ADDITIONAL_REQUIREMENTS=${EAGER_UPGRADE_ADDITIONAL_REQUIREMENTS}
WORKDIR ${AIRFLOW_HOME}
@@ -1345,7 +1343,8 @@ COPY --from=scripts install_from_docker_context_files.sh
install_airflow.sh \
# hadolint ignore=SC2086, SC2010
RUN if [[ ${INSTALL_PACKAGES_FROM_CONTEXT} == "true" ]]; then \
bash /scripts/docker/install_from_docker_context_files.sh; \
- elif [[ ${AIRFLOW_IS_IN_CONTEXT} == "false" ]]; then \
+ fi; \
+ if ! airflow version 2>/dev/null >/dev/null; then \
bash /scripts/docker/install_airflow.sh; \
fi; \
if [[ -n "${ADDITIONAL_PYTHON_DEPS}" ]]; then \
diff --git a/IMAGES.rst b/IMAGES.rst
index 2f9fc7234b..8819851427 100644
--- a/IMAGES.rst
+++ b/IMAGES.rst
@@ -165,8 +165,7 @@ You can also skip installing airflow and install it from
locally provided files
.. code-block:: bash
- breeze build-prod-image --python 3.7 --additional-extras=trino \
- --airflow-is-in-context-pypi --install-packages-from-context
+ breeze build-prod-image --python 3.7 --additional-extras=trino
--install-packages-from-context
In this case you airflow and all packages (.whl files) should be placed in
``docker-context-files`` folder.
diff --git
a/dev/breeze/src/airflow_breeze/commands/production_image_commands.py
b/dev/breeze/src/airflow_breeze/commands/production_image_commands.py
index 2ee164645d..cafca59fde 100644
--- a/dev/breeze/src/airflow_breeze/commands/production_image_commands.py
+++ b/dev/breeze/src/airflow_breeze/commands/production_image_commands.py
@@ -143,7 +143,6 @@ PRODUCTION_IMAGE_TOOLS_PARAMETERS = {
"name": "Customization options (for specific customization needs)",
"options": [
"--install-packages-from-context",
- "--airflow-is-in-context",
"--cleanup-context",
"--disable-mysql-client-installation",
"--disable-mssql-client-installation",
@@ -266,14 +265,10 @@ def run_build_in_parallel(
type=BetterChoice(ALLOWED_INSTALLATION_METHODS),
)
@option_install_providers_from_sources
[email protected](
- '--airflow-is-in-context',
- help="If set Airflow is installed from docker-context-files only rather
than from PyPI or sources.",
- is_flag=True,
-)
@click.option(
'--install-packages-from-context',
- help='Install wheels from local docker-context-files when building image.',
+ help='Install wheels from local docker-context-files when building image. '
+ 'Implies --disable-airflow-repo-cache.',
is_flag=True,
)
@click.option(
diff --git a/dev/breeze/src/airflow_breeze/params/build_prod_params.py
b/dev/breeze/src/airflow_breeze/params/build_prod_params.py
index c37569f85f..65e92400c4 100644
--- a/dev/breeze/src/airflow_breeze/params/build_prod_params.py
+++ b/dev/breeze/src/airflow_breeze/params/build_prod_params.py
@@ -43,7 +43,6 @@ class BuildProdParams(CommonBuildParams):
airflow_constraints_mode: str = "constraints"
default_constraints_branch: str = DEFAULT_AIRFLOW_CONSTRAINTS_BRANCH
airflow_constraints_reference: str = ""
- airflow_is_in_context: bool = False
cleanup_context: bool = False
disable_airflow_repo_cache: bool = False
disable_mssql_client_installation: bool = False
@@ -186,31 +185,19 @@ class BuildProdParams(CommonBuildParams):
@property
def airflow_pre_cached_pip_packages(self) -> str:
- airflow_pre_cached_pip = 'true'
- if not self.airflow_is_in_context or self.disable_airflow_repo_cache:
- airflow_pre_cached_pip = 'false'
- return airflow_pre_cached_pip
+ return 'false' if self.disable_airflow_repo_cache else 'true'
@property
def install_mssql_client(self) -> str:
- install_mssql = 'true'
- if self.disable_mssql_client_installation:
- install_mssql = 'false'
- return install_mssql
+ return 'false' if self.disable_mssql_client_installation else 'true'
@property
def install_mysql_client(self) -> str:
- install_mysql = 'true'
- if self.disable_mysql_client_installation:
- install_mysql = 'false'
- return install_mysql
+ return 'false' if self.disable_mysql_client_installation else 'true'
@property
def install_postgres_client(self) -> str:
- install_postgres = 'true'
- if self.disable_postgres_client_installation:
- install_postgres = 'false'
- return install_postgres
+ return 'false' if self.disable_postgres_client_installation else 'true'
@property
def docker_context_files(self) -> str:
@@ -233,7 +220,6 @@ class BuildProdParams(CommonBuildParams):
"airflow_image_date_created",
"airflow_image_readme_url",
"airflow_image_repository",
- "airflow_is_in_context",
"airflow_pre_cached_pip_packages",
"airflow_version",
"build_id",
diff --git a/dev/refresh_images.sh b/dev/refresh_images.sh
index 596997d831..7675db65b2 100755
--- a/dev/refresh_images.sh
+++ b/dev/refresh_images.sh
@@ -47,9 +47,7 @@ mv -v ./dist/*.whl ./docker-context-files
breeze build-prod-image \
--builder airflow_cache \
--run-in-parallel \
- --airflow-is-in-context \
--install-packages-from-context \
--prepare-buildx-cache \
- --disable-airflow-repo-cache \
--platform linux/amd64,linux/arm64 \
--verbose
diff --git a/docs/docker-stack/build-arg-ref.rst
b/docs/docker-stack/build-arg-ref.rst
index fb41e55141..a1e4f1d9f0 100644
--- a/docs/docker-stack/build-arg-ref.rst
+++ b/docs/docker-stack/build-arg-ref.rst
@@ -252,11 +252,6 @@ You can see some examples of those in:
| |
| .whl and .tar.gz files placed in the |
| |
| ``docker-context-files``. |
+------------------------------------+------------------------------------------+------------------------------------------+
-| ``AIRFLOW_IS_IN_CONTEXT`` | ``false``
| If set to true, it means that Airflow |
-| |
| and providers are available in context |
-| |
| and the image will not attempt to |
-| |
| install Airflow from PyPI or sources. |
-+------------------------------------+------------------------------------------+------------------------------------------+
Pre-caching PIP dependencies
............................
diff --git a/docs/docker-stack/changelog.rst b/docs/docker-stack/changelog.rst
index 45e57cd992..c406172dd4 100644
--- a/docs/docker-stack/changelog.rst
+++ b/docs/docker-stack/changelog.rst
@@ -73,8 +73,7 @@ Airflow 2.3
* Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1
users
* Build parameters which control if packages and Airflow should be installed
from context file were
unified
- * The ``INSTALL_FROM_PYPI`` arg was replaced to ``AIRFLOW_IS_IN_CONTEXT``
(with reverse meaning and
- default changed to false)
+ * The ``INSTALL_FROM_PYPI`` arg was removed - it is automatically detected
now.
* The ``INSTALL_FROM_DOCKER_CONTEXT_FILES`` arg changed to
``INSTALL_PACKAGES_FROM_CONTEXT``
Airflow 2.2
diff --git a/images/breeze/output-build-prod-image.svg
b/images/breeze/output-build-prod-image.svg
index 3d6122bc3f..dbb2b1d56e 100644
--- a/images/breeze/output-build-prod-image.svg
+++ b/images/breeze/output-build-prod-image.svg
@@ -1,4 +1,4 @@
-<svg class="rich-terminal" viewBox="0 0 1482 2026.3999999999999"
xmlns="http://www.w3.org/2000/svg">
+<svg class="rich-terminal" viewBox="0 0 1482 2002.0"
xmlns="http://www.w3.org/2000/svg">
<!-- Generated with Rich https://www.textualize.io -->
<style>
@@ -19,365 +19,361 @@
font-weight: 700;
}
- .terminal-1181880005-matrix {
+ .terminal-4196591838-matrix {
font-family: Fira Code, monospace;
font-size: 20px;
line-height: 24.4px;
font-variant-east-asian: full-width;
}
- .terminal-1181880005-title {
+ .terminal-4196591838-title {
font-size: 18px;
font-weight: bold;
font-family: arial;
}
- .terminal-1181880005-r1 { fill: #c5c8c6;font-weight: bold }
-.terminal-1181880005-r2 { fill: #c5c8c6 }
-.terminal-1181880005-r3 { fill: #d0b344;font-weight: bold }
-.terminal-1181880005-r4 { fill: #868887 }
-.terminal-1181880005-r5 { fill: #68a0b3;font-weight: bold }
-.terminal-1181880005-r6 { fill: #98a84b;font-weight: bold }
-.terminal-1181880005-r7 { fill: #8d7b39 }
+ .terminal-4196591838-r1 { fill: #c5c8c6;font-weight: bold }
+.terminal-4196591838-r2 { fill: #c5c8c6 }
+.terminal-4196591838-r3 { fill: #d0b344;font-weight: bold }
+.terminal-4196591838-r4 { fill: #868887 }
+.terminal-4196591838-r5 { fill: #68a0b3;font-weight: bold }
+.terminal-4196591838-r6 { fill: #98a84b;font-weight: bold }
+.terminal-4196591838-r7 { fill: #8d7b39 }
</style>
<defs>
- <clipPath id="terminal-1181880005-clip-terminal">
- <rect x="0" y="0" width="1463.0" height="1975.3999999999999" />
+ <clipPath id="terminal-4196591838-clip-terminal">
+ <rect x="0" y="0" width="1463.0" height="1951.0" />
</clipPath>
- <clipPath id="terminal-1181880005-line-0">
+ <clipPath id="terminal-4196591838-line-0">
<rect x="0" y="1.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-1">
+<clipPath id="terminal-4196591838-line-1">
<rect x="0" y="25.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-2">
+<clipPath id="terminal-4196591838-line-2">
<rect x="0" y="50.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-3">
+<clipPath id="terminal-4196591838-line-3">
<rect x="0" y="74.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-4">
+<clipPath id="terminal-4196591838-line-4">
<rect x="0" y="99.1" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-5">
+<clipPath id="terminal-4196591838-line-5">
<rect x="0" y="123.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-6">
+<clipPath id="terminal-4196591838-line-6">
<rect x="0" y="147.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-7">
+<clipPath id="terminal-4196591838-line-7">
<rect x="0" y="172.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-8">
+<clipPath id="terminal-4196591838-line-8">
<rect x="0" y="196.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-9">
+<clipPath id="terminal-4196591838-line-9">
<rect x="0" y="221.1" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-10">
+<clipPath id="terminal-4196591838-line-10">
<rect x="0" y="245.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-11">
+<clipPath id="terminal-4196591838-line-11">
<rect x="0" y="269.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-12">
+<clipPath id="terminal-4196591838-line-12">
<rect x="0" y="294.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-13">
+<clipPath id="terminal-4196591838-line-13">
<rect x="0" y="318.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-14">
+<clipPath id="terminal-4196591838-line-14">
<rect x="0" y="343.1" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-15">
+<clipPath id="terminal-4196591838-line-15">
<rect x="0" y="367.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-16">
+<clipPath id="terminal-4196591838-line-16">
<rect x="0" y="391.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-17">
+<clipPath id="terminal-4196591838-line-17">
<rect x="0" y="416.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-18">
+<clipPath id="terminal-4196591838-line-18">
<rect x="0" y="440.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-19">
+<clipPath id="terminal-4196591838-line-19">
<rect x="0" y="465.1" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-20">
+<clipPath id="terminal-4196591838-line-20">
<rect x="0" y="489.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-21">
+<clipPath id="terminal-4196591838-line-21">
<rect x="0" y="513.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-22">
+<clipPath id="terminal-4196591838-line-22">
<rect x="0" y="538.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-23">
+<clipPath id="terminal-4196591838-line-23">
<rect x="0" y="562.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-24">
+<clipPath id="terminal-4196591838-line-24">
<rect x="0" y="587.1" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-25">
+<clipPath id="terminal-4196591838-line-25">
<rect x="0" y="611.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-26">
+<clipPath id="terminal-4196591838-line-26">
<rect x="0" y="635.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-27">
+<clipPath id="terminal-4196591838-line-27">
<rect x="0" y="660.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-28">
+<clipPath id="terminal-4196591838-line-28">
<rect x="0" y="684.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-29">
+<clipPath id="terminal-4196591838-line-29">
<rect x="0" y="709.1" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-30">
+<clipPath id="terminal-4196591838-line-30">
<rect x="0" y="733.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-31">
+<clipPath id="terminal-4196591838-line-31">
<rect x="0" y="757.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-32">
+<clipPath id="terminal-4196591838-line-32">
<rect x="0" y="782.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-33">
+<clipPath id="terminal-4196591838-line-33">
<rect x="0" y="806.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-34">
+<clipPath id="terminal-4196591838-line-34">
<rect x="0" y="831.1" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-35">
+<clipPath id="terminal-4196591838-line-35">
<rect x="0" y="855.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-36">
+<clipPath id="terminal-4196591838-line-36">
<rect x="0" y="879.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-37">
+<clipPath id="terminal-4196591838-line-37">
<rect x="0" y="904.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-38">
+<clipPath id="terminal-4196591838-line-38">
<rect x="0" y="928.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-39">
+<clipPath id="terminal-4196591838-line-39">
<rect x="0" y="953.1" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-40">
+<clipPath id="terminal-4196591838-line-40">
<rect x="0" y="977.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-41">
+<clipPath id="terminal-4196591838-line-41">
<rect x="0" y="1001.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-42">
+<clipPath id="terminal-4196591838-line-42">
<rect x="0" y="1026.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-43">
+<clipPath id="terminal-4196591838-line-43">
<rect x="0" y="1050.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-44">
+<clipPath id="terminal-4196591838-line-44">
<rect x="0" y="1075.1" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-45">
+<clipPath id="terminal-4196591838-line-45">
<rect x="0" y="1099.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-46">
+<clipPath id="terminal-4196591838-line-46">
<rect x="0" y="1123.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-47">
+<clipPath id="terminal-4196591838-line-47">
<rect x="0" y="1148.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-48">
+<clipPath id="terminal-4196591838-line-48">
<rect x="0" y="1172.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-49">
+<clipPath id="terminal-4196591838-line-49">
<rect x="0" y="1197.1" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-50">
+<clipPath id="terminal-4196591838-line-50">
<rect x="0" y="1221.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-51">
+<clipPath id="terminal-4196591838-line-51">
<rect x="0" y="1245.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-52">
+<clipPath id="terminal-4196591838-line-52">
<rect x="0" y="1270.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-53">
+<clipPath id="terminal-4196591838-line-53">
<rect x="0" y="1294.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-54">
+<clipPath id="terminal-4196591838-line-54">
<rect x="0" y="1319.1" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-55">
+<clipPath id="terminal-4196591838-line-55">
<rect x="0" y="1343.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-56">
+<clipPath id="terminal-4196591838-line-56">
<rect x="0" y="1367.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-57">
+<clipPath id="terminal-4196591838-line-57">
<rect x="0" y="1392.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-58">
+<clipPath id="terminal-4196591838-line-58">
<rect x="0" y="1416.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-59">
+<clipPath id="terminal-4196591838-line-59">
<rect x="0" y="1441.1" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-60">
+<clipPath id="terminal-4196591838-line-60">
<rect x="0" y="1465.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-61">
+<clipPath id="terminal-4196591838-line-61">
<rect x="0" y="1489.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-62">
+<clipPath id="terminal-4196591838-line-62">
<rect x="0" y="1514.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-63">
+<clipPath id="terminal-4196591838-line-63">
<rect x="0" y="1538.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-64">
+<clipPath id="terminal-4196591838-line-64">
<rect x="0" y="1563.1" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-65">
+<clipPath id="terminal-4196591838-line-65">
<rect x="0" y="1587.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-66">
+<clipPath id="terminal-4196591838-line-66">
<rect x="0" y="1611.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-67">
+<clipPath id="terminal-4196591838-line-67">
<rect x="0" y="1636.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-68">
+<clipPath id="terminal-4196591838-line-68">
<rect x="0" y="1660.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-69">
+<clipPath id="terminal-4196591838-line-69">
<rect x="0" y="1685.1" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-70">
+<clipPath id="terminal-4196591838-line-70">
<rect x="0" y="1709.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-71">
+<clipPath id="terminal-4196591838-line-71">
<rect x="0" y="1733.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-72">
+<clipPath id="terminal-4196591838-line-72">
<rect x="0" y="1758.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-73">
+<clipPath id="terminal-4196591838-line-73">
<rect x="0" y="1782.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-74">
+<clipPath id="terminal-4196591838-line-74">
<rect x="0" y="1807.1" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-75">
+<clipPath id="terminal-4196591838-line-75">
<rect x="0" y="1831.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-76">
+<clipPath id="terminal-4196591838-line-76">
<rect x="0" y="1855.9" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-77">
+<clipPath id="terminal-4196591838-line-77">
<rect x="0" y="1880.3" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-78">
+<clipPath id="terminal-4196591838-line-78">
<rect x="0" y="1904.7" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="terminal-1181880005-line-79">
- <rect x="0" y="1929.1" width="1464" height="24.65"/>
- </clipPath>
</defs>
- <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1"
x="1" y="1" width="1480" height="2024.4" rx="8"/><text
class="terminal-1181880005-title" fill="#c5c8c6" text-anchor="middle" x="740"
y="27">Command: build-prod-image</text>
+ <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1"
x="1" y="1" width="1480" height="2000" rx="8"/><text
class="terminal-4196591838-title" fill="#c5c8c6" text-anchor="middle" x="740"
y="27">Command: build-prod-image</text>
<g transform="translate(26,22)">
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
<circle cx="44" cy="0" r="7" fill="#28c840"/>
</g>
- <g transform="translate(9, 41)"
clip-path="url(#terminal-1181880005-clip-terminal)">
+ <g transform="translate(9, 41)"
clip-path="url(#terminal-4196591838-clip-terminal)">
- <g class="terminal-1181880005-matrix">
- <text class="terminal-1181880005-r2" x="1464" y="20" textLength="12.2"
clip-path="url(#terminal-1181880005-line-0)">
-</text><text class="terminal-1181880005-r3" x="12.2" y="44.4"
textLength="85.4"
clip-path="url(#terminal-1181880005-line-1)">Usage: </text><text
class="terminal-1181880005-r1" x="97.6" y="44.4" textLength="402.6"
clip-path="url(#terminal-1181880005-line-1)">breeze build-prod-image [OPTIONS]</text><text
class="terminal-1181880005-r2" x="1464" y="44.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-1)">
-</text><text class="terminal-1181880005-r2" x="1464" y="68.8"
textLength="12.2" clip-path="url(#terminal-1181880005-line-2)">
-</text><text class="terminal-1181880005-r2" x="12.2" y="93.2"
textLength="1293.2"
clip-path="url(#terminal-1181880005-line-3)">Build Production image. Include building multiple images for all or selected Python versions sequentially.</text><text
class="terminal-1181880005-r2" x="1464" y="93.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-3)">
-</text><text class="terminal-1181880005-r2" x="1464" y="117.6"
textLength="12.2" clip-path="url(#terminal-1181880005-line-4)">
-</text><text class="terminal-1181880005-r4" x="0" y="142" textLength="24.4"
clip-path="url(#terminal-1181880005-line-5)">╭─</text><text
class="terminal-1181880005-r4" x="24.4" y="142" textLength="1415.2"
clip-path="url(#terminal-1181880005-line-5)"> Basic usage ───────────────────────────────────────────────────────────────────────────────────────────────────────</text><text
class="terminal-1181880005-r4" x="1439.6" y="142" textLength="24.4"
clip-path="url(#terminal-118188 [...]
-</text><text class="terminal-1181880005-r4" x="0" y="166.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-6)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="166.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-6)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="166.4" textLength="85.4"
clip-path="url(#terminal-1181880005-line-6)">-python</text><text
class="terminal-1181880005-r6" x="427" y="166.4" textLength="24.4"
clip-path="url(#terminal-118 [...]
-</text><text class="terminal-1181880005-r4" x="0" y="190.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-7)">│</text><text
class="terminal-1181880005-r7" x="475.8" y="190.8" textLength="732"
clip-path="url(#terminal-1181880005-line-7)">(>3.7< | 3.8 | 3.9 | 3.10)                              
[...]
-</text><text class="terminal-1181880005-r4" x="0" y="215.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-8)">│</text><text
class="terminal-1181880005-r4" x="475.8" y="215.2" textLength="732"
clip-path="url(#terminal-1181880005-line-8)">[default: 3.7]                                     &
[...]
-</text><text class="terminal-1181880005-r4" x="0" y="239.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-9)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="239.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-9)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="239.6" textLength="97.6"
clip-path="url(#terminal-1181880005-line-9)">-install</text><text
class="terminal-1181880005-r5" x="134.2" y="239.6" textLength="195.2"
clip-path="url(#terminal [...]
-</text><text class="terminal-1181880005-r4" x="0" y="264" textLength="12.2"
clip-path="url(#terminal-1181880005-line-10)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="264" textLength="12.2"
clip-path="url(#terminal-1181880005-line-10)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="264" textLength="97.6"
clip-path="url(#terminal-1181880005-line-10)">-upgrade</text><text
class="terminal-1181880005-r5" x="134.2" y="264" textLength="268.4"
clip-path="url(#terminal-1181 [...]
-</text><text class="terminal-1181880005-r4" x="0" y="288.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-11)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="288.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-11)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="288.4" textLength="85.4"
clip-path="url(#terminal-1181880005-line-11)">-debian</text><text
class="terminal-1181880005-r5" x="122" y="288.4" textLength="97.6"
clip-path="url(#terminal- [...]
-</text><text class="terminal-1181880005-r4" x="0" y="312.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-12)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="312.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-12)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="312.8" textLength="73.2"
clip-path="url(#terminal-1181880005-line-12)">-image</text><text
class="terminal-1181880005-r5" x="109.8" y="312.8" textLength="48.8"
clip-path="url(#terminal [...]
-</text><text class="terminal-1181880005-r4" x="0" y="337.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-13)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="337.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-13)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="337.2" textLength="48.8"
clip-path="url(#terminal-1181880005-line-13)">-tag</text><text
class="terminal-1181880005-r5" x="85.4" y="337.2" textLength="122"
clip-path="url(#terminal-118 [...]
-</text><text class="terminal-1181880005-r4" x="0" y="361.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-14)">│</text><text
class="terminal-1181880005-r2" x="475.8" y="361.6" textLength="414.8"
clip-path="url(#terminal-1181880005-line-14)">when you build or pull image with </text><text
class="terminal-1181880005-r5" x="890.6" y="361.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-14)">-</text><text
class="terminal-1181880005- [...]
-</text><text class="terminal-1181880005-r4" x="0" y="386" textLength="12.2"
clip-path="url(#terminal-1181880005-line-15)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="386" textLength="12.2"
clip-path="url(#terminal-1181880005-line-15)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="386" textLength="85.4"
clip-path="url(#terminal-1181880005-line-15)">-docker</text><text
class="terminal-1181880005-r5" x="122" y="386" textLength="73.2"
clip-path="url(#terminal-11818800 [...]
-</text><text class="terminal-1181880005-r4" x="0" y="410.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-16)">│</text><text
class="terminal-1181880005-r4" x="475.8" y="410.4" textLength="549"
clip-path="url(#terminal-1181880005-line-16)">[default: registry]                          </text><text
class="terminal-1181880005-r4" x="1451.8" y="41 [...]
-</text><text class="terminal-1181880005-r4" x="0" y="434.8" textLength="1464"
clip-path="url(#terminal-1181880005-line-17)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="terminal-1181880005-r2" x="1464" y="434.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-17)">
-</text><text class="terminal-1181880005-r4" x="0" y="459.2" textLength="24.4"
clip-path="url(#terminal-1181880005-line-18)">╭─</text><text
class="terminal-1181880005-r4" x="24.4" y="459.2" textLength="1415.2"
clip-path="url(#terminal-1181880005-line-18)"> Building images in parallel ───────────────────────────────────────────────────────────────────────────────────────</text><text
class="terminal-1181880005-r4" x="1439.6" y="459.2" textLength="24.4"
clip-path="ur [...]
-</text><text class="terminal-1181880005-r4" x="0" y="483.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-19)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="483.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-19)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="483.6" textLength="48.8"
clip-path="url(#terminal-1181880005-line-19)">-run</text><text
class="terminal-1181880005-r5" x="85.4" y="483.6" textLength="146.4"
clip-path="url(#terminal-1 [...]
-</text><text class="terminal-1181880005-r4" x="0" y="508" textLength="12.2"
clip-path="url(#terminal-1181880005-line-20)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="508" textLength="12.2"
clip-path="url(#terminal-1181880005-line-20)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="508" textLength="146.4"
clip-path="url(#terminal-1181880005-line-20)">-parallelism</text><text
class="terminal-1181880005-r2" x="280.6" y="508" textLength="915"
clip-path="url(#terminal-1 [...]
-</text><text class="terminal-1181880005-r4" x="0" y="532.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-21)">│</text><text
class="terminal-1181880005-r4" x="280.6" y="532.4" textLength="915"
clip-path="url(#terminal-1181880005-line-21)">[default: 4; 1<=x<=8]                                  
[...]
-</text><text class="terminal-1181880005-r4" x="0" y="556.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-22)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="556.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-22)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="556.8" textLength="85.4"
clip-path="url(#terminal-1181880005-line-22)">-python</text><text
class="terminal-1181880005-r5" x="122" y="556.8" textLength="109.8"
clip-path="url(#terminal [...]
-</text><text class="terminal-1181880005-r4" x="0" y="581.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-23)">│</text><text
class="terminal-1181880005-r4" x="280.6" y="581.2" textLength="951.6"
clip-path="url(#terminal-1181880005-line-23)">[default: 3.7 3.8 3.9 3.10]                                
[...]
-</text><text class="terminal-1181880005-r4" x="0" y="605.6" textLength="1464"
clip-path="url(#terminal-1181880005-line-24)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="terminal-1181880005-r2" x="1464" y="605.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-24)">
-</text><text class="terminal-1181880005-r4" x="0" y="630" textLength="24.4"
clip-path="url(#terminal-1181880005-line-25)">╭─</text><text
class="terminal-1181880005-r4" x="24.4" y="630" textLength="1415.2"
clip-path="url(#terminal-1181880005-line-25)"> Options for customizing images ────────────────────────────────────────────────────────────────────────────────────</text><text
class="terminal-1181880005-r4" x="1439.6" y="630" textLength="24.4"
clip-path="url(#ter [...]
-</text><text class="terminal-1181880005-r4" x="0" y="654.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-26)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="654.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-26)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="654.4" textLength="97.6"
clip-path="url(#terminal-1181880005-line-26)">-install</text><text
class="terminal-1181880005-r5" x="134.2" y="654.4" textLength="280.6"
clip-path="url(#termi [...]
-</text><text class="terminal-1181880005-r4" x="0" y="678.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-27)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="678.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-27)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="678.8" textLength="97.6"
clip-path="url(#terminal-1181880005-line-27)">-airflow</text><text
class="terminal-1181880005-r5" x="134.2" y="678.8" textLength="85.4"
clip-path="url(#termin [...]
-</text><text class="terminal-1181880005-r4" x="0" y="703.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-28)">│</text><text
class="terminal-1181880005-r7" x="463.6" y="703.2" textLength="976"
clip-path="url(#terminal-1181880005-line-28)">(TEXT)                                       
[...]
-</text><text class="terminal-1181880005-r4" x="0" y="727.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-29)">│</text><text
class="terminal-1181880005-r4" x="463.6" y="727.6" textLength="976"
clip-path="url(#terminal-1181880005-line-29)">[default:                                      
[...]
-</text><text class="terminal-1181880005-r4" x="0" y="752" textLength="12.2"
clip-path="url(#terminal-1181880005-line-30)">│</text><text
class="terminal-1181880005-r4" x="463.6" y="752" textLength="976"
clip-path="url(#terminal-1181880005-line-30)">amazon,async,celery,cncf.kubernetes,dask,docker,elasticsearch,ftp,google,google…</text><text
class="terminal-1181880005-r4" x="1451.8" y="752" textLength="12.2"
clip-path="url(#terminal-1181880005-line-30)">│</text><text
class="terminal-1181880 [...]
-</text><text class="terminal-1181880005-r4" x="0" y="776.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-31)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="776.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-31)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="776.4" textLength="97.6"
clip-path="url(#terminal-1181880005-line-31)">-airflow</text><text
class="terminal-1181880005-r5" x="134.2" y="776.4" textLength="207.4"
clip-path="url(#termi [...]
-</text><text class="terminal-1181880005-r4" x="0" y="800.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-32)">│</text><text
class="terminal-1181880005-r7" x="463.6" y="800.8" textLength="866.2"
clip-path="url(#terminal-1181880005-line-32)">(constraints | constraints-no-providers | constraints-source-providers)</text><text
class="terminal-1181880005-r4" x="1451.8" y="800.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-32)">│</text><text clas [...]
-</text><text class="terminal-1181880005-r4" x="0" y="825.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-33)">│</text><text
class="terminal-1181880005-r4" x="463.6" y="825.2" textLength="866.2"
clip-path="url(#terminal-1181880005-line-33)">[default: constraints]                                   &
[...]
-</text><text class="terminal-1181880005-r4" x="0" y="849.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-34)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="849.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-34)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="849.6" textLength="97.6"
clip-path="url(#terminal-1181880005-line-34)">-airflow</text><text
class="terminal-1181880005-r5" x="134.2" y="849.6" textLength="268.4"
clip-path="url(#termi [...]
-</text><text class="terminal-1181880005-r4" x="0" y="874" textLength="12.2"
clip-path="url(#terminal-1181880005-line-35)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="874" textLength="12.2"
clip-path="url(#terminal-1181880005-line-35)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="874" textLength="85.4"
clip-path="url(#terminal-1181880005-line-35)">-python</text><text
class="terminal-1181880005-r5" x="122" y="874" textLength="73.2"
clip-path="url(#terminal-11818800 [...]
-</text><text class="terminal-1181880005-r4" x="0" y="898.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-36)">│</text><text
class="terminal-1181880005-r2" x="463.6" y="898.4" textLength="976"
clip-path="url(#terminal-1181880005-line-36)">something like: python:VERSION-slim-bullseye                               
[...]
-</text><text class="terminal-1181880005-r4" x="0" y="922.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-37)">│</text><text
class="terminal-1181880005-r7" x="463.6" y="922.8" textLength="976"
clip-path="url(#terminal-1181880005-line-37)">(TEXT)                                       
[...]
-</text><text class="terminal-1181880005-r4" x="0" y="947.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-38)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="947.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-38)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="947.2" textLength="134.2"
clip-path="url(#terminal-1181880005-line-38)">-additional</text><text
class="terminal-1181880005-r5" x="170.8" y="947.2" textLength="146.4"
clip-path="url(#t [...]
-</text><text class="terminal-1181880005-r4" x="0" y="971.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-39)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="971.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-39)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="971.6" textLength="134.2"
clip-path="url(#terminal-1181880005-line-39)">-additional</text><text
class="terminal-1181880005-r5" x="170.8" y="971.6" textLength="85.4"
clip-path="url(#te [...]
-</text><text class="terminal-1181880005-r4" x="0" y="996" textLength="12.2"
clip-path="url(#terminal-1181880005-line-40)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="996" textLength="12.2"
clip-path="url(#terminal-1181880005-line-40)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="996" textLength="134.2"
clip-path="url(#terminal-1181880005-line-40)">-additional</text><text
class="terminal-1181880005-r5" x="170.8" y="996" textLength="207.4"
clip-path="url(#terminal- [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1020.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-41)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1020.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-41)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1020.4" textLength="134.2"
clip-path="url(#terminal-1181880005-line-41)">-additional</text><text
class="terminal-1181880005-r5" x="170.8" y="1020.4" textLength="195.2"
clip-path="ur [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1044.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-42)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1044.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-42)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1044.8" textLength="134.2"
clip-path="url(#terminal-1181880005-line-42)">-additional</text><text
class="terminal-1181880005-r5" x="170.8" y="1044.8" textLength="244"
clip-path="url( [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1069.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-43)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1069.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-43)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1069.2" textLength="134.2"
clip-path="url(#terminal-1181880005-line-43)">-additional</text><text
class="terminal-1181880005-r5" x="170.8" y="1069.2" textLength="158.6"
clip-path="ur [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1093.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-44)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1093.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-44)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1093.6" textLength="134.2"
clip-path="url(#terminal-1181880005-line-44)">-additional</text><text
class="terminal-1181880005-r5" x="170.8" y="1093.6" textLength="146.4"
clip-path="ur [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1118" textLength="12.2"
clip-path="url(#terminal-1181880005-line-45)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1118" textLength="12.2"
clip-path="url(#terminal-1181880005-line-45)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1118" textLength="134.2"
clip-path="url(#terminal-1181880005-line-45)">-additional</text><text
class="terminal-1181880005-r5" x="170.8" y="1118" textLength="195.2"
clip-path="url(#termi [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1142.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-46)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1142.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-46)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1142.4" textLength="97.6"
clip-path="url(#terminal-1181880005-line-46)">-runtime</text><text
class="terminal-1181880005-r5" x="134.2" y="1142.4" textLength="109.8"
clip-path="url(#t [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1166.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-47)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1166.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-47)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1166.8" textLength="97.6"
clip-path="url(#terminal-1181880005-line-47)">-runtime</text><text
class="terminal-1181880005-r5" x="134.2" y="1166.8" textLength="146.4"
clip-path="url(#t [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1191.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-48)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1191.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-48)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1191.2" textLength="48.8"
clip-path="url(#terminal-1181880005-line-48)">-dev</text><text
class="terminal-1181880005-r5" x="85.4" y="1191.2" textLength="109.8"
clip-path="url(#termin [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1215.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-49)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1215.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-49)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1215.6" textLength="48.8"
clip-path="url(#terminal-1181880005-line-49)">-dev</text><text
class="terminal-1181880005-r5" x="85.4" y="1215.6" textLength="146.4"
clip-path="url(#termin [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1240" textLength="1464"
clip-path="url(#terminal-1181880005-line-50)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="terminal-1181880005-r2" x="1464" y="1240" textLength="12.2"
clip-path="url(#terminal-1181880005-line-50)">
-</text><text class="terminal-1181880005-r4" x="0" y="1264.4" textLength="24.4"
clip-path="url(#terminal-1181880005-line-51)">╭─</text><text
class="terminal-1181880005-r4" x="24.4" y="1264.4" textLength="1415.2"
clip-path="url(#terminal-1181880005-line-51)"> Customization options (for specific customization needs) ──────────────────────────────────────────────────────────</text><text
class="terminal-1181880005-r4" x="1439.6" y="1264.4" textLength="24.4" [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1288.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-52)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1288.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-52)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1288.8" textLength="97.6"
clip-path="url(#terminal-1181880005-line-52)">-install</text><text
class="terminal-1181880005-r5" x="134.2" y="1288.8" textLength="268.4"
clip-path="url(#t [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1313.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-53)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1313.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-53)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1313.2" textLength="97.6"
clip-path="url(#terminal-1181880005-line-53)">-airflow</text><text
class="terminal-1181880005-r5" x="134.2" y="1313.2" textLength="170.8"
clip-path="url(#t [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1337.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-54)">│</text><text
class="terminal-1181880005-r2" x="536.8" y="1337.6" textLength="902.8"
clip-path="url(#terminal-1181880005-line-54)">from PyPI or sources.                                 &#
[...]
-</text><text class="terminal-1181880005-r4" x="0" y="1362" textLength="12.2"
clip-path="url(#terminal-1181880005-line-55)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1362" textLength="12.2"
clip-path="url(#terminal-1181880005-line-55)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1362" textLength="97.6"
clip-path="url(#terminal-1181880005-line-55)">-cleanup</text><text
class="terminal-1181880005-r5" x="134.2" y="1362" textLength="97.6"
clip-path="url(#terminal-1 [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1386.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-56)">│</text><text
class="terminal-1181880005-r2" x="536.8" y="1386.4" textLength="170.8"
clip-path="url(#terminal-1181880005-line-56)">together with </text><text
class="terminal-1181880005-r5" x="707.6" y="1386.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-56)">-</text><text
class="terminal-1181880005-r5" x="719.8" y="1386.4" textLength="97.6" [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1410.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-57)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1410.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-57)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1410.8" textLength="97.6"
clip-path="url(#terminal-1181880005-line-57)">-disable</text><text
class="terminal-1181880005-r5" x="134.2" y="1410.8" textLength="317.2"
clip-path="url(#t [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1435.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-58)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1435.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-58)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1435.2" textLength="97.6"
clip-path="url(#terminal-1181880005-line-58)">-disable</text><text
class="terminal-1181880005-r5" x="134.2" y="1435.2" textLength="317.2"
clip-path="url(#t [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1459.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-59)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1459.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-59)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1459.6" textLength="97.6"
clip-path="url(#terminal-1181880005-line-59)">-disable</text><text
class="terminal-1181880005-r5" x="134.2" y="1459.6" textLength="353.8"
clip-path="url(#t [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1484" textLength="12.2"
clip-path="url(#terminal-1181880005-line-60)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1484" textLength="12.2"
clip-path="url(#terminal-1181880005-line-60)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1484" textLength="97.6"
clip-path="url(#terminal-1181880005-line-60)">-disable</text><text
class="terminal-1181880005-r5" x="134.2" y="1484" textLength="231.8"
clip-path="url(#terminal- [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1508.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-61)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1508.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-61)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1508.4" textLength="97.6"
clip-path="url(#terminal-1181880005-line-61)">-install</text><text
class="terminal-1181880005-r5" x="134.2" y="1508.4" textLength="219.6"
clip-path="url(#t [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1532.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-62)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1532.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-62)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1532.8" textLength="158.6"
clip-path="url(#terminal-1181880005-line-62)">-installation</text><text
class="terminal-1181880005-r5" x="195.2" y="1532.8" textLength="85.4"
clip-path="u [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1557.2" textLength="1464"
clip-path="url(#terminal-1181880005-line-63)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="terminal-1181880005-r2" x="1464" y="1557.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-63)">
-</text><text class="terminal-1181880005-r4" x="0" y="1581.6" textLength="24.4"
clip-path="url(#terminal-1181880005-line-64)">╭─</text><text
class="terminal-1181880005-r4" x="24.4" y="1581.6" textLength="1415.2"
clip-path="url(#terminal-1181880005-line-64)"> Preparing cache and push (for maintainers and CI) ─────────────────────────────────────────────────────────────────</text><text
class="terminal-1181880005-r4" x="1439.6" y="1581.6" textLeng [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1606" textLength="12.2"
clip-path="url(#terminal-1181880005-line-65)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1606" textLength="12.2"
clip-path="url(#terminal-1181880005-line-65)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1606" textLength="85.4"
clip-path="url(#terminal-1181880005-line-65)">-github</text><text
class="terminal-1181880005-r5" x="122" y="1606" textLength="73.2"
clip-path="url(#terminal-1181 [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1630.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-66)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1630.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-66)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1630.4" textLength="85.4"
clip-path="url(#terminal-1181880005-line-66)">-github</text><text
class="terminal-1181880005-r5" x="122" y="1630.4" textLength="109.8"
clip-path="url(#term [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1654.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-67)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1654.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-67)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1654.8" textLength="109.8"
clip-path="url(#terminal-1181880005-line-67)">-platform</text><text
class="terminal-1181880005-r2" x="341.6" y="1654.8" textLength="329.4"
clip-path="url( [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1679.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-68)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1679.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-68)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1679.2" textLength="61"
clip-path="url(#terminal-1181880005-line-68)">-push</text><text
class="terminal-1181880005-r5" x="97.6" y="1679.2" textLength="73.2"
clip-path="url(#terminal [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1703.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-69)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1703.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-69)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1703.6" textLength="73.2"
clip-path="url(#terminal-1181880005-line-69)">-empty</text><text
class="terminal-1181880005-r5" x="109.8" y="1703.6" textLength="73.2"
clip-path="url(#term [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1728" textLength="12.2"
clip-path="url(#terminal-1181880005-line-70)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1728" textLength="12.2"
clip-path="url(#terminal-1181880005-line-70)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1728" textLength="97.6"
clip-path="url(#terminal-1181880005-line-70)">-prepare</text><text
class="terminal-1181880005-r5" x="134.2" y="1728" textLength="158.6"
clip-path="url(#terminal- [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1752.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-71)">│</text><text
class="terminal-1181880005-r2" x="341.6" y="1752.4" textLength="1098"
clip-path="url(#terminal-1181880005-line-71)">image).                                      &#
[...]
-</text><text class="terminal-1181880005-r4" x="0" y="1776.8" textLength="1464"
clip-path="url(#terminal-1181880005-line-72)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="terminal-1181880005-r2" x="1464" y="1776.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-72)">
-</text><text class="terminal-1181880005-r4" x="0" y="1801.2" textLength="24.4"
clip-path="url(#terminal-1181880005-line-73)">╭─</text><text
class="terminal-1181880005-r4" x="24.4" y="1801.2" textLength="1415.2"
clip-path="url(#terminal-1181880005-line-73)"> Options ───────────────────────────────────────────────────────────────────────────────────────────────────────────</text><text
class="terminal-1181880005-r4" x="1439.6" y="1801.2" textLength="24.4"
clip-path="url(#terminal- [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1825.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-74)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1825.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-74)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1825.6" textLength="85.4"
clip-path="url(#terminal-1181880005-line-74)">-github</text><text
class="terminal-1181880005-r5" x="122" y="1825.6" textLength="134.2"
clip-path="url(#term [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1850" textLength="12.2"
clip-path="url(#terminal-1181880005-line-75)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1850" textLength="12.2"
clip-path="url(#terminal-1181880005-line-75)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1850" textLength="97.6"
clip-path="url(#terminal-1181880005-line-75)">-builder</text><text
class="terminal-1181880005-r2" x="329.4" y="1850" textLength="744.2"
clip-path="url(#terminal- [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1874.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-76)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1874.4" textLength="12.2"
clip-path="url(#terminal-1181880005-line-76)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1874.4" textLength="85.4"
clip-path="url(#terminal-1181880005-line-76)">-answer</text><text
class="terminal-1181880005-r6" x="280.6" y="1874.4" textLength="24.4"
clip-path="url(#ter [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1898.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-77)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1898.8" textLength="12.2"
clip-path="url(#terminal-1181880005-line-77)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1898.8" textLength="48.8"
clip-path="url(#terminal-1181880005-line-77)">-dry</text><text
class="terminal-1181880005-r5" x="85.4" y="1898.8" textLength="48.8"
clip-path="url(#termina [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1923.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-78)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1923.2" textLength="12.2"
clip-path="url(#terminal-1181880005-line-78)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1923.2" textLength="97.6"
clip-path="url(#terminal-1181880005-line-78)">-verbose</text><text
class="terminal-1181880005-r6" x="280.6" y="1923.2" textLength="24.4"
clip-path="url(#te [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1947.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-79)">│</text><text
class="terminal-1181880005-r5" x="24.4" y="1947.6" textLength="12.2"
clip-path="url(#terminal-1181880005-line-79)">-</text><text
class="terminal-1181880005-r5" x="36.6" y="1947.6" textLength="61"
clip-path="url(#terminal-1181880005-line-79)">-help</text><text
class="terminal-1181880005-r6" x="280.6" y="1947.6" textLength="24.4"
clip-path="url(#termina [...]
-</text><text class="terminal-1181880005-r4" x="0" y="1972" textLength="1464"
clip-path="url(#terminal-1181880005-line-80)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="terminal-1181880005-r2" x="1464" y="1972" textLength="12.2"
clip-path="url(#terminal-1181880005-line-80)">
+ <g class="terminal-4196591838-matrix">
+ <text class="terminal-4196591838-r2" x="1464" y="20" textLength="12.2"
clip-path="url(#terminal-4196591838-line-0)">
+</text><text class="terminal-4196591838-r3" x="12.2" y="44.4"
textLength="85.4"
clip-path="url(#terminal-4196591838-line-1)">Usage: </text><text
class="terminal-4196591838-r1" x="97.6" y="44.4" textLength="402.6"
clip-path="url(#terminal-4196591838-line-1)">breeze build-prod-image [OPTIONS]</text><text
class="terminal-4196591838-r2" x="1464" y="44.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-1)">
+</text><text class="terminal-4196591838-r2" x="1464" y="68.8"
textLength="12.2" clip-path="url(#terminal-4196591838-line-2)">
+</text><text class="terminal-4196591838-r2" x="12.2" y="93.2"
textLength="1293.2"
clip-path="url(#terminal-4196591838-line-3)">Build Production image. Include building multiple images for all or selected Python versions sequentially.</text><text
class="terminal-4196591838-r2" x="1464" y="93.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-3)">
+</text><text class="terminal-4196591838-r2" x="1464" y="117.6"
textLength="12.2" clip-path="url(#terminal-4196591838-line-4)">
+</text><text class="terminal-4196591838-r4" x="0" y="142" textLength="24.4"
clip-path="url(#terminal-4196591838-line-5)">╭─</text><text
class="terminal-4196591838-r4" x="24.4" y="142" textLength="1415.2"
clip-path="url(#terminal-4196591838-line-5)"> Basic usage ───────────────────────────────────────────────────────────────────────────────────────────────────────</text><text
class="terminal-4196591838-r4" x="1439.6" y="142" textLength="24.4"
clip-path="url(#terminal-419659 [...]
+</text><text class="terminal-4196591838-r4" x="0" y="166.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-6)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="166.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-6)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="166.4" textLength="85.4"
clip-path="url(#terminal-4196591838-line-6)">-python</text><text
class="terminal-4196591838-r6" x="427" y="166.4" textLength="24.4"
clip-path="url(#terminal-419 [...]
+</text><text class="terminal-4196591838-r4" x="0" y="190.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-7)">│</text><text
class="terminal-4196591838-r7" x="475.8" y="190.8" textLength="732"
clip-path="url(#terminal-4196591838-line-7)">(>3.7< | 3.8 | 3.9 | 3.10)                              
[...]
+</text><text class="terminal-4196591838-r4" x="0" y="215.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-8)">│</text><text
class="terminal-4196591838-r4" x="475.8" y="215.2" textLength="732"
clip-path="url(#terminal-4196591838-line-8)">[default: 3.7]                                     &
[...]
+</text><text class="terminal-4196591838-r4" x="0" y="239.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-9)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="239.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-9)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="239.6" textLength="97.6"
clip-path="url(#terminal-4196591838-line-9)">-install</text><text
class="terminal-4196591838-r5" x="134.2" y="239.6" textLength="195.2"
clip-path="url(#terminal [...]
+</text><text class="terminal-4196591838-r4" x="0" y="264" textLength="12.2"
clip-path="url(#terminal-4196591838-line-10)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="264" textLength="12.2"
clip-path="url(#terminal-4196591838-line-10)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="264" textLength="97.6"
clip-path="url(#terminal-4196591838-line-10)">-upgrade</text><text
class="terminal-4196591838-r5" x="134.2" y="264" textLength="268.4"
clip-path="url(#terminal-4196 [...]
+</text><text class="terminal-4196591838-r4" x="0" y="288.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-11)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="288.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-11)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="288.4" textLength="85.4"
clip-path="url(#terminal-4196591838-line-11)">-debian</text><text
class="terminal-4196591838-r5" x="122" y="288.4" textLength="97.6"
clip-path="url(#terminal- [...]
+</text><text class="terminal-4196591838-r4" x="0" y="312.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-12)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="312.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-12)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="312.8" textLength="73.2"
clip-path="url(#terminal-4196591838-line-12)">-image</text><text
class="terminal-4196591838-r5" x="109.8" y="312.8" textLength="48.8"
clip-path="url(#terminal [...]
+</text><text class="terminal-4196591838-r4" x="0" y="337.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-13)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="337.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-13)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="337.2" textLength="48.8"
clip-path="url(#terminal-4196591838-line-13)">-tag</text><text
class="terminal-4196591838-r5" x="85.4" y="337.2" textLength="122"
clip-path="url(#terminal-419 [...]
+</text><text class="terminal-4196591838-r4" x="0" y="361.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-14)">│</text><text
class="terminal-4196591838-r2" x="475.8" y="361.6" textLength="414.8"
clip-path="url(#terminal-4196591838-line-14)">when you build or pull image with </text><text
class="terminal-4196591838-r5" x="890.6" y="361.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-14)">-</text><text
class="terminal-4196591838- [...]
+</text><text class="terminal-4196591838-r4" x="0" y="386" textLength="12.2"
clip-path="url(#terminal-4196591838-line-15)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="386" textLength="12.2"
clip-path="url(#terminal-4196591838-line-15)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="386" textLength="85.4"
clip-path="url(#terminal-4196591838-line-15)">-docker</text><text
class="terminal-4196591838-r5" x="122" y="386" textLength="73.2"
clip-path="url(#terminal-41965918 [...]
+</text><text class="terminal-4196591838-r4" x="0" y="410.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-16)">│</text><text
class="terminal-4196591838-r4" x="475.8" y="410.4" textLength="549"
clip-path="url(#terminal-4196591838-line-16)">[default: registry]                          </text><text
class="terminal-4196591838-r4" x="1451.8" y="41 [...]
+</text><text class="terminal-4196591838-r4" x="0" y="434.8" textLength="1464"
clip-path="url(#terminal-4196591838-line-17)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="terminal-4196591838-r2" x="1464" y="434.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-17)">
+</text><text class="terminal-4196591838-r4" x="0" y="459.2" textLength="24.4"
clip-path="url(#terminal-4196591838-line-18)">╭─</text><text
class="terminal-4196591838-r4" x="24.4" y="459.2" textLength="1415.2"
clip-path="url(#terminal-4196591838-line-18)"> Building images in parallel ───────────────────────────────────────────────────────────────────────────────────────</text><text
class="terminal-4196591838-r4" x="1439.6" y="459.2" textLength="24.4"
clip-path="ur [...]
+</text><text class="terminal-4196591838-r4" x="0" y="483.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-19)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="483.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-19)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="483.6" textLength="48.8"
clip-path="url(#terminal-4196591838-line-19)">-run</text><text
class="terminal-4196591838-r5" x="85.4" y="483.6" textLength="146.4"
clip-path="url(#terminal-4 [...]
+</text><text class="terminal-4196591838-r4" x="0" y="508" textLength="12.2"
clip-path="url(#terminal-4196591838-line-20)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="508" textLength="12.2"
clip-path="url(#terminal-4196591838-line-20)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="508" textLength="146.4"
clip-path="url(#terminal-4196591838-line-20)">-parallelism</text><text
class="terminal-4196591838-r2" x="280.6" y="508" textLength="915"
clip-path="url(#terminal-4 [...]
+</text><text class="terminal-4196591838-r4" x="0" y="532.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-21)">│</text><text
class="terminal-4196591838-r4" x="280.6" y="532.4" textLength="915"
clip-path="url(#terminal-4196591838-line-21)">[default: 4; 1<=x<=8]                                  
[...]
+</text><text class="terminal-4196591838-r4" x="0" y="556.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-22)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="556.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-22)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="556.8" textLength="85.4"
clip-path="url(#terminal-4196591838-line-22)">-python</text><text
class="terminal-4196591838-r5" x="122" y="556.8" textLength="109.8"
clip-path="url(#terminal [...]
+</text><text class="terminal-4196591838-r4" x="0" y="581.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-23)">│</text><text
class="terminal-4196591838-r4" x="280.6" y="581.2" textLength="951.6"
clip-path="url(#terminal-4196591838-line-23)">[default: 3.7 3.8 3.9 3.10]                                
[...]
+</text><text class="terminal-4196591838-r4" x="0" y="605.6" textLength="1464"
clip-path="url(#terminal-4196591838-line-24)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="terminal-4196591838-r2" x="1464" y="605.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-24)">
+</text><text class="terminal-4196591838-r4" x="0" y="630" textLength="24.4"
clip-path="url(#terminal-4196591838-line-25)">╭─</text><text
class="terminal-4196591838-r4" x="24.4" y="630" textLength="1415.2"
clip-path="url(#terminal-4196591838-line-25)"> Options for customizing images ────────────────────────────────────────────────────────────────────────────────────</text><text
class="terminal-4196591838-r4" x="1439.6" y="630" textLength="24.4"
clip-path="url(#ter [...]
+</text><text class="terminal-4196591838-r4" x="0" y="654.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-26)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="654.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-26)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="654.4" textLength="97.6"
clip-path="url(#terminal-4196591838-line-26)">-install</text><text
class="terminal-4196591838-r5" x="134.2" y="654.4" textLength="280.6"
clip-path="url(#termi [...]
+</text><text class="terminal-4196591838-r4" x="0" y="678.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-27)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="678.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-27)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="678.8" textLength="97.6"
clip-path="url(#terminal-4196591838-line-27)">-airflow</text><text
class="terminal-4196591838-r5" x="134.2" y="678.8" textLength="85.4"
clip-path="url(#termin [...]
+</text><text class="terminal-4196591838-r4" x="0" y="703.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-28)">│</text><text
class="terminal-4196591838-r7" x="463.6" y="703.2" textLength="976"
clip-path="url(#terminal-4196591838-line-28)">(TEXT)                                       
[...]
+</text><text class="terminal-4196591838-r4" x="0" y="727.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-29)">│</text><text
class="terminal-4196591838-r4" x="463.6" y="727.6" textLength="976"
clip-path="url(#terminal-4196591838-line-29)">[default:                                      
[...]
+</text><text class="terminal-4196591838-r4" x="0" y="752" textLength="12.2"
clip-path="url(#terminal-4196591838-line-30)">│</text><text
class="terminal-4196591838-r4" x="463.6" y="752" textLength="976"
clip-path="url(#terminal-4196591838-line-30)">amazon,async,celery,cncf.kubernetes,dask,docker,elasticsearch,ftp,google,google…</text><text
class="terminal-4196591838-r4" x="1451.8" y="752" textLength="12.2"
clip-path="url(#terminal-4196591838-line-30)">│</text><text
class="terminal-4196591 [...]
+</text><text class="terminal-4196591838-r4" x="0" y="776.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-31)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="776.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-31)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="776.4" textLength="97.6"
clip-path="url(#terminal-4196591838-line-31)">-airflow</text><text
class="terminal-4196591838-r5" x="134.2" y="776.4" textLength="207.4"
clip-path="url(#termi [...]
+</text><text class="terminal-4196591838-r4" x="0" y="800.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-32)">│</text><text
class="terminal-4196591838-r7" x="463.6" y="800.8" textLength="866.2"
clip-path="url(#terminal-4196591838-line-32)">(constraints | constraints-no-providers | constraints-source-providers)</text><text
class="terminal-4196591838-r4" x="1451.8" y="800.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-32)">│</text><text clas [...]
+</text><text class="terminal-4196591838-r4" x="0" y="825.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-33)">│</text><text
class="terminal-4196591838-r4" x="463.6" y="825.2" textLength="866.2"
clip-path="url(#terminal-4196591838-line-33)">[default: constraints]                                   &
[...]
+</text><text class="terminal-4196591838-r4" x="0" y="849.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-34)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="849.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-34)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="849.6" textLength="97.6"
clip-path="url(#terminal-4196591838-line-34)">-airflow</text><text
class="terminal-4196591838-r5" x="134.2" y="849.6" textLength="268.4"
clip-path="url(#termi [...]
+</text><text class="terminal-4196591838-r4" x="0" y="874" textLength="12.2"
clip-path="url(#terminal-4196591838-line-35)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="874" textLength="12.2"
clip-path="url(#terminal-4196591838-line-35)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="874" textLength="85.4"
clip-path="url(#terminal-4196591838-line-35)">-python</text><text
class="terminal-4196591838-r5" x="122" y="874" textLength="73.2"
clip-path="url(#terminal-41965918 [...]
+</text><text class="terminal-4196591838-r4" x="0" y="898.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-36)">│</text><text
class="terminal-4196591838-r2" x="463.6" y="898.4" textLength="976"
clip-path="url(#terminal-4196591838-line-36)">something like: python:VERSION-slim-bullseye                               
[...]
+</text><text class="terminal-4196591838-r4" x="0" y="922.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-37)">│</text><text
class="terminal-4196591838-r7" x="463.6" y="922.8" textLength="976"
clip-path="url(#terminal-4196591838-line-37)">(TEXT)                                       
[...]
+</text><text class="terminal-4196591838-r4" x="0" y="947.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-38)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="947.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-38)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="947.2" textLength="134.2"
clip-path="url(#terminal-4196591838-line-38)">-additional</text><text
class="terminal-4196591838-r5" x="170.8" y="947.2" textLength="146.4"
clip-path="url(#t [...]
+</text><text class="terminal-4196591838-r4" x="0" y="971.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-39)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="971.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-39)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="971.6" textLength="134.2"
clip-path="url(#terminal-4196591838-line-39)">-additional</text><text
class="terminal-4196591838-r5" x="170.8" y="971.6" textLength="85.4"
clip-path="url(#te [...]
+</text><text class="terminal-4196591838-r4" x="0" y="996" textLength="12.2"
clip-path="url(#terminal-4196591838-line-40)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="996" textLength="12.2"
clip-path="url(#terminal-4196591838-line-40)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="996" textLength="134.2"
clip-path="url(#terminal-4196591838-line-40)">-additional</text><text
class="terminal-4196591838-r5" x="170.8" y="996" textLength="207.4"
clip-path="url(#terminal- [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1020.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-41)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1020.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-41)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1020.4" textLength="134.2"
clip-path="url(#terminal-4196591838-line-41)">-additional</text><text
class="terminal-4196591838-r5" x="170.8" y="1020.4" textLength="195.2"
clip-path="ur [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1044.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-42)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1044.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-42)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1044.8" textLength="134.2"
clip-path="url(#terminal-4196591838-line-42)">-additional</text><text
class="terminal-4196591838-r5" x="170.8" y="1044.8" textLength="244"
clip-path="url( [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1069.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-43)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1069.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-43)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1069.2" textLength="134.2"
clip-path="url(#terminal-4196591838-line-43)">-additional</text><text
class="terminal-4196591838-r5" x="170.8" y="1069.2" textLength="158.6"
clip-path="ur [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1093.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-44)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1093.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-44)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1093.6" textLength="134.2"
clip-path="url(#terminal-4196591838-line-44)">-additional</text><text
class="terminal-4196591838-r5" x="170.8" y="1093.6" textLength="146.4"
clip-path="ur [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1118" textLength="12.2"
clip-path="url(#terminal-4196591838-line-45)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1118" textLength="12.2"
clip-path="url(#terminal-4196591838-line-45)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1118" textLength="134.2"
clip-path="url(#terminal-4196591838-line-45)">-additional</text><text
class="terminal-4196591838-r5" x="170.8" y="1118" textLength="195.2"
clip-path="url(#termi [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1142.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-46)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1142.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-46)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1142.4" textLength="97.6"
clip-path="url(#terminal-4196591838-line-46)">-runtime</text><text
class="terminal-4196591838-r5" x="134.2" y="1142.4" textLength="109.8"
clip-path="url(#t [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1166.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-47)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1166.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-47)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1166.8" textLength="97.6"
clip-path="url(#terminal-4196591838-line-47)">-runtime</text><text
class="terminal-4196591838-r5" x="134.2" y="1166.8" textLength="146.4"
clip-path="url(#t [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1191.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-48)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1191.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-48)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1191.2" textLength="48.8"
clip-path="url(#terminal-4196591838-line-48)">-dev</text><text
class="terminal-4196591838-r5" x="85.4" y="1191.2" textLength="109.8"
clip-path="url(#termin [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1215.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-49)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1215.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-49)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1215.6" textLength="48.8"
clip-path="url(#terminal-4196591838-line-49)">-dev</text><text
class="terminal-4196591838-r5" x="85.4" y="1215.6" textLength="146.4"
clip-path="url(#termin [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1240" textLength="1464"
clip-path="url(#terminal-4196591838-line-50)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="terminal-4196591838-r2" x="1464" y="1240" textLength="12.2"
clip-path="url(#terminal-4196591838-line-50)">
+</text><text class="terminal-4196591838-r4" x="0" y="1264.4" textLength="24.4"
clip-path="url(#terminal-4196591838-line-51)">╭─</text><text
class="terminal-4196591838-r4" x="24.4" y="1264.4" textLength="1415.2"
clip-path="url(#terminal-4196591838-line-51)"> Customization options (for specific customization needs) ──────────────────────────────────────────────────────────</text><text
class="terminal-4196591838-r4" x="1439.6" y="1264.4" textLength="24.4" [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1288.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-52)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1288.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-52)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1288.8" textLength="97.6"
clip-path="url(#terminal-4196591838-line-52)">-install</text><text
class="terminal-4196591838-r5" x="134.2" y="1288.8" textLength="268.4"
clip-path="url(#t [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1313.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-53)">│</text><text
class="terminal-4196591838-r2" x="536.8" y="1313.2" textLength="97.6"
clip-path="url(#terminal-4196591838-line-53)">Implies </text><text
class="terminal-4196591838-r5" x="634.4" y="1313.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-53)">-</text><text
class="terminal-4196591838-r5" x="646.6" y="1313.2" textLength="97.6"
clip-path=" [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1337.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-54)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1337.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-54)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1337.6" textLength="97.6"
clip-path="url(#terminal-4196591838-line-54)">-cleanup</text><text
class="terminal-4196591838-r5" x="134.2" y="1337.6" textLength="97.6"
clip-path="url(#te [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1362" textLength="12.2"
clip-path="url(#terminal-4196591838-line-55)">│</text><text
class="terminal-4196591838-r2" x="536.8" y="1362" textLength="170.8"
clip-path="url(#terminal-4196591838-line-55)">together with </text><text
class="terminal-4196591838-r5" x="707.6" y="1362" textLength="12.2"
clip-path="url(#terminal-4196591838-line-55)">-</text><text
class="terminal-4196591838-r5" x="719.8" y="1362" textLength="97.6" clip-pa
[...]
+</text><text class="terminal-4196591838-r4" x="0" y="1386.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-56)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1386.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-56)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1386.4" textLength="97.6"
clip-path="url(#terminal-4196591838-line-56)">-disable</text><text
class="terminal-4196591838-r5" x="134.2" y="1386.4" textLength="317.2"
clip-path="url(#t [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1410.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-57)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1410.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-57)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1410.8" textLength="97.6"
clip-path="url(#terminal-4196591838-line-57)">-disable</text><text
class="terminal-4196591838-r5" x="134.2" y="1410.8" textLength="317.2"
clip-path="url(#t [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1435.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-58)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1435.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-58)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1435.2" textLength="97.6"
clip-path="url(#terminal-4196591838-line-58)">-disable</text><text
class="terminal-4196591838-r5" x="134.2" y="1435.2" textLength="353.8"
clip-path="url(#t [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1459.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-59)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1459.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-59)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1459.6" textLength="97.6"
clip-path="url(#terminal-4196591838-line-59)">-disable</text><text
class="terminal-4196591838-r5" x="134.2" y="1459.6" textLength="231.8"
clip-path="url(#t [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1484" textLength="12.2"
clip-path="url(#terminal-4196591838-line-60)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1484" textLength="12.2"
clip-path="url(#terminal-4196591838-line-60)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1484" textLength="97.6"
clip-path="url(#terminal-4196591838-line-60)">-install</text><text
class="terminal-4196591838-r5" x="134.2" y="1484" textLength="219.6"
clip-path="url(#terminal- [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1508.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-61)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1508.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-61)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1508.4" textLength="158.6"
clip-path="url(#terminal-4196591838-line-61)">-installation</text><text
class="terminal-4196591838-r5" x="195.2" y="1508.4" textLength="85.4"
clip-path="u [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1532.8" textLength="1464"
clip-path="url(#terminal-4196591838-line-62)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="terminal-4196591838-r2" x="1464" y="1532.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-62)">
+</text><text class="terminal-4196591838-r4" x="0" y="1557.2" textLength="24.4"
clip-path="url(#terminal-4196591838-line-63)">╭─</text><text
class="terminal-4196591838-r4" x="24.4" y="1557.2" textLength="1415.2"
clip-path="url(#terminal-4196591838-line-63)"> Preparing cache and push (for maintainers and CI) ─────────────────────────────────────────────────────────────────</text><text
class="terminal-4196591838-r4" x="1439.6" y="1557.2" textLeng [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1581.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-64)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1581.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-64)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1581.6" textLength="85.4"
clip-path="url(#terminal-4196591838-line-64)">-github</text><text
class="terminal-4196591838-r5" x="122" y="1581.6" textLength="73.2"
clip-path="url(#termi [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1606" textLength="12.2"
clip-path="url(#terminal-4196591838-line-65)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1606" textLength="12.2"
clip-path="url(#terminal-4196591838-line-65)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1606" textLength="85.4"
clip-path="url(#terminal-4196591838-line-65)">-github</text><text
class="terminal-4196591838-r5" x="122" y="1606" textLength="109.8"
clip-path="url(#terminal-419 [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1630.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-66)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1630.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-66)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1630.4" textLength="109.8"
clip-path="url(#terminal-4196591838-line-66)">-platform</text><text
class="terminal-4196591838-r2" x="341.6" y="1630.4" textLength="329.4"
clip-path="url( [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1654.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-67)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1654.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-67)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1654.8" textLength="61"
clip-path="url(#terminal-4196591838-line-67)">-push</text><text
class="terminal-4196591838-r5" x="97.6" y="1654.8" textLength="73.2"
clip-path="url(#terminal [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1679.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-68)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1679.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-68)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1679.2" textLength="73.2"
clip-path="url(#terminal-4196591838-line-68)">-empty</text><text
class="terminal-4196591838-r5" x="109.8" y="1679.2" textLength="73.2"
clip-path="url(#term [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1703.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-69)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1703.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-69)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1703.6" textLength="97.6"
clip-path="url(#terminal-4196591838-line-69)">-prepare</text><text
class="terminal-4196591838-r5" x="134.2" y="1703.6" textLength="158.6"
clip-path="url(#t [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1728" textLength="12.2"
clip-path="url(#terminal-4196591838-line-70)">│</text><text
class="terminal-4196591838-r2" x="341.6" y="1728" textLength="1098"
clip-path="url(#terminal-4196591838-line-70)">image).                                       
[...]
+</text><text class="terminal-4196591838-r4" x="0" y="1752.4" textLength="1464"
clip-path="url(#terminal-4196591838-line-71)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="terminal-4196591838-r2" x="1464" y="1752.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-71)">
+</text><text class="terminal-4196591838-r4" x="0" y="1776.8" textLength="24.4"
clip-path="url(#terminal-4196591838-line-72)">╭─</text><text
class="terminal-4196591838-r4" x="24.4" y="1776.8" textLength="1415.2"
clip-path="url(#terminal-4196591838-line-72)"> Options ───────────────────────────────────────────────────────────────────────────────────────────────────────────</text><text
class="terminal-4196591838-r4" x="1439.6" y="1776.8" textLength="24.4"
clip-path="url(#terminal- [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1801.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-73)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1801.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-73)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1801.2" textLength="85.4"
clip-path="url(#terminal-4196591838-line-73)">-github</text><text
class="terminal-4196591838-r5" x="122" y="1801.2" textLength="134.2"
clip-path="url(#term [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1825.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-74)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1825.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-74)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1825.6" textLength="97.6"
clip-path="url(#terminal-4196591838-line-74)">-builder</text><text
class="terminal-4196591838-r2" x="329.4" y="1825.6" textLength="744.2"
clip-path="url(#t [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1850" textLength="12.2"
clip-path="url(#terminal-4196591838-line-75)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1850" textLength="12.2"
clip-path="url(#terminal-4196591838-line-75)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1850" textLength="85.4"
clip-path="url(#terminal-4196591838-line-75)">-answer</text><text
class="terminal-4196591838-r6" x="280.6" y="1850" textLength="24.4"
clip-path="url(#terminal-41 [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1874.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-76)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1874.4" textLength="12.2"
clip-path="url(#terminal-4196591838-line-76)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1874.4" textLength="48.8"
clip-path="url(#terminal-4196591838-line-76)">-dry</text><text
class="terminal-4196591838-r5" x="85.4" y="1874.4" textLength="48.8"
clip-path="url(#termina [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1898.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-77)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1898.8" textLength="12.2"
clip-path="url(#terminal-4196591838-line-77)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1898.8" textLength="97.6"
clip-path="url(#terminal-4196591838-line-77)">-verbose</text><text
class="terminal-4196591838-r6" x="280.6" y="1898.8" textLength="24.4"
clip-path="url(#te [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1923.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-78)">│</text><text
class="terminal-4196591838-r5" x="24.4" y="1923.2" textLength="12.2"
clip-path="url(#terminal-4196591838-line-78)">-</text><text
class="terminal-4196591838-r5" x="36.6" y="1923.2" textLength="61"
clip-path="url(#terminal-4196591838-line-78)">-help</text><text
class="terminal-4196591838-r6" x="280.6" y="1923.2" textLength="24.4"
clip-path="url(#termina [...]
+</text><text class="terminal-4196591838-r4" x="0" y="1947.6" textLength="1464"
clip-path="url(#terminal-4196591838-line-79)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="terminal-4196591838-r2" x="1464" y="1947.6" textLength="12.2"
clip-path="url(#terminal-4196591838-line-79)">
</text>
</g>
</g>
diff --git a/images/breeze/output-commands-hash.txt
b/images/breeze/output-commands-hash.txt
index 5acbae5e3a..42ebefca51 100644
--- a/images/breeze/output-commands-hash.txt
+++ b/images/breeze/output-commands-hash.txt
@@ -5,7 +5,7 @@
main:fa4319079b275ce966502346f083f2e3
build-docs:74c301f05bbd185a19fd185f1873e38a
build-image:b62509a59badf3aa230e4562df751002
-build-prod-image:1902ec077a6d70336de6038d13472ef3
+build-prod-image:b9aa5dcefcd7067a6698f68c05adc2b8
cleanup:9a94bd1063296ea86e895f671db0b330
command-hash-export:83bc6a4a8c60b62da3d0f00e81d2c3ea
config:92653afc11889e1b78e3a2e38f41107f
diff --git a/scripts/ci/libraries/_initialization.sh
b/scripts/ci/libraries/_initialization.sh
index 41466152bd..a5292e4bef 100644
--- a/scripts/ci/libraries/_initialization.sh
+++ b/scripts/ci/libraries/_initialization.sh
@@ -459,11 +459,6 @@ function
initialization::initialize_image_build_variables() {
# Determines which providers are used to generate constraints - source,
pypi or no providers
export
AIRFLOW_CONSTRAINTS_MODE=${AIRFLOW_CONSTRAINTS_MODE:="constraints-source-providers"}
- # By default we install latest airflow from PyPI or sources. You can set
this parameter to false
- # if Airflow is in the .whl or .tar.gz packages placed in
`docker-context-files` folder and you want
- # to skip installing Airflow/Providers from PyPI or sources.
- export AIRFLOW_IS_IN_CONTEXT="${AIRFLOW_IS_IN_CONTEXT:="false"}"
-
# whether installation should be performed from the local wheel packages
in "docker-context-files" folder
export
INSTALL_PACKAGES_FROM_CONTEXT="${INSTALL_PACKAGES_FROM_CONTEXT:="false"}"
@@ -715,7 +710,6 @@ Common image build variables:
INSTALL_AIRFLOW_VERSION: '${INSTALL_AIRFLOW_VERSION}'
INSTALL_AIRFLOW_REFERENCE: '${INSTALL_AIRFLOW_REFERENCE}'
- AIRFLOW_IS_IN_CONTEXT: '${AIRFLOW_IS_IN_CONTEXT}'
AIRFLOW_PRE_CACHED_PIP_PACKAGES: '${AIRFLOW_PRE_CACHED_PIP_PACKAGES}'
UPGRADE_TO_NEWER_DEPENDENCIES: '${UPGRADE_TO_NEWER_DEPENDENCIES}'
CHECK_IMAGE_FOR_REBUILD: '${CHECK_IMAGE_FOR_REBUILD}'
@@ -858,7 +852,6 @@ function initialization::make_constants_read_only() {
readonly IMAGE_TAG
readonly AIRFLOW_PRE_CACHED_PIP_PACKAGES
- readonly AIRFLOW_IS_IN_CONTEXT
readonly INSTALL_PACKAGES_FROM_CONTEXT
readonly AIRFLOW_CONSTRAINTS_REFERENCE
readonly AIRFLOW_CONSTRAINTS_LOCATION