airflow.providers.vespa.hooks.vespa

Attributes

VALID_OPERATION_TYPES

Classes

VespaHook

Hook for interacting with a Vespa cluster via pyvespa.

Module Contents

airflow.providers.vespa.hooks.vespa.VALID_OPERATION_TYPES[source]
class airflow.providers.vespa.hooks.vespa.VespaHook(conn_id=default_conn_name, *, namespace=None, schema=None)[source]

Bases: airflow.providers.common.compat.sdk.BaseHook

Hook for interacting with a Vespa cluster via pyvespa.

Supports document feed, update, and delete operations through feed_async_iterable. Uses a custom vespa connection type.

Connection extras (bare keys canonical, extra__vespa__ prefix accepted for backward compatibility):

  • namespace – Vespa namespace (default: "default")

  • max_queue_size / max_workers / max_connections – feed tuning

  • vespa_cloud_secret_token – token auth

  • client_cert_path / client_key_path – mTLS auth

  • protocolhttp or https (default: http)

conn_name_attr = 'conn_id'[source]
default_conn_name = 'vespa_default'[source]
conn_type = 'vespa'[source]
hook_name = 'Vespa'[source]
conn_id = 'vespa_default'[source]
conn[source]
classmethod from_resolved_connection(*, host, port=None, schema=None, namespace=None, extra)[source]

Instantiate without querying Airflow’s metadata database.

Intended for trigger processes where synchronous DB access is prohibited. The caller must supply the already-resolved connection parameters.

classmethod get_connection_form_widgets()[source]

Return connection widgets to add to connection form.

classmethod get_ui_field_behaviour()[source]

Return custom field behaviour.

default_callback(response, doc_id)[source]

Collect non-success responses from Vespa feed calls.

feed_iterable(bodies, callback=None, operation_type='feed', **kwargs)[source]

Feed, update, or delete documents via pyvespa.

test_connection()[source]

Test connectivity to the Vespa endpoint using pyvespa’s own session.

Was this entry helpful?