airflow.providers.google.cloud.transfers.sftp_to_gcs

This module contains SFTP to Google Cloud Storage operator.

Module Contents

airflow.providers.google.cloud.transfers.sftp_to_gcs.WILDCARD = *[source]
class airflow.providers.google.cloud.transfers.sftp_to_gcs.SFTPToGCSOperator(*, source_path: str, destination_bucket: str, destination_path: Optional[str] = None, gcp_conn_id: str = 'google_cloud_default', sftp_conn_id: str = 'ssh_default', delegate_to: Optional[str] = None, mime_type: str = 'application/octet-stream', gzip: bool = False, move_object: bool = False, impersonation_chain: Optional[Union[str, Sequence[str]]] = None, **kwargs)[source]

Bases: airflow.models.BaseOperator

Transfer files to Google Cloud Storage from SFTP server.

See also

For more information on how to use this operator, take a look at the guide: Operator

Parameters
  • source_path (str) – The sftp remote path. This is the specified file path for downloading the single file or multiple files from the SFTP server. You can use only one wildcard within your path. The wildcard can appear inside the path or at the end of the path.

  • destination_bucket (str) – The bucket to upload to.

  • destination_path (str) – The destination name of the object in the destination Google Cloud Storage bucket. If destination_path is not provided file/files will be placed in the main bucket path. If a wildcard is supplied in the destination_path argument, this is the prefix that will be prepended to the final destination objects’ paths.

  • gcp_conn_id (str) – (Optional) The connection ID used to connect to Google Cloud.

  • sftp_conn_id (str) – The sftp connection id. The name or identifier for establishing a connection to the SFTP server.

  • delegate_to (str) – The account to impersonate using domain-wide delegation of authority, if any. For this to work, the service account making the request must have domain-wide delegation enabled.

  • mime_type (str) – The mime-type string

  • gzip (bool) – Allows for file to be compressed and uploaded as gzip

  • move_object (bool) – When move object is True, the object is moved instead of copied to the new location. This is the equivalent of a mv command as opposed to a cp command.

  • impersonation_chain (Union[str, Sequence[str]]) – Optional service account to impersonate using short-term credentials, or chained list of accounts required to get the access_token of the last account in the list, which will be impersonated in the request. If set as a string, the account must grant the originating account the Service Account Token Creator IAM role. If set as a sequence, the identities from the list must grant Service Account Token Creator IAM role to the directly preceding identity, with first account from the list granting this role to the originating account (templated).

template_fields = ['source_path', 'destination_path', 'destination_bucket', 'impersonation_chain'][source]
execute(self, context)[source]
_copy_single_object(self, gcs_hook: GCSHook, sftp_hook: SFTPHook, source_path: str, destination_object: str)[source]

Helper function to copy single object.

static _set_destination_path(path: Union[str, None])[source]
static _set_bucket_name(name: str)[source]

Was this entry helpful?