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

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


The following commit(s) were added to refs/heads/main by this push:
     new 74a1931c3b Split Celery integration tests to "celery" and "redis" 
(#39994)
74a1931c3b is described below

commit 74a1931c3b4131857e3949171738386e7c7d91f3
Author: Shahar Epstein <60007259+shah...@users.noreply.github.com>
AuthorDate: Mon Jun 10 18:56:06 2024 +0300

    Split Celery integration tests to "celery" and "redis" (#39994)
---
 contributing-docs/testing/integration_tests.rst    |  2 ++
 dev/breeze/doc/images/output-commands.svg          |  2 +-
 dev/breeze/doc/images/output_shell.svg             |  2 +-
 dev/breeze/doc/images/output_shell.txt             |  2 +-
 dev/breeze/doc/images/output_start-airflow.svg     |  2 +-
 dev/breeze/doc/images/output_start-airflow.txt     |  2 +-
 .../images/output_testing_integration-tests.svg    |  4 ++--
 .../images/output_testing_integration-tests.txt    |  2 +-
 dev/breeze/doc/images/output_testing_tests.svg     |  4 ++--
 dev/breeze/doc/images/output_testing_tests.txt     |  2 +-
 dev/breeze/src/airflow_breeze/global_constants.py  | 18 ++++++++++--------
 .../src/airflow_breeze/params/shell_params.py      |  5 +++--
 scripts/ci/docker-compose/integration-celery.yml   | 17 ++++++-----------
 ...ntegration-celery.yml => integration-redis.yml} | 22 +++-------------------
 scripts/in_container/check_environment.sh          |  3 +++
 .../integration/executors/test_celery_executor.py  |  5 ++---
 .../providers/redis/hooks/test_redis.py            |  2 +-
 .../redis/operators/test_redis_publish.py          |  2 +-
 .../providers/redis/sensors/test_redis_key.py      |  2 +-
 .../providers/redis/sensors/test_redis_pub_sub.py  |  2 +-
 20 files changed, 44 insertions(+), 58 deletions(-)

diff --git a/contributing-docs/testing/integration_tests.rst 
b/contributing-docs/testing/integration_tests.rst
index 80cf169d90..823b4a509c 100644
--- a/contributing-docs/testing/integration_tests.rst
+++ b/contributing-docs/testing/integration_tests.rst
@@ -74,6 +74,8 @@ The following integrations are available:
 +--------------+----------------------------------------------------+
 | qdrant       | Integration required for Qdrant tests.             |
 +--------------+----------------------------------------------------+
+| redis        | Integration required for Redis tests.              |
++--------------+----------------------------------------------------+
 | statsd       | Integration required for Statsd hooks.             |
 +--------------+----------------------------------------------------+
 | trino        | Integration required for Trino hooks.              |
diff --git a/dev/breeze/doc/images/output-commands.svg 
b/dev/breeze/doc/images/output-commands.svg
index df92c06ae3..1381742085 100644
--- a/dev/breeze/doc/images/output-commands.svg
+++ b/dev/breeze/doc/images/output-commands.svg
@@ -300,7 +300,7 @@
 </text><text class="breeze-help-r5" x="0" y="166.4" textLength="12.2" 
clip-path="url(#breeze-help-line-6)">│</text><text class="breeze-help-r5" 
x="414.8" y="166.4" textLength="732" 
clip-path="url(#breeze-help-line-6)">[default:&#160;3.8]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
 </text><text class="breeze-help-r5" x="0" y="190.8" textLength="12.2" 
clip-path="url(#breeze-help-line-7)">│</text><text class="breeze-help-r4" 
x="24.4" y="190.8" textLength="158.6" 
clip-path="url(#breeze-help-line-7)">--integration</text><text 
class="breeze-help-r1" x="414.8" y="190.8" textLength="1024.8" 
clip-path="url(#breeze-help-line-7)">Integration(s)&#160;to&#160;enable&#160;when&#160;running&#160;(can&#160;be&#160;more&#160;than&#160;one).&#160;&#160;&#160;&#160;&#160;&#160;&#160
 [...]
 </text><text class="breeze-help-r5" x="0" y="215.2" textLength="12.2" 
clip-path="url(#breeze-help-line-8)">│</text><text class="breeze-help-r7" 
x="414.8" y="215.2" textLength="1024.8" 
clip-path="url(#breeze-help-line-8)">(all&#160;|&#160;all-testable&#160;|&#160;cassandra&#160;|&#160;celery&#160;|&#160;drill&#160;|&#160;kafka&#160;|&#160;kerberos&#160;|&#160;mongo&#160;|&#160;mssql&#160;</text><text
 class="breeze-help-r5" x="1451.8" y="215.2" textLength="12.2" 
clip-path="url(#breeze-help [...]
-</text><text class="breeze-help-r5" x="0" y="239.6" textLength="12.2" 
clip-path="url(#breeze-help-line-9)">│</text><text class="breeze-help-r7" 
x="414.8" y="239.6" textLength="1024.8" 
clip-path="url(#breeze-help-line-9)">|&#160;openlineage&#160;|&#160;otel&#160;|&#160;pinot&#160;|&#160;qdrant&#160;|&#160;statsd&#160;|&#160;trino)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160
 [...]
+</text><text class="breeze-help-r5" x="0" y="239.6" textLength="12.2" 
clip-path="url(#breeze-help-line-9)">│</text><text class="breeze-help-r7" 
x="414.8" y="239.6" textLength="1024.8" 
clip-path="url(#breeze-help-line-9)">|&#160;openlineage&#160;|&#160;otel&#160;|&#160;pinot&#160;|&#160;qdrant&#160;|&#160;redis&#160;|&#160;statsd&#160;|&#160;trino)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 clas [...]
 </text><text class="breeze-help-r5" x="0" y="264" textLength="12.2" 
clip-path="url(#breeze-help-line-10)">│</text><text class="breeze-help-r4" 
x="24.4" y="264" textLength="317.2" 
clip-path="url(#breeze-help-line-10)">--standalone-dag-processor</text><text 
class="breeze-help-r1" x="414.8" y="264" textLength="573.4" 
clip-path="url(#breeze-help-line-10)">Run&#160;standalone&#160;dag&#160;processor&#160;for&#160;start-airflow.</text><text
 class="breeze-help-r5" x="1451.8" y="264" textLength= [...]
 </text><text class="breeze-help-r5" x="0" y="288.4" textLength="12.2" 
clip-path="url(#breeze-help-line-11)">│</text><text class="breeze-help-r4" 
x="24.4" y="288.4" textLength="244" 
clip-path="url(#breeze-help-line-11)">--database-isolation</text><text 
class="breeze-help-r1" x="414.8" y="288.4" textLength="475.8" 
clip-path="url(#breeze-help-line-11)">Run&#160;airflow&#160;in&#160;database&#160;isolation&#160;mode.</text><text
 class="breeze-help-r5" x="1451.8" y="288.4" textLength="12.2" c [...]
 </text><text class="breeze-help-r5" x="0" y="312.8" textLength="1464" 
clip-path="url(#breeze-help-line-12)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-help-r1" x="1464" y="312.8" textLength="12.2" 
clip-path="url(#breeze-help-line-12)">
diff --git a/dev/breeze/doc/images/output_shell.svg 
b/dev/breeze/doc/images/output_shell.svg
index c397fe3e38..f1449fefe5 100644
--- a/dev/breeze/doc/images/output_shell.svg
+++ b/dev/breeze/doc/images/output_shell.svg
@@ -521,7 +521,7 @@
 </text><text class="breeze-shell-r5" x="0" y="215.2" textLength="12.2" 
clip-path="url(#breeze-shell-line-8)">│</text><text class="breeze-shell-r5" 
x="414.8" y="215.2" textLength="732" 
clip-path="url(#breeze-shell-line-8)">[default:&#160;3.8]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160
 [...]
 </text><text class="breeze-shell-r5" x="0" y="239.6" textLength="12.2" 
clip-path="url(#breeze-shell-line-9)">│</text><text class="breeze-shell-r4" 
x="24.4" y="239.6" textLength="158.6" 
clip-path="url(#breeze-shell-line-9)">--integration</text><text 
class="breeze-shell-r1" x="414.8" y="239.6" textLength="1024.8" 
clip-path="url(#breeze-shell-line-9)">Integration(s)&#160;to&#160;enable&#160;when&#160;running&#160;(can&#160;be&#160;more&#160;than&#160;one).&#160;&#160;&#160;&#160;&#160;&#160
 [...]
 </text><text class="breeze-shell-r5" x="0" y="264" textLength="12.2" 
clip-path="url(#breeze-shell-line-10)">│</text><text class="breeze-shell-r7" 
x="414.8" y="264" textLength="1024.8" 
clip-path="url(#breeze-shell-line-10)">(all&#160;|&#160;all-testable&#160;|&#160;cassandra&#160;|&#160;celery&#160;|&#160;drill&#160;|&#160;kafka&#160;|&#160;kerberos&#160;|&#160;mongo&#160;|&#160;mssql&#160;</text><text
 class="breeze-shell-r5" x="1451.8" y="264" textLength="12.2" 
clip-path="url(#breeze-she [...]
-</text><text class="breeze-shell-r5" x="0" y="288.4" textLength="12.2" 
clip-path="url(#breeze-shell-line-11)">│</text><text class="breeze-shell-r7" 
x="414.8" y="288.4" textLength="1024.8" 
clip-path="url(#breeze-shell-line-11)">|&#160;openlineage&#160;|&#160;otel&#160;|&#160;pinot&#160;|&#160;qdrant&#160;|&#160;statsd&#160;|&#160;trino)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160
 [...]
+</text><text class="breeze-shell-r5" x="0" y="288.4" textLength="12.2" 
clip-path="url(#breeze-shell-line-11)">│</text><text class="breeze-shell-r7" 
x="414.8" y="288.4" textLength="1024.8" 
clip-path="url(#breeze-shell-line-11)">|&#160;openlineage&#160;|&#160;otel&#160;|&#160;pinot&#160;|&#160;qdrant&#160;|&#160;redis&#160;|&#160;statsd&#160;|&#160;trino)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><tex
 [...]
 </text><text class="breeze-shell-r5" x="0" y="312.8" textLength="12.2" 
clip-path="url(#breeze-shell-line-12)">│</text><text class="breeze-shell-r4" 
x="24.4" y="312.8" textLength="317.2" 
clip-path="url(#breeze-shell-line-12)">--standalone-dag-processor</text><text 
class="breeze-shell-r1" x="414.8" y="312.8" textLength="573.4" 
clip-path="url(#breeze-shell-line-12)">Run&#160;standalone&#160;dag&#160;processor&#160;for&#160;start-airflow.</text><text
 class="breeze-shell-r5" x="1451.8" y="312 [...]
 </text><text class="breeze-shell-r5" x="0" y="337.2" textLength="12.2" 
clip-path="url(#breeze-shell-line-13)">│</text><text class="breeze-shell-r4" 
x="24.4" y="337.2" textLength="244" 
clip-path="url(#breeze-shell-line-13)">--database-isolation</text><text 
class="breeze-shell-r1" x="414.8" y="337.2" textLength="475.8" 
clip-path="url(#breeze-shell-line-13)">Run&#160;airflow&#160;in&#160;database&#160;isolation&#160;mode.</text><text
 class="breeze-shell-r5" x="1451.8" y="337.2" textLength=" [...]
 </text><text class="breeze-shell-r5" x="0" y="361.6" textLength="1464" 
clip-path="url(#breeze-shell-line-14)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-shell-r1" x="1464" y="361.6" textLength="12.2" 
clip-path="url(#breeze-shell-line-14)">
diff --git a/dev/breeze/doc/images/output_shell.txt 
b/dev/breeze/doc/images/output_shell.txt
index 8c0c62dc49..ea3e916b67 100644
--- a/dev/breeze/doc/images/output_shell.txt
+++ b/dev/breeze/doc/images/output_shell.txt
@@ -1 +1 @@
-24a11835dbadb243b380175681db6827
+84c9572359eef66076ea6af1355fdda7
diff --git a/dev/breeze/doc/images/output_start-airflow.svg 
b/dev/breeze/doc/images/output_start-airflow.svg
index 46142fa6cc..9ff84f31fb 100644
--- a/dev/breeze/doc/images/output_start-airflow.svg
+++ b/dev/breeze/doc/images/output_start-airflow.svg
@@ -400,7 +400,7 @@
 </text><text class="breeze-start-airflow-r5" x="0" y="264" textLength="12.2" 
clip-path="url(#breeze-start-airflow-line-10)">│</text><text 
class="breeze-start-airflow-r4" x="24.4" y="264" textLength="122" 
clip-path="url(#breeze-start-airflow-line-10)">--platform</text><text 
class="breeze-start-airflow-r1" x="414.8" y="264" textLength="329.4" 
clip-path="url(#breeze-start-airflow-line-10)">Platform&#160;for&#160;Airflow&#160;image.</text><text
 class="breeze-start-airflow-r7" x="756.4" y="26 [...]
 </text><text class="breeze-start-airflow-r5" x="0" y="288.4" textLength="12.2" 
clip-path="url(#breeze-start-airflow-line-11)">│</text><text 
class="breeze-start-airflow-r4" x="24.4" y="288.4" textLength="158.6" 
clip-path="url(#breeze-start-airflow-line-11)">--integration</text><text 
class="breeze-start-airflow-r1" x="414.8" y="288.4" textLength="1024.8" 
clip-path="url(#breeze-start-airflow-line-11)">Integration(s)&#160;to&#160;enable&#160;when&#160;running&#160;(can&#160;be&#160;more&#160
 [...]
 </text><text class="breeze-start-airflow-r5" x="0" y="312.8" textLength="12.2" 
clip-path="url(#breeze-start-airflow-line-12)">│</text><text 
class="breeze-start-airflow-r7" x="414.8" y="312.8" textLength="1024.8" 
clip-path="url(#breeze-start-airflow-line-12)">(all&#160;|&#160;all-testable&#160;|&#160;cassandra&#160;|&#160;celery&#160;|&#160;drill&#160;|&#160;kafka&#160;|&#160;kerberos&#160;|&#160;mongo&#160;|&#160;mssql&#160;</text><text
 class="breeze-start-airflow-r5" x="1451.8" y="312.8 [...]
-</text><text class="breeze-start-airflow-r5" x="0" y="337.2" textLength="12.2" 
clip-path="url(#breeze-start-airflow-line-13)">│</text><text 
class="breeze-start-airflow-r7" x="414.8" y="337.2" textLength="1024.8" 
clip-path="url(#breeze-start-airflow-line-13)">|&#160;openlineage&#160;|&#160;otel&#160;|&#160;pinot&#160;|&#160;qdrant&#160;|&#160;statsd&#160;|&#160;trino)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
+</text><text class="breeze-start-airflow-r5" x="0" y="337.2" textLength="12.2" 
clip-path="url(#breeze-start-airflow-line-13)">│</text><text 
class="breeze-start-airflow-r7" x="414.8" y="337.2" textLength="1024.8" 
clip-path="url(#breeze-start-airflow-line-13)">|&#160;openlineage&#160;|&#160;otel&#160;|&#160;pinot&#160;|&#160;qdrant&#160;|&#160;redis&#160;|&#160;statsd&#160;|&#160;trino)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
 </text><text class="breeze-start-airflow-r5" x="0" y="361.6" textLength="12.2" 
clip-path="url(#breeze-start-airflow-line-14)">│</text><text 
class="breeze-start-airflow-r4" x="24.4" y="361.6" textLength="317.2" 
clip-path="url(#breeze-start-airflow-line-14)">--standalone-dag-processor</text><text
 class="breeze-start-airflow-r1" x="414.8" y="361.6" textLength="573.4" 
clip-path="url(#breeze-start-airflow-line-14)">Run&#160;standalone&#160;dag&#160;processor&#160;for&#160;start-airflow.</text
 [...]
 </text><text class="breeze-start-airflow-r5" x="0" y="386" textLength="12.2" 
clip-path="url(#breeze-start-airflow-line-15)">│</text><text 
class="breeze-start-airflow-r4" x="24.4" y="386" textLength="244" 
clip-path="url(#breeze-start-airflow-line-15)">--database-isolation</text><text 
class="breeze-start-airflow-r1" x="414.8" y="386" textLength="475.8" 
clip-path="url(#breeze-start-airflow-line-15)">Run&#160;airflow&#160;in&#160;database&#160;isolation&#160;mode.</text><text
 class="breeze-s [...]
 </text><text class="breeze-start-airflow-r5" x="0" y="410.4" textLength="12.2" 
clip-path="url(#breeze-start-airflow-line-16)">│</text><text 
class="breeze-start-airflow-r4" x="24.4" y="410.4" textLength="231.8" 
clip-path="url(#breeze-start-airflow-line-16)">--load-example-dags</text><text 
class="breeze-start-airflow-r6" x="366" y="410.4" textLength="24.4" 
clip-path="url(#breeze-start-airflow-line-16)">-e</text><text 
class="breeze-start-airflow-r1" x="414.8" y="410.4" textLength="780.8" cl [...]
diff --git a/dev/breeze/doc/images/output_start-airflow.txt 
b/dev/breeze/doc/images/output_start-airflow.txt
index 91963233a2..7f9086008d 100644
--- a/dev/breeze/doc/images/output_start-airflow.txt
+++ b/dev/breeze/doc/images/output_start-airflow.txt
@@ -1 +1 @@
-df6894b42ff874ea9b414d61d4a7c8a0
+ae3a2480bdd0cce8f42234fb0b7804e6
diff --git a/dev/breeze/doc/images/output_testing_integration-tests.svg 
b/dev/breeze/doc/images/output_testing_integration-tests.svg
index d94317705c..6801d5d67f 100644
--- a/dev/breeze/doc/images/output_testing_integration-tests.svg
+++ b/dev/breeze/doc/images/output_testing_integration-tests.svg
@@ -212,8 +212,8 @@
 </text><text class="breeze-testing-integration-tests-r5" x="0" y="361.6" 
textLength="24.4" 
clip-path="url(#breeze-testing-integration-tests-line-14)">╭─</text><text 
class="breeze-testing-integration-tests-r5" x="24.4" y="361.6" 
textLength="219.6" 
clip-path="url(#breeze-testing-integration-tests-line-14)">&#160;Test&#160;environment&#160;</text><text
 class="breeze-testing-integration-tests-r5" x="244" y="361.6" 
textLength="1195.6" clip-path="url(#breeze-testing-integration-tests-line-14)" 
[...]
 </text><text class="breeze-testing-integration-tests-r5" x="0" y="386" 
textLength="12.2" 
clip-path="url(#breeze-testing-integration-tests-line-15)">│</text><text 
class="breeze-testing-integration-tests-r4" x="24.4" y="386" textLength="158.6" 
clip-path="url(#breeze-testing-integration-tests-line-15)">--integration</text><text
 class="breeze-testing-integration-tests-r1" x="610" y="386" textLength="829.6" 
clip-path="url(#breeze-testing-integration-tests-line-15)">Integration(s)&#160;to&#160
 [...]
 </text><text class="breeze-testing-integration-tests-r5" x="0" y="410.4" 
textLength="12.2" 
clip-path="url(#breeze-testing-integration-tests-line-16)">│</text><text 
class="breeze-testing-integration-tests-r6" x="610" y="410.4" 
textLength="829.6" 
clip-path="url(#breeze-testing-integration-tests-line-16)">(all&#160;|&#160;all-testable&#160;|&#160;cassandra&#160;|&#160;celery&#160;|&#160;drill&#160;|&#160;kafka&#160;|&#160;kerberos&#160;</text><text
 class="breeze-testing-integration-tests-r5 [...]
-</text><text class="breeze-testing-integration-tests-r5" x="0" y="434.8" 
textLength="12.2" 
clip-path="url(#breeze-testing-integration-tests-line-17)">│</text><text 
class="breeze-testing-integration-tests-r6" x="610" y="434.8" 
textLength="829.6" 
clip-path="url(#breeze-testing-integration-tests-line-17)">|&#160;mongo&#160;|&#160;mssql&#160;|&#160;openlineage&#160;|&#160;otel&#160;|&#160;pinot&#160;|&#160;qdrant&#160;|&#160;statsd&#160;|&#160;&#160;&#160;&#160;</text><text
 class="breeze-tes [...]
-</text><text class="breeze-testing-integration-tests-r5" x="0" y="459.2" 
textLength="12.2" 
clip-path="url(#breeze-testing-integration-tests-line-18)">│</text><text 
class="breeze-testing-integration-tests-r6" x="610" y="459.2" 
textLength="829.6" 
clip-path="url(#breeze-testing-integration-tests-line-18)">trino)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#
 [...]
+</text><text class="breeze-testing-integration-tests-r5" x="0" y="434.8" 
textLength="12.2" 
clip-path="url(#breeze-testing-integration-tests-line-17)">│</text><text 
class="breeze-testing-integration-tests-r6" x="610" y="434.8" 
textLength="829.6" 
clip-path="url(#breeze-testing-integration-tests-line-17)">|&#160;mongo&#160;|&#160;mssql&#160;|&#160;openlineage&#160;|&#160;otel&#160;|&#160;pinot&#160;|&#160;qdrant&#160;|&#160;redis&#160;|&#160;&#160;&#160;&#160;&#160;</text><text
 class="breez [...]
+</text><text class="breeze-testing-integration-tests-r5" x="0" y="459.2" 
textLength="12.2" 
clip-path="url(#breeze-testing-integration-tests-line-18)">│</text><text 
class="breeze-testing-integration-tests-r6" x="610" y="459.2" 
textLength="829.6" 
clip-path="url(#breeze-testing-integration-tests-line-18)">statsd&#160;|&#160;trino)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
 </text><text class="breeze-testing-integration-tests-r5" x="0" y="483.6" 
textLength="12.2" 
clip-path="url(#breeze-testing-integration-tests-line-19)">│</text><text 
class="breeze-testing-integration-tests-r4" x="24.4" y="483.6" 
textLength="109.8" 
clip-path="url(#breeze-testing-integration-tests-line-19)">--backend</text><text
 class="breeze-testing-integration-tests-r7" x="561.2" y="483.6" 
textLength="24.4" 
clip-path="url(#breeze-testing-integration-tests-line-19)">-b</text><text 
class="br [...]
 </text><text class="breeze-testing-integration-tests-r5" x="0" y="508" 
textLength="12.2" 
clip-path="url(#breeze-testing-integration-tests-line-20)">│</text><text 
class="breeze-testing-integration-tests-r1" x="610" y="508" textLength="829.6" 
clip-path="url(#breeze-testing-integration-tests-line-20)">invalid&#160;DB&#160;configuration&#160;and&#160;no&#160;database&#160;and&#160;any&#160;attempts&#160;to&#160;connect</text><text
 class="breeze-testing-integration-tests-r5" x="1451.8" y="508 [...]
 </text><text class="breeze-testing-integration-tests-r5" x="0" y="532.4" 
textLength="12.2" 
clip-path="url(#breeze-testing-integration-tests-line-21)">│</text><text 
class="breeze-testing-integration-tests-r1" x="610" y="532.4" 
textLength="829.6" 
clip-path="url(#breeze-testing-integration-tests-line-21)">to&#160;Airflow&#160;DB&#160;will&#160;fail.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;
 [...]
diff --git a/dev/breeze/doc/images/output_testing_integration-tests.txt 
b/dev/breeze/doc/images/output_testing_integration-tests.txt
index 1ce1ec9dcb..4e797be366 100644
--- a/dev/breeze/doc/images/output_testing_integration-tests.txt
+++ b/dev/breeze/doc/images/output_testing_integration-tests.txt
@@ -1 +1 @@
-1fcc3bf55f3f8368264a998f68ed3c8f
+29357a3838bf8ff90520c3bfbf818bbe
diff --git a/dev/breeze/doc/images/output_testing_tests.svg 
b/dev/breeze/doc/images/output_testing_tests.svg
index f7d17bff54..7876ef08a1 100644
--- a/dev/breeze/doc/images/output_testing_tests.svg
+++ b/dev/breeze/doc/images/output_testing_tests.svg
@@ -467,8 +467,8 @@
 </text><text class="breeze-testing-tests-r5" x="0" y="1020.4" 
textLength="24.4" clip-path="url(#breeze-testing-tests-line-41)">╭─</text><text 
class="breeze-testing-tests-r5" x="24.4" y="1020.4" textLength="219.6" 
clip-path="url(#breeze-testing-tests-line-41)">&#160;Test&#160;environment&#160;</text><text
 class="breeze-testing-tests-r5" x="244" y="1020.4" textLength="1195.6" 
clip-path="url(#breeze-testing-tests-line-41)">────────────────────────────────────────────────────────────────────
 [...]
 </text><text class="breeze-testing-tests-r5" x="0" y="1044.8" 
textLength="12.2" clip-path="url(#breeze-testing-tests-line-42)">│</text><text 
class="breeze-testing-tests-r4" x="24.4" y="1044.8" textLength="158.6" 
clip-path="url(#breeze-testing-tests-line-42)">--integration</text><text 
class="breeze-testing-tests-r1" x="610" y="1044.8" textLength="829.6" 
clip-path="url(#breeze-testing-tests-line-42)">Integration(s)&#160;to&#160;enable&#160;when&#160;running&#160;(can&#160;be&#160;more&#160
 [...]
 </text><text class="breeze-testing-tests-r5" x="0" y="1069.2" 
textLength="12.2" clip-path="url(#breeze-testing-tests-line-43)">│</text><text 
class="breeze-testing-tests-r7" x="610" y="1069.2" textLength="829.6" 
clip-path="url(#breeze-testing-tests-line-43)">(all&#160;|&#160;all-testable&#160;|&#160;cassandra&#160;|&#160;celery&#160;|&#160;drill&#160;|&#160;kafka&#160;|&#160;kerberos&#160;</text><text
 class="breeze-testing-tests-r5" x="1451.8" y="1069.2" textLength="12.2" 
clip-path="url(# [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="1093.6" 
textLength="12.2" clip-path="url(#breeze-testing-tests-line-44)">│</text><text 
class="breeze-testing-tests-r7" x="610" y="1093.6" textLength="829.6" 
clip-path="url(#breeze-testing-tests-line-44)">|&#160;mongo&#160;|&#160;mssql&#160;|&#160;openlineage&#160;|&#160;otel&#160;|&#160;pinot&#160;|&#160;qdrant&#160;|&#160;statsd&#160;|&#160;&#160;&#160;&#160;</text><text
 class="breeze-testing-tests-r5" x="1451.8" y="1093.6" textLengt [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="1118" textLength="12.2" 
clip-path="url(#breeze-testing-tests-line-45)">│</text><text 
class="breeze-testing-tests-r7" x="610" y="1118" textLength="829.6" 
clip-path="url(#breeze-testing-tests-line-45)">trino)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16
 [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="1093.6" 
textLength="12.2" clip-path="url(#breeze-testing-tests-line-44)">│</text><text 
class="breeze-testing-tests-r7" x="610" y="1093.6" textLength="829.6" 
clip-path="url(#breeze-testing-tests-line-44)">|&#160;mongo&#160;|&#160;mssql&#160;|&#160;openlineage&#160;|&#160;otel&#160;|&#160;pinot&#160;|&#160;qdrant&#160;|&#160;redis&#160;|&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-testing-tests-r5" x="1451.8" y="1093.6" text [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="1118" textLength="12.2" 
clip-path="url(#breeze-testing-tests-line-45)">│</text><text 
class="breeze-testing-tests-r7" x="610" y="1118" textLength="829.6" 
clip-path="url(#breeze-testing-tests-line-45)">statsd&#160;|&#160;trino)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
 </text><text class="breeze-testing-tests-r5" x="0" y="1142.4" 
textLength="12.2" clip-path="url(#breeze-testing-tests-line-46)">│</text><text 
class="breeze-testing-tests-r4" x="24.4" y="1142.4" textLength="109.8" 
clip-path="url(#breeze-testing-tests-line-46)">--backend</text><text 
class="breeze-testing-tests-r6" x="561.2" y="1142.4" textLength="24.4" 
clip-path="url(#breeze-testing-tests-line-46)">-b</text><text 
class="breeze-testing-tests-r1" x="610" y="1142.4" textLength="829.6" clip-pat 
[...]
 </text><text class="breeze-testing-tests-r5" x="0" y="1166.8" 
textLength="12.2" clip-path="url(#breeze-testing-tests-line-47)">│</text><text 
class="breeze-testing-tests-r1" x="610" y="1166.8" textLength="829.6" 
clip-path="url(#breeze-testing-tests-line-47)">invalid&#160;DB&#160;configuration&#160;and&#160;no&#160;database&#160;and&#160;any&#160;attempts&#160;to&#160;connect</text><text
 class="breeze-testing-tests-r5" x="1451.8" y="1166.8" textLength="12.2" 
clip-path="url(#breeze-testing- [...]
 </text><text class="breeze-testing-tests-r5" x="0" y="1191.2" 
textLength="12.2" clip-path="url(#breeze-testing-tests-line-48)">│</text><text 
class="breeze-testing-tests-r1" x="610" y="1191.2" textLength="829.6" 
clip-path="url(#breeze-testing-tests-line-48)">to&#160;Airflow&#160;DB&#160;will&#160;fail.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16
 [...]
diff --git a/dev/breeze/doc/images/output_testing_tests.txt 
b/dev/breeze/doc/images/output_testing_tests.txt
index e5e54e6eff..731a581153 100644
--- a/dev/breeze/doc/images/output_testing_tests.txt
+++ b/dev/breeze/doc/images/output_testing_tests.txt
@@ -1 +1 @@
-db5149f207af5cb6903b8213597539d9
+45c2dd92b2f83548aa9256e529d9da7e
diff --git a/dev/breeze/src/airflow_breeze/global_constants.py 
b/dev/breeze/src/airflow_breeze/global_constants.py
index 6f80ada99a..b672f8afa3 100644
--- a/dev/breeze/src/airflow_breeze/global_constants.py
+++ b/dev/breeze/src/airflow_breeze/global_constants.py
@@ -59,8 +59,9 @@ TESTABLE_INTEGRATIONS = [
     "mongo",
     "mssql",
     "pinot",
-    "trino",
     "qdrant",
+    "redis",
+    "trino",
 ]
 OTHER_INTEGRATIONS = ["statsd", "otel", "openlineage"]
 ALLOWED_DEBIAN_VERSIONS = ["bookworm", "bullseye"]
@@ -232,16 +233,17 @@ def get_default_platform_machine() -> str:
 DOCKER_DEFAULT_PLATFORM = f"linux/{get_default_platform_machine()}"
 DOCKER_BUILDKIT = 1
 
-SSH_PORT = "12322"
-WEBSERVER_HOST_PORT = "28080"
-POSTGRES_HOST_PORT = "25433"
-MYSQL_HOST_PORT = "23306"
+DRILL_HOST_PORT = "28047"
 FLOWER_HOST_PORT = "25555"
-REDIS_HOST_PORT = "26379"
-CELERY_BROKER_URLS_MAP = {"rabbitmq": "amqp://guest:guest@rabbitmq:5672", 
"redis": "redis://redis:6379/0"}
 MSSQL_HOST_PORT = "21433"
-DRILL_HOST_PORT = "28047"
+MYSQL_HOST_PORT = "23306"
+POSTGRES_HOST_PORT = "25433"
+RABBITMQ_HOST_PORT = "25672"
+REDIS_HOST_PORT = "26379"
+SSH_PORT = "12322"
+WEBSERVER_HOST_PORT = "28080"
 
+CELERY_BROKER_URLS_MAP = {"rabbitmq": "amqp://guest:guest@rabbitmq:5672", 
"redis": "redis://redis:6379/0"}
 SQLITE_URL = "sqlite:////root/airflow/sqlite/airflow.db"
 PYTHONDONTWRITEBYTECODE = True
 
diff --git a/dev/breeze/src/airflow_breeze/params/shell_params.py 
b/dev/breeze/src/airflow_breeze/params/shell_params.py
index f67aa99131..ec18ccda76 100644
--- a/dev/breeze/src/airflow_breeze/params/shell_params.py
+++ b/dev/breeze/src/airflow_breeze/params/shell_params.py
@@ -489,6 +489,7 @@ class ShellParams:
         _set_var(_env, "BASE_BRANCH", self.base_branch, "main")
         _set_var(_env, "BREEZE", "true")
         _set_var(_env, "BREEZE_INIT_COMMAND", None, "")
+        _set_var(_env, "CELERY_BROKER_URLS_MAP", CELERY_BROKER_URLS_MAP)
         _set_var(_env, "CELERY_FLOWER", self.celery_flower)
         _set_var(_env, "CHICKEN_EGG_PROVIDERS", self.chicken_egg_providers)
         _set_var(_env, "CI", None, "false")
@@ -508,6 +509,7 @@ class ShellParams:
         _set_var(_env, "DOCKER_IS_ROOTLESS", self.rootless_docker)
         _set_var(_env, "DOWNGRADE_SQLALCHEMY", self.downgrade_sqlalchemy)
         _set_var(_env, "DOWNGRADE_PENDULUM", self.downgrade_pendulum)
+        _set_var(_env, "DRILL_HOST_PORT", None, DRILL_HOST_PORT)
         _set_var(_env, "ENABLED_SYSTEMS", None, "")
         _set_var(_env, "ENABLE_COVERAGE", self.enable_coverage)
         _set_var(_env, "FLOWER_HOST_PORT", None, FLOWER_HOST_PORT)
@@ -525,6 +527,7 @@ class ShellParams:
         _set_var(_env, "ISSUE_ID", self.issue_id)
         _set_var(_env, "LOAD_DEFAULT_CONNECTIONS", 
self.load_default_connections)
         _set_var(_env, "LOAD_EXAMPLES", self.load_example_dags)
+        _set_var(_env, "MSSQL_HOST_PORT", None, MSSQL_HOST_PORT)
         _set_var(_env, "MYSQL_HOST_PORT", None, MYSQL_HOST_PORT)
         _set_var(_env, "MYSQL_VERSION", self.mysql_version)
         _set_var(_env, "MOUNT_SOURCES", self.mount_sources)
@@ -542,8 +545,6 @@ class ShellParams:
         _set_var(_env, "PYTHON_MAJOR_MINOR_VERSION", self.python)
         _set_var(_env, "QUIET", self.quiet)
         _set_var(_env, "REDIS_HOST_PORT", None, REDIS_HOST_PORT)
-        _set_var(_env, "MSSQL_HOST_PORT", None, MSSQL_HOST_PORT)
-        _set_var(_env, "DRILL_HOST_PORT", None, DRILL_HOST_PORT)
         _set_var(_env, "REGENERATE_MISSING_DOCS", self.regenerate_missing_docs)
         _set_var(_env, "REMOVE_ARM_PACKAGES", self.remove_arm_packages)
         _set_var(_env, "RUN_SYSTEM_TESTS", self.run_system_tests)
diff --git a/scripts/ci/docker-compose/integration-celery.yml 
b/scripts/ci/docker-compose/integration-celery.yml
index 02129cd096..16ba20ce7c 100644
--- a/scripts/ci/docker-compose/integration-celery.yml
+++ b/scripts/ci/docker-compose/integration-celery.yml
@@ -17,11 +17,14 @@
 ---
 services:
   rabbitmq:
+    container_name: rabbitmq
     image: rabbitmq:3.7
     labels:
       breeze.description: "Integration required for Celery executor tests."
     volumes:
       - rabbitmq-db-volume:/var/lib/rabbitmq
+    ports:
+      - "${RABBITMQ_HOST_PORT}:5672"
     healthcheck:
       test: rabbitmq-diagnostics -q ping
       interval: 5s
@@ -29,17 +32,9 @@ services:
       retries: 50
     restart: "on-failure"
   redis:
-    image: redis:5.0.1
-    volumes:
-      - redis-db-volume:/data/redis
-    ports:
-      - "${REDIS_HOST_PORT}:6379"
-    healthcheck:
-      test: ["CMD", "redis-cli", "ping"]
-      interval: 5s
-      timeout: 30s
-      retries: 50
-    restart: "on-failure"
+    extends:
+      file: integration-redis.yml
+      service: redis
   airflow:
     environment:
       - INTEGRATION_CELERY=true
diff --git a/scripts/ci/docker-compose/integration-celery.yml 
b/scripts/ci/docker-compose/integration-redis.yml
similarity index 69%
copy from scripts/ci/docker-compose/integration-celery.yml
copy to scripts/ci/docker-compose/integration-redis.yml
index 02129cd096..29dd95912d 100644
--- a/scripts/ci/docker-compose/integration-celery.yml
+++ b/scripts/ci/docker-compose/integration-redis.yml
@@ -16,20 +16,10 @@
 # under the License.
 ---
 services:
-  rabbitmq:
-    image: rabbitmq:3.7
-    labels:
-      breeze.description: "Integration required for Celery executor tests."
-    volumes:
-      - rabbitmq-db-volume:/var/lib/rabbitmq
-    healthcheck:
-      test: rabbitmq-diagnostics -q ping
-      interval: 5s
-      timeout: 30s
-      retries: 50
-    restart: "on-failure"
   redis:
     image: redis:5.0.1
+    labels:
+      breeze.description: "Integration required for Redis tests."
     volumes:
       - redis-db-volume:/data/redis
     ports:
@@ -42,15 +32,9 @@ services:
     restart: "on-failure"
   airflow:
     environment:
-      - INTEGRATION_CELERY=true
-      - CELERY_FLOWER=${CELERY_FLOWER}
-      - AIRFLOW__CELERY__BROKER_URL=${AIRFLOW__CELERY__BROKER_URL}
+      - INTEGRATION_REDIS=true
     depends_on:
       redis:
         condition: service_healthy
-      rabbitmq:
-        condition: service_healthy
-
 volumes:
-  rabbitmq-db-volume:
   redis-db-volume:
diff --git a/scripts/in_container/check_environment.sh 
b/scripts/in_container/check_environment.sh
index c2a2384dde..8ddcaa9fca 100755
--- a/scripts/in_container/check_environment.sh
+++ b/scripts/in_container/check_environment.sh
@@ -156,6 +156,9 @@ fi
 if [[ ${INTEGRATION_MONGO} == "true" ]]; then
     check_service "MongoDB" "run_nc mongo 27017" 50
 fi
+if [[ ${INTEGRATION_REDIS} == "true" ]]; then
+    check_service "Redis" "run_nc redis 6379" 50
+fi
 if [[ ${INTEGRATION_CELERY} == "true" ]]; then
     check_service "Redis" "run_nc redis 6379" 50
     check_service "RabbitMQ" "run_nc rabbitmq 5672" 50
diff --git a/tests/integration/executors/test_celery_executor.py 
b/tests/integration/executors/test_celery_executor.py
index 5893438d42..03a43cc5eb 100644
--- a/tests/integration/executors/test_celery_executor.py
+++ b/tests/integration/executors/test_celery_executor.py
@@ -22,6 +22,7 @@ import json
 import logging
 import os
 import sys
+from ast import literal_eval
 from datetime import datetime
 from importlib import reload
 from time import sleep
@@ -50,9 +51,7 @@ logger = logging.getLogger(__name__)
 
 
 def _prepare_test_bodies():
-    if "CELERY_BROKER_URLS" in os.environ:
-        return os.environ["CELERY_BROKER_URLS"].split(",")
-    return [conf.get("celery", "BROKER_URL")]
+    return literal_eval(os.environ["CELERY_BROKER_URLS_MAP"]).values()
 
 
 class FakeCeleryResult:
diff --git a/tests/integration/providers/redis/hooks/test_redis.py 
b/tests/integration/providers/redis/hooks/test_redis.py
index d7760933f2..eac17ee676 100644
--- a/tests/integration/providers/redis/hooks/test_redis.py
+++ b/tests/integration/providers/redis/hooks/test_redis.py
@@ -22,7 +22,7 @@ import pytest
 from airflow.providers.redis.hooks.redis import RedisHook
 
 
-@pytest.mark.integration("celery")
+@pytest.mark.integration("redis")
 class TestRedisHook:
     def test_real_ping(self):
         hook = RedisHook(redis_conn_id="redis_default")
diff --git a/tests/integration/providers/redis/operators/test_redis_publish.py 
b/tests/integration/providers/redis/operators/test_redis_publish.py
index 4467836912..c5ea8a65bd 100644
--- a/tests/integration/providers/redis/operators/test_redis_publish.py
+++ b/tests/integration/providers/redis/operators/test_redis_publish.py
@@ -29,7 +29,7 @@ from airflow.utils import timezone
 DEFAULT_DATE = timezone.datetime(2017, 1, 1)
 
 
-@pytest.mark.integration("celery")
+@pytest.mark.integration("redis")
 class TestRedisPublishOperator:
     def setup_method(self):
         args = {"owner": "airflow", "start_date": DEFAULT_DATE}
diff --git a/tests/integration/providers/redis/sensors/test_redis_key.py 
b/tests/integration/providers/redis/sensors/test_redis_key.py
index 76034a1be7..f54e816c29 100644
--- a/tests/integration/providers/redis/sensors/test_redis_key.py
+++ b/tests/integration/providers/redis/sensors/test_redis_key.py
@@ -27,7 +27,7 @@ from airflow.utils import timezone
 DEFAULT_DATE = timezone.datetime(2017, 1, 1)
 
 
-@pytest.mark.integration("celery")
+@pytest.mark.integration("redis")
 class TestRedisSensor:
     def setup_method(self):
         args = {"owner": "airflow", "start_date": DEFAULT_DATE}
diff --git a/tests/integration/providers/redis/sensors/test_redis_pub_sub.py 
b/tests/integration/providers/redis/sensors/test_redis_pub_sub.py
index f452871bdb..55bc9845ba 100644
--- a/tests/integration/providers/redis/sensors/test_redis_pub_sub.py
+++ b/tests/integration/providers/redis/sensors/test_redis_pub_sub.py
@@ -30,7 +30,7 @@ from airflow.utils import timezone
 DEFAULT_DATE = timezone.datetime(2017, 1, 1)
 
 
-@pytest.mark.integration("celery")
+@pytest.mark.integration("redis")
 class TestRedisPubSubSensor:
     def setup_method(self):
         args = {"owner": "airflow", "start_date": DEFAULT_DATE}


Reply via email to