airflow.providers.google.suite.transfers.local_to_drive

此文件包含 Google Drive 操作符。

LocalFilesystemToGoogleDriveOperator

将文件列表上传到 Google Drive 文件夹。

模块内容

class airflow.providers.google.suite.transfers.local_to_drive.LocalFilesystemToGoogleDriveOperator(local_paths, drive_folder, gcp_conn_id='google_cloud_default', delete=False, ignore_if_missing=False, chunk_size=100 * 1024 * 1024, resumable=False, impersonation_chain=None, folder_id='root', show_full_target_path=True, **kwargs)[source]

基类: airflow.models.BaseOperator

将文件列表上传到 Google Drive 文件夹。

此操作符将本地文件列表上传到 Google Drive 文件夹。上传后可选择删除本地文件。

另请参阅

有关如何使用此操作符的更多信息,请参阅指南: LocalFilesystemToGoogleDriveOperator

参数:
  • local_paths (collections.abc.Sequence[pathlib.Path] | collections.abc.Sequence[str]) – 本地文件路径的 Python 列表

  • drive_folder (pathlib.Path | str) – Drive 文件夹的路径,如果给定了 folder_id,则 drive_folder 是该文件夹的子路径。

  • gcp_conn_id (str) – GCP 的 Airflow 连接 ID。

  • delete (bool) – 上传后是否应删除本地文件?

  • ignore_if_missing (bool) – 如果为 True,即使某些文件无法上传也不会失败。

  • chunk_size (int) – 文件将按此字节数分块上传。仅当 resumable 设置为 True 时使用。如果要将文件作为单个块上传,则传入值 -1。请注意,Google App Engine 对请求大小有 5MB 的限制,因此您永远不应将分块大小设置为大于 5MB 或设置为 -1。

  • resumable (bool) – 如果这是可恢复上传,则为 True。False 表示在单个请求中上传。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务帐号,用于使用短期凭据模拟,或获取列表中最后一个帐号(将在请求中被模拟)访问令牌所需的帐号链列表。如果设置为字符串,则该帐号必须授予源帐号 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须向直接位于其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一个帐号向源帐号授予此角色。

  • folder_id (str) – Drive 文件夹中每个本地路径的基础/根文件夹 ID。

  • show_full_target_path (bool) – 如果为 true,则在日志中显示完整的可用文件路径。

返回:

上传后的远程文件 ID。

template_fields = ('local_paths', 'drive_folder')[source]
local_paths[source]
drive_folder[source]
gcp_conn_id = 'google_cloud_default'[source]
delete = False[source]
ignore_if_missing = False[source]
chunk_size = 104857600[source]
resumable = False[source]
impersonation_chain = None[source]
folder_id = 'root'[source]
show_full_target_path = True[source]
execute(context)[source]

创建操作符时派生此方法。

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

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

此条目有帮助吗?