2.0.0b38

AsyncConnector

Package: flyte.connectors

This is the base class for all async connectors, and it defines the interface that all connectors must implement. The connector service is responsible for invoking connectors. The executor will communicate with the connector service to create tasks, get the status of tasks, and delete tasks.

All the connectors should be registered in the ConnectorRegistry. Connector Service will look up the connector based on the task type and version.

Methods

Method Description
create() Return a resource meta that can be used to get the status of the task.
delete() Delete the task.
get() Return the status of the task, and return the outputs in some cases.
get_logs() Return the metrics for the task.
get_metrics() Return the metrics for the task.

create()

def create(
    task_template: flyteidl2.core.tasks_pb2.TaskTemplate,
    output_prefix: str,
    inputs: typing.Optional[typing.Dict[str, typing.Any]],
    task_execution_metadata: typing.Optional[flyteidl2.connector.connector_pb2.TaskExecutionMetadata],
    kwargs,
) -> flyte.connectors._connector.ResourceMeta

Return a resource meta that can be used to get the status of the task.

Parameter Type Description
task_template flyteidl2.core.tasks_pb2.TaskTemplate
output_prefix str
inputs typing.Optional[typing.Dict[str, typing.Any]]
task_execution_metadata typing.Optional[flyteidl2.connector.connector_pb2.TaskExecutionMetadata]
kwargs **kwargs

delete()

def delete(
    resource_meta: flyte.connectors._connector.ResourceMeta,
    kwargs,
)

Delete the task. This call should be idempotent. It should raise an error if fails to delete the task.

Parameter Type Description
resource_meta flyte.connectors._connector.ResourceMeta
kwargs **kwargs

get()

def get(
    resource_meta: flyte.connectors._connector.ResourceMeta,
    kwargs,
) -> flyte.connectors._connector.Resource

Return the status of the task, and return the outputs in some cases. For example, bigquery job can’t write the structured dataset to the output location, so it returns the output literals to the propeller, and the propeller will write the structured dataset to the blob store.

Parameter Type Description
resource_meta flyte.connectors._connector.ResourceMeta
kwargs **kwargs

get_logs()

def get_logs(
    resource_meta: flyte.connectors._connector.ResourceMeta,
    kwargs,
) -> flyteidl2.connector.connector_pb2.GetTaskLogsResponse

Return the metrics for the task.

Parameter Type Description
resource_meta flyte.connectors._connector.ResourceMeta
kwargs **kwargs

get_metrics()

def get_metrics(
    resource_meta: flyte.connectors._connector.ResourceMeta,
    kwargs,
) -> flyteidl2.connector.connector_pb2.GetTaskMetricsResponse

Return the metrics for the task.

Parameter Type Description
resource_meta flyte.connectors._connector.ResourceMeta
kwargs **kwargs