You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by po...@apache.org on 2025/02/28 16:09:27 UTC

(airflow) branch main updated: Bring back Airflow 2 webserver port mapping (#47219)

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 8a3328a9b5e Bring back Airflow 2 webserver port mapping (#47219)
8a3328a9b5e is described below

commit 8a3328a9b5e28ff94e734cfd0ecd268cf56e8963
Author: Jarek Potiuk <ja...@potiuk.com>
AuthorDate: Fri Feb 28 17:09:21 2025 +0100

    Bring back Airflow 2 webserver port mapping (#47219)
    
    When --use-airflow-version point to Airflow 2 we need port mapping
    to be able to connect to the webserver.
---
 dev/breeze/doc/03_developer_tasks.rst                | 1 +
 dev/breeze/src/airflow_breeze/global_constants.py    | 1 +
 dev/breeze/src/airflow_breeze/params/shell_params.py | 2 ++
 dev/breeze/src/airflow_breeze/utils/visuals.py       | 3 +++
 scripts/ci/docker-compose/base-ports.yml             | 1 +
 5 files changed, 8 insertions(+)

diff --git a/dev/breeze/doc/03_developer_tasks.rst b/dev/breeze/doc/03_developer_tasks.rst
index 8ea54695c85..b007268cd5f 100644
--- a/dev/breeze/doc/03_developer_tasks.rst
+++ b/dev/breeze/doc/03_developer_tasks.rst
@@ -152,6 +152,7 @@ database client:
 You can change the used host port numbers by setting appropriate environment variables:
 
 * ``SSH_PORT``
+* ``WEBSERVER_HOST_PORT`` - for Airflow 2 web UI when --use-airflow-version is used
 * ``API_SERVER_HOST_PORT``
 * ``POSTGRES_HOST_PORT``
 * ``MYSQL_HOST_PORT``
diff --git a/dev/breeze/src/airflow_breeze/global_constants.py b/dev/breeze/src/airflow_breeze/global_constants.py
index d148cfb42d5..4242343ed20 100644
--- a/dev/breeze/src/airflow_breeze/global_constants.py
+++ b/dev/breeze/src/airflow_breeze/global_constants.py
@@ -334,6 +334,7 @@ RABBITMQ_HOST_PORT = "25672"
 REDIS_HOST_PORT = "26379"
 SSH_PORT = "12322"
 VITE_DEV_PORT = "5173"
+WEBSERVER_HOST_PORT = "28080"
 API_SERVER_HOST_PORT = "29091"
 
 CELERY_BROKER_URLS_MAP = {"rabbitmq": "amqp://guest:guest@rabbitmq:5672", "redis": "redis://redis:6379/0"}
diff --git a/dev/breeze/src/airflow_breeze/params/shell_params.py b/dev/breeze/src/airflow_breeze/params/shell_params.py
index c0c8b2e38ec..4646f2b2bf8 100644
--- a/dev/breeze/src/airflow_breeze/params/shell_params.py
+++ b/dev/breeze/src/airflow_breeze/params/shell_params.py
@@ -60,6 +60,7 @@ from airflow_breeze.global_constants import (
     TESTABLE_CORE_INTEGRATIONS,
     TESTABLE_PROVIDERS_INTEGRATIONS,
     USE_AIRFLOW_MOUNT_SOURCES,
+    WEBSERVER_HOST_PORT,
     GithubEvents,
     GroupOfTests,
     get_airflow_version,
@@ -616,6 +617,7 @@ class ShellParams:
         _set_var(_env, "VERBOSE", get_verbose())
         _set_var(_env, "VERBOSE_COMMANDS", self.verbose_commands)
         _set_var(_env, "VERSION_SUFFIX_FOR_PYPI", self.version_suffix_for_pypi)
+        _set_var(_env, "WEBSERVER_HOST_PORT", None, WEBSERVER_HOST_PORT)
         _set_var(_env, "API_SERVER_HOST_PORT", None, API_SERVER_HOST_PORT)
         _set_var(_env, "_AIRFLOW_RUN_DB_TESTS_ONLY", self.run_db_tests_only)
         _set_var(_env, "_AIRFLOW_SKIP_DB_TESTS", self.skip_db_tests)
diff --git a/dev/breeze/src/airflow_breeze/utils/visuals.py b/dev/breeze/src/airflow_breeze/utils/visuals.py
index 0193224bb8a..6f56cc3dadd 100644
--- a/dev/breeze/src/airflow_breeze/utils/visuals.py
+++ b/dev/breeze/src/airflow_breeze/utils/visuals.py
@@ -27,6 +27,7 @@ from airflow_breeze.global_constants import (
     POSTGRES_HOST_PORT,
     REDIS_HOST_PORT,
     SSH_PORT,
+    WEBSERVER_HOST_PORT,
 )
 from airflow_breeze.utils.path_utils import AIRFLOW_SOURCES_ROOT
 
@@ -86,6 +87,7 @@ CHEATSHEET = f"""
           * {POSTGRES_HOST_PORT} -> forwarded to Postgres database -> postgres:5432
           * {MYSQL_HOST_PORT} -> forwarded to MySQL database  -> mysql:3306
           * {REDIS_HOST_PORT} -> forwarded to Redis broker -> redis:6379
+          * {WEBSERVER_HOST_PORT} -> forwarded to Airflow 2 (only Airflow 2) web server API -> airflow:8080
 
         Direct links to those services that you can use from the host:
 
@@ -95,6 +97,7 @@ CHEATSHEET = f"""
           * Postgres:  jdbc:postgresql://127.0.0.1:{POSTGRES_HOST_PORT}/airflow?user=postgres&password=airflow
           * Mysql:     jdbc:mysql://127.0.0.1:{MYSQL_HOST_PORT}/airflow?user=root
           * Redis:     redis://127.0.0.1:{REDIS_HOST_PORT}/0
+          * Airflow 2 web server:    http://127.0.0.1:{WEBSERVER_HOST_PORT}
 
     [info]* How can I add my stuff in Breeze:[/]
 
diff --git a/scripts/ci/docker-compose/base-ports.yml b/scripts/ci/docker-compose/base-ports.yml
index a3cee13264a..8f8a9bf2bb9 100644
--- a/scripts/ci/docker-compose/base-ports.yml
+++ b/scripts/ci/docker-compose/base-ports.yml
@@ -19,5 +19,6 @@ services:
   airflow:
     ports:
       - "${SSH_PORT}:22"
+      - "${WEBSERVER_HOST_PORT}:8080"
       - "${API_SERVER_HOST_PORT}:9091"
       - "${FLOWER_HOST_PORT}:5555"