google-cloud-storage_transfer-v1 0.8.0 → 1.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/AUTHENTICATION.md +72 -99
- data/README.md +31 -21
- data/lib/google/cloud/storage_transfer/v1/storage_transfer_service/client.rb +147 -52
- data/lib/google/cloud/storage_transfer/v1/storage_transfer_service/operations.rb +93 -31
- data/lib/google/cloud/storage_transfer/v1/storage_transfer_service/rest/client.rb +128 -47
- data/lib/google/cloud/storage_transfer/v1/storage_transfer_service/rest/operations.rb +107 -52
- data/lib/google/cloud/storage_transfer/v1/storage_transfer_service/rest/service_stub.rb +148 -87
- data/lib/google/cloud/storage_transfer/v1/version.rb +1 -1
- data/lib/google/storagetransfer/v1/transfer_pb.rb +3 -26
- data/lib/google/storagetransfer/v1/transfer_types_pb.rb +6 -28
- data/proto_docs/google/api/client.rb +231 -19
- data/proto_docs/google/api/resource.rb +7 -2
- data/proto_docs/google/longrunning/operations.rb +41 -14
- data/proto_docs/google/protobuf/any.rb +2 -1
- data/proto_docs/google/storagetransfer/v1/transfer.rb +25 -10
- data/proto_docs/google/storagetransfer/v1/transfer_types.rb +216 -68
- data/proto_docs/google/type/date.rb +10 -7
- data/proto_docs/google/type/timeofday.rb +10 -6
- metadata +8 -129
|
@@ -76,6 +76,13 @@ module Google
|
|
|
76
76
|
# the `updated` property of Cloud Storage objects, the `LastModified` field
|
|
77
77
|
# of S3 objects, and the `Last-Modified` header of Azure blobs.
|
|
78
78
|
#
|
|
79
|
+
# For S3 objects, the `LastModified` value is the time the object begins
|
|
80
|
+
# uploading. If the object meets your "last modification time" criteria,
|
|
81
|
+
# but has not finished uploading, the object is not transferred. See
|
|
82
|
+
# [Transfer from Amazon S3 to Cloud
|
|
83
|
+
# Storage](https://cloud.google.com/storage-transfer/docs/create-transfers/agentless/s3#transfer_options)
|
|
84
|
+
# for more information.
|
|
85
|
+
#
|
|
79
86
|
# Transfers with a {::Google::Cloud::StorageTransfer::V1::PosixFilesystem PosixFilesystem}
|
|
80
87
|
# source or destination don't support `ObjectConditions`.
|
|
81
88
|
# @!attribute [rw] min_time_elapsed_since_last_modification
|
|
@@ -206,6 +213,21 @@ module Google
|
|
|
206
213
|
#
|
|
207
214
|
# The root path value must meet
|
|
208
215
|
# [Object Name Requirements](/storage/docs/naming#objectnames).
|
|
216
|
+
# @!attribute [rw] managed_folder_transfer_enabled
|
|
217
|
+
# @return [::Boolean]
|
|
218
|
+
# Preview. Enables the transfer of managed folders between Cloud Storage
|
|
219
|
+
# buckets. Set this option on the gcs_data_source.
|
|
220
|
+
#
|
|
221
|
+
# If set to true:
|
|
222
|
+
#
|
|
223
|
+
# - Managed folders in the source bucket are transferred to the
|
|
224
|
+
# destination bucket.
|
|
225
|
+
# - Managed folders in the destination bucket are overwritten. Other
|
|
226
|
+
# OVERWRITE options are not supported.
|
|
227
|
+
#
|
|
228
|
+
# See
|
|
229
|
+
# [Transfer Cloud Storage managed
|
|
230
|
+
# folders](/storage-transfer/docs/managed-folders).
|
|
209
231
|
class GcsData
|
|
210
232
|
include ::Google::Protobuf::MessageExts
|
|
211
233
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
@@ -245,27 +267,45 @@ module Google
|
|
|
245
267
|
# the provided role using the
|
|
246
268
|
# {::Google::Cloud::StorageTransfer::V1::GoogleServiceAccount GoogleServiceAccount} for
|
|
247
269
|
# this project.
|
|
270
|
+
# @!attribute [rw] cloudfront_domain
|
|
271
|
+
# @return [::String]
|
|
272
|
+
# Optional. The CloudFront distribution domain name pointing to this bucket,
|
|
273
|
+
# to use when fetching.
|
|
274
|
+
#
|
|
275
|
+
# See
|
|
276
|
+
# [Transfer from S3 via
|
|
277
|
+
# CloudFront](https://cloud.google.com/storage-transfer/docs/s3-cloudfront)
|
|
278
|
+
# for more information.
|
|
279
|
+
#
|
|
280
|
+
# Format: `https://{id}.cloudfront.net` or any valid custom domain. Must
|
|
281
|
+
# begin with `https://`.
|
|
248
282
|
# @!attribute [rw] credentials_secret
|
|
249
283
|
# @return [::String]
|
|
250
284
|
# Optional. The Resource name of a secret in Secret Manager.
|
|
251
285
|
#
|
|
252
|
-
#
|
|
253
|
-
#
|
|
254
|
-
#
|
|
255
|
-
#
|
|
286
|
+
# AWS credentials must be stored in Secret Manager in JSON format:
|
|
287
|
+
#
|
|
288
|
+
# {
|
|
289
|
+
# "access_key_id": "ACCESS_KEY_ID",
|
|
290
|
+
# "secret_access_key": "SECRET_ACCESS_KEY"
|
|
291
|
+
# }
|
|
292
|
+
#
|
|
256
293
|
# {::Google::Cloud::StorageTransfer::V1::GoogleServiceAccount GoogleServiceAccount} must
|
|
257
294
|
# be granted `roles/secretmanager.secretAccessor` for the resource.
|
|
258
295
|
#
|
|
259
|
-
# See [Configure access to a source:
|
|
260
|
-
# (https://cloud.google.com/storage-transfer/docs/source-
|
|
296
|
+
# See [Configure access to a source: Amazon S3]
|
|
297
|
+
# (https://cloud.google.com/storage-transfer/docs/source-amazon-s3#secret_manager)
|
|
261
298
|
# for more information.
|
|
262
299
|
#
|
|
263
|
-
# If `credentials_secret` is specified, do not specify
|
|
264
|
-
#
|
|
265
|
-
#
|
|
266
|
-
# [preview](https://cloud.google.com/terms/service-terms#1).
|
|
300
|
+
# If `credentials_secret` is specified, do not specify
|
|
301
|
+
# {::Google::Cloud::StorageTransfer::V1::AwsS3Data#role_arn role_arn} or
|
|
302
|
+
# {::Google::Cloud::StorageTransfer::V1::AwsS3Data#aws_access_key aws_access_key}.
|
|
267
303
|
#
|
|
268
304
|
# Format: `projects/{project_number}/secrets/{secret_name}`
|
|
305
|
+
# @!attribute [rw] managed_private_network
|
|
306
|
+
# @return [::Boolean]
|
|
307
|
+
# Egress bytes over a Google-managed private network.
|
|
308
|
+
# This network is shared between other users of Storage Transfer Service.
|
|
269
309
|
class AwsS3Data
|
|
270
310
|
include ::Google::Protobuf::MessageExts
|
|
271
311
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
@@ -303,9 +343,11 @@ module Google
|
|
|
303
343
|
# Optional. The Resource name of a secret in Secret Manager.
|
|
304
344
|
#
|
|
305
345
|
# The Azure SAS token must be stored in Secret Manager in JSON format:
|
|
306
|
-
#
|
|
307
|
-
#
|
|
308
|
-
#
|
|
346
|
+
#
|
|
347
|
+
# {
|
|
348
|
+
# "sas_token" : "SAS_TOKEN"
|
|
349
|
+
# }
|
|
350
|
+
#
|
|
309
351
|
# {::Google::Cloud::StorageTransfer::V1::GoogleServiceAccount GoogleServiceAccount} must
|
|
310
352
|
# be granted `roles/secretmanager.secretAccessor` for the resource.
|
|
311
353
|
#
|
|
@@ -316,60 +358,89 @@ module Google
|
|
|
316
358
|
# If `credentials_secret` is specified, do not specify
|
|
317
359
|
# {::Google::Cloud::StorageTransfer::V1::AzureBlobStorageData#azure_credentials azure_credentials}.
|
|
318
360
|
#
|
|
319
|
-
# This feature is in
|
|
320
|
-
# [preview](https://cloud.google.com/terms/service-terms#1).
|
|
321
|
-
#
|
|
322
361
|
# Format: `projects/{project_number}/secrets/{secret_name}`
|
|
362
|
+
# @!attribute [rw] federated_identity_config
|
|
363
|
+
# @return [::Google::Cloud::StorageTransfer::V1::AzureBlobStorageData::FederatedIdentityConfig]
|
|
364
|
+
# Optional. Federated identity config of a user registered Azure application.
|
|
365
|
+
#
|
|
366
|
+
# If `federated_identity_config` is specified, do not specify
|
|
367
|
+
# {::Google::Cloud::StorageTransfer::V1::AzureBlobStorageData#azure_credentials azure_credentials}
|
|
368
|
+
# or
|
|
369
|
+
# {::Google::Cloud::StorageTransfer::V1::AzureBlobStorageData#credentials_secret credentials_secret}.
|
|
323
370
|
class AzureBlobStorageData
|
|
324
371
|
include ::Google::Protobuf::MessageExts
|
|
325
372
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
373
|
+
|
|
374
|
+
# The identity of an Azure application through which Storage Transfer Service
|
|
375
|
+
# can authenticate requests using Azure workload identity federation.
|
|
376
|
+
#
|
|
377
|
+
# Storage Transfer Service can issue requests to Azure Storage through
|
|
378
|
+
# registered Azure applications, eliminating the need to pass credentials to
|
|
379
|
+
# Storage Transfer Service directly.
|
|
380
|
+
#
|
|
381
|
+
# To configure federated identity, see
|
|
382
|
+
# [Configure access to Microsoft Azure
|
|
383
|
+
# Storage](https://cloud.google.com/storage-transfer/docs/source-microsoft-azure#option_3_authenticate_using_federated_identity).
|
|
384
|
+
# @!attribute [rw] client_id
|
|
385
|
+
# @return [::String]
|
|
386
|
+
# Required. The client (application) ID of the application with federated
|
|
387
|
+
# credentials.
|
|
388
|
+
# @!attribute [rw] tenant_id
|
|
389
|
+
# @return [::String]
|
|
390
|
+
# Required. The tenant (directory) ID of the application with federated
|
|
391
|
+
# credentials.
|
|
392
|
+
class FederatedIdentityConfig
|
|
393
|
+
include ::Google::Protobuf::MessageExts
|
|
394
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
395
|
+
end
|
|
326
396
|
end
|
|
327
397
|
|
|
328
|
-
# An HttpData resource specifies a list of objects on the web to be
|
|
329
|
-
# over HTTP. The information of the objects to be transferred is
|
|
330
|
-
# a file referenced by a URL. The first line in the file must be
|
|
331
|
-
#
|
|
332
|
-
#
|
|
333
|
-
#
|
|
398
|
+
# An HttpData resource specifies a list of objects on the web to be
|
|
399
|
+
# transferred over HTTP. The information of the objects to be transferred is
|
|
400
|
+
# contained in a file referenced by a URL. The first line in the file must be
|
|
401
|
+
# `"TsvHttpData-1.0"`, which specifies the format of the file. Subsequent
|
|
402
|
+
# lines specify the information of the list of objects, one object per list
|
|
403
|
+
# entry. Each entry has the following tab-delimited fields:
|
|
334
404
|
#
|
|
335
|
-
#
|
|
405
|
+
# * **HTTP URL** — The location of the object.
|
|
336
406
|
#
|
|
337
|
-
#
|
|
407
|
+
# * **Length** — The size of the object in bytes.
|
|
338
408
|
#
|
|
339
|
-
#
|
|
409
|
+
# * **MD5** — The base64-encoded MD5 hash of the object.
|
|
340
410
|
#
|
|
341
|
-
#
|
|
342
|
-
#
|
|
343
|
-
#
|
|
411
|
+
# For an example of a valid TSV file, see
|
|
412
|
+
# [Transferring data from
|
|
413
|
+
# URLs](https://cloud.google.com/storage-transfer/docs/create-url-list).
|
|
344
414
|
#
|
|
345
|
-
#
|
|
415
|
+
# When transferring data based on a URL list, keep the following in mind:
|
|
346
416
|
#
|
|
347
417
|
# * When an object located at `http(s)://hostname:port/<URL-path>` is
|
|
348
|
-
#
|
|
418
|
+
# transferred to a data sink, the name of the object at the data sink is
|
|
349
419
|
# `<hostname>/<URL-path>`.
|
|
350
420
|
#
|
|
351
421
|
# * If the specified size of an object does not match the actual size of the
|
|
352
|
-
#
|
|
422
|
+
# object fetched, the object is not transferred.
|
|
353
423
|
#
|
|
354
424
|
# * If the specified MD5 does not match the MD5 computed from the transferred
|
|
355
|
-
#
|
|
425
|
+
# bytes, the object transfer fails.
|
|
356
426
|
#
|
|
357
427
|
# * Ensure that each URL you specify is publicly accessible. For
|
|
358
|
-
#
|
|
359
|
-
#
|
|
360
|
-
#
|
|
428
|
+
# example, in Cloud Storage you can
|
|
429
|
+
# [share an object publicly]
|
|
430
|
+
# (/storage/docs/cloud-console#_sharingdata) and get a link to it.
|
|
361
431
|
#
|
|
362
432
|
# * Storage Transfer Service obeys `robots.txt` rules and requires the source
|
|
363
|
-
#
|
|
364
|
-
#
|
|
433
|
+
# HTTP server to support `Range` requests and to return a `Content-Length`
|
|
434
|
+
# header in each response.
|
|
365
435
|
#
|
|
366
436
|
# * {::Google::Cloud::StorageTransfer::V1::ObjectConditions ObjectConditions} have no
|
|
367
437
|
# effect when filtering objects to transfer.
|
|
368
438
|
# @!attribute [rw] list_url
|
|
369
439
|
# @return [::String]
|
|
370
440
|
# Required. The URL that points to the file that stores the object list
|
|
371
|
-
# entries. This file must allow public access.
|
|
372
|
-
# HTTP
|
|
441
|
+
# entries. This file must allow public access. The URL is either an
|
|
442
|
+
# HTTP/HTTPS address (e.g. `https://example.com/urllist.tsv`) or a Cloud
|
|
443
|
+
# Storage path (e.g. `gs://my-bucket/urllist.tsv`).
|
|
373
444
|
class HttpData
|
|
374
445
|
include ::Google::Protobuf::MessageExts
|
|
375
446
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
@@ -384,6 +455,18 @@ module Google
|
|
|
384
455
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
385
456
|
end
|
|
386
457
|
|
|
458
|
+
# An HdfsData resource specifies a path within an HDFS entity (e.g. a cluster).
|
|
459
|
+
# All cluster-specific settings, such as namenodes and ports, are configured on
|
|
460
|
+
# the transfer agents servicing requests, so HdfsData only contains the root
|
|
461
|
+
# path to the data in our transfer.
|
|
462
|
+
# @!attribute [rw] path
|
|
463
|
+
# @return [::String]
|
|
464
|
+
# Root path to transfer files.
|
|
465
|
+
class HdfsData
|
|
466
|
+
include ::Google::Protobuf::MessageExts
|
|
467
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
468
|
+
end
|
|
469
|
+
|
|
387
470
|
# An AwsS3CompatibleData resource.
|
|
388
471
|
# @!attribute [rw] bucket_name
|
|
389
472
|
# @return [::String]
|
|
@@ -487,7 +570,7 @@ module Google
|
|
|
487
570
|
end
|
|
488
571
|
end
|
|
489
572
|
|
|
490
|
-
# Represents an
|
|
573
|
+
# Represents an agent pool.
|
|
491
574
|
# @!attribute [rw] name
|
|
492
575
|
# @return [::String]
|
|
493
576
|
# Required. Specifies a unique string that identifies the agent pool.
|
|
@@ -522,8 +605,8 @@ module Google
|
|
|
522
605
|
# Default value. This value is unused.
|
|
523
606
|
STATE_UNSPECIFIED = 0
|
|
524
607
|
|
|
525
|
-
# This is an initialization state. During this stage,
|
|
526
|
-
#
|
|
608
|
+
# This is an initialization state. During this stage, resources are
|
|
609
|
+
# allocated for the AgentPool.
|
|
527
610
|
CREATING = 1
|
|
528
611
|
|
|
529
612
|
# Determines that the AgentPool is created for use. At this state, Agents
|
|
@@ -540,7 +623,7 @@ module Google
|
|
|
540
623
|
# @!attribute [rw] overwrite_objects_already_existing_in_sink
|
|
541
624
|
# @return [::Boolean]
|
|
542
625
|
# When to overwrite objects that already exist in the sink. The default is
|
|
543
|
-
# that only objects that are different from the source are
|
|
626
|
+
# that only objects that are different from the source are overwritten. If
|
|
544
627
|
# true, all objects in the sink whose name matches an object in the source
|
|
545
628
|
# are overwritten with the source object.
|
|
546
629
|
# @!attribute [rw] delete_objects_unique_in_sink
|
|
@@ -594,27 +677,48 @@ module Google
|
|
|
594
677
|
# @!attribute [rw] gcs_data_sink
|
|
595
678
|
# @return [::Google::Cloud::StorageTransfer::V1::GcsData]
|
|
596
679
|
# A Cloud Storage data sink.
|
|
680
|
+
#
|
|
681
|
+
# Note: The following fields are mutually exclusive: `gcs_data_sink`, `posix_data_sink`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
597
682
|
# @!attribute [rw] posix_data_sink
|
|
598
683
|
# @return [::Google::Cloud::StorageTransfer::V1::PosixFilesystem]
|
|
599
684
|
# A POSIX Filesystem data sink.
|
|
685
|
+
#
|
|
686
|
+
# Note: The following fields are mutually exclusive: `posix_data_sink`, `gcs_data_sink`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
600
687
|
# @!attribute [rw] gcs_data_source
|
|
601
688
|
# @return [::Google::Cloud::StorageTransfer::V1::GcsData]
|
|
602
689
|
# A Cloud Storage data source.
|
|
690
|
+
#
|
|
691
|
+
# Note: The following fields are mutually exclusive: `gcs_data_source`, `aws_s3_data_source`, `http_data_source`, `posix_data_source`, `azure_blob_storage_data_source`, `aws_s3_compatible_data_source`, `hdfs_data_source`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
603
692
|
# @!attribute [rw] aws_s3_data_source
|
|
604
693
|
# @return [::Google::Cloud::StorageTransfer::V1::AwsS3Data]
|
|
605
694
|
# An AWS S3 data source.
|
|
695
|
+
#
|
|
696
|
+
# Note: The following fields are mutually exclusive: `aws_s3_data_source`, `gcs_data_source`, `http_data_source`, `posix_data_source`, `azure_blob_storage_data_source`, `aws_s3_compatible_data_source`, `hdfs_data_source`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
606
697
|
# @!attribute [rw] http_data_source
|
|
607
698
|
# @return [::Google::Cloud::StorageTransfer::V1::HttpData]
|
|
608
699
|
# An HTTP URL data source.
|
|
700
|
+
#
|
|
701
|
+
# Note: The following fields are mutually exclusive: `http_data_source`, `gcs_data_source`, `aws_s3_data_source`, `posix_data_source`, `azure_blob_storage_data_source`, `aws_s3_compatible_data_source`, `hdfs_data_source`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
609
702
|
# @!attribute [rw] posix_data_source
|
|
610
703
|
# @return [::Google::Cloud::StorageTransfer::V1::PosixFilesystem]
|
|
611
704
|
# A POSIX Filesystem data source.
|
|
705
|
+
#
|
|
706
|
+
# Note: The following fields are mutually exclusive: `posix_data_source`, `gcs_data_source`, `aws_s3_data_source`, `http_data_source`, `azure_blob_storage_data_source`, `aws_s3_compatible_data_source`, `hdfs_data_source`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
612
707
|
# @!attribute [rw] azure_blob_storage_data_source
|
|
613
708
|
# @return [::Google::Cloud::StorageTransfer::V1::AzureBlobStorageData]
|
|
614
709
|
# An Azure Blob Storage data source.
|
|
710
|
+
#
|
|
711
|
+
# Note: The following fields are mutually exclusive: `azure_blob_storage_data_source`, `gcs_data_source`, `aws_s3_data_source`, `http_data_source`, `posix_data_source`, `aws_s3_compatible_data_source`, `hdfs_data_source`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
615
712
|
# @!attribute [rw] aws_s3_compatible_data_source
|
|
616
713
|
# @return [::Google::Cloud::StorageTransfer::V1::AwsS3CompatibleData]
|
|
617
714
|
# An AWS S3 compatible data source.
|
|
715
|
+
#
|
|
716
|
+
# Note: The following fields are mutually exclusive: `aws_s3_compatible_data_source`, `gcs_data_source`, `aws_s3_data_source`, `http_data_source`, `posix_data_source`, `azure_blob_storage_data_source`, `hdfs_data_source`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
717
|
+
# @!attribute [rw] hdfs_data_source
|
|
718
|
+
# @return [::Google::Cloud::StorageTransfer::V1::HdfsData]
|
|
719
|
+
# An HDFS cluster data source.
|
|
720
|
+
#
|
|
721
|
+
# Note: The following fields are mutually exclusive: `hdfs_data_source`, `gcs_data_source`, `aws_s3_data_source`, `http_data_source`, `posix_data_source`, `azure_blob_storage_data_source`, `aws_s3_compatible_data_source`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
618
722
|
# @!attribute [rw] gcs_intermediate_data_location
|
|
619
723
|
# @return [::Google::Cloud::StorageTransfer::V1::GcsData]
|
|
620
724
|
# For transfers between file systems, specifies a Cloud Storage bucket
|
|
@@ -653,6 +757,32 @@ module Google
|
|
|
653
757
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
654
758
|
end
|
|
655
759
|
|
|
760
|
+
# Specifies the configuration for a cross-bucket replication job. Cross-bucket
|
|
761
|
+
# replication copies new or updated objects from a source Cloud Storage bucket
|
|
762
|
+
# to a destination Cloud Storage bucket. Existing objects in the source bucket
|
|
763
|
+
# are not copied by a new cross-bucket replication job.
|
|
764
|
+
# @!attribute [rw] gcs_data_source
|
|
765
|
+
# @return [::Google::Cloud::StorageTransfer::V1::GcsData]
|
|
766
|
+
# The Cloud Storage bucket from which to replicate objects.
|
|
767
|
+
# @!attribute [rw] gcs_data_sink
|
|
768
|
+
# @return [::Google::Cloud::StorageTransfer::V1::GcsData]
|
|
769
|
+
# The Cloud Storage bucket to which to replicate objects.
|
|
770
|
+
# @!attribute [rw] object_conditions
|
|
771
|
+
# @return [::Google::Cloud::StorageTransfer::V1::ObjectConditions]
|
|
772
|
+
# Object conditions that determine which objects are transferred. For
|
|
773
|
+
# replication jobs, only `include_prefixes` and `exclude_prefixes` are
|
|
774
|
+
# supported.
|
|
775
|
+
# @!attribute [rw] transfer_options
|
|
776
|
+
# @return [::Google::Cloud::StorageTransfer::V1::TransferOptions]
|
|
777
|
+
# Specifies the metadata options to be applied during replication.
|
|
778
|
+
# Delete options are not supported. If a delete option is specified, the
|
|
779
|
+
# request fails with an {::Google::Rpc::Code::INVALID_ARGUMENT INVALID_ARGUMENT}
|
|
780
|
+
# error.
|
|
781
|
+
class ReplicationSpec
|
|
782
|
+
include ::Google::Protobuf::MessageExts
|
|
783
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
784
|
+
end
|
|
785
|
+
|
|
656
786
|
# Specifies the metadata options for running a transfer.
|
|
657
787
|
# @!attribute [rw] symlink
|
|
658
788
|
# @return [::Google::Cloud::StorageTransfer::V1::MetadataOptions::Symlink]
|
|
@@ -699,9 +829,10 @@ module Google
|
|
|
699
829
|
# @!attribute [rw] time_created
|
|
700
830
|
# @return [::Google::Cloud::StorageTransfer::V1::MetadataOptions::TimeCreated]
|
|
701
831
|
# Specifies how each object's `timeCreated` metadata is preserved for
|
|
702
|
-
# transfers
|
|
703
|
-
# default behavior is the same as
|
|
832
|
+
# transfers. If unspecified, the default behavior is the same as
|
|
704
833
|
# {::Google::Cloud::StorageTransfer::V1::MetadataOptions::TimeCreated::TIME_CREATED_SKIP TIME_CREATED_SKIP}.
|
|
834
|
+
# This behavior is supported for transfers to Cloud Storage buckets from
|
|
835
|
+
# Cloud Storage, Amazon S3, S3-compatible storage, and Azure sources.
|
|
705
836
|
class MetadataOptions
|
|
706
837
|
include ::Google::Protobuf::MessageExts
|
|
707
838
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
@@ -832,10 +963,10 @@ module Google
|
|
|
832
963
|
# Do not preserve the `timeCreated` metadata from the source object.
|
|
833
964
|
TIME_CREATED_SKIP = 1
|
|
834
965
|
|
|
835
|
-
# Preserves the source object's `timeCreated` metadata in
|
|
836
|
-
# field in the destination object. Note that any value
|
|
837
|
-
# source object's `customTime` field will not be propagated
|
|
838
|
-
# destination object.
|
|
966
|
+
# Preserves the source object's `timeCreated` or `lastModified` metadata in
|
|
967
|
+
# the `customTime` field in the destination object. Note that any value
|
|
968
|
+
# stored in the source object's `customTime` field will not be propagated
|
|
969
|
+
# to the destination object.
|
|
839
970
|
TIME_CREATED_PRESERVE_AS_CUSTOM_TIME = 2
|
|
840
971
|
end
|
|
841
972
|
end
|
|
@@ -907,7 +1038,7 @@ module Google
|
|
|
907
1038
|
# {::Google::Cloud::StorageTransfer::V1::Schedule#schedule_end_date schedule_end_date},
|
|
908
1039
|
# `end_time_of_day` specifies the end date and time for starting new transfer
|
|
909
1040
|
# operations. This field must be greater than or equal to the timestamp
|
|
910
|
-
# corresponding to the
|
|
1041
|
+
# corresponding to the combination of
|
|
911
1042
|
# {::Google::Cloud::StorageTransfer::V1::Schedule#schedule_start_date schedule_start_date}
|
|
912
1043
|
# and
|
|
913
1044
|
# {::Google::Cloud::StorageTransfer::V1::Schedule#start_time_of_day start_time_of_day},
|
|
@@ -988,13 +1119,32 @@ module Google
|
|
|
988
1119
|
# @!attribute [rw] project_id
|
|
989
1120
|
# @return [::String]
|
|
990
1121
|
# The ID of the Google Cloud project that owns the job.
|
|
1122
|
+
# @!attribute [rw] service_account
|
|
1123
|
+
# @return [::String]
|
|
1124
|
+
# Optional. The user-managed service account to which to delegate service
|
|
1125
|
+
# agent permissions. You can grant Cloud Storage bucket permissions to this
|
|
1126
|
+
# service account instead of to the Transfer Service service agent.
|
|
1127
|
+
#
|
|
1128
|
+
# Format is
|
|
1129
|
+
# `projects/-/serviceAccounts/ACCOUNT_EMAIL_OR_UNIQUEID`
|
|
1130
|
+
#
|
|
1131
|
+
# Either the service account email
|
|
1132
|
+
# (`SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com`) or the unique
|
|
1133
|
+
# ID (`123456789012345678901`) are accepted in the string. The `-`
|
|
1134
|
+
# wildcard character is required; replacing it with a project ID is invalid.
|
|
1135
|
+
#
|
|
1136
|
+
# See
|
|
1137
|
+
# https://cloud.google.com//storage-transfer/docs/delegate-service-agent-permissions
|
|
1138
|
+
# for required permissions.
|
|
991
1139
|
# @!attribute [rw] transfer_spec
|
|
992
1140
|
# @return [::Google::Cloud::StorageTransfer::V1::TransferSpec]
|
|
993
1141
|
# Transfer specification.
|
|
1142
|
+
# @!attribute [rw] replication_spec
|
|
1143
|
+
# @return [::Google::Cloud::StorageTransfer::V1::ReplicationSpec]
|
|
1144
|
+
# Replication specification.
|
|
994
1145
|
# @!attribute [rw] notification_config
|
|
995
1146
|
# @return [::Google::Cloud::StorageTransfer::V1::NotificationConfig]
|
|
996
|
-
# Notification configuration.
|
|
997
|
-
# PosixFilesystem.
|
|
1147
|
+
# Notification configuration.
|
|
998
1148
|
# @!attribute [rw] logging_config
|
|
999
1149
|
# @return [::Google::Cloud::StorageTransfer::V1::LoggingConfig]
|
|
1000
1150
|
# Logging configuration.
|
|
@@ -1255,32 +1405,25 @@ module Google
|
|
|
1255
1405
|
|
|
1256
1406
|
# Specifies the logging behavior for transfer operations.
|
|
1257
1407
|
#
|
|
1258
|
-
#
|
|
1408
|
+
# Logs can be sent to Cloud Logging for all transfer types. See
|
|
1259
1409
|
# [Read transfer
|
|
1260
1410
|
# logs](https://cloud.google.com/storage-transfer/docs/read-transfer-logs) for
|
|
1261
1411
|
# details.
|
|
1262
|
-
#
|
|
1263
|
-
# For transfers to or from a POSIX file system, logs are stored in the
|
|
1264
|
-
# Cloud Storage bucket that is the source or sink of the transfer.
|
|
1265
|
-
# See [Managing Transfer for on-premises jobs]
|
|
1266
|
-
# (https://cloud.google.com/storage-transfer/docs/managing-on-prem-jobs#viewing-logs)
|
|
1267
|
-
# for details.
|
|
1268
1412
|
# @!attribute [rw] log_actions
|
|
1269
1413
|
# @return [::Array<::Google::Cloud::StorageTransfer::V1::LoggingConfig::LoggableAction>]
|
|
1270
1414
|
# Specifies the actions to be logged. If empty, no logs are generated.
|
|
1271
|
-
# Not supported for transfers with PosixFilesystem data sources; use
|
|
1272
|
-
# {::Google::Cloud::StorageTransfer::V1::LoggingConfig#enable_onprem_gcs_transfer_logs enable_onprem_gcs_transfer_logs}
|
|
1273
|
-
# instead.
|
|
1274
1415
|
# @!attribute [rw] log_action_states
|
|
1275
1416
|
# @return [::Array<::Google::Cloud::StorageTransfer::V1::LoggingConfig::LoggableActionState>]
|
|
1276
1417
|
# States in which `log_actions` are logged. If empty, no logs are generated.
|
|
1277
|
-
# Not supported for transfers with PosixFilesystem data sources; use
|
|
1278
|
-
# {::Google::Cloud::StorageTransfer::V1::LoggingConfig#enable_onprem_gcs_transfer_logs enable_onprem_gcs_transfer_logs}
|
|
1279
|
-
# instead.
|
|
1280
1418
|
# @!attribute [rw] enable_onprem_gcs_transfer_logs
|
|
1281
1419
|
# @return [::Boolean]
|
|
1282
|
-
# For
|
|
1283
|
-
#
|
|
1420
|
+
# For PosixFilesystem transfers, enables
|
|
1421
|
+
# [file system transfer
|
|
1422
|
+
# logs](https://cloud.google.com/storage-transfer/docs/on-prem-transfer-log-format)
|
|
1423
|
+
# instead of, or in addition to, Cloud Logging.
|
|
1424
|
+
#
|
|
1425
|
+
# This option ignores [LoggableAction] and [LoggableActionState]. If these
|
|
1426
|
+
# are set, Cloud Logging will also be enabled for this transfer.
|
|
1284
1427
|
class LoggingConfig
|
|
1285
1428
|
include ::Google::Protobuf::MessageExts
|
|
1286
1429
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
@@ -1296,7 +1439,7 @@ module Google
|
|
|
1296
1439
|
# Deleting objects at the source or the destination.
|
|
1297
1440
|
DELETE = 2
|
|
1298
1441
|
|
|
1299
|
-
# Copying objects to
|
|
1442
|
+
# Copying objects to the destination.
|
|
1300
1443
|
COPY = 3
|
|
1301
1444
|
end
|
|
1302
1445
|
|
|
@@ -1312,6 +1455,11 @@ module Google
|
|
|
1312
1455
|
# `LoggableAction` terminated in an error state. `FAILED` actions are
|
|
1313
1456
|
# logged as [ERROR][google.logging.type.LogSeverity.ERROR].
|
|
1314
1457
|
FAILED = 2
|
|
1458
|
+
|
|
1459
|
+
# The `COPY` action was skipped for this file. Only supported for
|
|
1460
|
+
# agent-based transfers. `SKIPPED` actions are
|
|
1461
|
+
# logged as [INFO][google.logging.type.LogSeverity.INFO].
|
|
1462
|
+
SKIPPED = 3
|
|
1315
1463
|
end
|
|
1316
1464
|
end
|
|
1317
1465
|
|
|
@@ -24,14 +24,17 @@ module Google
|
|
|
24
24
|
# date is relative to the Gregorian Calendar. This can represent one of the
|
|
25
25
|
# following:
|
|
26
26
|
#
|
|
27
|
-
# * A full date, with non-zero year, month, and day values
|
|
28
|
-
# * A month and day
|
|
29
|
-
# * A year on its own, with zero month and day
|
|
30
|
-
# * A year and month
|
|
31
|
-
#
|
|
27
|
+
# * A full date, with non-zero year, month, and day values.
|
|
28
|
+
# * A month and day, with a zero year (for example, an anniversary).
|
|
29
|
+
# * A year on its own, with a zero month and a zero day.
|
|
30
|
+
# * A year and month, with a zero day (for example, a credit card expiration
|
|
31
|
+
# date).
|
|
32
32
|
#
|
|
33
|
-
# Related types
|
|
34
|
-
#
|
|
33
|
+
# Related types:
|
|
34
|
+
#
|
|
35
|
+
# * {::Google::Type::TimeOfDay google.type.TimeOfDay}
|
|
36
|
+
# * [google.type.DateTime][google.type.DateTime]
|
|
37
|
+
# * {::Google::Protobuf::Timestamp google.protobuf.Timestamp}
|
|
35
38
|
# @!attribute [rw] year
|
|
36
39
|
# @return [::Integer]
|
|
37
40
|
# Year of the date. Must be from 1 to 9999, or 0 to specify a date without
|
|
@@ -25,18 +25,22 @@ module Google
|
|
|
25
25
|
# `google.protobuf.Timestamp`.
|
|
26
26
|
# @!attribute [rw] hours
|
|
27
27
|
# @return [::Integer]
|
|
28
|
-
# Hours of day in 24 hour format.
|
|
29
|
-
#
|
|
28
|
+
# Hours of a day in 24 hour format. Must be greater than or equal to 0 and
|
|
29
|
+
# typically must be less than or equal to 23. An API may choose to allow the
|
|
30
|
+
# value "24:00:00" for scenarios like business closing time.
|
|
30
31
|
# @!attribute [rw] minutes
|
|
31
32
|
# @return [::Integer]
|
|
32
|
-
# Minutes of hour
|
|
33
|
+
# Minutes of an hour. Must be greater than or equal to 0 and less than or
|
|
34
|
+
# equal to 59.
|
|
33
35
|
# @!attribute [rw] seconds
|
|
34
36
|
# @return [::Integer]
|
|
35
|
-
# Seconds of
|
|
36
|
-
# allow the value 60 if it allows
|
|
37
|
+
# Seconds of a minute. Must be greater than or equal to 0 and typically must
|
|
38
|
+
# be less than or equal to 59. An API may allow the value 60 if it allows
|
|
39
|
+
# leap-seconds.
|
|
37
40
|
# @!attribute [rw] nanos
|
|
38
41
|
# @return [::Integer]
|
|
39
|
-
# Fractions of seconds in nanoseconds. Must be
|
|
42
|
+
# Fractions of seconds, in nanoseconds. Must be greater than or equal to 0
|
|
43
|
+
# and less than or equal to 999,999,999.
|
|
40
44
|
class TimeOfDay
|
|
41
45
|
include ::Google::Protobuf::MessageExts
|
|
42
46
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|