google-apis-storage_v1 0.29.0 → 0.54.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/CHANGELOG.md +107 -0
- data/OVERVIEW.md +2 -2
- data/lib/google/apis/storage_v1/classes.rb +716 -53
- data/lib/google/apis/storage_v1/gem_version.rb +3 -3
- data/lib/google/apis/storage_v1/representations.rb +293 -0
- data/lib/google/apis/storage_v1/service.rb +904 -110
- metadata +7 -10
@@ -22,6 +22,155 @@ module Google
|
|
22
22
|
module Apis
|
23
23
|
module StorageV1
|
24
24
|
|
25
|
+
# An AdvanceRelocateBucketOperation request.
|
26
|
+
class AdvanceRelocateBucketOperationRequest
|
27
|
+
include Google::Apis::Core::Hashable
|
28
|
+
|
29
|
+
# Specifies the time when the relocation will revert to the sync stage if the
|
30
|
+
# relocation hasn't succeeded.
|
31
|
+
# Corresponds to the JSON property `expireTime`
|
32
|
+
# @return [DateTime]
|
33
|
+
attr_accessor :expire_time
|
34
|
+
|
35
|
+
# Specifies the duration after which the relocation will revert to the sync
|
36
|
+
# stage if the relocation hasn't succeeded. Optional, if not supplied, a default
|
37
|
+
# value of 12h will be used.
|
38
|
+
# Corresponds to the JSON property `ttl`
|
39
|
+
# @return [String]
|
40
|
+
attr_accessor :ttl
|
41
|
+
|
42
|
+
def initialize(**args)
|
43
|
+
update!(**args)
|
44
|
+
end
|
45
|
+
|
46
|
+
# Update properties of this object
|
47
|
+
def update!(**args)
|
48
|
+
@expire_time = args[:expire_time] if args.key?(:expire_time)
|
49
|
+
@ttl = args[:ttl] if args.key?(:ttl)
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
# An Anywhere Cache instance.
|
54
|
+
class AnywhereCache
|
55
|
+
include Google::Apis::Core::Hashable
|
56
|
+
|
57
|
+
# The cache-level entry admission policy.
|
58
|
+
# Corresponds to the JSON property `admissionPolicy`
|
59
|
+
# @return [String]
|
60
|
+
attr_accessor :admission_policy
|
61
|
+
|
62
|
+
# The ID of the Anywhere cache instance.
|
63
|
+
# Corresponds to the JSON property `anywhereCacheId`
|
64
|
+
# @return [String]
|
65
|
+
attr_accessor :anywhere_cache_id
|
66
|
+
|
67
|
+
# The name of the bucket containing this cache instance.
|
68
|
+
# Corresponds to the JSON property `bucket`
|
69
|
+
# @return [String]
|
70
|
+
attr_accessor :bucket
|
71
|
+
|
72
|
+
# The creation time of the cache instance in RFC 3339 format.
|
73
|
+
# Corresponds to the JSON property `createTime`
|
74
|
+
# @return [DateTime]
|
75
|
+
attr_accessor :create_time
|
76
|
+
|
77
|
+
# The ID of the resource, including the project number, bucket name and anywhere
|
78
|
+
# cache ID.
|
79
|
+
# Corresponds to the JSON property `id`
|
80
|
+
# @return [String]
|
81
|
+
attr_accessor :id
|
82
|
+
|
83
|
+
# The kind of item this is. For Anywhere Cache, this is always storage#
|
84
|
+
# anywhereCache.
|
85
|
+
# Corresponds to the JSON property `kind`
|
86
|
+
# @return [String]
|
87
|
+
attr_accessor :kind
|
88
|
+
|
89
|
+
# True if the cache instance has an active Update long-running operation.
|
90
|
+
# Corresponds to the JSON property `pendingUpdate`
|
91
|
+
# @return [Boolean]
|
92
|
+
attr_accessor :pending_update
|
93
|
+
alias_method :pending_update?, :pending_update
|
94
|
+
|
95
|
+
# The link to this cache instance.
|
96
|
+
# Corresponds to the JSON property `selfLink`
|
97
|
+
# @return [String]
|
98
|
+
attr_accessor :self_link
|
99
|
+
|
100
|
+
# The current state of the cache instance.
|
101
|
+
# Corresponds to the JSON property `state`
|
102
|
+
# @return [String]
|
103
|
+
attr_accessor :state
|
104
|
+
|
105
|
+
# The TTL of all cache entries in whole seconds. e.g., "7200s".
|
106
|
+
# Corresponds to the JSON property `ttl`
|
107
|
+
# @return [String]
|
108
|
+
attr_accessor :ttl
|
109
|
+
|
110
|
+
# The modification time of the cache instance metadata in RFC 3339 format.
|
111
|
+
# Corresponds to the JSON property `updateTime`
|
112
|
+
# @return [DateTime]
|
113
|
+
attr_accessor :update_time
|
114
|
+
|
115
|
+
# The zone in which the cache instance is running. For example, us-central1-a.
|
116
|
+
# Corresponds to the JSON property `zone`
|
117
|
+
# @return [String]
|
118
|
+
attr_accessor :zone
|
119
|
+
|
120
|
+
def initialize(**args)
|
121
|
+
update!(**args)
|
122
|
+
end
|
123
|
+
|
124
|
+
# Update properties of this object
|
125
|
+
def update!(**args)
|
126
|
+
@admission_policy = args[:admission_policy] if args.key?(:admission_policy)
|
127
|
+
@anywhere_cache_id = args[:anywhere_cache_id] if args.key?(:anywhere_cache_id)
|
128
|
+
@bucket = args[:bucket] if args.key?(:bucket)
|
129
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
130
|
+
@id = args[:id] if args.key?(:id)
|
131
|
+
@kind = args[:kind] if args.key?(:kind)
|
132
|
+
@pending_update = args[:pending_update] if args.key?(:pending_update)
|
133
|
+
@self_link = args[:self_link] if args.key?(:self_link)
|
134
|
+
@state = args[:state] if args.key?(:state)
|
135
|
+
@ttl = args[:ttl] if args.key?(:ttl)
|
136
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
137
|
+
@zone = args[:zone] if args.key?(:zone)
|
138
|
+
end
|
139
|
+
end
|
140
|
+
|
141
|
+
# A list of Anywhere Caches.
|
142
|
+
class AnywhereCaches
|
143
|
+
include Google::Apis::Core::Hashable
|
144
|
+
|
145
|
+
# The list of items.
|
146
|
+
# Corresponds to the JSON property `items`
|
147
|
+
# @return [Array<Google::Apis::StorageV1::AnywhereCache>]
|
148
|
+
attr_accessor :items
|
149
|
+
|
150
|
+
# The kind of item this is. For lists of Anywhere Caches, this is always storage#
|
151
|
+
# anywhereCaches.
|
152
|
+
# Corresponds to the JSON property `kind`
|
153
|
+
# @return [String]
|
154
|
+
attr_accessor :kind
|
155
|
+
|
156
|
+
# The continuation token, used to page through large result sets. Provide this
|
157
|
+
# value in a subsequent request to return the next page of results.
|
158
|
+
# Corresponds to the JSON property `nextPageToken`
|
159
|
+
# @return [String]
|
160
|
+
attr_accessor :next_page_token
|
161
|
+
|
162
|
+
def initialize(**args)
|
163
|
+
update!(**args)
|
164
|
+
end
|
165
|
+
|
166
|
+
# Update properties of this object
|
167
|
+
def update!(**args)
|
168
|
+
@items = args[:items] if args.key?(:items)
|
169
|
+
@kind = args[:kind] if args.key?(:kind)
|
170
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
171
|
+
end
|
172
|
+
end
|
173
|
+
|
25
174
|
# A bucket.
|
26
175
|
class Bucket
|
27
176
|
include Google::Apis::Core::Hashable
|
@@ -83,6 +232,21 @@ module Google
|
|
83
232
|
# @return [String]
|
84
233
|
attr_accessor :etag
|
85
234
|
|
235
|
+
# The generation of this bucket.
|
236
|
+
# Corresponds to the JSON property `generation`
|
237
|
+
# @return [Fixnum]
|
238
|
+
attr_accessor :generation
|
239
|
+
|
240
|
+
# The hard delete time of the bucket in RFC 3339 format.
|
241
|
+
# Corresponds to the JSON property `hardDeleteTime`
|
242
|
+
# @return [DateTime]
|
243
|
+
attr_accessor :hard_delete_time
|
244
|
+
|
245
|
+
# The bucket's hierarchical namespace configuration.
|
246
|
+
# Corresponds to the JSON property `hierarchicalNamespace`
|
247
|
+
# @return [Google::Apis::StorageV1::Bucket::HierarchicalNamespace]
|
248
|
+
attr_accessor :hierarchical_namespace
|
249
|
+
|
86
250
|
# The bucket's IAM configuration.
|
87
251
|
# Corresponds to the JSON property `iamConfiguration`
|
88
252
|
# @return [Google::Apis::StorageV1::Bucket::IamConfiguration]
|
@@ -93,6 +257,13 @@ module Google
|
|
93
257
|
# @return [String]
|
94
258
|
attr_accessor :id
|
95
259
|
|
260
|
+
# The bucket's IP filter configuration. Specifies the network sources that are
|
261
|
+
# allowed to access the operations on the bucket, as well as its underlying
|
262
|
+
# objects. Only enforced when the mode is set to 'Enabled'.
|
263
|
+
# Corresponds to the JSON property `ipFilter`
|
264
|
+
# @return [Google::Apis::StorageV1::Bucket::IpFilter]
|
265
|
+
attr_accessor :ip_filter
|
266
|
+
|
96
267
|
# The kind of item this is. For buckets, this is always storage#bucket.
|
97
268
|
# Corresponds to the JSON property `kind`
|
98
269
|
# @return [String]
|
@@ -103,15 +274,16 @@ module Google
|
|
103
274
|
# @return [Hash<String,String>]
|
104
275
|
attr_accessor :labels
|
105
276
|
|
106
|
-
# The bucket's lifecycle configuration. See
|
107
|
-
# information.
|
277
|
+
# The bucket's lifecycle configuration. See [Lifecycle Management](https://cloud.
|
278
|
+
# google.com/storage/docs/lifecycle) for more information.
|
108
279
|
# Corresponds to the JSON property `lifecycle`
|
109
280
|
# @return [Google::Apis::StorageV1::Bucket::Lifecycle]
|
110
281
|
attr_accessor :lifecycle
|
111
282
|
|
112
283
|
# The location of the bucket. Object data for objects in the bucket resides in
|
113
|
-
# physical storage within this region. Defaults to US. See the
|
114
|
-
# for the authoritative
|
284
|
+
# physical storage within this region. Defaults to US. See the [Developer's
|
285
|
+
# Guide](https://cloud.google.com/storage/docs/locations) for the authoritative
|
286
|
+
# list.
|
115
287
|
# Corresponds to the JSON property `location`
|
116
288
|
# @return [String]
|
117
289
|
attr_accessor :location
|
@@ -171,6 +343,12 @@ module Google
|
|
171
343
|
# @return [String]
|
172
344
|
attr_accessor :rpo
|
173
345
|
|
346
|
+
# Reserved for future use.
|
347
|
+
# Corresponds to the JSON property `satisfiesPZI`
|
348
|
+
# @return [Boolean]
|
349
|
+
attr_accessor :satisfies_pzi
|
350
|
+
alias_method :satisfies_pzi?, :satisfies_pzi
|
351
|
+
|
174
352
|
# Reserved for future use.
|
175
353
|
# Corresponds to the JSON property `satisfiesPZS`
|
176
354
|
# @return [Boolean]
|
@@ -188,13 +366,18 @@ module Google
|
|
188
366
|
# @return [Google::Apis::StorageV1::Bucket::SoftDeletePolicy]
|
189
367
|
attr_accessor :soft_delete_policy
|
190
368
|
|
369
|
+
# The soft delete time of the bucket in RFC 3339 format.
|
370
|
+
# Corresponds to the JSON property `softDeleteTime`
|
371
|
+
# @return [DateTime]
|
372
|
+
attr_accessor :soft_delete_time
|
373
|
+
|
191
374
|
# The bucket's default storage class, used whenever no storageClass is specified
|
192
375
|
# for a newly-created object. This defines how objects in the bucket are stored
|
193
376
|
# and determines the SLA and the cost of storage. Values include MULTI_REGIONAL,
|
194
377
|
# REGIONAL, STANDARD, NEARLINE, COLDLINE, ARCHIVE, and
|
195
378
|
# DURABLE_REDUCED_AVAILABILITY. If this value is not specified when the bucket
|
196
|
-
# is created, it will default to STANDARD. For more information, see
|
197
|
-
# classes.
|
379
|
+
# is created, it will default to STANDARD. For more information, see [Storage
|
380
|
+
# Classes](https://cloud.google.com/storage/docs/storage-classes).
|
198
381
|
# Corresponds to the JSON property `storageClass`
|
199
382
|
# @return [String]
|
200
383
|
attr_accessor :storage_class
|
@@ -215,8 +398,8 @@ module Google
|
|
215
398
|
attr_accessor :versioning
|
216
399
|
|
217
400
|
# The bucket's website configuration, controlling how the service behaves when
|
218
|
-
# accessing bucket contents as a web site. See the Static Website Examples
|
219
|
-
# more information.
|
401
|
+
# accessing bucket contents as a web site. See the [Static Website Examples](
|
402
|
+
# https://cloud.google.com/storage/docs/static-website) for more information.
|
220
403
|
# Corresponds to the JSON property `website`
|
221
404
|
# @return [Google::Apis::StorageV1::Bucket::Website]
|
222
405
|
attr_accessor :website
|
@@ -236,8 +419,12 @@ module Google
|
|
236
419
|
@default_object_acl = args[:default_object_acl] if args.key?(:default_object_acl)
|
237
420
|
@encryption = args[:encryption] if args.key?(:encryption)
|
238
421
|
@etag = args[:etag] if args.key?(:etag)
|
422
|
+
@generation = args[:generation] if args.key?(:generation)
|
423
|
+
@hard_delete_time = args[:hard_delete_time] if args.key?(:hard_delete_time)
|
424
|
+
@hierarchical_namespace = args[:hierarchical_namespace] if args.key?(:hierarchical_namespace)
|
239
425
|
@iam_configuration = args[:iam_configuration] if args.key?(:iam_configuration)
|
240
426
|
@id = args[:id] if args.key?(:id)
|
427
|
+
@ip_filter = args[:ip_filter] if args.key?(:ip_filter)
|
241
428
|
@kind = args[:kind] if args.key?(:kind)
|
242
429
|
@labels = args[:labels] if args.key?(:labels)
|
243
430
|
@lifecycle = args[:lifecycle] if args.key?(:lifecycle)
|
@@ -251,9 +438,11 @@ module Google
|
|
251
438
|
@project_number = args[:project_number] if args.key?(:project_number)
|
252
439
|
@retention_policy = args[:retention_policy] if args.key?(:retention_policy)
|
253
440
|
@rpo = args[:rpo] if args.key?(:rpo)
|
441
|
+
@satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
|
254
442
|
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
255
443
|
@self_link = args[:self_link] if args.key?(:self_link)
|
256
444
|
@soft_delete_policy = args[:soft_delete_policy] if args.key?(:soft_delete_policy)
|
445
|
+
@soft_delete_time = args[:soft_delete_time] if args.key?(:soft_delete_time)
|
257
446
|
@storage_class = args[:storage_class] if args.key?(:storage_class)
|
258
447
|
@time_created = args[:time_created] if args.key?(:time_created)
|
259
448
|
@updated = args[:updated] if args.key?(:updated)
|
@@ -404,6 +593,26 @@ module Google
|
|
404
593
|
end
|
405
594
|
end
|
406
595
|
|
596
|
+
# The bucket's hierarchical namespace configuration.
|
597
|
+
class HierarchicalNamespace
|
598
|
+
include Google::Apis::Core::Hashable
|
599
|
+
|
600
|
+
# When set to true, hierarchical namespace is enabled for this bucket.
|
601
|
+
# Corresponds to the JSON property `enabled`
|
602
|
+
# @return [Boolean]
|
603
|
+
attr_accessor :enabled
|
604
|
+
alias_method :enabled?, :enabled
|
605
|
+
|
606
|
+
def initialize(**args)
|
607
|
+
update!(**args)
|
608
|
+
end
|
609
|
+
|
610
|
+
# Update properties of this object
|
611
|
+
def update!(**args)
|
612
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
613
|
+
end
|
614
|
+
end
|
615
|
+
|
407
616
|
# The bucket's IAM configuration.
|
408
617
|
class IamConfiguration
|
409
618
|
include Google::Apis::Core::Hashable
|
@@ -502,8 +711,104 @@ module Google
|
|
502
711
|
end
|
503
712
|
end
|
504
713
|
|
505
|
-
# The bucket's
|
506
|
-
#
|
714
|
+
# The bucket's IP filter configuration. Specifies the network sources that are
|
715
|
+
# allowed to access the operations on the bucket, as well as its underlying
|
716
|
+
# objects. Only enforced when the mode is set to 'Enabled'.
|
717
|
+
class IpFilter
|
718
|
+
include Google::Apis::Core::Hashable
|
719
|
+
|
720
|
+
# Whether to allow all service agents to access the bucket regardless of the IP
|
721
|
+
# filter configuration.
|
722
|
+
# Corresponds to the JSON property `allowAllServiceAgentAccess`
|
723
|
+
# @return [Boolean]
|
724
|
+
attr_accessor :allow_all_service_agent_access
|
725
|
+
alias_method :allow_all_service_agent_access?, :allow_all_service_agent_access
|
726
|
+
|
727
|
+
# Whether to allow cross-org VPCs in the bucket's IP filter configuration.
|
728
|
+
# Corresponds to the JSON property `allowCrossOrgVpcs`
|
729
|
+
# @return [Boolean]
|
730
|
+
attr_accessor :allow_cross_org_vpcs
|
731
|
+
alias_method :allow_cross_org_vpcs?, :allow_cross_org_vpcs
|
732
|
+
|
733
|
+
# The mode of the IP filter. Valid values are 'Enabled' and 'Disabled'.
|
734
|
+
# Corresponds to the JSON property `mode`
|
735
|
+
# @return [String]
|
736
|
+
attr_accessor :mode
|
737
|
+
|
738
|
+
# The public network source of the bucket's IP filter.
|
739
|
+
# Corresponds to the JSON property `publicNetworkSource`
|
740
|
+
# @return [Google::Apis::StorageV1::Bucket::IpFilter::PublicNetworkSource]
|
741
|
+
attr_accessor :public_network_source
|
742
|
+
|
743
|
+
# The list of [VPC network](https://cloud.google.com/vpc/docs/vpc) sources of
|
744
|
+
# the bucket's IP filter.
|
745
|
+
# Corresponds to the JSON property `vpcNetworkSources`
|
746
|
+
# @return [Array<Google::Apis::StorageV1::Bucket::IpFilter::VpcNetworkSource>]
|
747
|
+
attr_accessor :vpc_network_sources
|
748
|
+
|
749
|
+
def initialize(**args)
|
750
|
+
update!(**args)
|
751
|
+
end
|
752
|
+
|
753
|
+
# Update properties of this object
|
754
|
+
def update!(**args)
|
755
|
+
@allow_all_service_agent_access = args[:allow_all_service_agent_access] if args.key?(:allow_all_service_agent_access)
|
756
|
+
@allow_cross_org_vpcs = args[:allow_cross_org_vpcs] if args.key?(:allow_cross_org_vpcs)
|
757
|
+
@mode = args[:mode] if args.key?(:mode)
|
758
|
+
@public_network_source = args[:public_network_source] if args.key?(:public_network_source)
|
759
|
+
@vpc_network_sources = args[:vpc_network_sources] if args.key?(:vpc_network_sources)
|
760
|
+
end
|
761
|
+
|
762
|
+
# The public network source of the bucket's IP filter.
|
763
|
+
class PublicNetworkSource
|
764
|
+
include Google::Apis::Core::Hashable
|
765
|
+
|
766
|
+
# The list of public IPv4, IPv6 cidr ranges that are allowed to access the
|
767
|
+
# bucket.
|
768
|
+
# Corresponds to the JSON property `allowedIpCidrRanges`
|
769
|
+
# @return [Array<String>]
|
770
|
+
attr_accessor :allowed_ip_cidr_ranges
|
771
|
+
|
772
|
+
def initialize(**args)
|
773
|
+
update!(**args)
|
774
|
+
end
|
775
|
+
|
776
|
+
# Update properties of this object
|
777
|
+
def update!(**args)
|
778
|
+
@allowed_ip_cidr_ranges = args[:allowed_ip_cidr_ranges] if args.key?(:allowed_ip_cidr_ranges)
|
779
|
+
end
|
780
|
+
end
|
781
|
+
|
782
|
+
#
|
783
|
+
class VpcNetworkSource
|
784
|
+
include Google::Apis::Core::Hashable
|
785
|
+
|
786
|
+
# The list of IPv4, IPv6 cidr ranges subnetworks that are allowed to access the
|
787
|
+
# bucket.
|
788
|
+
# Corresponds to the JSON property `allowedIpCidrRanges`
|
789
|
+
# @return [Array<String>]
|
790
|
+
attr_accessor :allowed_ip_cidr_ranges
|
791
|
+
|
792
|
+
# Name of the network. Format: projects/`PROJECT_ID`/global/networks/`
|
793
|
+
# NETWORK_NAME`
|
794
|
+
# Corresponds to the JSON property `network`
|
795
|
+
# @return [String]
|
796
|
+
attr_accessor :network
|
797
|
+
|
798
|
+
def initialize(**args)
|
799
|
+
update!(**args)
|
800
|
+
end
|
801
|
+
|
802
|
+
# Update properties of this object
|
803
|
+
def update!(**args)
|
804
|
+
@allowed_ip_cidr_ranges = args[:allowed_ip_cidr_ranges] if args.key?(:allowed_ip_cidr_ranges)
|
805
|
+
@network = args[:network] if args.key?(:network)
|
806
|
+
end
|
807
|
+
end
|
808
|
+
end
|
809
|
+
|
810
|
+
# The bucket's lifecycle configuration. See [Lifecycle Management](https://cloud.
|
811
|
+
# google.com/storage/docs/lifecycle) for more information.
|
507
812
|
class Lifecycle
|
508
813
|
include Google::Apis::Core::Hashable
|
509
814
|
|
@@ -809,7 +1114,7 @@ module Google
|
|
809
1114
|
# @return [DateTime]
|
810
1115
|
attr_accessor :effective_time
|
811
1116
|
|
812
|
-
# The
|
1117
|
+
# The duration in seconds that soft-deleted objects in the bucket will be
|
813
1118
|
# retained and cannot be permanently deleted.
|
814
1119
|
# Corresponds to the JSON property `retentionDurationSeconds`
|
815
1120
|
# @return [Fixnum]
|
@@ -847,8 +1152,8 @@ module Google
|
|
847
1152
|
end
|
848
1153
|
|
849
1154
|
# The bucket's website configuration, controlling how the service behaves when
|
850
|
-
# accessing bucket contents as a web site. See the Static Website Examples
|
851
|
-
# more information.
|
1155
|
+
# accessing bucket contents as a web site. See the [Static Website Examples](
|
1156
|
+
# https://cloud.google.com/storage/docs/static-website) for more information.
|
852
1157
|
class Website
|
853
1158
|
include Google::Apis::Core::Hashable
|
854
1159
|
|
@@ -1022,6 +1327,95 @@ module Google
|
|
1022
1327
|
end
|
1023
1328
|
end
|
1024
1329
|
|
1330
|
+
# The storage layout configuration of a bucket.
|
1331
|
+
class BucketStorageLayout
|
1332
|
+
include Google::Apis::Core::Hashable
|
1333
|
+
|
1334
|
+
# The name of the bucket.
|
1335
|
+
# Corresponds to the JSON property `bucket`
|
1336
|
+
# @return [String]
|
1337
|
+
attr_accessor :bucket
|
1338
|
+
|
1339
|
+
# The bucket's custom placement configuration for Custom Dual Regions.
|
1340
|
+
# Corresponds to the JSON property `customPlacementConfig`
|
1341
|
+
# @return [Google::Apis::StorageV1::BucketStorageLayout::CustomPlacementConfig]
|
1342
|
+
attr_accessor :custom_placement_config
|
1343
|
+
|
1344
|
+
# The bucket's hierarchical namespace configuration.
|
1345
|
+
# Corresponds to the JSON property `hierarchicalNamespace`
|
1346
|
+
# @return [Google::Apis::StorageV1::BucketStorageLayout::HierarchicalNamespace]
|
1347
|
+
attr_accessor :hierarchical_namespace
|
1348
|
+
|
1349
|
+
# The kind of item this is. For storage layout, this is always storage#
|
1350
|
+
# storageLayout.
|
1351
|
+
# Corresponds to the JSON property `kind`
|
1352
|
+
# @return [String]
|
1353
|
+
attr_accessor :kind
|
1354
|
+
|
1355
|
+
# The location of the bucket.
|
1356
|
+
# Corresponds to the JSON property `location`
|
1357
|
+
# @return [String]
|
1358
|
+
attr_accessor :location
|
1359
|
+
|
1360
|
+
# The type of the bucket location.
|
1361
|
+
# Corresponds to the JSON property `locationType`
|
1362
|
+
# @return [String]
|
1363
|
+
attr_accessor :location_type
|
1364
|
+
|
1365
|
+
def initialize(**args)
|
1366
|
+
update!(**args)
|
1367
|
+
end
|
1368
|
+
|
1369
|
+
# Update properties of this object
|
1370
|
+
def update!(**args)
|
1371
|
+
@bucket = args[:bucket] if args.key?(:bucket)
|
1372
|
+
@custom_placement_config = args[:custom_placement_config] if args.key?(:custom_placement_config)
|
1373
|
+
@hierarchical_namespace = args[:hierarchical_namespace] if args.key?(:hierarchical_namespace)
|
1374
|
+
@kind = args[:kind] if args.key?(:kind)
|
1375
|
+
@location = args[:location] if args.key?(:location)
|
1376
|
+
@location_type = args[:location_type] if args.key?(:location_type)
|
1377
|
+
end
|
1378
|
+
|
1379
|
+
# The bucket's custom placement configuration for Custom Dual Regions.
|
1380
|
+
class CustomPlacementConfig
|
1381
|
+
include Google::Apis::Core::Hashable
|
1382
|
+
|
1383
|
+
# The list of regional locations in which data is placed.
|
1384
|
+
# Corresponds to the JSON property `dataLocations`
|
1385
|
+
# @return [Array<String>]
|
1386
|
+
attr_accessor :data_locations
|
1387
|
+
|
1388
|
+
def initialize(**args)
|
1389
|
+
update!(**args)
|
1390
|
+
end
|
1391
|
+
|
1392
|
+
# Update properties of this object
|
1393
|
+
def update!(**args)
|
1394
|
+
@data_locations = args[:data_locations] if args.key?(:data_locations)
|
1395
|
+
end
|
1396
|
+
end
|
1397
|
+
|
1398
|
+
# The bucket's hierarchical namespace configuration.
|
1399
|
+
class HierarchicalNamespace
|
1400
|
+
include Google::Apis::Core::Hashable
|
1401
|
+
|
1402
|
+
# When set to true, hierarchical namespace is enabled for this bucket.
|
1403
|
+
# Corresponds to the JSON property `enabled`
|
1404
|
+
# @return [Boolean]
|
1405
|
+
attr_accessor :enabled
|
1406
|
+
alias_method :enabled?, :enabled
|
1407
|
+
|
1408
|
+
def initialize(**args)
|
1409
|
+
update!(**args)
|
1410
|
+
end
|
1411
|
+
|
1412
|
+
# Update properties of this object
|
1413
|
+
def update!(**args)
|
1414
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
1415
|
+
end
|
1416
|
+
end
|
1417
|
+
end
|
1418
|
+
|
1025
1419
|
# A list of buckets.
|
1026
1420
|
class Buckets
|
1027
1421
|
include Google::Apis::Core::Hashable
|
@@ -1312,10 +1706,137 @@ module Google
|
|
1312
1706
|
end
|
1313
1707
|
end
|
1314
1708
|
|
1709
|
+
# A folder. Only available in buckets with hierarchical namespace enabled.
|
1710
|
+
class Folder
|
1711
|
+
include Google::Apis::Core::Hashable
|
1712
|
+
|
1713
|
+
# The name of the bucket containing this folder.
|
1714
|
+
# Corresponds to the JSON property `bucket`
|
1715
|
+
# @return [String]
|
1716
|
+
attr_accessor :bucket
|
1717
|
+
|
1718
|
+
# The creation time of the folder in RFC 3339 format.
|
1719
|
+
# Corresponds to the JSON property `createTime`
|
1720
|
+
# @return [DateTime]
|
1721
|
+
attr_accessor :create_time
|
1722
|
+
|
1723
|
+
# The ID of the folder, including the bucket name, folder name.
|
1724
|
+
# Corresponds to the JSON property `id`
|
1725
|
+
# @return [String]
|
1726
|
+
attr_accessor :id
|
1727
|
+
|
1728
|
+
# The kind of item this is. For folders, this is always storage#folder.
|
1729
|
+
# Corresponds to the JSON property `kind`
|
1730
|
+
# @return [String]
|
1731
|
+
attr_accessor :kind
|
1732
|
+
|
1733
|
+
# The version of the metadata for this folder. Used for preconditions and for
|
1734
|
+
# detecting changes in metadata.
|
1735
|
+
# Corresponds to the JSON property `metageneration`
|
1736
|
+
# @return [Fixnum]
|
1737
|
+
attr_accessor :metageneration
|
1738
|
+
|
1739
|
+
# The name of the folder. Required if not specified by URL parameter.
|
1740
|
+
# Corresponds to the JSON property `name`
|
1741
|
+
# @return [String]
|
1742
|
+
attr_accessor :name
|
1743
|
+
|
1744
|
+
# Only present if the folder is part of an ongoing rename folder operation.
|
1745
|
+
# Contains information which can be used to query the operation status.
|
1746
|
+
# Corresponds to the JSON property `pendingRenameInfo`
|
1747
|
+
# @return [Google::Apis::StorageV1::Folder::PendingRenameInfo]
|
1748
|
+
attr_accessor :pending_rename_info
|
1749
|
+
|
1750
|
+
# The link to this folder.
|
1751
|
+
# Corresponds to the JSON property `selfLink`
|
1752
|
+
# @return [String]
|
1753
|
+
attr_accessor :self_link
|
1754
|
+
|
1755
|
+
# The modification time of the folder metadata in RFC 3339 format.
|
1756
|
+
# Corresponds to the JSON property `updateTime`
|
1757
|
+
# @return [DateTime]
|
1758
|
+
attr_accessor :update_time
|
1759
|
+
|
1760
|
+
def initialize(**args)
|
1761
|
+
update!(**args)
|
1762
|
+
end
|
1763
|
+
|
1764
|
+
# Update properties of this object
|
1765
|
+
def update!(**args)
|
1766
|
+
@bucket = args[:bucket] if args.key?(:bucket)
|
1767
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1768
|
+
@id = args[:id] if args.key?(:id)
|
1769
|
+
@kind = args[:kind] if args.key?(:kind)
|
1770
|
+
@metageneration = args[:metageneration] if args.key?(:metageneration)
|
1771
|
+
@name = args[:name] if args.key?(:name)
|
1772
|
+
@pending_rename_info = args[:pending_rename_info] if args.key?(:pending_rename_info)
|
1773
|
+
@self_link = args[:self_link] if args.key?(:self_link)
|
1774
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
1775
|
+
end
|
1776
|
+
|
1777
|
+
# Only present if the folder is part of an ongoing rename folder operation.
|
1778
|
+
# Contains information which can be used to query the operation status.
|
1779
|
+
class PendingRenameInfo
|
1780
|
+
include Google::Apis::Core::Hashable
|
1781
|
+
|
1782
|
+
# The ID of the rename folder operation.
|
1783
|
+
# Corresponds to the JSON property `operationId`
|
1784
|
+
# @return [String]
|
1785
|
+
attr_accessor :operation_id
|
1786
|
+
|
1787
|
+
def initialize(**args)
|
1788
|
+
update!(**args)
|
1789
|
+
end
|
1790
|
+
|
1791
|
+
# Update properties of this object
|
1792
|
+
def update!(**args)
|
1793
|
+
@operation_id = args[:operation_id] if args.key?(:operation_id)
|
1794
|
+
end
|
1795
|
+
end
|
1796
|
+
end
|
1797
|
+
|
1798
|
+
# A list of folders.
|
1799
|
+
class Folders
|
1800
|
+
include Google::Apis::Core::Hashable
|
1801
|
+
|
1802
|
+
# The list of items.
|
1803
|
+
# Corresponds to the JSON property `items`
|
1804
|
+
# @return [Array<Google::Apis::StorageV1::Folder>]
|
1805
|
+
attr_accessor :items
|
1806
|
+
|
1807
|
+
# The kind of item this is. For lists of folders, this is always storage#folders.
|
1808
|
+
# Corresponds to the JSON property `kind`
|
1809
|
+
# @return [String]
|
1810
|
+
attr_accessor :kind
|
1811
|
+
|
1812
|
+
# The continuation token, used to page through large result sets. Provide this
|
1813
|
+
# value in a subsequent request to return the next page of results.
|
1814
|
+
# Corresponds to the JSON property `nextPageToken`
|
1815
|
+
# @return [String]
|
1816
|
+
attr_accessor :next_page_token
|
1817
|
+
|
1818
|
+
def initialize(**args)
|
1819
|
+
update!(**args)
|
1820
|
+
end
|
1821
|
+
|
1822
|
+
# Update properties of this object
|
1823
|
+
def update!(**args)
|
1824
|
+
@items = args[:items] if args.key?(:items)
|
1825
|
+
@kind = args[:kind] if args.key?(:kind)
|
1826
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1827
|
+
end
|
1828
|
+
end
|
1829
|
+
|
1315
1830
|
# The response message for storage.buckets.operations.list.
|
1316
1831
|
class GoogleLongrunningListOperationsResponse
|
1317
1832
|
include Google::Apis::Core::Hashable
|
1318
1833
|
|
1834
|
+
# The kind of item this is. For lists of operations, this is always storage#
|
1835
|
+
# operations.
|
1836
|
+
# Corresponds to the JSON property `kind`
|
1837
|
+
# @return [String]
|
1838
|
+
attr_accessor :kind
|
1839
|
+
|
1319
1840
|
# The continuation token, used to page through large result sets. Provide this
|
1320
1841
|
# value in a subsequent request to return the next page of results.
|
1321
1842
|
# Corresponds to the JSON property `nextPageToken`
|
@@ -1333,6 +1854,7 @@ module Google
|
|
1333
1854
|
|
1334
1855
|
# Update properties of this object
|
1335
1856
|
def update!(**args)
|
1857
|
+
@kind = args[:kind] if args.key?(:kind)
|
1336
1858
|
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1337
1859
|
@operations = args[:operations] if args.key?(:operations)
|
1338
1860
|
end
|
@@ -1360,6 +1882,11 @@ module Google
|
|
1360
1882
|
# @return [Google::Apis::StorageV1::GoogleRpcStatus]
|
1361
1883
|
attr_accessor :error
|
1362
1884
|
|
1885
|
+
# The kind of item this is. For operations, this is always storage#operation.
|
1886
|
+
# Corresponds to the JSON property `kind`
|
1887
|
+
# @return [String]
|
1888
|
+
attr_accessor :kind
|
1889
|
+
|
1363
1890
|
# Service-specific metadata associated with the operation. It typically contains
|
1364
1891
|
# progress information and common metadata such as create time. Some services
|
1365
1892
|
# might not provide such metadata. Any method that returns a long-running
|
@@ -1386,6 +1913,11 @@ module Google
|
|
1386
1913
|
# @return [Hash<String,Object>]
|
1387
1914
|
attr_accessor :response
|
1388
1915
|
|
1916
|
+
# The link to this long running operation.
|
1917
|
+
# Corresponds to the JSON property `selfLink`
|
1918
|
+
# @return [String]
|
1919
|
+
attr_accessor :self_link
|
1920
|
+
|
1389
1921
|
def initialize(**args)
|
1390
1922
|
update!(**args)
|
1391
1923
|
end
|
@@ -1394,9 +1926,11 @@ module Google
|
|
1394
1926
|
def update!(**args)
|
1395
1927
|
@done = args[:done] if args.key?(:done)
|
1396
1928
|
@error = args[:error] if args.key?(:error)
|
1929
|
+
@kind = args[:kind] if args.key?(:kind)
|
1397
1930
|
@metadata = args[:metadata] if args.key?(:metadata)
|
1398
1931
|
@name = args[:name] if args.key?(:name)
|
1399
1932
|
@response = args[:response] if args.key?(:response)
|
1933
|
+
@self_link = args[:self_link] if args.key?(:self_link)
|
1400
1934
|
end
|
1401
1935
|
end
|
1402
1936
|
|
@@ -1817,9 +2351,17 @@ module Google
|
|
1817
2351
|
# @return [String]
|
1818
2352
|
attr_accessor :content_type
|
1819
2353
|
|
2354
|
+
# User-defined or system-defined object contexts. Each object context is a key-
|
2355
|
+
# payload pair, where the key provides the identification and the payload holds
|
2356
|
+
# the associated value and additional metadata.
|
2357
|
+
# Corresponds to the JSON property `contexts`
|
2358
|
+
# @return [Google::Apis::StorageV1::Object::Contexts]
|
2359
|
+
attr_accessor :contexts
|
2360
|
+
|
1820
2361
|
# CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64 in
|
1821
2362
|
# big-endian byte order. For more information about using the CRC32c checksum,
|
1822
|
-
# see
|
2363
|
+
# see [Data Validation and Change Detection](https://cloud.google.com/storage/
|
2364
|
+
# docs/data-validation).
|
1823
2365
|
# Corresponds to the JSON property `crc32c`
|
1824
2366
|
# @return [String]
|
1825
2367
|
attr_accessor :crc32c
|
@@ -1886,7 +2428,8 @@ module Google
|
|
1886
2428
|
attr_accessor :kms_key_name
|
1887
2429
|
|
1888
2430
|
# MD5 hash of the data; encoded using base64. For more information about using
|
1889
|
-
# the MD5 hash, see
|
2431
|
+
# the MD5 hash, see [Data Validation and Change Detection](https://cloud.google.
|
2432
|
+
# com/storage/docs/data-validation).
|
1890
2433
|
# Corresponds to the JSON property `md5Hash`
|
1891
2434
|
# @return [String]
|
1892
2435
|
attr_accessor :md5_hash
|
@@ -1919,6 +2462,13 @@ module Google
|
|
1919
2462
|
# @return [Google::Apis::StorageV1::Object::Owner]
|
1920
2463
|
attr_accessor :owner
|
1921
2464
|
|
2465
|
+
# Restore token used to differentiate deleted objects with the same name and
|
2466
|
+
# generation. This field is only returned for deleted objects in hierarchical
|
2467
|
+
# namespace buckets.
|
2468
|
+
# Corresponds to the JSON property `restoreToken`
|
2469
|
+
# @return [String]
|
2470
|
+
attr_accessor :restore_token
|
2471
|
+
|
1922
2472
|
# A collection of object level retention parameters.
|
1923
2473
|
# Corresponds to the JSON property `retention`
|
1924
2474
|
# @return [Google::Apis::StorageV1::Object::Retention]
|
@@ -1975,6 +2525,11 @@ module Google
|
|
1975
2525
|
# @return [DateTime]
|
1976
2526
|
attr_accessor :time_deleted
|
1977
2527
|
|
2528
|
+
# The time when the object was finalized.
|
2529
|
+
# Corresponds to the JSON property `timeFinalized`
|
2530
|
+
# @return [DateTime]
|
2531
|
+
attr_accessor :time_finalized
|
2532
|
+
|
1978
2533
|
# The time at which the object's storage class was last changed. When the object
|
1979
2534
|
# is initially created, it will be set to timeCreated.
|
1980
2535
|
# Corresponds to the JSON property `timeStorageClassUpdated`
|
@@ -2004,6 +2559,7 @@ module Google
|
|
2004
2559
|
@content_encoding = args[:content_encoding] if args.key?(:content_encoding)
|
2005
2560
|
@content_language = args[:content_language] if args.key?(:content_language)
|
2006
2561
|
@content_type = args[:content_type] if args.key?(:content_type)
|
2562
|
+
@contexts = args[:contexts] if args.key?(:contexts)
|
2007
2563
|
@crc32c = args[:crc32c] if args.key?(:crc32c)
|
2008
2564
|
@custom_time = args[:custom_time] if args.key?(:custom_time)
|
2009
2565
|
@customer_encryption = args[:customer_encryption] if args.key?(:customer_encryption)
|
@@ -2020,6 +2576,7 @@ module Google
|
|
2020
2576
|
@metageneration = args[:metageneration] if args.key?(:metageneration)
|
2021
2577
|
@name = args[:name] if args.key?(:name)
|
2022
2578
|
@owner = args[:owner] if args.key?(:owner)
|
2579
|
+
@restore_token = args[:restore_token] if args.key?(:restore_token)
|
2023
2580
|
@retention = args[:retention] if args.key?(:retention)
|
2024
2581
|
@retention_expiration_time = args[:retention_expiration_time] if args.key?(:retention_expiration_time)
|
2025
2582
|
@self_link = args[:self_link] if args.key?(:self_link)
|
@@ -2029,10 +2586,32 @@ module Google
|
|
2029
2586
|
@temporary_hold = args[:temporary_hold] if args.key?(:temporary_hold)
|
2030
2587
|
@time_created = args[:time_created] if args.key?(:time_created)
|
2031
2588
|
@time_deleted = args[:time_deleted] if args.key?(:time_deleted)
|
2589
|
+
@time_finalized = args[:time_finalized] if args.key?(:time_finalized)
|
2032
2590
|
@time_storage_class_updated = args[:time_storage_class_updated] if args.key?(:time_storage_class_updated)
|
2033
2591
|
@updated = args[:updated] if args.key?(:updated)
|
2034
2592
|
end
|
2035
2593
|
|
2594
|
+
# User-defined or system-defined object contexts. Each object context is a key-
|
2595
|
+
# payload pair, where the key provides the identification and the payload holds
|
2596
|
+
# the associated value and additional metadata.
|
2597
|
+
class Contexts
|
2598
|
+
include Google::Apis::Core::Hashable
|
2599
|
+
|
2600
|
+
# User-defined object contexts.
|
2601
|
+
# Corresponds to the JSON property `custom`
|
2602
|
+
# @return [Hash<String,Google::Apis::StorageV1::ObjectCustomContextPayload>]
|
2603
|
+
attr_accessor :custom
|
2604
|
+
|
2605
|
+
def initialize(**args)
|
2606
|
+
update!(**args)
|
2607
|
+
end
|
2608
|
+
|
2609
|
+
# Update properties of this object
|
2610
|
+
def update!(**args)
|
2611
|
+
@custom = args[:custom] if args.key?(:custom)
|
2612
|
+
end
|
2613
|
+
end
|
2614
|
+
|
2036
2615
|
# Metadata of customer-supplied encryption key, if the object is encrypted by
|
2037
2616
|
# such a key.
|
2038
2617
|
class CustomerEncryption
|
@@ -2265,6 +2844,37 @@ module Google
|
|
2265
2844
|
end
|
2266
2845
|
end
|
2267
2846
|
|
2847
|
+
# The payload of a single user-defined object context.
|
2848
|
+
class ObjectCustomContextPayload
|
2849
|
+
include Google::Apis::Core::Hashable
|
2850
|
+
|
2851
|
+
# The time at which the object context was created in RFC 3339 format.
|
2852
|
+
# Corresponds to the JSON property `createTime`
|
2853
|
+
# @return [DateTime]
|
2854
|
+
attr_accessor :create_time
|
2855
|
+
|
2856
|
+
# The time at which the object context was last updated in RFC 3339 format.
|
2857
|
+
# Corresponds to the JSON property `updateTime`
|
2858
|
+
# @return [DateTime]
|
2859
|
+
attr_accessor :update_time
|
2860
|
+
|
2861
|
+
# The value of the object context.
|
2862
|
+
# Corresponds to the JSON property `value`
|
2863
|
+
# @return [String]
|
2864
|
+
attr_accessor :value
|
2865
|
+
|
2866
|
+
def initialize(**args)
|
2867
|
+
update!(**args)
|
2868
|
+
end
|
2869
|
+
|
2870
|
+
# Update properties of this object
|
2871
|
+
def update!(**args)
|
2872
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
2873
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
2874
|
+
@value = args[:value] if args.key?(:value)
|
2875
|
+
end
|
2876
|
+
end
|
2877
|
+
|
2268
2878
|
# A list of objects.
|
2269
2879
|
class Objects
|
2270
2880
|
include Google::Apis::Core::Hashable
|
@@ -2367,23 +2977,23 @@ module Google
|
|
2367
2977
|
|
2368
2978
|
# A collection of identifiers for members who may assume the provided role.
|
2369
2979
|
# Recognized identifiers are as follows:
|
2370
|
-
# - allUsers
|
2980
|
+
# - allUsers - A special identifier that represents anyone on the internet; with
|
2371
2981
|
# or without a Google account.
|
2372
|
-
# - allAuthenticatedUsers
|
2982
|
+
# - allAuthenticatedUsers - A special identifier that represents anyone who is
|
2373
2983
|
# authenticated with a Google account or a service account.
|
2374
|
-
# - user:emailid
|
2984
|
+
# - user:emailid - An email address that represents a specific account. For
|
2375
2985
|
# example, user:alice@gmail.com or user:joe@example.com.
|
2376
|
-
# - serviceAccount:emailid
|
2986
|
+
# - serviceAccount:emailid - An email address that represents a service account.
|
2377
2987
|
# For example, serviceAccount:my-other-app@appspot.gserviceaccount.com .
|
2378
|
-
# - group:emailid
|
2988
|
+
# - group:emailid - An email address that represents a Google group. For example,
|
2379
2989
|
# group:admins@example.com.
|
2380
|
-
# - domain:domain
|
2990
|
+
# - domain:domain - A Google Apps domain name that represents all the users of
|
2381
2991
|
# that domain. For example, domain:google.com or domain:example.com.
|
2382
|
-
# - projectOwner:projectid
|
2992
|
+
# - projectOwner:projectid - Owners of the given project. For example,
|
2383
2993
|
# projectOwner:my-example-project
|
2384
|
-
# - projectEditor:projectid
|
2994
|
+
# - projectEditor:projectid - Editors of the given project. For example,
|
2385
2995
|
# projectEditor:my-example-project
|
2386
|
-
# - projectViewer:projectid
|
2996
|
+
# - projectViewer:projectid - Viewers of the given project. For example,
|
2387
2997
|
# projectViewer:my-example-project
|
2388
2998
|
# Corresponds to the JSON property `members`
|
2389
2999
|
# @return [Array<String>]
|
@@ -2394,23 +3004,23 @@ module Google
|
|
2394
3004
|
# ACLs, and legacy IAM roles, which do map directly to ACL permissions. All
|
2395
3005
|
# roles are of the format roles/storage.specificRole.
|
2396
3006
|
# The new IAM roles are:
|
2397
|
-
# - roles/storage.admin
|
2398
|
-
# - roles/storage.objectViewer
|
3007
|
+
# - roles/storage.admin - Full control of Google Cloud Storage resources.
|
3008
|
+
# - roles/storage.objectViewer - Read-Only access to Google Cloud Storage
|
2399
3009
|
# objects.
|
2400
|
-
# - roles/storage.objectCreator
|
3010
|
+
# - roles/storage.objectCreator - Access to create objects in Google Cloud
|
2401
3011
|
# Storage.
|
2402
|
-
# - roles/storage.objectAdmin
|
3012
|
+
# - roles/storage.objectAdmin - Full control of Google Cloud Storage objects.
|
2403
3013
|
# The legacy IAM roles are:
|
2404
|
-
# - roles/storage.legacyObjectReader
|
3014
|
+
# - roles/storage.legacyObjectReader - Read-only access to objects without
|
2405
3015
|
# listing. Equivalent to an ACL entry on an object with the READER role.
|
2406
|
-
# - roles/storage.legacyObjectOwner
|
3016
|
+
# - roles/storage.legacyObjectOwner - Read/write access to existing objects
|
2407
3017
|
# without listing. Equivalent to an ACL entry on an object with the OWNER role.
|
2408
|
-
# - roles/storage.legacyBucketReader
|
3018
|
+
# - roles/storage.legacyBucketReader - Read access to buckets with object
|
2409
3019
|
# listing. Equivalent to an ACL entry on a bucket with the READER role.
|
2410
|
-
# - roles/storage.legacyBucketWriter
|
3020
|
+
# - roles/storage.legacyBucketWriter - Read access to buckets with object
|
2411
3021
|
# listing/creation/deletion. Equivalent to an ACL entry on a bucket with the
|
2412
3022
|
# WRITER role.
|
2413
|
-
# - roles/storage.legacyBucketOwner
|
3023
|
+
# - roles/storage.legacyBucketOwner - Read and write access to existing buckets
|
2414
3024
|
# with object listing/creation/deletion. Equivalent to an ACL entry on a bucket
|
2415
3025
|
# with the OWNER role.
|
2416
3026
|
# Corresponds to the JSON property `role`
|
@@ -2430,6 +3040,59 @@ module Google
|
|
2430
3040
|
end
|
2431
3041
|
end
|
2432
3042
|
|
3043
|
+
# A Relocate Bucket request.
|
3044
|
+
class RelocateBucketRequest
|
3045
|
+
include Google::Apis::Core::Hashable
|
3046
|
+
|
3047
|
+
# The bucket's new custom placement configuration if relocating to a Custom Dual
|
3048
|
+
# Region.
|
3049
|
+
# Corresponds to the JSON property `destinationCustomPlacementConfig`
|
3050
|
+
# @return [Google::Apis::StorageV1::RelocateBucketRequest::DestinationCustomPlacementConfig]
|
3051
|
+
attr_accessor :destination_custom_placement_config
|
3052
|
+
|
3053
|
+
# The new location the bucket will be relocated to.
|
3054
|
+
# Corresponds to the JSON property `destinationLocation`
|
3055
|
+
# @return [String]
|
3056
|
+
attr_accessor :destination_location
|
3057
|
+
|
3058
|
+
# If true, validate the operation, but do not actually relocate the bucket.
|
3059
|
+
# Corresponds to the JSON property `validateOnly`
|
3060
|
+
# @return [Boolean]
|
3061
|
+
attr_accessor :validate_only
|
3062
|
+
alias_method :validate_only?, :validate_only
|
3063
|
+
|
3064
|
+
def initialize(**args)
|
3065
|
+
update!(**args)
|
3066
|
+
end
|
3067
|
+
|
3068
|
+
# Update properties of this object
|
3069
|
+
def update!(**args)
|
3070
|
+
@destination_custom_placement_config = args[:destination_custom_placement_config] if args.key?(:destination_custom_placement_config)
|
3071
|
+
@destination_location = args[:destination_location] if args.key?(:destination_location)
|
3072
|
+
@validate_only = args[:validate_only] if args.key?(:validate_only)
|
3073
|
+
end
|
3074
|
+
|
3075
|
+
# The bucket's new custom placement configuration if relocating to a Custom Dual
|
3076
|
+
# Region.
|
3077
|
+
class DestinationCustomPlacementConfig
|
3078
|
+
include Google::Apis::Core::Hashable
|
3079
|
+
|
3080
|
+
# The list of regional locations in which data is placed.
|
3081
|
+
# Corresponds to the JSON property `dataLocations`
|
3082
|
+
# @return [Array<String>]
|
3083
|
+
attr_accessor :data_locations
|
3084
|
+
|
3085
|
+
def initialize(**args)
|
3086
|
+
update!(**args)
|
3087
|
+
end
|
3088
|
+
|
3089
|
+
# Update properties of this object
|
3090
|
+
def update!(**args)
|
3091
|
+
@data_locations = args[:data_locations] if args.key?(:data_locations)
|
3092
|
+
end
|
3093
|
+
end
|
3094
|
+
end
|
3095
|
+
|
2433
3096
|
# A rewrite response.
|
2434
3097
|
class RewriteResponse
|
2435
3098
|
include Google::Apis::Core::Hashable
|
@@ -2522,26 +3185,26 @@ module Google
|
|
2522
3185
|
# The permissions held by the caller. Permissions are always of the format
|
2523
3186
|
# storage.resource.capability, where resource is one of buckets, objects, or
|
2524
3187
|
# managedFolders. The supported permissions are as follows:
|
2525
|
-
# - storage.buckets.delete
|
2526
|
-
# - storage.buckets.get
|
2527
|
-
# - storage.buckets.getIamPolicy
|
2528
|
-
# - storage.buckets.create
|
2529
|
-
# - storage.buckets.list
|
2530
|
-
# - storage.buckets.setIamPolicy
|
2531
|
-
# - storage.buckets.update
|
2532
|
-
# - storage.objects.delete
|
2533
|
-
# - storage.objects.get
|
2534
|
-
# - storage.objects.getIamPolicy
|
2535
|
-
# - storage.objects.create
|
2536
|
-
# - storage.objects.list
|
2537
|
-
# - storage.objects.setIamPolicy
|
2538
|
-
# - storage.objects.update
|
2539
|
-
# - storage.managedFolders.delete
|
2540
|
-
# - storage.managedFolders.get
|
2541
|
-
# - storage.managedFolders.getIamPolicy
|
2542
|
-
# - storage.managedFolders.create
|
2543
|
-
# - storage.managedFolders.list
|
2544
|
-
# - storage.managedFolders.setIamPolicy
|
3188
|
+
# - storage.buckets.delete - Delete bucket.
|
3189
|
+
# - storage.buckets.get - Read bucket metadata.
|
3190
|
+
# - storage.buckets.getIamPolicy - Read bucket IAM policy.
|
3191
|
+
# - storage.buckets.create - Create bucket.
|
3192
|
+
# - storage.buckets.list - List buckets.
|
3193
|
+
# - storage.buckets.setIamPolicy - Update bucket IAM policy.
|
3194
|
+
# - storage.buckets.update - Update bucket metadata.
|
3195
|
+
# - storage.objects.delete - Delete object.
|
3196
|
+
# - storage.objects.get - Read object data and metadata.
|
3197
|
+
# - storage.objects.getIamPolicy - Read object IAM policy.
|
3198
|
+
# - storage.objects.create - Create object.
|
3199
|
+
# - storage.objects.list - List objects.
|
3200
|
+
# - storage.objects.setIamPolicy - Update object IAM policy.
|
3201
|
+
# - storage.objects.update - Update object metadata.
|
3202
|
+
# - storage.managedFolders.delete - Delete managed folder.
|
3203
|
+
# - storage.managedFolders.get - Read managed folder metadata.
|
3204
|
+
# - storage.managedFolders.getIamPolicy - Read managed folder IAM policy.
|
3205
|
+
# - storage.managedFolders.create - Create managed folder.
|
3206
|
+
# - storage.managedFolders.list - List managed folders.
|
3207
|
+
# - storage.managedFolders.setIamPolicy - Update managed folder IAM policy.
|
2545
3208
|
# Corresponds to the JSON property `permissions`
|
2546
3209
|
# @return [Array<String>]
|
2547
3210
|
attr_accessor :permissions
|