airflow.providers.microsoft.azure.triggers.analysis_services

Classes

AzureAnalysisServicesRefreshTrigger

Poll an Azure Analysis Services model refresh until it reaches a terminal status.

Functions

validate_refresh_event(event)

Validate a trigger event and return its refresh ID.

validate_completed_refresh_event(event)

Validate a terminal trigger event and return the completed refresh ID.

Module Contents

airflow.providers.microsoft.azure.triggers.analysis_services.validate_refresh_event(event)[source]

Validate a trigger event and return its refresh ID.

airflow.providers.microsoft.azure.triggers.analysis_services.validate_completed_refresh_event(event)[source]

Validate a terminal trigger event and return the completed refresh ID.

class airflow.providers.microsoft.azure.triggers.analysis_services.AzureAnalysisServicesRefreshTrigger(*, conn_id, server_name, database, refresh_id=None, refresh_type='full', poke_interval=60, request_timeout=60)[source]

Bases: airflow.triggers.base.BaseTrigger

Poll an Azure Analysis Services model refresh until it reaches a terminal status.

When refresh_id is None the trigger starts a new refresh and yields its ID without polling; the caller defers again with that ID to wait for completion. Serializing the actual refresh ID is what makes the polling stage survive a triggerer restart.

Parameters:
  • conn_id (str) – The Azure Analysis Services connection ID.

  • server_name (str) – The Analysis Services server name.

  • database (str) – The model database name.

  • refresh_id (str | None) – The refresh operation ID to poll, or None to start a new refresh.

  • refresh_type (airflow.providers.microsoft.azure.hooks.analysis_services.RefreshType) – The refresh type used when starting a new refresh.

  • poke_interval (float) – Time in seconds between status requests.

  • request_timeout (float) – Timeout in seconds for each HTTP request.

conn_id[source]
server_name[source]
database[source]
refresh_id = None[source]
refresh_type = 'full'[source]
poke_interval = 60[source]
request_timeout = 60[source]
serialize()[source]

Serialize the trigger arguments and classpath.

async run()[source]

Start the refresh when needed, then delegate polling to the hook.

Was this entry helpful?