def test_execute(self, mock_firestore_hook):
     op = CloudFirestoreExportDatabaseOperator(
         task_id="test-task",
         body=EXPORT_DOCUMENT_BODY,
         gcp_conn_id="google_cloud_default",
         project_id=TEST_PROJECT_ID,
     )
     op.execute(mock.MagicMock())
     mock_firestore_hook.return_value.export_documents.assert_called_once_with(
         body=EXPORT_DOCUMENT_BODY,
         database_id="(default)",
         project_id=TEST_PROJECT_ID)
Exemple #2
0
if BUCKET_NAME is None:
    raise ValueError(
        "Bucket name is required. Please set GCP_FIRESTORE_ARCHIVE_URL env variable."
    )

with models.DAG(
        "example_google_firestore",
        default_args=dict(start_date=dates.days_ago(1)),
        schedule_interval=None,
        tags=["example"],
) as dag:
    # [START howto_operator_export_database_to_gcs]
    export_database_to_gcs = CloudFirestoreExportDatabaseOperator(
        task_id="export_database_to_gcs",
        project_id=FIRESTORE_PROJECT_ID,
        body={
            "outputUriPrefix": EXPORT_DESTINATION_URL,
            "collectionIds": [EXPORT_COLLECTION_ID]
        },
    )
    # [END howto_operator_export_database_to_gcs]

    create_dataset = BigQueryCreateEmptyDatasetOperator(
        task_id="create_dataset",
        dataset_id=DATASET_NAME,
        location=DATASET_LOCATION,
        project_id=GCP_PROJECT_ID,
    )

    delete_dataset = BigQueryDeleteDatasetOperator(task_id="delete_dataset",
                                                   dataset_id=DATASET_NAME,
                                                   project_id=GCP_PROJECT_ID,