airflow.providers.google.cloud.transfers.gcs_to_sftp

此模块包含 Google Cloud Storage 到 SFTP 操作符。

模块内容

GCSToSFTPOperator

将文件从 Google Cloud Storage 存储桶传输到 SFTP 服务器。

属性

WILDCARD

airflow.providers.google.cloud.transfers.gcs_to_sftp.WILDCARD = '*'[源代码]
class airflow.providers.google.cloud.transfers.gcs_to_sftp.GCSToSFTPOperator(*, source_bucket, source_object, destination_path, keep_directory_structure=True, move_object=False, gcp_conn_id='google_cloud_default', sftp_conn_id='ssh_default', impersonation_chain=None, **kwargs)[源代码]

基类:airflow.models.BaseOperator

将文件从 Google Cloud Storage 存储桶传输到 SFTP 服务器。

with models.DAG(
    "example_gcs_to_sftp",
    start_date=datetime(2020, 6, 19),
    schedule=None,
) as dag:
    # downloads file to /tmp/sftp/folder/subfolder/file.txt
    copy_file_from_gcs_to_sftp = GCSToSFTPOperator(
        task_id="file-copy-gsc-to-sftp",
        source_bucket="test-gcs-sftp-bucket-name",
        source_object="folder/subfolder/file.txt",
        destination_path="/tmp/sftp",
    )

    # moves file to /tmp/data.txt
    move_file_from_gcs_to_sftp = GCSToSFTPOperator(
        task_id="file-move-gsc-to-sftp",
        source_bucket="test-gcs-sftp-bucket-name",
        source_object="folder/subfolder/data.txt",
        destination_path="/tmp",
        move_object=True,
        keep_directory_structure=False,
    )

另请参阅

有关如何使用此操作符的更多信息,请查看以下指南:操作符

参数
  • source_bucket (str) – 对象所在的源 Google Cloud Storage 存储桶。(已模板化)

  • source_object (str) – 要在 Google Cloud Storage 存储桶中复制的对象的源名称。(已模板化)您只能在存储桶中使用一个通配符来表示对象(文件名)。通配符可以出现在对象名称内部或对象名称末尾。不支持在存储桶名称后附加通配符。

  • destination_path (str) – SFTP 远程路径。这是指定用于上传到 SFTP 服务器的目录路径。

  • keep_directory_structure (bool) – (可选)设置为 False 时,存储桶上文件的路径会在 destination_path 中传入的路径内重新创建。

  • move_object (bool) – 当 move_object 为 True 时,对象将被移动而不是复制到新位置。这相当于 mv 命令,而不是 cp 命令。

  • gcp_conn_id (str) – (可选)用于连接到 Google Cloud 的连接 ID。

  • sftp_conn_id (str) – SFTP 连接 ID。用于建立与 SFTP 服务器连接的名称或标识符。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务帐户,用于使用短期凭据进行模拟,或获取列表中最后一个帐户的 access_token 所需的链式帐户列表,该帐户将在请求中被模拟。如果设置为字符串,则该帐户必须授予发起帐户服务帐户令牌创建者 IAM 角色。如果设置为序列,则列表中的身份必须将服务帐户令牌创建者 IAM 角色授予紧随其后的身份,列表中的第一个帐户将此角色授予发起帐户(已模板化)。

template_fields: collections.abc.Sequence[str] = ('source_bucket', 'source_object', 'destination_path', 'impersonation_chain')[源代码]
ui_color = '#f0eee4'[源代码]
execute(context)[源代码]

在创建操作符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

此条目有帮助吗?