diff --git a/airflow-core/src/airflow/utils/helpers.py b/airflow-core/src/airflow/utils/helpers.py index 74b7dacd33de7..ee6faa543a409 100644 --- a/airflow-core/src/airflow/utils/helpers.py +++ b/airflow-core/src/airflow/utils/helpers.py @@ -204,7 +204,7 @@ def build_airflow_dagrun_url(dag_id: str, run_id: str) -> str: http://localhost:8080/dags/hi/runs/manual__2025-02-23T18:27:39.051358+00:00_RZa1at4Q """ baseurl = conf.get("api", "base_url", fallback="/") - return urljoin(baseurl, f"dags/{dag_id}/runs/{run_id}") + return urljoin(baseurl.rstrip("/") + "/", f"dags/{dag_id}/runs/{run_id}") # The 'template' argument is typed as Any because the jinja2.Template is too