airflow.providers.sftp.sensors.sftp

This module contains SFTP sensor.

Module Contents

Classes

SFTPSensor

Waits for a file or directory to be present on SFTP.

class airflow.providers.sftp.sensors.sftp.SFTPSensor(*, path, file_pattern='', newer_than=None, sftp_conn_id='sftp_default', python_callable=None, op_args=None, op_kwargs=None, deferrable=conf.getboolean('operators', 'default_deferrable', fallback=False), **kwargs)[source]

Bases: airflow.sensors.base.BaseSensorOperator

Waits for a file or directory to be present on SFTP.

Parameters
  • path (str) – Remote file or directory path

  • file_pattern (str) – The pattern that will be used to match the file (fnmatch format)

  • sftp_conn_id (str) – The connection to run the sensor against

  • newer_than (datetime.datetime | None) – DateTime for which the file or file path should be newer than, comparison is inclusive

  • deferrable (bool) – If waiting for completion, whether to defer the task until done, default is False.

template_fields: Sequence[str] = ('path', 'newer_than')[source]
poke(context)[source]

Override when deriving this class.

execute(context)[source]

Derive when creating an operator.

Context is the same dictionary used as when rendering jinja templates.

Refer to get_template_context for more context.

execute_complete(context, event=None)[source]

Execute callback when the trigger fires; returns immediately.

Relies on trigger to throw an exception, otherwise it assumes execution was successful.

Was this entry helpful?