airflow_indexima.connection

Define a decorator connection function profile.

Implementation can be used tp customized a connection like retreive credentials from other backeng like aws ssm.

ConnectionDecorator = Callable[[Connection], Connection]

apply_hive_extra_setting

apply_hive_extra_setting(connection:airflow.models.Connection, auth:Union[str, NoneType]=None, kerberos_service_name:Union[str, NoneType]=None, timeout_seconds:Union[int, NoneType]=None, socket_keepalive:Union[bool, NoneType]=None) -> airflow.models.Connection
Apply extra settings on hive connection.

Parameters:

connection (Connection): airflow connection
auth (Optional[str]): optional authentication mode
kerberos_service_name (Optional[str]): optional kerberos service name
timeout_seconds (Optional[int]): optional define the socket timeout in second
socket_keepalive (Optional[bool]): optional enable TCP keepalive.

Returns

(Connection): configured airflow Connection instance

extract_hive_extra_setting

extract_hive_extra_setting(connection:airflow.models.Connection) -> Tuple[Union[str, NoneType], Union[str, NoneType], Union[int, NoneType], Union[bool, NoneType]]
Extract extra settings.

Parameters:

connection (Connection): airflow connection

Returns

(Tuple[Optional[str], Optional[str], Optional[int], Optional[bool]]): a tuple (auth, kerberos_service_name, timeout_seconds, socket_keepalive)