-
Notifications
You must be signed in to change notification settings - Fork 16.3k
Make default execution server URL be relative to API Base URL #49747
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
The execution API server URL is now more flexible and configurable:
- Remove hardcoded default URL "http://localhost:8080/execution/"
- Add fallback mechanism to construct URL from base_url config
- Default is now `"{BASE_URL}/execution/"` where BASE_URL comes from `api.base_url` config
amoghrajesh
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
The execution API server URL is now more flexible and configurable:
- Remove hardcoded default URL "http://localhost:8080/execution/"
- Add fallback mechanism to construct URL from base_url config
- Default is now `"{BASE_URL}/execution/"` where BASE_URL comes from `api.base_url` config
(cherry picked from commit ae7b3c6)
…#49747) The execution API server URL is now more flexible and configurable: - Remove hardcoded default URL "http://localhost:8080/execution/" - Add fallback mechanism to construct URL from base_url config - Default is now `"{BASE_URL}/execution/"` where BASE_URL comes from `api.base_url` config
Follow-up of apache#49747 which broke some workflows including `breeze start-airflow`, requiring apache#49753. When base_url is a relative path (starts with '/'), default to using http://localhost:8080 as the base URL. This maintains backward compatibility with the previous default behavior while still allowing custom absolute URLs through either `base_url` or `execution_api_server_url` configuration. Fixes `httpx.UnsupportedProtocol` error (as seen in apache#49753) that occurred when base_url was a relative path without protocol.
Follow-up of apache#49747 which broke some workflows including `breeze start-airflow`, requiring apache#49753. When base_url is a relative path (starts with '/'), default to using http://localhost:8080 as the base URL. This maintains backward compatibility with the previous default behavior while still allowing custom absolute URLs through either `base_url` or `execution_api_server_url` configuration. Fixes `httpx.UnsupportedProtocol` error (as seen in apache#49753) that occurred when base_url was a relative path without protocol.
Follow-up of apache#49747 which broke some workflows including `breeze start-airflow`, requiring apache#49753. When base_url is a relative path (starts with '/'), default to using http://localhost:8080 as the base URL. This maintains backward compatibility with the previous default behavior while still allowing custom absolute URLs through either `base_url` or `execution_api_server_url` configuration. Fixes `httpx.UnsupportedProtocol` error (as seen in apache#49753) that occurred when base_url was a relative path without protocol.
Follow-up of apache#49747 which broke some workflows including `breeze start-airflow`, requiring apache#49753. When base_url is a relative path (starts with '/'), default to using http://localhost:8080 as the base URL. This maintains backward compatibility with the previous default behavior while still allowing custom absolute URLs through either `base_url` or `execution_api_server_url` configuration. Fixes `httpx.UnsupportedProtocol` error (as seen in apache#49753) that occurred when base_url was a relative path without protocol.
Follow-up of #49747 which broke some workflows including `breeze start-airflow`, requiring #49753. When base_url is a relative path (starts with '/'), default to using http://localhost:8080 as the base URL. This maintains backward compatibility with the previous default behavior while still allowing custom absolute URLs through either `base_url` or `execution_api_server_url` configuration. Fixes `httpx.UnsupportedProtocol` error (as seen in #49753) that occurred when base_url was a relative path without protocol.
Follow-up of #49747 which broke some workflows including `breeze start-airflow`, requiring #49753. When base_url is a relative path (starts with '/'), default to using http://localhost:8080 as the base URL. This maintains backward compatibility with the previous default behavior while still allowing custom absolute URLs through either `base_url` or `execution_api_server_url` configuration. Fixes `httpx.UnsupportedProtocol` error (as seen in #49753) that occurred when base_url was a relative path without protocol. (cherry picked from commit 3b9ae48)
…#49747) The execution API server URL is now more flexible and configurable: - Remove hardcoded default URL "http://localhost:8080/execution/" - Add fallback mechanism to construct URL from base_url config - Default is now `"{BASE_URL}/execution/"` where BASE_URL comes from `api.base_url` config
Follow-up of apache#49747 which broke some workflows including `breeze start-airflow`, requiring apache#49753. When base_url is a relative path (starts with '/'), default to using http://localhost:8080 as the base URL. This maintains backward compatibility with the previous default behavior while still allowing custom absolute URLs through either `base_url` or `execution_api_server_url` configuration. Fixes `httpx.UnsupportedProtocol` error (as seen in apache#49753) that occurred when base_url was a relative path without protocol.
should we expect new releases of the providers in a few days? for example the latest |
|
Yes new provider wave is coming - but if you want you can easily (now) build provider on your own from main and test it - or even install it via github URL: |
This journey from Airflow 2 to 3 has made me reluctant to be the first to "eat the crab" again. And I hate being proven right once more… after building and installing the latest Celery provider from main, I'm still getting bombarded with |
However, we greatly appreciate your efforts @zachliu -> yes, there are teething issues, and being an open-source project, it's almost a given that the first brave users who will start testing and using Airflow 3 will find things that we have not thoguht about and that's the only way we can actually get to know about those issues and fix them. There is no software without bugs, and no amount of "lab" tesitng is able to find all those - especially if you give your software for free and there is noone who will pay for that extra testing. So effectively this is the price you pay for using sotware that cost you I think - to be honest - it was great getting your initial feedback and issue reports and we will continue to diagnose and fix issues as they come. I think the power of Airlfow come from the power of the community that is both helpful and understands that there are some initial teething pains - and goes through those pains together with us. |
|
@potiuk Thank you for the encouragement, Professor—I was just venting. I’ll probably never stop being the first to eat the crab 😂 As for the matter at hand, the issue seems to stem from a subtle difference between |
Follow-up of apache/airflow#49747 which broke some workflows including `breeze start-airflow`, requiring apache/airflow#49753. When base_url is a relative path (starts with '/'), default to using http://localhost:8080 as the base URL. This maintains backward compatibility with the previous default behavior while still allowing custom absolute URLs through either `base_url` or `execution_api_server_url` configuration. Fixes `httpx.UnsupportedProtocol` error (as seen in apache/airflow#49753) that occurred when base_url was a relative path without protocol. (cherry picked from commit 3b9ae489a56cde7fe1cd663d7da88fabb831c664) GitOrigin-RevId: 3eeb2533a425dd25ffeebd5e71306f048a12f38c
Follow-up of apache/airflow#49747 which broke some workflows including `breeze start-airflow`, requiring apache/airflow#49753. When base_url is a relative path (starts with '/'), default to using http://localhost:8080 as the base URL. This maintains backward compatibility with the previous default behavior while still allowing custom absolute URLs through either `base_url` or `execution_api_server_url` configuration. Fixes `httpx.UnsupportedProtocol` error (as seen in apache/airflow#49753) that occurred when base_url was a relative path without protocol. GitOrigin-RevId: 3b9ae489a56cde7fe1cd663d7da88fabb831c664
The execution API server URL is now more flexible and configurable:
"{BASE_URL}/execution/"where BASE_URL comes fromapi.base_urlconfigNote: The code duplication here is intentional since I am touching different providers: Celery, Edge. So, keeping the logic in a central location has a big disadvantage, as that provider won't work until that Airflow version is released!
related: #49725
^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in a newsfragment file, named
{pr_number}.significant.rstor{issue_number}.significant.rst, in airflow-core/newsfragments.