dstandish commented on code in PR #40897:
URL: https://github.com/apache/airflow/pull/40897#discussion_r1685103512
##########
airflow/api_internal/internal_api_call.py:
##########
@@ -68,21 +73,31 @@ def get_internal_api_endpoint():
InternalApiConfig._init_values()
return InternalApiConfig._internal_api_endpoint
+ @staticmethod
+ def get_auth() -> AuthBase | None:
+ return InternalApiConfig._internal_api_auth
+
@staticmethod
def _init_values():
use_internal_api = conf.getboolean("core",
"database_access_isolation", fallback=False)
if use_internal_api and not _ENABLE_AIP_44:
raise RuntimeError("The AIP_44 is not enabled so you cannot use
it.")
- internal_api_endpoint = ""
if use_internal_api:
- internal_api_url = conf.get("core", "internal_api_url")
- internal_api_endpoint = internal_api_url +
"/internal_api/v1/rpcapi"
- if not internal_api_endpoint.startswith("http://"):
- raise AirflowConfigException("[core]internal_api_url must
start with http://")
+ internal_api_endpoint = conf.get("core", "internal_api_url")
+ if internal_api_endpoint.find("/", 8) == -1:
+ internal_api_endpoint = internal_api_endpoint +
"/internal_api/v1/rpcapi"
+ if not internal_api_endpoint.startswith("http://") and not
internal_api_endpoint.startswith(
+ "https://"
+ ):
+ raise AirflowConfigException("[core]internal_api_url must
start with http:// or https://")
+ InternalApiConfig._internal_api_endpoint = internal_api_endpoint
+ internal_api_user = conf.get("core", "internal_api_user")
+ internal_api_password = conf.get("core", "internal_api_password")
Review Comment:
depends how official you want to get, given that this is going to be
experimental. but typically airflow config params are added to `config.yml`.
And i think `internal_api` wants to be its own section. lastly, i would
suggest considering rebranding it as `rpc_server`. That's how i called it in
the helm chart, with the intention (though not the certainty) that we would
call it that, and the reason is because there's a sort of not well known
"internal API" already that exists just for the webserver... and ultimately i
think we need in 3.0 a proper internal / external API distinction for the
webserver (so we can freely build things that support webserver functionality
without worrying about backcompat). so that results in a bit of a collision
here.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]