diff --git a/Dockerfile.ci b/Dockerfile.ci index 268ef4bbab88f..fec3dd4ac47b7 100644 --- a/Dockerfile.ci +++ b/Dockerfile.ci @@ -1040,11 +1040,11 @@ function start_api_server_with_examples(){ echo echo "${COLOR_BLUE}Starting airflow api server${COLOR_RESET}" echo - airflow api-server --port 9091 --daemon + airflow api-server --port 8080 --daemon echo echo "${COLOR_BLUE}Waiting for api-server to start${COLOR_RESET}" echo - check_service_connection "Airflow api-server" "run_nc localhost 9091" 100 + check_service_connection "Airflow api-server" "run_nc localhost 8080" 100 EXIT_CODE=$? if [[ ${EXIT_CODE} != 0 ]]; then echo diff --git a/airflow/config_templates/config.yml b/airflow/config_templates/config.yml index 6a57fc709874a..46f11e34ab80e 100644 --- a/airflow/config_templates/config.yml +++ b/airflow/config_templates/config.yml @@ -534,7 +534,7 @@ core: version_added: 3.0.0 type: string example: ~ - default: "http://localhost:9091/execution/" + default: "http://localhost:8080/execution/" database: description: ~ options: @@ -1321,7 +1321,7 @@ api: version_added: ~ type: string example: ~ - default: "http://localhost:9091" + default: "http://localhost:8080" host: description: | The ip specified when starting the api server @@ -1335,7 +1335,7 @@ api: version_added: ~ type: string example: ~ - default: "9091" + default: "8080" workers: description: | Number of workers to run on the API server diff --git a/airflow/ui/CONTRIBUTING.md b/airflow/ui/CONTRIBUTING.md index 44e5a55570e27..73ff3ee00df46 100644 --- a/airflow/ui/CONTRIBUTING.md +++ b/airflow/ui/CONTRIBUTING.md @@ -28,7 +28,7 @@ Manually: - Have the `dev-mode` environment variable enabled - Run `pnpm install && pnpm dev` -- Note: Make sure to access the UI via the Airflow localhost port (9091 or 29091) and not the vite port (5173) +- Note: Make sure to access the UI via the Airflow localhost port (8080 or 28080) and not the vite port (5173) ## More diff --git a/airflow/ui/src/router.tsx b/airflow/ui/src/router.tsx index fe88d08fea577..b3d5ecbc15694 100644 --- a/airflow/ui/src/router.tsx +++ b/airflow/ui/src/router.tsx @@ -189,7 +189,7 @@ export const routerConfig = [ }, ]; -const baseUrl = document.querySelector("base")?.href ?? "http://localhost:9091/"; +const baseUrl = document.querySelector("base")?.href ?? "http://localhost:8080/"; const basename = new URL(baseUrl).pathname; export const router = createBrowserRouter(routerConfig, { basename }); diff --git a/airflow/utils/helpers.py b/airflow/utils/helpers.py index 6196ec7802810..86730198ee4ef 100644 --- a/airflow/utils/helpers.py +++ b/airflow/utils/helpers.py @@ -256,7 +256,7 @@ def build_airflow_dagrun_url(dag_id: str, run_id: str) -> str: Build airflow dagrun url using base_url and provided dag_id and run_id. For example: - http://localhost:9091/dags/hi/runs/manual__2025-02-23T18:27:39.051358+00:00_RZa1at4Q + http://localhost:8080/dags/hi/runs/manual__2025-02-23T18:27:39.051358+00:00_RZa1at4Q """ baseurl = conf.get("api", "base_url") return f"{baseurl}/dags/{dag_id}/runs/{run_id}" diff --git a/chart/values.schema.json b/chart/values.schema.json index bdbfc372a3733..edd019cfaf5c7 100644 --- a/chart/values.schema.json +++ b/chart/values.schema.json @@ -4962,7 +4962,7 @@ ], "examples": [ { - "port": 9091 + "port": 8080 } ] } @@ -5190,7 +5190,7 @@ "examples": [ { "name": "api-server", - "port": 9091, + "port": 8080, "targetPort": "api-server" }, { @@ -8186,7 +8186,7 @@ "apiServer": { "description": "API server port.", "type": "integer", - "default": 9091 + "default": 8080 }, "workerLogs": { "description": "Worker logs port.", diff --git a/chart/values.yaml b/chart/values.yaml index 13ac9891c6f3f..25d67fced692f 100644 --- a/chart/values.yaml +++ b/chart/values.yaml @@ -2541,7 +2541,7 @@ ports: statsdScrape: 9102 pgbouncer: 6543 pgbouncerScrape: 9127 - apiServer: 9091 + apiServer: 8080 # Define any ResourceQuotas for namespace quotas: {} diff --git a/clients/python/test_python_client.py b/clients/python/test_python_client.py index b3ab213bb93df..7b103210b748c 100644 --- a/clients/python/test_python_client.py +++ b/clients/python/test_python_client.py @@ -58,7 +58,7 @@ # Configure HTTP basic authorization: Basic configuration = airflow_client.client.Configuration( - host="http://localhost:9091/public", username="admin", password="admin" + host="http://localhost:8080/public", username="admin", password="admin" ) # Make sure in the [core] section, the `load_examples` config is set to True in your airflow.cfg diff --git a/contributing-docs/03_contributors_quick_start.rst b/contributing-docs/03_contributors_quick_start.rst index e6b42a282393c..7cab285316ff5 100644 --- a/contributing-docs/03_contributors_quick_start.rst +++ b/contributing-docs/03_contributors_quick_start.rst @@ -505,7 +505,7 @@ Using Breeze Ports are forwarded to the running docker containers for webserver and database * 12322 -> forwarded to Airflow ssh server -> airflow:22 - * 29091 -> forwarded to Airflow api server API -> airflow:9091 + * 28080 -> forwarded to Airflow api server API -> airflow:8080 * 25555 -> forwarded to Flower dashboard -> airflow:5555 * 25433 -> forwarded to Postgres database -> postgres:5432 * 23306 -> forwarded to MySQL database -> mysql:3306 @@ -514,7 +514,7 @@ Using Breeze Direct links to those services that you can use from the host: * ssh connection for remote debugging: ssh -p 12322 airflow@127.0.0.1 (password: airflow) - * API server: http://127.0.0.1:29091 + * API server: http://127.0.0.1:28080 * Flower: http://127.0.0.1:25555 * Postgres: jdbc:postgresql://127.0.0.1:25433/airflow?user=postgres&password=airflow * Mysql: jdbc:mysql://127.0.0.1:23306/airflow?user=root @@ -575,12 +575,12 @@ Using Breeze :select-layout tiled -2. Now you can access airflow web interface on your local machine at |http://localhost:29091| with user name ``admin`` +2. Now you can access airflow web interface on your local machine at |http://localhost:28080| with user name ``admin`` and password ``admin`` - .. |http://localhost:29091| raw:: html + .. |http://localhost:28080| raw:: html - http://localhost:29091 + http://localhost:28080 .. raw:: html diff --git a/dev/breeze/doc/03_developer_tasks.rst b/dev/breeze/doc/03_developer_tasks.rst index 8641744982be7..10e0e0f777596 100644 --- a/dev/breeze/doc/03_developer_tasks.rst +++ b/dev/breeze/doc/03_developer_tasks.rst @@ -112,7 +112,7 @@ When you run Airflow Breeze, the following ports are automatically forwarded: .. code-block:: * 12322 -> forwarded to Airflow ssh server -> airflow:22 - * 29091 -> forwarded to Airflow FastAPI API -> airflow:9091 + * 28080 -> forwarded to Airflow API server or webserver -> airflow:8080 * 25555 -> forwarded to Flower dashboard -> airflow:5555 * 25433 -> forwarded to Postgres database -> postgres:5432 * 23306 -> forwarded to MySQL database -> mysql:3306 @@ -124,7 +124,7 @@ You can connect to these ports/databases using: .. code-block:: * ssh connection for remote debugging: ssh -p 12322 airflow@127.0.0.1 pw: airflow - * FastAPI API: http://127.0.0.1:29091 + * API server or webserver: http://127.0.0.1:28080 * Flower: http://127.0.0.1:25555 * Postgres: jdbc:postgresql://127.0.0.1:25433/airflow?user=postgres&password=airflow * Mysql: jdbc:mysql://127.0.0.1:23306/airflow?user=root @@ -152,8 +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`` +* ``WEB_HOST_PORT`` - API server for Airflow 3, or webserver port for Airflow 2 when --use-airflow-version is used * ``POSTGRES_HOST_PORT`` * ``MYSQL_HOST_PORT`` * ``MSSQL_HOST_PORT`` diff --git a/dev/breeze/src/airflow_breeze/global_constants.py b/dev/breeze/src/airflow_breeze/global_constants.py index 5ea0888f9e908..9c64c567c413a 100644 --- a/dev/breeze/src/airflow_breeze/global_constants.py +++ b/dev/breeze/src/airflow_breeze/global_constants.py @@ -334,8 +334,7 @@ def get_default_platform_machine() -> str: REDIS_HOST_PORT = "26379" SSH_PORT = "12322" VITE_DEV_PORT = "5173" -WEBSERVER_HOST_PORT = "28080" -API_SERVER_HOST_PORT = "29091" +WEB_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" diff --git a/dev/breeze/src/airflow_breeze/params/shell_params.py b/dev/breeze/src/airflow_breeze/params/shell_params.py index 4646f2b2bf802..38e97804c5f4d 100644 --- a/dev/breeze/src/airflow_breeze/params/shell_params.py +++ b/dev/breeze/src/airflow_breeze/params/shell_params.py @@ -35,7 +35,6 @@ ALLOWED_POSTGRES_VERSIONS, ALLOWED_PYTHON_MAJOR_MINOR_VERSIONS, APACHE_AIRFLOW_GITHUB_REPOSITORY, - API_SERVER_HOST_PORT, CELERY_BROKER_URLS_MAP, CELERY_EXECUTOR, DEFAULT_CELERY_BROKER, @@ -60,7 +59,7 @@ TESTABLE_CORE_INTEGRATIONS, TESTABLE_PROVIDERS_INTEGRATIONS, USE_AIRFLOW_MOUNT_SOURCES, - WEBSERVER_HOST_PORT, + WEB_HOST_PORT, GithubEvents, GroupOfTests, get_airflow_version, @@ -507,7 +506,7 @@ def env_variables_for_docker_commands(self) -> dict[str, str]: _set_var(_env, "AIRFLOW_VERSION", self.airflow_version) _set_var(_env, "AIRFLOW__CELERY__BROKER_URL", self.airflow_celery_broker_url) _set_var(_env, "AIRFLOW__CORE__EXECUTOR", self.executor) - _set_var(_env, "AIRFLOW__API__BASE_URL", f"http://localhost:{API_SERVER_HOST_PORT}") + _set_var(_env, "AIRFLOW__API__BASE_URL", f"http://localhost:{WEB_HOST_PORT}") if self.executor == EDGE_EXECUTOR: _set_var( _env, "AIRFLOW__CORE__EXECUTOR", "airflow.providers.edge.executors.edge_executor.EdgeExecutor" @@ -524,11 +523,7 @@ def env_variables_for_docker_commands(self) -> dict[str, str]: "attempt={{ try_number|default(ti.try_number) }}.log", ) - # Dev Airflow 3 runs API on FastAPI transitional - port = 9091 - if self.use_airflow_version and self.use_airflow_version.startswith("2."): - # Airflow 2.10 runs it in the webserver atm - port = 8080 + port = 8080 _set_var(_env, "AIRFLOW__EDGE__API_URL", f"http://localhost:{port}/edge_worker/v1/rpcapi") _set_var(_env, "ANSWER", get_forced_answer() or "") _set_var(_env, "BACKEND", self.backend) @@ -617,8 +612,7 @@ def env_variables_for_docker_commands(self) -> dict[str, str]: _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, "WEB_HOST_PORT", None, WEB_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) self._generate_env_for_docker_compose_file_if_needed(_env) diff --git a/dev/breeze/src/airflow_breeze/utils/cdxgen.py b/dev/breeze/src/airflow_breeze/utils/cdxgen.py index 5431daaa0fb90..dce222d7dd956 100644 --- a/dev/breeze/src/airflow_breeze/utils/cdxgen.py +++ b/dev/breeze/src/airflow_breeze/utils/cdxgen.py @@ -69,7 +69,7 @@ def start_cdxgen_server(application_root_path: Path, run_in_parallel: bool, para fork_cdxgen_server(application_root_path) else: for i in range(parallelism): - fork_cdxgen_server(application_root_path, port=9091 + i) + fork_cdxgen_server(application_root_path, port=8080 + i) time.sleep(1) get_console().print("[info]Waiting for cdxgen server to start") time.sleep(3) @@ -115,7 +115,7 @@ def fork_cdxgen_server(application_root_path, port=9090): def get_port_mapping(x): # if we do not sleep here, then we could skip mapping for some process if it is handle time.sleep(1) - return multiprocessing.current_process().name, 9091 + x + return multiprocessing.current_process().name, 8080 + x def get_cdxgen_port_mapping(parallelism: int, pool: Pool) -> dict[str, int]: diff --git a/dev/breeze/src/airflow_breeze/utils/visuals.py b/dev/breeze/src/airflow_breeze/utils/visuals.py index 6f56cc3dadde0..fd8e8357f8acb 100644 --- a/dev/breeze/src/airflow_breeze/utils/visuals.py +++ b/dev/breeze/src/airflow_breeze/utils/visuals.py @@ -21,13 +21,12 @@ from __future__ import annotations from airflow_breeze.global_constants import ( - API_SERVER_HOST_PORT, FLOWER_HOST_PORT, MYSQL_HOST_PORT, POSTGRES_HOST_PORT, REDIS_HOST_PORT, SSH_PORT, - WEBSERVER_HOST_PORT, + WEB_HOST_PORT, ) from airflow_breeze.utils.path_utils import AIRFLOW_SOURCES_ROOT @@ -82,22 +81,20 @@ Ports are forwarded to the running docker containers for webserver and database * {SSH_PORT} -> forwarded to Airflow ssh server -> airflow:22 - * {API_SERVER_HOST_PORT} -> forwarded to Airflow api server API -> airflow:9091 + * {WEB_HOST_PORT} -> forwarded to Airflow api server (Airflow 3) or webserver (Airflow 2) -> airflow:8080 * {FLOWER_HOST_PORT} -> forwarded to Flower dashboard -> airflow:5555 * {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: * ssh connection for remote debugging: ssh -p {SSH_PORT} airflow@127.0.0.1 (password: airflow) - * API server: http://127.0.0.1:{API_SERVER_HOST_PORT} + * API server or webserver: http://127.0.0.1:{WEB_HOST_PORT} * Flower: http://127.0.0.1:{FLOWER_HOST_PORT} * 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/docker_tests/test_docker_compose_quick_start.py b/docker_tests/test_docker_compose_quick_start.py index 846065243c35f..c91dbb36dba6d 100644 --- a/docker_tests/test_docker_compose_quick_start.py +++ b/docker_tests/test_docker_compose_quick_start.py @@ -40,7 +40,7 @@ DAG_RUN_ID = "test_dag_run_id" -def api_request(method: str, path: str, base_url: str = "http://localhost:9091/public", **kwargs) -> dict: +def api_request(method: str, path: str, base_url: str = "http://localhost:8080/public", **kwargs) -> dict: response = requests.request( method=method, url=f"{base_url}/{path}", diff --git a/docs/apache-airflow/administration-and-deployment/web-stack.rst b/docs/apache-airflow/administration-and-deployment/web-stack.rst index 41cb83beaaec8..9a16906ab6acf 100644 --- a/docs/apache-airflow/administration-and-deployment/web-stack.rst +++ b/docs/apache-airflow/administration-and-deployment/web-stack.rst @@ -22,7 +22,7 @@ Web Stack Sometimes you want to deploy the backend and frontend behind a variable url path prefix. To do so, you can configure the url :ref:`config:api__base_url` -for instance, set it to ``http://localhost:29091/d12345``. All the APIs routes will +for instance, set it to ``http://localhost:28080/d12345``. All the APIs routes will now be available through that additional ``d12345`` prefix. Without rebuilding the frontend, XHR requests and static file queries should be directed to the prefixed url and served successfully. diff --git a/docs/apache-airflow/howto/docker-compose/docker-compose.yaml b/docs/apache-airflow/howto/docker-compose/docker-compose.yaml index 8ca2dfc06d90a..ec3e4f862020b 100644 --- a/docs/apache-airflow/howto/docker-compose/docker-compose.yaml +++ b/docs/apache-airflow/howto/docker-compose/docker-compose.yaml @@ -62,7 +62,7 @@ x-airflow-common: AIRFLOW__CORE__LOAD_EXAMPLES: 'true' AIRFLOW__API__AUTH_BACKENDS: >- airflow.providers.fab.auth_manager.api.auth.backend.basic_auth,airflow.api.auth.backend.session - AIRFLOW__WORKERS__EXECUTION_API_SERVER_URL: 'http://airflow-apiserver:9091/execution/' + AIRFLOW__WORKERS__EXECUTION_API_SERVER_URL: 'http://airflow-apiserver:8080/execution/' # yamllint disable rule:line-length # Use simple http server on scheduler for health checks # See https://airflow.apache.org/docs/apache-airflow/stable/administration-and-deployment/logging-monitoring/check-health.html#scheduler-health-check-server @@ -121,9 +121,9 @@ services: <<: *airflow-common command: api-server ports: - - "9091:9091" + - "8080:8080" healthcheck: - test: ["CMD", "curl", "--fail", "http://localhost:9091/public/version"] + test: ["CMD", "curl", "--fail", "http://localhost:8080/public/version"] interval: 30s timeout: 10s retries: 5 diff --git a/helm_tests/airflow_core/test_api_server.py b/helm_tests/airflow_core/test_api_server.py index 08fba28004660..a24eb682efa88 100644 --- a/helm_tests/airflow_core/test_api_server.py +++ b/helm_tests/airflow_core/test_api_server.py @@ -595,7 +595,7 @@ def test_default_service(self): "release": "release-name", } assert jmespath.search("spec.type", docs[0]) == "ClusterIP" - assert {"name": "api-server", "port": 9091} in jmespath.search("spec.ports", docs[0]) + assert {"name": "api-server", "port": 8080} in jmespath.search("spec.ports", docs[0]) def test_overrides(self): docs = render_chart( @@ -631,7 +631,7 @@ def test_overrides(self): "port": "{{ .Values.ports.apiServer }}", } ], - [{"name": "release-name", "protocol": "UDP", "port": 9091}], + [{"name": "release-name", "protocol": "UDP", "port": 8080}], ), ([{"name": "only_sidecar", "port": "{{ int 9000 }}"}], [{"name": "only_sidecar", "port": 9000}]), ( @@ -640,7 +640,7 @@ def test_overrides(self): {"name": "sidecar", "port": 80, "targetPort": "sidecar"}, ], [ - {"name": "api-server", "port": 9091}, + {"name": "api-server", "port": 8080}, {"name": "sidecar", "port": 80, "targetPort": "sidecar"}, ], ), @@ -714,7 +714,7 @@ def test_defaults(self): assert jmespath.search("spec.ingress[0].from", docs[0]) == [ {"namespaceSelector": {"matchLabels": {"release": "myrelease"}}} ] - assert jmespath.search("spec.ingress[0].ports", docs[0]) == [{"port": 9091}] + assert jmespath.search("spec.ingress[0].ports", docs[0]) == [{"port": 8080}] @pytest.mark.parametrize( "ports, expected_ports", @@ -726,7 +726,7 @@ def test_defaults(self): {"port": 80}, ], [ - {"port": 9091}, + {"port": 8080}, {"port": 80}, ], ), diff --git a/kubernetes_tests/test_base.py b/kubernetes_tests/test_base.py index 34c0871ff978c..f41f6968fe34a 100644 --- a/kubernetes_tests/test_base.py +++ b/kubernetes_tests/test_base.py @@ -33,7 +33,7 @@ from urllib3.exceptions import MaxRetryError from urllib3.util.retry import Retry -CLUSTER_FORWARDED_PORT = os.environ.get("CLUSTER_FORWARDED_PORT") or "9091" +CLUSTER_FORWARDED_PORT = os.environ.get("CLUSTER_FORWARDED_PORT") or "8080" KUBERNETES_HOST_PORT = (os.environ.get("CLUSTER_HOST") or "localhost") + ":" + CLUSTER_FORWARDED_PORT EXECUTOR = os.environ.get("EXECUTOR") diff --git a/providers/amazon/tests/unit/amazon/aws/auth_manager/router/test_login.py b/providers/amazon/tests/unit/amazon/aws/auth_manager/router/test_login.py index 62731654b6b96..350692d6d41df 100644 --- a/providers/amazon/tests/unit/amazon/aws/auth_manager/router/test_login.py +++ b/providers/amazon/tests/unit/amazon/aws/auth_manager/router/test_login.py @@ -117,7 +117,7 @@ def test_login_callback_successful(self): response = client.post("/auth/login_callback", follow_redirects=False) assert response.status_code == 303 assert "location" in response.headers - assert response.headers["location"].startswith("http://localhost:9091/?token=") + assert response.headers["location"].startswith("http://localhost:8080/?token=") def test_login_callback_unsuccessful(self): with conf_vars( diff --git a/providers/amazon/tests/unit/amazon/aws/auth_manager/test_aws_auth_manager.py b/providers/amazon/tests/unit/amazon/aws/auth_manager/test_aws_auth_manager.py index a69fe496e1f2d..44be563aa7635 100644 --- a/providers/amazon/tests/unit/amazon/aws/auth_manager/test_aws_auth_manager.py +++ b/providers/amazon/tests/unit/amazon/aws/auth_manager/test_aws_auth_manager.py @@ -639,7 +639,7 @@ def test_filter_permitted_dag_ids(self, methods, user, auth_manager, test_user): def test_get_url_login(self, auth_manager): result = auth_manager.get_url_login() - assert result == "http://localhost:9091/auth/login" + assert result == "http://localhost:8080/auth/login" def test_get_cli_commands_return_cli_commands(self, auth_manager): assert len(auth_manager.get_cli_commands()) > 0 diff --git a/providers/fab/tests/unit/fab/auth_manager/test_fab_auth_manager.py b/providers/fab/tests/unit/fab/auth_manager/test_fab_auth_manager.py index 21b88866bb58b..526fc7441d3b6 100644 --- a/providers/fab/tests/unit/fab/auth_manager/test_fab_auth_manager.py +++ b/providers/fab/tests/unit/fab/auth_manager/test_fab_auth_manager.py @@ -576,7 +576,7 @@ class TestSecurityManager: def test_get_url_login(self, auth_manager): result = auth_manager.get_url_login() - assert result == "http://localhost:9091/auth/login" + assert result == "http://localhost:8080/auth/login" @pytest.mark.db_test def test_get_url_logout_when_auth_view_not_defined(self, auth_manager_with_appbuilder): diff --git a/scripts/ci/docker-compose/base-ports.yml b/scripts/ci/docker-compose/base-ports.yml index 8f8a9bf2bb9ea..d05771106ea0e 100644 --- a/scripts/ci/docker-compose/base-ports.yml +++ b/scripts/ci/docker-compose/base-ports.yml @@ -19,6 +19,5 @@ services: airflow: ports: - "${SSH_PORT}:22" - - "${WEBSERVER_HOST_PORT}:8080" - - "${API_SERVER_HOST_PORT}:9091" + - "${WEB_HOST_PORT}:8080" - "${FLOWER_HOST_PORT}:5555" diff --git a/scripts/ci/kubernetes/nodeport.yaml b/scripts/ci/kubernetes/nodeport.yaml index 79555c188f62e..0c3124f8801c1 100644 --- a/scripts/ci/kubernetes/nodeport.yaml +++ b/scripts/ci/kubernetes/nodeport.yaml @@ -26,6 +26,6 @@ spec: release: airflow tier: airflow ports: - - port: 9091 - targetPort: 9091 + - port: 8080 + targetPort: 8080 nodePort: 30007 diff --git a/scripts/docker/entrypoint_ci.sh b/scripts/docker/entrypoint_ci.sh index 815a12281a82c..c38117ab32bdc 100755 --- a/scripts/docker/entrypoint_ci.sh +++ b/scripts/docker/entrypoint_ci.sh @@ -365,11 +365,11 @@ function start_api_server_with_examples(){ echo echo "${COLOR_BLUE}Starting airflow api server${COLOR_RESET}" echo - airflow api-server --port 9091 --daemon + airflow api-server --port 8080 --daemon echo echo "${COLOR_BLUE}Waiting for api-server to start${COLOR_RESET}" echo - check_service_connection "Airflow api-server" "run_nc localhost 9091" 100 + check_service_connection "Airflow api-server" "run_nc localhost 8080" 100 EXIT_CODE=$? if [[ ${EXIT_CODE} != 0 ]]; then echo diff --git a/task_sdk/pyproject.toml b/task_sdk/pyproject.toml index 80dc6232f354f..1bd749f118944 100644 --- a/task_sdk/pyproject.toml +++ b/task_sdk/pyproject.toml @@ -141,5 +141,5 @@ use-subclass-enum=true # enum, not union of Literals use-union-operator=true # 3.9+annotations, not `Union[]` custom-formatters = ['dev.datamodel_code_formatter',] -url = 'http://0.0.0.0:9091/execution/openapi.json' +url = 'http://0.0.0.0:8080/execution/openapi.json' output = 'src/airflow/sdk/api/datamodels/_generated.py' diff --git a/task_sdk/src/airflow/sdk/api/datamodels/_generated.py b/task_sdk/src/airflow/sdk/api/datamodels/_generated.py index 8745361c624c8..763d44ec13c0a 100644 --- a/task_sdk/src/airflow/sdk/api/datamodels/_generated.py +++ b/task_sdk/src/airflow/sdk/api/datamodels/_generated.py @@ -1,5 +1,5 @@ # generated by datamodel-codegen: -# filename: http://0.0.0.0:9091/execution/openapi.json +# filename: http://0.0.0.0:8080/execution/openapi.json # version: 0.28.2 # Licensed to the Apache Software Foundation (ASF) under one diff --git a/tests/api_fastapi/core_api/routes/public/test_login.py b/tests/api_fastapi/core_api/routes/public/test_login.py index 0d774a4035066..dc00d673b3082 100644 --- a/tests/api_fastapi/core_api/routes/public/test_login.py +++ b/tests/api_fastapi/core_api/routes/public/test_login.py @@ -39,8 +39,8 @@ class TestGetLogin(TestLoginEndpoint): [ {}, {"next": None}, - {"next": "http://localhost:29091"}, - {"next": "http://localhost:29091", "other_param": "something_else"}, + {"next": "http://localhost:28080"}, + {"next": "http://localhost:28080", "other_param": "something_else"}, ], ) def test_should_respond_308(self, test_client, params): diff --git a/tests/cli/commands/local_commands/test_api_server_command.py b/tests/cli/commands/local_commands/test_api_server_command.py index f15a0b3b51e34..022505b710f0e 100644 --- a/tests/cli/commands/local_commands/test_api_server_command.py +++ b/tests/cli/commands/local_commands/test_api_server_command.py @@ -143,7 +143,7 @@ def test_args_to_uvicorn(self, ssl_cert_and_key): mock_run.assert_called_with( "airflow.api_fastapi.main:app", host="0.0.0.0", - port=9091, + port=8080, workers=4, timeout_keep_alive=120, timeout_graceful_shutdown=120, diff --git a/tests/utils/test_helpers.py b/tests/utils/test_helpers.py index 1784dd64afb8e..0839dab841a56 100644 --- a/tests/utils/test_helpers.py +++ b/tests/utils/test_helpers.py @@ -162,7 +162,7 @@ def test_merge_dicts_recursive_right_only(self): assert merged == {"a": 1, "r": {"b": 0, "c": 3}} def test_build_airflow_dagrun_url(self): - expected_url = "http://localhost:9091/dags/somedag/runs/abc123" + expected_url = "http://localhost:8080/dags/somedag/runs/abc123" assert build_airflow_dagrun_url(dag_id="somedag", run_id="abc123") == expected_url @pytest.mark.parametrize(