| .. Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| .. http://www.apache.org/licenses/LICENSE-2.0 |
| |
| .. Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| |
| |
| Google Drive to Google Cloud Storage Transfer Operator |
| ======================================================= |
| |
| Google has two services that store data. The `Google Cloud Storage <https://cloud.google.com/storage/>`__ is |
| used to store large data from various applications. The `Google Drive <https://www.google.com/drive/>`__ is |
| used to store daily use data, including documents and photos. Google Cloud Storage has strong integration |
| with Google Cloud services. Google Drive has built-in mechanisms to facilitate group work e.g. |
| document editor, file sharing mechanisms. |
| |
| |
| .. contents:: |
| :depth: 1 |
| :local: |
| |
| Prerequisite Tasks |
| ^^^^^^^^^^^^^^^^^^ |
| |
| .. include::/operators/_partials/prerequisite_tasks.rst |
| |
| .. _howto/operator:GoogleDriveToGCSOperator: |
| |
| Operator |
| ^^^^^^^^ |
| |
| Transfer files between Google Storage and Google Drive is performed with the |
| :class:`~airflow.providers.google.cloud.transfers.gdrive_to_gcs.GoogleDriveToGCSOperator` operator. |
| |
| |
| Copy single files |
| ----------------- |
| |
| The following Operator copies a single file from a shared Google Drive folder to a Google Cloud Storage Bucket. |
| |
| Note that you can transfer a file from the root folder of a shared drive by passing the id of the shared |
| drive to both the ``folder_id`` and ``drive_id`` parameters. |
| |
| .. exampleinclude:: /../../airflow/providers/google/cloud/example_dags/example_gdrive_to_gcs.py |
| :language: python |
| :dedent: 4 |
| :start-after: [START upload_gdrive_to_gcs] |
| :end-before: [END upload_gdrive_to_gcs] |
| |
| You can use :ref:`Jinja templating <concepts:jinja-templating>` with |
| :template-fields:`airflow.providers.google.cloud.transfers.gdrive_to_gcs.GoogleDriveToGCSOperator` |
| parameters which allows you to dynamically determine values. |
| |
| Reference |
| ^^^^^^^^^ |
| |
| For further information, look at: |
| |
| * `Google Drive API Documentation <https://developers.google.com/drive/api/v3/about-sdk>`__ |
| * `Google Cloud Storage Documentation <https://cloud.google.com/storage/>`__ |