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 68aaa077adc Add timeout on total pytest execution time in parallel
tests (#44772)
68aaa077adc is described below
commit 68aaa077adc3dc771ea6528af91c27b453d7346e
Author: Jarek Potiuk <[email protected]>
AuthorDate: Sun Dec 8 18:01:35 2024 +0100
Add timeout on total pytest execution time in parallel tests (#44772)
When there is a test that does not allow pytest command to quit
cleanly, in case of parallell commands, we have no chance to see
the outputs of test command that failed, because whole CI job is
cancelled and we only upload the logs on failure in the following
step of the job.
Adding timeout for parallel tests that is a little shorter than
the job timeout will give a chance for our tests to get cancelled
before the job timeout occur, and even if we will not see the logs
in the output of the cancelled `breeze testing` command, the logs
should be uploaded as artifacts in this case.
Also we are serving "cancelled" status of job, because it's likely
that will also be possible to do "something" in case test gets
cancelled due to timeout.
---
.github/workflows/run-unit-tests.yml | 2 +-
.../doc/images/output_testing_core-tests.svg | 118 ++++++++++--------
.../doc/images/output_testing_core-tests.txt | 2 +-
.../doc/images/output_testing_providers-tests.svg | 136 ++++++++++++---------
.../doc/images/output_testing_providers-tests.txt | 2 +-
.../doc/images/output_testing_task-sdk-tests.svg | 48 ++------
.../doc/images/output_testing_task-sdk-tests.txt | 2 +-
.../airflow_breeze/commands/testing_commands.py | 59 ++++++---
.../commands/testing_commands_config.py | 47 +------
9 files changed, 201 insertions(+), 215 deletions(-)
diff --git a/.github/workflows/run-unit-tests.yml
b/.github/workflows/run-unit-tests.yml
index 26674cbc63e..6b491f6bff4 100644
--- a/.github/workflows/run-unit-tests.yml
+++ b/.github/workflows/run-unit-tests.yml
@@ -183,4 +183,4 @@ jobs:
if: success()
- name: "Post Tests failure"
uses: ./.github/actions/post_tests_failure
- if: failure()
+ if: failure() || cancelled()
diff --git a/dev/breeze/doc/images/output_testing_core-tests.svg
b/dev/breeze/doc/images/output_testing_core-tests.svg
index 6c30d1b090f..65f7343b99b 100644
--- a/dev/breeze/doc/images/output_testing_core-tests.svg
+++ b/dev/breeze/doc/images/output_testing_core-tests.svg
@@ -1,4 +1,4 @@
-<svg class="rich-terminal" viewBox="0 0 1482 2587.6"
xmlns="http://www.w3.org/2000/svg">
+<svg class="rich-terminal" viewBox="0 0 1482 2685.2"
xmlns="http://www.w3.org/2000/svg">
<!-- Generated with Rich https://www.textualize.io -->
<style>
@@ -43,7 +43,7 @@
<defs>
<clipPath id="breeze-testing-core-tests-clip-terminal">
- <rect x="0" y="0" width="1463.0" height="2536.6" />
+ <rect x="0" y="0" width="1463.0" height="2634.2" />
</clipPath>
<clipPath id="breeze-testing-core-tests-line-0">
<rect x="0" y="1.5" width="1464" height="24.65"/>
@@ -354,9 +354,21 @@
<clipPath id="breeze-testing-core-tests-line-102">
<rect x="0" y="2490.3" width="1464" height="24.65"/>
</clipPath>
+<clipPath id="breeze-testing-core-tests-line-103">
+ <rect x="0" y="2514.7" width="1464" height="24.65"/>
+ </clipPath>
+<clipPath id="breeze-testing-core-tests-line-104">
+ <rect x="0" y="2539.1" width="1464" height="24.65"/>
+ </clipPath>
+<clipPath id="breeze-testing-core-tests-line-105">
+ <rect x="0" y="2563.5" width="1464" height="24.65"/>
+ </clipPath>
+<clipPath id="breeze-testing-core-tests-line-106">
+ <rect x="0" y="2587.9" 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="2585.6" rx="8"/><text
class="breeze-testing-core-tests-title" fill="#c5c8c6" text-anchor="middle"
x="740" y="27">Command: testing core-tests</text>
+ <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1"
x="1" y="1" width="1480" height="2683.2" rx="8"/><text
class="breeze-testing-core-tests-title" fill="#c5c8c6" text-anchor="middle"
x="740" y="27">Command: testing core-tests</text>
<g transform="translate(26,22)">
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
@@ -422,54 +434,58 @@
</text><text class="breeze-testing-core-tests-r5" x="0" y="1313.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-53)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1313.2" textLength="170.8"
clip-path="url(#breeze-testing-core-tests-line-53)">--skip-cleanup</text><text
class="breeze-testing-core-tests-r1" x="378.2" y="1313.2" textLength="732"
clip-path="url(#breeze-testing-core-tests-line-53)">Skip cleanup of temporary files cr
[...]
</text><text class="breeze-testing-core-tests-r5" x="0" y="1337.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-54)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1337.6" textLength="207.4"
clip-path="url(#breeze-testing-core-tests-line-54)">--debug-resources</text><text
class="breeze-testing-core-tests-r1" x="378.2" y="1337.6" textLength="768.6"
clip-path="url(#breeze-testing-core-tests-line-54)">Whether to show resource informati
[...]
</text><text class="breeze-testing-core-tests-r5" x="0" y="1362"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-55)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1362" textLength="305"
clip-path="url(#breeze-testing-core-tests-line-55)">--include-success-outputs</text><text
class="breeze-testing-core-tests-r1" x="378.2" y="1362" textLength="927.2"
clip-path="url(#breeze-testing-core-tests-line-55)">Whether to include outputs of 
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1386.4"
textLength="1464"
clip-path="url(#breeze-testing-core-tests-line-56)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-core-tests-r1" x="1464" y="1386.4" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-56)">
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1410.8"
textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-57)">╭─</text><text
class="breeze-testing-core-tests-r5" x="24.4" y="1410.8" textLength="610"
clip-path="url(#breeze-testing-core-tests-line-57)"> Upgrading/downgrading/removing selected packages </text><text
class="breeze-testing-core-tests-r5" x="634.4" y="1410.8" textLength="805.2"
clip-path="url(#breeze-testing-core-tests-line-57)">── [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1435.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-58)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1435.2" textLength="170.8"
clip-path="url(#breeze-testing-core-tests-line-58)">--upgrade-boto</text><text
class="breeze-testing-core-tests-r1" x="341.6" y="1435.2" textLength="866.2"
clip-path="url(#breeze-testing-core-tests-line-58)">Remove aiobotocore and upgrade botoco
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1459.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-59)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1459.6" textLength="268.4"
clip-path="url(#breeze-testing-core-tests-line-59)">--downgrade-sqlalchemy</text><text
class="breeze-testing-core-tests-r1" x="341.6" y="1459.6" textLength="610"
clip-path="url(#breeze-testing-core-tests-line-59)">Downgrade SQLAlchemy to minimum 
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1484"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-60)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1484" textLength="244"
clip-path="url(#breeze-testing-core-tests-line-60)">--downgrade-pendulum</text><text
class="breeze-testing-core-tests-r1" x="341.6" y="1484" textLength="585.6"
clip-path="url(#breeze-testing-core-tests-line-60)">Downgrade Pendulum to minimum supported
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1508.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-61)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1508.4" textLength="256.2"
clip-path="url(#breeze-testing-core-tests-line-61)">--remove-arm-packages</text><text
class="breeze-testing-core-tests-r1" x="341.6" y="1508.4" textLength="817.4"
clip-path="url(#breeze-testing-core-tests-line-61)">Removes arm packages from the&
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1532.8"
textLength="1464"
clip-path="url(#breeze-testing-core-tests-line-62)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-core-tests-r1" x="1464" y="1532.8" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-62)">
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1557.2"
textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-63)">╭─</text><text
class="breeze-testing-core-tests-r5" x="24.4" y="1557.2" textLength="402.6"
clip-path="url(#breeze-testing-core-tests-line-63)"> Advanced flag for tests command </text><text
class="breeze-testing-core-tests-r5" x="427" y="1557.2" textLength="1012.6"
clip-path="url(#breeze-testing-core-tests-line-63)">──────── [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1581.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-64)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1581.6" textLength="231.8"
clip-path="url(#breeze-testing-core-tests-line-64)">--github-repository</text><text
class="breeze-testing-core-tests-r7" x="366" y="1581.6" textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-64)">-g</text><text
class="breeze-testing-core-tests-r1" x=" [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1606"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-65)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1606" textLength="134.2"
clip-path="url(#breeze-testing-core-tests-line-65)">--image-tag</text><text
class="breeze-testing-core-tests-r1" x="414.8" y="1606" textLength="695.4"
clip-path="url(#breeze-testing-core-tests-line-65)">Tag of the image which is used 
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1630.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-66)">│</text><text
class="breeze-testing-core-tests-r6" x="414.8" y="1630.4" textLength="963.8"
clip-path="url(#breeze-testing-core-tests-line-66)">(TEXT)                                  &#
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1654.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-67)">│</text><text
class="breeze-testing-core-tests-r5" x="414.8" y="1654.8" textLength="963.8"
clip-path="url(#breeze-testing-core-tests-line-67)">[default: latest]                               
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1679.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-68)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1679.2" textLength="183"
clip-path="url(#breeze-testing-core-tests-line-68)">--mount-sources</text><text
class="breeze-testing-core-tests-r1" x="414.8" y="1679.2" textLength="1024.8"
clip-path="url(#breeze-testing-core-tests-line-68)">Choose scope of local sources th
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1703.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-69)">│</text><text
class="breeze-testing-core-tests-r1" x="414.8" y="1703.6" textLength="1024.8"
clip-path="url(#breeze-testing-core-tests-line-69)">selected).                                 
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1728"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-70)">│</text><text
class="breeze-testing-core-tests-r6" x="414.8" y="1728" textLength="1024.8"
clip-path="url(#breeze-testing-core-tests-line-70)">(selected | all | skip | remove | tests | providers-and-tests)                 &
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1752.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-71)">│</text><text
class="breeze-testing-core-tests-r5" x="414.8" y="1752.4" textLength="1024.8"
clip-path="url(#breeze-testing-core-tests-line-71)">[default: selected]                               &
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1776.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-72)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1776.8" textLength="317.2"
clip-path="url(#breeze-testing-core-tests-line-72)">--skip-docker-compose-down</text><text
class="breeze-testing-core-tests-r1" x="414.8" y="1776.8" textLength="549"
clip-path="url(#breeze-testing-core-tests-line-72)">Skips running docker-compose dow
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1801.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-73)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1801.2" textLength="244"
clip-path="url(#breeze-testing-core-tests-line-73)">--keep-env-variables</text><text
class="breeze-testing-core-tests-r1" x="414.8" y="1801.2" textLength="1000.4"
clip-path="url(#breeze-testing-core-tests-line-73)">Do not clear environment variabl
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1825.6"
textLength="1464"
clip-path="url(#breeze-testing-core-tests-line-74)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-core-tests-r1" x="1464" y="1825.6" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-74)">
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1850"
textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-75)">╭─</text><text
class="breeze-testing-core-tests-r5" x="24.4" y="1850" textLength="622.2"
clip-path="url(#breeze-testing-core-tests-line-75)"> Advanced flag for installing airflow in container </text><text
class="breeze-testing-core-tests-r5" x="646.6" y="1850" textLength="793"
clip-path="url(#breeze-testing-core-tes [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1874.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-76)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1874.4" textLength="378.2"
clip-path="url(#breeze-testing-core-tests-line-76)">--airflow-constraints-reference</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="1874.4" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-76)">Constraint reference to u
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1898.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-77)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="1898.8" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-77)">(used in calculated constraints URL).                   </text><text
class="breeze-testing-core-t [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1923.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-78)">│</text><text
class="breeze-testing-core-tests-r6" x="756.4" y="1923.2" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-78)">(TEXT)                                  &#
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1947.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-79)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1947.6" textLength="341.6"
clip-path="url(#breeze-testing-core-tests-line-79)">--clean-airflow-installation</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="1947.6" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-79)">Clean the airflow installati
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1972"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-80)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="1972" textLength="158.6"
clip-path="url(#breeze-testing-core-tests-line-80)">specified by </text><text
class="breeze-testing-core-tests-r4" x="915" y="1972" textLength="256.2"
clip-path="url(#breeze-testing-core-tests-line-80)">--use-airflow-version</text><text
class="breeze-testing [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="1996.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-81)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1996.4" textLength="329.4"
clip-path="url(#breeze-testing-core-tests-line-81)">--force-lowest-dependencies</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="1996.4" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-81)">Run tests for the lowest
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2020.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-82)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2020.8" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-82)">or selected provider if `Provider[PROVIDER_ID]` is used </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y="2020.8" textLength="12.2"
clip-path="url(#breeze-testing- [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2045.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-83)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2045.2" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-83)">as test type.                               
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2069.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-84)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2069.6" textLength="414.8"
clip-path="url(#breeze-testing-core-tests-line-84)">--install-airflow-with-constraints</text><text
class="breeze-testing-core-tests-r1" x="439.2" y="2069.6" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-84)">/</text><text
class="breeze-testing-co [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2094"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-85)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2094" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-85)">determined from package or airflow version.             </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y="2094" [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2118.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-86)">│</text><text
class="breeze-testing-core-tests-r5" x="756.4" y="2118.4" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-86)">[default: no-install-airflow-with-constraints]          </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y="2118.4" textLength="12.2"
clip-path=" [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2142.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-87)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2142.8" textLength="195.2"
clip-path="url(#breeze-testing-core-tests-line-87)">--package-format</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2142.8" textLength="231.8"
clip-path="url(#breeze-testing-core-tests-line-87)">Format of packages.</text><text
class="breeze [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2167.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-88)">│</text><text
class="breeze-testing-core-tests-r5" x="756.4" y="2167.2" textLength="231.8"
clip-path="url(#breeze-testing-core-tests-line-88)">[default: wheel]   </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y="2167.2" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-88)">│</text><text
class="breeze-tes [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2191.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-89)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2191.6" textLength="256.2"
clip-path="url(#breeze-testing-core-tests-line-89)">--use-airflow-version</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2191.6" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-89)">Use (reinstall at entry) Airfl
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2216"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-90)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2216" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-90)">can also be version (to install from PyPI), `none`,     </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y="2216" textLength="12.2"
clip-pa [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2240.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-91)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2240.4" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-91)">`wheel`, or `sdist` to install from `dist` folder, or   </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y="2240.4" textLength="12.2"
clip-path=" [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2264.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-92)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2264.8" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-92)">VCS URL to install from                            &
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2289.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-93)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2289.2" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-93)">(https://pip.pypa.io/en/stable/topics/vcs-support/).    </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y="2289.2" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2313.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-94)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2313.6" textLength="97.6"
clip-path="url(#breeze-testing-core-tests-line-94)">Implies </text><text
class="breeze-testing-core-tests-r4" x="854" y="2313.6" textLength="183"
clip-path="url(#breeze-testing-core-tests-line-94)">--mount-sources</text><text
class="breeze-testing-core-tests-r [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2338"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-95)">│</text><text
class="breeze-testing-core-tests-r6" x="756.4" y="2338" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-95)">(none | wheel | sdist | <airflow_version>)              </text><text
class="breeze-testing-core-tests-r5" x="1 [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2362.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-96)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2362.4" textLength="292.8"
clip-path="url(#breeze-testing-core-tests-line-96)">--use-packages-from-dist</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2362.4" textLength="341.6"
clip-path="url(#breeze-testing-core-tests-line-96)">Install all found packages 
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2386.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-97)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2386.8" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-97)">type) from 'dist' folder when entering breeze.          </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y="23 [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2411.2"
textLength="1464"
clip-path="url(#breeze-testing-core-tests-line-98)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-core-tests-r1" x="1464" y="2411.2" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-98)">
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2435.6"
textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-99)">╭─</text><text
class="breeze-testing-core-tests-r5" x="24.4" y="2435.6" textLength="195.2"
clip-path="url(#breeze-testing-core-tests-line-99)"> Common options </text><text
class="breeze-testing-core-tests-r5" x="219.6" y="2435.6" textLength="1220"
clip-path="url(#breeze-testing-core-tests-line-99)">────────────────────────────────────────
[...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2460"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-100)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2460" textLength="109.8"
clip-path="url(#breeze-testing-core-tests-line-100)">--dry-run</text><text
class="breeze-testing-core-tests-r7" x="158.6" y="2460" textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-100)">-D</text><text
class="breeze-testing-core-tests-r1" x="207.4" y="2 [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2484.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-101)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2484.4" textLength="109.8"
clip-path="url(#breeze-testing-core-tests-line-101)">--verbose</text><text
class="breeze-testing-core-tests-r7" x="158.6" y="2484.4" textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-101)">-v</text><text
class="breeze-testing-core-tests-r1" x="207.4 [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2508.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-102)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2508.8" textLength="73.2"
clip-path="url(#breeze-testing-core-tests-line-102)">--help</text><text
class="breeze-testing-core-tests-r7" x="158.6" y="2508.8" textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-102)">-h</text><text
class="breeze-testing-core-tests-r1" x="207.4" y= [...]
-</text><text class="breeze-testing-core-tests-r5" x="0" y="2533.2"
textLength="1464"
clip-path="url(#breeze-testing-core-tests-line-103)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-core-tests-r1" x="1464" y="2533.2" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-103)">
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1386.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-56)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1386.4" textLength="244"
clip-path="url(#breeze-testing-core-tests-line-56)">--total-test-timeout</text><text
class="breeze-testing-core-tests-r1" x="378.2" y="1386.4" textLength="1061.4"
clip-path="url(#breeze-testing-core-tests-line-56)">Total test timeout in seconds.&#
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1410.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-57)">│</text><text
class="breeze-testing-core-tests-r1" x="378.2" y="1410.8" textLength="1061.4"
clip-path="url(#breeze-testing-core-tests-line-57)">there is an underlying pytest command that hangs, the process will be stop with system </text><text
class="breeze-testing-core-tests-r5" [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1435.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-58)">│</text><text
class="breeze-testing-core-tests-r1" x="378.2" y="1435.2" textLength="1061.4"
clip-path="url(#breeze-testing-core-tests-line-58)">exit after that time. This should give a chance to upload logs as artifacts on CI.     </text><text
class="bree [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1459.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-59)">│</text><text
class="breeze-testing-core-tests-r6" x="378.2" y="1459.6" textLength="1061.4"
clip-path="url(#breeze-testing-core-tests-line-59)">(INTEGER)                                 
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1484"
textLength="1464"
clip-path="url(#breeze-testing-core-tests-line-60)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-core-tests-r1" x="1464" y="1484" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-60)">
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1508.4"
textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-61)">╭─</text><text
class="breeze-testing-core-tests-r5" x="24.4" y="1508.4" textLength="610"
clip-path="url(#breeze-testing-core-tests-line-61)"> Upgrading/downgrading/removing selected packages </text><text
class="breeze-testing-core-tests-r5" x="634.4" y="1508.4" textLength="805.2"
clip-path="url(#breeze-testing-core-tests-line-61)">── [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1532.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-62)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1532.8" textLength="170.8"
clip-path="url(#breeze-testing-core-tests-line-62)">--upgrade-boto</text><text
class="breeze-testing-core-tests-r1" x="341.6" y="1532.8" textLength="866.2"
clip-path="url(#breeze-testing-core-tests-line-62)">Remove aiobotocore and upgrade botoco
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1557.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-63)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1557.2" textLength="268.4"
clip-path="url(#breeze-testing-core-tests-line-63)">--downgrade-sqlalchemy</text><text
class="breeze-testing-core-tests-r1" x="341.6" y="1557.2" textLength="610"
clip-path="url(#breeze-testing-core-tests-line-63)">Downgrade SQLAlchemy to minimum 
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1581.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-64)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1581.6" textLength="244"
clip-path="url(#breeze-testing-core-tests-line-64)">--downgrade-pendulum</text><text
class="breeze-testing-core-tests-r1" x="341.6" y="1581.6" textLength="585.6"
clip-path="url(#breeze-testing-core-tests-line-64)">Downgrade Pendulum to minimum sup
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1606"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-65)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1606" textLength="256.2"
clip-path="url(#breeze-testing-core-tests-line-65)">--remove-arm-packages</text><text
class="breeze-testing-core-tests-r1" x="341.6" y="1606" textLength="817.4"
clip-path="url(#breeze-testing-core-tests-line-65)">Removes arm packages from the i
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1630.4"
textLength="1464"
clip-path="url(#breeze-testing-core-tests-line-66)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-core-tests-r1" x="1464" y="1630.4" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-66)">
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1654.8"
textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-67)">╭─</text><text
class="breeze-testing-core-tests-r5" x="24.4" y="1654.8" textLength="402.6"
clip-path="url(#breeze-testing-core-tests-line-67)"> Advanced flag for tests command </text><text
class="breeze-testing-core-tests-r5" x="427" y="1654.8" textLength="1012.6"
clip-path="url(#breeze-testing-core-tests-line-67)">──────── [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1679.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-68)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1679.2" textLength="231.8"
clip-path="url(#breeze-testing-core-tests-line-68)">--github-repository</text><text
class="breeze-testing-core-tests-r7" x="366" y="1679.2" textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-68)">-g</text><text
class="breeze-testing-core-tests-r1" x=" [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1703.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-69)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1703.6" textLength="134.2"
clip-path="url(#breeze-testing-core-tests-line-69)">--image-tag</text><text
class="breeze-testing-core-tests-r1" x="414.8" y="1703.6" textLength="695.4"
clip-path="url(#breeze-testing-core-tests-line-69)">Tag of the image which is used
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1728"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-70)">│</text><text
class="breeze-testing-core-tests-r6" x="414.8" y="1728" textLength="963.8"
clip-path="url(#breeze-testing-core-tests-line-70)">(TEXT)                                   
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1752.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-71)">│</text><text
class="breeze-testing-core-tests-r5" x="414.8" y="1752.4" textLength="963.8"
clip-path="url(#breeze-testing-core-tests-line-71)">[default: latest]                               
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1776.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-72)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1776.8" textLength="183"
clip-path="url(#breeze-testing-core-tests-line-72)">--mount-sources</text><text
class="breeze-testing-core-tests-r1" x="414.8" y="1776.8" textLength="1024.8"
clip-path="url(#breeze-testing-core-tests-line-72)">Choose scope of local sources th
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1801.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-73)">│</text><text
class="breeze-testing-core-tests-r1" x="414.8" y="1801.2" textLength="1024.8"
clip-path="url(#breeze-testing-core-tests-line-73)">selected).                                 
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1825.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-74)">│</text><text
class="breeze-testing-core-tests-r6" x="414.8" y="1825.6" textLength="1024.8"
clip-path="url(#breeze-testing-core-tests-line-74)">(selected | all | skip | remove | tests | providers-and-tests)                
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1850"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-75)">│</text><text
class="breeze-testing-core-tests-r5" x="414.8" y="1850" textLength="1024.8"
clip-path="url(#breeze-testing-core-tests-line-75)">[default: selected]                                
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1874.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-76)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1874.4" textLength="317.2"
clip-path="url(#breeze-testing-core-tests-line-76)">--skip-docker-compose-down</text><text
class="breeze-testing-core-tests-r1" x="414.8" y="1874.4" textLength="549"
clip-path="url(#breeze-testing-core-tests-line-76)">Skips running docker-compose dow
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1898.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-77)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1898.8" textLength="244"
clip-path="url(#breeze-testing-core-tests-line-77)">--keep-env-variables</text><text
class="breeze-testing-core-tests-r1" x="414.8" y="1898.8" textLength="1000.4"
clip-path="url(#breeze-testing-core-tests-line-77)">Do not clear environment variabl
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1923.2"
textLength="1464"
clip-path="url(#breeze-testing-core-tests-line-78)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-core-tests-r1" x="1464" y="1923.2" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-78)">
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1947.6"
textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-79)">╭─</text><text
class="breeze-testing-core-tests-r5" x="24.4" y="1947.6" textLength="622.2"
clip-path="url(#breeze-testing-core-tests-line-79)"> Advanced flag for installing airflow in container </text><text
class="breeze-testing-core-tests-r5" x="646.6" y="1947.6" textLength="793"
clip-path="url(#breeze-testing-co [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1972"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-80)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="1972" textLength="378.2"
clip-path="url(#breeze-testing-core-tests-line-80)">--airflow-constraints-reference</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="1972" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-80)">Constraint reference to use
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="1996.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-81)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="1996.4" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-81)">(used in calculated constraints URL).                   </text><text
class="breeze-testing-core-t [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2020.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-82)">│</text><text
class="breeze-testing-core-tests-r6" x="756.4" y="2020.8" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-82)">(TEXT)                                  &#
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2045.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-83)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2045.2" textLength="341.6"
clip-path="url(#breeze-testing-core-tests-line-83)">--clean-airflow-installation</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2045.2" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-83)">Clean the airflow installati
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2069.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-84)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2069.6" textLength="158.6"
clip-path="url(#breeze-testing-core-tests-line-84)">specified by </text><text
class="breeze-testing-core-tests-r4" x="915" y="2069.6" textLength="256.2"
clip-path="url(#breeze-testing-core-tests-line-84)">--use-airflow-version</text><text
class="breeze-t [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2094"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-85)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2094" textLength="329.4"
clip-path="url(#breeze-testing-core-tests-line-85)">--force-lowest-dependencies</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2094" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-85)">Run tests for the lowest 
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2118.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-86)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2118.4" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-86)">or selected provider if `Provider[PROVIDER_ID]` is used </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y="2118.4" textLength="12.2"
clip-path="url(#breeze-testing- [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2142.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-87)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2142.8" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-87)">as test type.                               
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2167.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-88)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2167.2" textLength="414.8"
clip-path="url(#breeze-testing-core-tests-line-88)">--install-airflow-with-constraints</text><text
class="breeze-testing-core-tests-r1" x="439.2" y="2167.2" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-88)">/</text><text
class="breeze-testing-co [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2191.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-89)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2191.6" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-89)">determined from package or airflow version.             </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y="21 [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2216"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-90)">│</text><text
class="breeze-testing-core-tests-r5" x="756.4" y="2216" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-90)">[default: no-install-airflow-with-constraints]          </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y="2216" textLength="12.2"
clip-path="url(#b [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2240.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-91)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2240.4" textLength="195.2"
clip-path="url(#breeze-testing-core-tests-line-91)">--package-format</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2240.4" textLength="231.8"
clip-path="url(#breeze-testing-core-tests-line-91)">Format of packages.</text><text
class="breeze [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2264.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-92)">│</text><text
class="breeze-testing-core-tests-r5" x="756.4" y="2264.8" textLength="231.8"
clip-path="url(#breeze-testing-core-tests-line-92)">[default: wheel]   </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y="2264.8" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-92)">│</text><text
class="breeze-tes [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2289.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-93)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2289.2" textLength="256.2"
clip-path="url(#breeze-testing-core-tests-line-93)">--use-airflow-version</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2289.2" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-93)">Use (reinstall at entry) Airfl
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2313.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-94)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2313.6" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-94)">can also be version (to install from PyPI), `none`,     </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y="2313.6" textLength="12.2" c
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2338"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-95)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2338" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-95)">`wheel`, or `sdist` to install from `dist` folder, or   </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y="2338" textLength="12.2"
clip-path="url(#b [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2362.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-96)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2362.4" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-96)">VCS URL to install from                            &
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2386.8"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-97)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2386.8" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-97)">(https://pip.pypa.io/en/stable/topics/vcs-support/).    </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y="2386.8" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2411.2"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-98)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2411.2" textLength="97.6"
clip-path="url(#breeze-testing-core-tests-line-98)">Implies </text><text
class="breeze-testing-core-tests-r4" x="854" y="2411.2" textLength="183"
clip-path="url(#breeze-testing-core-tests-line-98)">--mount-sources</text><text
class="breeze-testing-core-tests-r [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2435.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-99)">│</text><text
class="breeze-testing-core-tests-r6" x="756.4" y="2435.6" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-99)">(none | wheel | sdist | <airflow_version>)              </text><text
class="breeze-testing-core-tests-r5" [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2460"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-100)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2460" textLength="292.8"
clip-path="url(#breeze-testing-core-tests-line-100)">--use-packages-from-dist</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2460" textLength="341.6"
clip-path="url(#breeze-testing-core-tests-line-100)">Install all found packages (</
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2484.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-101)">│</text><text
class="breeze-testing-core-tests-r1" x="756.4" y="2484.4" textLength="683.2"
clip-path="url(#breeze-testing-core-tests-line-101)">type) from 'dist' folder when entering breeze.          </text><text
class="breeze-testing-core-tests-r5" x="1451.8" y=" [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2508.8"
textLength="1464"
clip-path="url(#breeze-testing-core-tests-line-102)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-core-tests-r1" x="1464" y="2508.8" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-102)">
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2533.2"
textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-103)">╭─</text><text
class="breeze-testing-core-tests-r5" x="24.4" y="2533.2" textLength="195.2"
clip-path="url(#breeze-testing-core-tests-line-103)"> Common options </text><text
class="breeze-testing-core-tests-r5" x="219.6" y="2533.2" textLength="1220"
clip-path="url(#breeze-testing-core-tests-line-103)">─────────────────────────────────────
[...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2557.6"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-104)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2557.6" textLength="109.8"
clip-path="url(#breeze-testing-core-tests-line-104)">--dry-run</text><text
class="breeze-testing-core-tests-r7" x="158.6" y="2557.6" textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-104)">-D</text><text
class="breeze-testing-core-tests-r1" x="207.4 [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2582"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-105)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2582" textLength="109.8"
clip-path="url(#breeze-testing-core-tests-line-105)">--verbose</text><text
class="breeze-testing-core-tests-r7" x="158.6" y="2582" textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-105)">-v</text><text
class="breeze-testing-core-tests-r1" x="207.4" y="2 [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2606.4"
textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-106)">│</text><text
class="breeze-testing-core-tests-r4" x="24.4" y="2606.4" textLength="73.2"
clip-path="url(#breeze-testing-core-tests-line-106)">--help</text><text
class="breeze-testing-core-tests-r7" x="158.6" y="2606.4" textLength="24.4"
clip-path="url(#breeze-testing-core-tests-line-106)">-h</text><text
class="breeze-testing-core-tests-r1" x="207.4" y= [...]
+</text><text class="breeze-testing-core-tests-r5" x="0" y="2630.8"
textLength="1464"
clip-path="url(#breeze-testing-core-tests-line-107)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-core-tests-r1" x="1464" y="2630.8" textLength="12.2"
clip-path="url(#breeze-testing-core-tests-line-107)">
</text>
</g>
</g>
diff --git a/dev/breeze/doc/images/output_testing_core-tests.txt
b/dev/breeze/doc/images/output_testing_core-tests.txt
index 11459f5794d..2131e0b05b7 100644
--- a/dev/breeze/doc/images/output_testing_core-tests.txt
+++ b/dev/breeze/doc/images/output_testing_core-tests.txt
@@ -1 +1 @@
-d65de9ad4a425e9f932fe0b2b7b09412
+5788aec67e9b3c4a650bea1403b438be
diff --git a/dev/breeze/doc/images/output_testing_providers-tests.svg
b/dev/breeze/doc/images/output_testing_providers-tests.svg
index 32b78086c90..74a0de866da 100644
--- a/dev/breeze/doc/images/output_testing_providers-tests.svg
+++ b/dev/breeze/doc/images/output_testing_providers-tests.svg
@@ -1,4 +1,4 @@
-<svg class="rich-terminal" viewBox="0 0 1482 2856.0"
xmlns="http://www.w3.org/2000/svg">
+<svg class="rich-terminal" viewBox="0 0 1482 2953.6"
xmlns="http://www.w3.org/2000/svg">
<!-- Generated with Rich https://www.textualize.io -->
<style>
@@ -43,7 +43,7 @@
<defs>
<clipPath id="breeze-testing-providers-tests-clip-terminal">
- <rect x="0" y="0" width="1463.0" height="2805.0" />
+ <rect x="0" y="0" width="1463.0" height="2902.6" />
</clipPath>
<clipPath id="breeze-testing-providers-tests-line-0">
<rect x="0" y="1.5" width="1464" height="24.65"/>
@@ -387,9 +387,21 @@
<clipPath id="breeze-testing-providers-tests-line-113">
<rect x="0" y="2758.7" width="1464" height="24.65"/>
</clipPath>
+<clipPath id="breeze-testing-providers-tests-line-114">
+ <rect x="0" y="2783.1" width="1464" height="24.65"/>
+ </clipPath>
+<clipPath id="breeze-testing-providers-tests-line-115">
+ <rect x="0" y="2807.5" width="1464" height="24.65"/>
+ </clipPath>
+<clipPath id="breeze-testing-providers-tests-line-116">
+ <rect x="0" y="2831.9" width="1464" height="24.65"/>
+ </clipPath>
+<clipPath id="breeze-testing-providers-tests-line-117">
+ <rect x="0" y="2856.3" width="1464" height="24.65"/>
+ </clipPath>
</defs>
- <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1"
x="1" y="1" width="1480" height="2854" rx="8"/><text
class="breeze-testing-providers-tests-title" fill="#c5c8c6"
text-anchor="middle" x="740"
y="27">Command: testing providers-tests</text>
+ <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1"
x="1" y="1" width="1480" height="2951.6" rx="8"/><text
class="breeze-testing-providers-tests-title" fill="#c5c8c6"
text-anchor="middle" x="740"
y="27">Command: testing providers-tests</text>
<g transform="translate(26,22)">
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
@@ -457,63 +469,67 @@
</text><text class="breeze-testing-providers-tests-r5" x="0" y="1362"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-55)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1362" textLength="170.8"
clip-path="url(#breeze-testing-providers-tests-line-55)">--skip-cleanup</text><text
class="breeze-testing-providers-tests-r1" x="378.2" y="1362" textLength="732"
clip-path="url(#breeze-testing-providers-tests-line-55)">Skip cleanup of temp
[...]
</text><text class="breeze-testing-providers-tests-r5" x="0" y="1386.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-56)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1386.4"
textLength="207.4"
clip-path="url(#breeze-testing-providers-tests-line-56)">--debug-resources</text><text
class="breeze-testing-providers-tests-r1" x="378.2" y="1386.4"
textLength="768.6"
clip-path="url(#breeze-testing-providers-tests-line-56)">Whether to sho
[...]
</text><text class="breeze-testing-providers-tests-r5" x="0" y="1410.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-57)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1410.8" textLength="305"
clip-path="url(#breeze-testing-providers-tests-line-57)">--include-success-outputs</text><text
class="breeze-testing-providers-tests-r1" x="378.2" y="1410.8"
textLength="927.2"
clip-path="url(#breeze-testing-providers-tests-line-57)">Whether to
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1435.2"
textLength="1464"
clip-path="url(#breeze-testing-providers-tests-line-58)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-providers-tests-r1" x="1464" y="1435.2"
textLength="12.2" clip-path="url(#breeze-testing-providers-tests-line-58)">
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1459.6"
textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-59)">╭─</text><text
class="breeze-testing-providers-tests-r5" x="24.4" y="1459.6" textLength="610"
clip-path="url(#breeze-testing-providers-tests-line-59)"> Upgrading/downgrading/removing selected packages </text><text
class="breeze-testing-providers-tests-r5" x="634.4" y="1459.6"
textLength="805.2" clip-path="url(#breeze-testin [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1484"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-60)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1484" textLength="170.8"
clip-path="url(#breeze-testing-providers-tests-line-60)">--upgrade-boto</text><text
class="breeze-testing-providers-tests-r1" x="341.6" y="1484"
textLength="866.2"
clip-path="url(#breeze-testing-providers-tests-line-60)">Remove aiobotocore and&
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1508.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-61)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1508.4"
textLength="268.4"
clip-path="url(#breeze-testing-providers-tests-line-61)">--downgrade-sqlalchemy</text><text
class="breeze-testing-providers-tests-r1" x="341.6" y="1508.4"
textLength="610"
clip-path="url(#breeze-testing-providers-tests-line-61)">Downgrade SQLAlc
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1532.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-62)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1532.8" textLength="244"
clip-path="url(#breeze-testing-providers-tests-line-62)">--downgrade-pendulum</text><text
class="breeze-testing-providers-tests-r1" x="341.6" y="1532.8"
textLength="585.6"
clip-path="url(#breeze-testing-providers-tests-line-62)">Downgrade Pendulum
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1557.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-63)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1557.2"
textLength="256.2"
clip-path="url(#breeze-testing-providers-tests-line-63)">--remove-arm-packages</text><text
class="breeze-testing-providers-tests-r1" x="341.6" y="1557.2"
textLength="817.4"
clip-path="url(#breeze-testing-providers-tests-line-63)">Removes arm
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1581.6"
textLength="1464"
clip-path="url(#breeze-testing-providers-tests-line-64)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-providers-tests-r1" x="1464" y="1581.6"
textLength="12.2" clip-path="url(#breeze-testing-providers-tests-line-64)">
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1606"
textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-65)">╭─</text><text
class="breeze-testing-providers-tests-r5" x="24.4" y="1606" textLength="402.6"
clip-path="url(#breeze-testing-providers-tests-line-65)"> Advanced flag for tests command </text><text
class="breeze-testing-providers-tests-r5" x="427" y="1606" textLength="1012.6"
clip-path="url(#breeze-testing-providers- [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1630.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-66)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1630.4"
textLength="231.8"
clip-path="url(#breeze-testing-providers-tests-line-66)">--github-repository</text><text
class="breeze-testing-providers-tests-r6" x="366" y="1630.4" textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-66)">-g</text><text
class="bre [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1654.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-67)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1654.8"
textLength="134.2"
clip-path="url(#breeze-testing-providers-tests-line-67)">--image-tag</text><text
class="breeze-testing-providers-tests-r1" x="414.8" y="1654.8"
textLength="695.4"
clip-path="url(#breeze-testing-providers-tests-line-67)">Tag of the imag
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1679.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-68)">│</text><text
class="breeze-testing-providers-tests-r7" x="414.8" y="1679.2"
textLength="963.8"
clip-path="url(#breeze-testing-providers-tests-line-68)">(TEXT)                               
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1703.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-69)">│</text><text
class="breeze-testing-providers-tests-r5" x="414.8" y="1703.6"
textLength="963.8"
clip-path="url(#breeze-testing-providers-tests-line-69)">[default: latest]                            &#
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1728"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-70)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1728" textLength="183"
clip-path="url(#breeze-testing-providers-tests-line-70)">--mount-sources</text><text
class="breeze-testing-providers-tests-r1" x="414.8" y="1728"
textLength="1024.8"
clip-path="url(#breeze-testing-providers-tests-line-70)">Choose scope of lo
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1752.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-71)">│</text><text
class="breeze-testing-providers-tests-r1" x="414.8" y="1752.4"
textLength="1024.8"
clip-path="url(#breeze-testing-providers-tests-line-71)">selected).                              &
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1776.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-72)">│</text><text
class="breeze-testing-providers-tests-r7" x="414.8" y="1776.8"
textLength="1024.8"
clip-path="url(#breeze-testing-providers-tests-line-72)">(selected | all | skip | remove | tests | providers-and-tests)             &
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1801.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-73)">│</text><text
class="breeze-testing-providers-tests-r5" x="414.8" y="1801.2"
textLength="1024.8"
clip-path="url(#breeze-testing-providers-tests-line-73)">[default: selected]                            
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1825.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-74)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1825.6"
textLength="317.2"
clip-path="url(#breeze-testing-providers-tests-line-74)">--skip-docker-compose-down</text><text
class="breeze-testing-providers-tests-r1" x="414.8" y="1825.6"
textLength="549"
clip-path="url(#breeze-testing-providers-tests-line-74)">Skips runnin [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1850"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-75)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1850" textLength="244"
clip-path="url(#breeze-testing-providers-tests-line-75)">--keep-env-variables</text><text
class="breeze-testing-providers-tests-r1" x="414.8" y="1850"
textLength="1000.4"
clip-path="url(#breeze-testing-providers-tests-line-75)">Do not clear 
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1874.4"
textLength="1464"
clip-path="url(#breeze-testing-providers-tests-line-76)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-providers-tests-r1" x="1464" y="1874.4"
textLength="12.2" clip-path="url(#breeze-testing-providers-tests-line-76)">
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1898.8"
textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-77)">╭─</text><text
class="breeze-testing-providers-tests-r5" x="24.4" y="1898.8"
textLength="622.2"
clip-path="url(#breeze-testing-providers-tests-line-77)"> Advanced flag for installing airflow in container </text><text
class="breeze-testing-providers-tests-r5" x="646.6" y="1898.8"
textLength="793" clip-pat [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1923.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-78)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1923.2"
textLength="378.2"
clip-path="url(#breeze-testing-providers-tests-line-78)">--airflow-constraints-reference</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="1923.2"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-78)">Constraint [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1947.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-79)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="1947.6"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-79)">(used in calculated constraints URL).                   </text><text
class="b [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1972"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-80)">│</text><text
class="breeze-testing-providers-tests-r7" x="756.4" y="1972" textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-80)">(TEXT)                               
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="1996.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-81)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1996.4"
textLength="341.6"
clip-path="url(#breeze-testing-providers-tests-line-81)">--clean-airflow-installation</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="1996.4"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-81)">Clean th [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2020.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-82)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2020.8"
textLength="158.6"
clip-path="url(#breeze-testing-providers-tests-line-82)">specified by </text><text
class="breeze-testing-providers-tests-r4" x="915" y="2020.8"
textLength="256.2"
clip-path="url(#breeze-testing-providers-tests-line-82)">--use-airflow-versi
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2045.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-83)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2045.2"
textLength="329.4"
clip-path="url(#breeze-testing-providers-tests-line-83)">--force-lowest-dependencies</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2045.2"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-83)">Run tests [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2069.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-84)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2069.6"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-84)">or selected provider if `Provider[PROVIDER_ID]` is used </text><text
class="breeze-testing-providers-tests-r5" x="1451.8" y="2069.6"
textLength="12.2" clip-p [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2094"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-85)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2094" textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-85)">as test type.                             
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2118.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-86)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2118.4"
textLength="414.8"
clip-path="url(#breeze-testing-providers-tests-line-86)">--install-airflow-with-constraints</text><text
class="breeze-testing-providers-tests-r1" x="439.2" y="2118.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-86)">/</text> [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2142.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-87)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2142.8"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-87)">determined from package or airflow version.             </text><text
class="breeze-testing-providers-t [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2167.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-88)">│</text><text
class="breeze-testing-providers-tests-r5" x="756.4" y="2167.2"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-88)">[default: no-install-airflow-with-constraints]          </text><text
class="breeze-testing-providers-tests-r5" x="1451.8" y="2167.2" text [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2191.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-89)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2191.6"
textLength="195.2"
clip-path="url(#breeze-testing-providers-tests-line-89)">--package-format</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2191.6"
textLength="231.8"
clip-path="url(#breeze-testing-providers-tests-line-89)">Format of packa
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2216"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-90)">│</text><text
class="breeze-testing-providers-tests-r5" x="756.4" y="2216" textLength="231.8"
clip-path="url(#breeze-testing-providers-tests-line-90)">[default: wheel]   </text><text
class="breeze-testing-providers-tests-r5" x="1451.8" y="2216"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-90)">│</text [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2240.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-91)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2240.4"
textLength="256.2"
clip-path="url(#breeze-testing-providers-tests-line-91)">--use-airflow-version</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2240.4"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-91)">Use (reinstall&
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2264.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-92)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2264.8"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-92)">can also be version (to install from PyPI), `none`,     </text><text
class="breeze-testing-providers-tests-r5" x="1451.8" y="22 [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2289.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-93)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2289.2"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-93)">`wheel`, or `sdist` to install from `dist` folder, or   </text><text
class="breeze-testing-providers-tests-r5" x="1451.8" y="2289.2" text [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2313.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-94)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2313.6"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-94)">VCS URL to install from                         
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2338"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-95)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2338" textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-95)">(https://pip.pypa.io/en/stable/topics/vcs-support/).    </text><text
class="breeze-testing-providers-tests-r5" x="1451.8" y="2338"
textLength="12.2" clip-path="url(#breeze-test [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2362.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-96)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2362.4"
textLength="97.6"
clip-path="url(#breeze-testing-providers-tests-line-96)">Implies </text><text
class="breeze-testing-providers-tests-r4" x="854" y="2362.4" textLength="183"
clip-path="url(#breeze-testing-providers-tests-line-96)">--mount-sources</text><text
clas [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2386.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-97)">│</text><text
class="breeze-testing-providers-tests-r7" x="756.4" y="2386.8"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-97)">(none | wheel | sdist | <airflow_version>)              </text><text
class="breeze-tes [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2411.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-98)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2411.2"
textLength="292.8"
clip-path="url(#breeze-testing-providers-tests-line-98)">--use-packages-from-dist</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2411.2"
textLength="341.6"
clip-path="url(#breeze-testing-providers-tests-line-98)">Install all& [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2435.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-99)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2435.6"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-99)">type) from 'dist' folder when entering breeze.          </text><text
class="breeze-testing-providers-t [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2460"
textLength="1464"
clip-path="url(#breeze-testing-providers-tests-line-100)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-providers-tests-r1" x="1464" y="2460" textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-100)">
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2484.4"
textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-101)">╭─</text><text
class="breeze-testing-providers-tests-r5" x="24.4" y="2484.4"
textLength="512.4"
clip-path="url(#breeze-testing-providers-tests-line-101)"> Advanced flag for provider tests command </text><text
class="breeze-testing-providers-tests-r5" x="536.8" y="2484.4"
textLength="902.8" clip-path="url(#br [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2508.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-102)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2508.8" textLength="244"
clip-path="url(#breeze-testing-providers-tests-line-102)">--excluded-providers</text><text
class="breeze-testing-providers-tests-r1" x="463.6" y="2508.8"
textLength="976"
clip-path="url(#breeze-testing-providers-tests-line-102)">JSON-string of
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2533.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-103)">│</text><text
class="breeze-testing-providers-tests-r1" x="463.6" y="2533.2" textLength="976"
clip-path="url(#breeze-testing-providers-tests-line-103)">({'3.12': ['provider']})                        
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2557.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-104)">│</text><text
class="breeze-testing-providers-tests-r7" x="463.6" y="2557.6" textLength="976"
clip-path="url(#breeze-testing-providers-tests-line-104)">(TEXT)                               
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2582"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-105)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2582" textLength="390.4"
clip-path="url(#breeze-testing-providers-tests-line-105)">--providers-constraints-location</text><text
class="breeze-testing-providers-tests-r1" x="463.6" y="2582"
textLength="927.2"
clip-path="url(#breeze-testing-providers-tests-line-105)">Location [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2606.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-106)">│</text><text
class="breeze-testing-providers-tests-r7" x="463.6" y="2606.4"
textLength="927.2"
clip-path="url(#breeze-testing-providers-tests-line-106)">(TEXT)                              
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2630.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-107)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2630.8"
textLength="341.6"
clip-path="url(#breeze-testing-providers-tests-line-107)">--providers-skip-constraints</text><text
class="breeze-testing-providers-tests-r1" x="463.6" y="2630.8"
textLength="597.8"
clip-path="url(#breeze-testing-providers-tests-line-107)">Do no [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2655.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-108)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2655.2"
textLength="195.2"
clip-path="url(#breeze-testing-providers-tests-line-108)">--skip-providers</text><text
class="breeze-testing-providers-tests-r1" x="463.6" y="2655.2"
textLength="768.6"
clip-path="url(#breeze-testing-providers-tests-line-108)">Space-separated l
[...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2679.6"
textLength="1464"
clip-path="url(#breeze-testing-providers-tests-line-109)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-providers-tests-r1" x="1464" y="2679.6"
textLength="12.2" clip-path="url(#breeze-testing-providers-tests-line-109)">
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2704"
textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-110)">╭─</text><text
class="breeze-testing-providers-tests-r5" x="24.4" y="2704" textLength="195.2"
clip-path="url(#breeze-testing-providers-tests-line-110)"> Common options </text><text
class="breeze-testing-providers-tests-r5" x="219.6" y="2704" textLength="1220"
clip-path="url(#breeze-testing-providers-tests-line-110)">───────────── [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2728.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-111)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2728.4"
textLength="109.8"
clip-path="url(#breeze-testing-providers-tests-line-111)">--dry-run</text><text
class="breeze-testing-providers-tests-r6" x="158.6" y="2728.4"
textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-111)">-D</text><text
class="breeze-t [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2752.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-112)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2752.8"
textLength="109.8"
clip-path="url(#breeze-testing-providers-tests-line-112)">--verbose</text><text
class="breeze-testing-providers-tests-r6" x="158.6" y="2752.8"
textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-112)">-v</text><text
class="breeze-t [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2777.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-113)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2777.2" textLength="73.2"
clip-path="url(#breeze-testing-providers-tests-line-113)">--help</text><text
class="breeze-testing-providers-tests-r6" x="158.6" y="2777.2"
textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-113)">-h</text><text
class="breeze-testi [...]
-</text><text class="breeze-testing-providers-tests-r5" x="0" y="2801.6"
textLength="1464"
clip-path="url(#breeze-testing-providers-tests-line-114)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-providers-tests-r1" x="1464" y="2801.6"
textLength="12.2" clip-path="url(#breeze-testing-providers-tests-line-114)">
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1435.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-58)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1435.2" textLength="244"
clip-path="url(#breeze-testing-providers-tests-line-58)">--total-test-timeout</text><text
class="breeze-testing-providers-tests-r1" x="378.2" y="1435.2"
textLength="1061.4"
clip-path="url(#breeze-testing-providers-tests-line-58)">Total test t
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1459.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-59)">│</text><text
class="breeze-testing-providers-tests-r1" x="378.2" y="1459.6"
textLength="1061.4"
clip-path="url(#breeze-testing-providers-tests-line-59)">there is an underlying pytest command that hangs, the process will be stop with system </text><text
class="breeze-te [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1484"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-60)">│</text><text
class="breeze-testing-providers-tests-r1" x="378.2" y="1484"
textLength="1061.4"
clip-path="url(#breeze-testing-providers-tests-line-60)">exit after that time. This should give a chance to upload logs as artifacts on CI.     </text><
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1508.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-61)">│</text><text
class="breeze-testing-providers-tests-r7" x="378.2" y="1508.4"
textLength="1061.4"
clip-path="url(#breeze-testing-providers-tests-line-61)">(INTEGER)                              &#
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1532.8"
textLength="1464"
clip-path="url(#breeze-testing-providers-tests-line-62)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-providers-tests-r1" x="1464" y="1532.8"
textLength="12.2" clip-path="url(#breeze-testing-providers-tests-line-62)">
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1557.2"
textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-63)">╭─</text><text
class="breeze-testing-providers-tests-r5" x="24.4" y="1557.2" textLength="610"
clip-path="url(#breeze-testing-providers-tests-line-63)"> Upgrading/downgrading/removing selected packages </text><text
class="breeze-testing-providers-tests-r5" x="634.4" y="1557.2"
textLength="805.2" clip-path="url(#breeze-testin [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1581.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-64)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1581.6"
textLength="170.8"
clip-path="url(#breeze-testing-providers-tests-line-64)">--upgrade-boto</text><text
class="breeze-testing-providers-tests-r1" x="341.6" y="1581.6"
textLength="866.2"
clip-path="url(#breeze-testing-providers-tests-line-64)">Remove aiobotocore
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1606"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-65)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1606" textLength="268.4"
clip-path="url(#breeze-testing-providers-tests-line-65)">--downgrade-sqlalchemy</text><text
class="breeze-testing-providers-tests-r1" x="341.6" y="1606" textLength="610"
clip-path="url(#breeze-testing-providers-tests-line-65)">Downgrade SQLAlchemy&#
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1630.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-66)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1630.4" textLength="244"
clip-path="url(#breeze-testing-providers-tests-line-66)">--downgrade-pendulum</text><text
class="breeze-testing-providers-tests-r1" x="341.6" y="1630.4"
textLength="585.6"
clip-path="url(#breeze-testing-providers-tests-line-66)">Downgrade Pendulum
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1654.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-67)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1654.8"
textLength="256.2"
clip-path="url(#breeze-testing-providers-tests-line-67)">--remove-arm-packages</text><text
class="breeze-testing-providers-tests-r1" x="341.6" y="1654.8"
textLength="817.4"
clip-path="url(#breeze-testing-providers-tests-line-67)">Removes arm
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1679.2"
textLength="1464"
clip-path="url(#breeze-testing-providers-tests-line-68)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-providers-tests-r1" x="1464" y="1679.2"
textLength="12.2" clip-path="url(#breeze-testing-providers-tests-line-68)">
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1703.6"
textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-69)">╭─</text><text
class="breeze-testing-providers-tests-r5" x="24.4" y="1703.6"
textLength="402.6"
clip-path="url(#breeze-testing-providers-tests-line-69)"> Advanced flag for tests command </text><text
class="breeze-testing-providers-tests-r5" x="427" y="1703.6"
textLength="1012.6" clip-path="url(#breeze-testing-prov [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1728"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-70)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1728" textLength="231.8"
clip-path="url(#breeze-testing-providers-tests-line-70)">--github-repository</text><text
class="breeze-testing-providers-tests-r6" x="366" y="1728" textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-70)">-g</text><text
class="breeze-te [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1752.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-71)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1752.4"
textLength="134.2"
clip-path="url(#breeze-testing-providers-tests-line-71)">--image-tag</text><text
class="breeze-testing-providers-tests-r1" x="414.8" y="1752.4"
textLength="695.4"
clip-path="url(#breeze-testing-providers-tests-line-71)">Tag of the imag
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1776.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-72)">│</text><text
class="breeze-testing-providers-tests-r7" x="414.8" y="1776.8"
textLength="963.8"
clip-path="url(#breeze-testing-providers-tests-line-72)">(TEXT)                               
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1801.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-73)">│</text><text
class="breeze-testing-providers-tests-r5" x="414.8" y="1801.2"
textLength="963.8"
clip-path="url(#breeze-testing-providers-tests-line-73)">[default: latest]                            &#
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1825.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-74)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1825.6" textLength="183"
clip-path="url(#breeze-testing-providers-tests-line-74)">--mount-sources</text><text
class="breeze-testing-providers-tests-r1" x="414.8" y="1825.6"
textLength="1024.8"
clip-path="url(#breeze-testing-providers-tests-line-74)">Choose scope of&#
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1850"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-75)">│</text><text
class="breeze-testing-providers-tests-r1" x="414.8" y="1850"
textLength="1024.8"
clip-path="url(#breeze-testing-providers-tests-line-75)">selected).                               
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1874.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-76)">│</text><text
class="breeze-testing-providers-tests-r7" x="414.8" y="1874.4"
textLength="1024.8"
clip-path="url(#breeze-testing-providers-tests-line-76)">(selected | all | skip | remove | tests | providers-and-tests)             &
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1898.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-77)">│</text><text
class="breeze-testing-providers-tests-r5" x="414.8" y="1898.8"
textLength="1024.8"
clip-path="url(#breeze-testing-providers-tests-line-77)">[default: selected]                            
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1923.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-78)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1923.2"
textLength="317.2"
clip-path="url(#breeze-testing-providers-tests-line-78)">--skip-docker-compose-down</text><text
class="breeze-testing-providers-tests-r1" x="414.8" y="1923.2"
textLength="549"
clip-path="url(#breeze-testing-providers-tests-line-78)">Skips runnin [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1947.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-79)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="1947.6" textLength="244"
clip-path="url(#breeze-testing-providers-tests-line-79)">--keep-env-variables</text><text
class="breeze-testing-providers-tests-r1" x="414.8" y="1947.6"
textLength="1000.4"
clip-path="url(#breeze-testing-providers-tests-line-79)">Do not clear
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1972"
textLength="1464"
clip-path="url(#breeze-testing-providers-tests-line-80)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-providers-tests-r1" x="1464" y="1972" textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-80)">
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="1996.4"
textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-81)">╭─</text><text
class="breeze-testing-providers-tests-r5" x="24.4" y="1996.4"
textLength="622.2"
clip-path="url(#breeze-testing-providers-tests-line-81)"> Advanced flag for installing airflow in container </text><text
class="breeze-testing-providers-tests-r5" x="646.6" y="1996.4"
textLength="793" clip-pat [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2020.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-82)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2020.8"
textLength="378.2"
clip-path="url(#breeze-testing-providers-tests-line-82)">--airflow-constraints-reference</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2020.8"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-82)">Constraint [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2045.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-83)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2045.2"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-83)">(used in calculated constraints URL).                   </text><text
class="b [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2069.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-84)">│</text><text
class="breeze-testing-providers-tests-r7" x="756.4" y="2069.6"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-84)">(TEXT)                               
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2094"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-85)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2094" textLength="341.6"
clip-path="url(#breeze-testing-providers-tests-line-85)">--clean-airflow-installation</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2094"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-85)">Clean the 
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2118.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-86)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2118.4"
textLength="158.6"
clip-path="url(#breeze-testing-providers-tests-line-86)">specified by </text><text
class="breeze-testing-providers-tests-r4" x="915" y="2118.4"
textLength="256.2"
clip-path="url(#breeze-testing-providers-tests-line-86)">--use-airflow-versi
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2142.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-87)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2142.8"
textLength="329.4"
clip-path="url(#breeze-testing-providers-tests-line-87)">--force-lowest-dependencies</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2142.8"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-87)">Run tests [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2167.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-88)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2167.2"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-88)">or selected provider if `Provider[PROVIDER_ID]` is used </text><text
class="breeze-testing-providers-tests-r5" x="1451.8" y="2167.2"
textLength="12.2" clip-p [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2191.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-89)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2191.6"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-89)">as test type.                            &
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2216"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-90)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2216" textLength="414.8"
clip-path="url(#breeze-testing-providers-tests-line-90)">--install-airflow-with-constraints</text><text
class="breeze-testing-providers-tests-r1" x="439.2" y="2216" textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-90)">/</text><text [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2240.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-91)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2240.4"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-91)">determined from package or airflow version.             </text><text
class="breeze-testing-providers-t [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2264.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-92)">│</text><text
class="breeze-testing-providers-tests-r5" x="756.4" y="2264.8"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-92)">[default: no-install-airflow-with-constraints]          </text><text
class="breeze-testing-providers-tests-r5" x="1451.8" y="2264.8" text [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2289.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-93)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2289.2"
textLength="195.2"
clip-path="url(#breeze-testing-providers-tests-line-93)">--package-format</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2289.2"
textLength="231.8"
clip-path="url(#breeze-testing-providers-tests-line-93)">Format of packa
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2313.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-94)">│</text><text
class="breeze-testing-providers-tests-r5" x="756.4" y="2313.6"
textLength="231.8"
clip-path="url(#breeze-testing-providers-tests-line-94)">[default: wheel]   </text><text
class="breeze-testing-providers-tests-r5" x="1451.8" y="2313.6"
textLength="12.2" clip-path="url(#breeze-testing-providers-tests-line-94)">│
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2338"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-95)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2338" textLength="256.2"
clip-path="url(#breeze-testing-providers-tests-line-95)">--use-airflow-version</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2338"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-95)">Use (reinstall a
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2362.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-96)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2362.4"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-96)">can also be version (to install from PyPI), `none`,     </text><text
class="breeze-testing-providers-tests-r5" x="1451.8" y="23 [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2386.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-97)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2386.8"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-97)">`wheel`, or `sdist` to install from `dist` folder, or   </text><text
class="breeze-testing-providers-tests-r5" x="1451.8" y="2386.8" text [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2411.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-98)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2411.2"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-98)">VCS URL to install from                         
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2435.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-99)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2435.6"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-99)">(https://pip.pypa.io/en/stable/topics/vcs-support/).    </text><text
class="breeze-testing-providers-tests-r5" x="1451.8" y="2435.6"
textLength="12.2" clip-path="url(#breez [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2460"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-100)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2460" textLength="97.6"
clip-path="url(#breeze-testing-providers-tests-line-100)">Implies </text><text
class="breeze-testing-providers-tests-r4" x="854" y="2460" textLength="183"
clip-path="url(#breeze-testing-providers-tests-line-100)">--mount-sources</text><text
class=" [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2484.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-101)">│</text><text
class="breeze-testing-providers-tests-r7" x="756.4" y="2484.4"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-101)">(none | wheel | sdist | <airflow_version>)              </text><text
class="breeze-t [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2508.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-102)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2508.8"
textLength="292.8"
clip-path="url(#breeze-testing-providers-tests-line-102)">--use-packages-from-dist</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2508.8"
textLength="341.6"
clip-path="url(#breeze-testing-providers-tests-line-102)">Install a [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2533.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-103)">│</text><text
class="breeze-testing-providers-tests-r1" x="756.4" y="2533.2"
textLength="683.2"
clip-path="url(#breeze-testing-providers-tests-line-103)">type) from 'dist' folder when entering breeze.          </text><text
class="breeze-testing-providers [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2557.6"
textLength="1464"
clip-path="url(#breeze-testing-providers-tests-line-104)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-providers-tests-r1" x="1464" y="2557.6"
textLength="12.2" clip-path="url(#breeze-testing-providers-tests-line-104)">
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2582"
textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-105)">╭─</text><text
class="breeze-testing-providers-tests-r5" x="24.4" y="2582" textLength="512.4"
clip-path="url(#breeze-testing-providers-tests-line-105)"> Advanced flag for provider tests command </text><text
class="breeze-testing-providers-tests-r5" x="536.8" y="2582"
textLength="902.8" clip-path="url(#breeze-t [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2606.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-106)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2606.4" textLength="244"
clip-path="url(#breeze-testing-providers-tests-line-106)">--excluded-providers</text><text
class="breeze-testing-providers-tests-r1" x="463.6" y="2606.4"
textLength="976"
clip-path="url(#breeze-testing-providers-tests-line-106)">JSON-string of
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2630.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-107)">│</text><text
class="breeze-testing-providers-tests-r1" x="463.6" y="2630.8" textLength="976"
clip-path="url(#breeze-testing-providers-tests-line-107)">({'3.12': ['provider']})                        
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2655.2"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-108)">│</text><text
class="breeze-testing-providers-tests-r7" x="463.6" y="2655.2" textLength="976"
clip-path="url(#breeze-testing-providers-tests-line-108)">(TEXT)                               
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2679.6"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-109)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2679.6"
textLength="390.4"
clip-path="url(#breeze-testing-providers-tests-line-109)">--providers-constraints-location</text><text
class="breeze-testing-providers-tests-r1" x="463.6" y="2679.6"
textLength="927.2"
clip-path="url(#breeze-testing-providers-tests-line-109)">Locati [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2704"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-110)">│</text><text
class="breeze-testing-providers-tests-r7" x="463.6" y="2704" textLength="927.2"
clip-path="url(#breeze-testing-providers-tests-line-110)">(TEXT)                               &#
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2728.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-111)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2728.4"
textLength="341.6"
clip-path="url(#breeze-testing-providers-tests-line-111)">--providers-skip-constraints</text><text
class="breeze-testing-providers-tests-r1" x="463.6" y="2728.4"
textLength="597.8"
clip-path="url(#breeze-testing-providers-tests-line-111)">Do no [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2752.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-112)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2752.8"
textLength="195.2"
clip-path="url(#breeze-testing-providers-tests-line-112)">--skip-providers</text><text
class="breeze-testing-providers-tests-r1" x="463.6" y="2752.8"
textLength="768.6"
clip-path="url(#breeze-testing-providers-tests-line-112)">Space-separated l
[...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2777.2"
textLength="1464"
clip-path="url(#breeze-testing-providers-tests-line-113)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-providers-tests-r1" x="1464" y="2777.2"
textLength="12.2" clip-path="url(#breeze-testing-providers-tests-line-113)">
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2801.6"
textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-114)">╭─</text><text
class="breeze-testing-providers-tests-r5" x="24.4" y="2801.6"
textLength="195.2"
clip-path="url(#breeze-testing-providers-tests-line-114)"> Common options </text><text
class="breeze-testing-providers-tests-r5" x="219.6" y="2801.6"
textLength="1220"
clip-path="url(#breeze-testing-providers-tests-line-114)">─────── [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2826"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-115)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2826" textLength="109.8"
clip-path="url(#breeze-testing-providers-tests-line-115)">--dry-run</text><text
class="breeze-testing-providers-tests-r6" x="158.6" y="2826" textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-115)">-D</text><text
class="breeze-testing [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2850.4"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-116)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2850.4"
textLength="109.8"
clip-path="url(#breeze-testing-providers-tests-line-116)">--verbose</text><text
class="breeze-testing-providers-tests-r6" x="158.6" y="2850.4"
textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-116)">-v</text><text
class="breeze-t [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2874.8"
textLength="12.2"
clip-path="url(#breeze-testing-providers-tests-line-117)">│</text><text
class="breeze-testing-providers-tests-r4" x="24.4" y="2874.8" textLength="73.2"
clip-path="url(#breeze-testing-providers-tests-line-117)">--help</text><text
class="breeze-testing-providers-tests-r6" x="158.6" y="2874.8"
textLength="24.4"
clip-path="url(#breeze-testing-providers-tests-line-117)">-h</text><text
class="breeze-testi [...]
+</text><text class="breeze-testing-providers-tests-r5" x="0" y="2899.2"
textLength="1464"
clip-path="url(#breeze-testing-providers-tests-line-118)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-providers-tests-r1" x="1464" y="2899.2"
textLength="12.2" clip-path="url(#breeze-testing-providers-tests-line-118)">
</text>
</g>
</g>
diff --git a/dev/breeze/doc/images/output_testing_providers-tests.txt
b/dev/breeze/doc/images/output_testing_providers-tests.txt
index e2fa64d8bd1..24aa33f5a8d 100644
--- a/dev/breeze/doc/images/output_testing_providers-tests.txt
+++ b/dev/breeze/doc/images/output_testing_providers-tests.txt
@@ -1 +1 @@
-28604d613d42ec78c6472de9e27c0495
+89c2fc8b9617404315d048119594c1dc
diff --git a/dev/breeze/doc/images/output_testing_task-sdk-tests.svg
b/dev/breeze/doc/images/output_testing_task-sdk-tests.svg
index 0e4f0b3e78d..a8e91851eca 100644
--- a/dev/breeze/doc/images/output_testing_task-sdk-tests.svg
+++ b/dev/breeze/doc/images/output_testing_task-sdk-tests.svg
@@ -1,4 +1,4 @@
-<svg class="rich-terminal" viewBox="0 0 1482 1148.0"
xmlns="http://www.w3.org/2000/svg">
+<svg class="rich-terminal" viewBox="0 0 1482 952.8"
xmlns="http://www.w3.org/2000/svg">
<!-- Generated with Rich https://www.textualize.io -->
<style>
@@ -43,7 +43,7 @@
<defs>
<clipPath id="breeze-testing-task-sdk-tests-clip-terminal">
- <rect x="0" y="0" width="1463.0" height="1097.0" />
+ <rect x="0" y="0" width="1463.0" height="901.8" />
</clipPath>
<clipPath id="breeze-testing-task-sdk-tests-line-0">
<rect x="0" y="1.5" width="1464" height="24.65"/>
@@ -153,33 +153,9 @@
<clipPath id="breeze-testing-task-sdk-tests-line-35">
<rect x="0" y="855.5" width="1464" height="24.65"/>
</clipPath>
-<clipPath id="breeze-testing-task-sdk-tests-line-36">
- <rect x="0" y="879.9" width="1464" height="24.65"/>
- </clipPath>
-<clipPath id="breeze-testing-task-sdk-tests-line-37">
- <rect x="0" y="904.3" width="1464" height="24.65"/>
- </clipPath>
-<clipPath id="breeze-testing-task-sdk-tests-line-38">
- <rect x="0" y="928.7" width="1464" height="24.65"/>
- </clipPath>
-<clipPath id="breeze-testing-task-sdk-tests-line-39">
- <rect x="0" y="953.1" width="1464" height="24.65"/>
- </clipPath>
-<clipPath id="breeze-testing-task-sdk-tests-line-40">
- <rect x="0" y="977.5" width="1464" height="24.65"/>
- </clipPath>
-<clipPath id="breeze-testing-task-sdk-tests-line-41">
- <rect x="0" y="1001.9" width="1464" height="24.65"/>
- </clipPath>
-<clipPath id="breeze-testing-task-sdk-tests-line-42">
- <rect x="0" y="1026.3" width="1464" height="24.65"/>
- </clipPath>
-<clipPath id="breeze-testing-task-sdk-tests-line-43">
- <rect x="0" y="1050.7" width="1464" height="24.65"/>
- </clipPath>
</defs>
- <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1"
x="1" y="1" width="1480" height="1146" rx="8"/><text
class="breeze-testing-task-sdk-tests-title" fill="#c5c8c6" text-anchor="middle"
x="740" y="27">Command: testing task-sdk-tests</text>
+ <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1"
x="1" y="1" width="1480" height="950.8" rx="8"/><text
class="breeze-testing-task-sdk-tests-title" fill="#c5c8c6" text-anchor="middle"
x="740" y="27">Command: testing task-sdk-tests</text>
<g transform="translate(26,22)">
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
@@ -221,19 +197,11 @@
</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="727.6"
textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-29)">│</text><text
class="breeze-testing-task-sdk-tests-r4" x="24.4" y="727.6" textLength="317.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-29)">--skip-docker-compose-down</text><text
class="breeze-testing-task-sdk-tests-r1" x="414.8" y="727.6" textLength="549"
clip-path="url(#breeze-testing-task-sdk-tests-line-29)">Skips running do
[...]
</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="752"
textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-30)">│</text><text
class="breeze-testing-task-sdk-tests-r4" x="24.4" y="752" textLength="244"
clip-path="url(#breeze-testing-task-sdk-tests-line-30)">--keep-env-variables</text><text
class="breeze-testing-task-sdk-tests-r1" x="414.8" y="752" textLength="1000.4"
clip-path="url(#breeze-testing-task-sdk-tests-line-30)">Do not clear environme
[...]
</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="776.4"
textLength="1464"
clip-path="url(#breeze-testing-task-sdk-tests-line-31)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-task-sdk-tests-r1" x="1464" y="776.4" textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-31)">
-</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="800.8"
textLength="24.4"
clip-path="url(#breeze-testing-task-sdk-tests-line-32)">╭─</text><text
class="breeze-testing-task-sdk-tests-r5" x="24.4" y="800.8" textLength="439.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-32)"> Options for parallel test commands </text><text
class="breeze-testing-task-sdk-tests-r5" x="463.6" y="800.8" textLength="976"
clip-path="url(#breeze-testing-task-sdk-t [...]
-</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="825.2"
textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-33)">│</text><text
class="breeze-testing-task-sdk-tests-r4" x="24.4" y="825.2" textLength="158.6"
clip-path="url(#breeze-testing-task-sdk-tests-line-33)">--parallelism</text><text
class="breeze-testing-task-sdk-tests-r1" x="378.2" y="825.2" textLength="915"
clip-path="url(#breeze-testing-task-sdk-tests-line-33)">Maximum number of proces
[...]
-</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="849.6"
textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-34)">│</text><text
class="breeze-testing-task-sdk-tests-r6" x="378.2" y="849.6" textLength="915"
clip-path="url(#breeze-testing-task-sdk-tests-line-34)">(INTEGER RANGE)                              
[...]
-</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="874"
textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-35)">│</text><text
class="breeze-testing-task-sdk-tests-r5" x="378.2" y="874" textLength="915"
clip-path="url(#breeze-testing-task-sdk-tests-line-35)">[default: 4; 1<=x<=8]                            
[...]
-</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="898.4"
textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-36)">│</text><text
class="breeze-testing-task-sdk-tests-r4" x="24.4" y="898.4" textLength="170.8"
clip-path="url(#breeze-testing-task-sdk-tests-line-36)">--skip-cleanup</text><text
class="breeze-testing-task-sdk-tests-r1" x="378.2" y="898.4" textLength="732"
clip-path="url(#breeze-testing-task-sdk-tests-line-36)">Skip cleanup of tempora
[...]
-</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="922.8"
textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-37)">│</text><text
class="breeze-testing-task-sdk-tests-r4" x="24.4" y="922.8" textLength="207.4"
clip-path="url(#breeze-testing-task-sdk-tests-line-37)">--debug-resources</text><text
class="breeze-testing-task-sdk-tests-r1" x="378.2" y="922.8"
textLength="768.6"
clip-path="url(#breeze-testing-task-sdk-tests-line-37)">Whether to show re
[...]
-</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="947.2"
textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-38)">│</text><text
class="breeze-testing-task-sdk-tests-r4" x="24.4" y="947.2" textLength="305"
clip-path="url(#breeze-testing-task-sdk-tests-line-38)">--include-success-outputs</text><text
class="breeze-testing-task-sdk-tests-r1" x="378.2" y="947.2"
textLength="927.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-38)">Whether to includ
[...]
-</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="971.6"
textLength="1464"
clip-path="url(#breeze-testing-task-sdk-tests-line-39)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-task-sdk-tests-r1" x="1464" y="971.6" textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-39)">
-</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="996"
textLength="24.4"
clip-path="url(#breeze-testing-task-sdk-tests-line-40)">╭─</text><text
class="breeze-testing-task-sdk-tests-r5" x="24.4" y="996" textLength="195.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-40)"> Common options </text><text
class="breeze-testing-task-sdk-tests-r5" x="219.6" y="996" textLength="1220"
clip-path="url(#breeze-testing-task-sdk-tests-line-40)">─────────────────────────
[...]
-</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="1020.4"
textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-41)">│</text><text
class="breeze-testing-task-sdk-tests-r4" x="24.4" y="1020.4" textLength="109.8"
clip-path="url(#breeze-testing-task-sdk-tests-line-41)">--dry-run</text><text
class="breeze-testing-task-sdk-tests-r7" x="158.6" y="1020.4" textLength="24.4"
clip-path="url(#breeze-testing-task-sdk-tests-line-41)">-D</text><text
class="breeze-testing-ta [...]
-</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="1044.8"
textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-42)">│</text><text
class="breeze-testing-task-sdk-tests-r4" x="24.4" y="1044.8" textLength="109.8"
clip-path="url(#breeze-testing-task-sdk-tests-line-42)">--verbose</text><text
class="breeze-testing-task-sdk-tests-r7" x="158.6" y="1044.8" textLength="24.4"
clip-path="url(#breeze-testing-task-sdk-tests-line-42)">-v</text><text
class="breeze-testing-ta [...]
-</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="1069.2"
textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-43)">│</text><text
class="breeze-testing-task-sdk-tests-r4" x="24.4" y="1069.2" textLength="73.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-43)">--help</text><text
class="breeze-testing-task-sdk-tests-r7" x="158.6" y="1069.2" textLength="24.4"
clip-path="url(#breeze-testing-task-sdk-tests-line-43)">-h</text><text
class="breeze-testing-task-s [...]
-</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="1093.6"
textLength="1464"
clip-path="url(#breeze-testing-task-sdk-tests-line-44)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-task-sdk-tests-r1" x="1464" y="1093.6" textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-44)">
+</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="800.8"
textLength="24.4"
clip-path="url(#breeze-testing-task-sdk-tests-line-32)">╭─</text><text
class="breeze-testing-task-sdk-tests-r5" x="24.4" y="800.8" textLength="195.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-32)"> Common options </text><text
class="breeze-testing-task-sdk-tests-r5" x="219.6" y="800.8" textLength="1220"
clip-path="url(#breeze-testing-task-sdk-tests-line-32)">───────────────────
[...]
+</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="825.2"
textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-33)">│</text><text
class="breeze-testing-task-sdk-tests-r4" x="24.4" y="825.2" textLength="109.8"
clip-path="url(#breeze-testing-task-sdk-tests-line-33)">--dry-run</text><text
class="breeze-testing-task-sdk-tests-r7" x="158.6" y="825.2" textLength="24.4"
clip-path="url(#breeze-testing-task-sdk-tests-line-33)">-D</text><text
class="breeze-testing-task- [...]
+</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="849.6"
textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-34)">│</text><text
class="breeze-testing-task-sdk-tests-r4" x="24.4" y="849.6" textLength="109.8"
clip-path="url(#breeze-testing-task-sdk-tests-line-34)">--verbose</text><text
class="breeze-testing-task-sdk-tests-r7" x="158.6" y="849.6" textLength="24.4"
clip-path="url(#breeze-testing-task-sdk-tests-line-34)">-v</text><text
class="breeze-testing-task- [...]
+</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="874"
textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-35)">│</text><text
class="breeze-testing-task-sdk-tests-r4" x="24.4" y="874" textLength="73.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-35)">--help</text><text
class="breeze-testing-task-sdk-tests-r7" x="158.6" y="874" textLength="24.4"
clip-path="url(#breeze-testing-task-sdk-tests-line-35)">-h</text><text
class="breeze-testing-task-sdk-tests- [...]
+</text><text class="breeze-testing-task-sdk-tests-r5" x="0" y="898.4"
textLength="1464"
clip-path="url(#breeze-testing-task-sdk-tests-line-36)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
class="breeze-testing-task-sdk-tests-r1" x="1464" y="898.4" textLength="12.2"
clip-path="url(#breeze-testing-task-sdk-tests-line-36)">
</text>
</g>
</g>
diff --git a/dev/breeze/doc/images/output_testing_task-sdk-tests.txt
b/dev/breeze/doc/images/output_testing_task-sdk-tests.txt
index 0bcdf8dcfd6..792da1fed29 100644
--- a/dev/breeze/doc/images/output_testing_task-sdk-tests.txt
+++ b/dev/breeze/doc/images/output_testing_task-sdk-tests.txt
@@ -1 +1 @@
-60bde98299d8ffc3e5f3286eb6a53487
+74536ec09428b244cbebe5061bd674f2
diff --git a/dev/breeze/src/airflow_breeze/commands/testing_commands.py
b/dev/breeze/src/airflow_breeze/commands/testing_commands.py
index beccd8e288f..ba651f5067f 100644
--- a/dev/breeze/src/airflow_breeze/commands/testing_commands.py
+++ b/dev/breeze/src/airflow_breeze/commands/testing_commands.py
@@ -16,7 +16,9 @@
# under the License.
from __future__ import annotations
+import contextlib
import os
+import signal
import sys
from datetime import datetime
from time import sleep
@@ -99,6 +101,7 @@ from airflow_breeze.utils.run_utils import run_command
from airflow_breeze.utils.selective_checks import ALL_CI_SELECTIVE_TEST_TYPES
LOW_MEMORY_CONDITION = 8 * 1024 * 1024 * 1024
+DEFAULT_TOTAL_TEST_TIMEOUT = 6500 # 6500 seconds = 1h 48 minutes
@click.group(cls=BreezeGroup, name="testing", help="Tools that developers can
use to run tests")
@@ -528,6 +531,15 @@ option_force_sa_warnings = click.option(
show_default=True,
envvar="SQLALCHEMY_WARN_20",
)
+option_total_test_timeout = click.option(
+ "--total-test-timeout",
+ help="Total test timeout in seconds. This is the maximum time parallel
tests will run. If there is "
+ "an underlying pytest command that hangs, the process will be stop with
system exit after "
+ "that time. This should give a chance to upload logs as artifacts on CI.",
+ default=DEFAULT_TOTAL_TEST_TIMEOUT,
+ type=int,
+ envvar="TOTAL_TEST_TIMEOUT",
+)
@group_for_testing.command(
@@ -573,6 +585,7 @@ option_force_sa_warnings = click.option(
@option_skip_docker_compose_down
@option_test_timeout
@option_test_type_core_group
+@option_total_test_timeout
@option_upgrade_boto
@option_use_airflow_version
@option_use_packages_from_dist
@@ -638,6 +651,7 @@ def core_tests(**kwargs):
@option_skip_providers
@option_test_timeout
@option_test_type_providers_group
+@option_total_test_timeout
@option_upgrade_boto
@option_use_airflow_version
@option_use_packages_from_dist
@@ -657,7 +671,6 @@ def providers_tests(**kwargs):
),
)
@option_collect_only
-@option_debug_resources
@option_dry_run
@option_enable_coverage
@option_force_sa_warnings
@@ -665,11 +678,8 @@ def providers_tests(**kwargs):
@option_github_repository
@option_image_tag_for_running
@option_keep_env_variables
-@option_include_success_outputs
@option_mount_sources
-@option_parallelism
@option_python
-@option_skip_cleanup
@option_skip_docker_compose_down
@option_test_timeout
@option_verbose
@@ -680,9 +690,11 @@ def task_sdk_tests(**kwargs):
airflow_constraints_reference="constraints-main",
backend="none",
clean_airflow_installation=False,
+ debug_resources=False,
downgrade_pendulum=False,
downgrade_sqlalchemy=False,
db_reset=False,
+ include_success_outputs=False,
integration=(),
install_airflow_with_constraints=False,
run_db_tests_only=False,
@@ -694,12 +706,15 @@ def task_sdk_tests(**kwargs):
force_lowest_dependencies=False,
no_db_cleanup=True,
parallel_test_types="",
+ parallelism=0,
package_format="wheel",
providers_constraints_location="",
providers_skip_constraints=False,
remove_arm_packages=False,
+ skip_cleanup=False,
skip_providers="",
test_type=ALL_TEST_TYPE,
+ total_test_timeout=DEFAULT_TOTAL_TEST_TIMEOUT,
upgrade_boto=False,
use_airflow_version=None,
use_packages_from_dist=False,
@@ -1100,6 +1115,20 @@ def python_api_client_tests(
sys.exit(returncode)
[email protected]
+def run_with_timeout(timeout: int):
+ def timeout_handler(signum, frame):
+ get_console().print("[error]Timeout reached. Killing the process[/]")
+ sys.exit(1)
+
+ signal.signal(signal.SIGALRM, timeout_handler)
+ signal.alarm(timeout)
+ try:
+ yield
+ finally:
+ signal.alarm(0)
+
+
def _run_test_command(
*,
test_group: GroupOfTests,
@@ -1141,6 +1170,7 @@ def _run_test_command(
skip_providers: str,
test_timeout: int,
test_type: str,
+ total_test_timeout: int,
upgrade_boto: bool,
use_airflow_version: str | None,
use_packages_from_dist: bool,
@@ -1212,16 +1242,17 @@ def _run_test_command(
f"Your test type = {test_type}\n"
)
sys.exit(1)
- run_tests_in_parallel(
- shell_params=shell_params,
- extra_pytest_args=extra_pytest_args,
- test_timeout=test_timeout,
- include_success_outputs=include_success_outputs,
- parallelism=parallelism,
- skip_cleanup=skip_cleanup,
- debug_resources=debug_resources,
- skip_docker_compose_down=skip_docker_compose_down,
- )
+ with run_with_timeout(total_test_timeout):
+ run_tests_in_parallel(
+ shell_params=shell_params,
+ extra_pytest_args=extra_pytest_args,
+ test_timeout=test_timeout,
+ include_success_outputs=include_success_outputs,
+ parallelism=parallelism,
+ skip_cleanup=skip_cleanup,
+ debug_resources=debug_resources,
+ skip_docker_compose_down=skip_docker_compose_down,
+ )
else:
if shell_params.test_type == ALL_TEST_TYPE:
if any(["tests/" in arg and not arg.startswith("-") for arg in
extra_pytest_args]):
diff --git a/dev/breeze/src/airflow_breeze/commands/testing_commands_config.py
b/dev/breeze/src/airflow_breeze/commands/testing_commands_config.py
index 8ae5d7a6c9d..9e1c391a9ca 100644
--- a/dev/breeze/src/airflow_breeze/commands/testing_commands_config.py
+++ b/dev/breeze/src/airflow_breeze/commands/testing_commands_config.py
@@ -49,16 +49,6 @@ TEST_ENVIRONMENT_DB: dict[str, str | list[str]] = {
}
TEST_PARALLELISM_OPTIONS: dict[str, str | list[str]] = {
- "name": "Options for parallel test commands",
- "options": [
- "--parallelism",
- "--skip-cleanup",
- "--debug-resources",
- "--include-success-outputs",
- ],
-}
-
-TEST_PARALLELISM_OPTIONS_XDIST: dict[str, str | list[str]] = {
"name": "Options for parallel test commands",
"options": [
"--run-in-parallel",
@@ -67,6 +57,7 @@ TEST_PARALLELISM_OPTIONS_XDIST: dict[str, str | list[str]] = {
"--skip-cleanup",
"--debug-resources",
"--include-success-outputs",
+ "--total-test-timeout",
],
}
@@ -132,41 +123,6 @@ TEST_PARAMS: list[dict[str, str | list[str]]] = [
],
},
TEST_ENVIRONMENT_DB,
- TEST_PARALLELISM_OPTIONS_XDIST,
- TEST_UPGRADING_PACKAGES,
-]
-
-TEST_PARAMS_NON_DB: list[dict[str, str | list[str]]] = [
- {
- "name": "Select test types to run",
- "options": [
- "--parallel-test-types",
- "--excluded-parallel-test-types",
- ],
- },
- TEST_OPTIONS_NON_DB,
- {
- "name": "Test environment",
- "options": [
- "--python",
- "--forward-credentials",
- "--force-sa-warnings",
- ],
- },
- TEST_PARALLELISM_OPTIONS,
- TEST_UPGRADING_PACKAGES,
-]
-
-TEST_PARAMS_DB: list[dict[str, str | list[str]]] = [
- {
- "name": "Select tests to run",
- "options": [
- "--parallel-test-types",
- "--excluded-parallel-test-types",
- ],
- },
- TEST_OPTIONS_DB,
- TEST_ENVIRONMENT_DB,
TEST_PARALLELISM_OPTIONS,
TEST_UPGRADING_PACKAGES,
]
@@ -223,7 +179,6 @@ TESTING_PARAMETERS: dict[str, list[dict[str, str |
list[str]]]] = {
],
},
TEST_ADVANCED_FLAGS,
- TEST_PARALLELISM_OPTIONS,
],
"breeze testing core-integration-tests": [
TEST_OPTIONS_DB,