Example #1
0
    def get_connection_from_secrets(cls, conn_id: str) -> 'Connection':
        """
        Get connection by conn_id.

        :param conn_id: connection id
        :return: connection
        """
        for secrets_backend in ensure_secrets_loaded():
            conn = secrets_backend.get_connection(conn_id=conn_id)
            if conn:
                return conn
        raise AirflowNotFoundException(f"The conn_id `{conn_id}` isn't defined")
Example #2
0
    def get_connections_from_secrets(cls, conn_id: str) -> List['Connection']:
        """
        Get all connections as an iterable.

        :param conn_id: connection id
        :return: array of connections
        """
        for secrets_backend in ensure_secrets_loaded():
            conn_list = secrets_backend.get_connections(conn_id=conn_id)
            if conn_list:
                return list(conn_list)
        raise AirflowNotFoundException("The conn_id `{0}` isn't defined".format(conn_id))
Example #3
0
    def get_connection_from_secrets(cls, conn_id: str) -> 'Connection':
        """
        Get connection by conn_id.

        :param conn_id: connection id
        :return: connection
        """
        for secrets_backend in ensure_secrets_loaded():
            try:
                conn = secrets_backend.get_connection(conn_id=conn_id)
                if conn:
                    return conn
            except Exception:
                log.exception(
                    'Unable to retrieve connection from secrets backend (%s). '
                    'Checking subsequent secrets backend.',
                    type(secrets_backend).__name__,
                )

        raise AirflowNotFoundException(f"The conn_id `{conn_id}` isn't defined")