google-cloud-storage 1.53.0 → 1.55.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 +15 -0
- data/lib/google/cloud/storage/bucket/cors.rb +2 -2
- data/lib/google/cloud/storage/bucket/list.rb +4 -2
- data/lib/google/cloud/storage/bucket.rb +30 -5
- data/lib/google/cloud/storage/file/signer_v2.rb +3 -3
- data/lib/google/cloud/storage/file/signer_v4.rb +4 -4
- data/lib/google/cloud/storage/file.rb +4 -6
- data/lib/google/cloud/storage/project.rb +58 -6
- data/lib/google/cloud/storage/service.rb +21 -11
- data/lib/google/cloud/storage/version.rb +1 -1
- data/lib/google/cloud/storage.rb +4 -4
- data/lib/google-cloud-storage.rb +8 -10
- metadata +10 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b88969084fc97975cbd8423d11ea1d02c6a0d4ef77361214cfa86b225d6e2721
|
4
|
+
data.tar.gz: 53efca6d4100e617c4cb435091d4c8a4912b7520eecbe4a643ee50b161c34c85
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3842107e2b0e9eafd47eff5df012f9f133ebb510c3017af5bbc804b40b254d8db8d0b5ce1eb5da7d28ee673192a10dfe6114f1532038b128b84fbc06843d299d
|
7
|
+
data.tar.gz: 17cd1eefbadbdab56c424a013a17d64e1747d0fbc042a73dbfaa6f47bf0b416bdbc40928e8712633c56833275881852cd932c9b1c668fc81cd2950487099c2e6
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,20 @@
|
|
1
1
|
# Release History
|
2
2
|
|
3
|
+
### 1.55.0 (2025-02-13)
|
4
|
+
|
5
|
+
#### Features
|
6
|
+
|
7
|
+
* Soft deleted Bucket Restore ([#28138](https://github.com/googleapis/google-cloud-ruby/issues/28138))
|
8
|
+
#### Documentation
|
9
|
+
|
10
|
+
* updating the encryption key GCS sample ([#28815](https://github.com/googleapis/google-cloud-ruby/issues/28815))
|
11
|
+
|
12
|
+
### 1.54.0 (2024-12-11)
|
13
|
+
|
14
|
+
#### Features
|
15
|
+
|
16
|
+
* Updated required Ruby version to 3.0 or later ([#27599](https://github.com/googleapis/google-cloud-ruby/issues/27599))
|
17
|
+
|
3
18
|
### 1.53.0 (2024-12-04)
|
4
19
|
|
5
20
|
#### Features
|
@@ -182,7 +182,7 @@ module Google
|
|
182
182
|
@origin = Array(origin)
|
183
183
|
@methods = Array(methods)
|
184
184
|
@headers = Array(headers)
|
185
|
-
@max_age =
|
185
|
+
@max_age = max_age || 1800
|
186
186
|
end
|
187
187
|
|
188
188
|
# @private
|
@@ -195,7 +195,7 @@ module Google
|
|
195
195
|
|
196
196
|
# @private
|
197
197
|
def self.from_gapi gapi
|
198
|
-
new gapi.origin.dup, gapi.http_method.dup,
|
198
|
+
new gapi.origin.dup, gapi.http_method.dup,
|
199
199
|
headers: gapi.response_header.dup,
|
200
200
|
max_age: gapi.max_age_seconds
|
201
201
|
end
|
@@ -72,7 +72,8 @@ module Google
|
|
72
72
|
return nil unless next?
|
73
73
|
ensure_service!
|
74
74
|
gapi = @service.list_buckets prefix: @prefix, token: @token,
|
75
|
-
max: @max, user_project: @user_project
|
75
|
+
max: @max, user_project: @user_project,
|
76
|
+
soft_deleted: @soft_deleted
|
76
77
|
Bucket::List.from_gapi gapi, @service, @prefix, @max,
|
77
78
|
user_project: @user_project
|
78
79
|
end
|
@@ -146,7 +147,7 @@ module Google
|
|
146
147
|
# @private New Bucket::List from a Google API Client
|
147
148
|
# Google::Apis::StorageV1::Buckets object.
|
148
149
|
def self.from_gapi gapi_list, service, prefix = nil, max = nil,
|
149
|
-
user_project: nil
|
150
|
+
user_project: nil, soft_deleted: nil
|
150
151
|
buckets = new(Array(gapi_list.items).map do |gapi_object|
|
151
152
|
Bucket.from_gapi gapi_object, service, user_project: user_project
|
152
153
|
end)
|
@@ -155,6 +156,7 @@ module Google
|
|
155
156
|
buckets.instance_variable_set :@prefix, prefix
|
156
157
|
buckets.instance_variable_set :@max, max
|
157
158
|
buckets.instance_variable_set :@user_project, user_project
|
159
|
+
buckets.instance_variable_set :@soft_deleted, soft_deleted
|
158
160
|
buckets
|
159
161
|
end
|
160
162
|
|
@@ -982,7 +982,7 @@ module Google
|
|
982
982
|
#
|
983
983
|
def uniform_bucket_level_access= new_uniform_bucket_level_access
|
984
984
|
@gapi.iam_configuration ||= API::Bucket::IamConfiguration.new
|
985
|
-
@gapi.iam_configuration.uniform_bucket_level_access ||=
|
985
|
+
@gapi.iam_configuration.uniform_bucket_level_access ||=
|
986
986
|
API::Bucket::IamConfiguration::UniformBucketLevelAccess.new
|
987
987
|
@gapi.iam_configuration.uniform_bucket_level_access.enabled = new_uniform_bucket_level_access
|
988
988
|
patch_gapi! :iam_configuration
|
@@ -2280,6 +2280,31 @@ module Google
|
|
2280
2280
|
end
|
2281
2281
|
end
|
2282
2282
|
|
2283
|
+
# Fetches generation of the bucket
|
2284
|
+
# @example
|
2285
|
+
# require "google/cloud/storage"
|
2286
|
+
# storage = Google::Cloud::Storage.new
|
2287
|
+
# bucket = storage.bucket "my-bucket"
|
2288
|
+
# generation= bucket.generation
|
2289
|
+
def generation
|
2290
|
+
@gapi.generation
|
2291
|
+
end
|
2292
|
+
|
2293
|
+
# Fetches soft_delete_time of a soft deleted bucket
|
2294
|
+
# @example
|
2295
|
+
# bucket.delete
|
2296
|
+
# bucket.soft_delete_time
|
2297
|
+
def soft_delete_time
|
2298
|
+
@gapi.soft_delete_time
|
2299
|
+
end
|
2300
|
+
|
2301
|
+
# Fetches hard_delete_time of a soft deleted bucket
|
2302
|
+
# @example
|
2303
|
+
# bucket.hard_delete_time
|
2304
|
+
def hard_delete_time
|
2305
|
+
@gapi.hard_delete_time
|
2306
|
+
end
|
2307
|
+
|
2283
2308
|
##
|
2284
2309
|
# Generate a PostObject that includes the fields and URL to
|
2285
2310
|
# upload objects via HTML forms.
|
@@ -3187,9 +3212,9 @@ module Google
|
|
3187
3212
|
attributes.flatten!
|
3188
3213
|
return if attributes.empty?
|
3189
3214
|
ensure_service!
|
3190
|
-
patch_args =
|
3215
|
+
patch_args = attributes.to_h do |attr|
|
3191
3216
|
[attr, @gapi.send(attr)]
|
3192
|
-
end
|
3217
|
+
end
|
3193
3218
|
patch_gapi = API::Bucket.new(**patch_args)
|
3194
3219
|
@gapi = service.patch_bucket name,
|
3195
3220
|
patch_gapi,
|
@@ -3207,9 +3232,9 @@ module Google
|
|
3207
3232
|
attributes.flatten!
|
3208
3233
|
return if attributes.empty?
|
3209
3234
|
ensure_service!
|
3210
|
-
update_args =
|
3235
|
+
update_args = attributes.to_h do |attr|
|
3211
3236
|
[attr, @gapi.send(attr)]
|
3212
|
-
end
|
3237
|
+
end
|
3213
3238
|
update_gapi = API::Bucket.new(**update_args)
|
3214
3239
|
@gapi = service.update_bucket name,
|
3215
3240
|
update_gapi,
|
@@ -92,7 +92,7 @@ module Google
|
|
92
92
|
|
93
93
|
def error_msg attr_name
|
94
94
|
"Service account credentials '#{attr_name}' is missing. To generate service account credentials " \
|
95
|
-
|
95
|
+
"see https://cloud.google.com/iam/docs/service-accounts"
|
96
96
|
end
|
97
97
|
|
98
98
|
def post_object options
|
@@ -145,8 +145,8 @@ module Google
|
|
145
145
|
|
146
146
|
def generate_signed_url issuer, signed_string, expires, query
|
147
147
|
url = "#{ext_url}?GoogleAccessId=#{url_escape issuer}" \
|
148
|
-
|
149
|
-
|
148
|
+
"&Expires=#{expires}" \
|
149
|
+
"&Signature=#{url_escape signed_string}"
|
150
150
|
|
151
151
|
query&.each do |name, value|
|
152
152
|
url << "&#{url_escape name}=#{url_escape value}"
|
@@ -131,7 +131,7 @@ module Google
|
|
131
131
|
# methods below are public visibility only for unit testing
|
132
132
|
# rubocop:disable Style/StringLiterals
|
133
133
|
def escape_characters str
|
134
|
-
str.
|
134
|
+
str.chars.map do |s|
|
135
135
|
if s.ascii_only?
|
136
136
|
case s
|
137
137
|
when "\\"
|
@@ -207,7 +207,7 @@ module Google
|
|
207
207
|
|
208
208
|
def error_msg attr_name
|
209
209
|
"Service account credentials '#{attr_name}' is missing. To generate service account credentials " \
|
210
|
-
|
210
|
+
"see https://cloud.google.com/iam/docs/service-accounts"
|
211
211
|
end
|
212
212
|
|
213
213
|
def service_account_signer signer
|
@@ -243,7 +243,7 @@ module Google
|
|
243
243
|
headers_arr = canonical_headers.map do |k, v|
|
244
244
|
[k.downcase, v.strip.gsub(/[^\S\t]+/, " ").gsub(/\t+/, " ")]
|
245
245
|
end
|
246
|
-
canonical_headers =
|
246
|
+
canonical_headers = headers_arr.to_h
|
247
247
|
canonical_headers["host"] = host_name virtual_hosted_style, bucket_bound_hostname
|
248
248
|
|
249
249
|
canonical_headers = canonical_headers.sort_by(&:first).to_h
|
@@ -295,7 +295,7 @@ module Google
|
|
295
295
|
##
|
296
296
|
# The external path to the bucket, with trailing slash.
|
297
297
|
def bucket_path path_style
|
298
|
-
|
298
|
+
"/#{@bucket_name}/" if path_style
|
299
299
|
end
|
300
300
|
|
301
301
|
##
|
@@ -2072,9 +2072,9 @@ module Google
|
|
2072
2072
|
def self.gapi_from_attrs gapi, attributes
|
2073
2073
|
attributes.flatten!
|
2074
2074
|
return nil if attributes.empty?
|
2075
|
-
attr_params =
|
2076
|
-
|
2077
|
-
|
2075
|
+
attr_params = attributes.to_h do |attr|
|
2076
|
+
[attr, gapi.send(attr)]
|
2077
|
+
end
|
2078
2078
|
# Sending nil metadata results in an Apiary runtime error:
|
2079
2079
|
# NoMethodError: undefined method `each' for nil:NilClass
|
2080
2080
|
attr_params.reject! { |k, v| k == :metadata && v.nil? }
|
@@ -2240,10 +2240,8 @@ module Google
|
|
2240
2240
|
[dest_bucket, dest_path]
|
2241
2241
|
end
|
2242
2242
|
|
2243
|
-
# rubocop:disable Style/MultipleComparison
|
2244
|
-
|
2245
2243
|
def verify_file! file, verify = :md5
|
2246
|
-
verify_md5 = verify == :md5
|
2244
|
+
verify_md5 = verify == :md5 || verify == :all
|
2247
2245
|
verify_crc32c = verify == :crc32c || verify == :all
|
2248
2246
|
Verifier.verify_md5! self, file if verify_md5 && md5
|
2249
2247
|
Verifier.verify_crc32c! self, file if verify_crc32c && crc32c
|
@@ -99,8 +99,7 @@ module Google
|
|
99
99
|
# @return [String] The service account email address.
|
100
100
|
#
|
101
101
|
def service_account_email
|
102
|
-
@service_account_email ||=
|
103
|
-
service.project_service_account.email_address
|
102
|
+
@service_account_email ||= service.project_service_account.email_address
|
104
103
|
end
|
105
104
|
|
106
105
|
##
|
@@ -193,11 +192,20 @@ module Google
|
|
193
192
|
# puts bucket.name
|
194
193
|
# end
|
195
194
|
#
|
196
|
-
|
195
|
+
# @example Retrieve soft deleted buckets
|
196
|
+
# require "google/cloud/storage"
|
197
|
+
#
|
198
|
+
# storage = Google::Cloud::Storage.new
|
199
|
+
#
|
200
|
+
# soft_deleted_buckets = storage.buckets soft_deleted: true
|
201
|
+
# soft_deleted_buckets.each do |bucket|
|
202
|
+
# puts bucket.name
|
203
|
+
# end
|
204
|
+
def buckets prefix: nil, token: nil, max: nil, user_project: nil, soft_deleted: nil
|
197
205
|
gapi = service.list_buckets \
|
198
|
-
prefix: prefix, token: token, max: max, user_project: user_project
|
206
|
+
prefix: prefix, token: token, max: max, user_project: user_project, soft_deleted: soft_deleted
|
199
207
|
Bucket::List.from_gapi \
|
200
|
-
gapi, service, prefix, max, user_project: user_project
|
208
|
+
gapi, service, prefix, max, user_project: user_project, soft_deleted: soft_deleted
|
201
209
|
end
|
202
210
|
alias find_buckets buckets
|
203
211
|
|
@@ -223,6 +231,10 @@ module Google
|
|
223
231
|
# account, transit costs will be billed to the given project. This
|
224
232
|
# parameter is required with requester pays-enabled buckets. The
|
225
233
|
# default is `nil`.
|
234
|
+
# @param [Integer] generation generation no of bucket
|
235
|
+
# on whether the bucket's current metageneration matches the given value.
|
236
|
+
# @param [Boolean] soft_deleted If true, returns the soft-deleted bucket.
|
237
|
+
# This parameter is required if generation is specified.
|
226
238
|
#
|
227
239
|
# The value provided will be applied to all operations on the returned
|
228
240
|
# bucket instance and its files.
|
@@ -256,9 +268,20 @@ module Google
|
|
256
268
|
# bucket = storage.bucket "other-project-bucket",
|
257
269
|
# user_project: "my-other-project"
|
258
270
|
# files = bucket.files # Billed to "my-other-project"
|
271
|
+
# @example With `soft_deleted` set to true and generation specified:
|
272
|
+
# require "google/cloud/storage"
|
273
|
+
#
|
274
|
+
# storage = Google::Cloud::Storage.new
|
275
|
+
#
|
276
|
+
# bucket = storage.bucket "my-bucket",
|
277
|
+
# soft_deleted: true,
|
278
|
+
# generation: 1234567889
|
279
|
+
# puts bucket.name
|
259
280
|
#
|
260
281
|
def bucket bucket_name,
|
261
282
|
skip_lookup: false,
|
283
|
+
generation: nil,
|
284
|
+
soft_deleted: nil,
|
262
285
|
if_metageneration_match: nil,
|
263
286
|
if_metageneration_not_match: nil,
|
264
287
|
user_project: nil
|
@@ -269,7 +292,10 @@ module Google
|
|
269
292
|
gapi = service.get_bucket bucket_name,
|
270
293
|
if_metageneration_match: if_metageneration_match,
|
271
294
|
if_metageneration_not_match: if_metageneration_not_match,
|
272
|
-
user_project: user_project
|
295
|
+
user_project: user_project,
|
296
|
+
soft_deleted: soft_deleted,
|
297
|
+
generation: generation
|
298
|
+
|
273
299
|
Bucket.from_gapi gapi, service, user_project: user_project
|
274
300
|
rescue Google::Cloud::NotFoundError
|
275
301
|
nil
|
@@ -554,6 +580,32 @@ module Google
|
|
554
580
|
max: max, user_project: user_project
|
555
581
|
end
|
556
582
|
|
583
|
+
##
|
584
|
+
# Restores a soft deleted bucket with bucket name and generation.
|
585
|
+
#
|
586
|
+
# @param [String] bucket_name Name of the bucket.
|
587
|
+
# @param [Fixnum] generation Generation of the bucket.
|
588
|
+
#
|
589
|
+
# @return [Google::Cloud::Storage::Bucket, nil] Returns nil if bucket
|
590
|
+
# does not exist
|
591
|
+
#
|
592
|
+
# @example
|
593
|
+
# require "google/cloud/storage"
|
594
|
+
#
|
595
|
+
# storage = Google::Cloud::Storage.new
|
596
|
+
# generation= 123
|
597
|
+
#
|
598
|
+
# bucket = storage.restore_bucket "my-bucket", generation
|
599
|
+
# puts bucket.name
|
600
|
+
#
|
601
|
+
def restore_bucket bucket_name,
|
602
|
+
generation,
|
603
|
+
options: {}
|
604
|
+
gapi = service.restore_bucket bucket_name, generation,
|
605
|
+
options: options
|
606
|
+
Bucket.from_gapi gapi, service
|
607
|
+
end
|
608
|
+
|
557
609
|
##
|
558
610
|
# Generates a signed URL. See [Signed
|
559
611
|
# URLs](https://cloud.google.com/storage/docs/access-control/signed-urls)
|
@@ -55,15 +55,14 @@ module Google
|
|
55
55
|
@credentials = credentials
|
56
56
|
@service = API::StorageService.new
|
57
57
|
@service.client_options.application_name = "gcloud-ruby"
|
58
|
-
@service.client_options.application_version =
|
59
|
-
Google::Cloud::Storage::VERSION
|
58
|
+
@service.client_options.application_version = Google::Cloud::Storage::VERSION
|
60
59
|
@service.client_options.open_timeout_sec = (open_timeout || timeout)
|
61
60
|
@service.client_options.read_timeout_sec = (read_timeout || timeout)
|
62
61
|
@service.client_options.send_timeout_sec = (send_timeout || timeout)
|
63
62
|
@service.client_options.transparent_gzip_decompression = false
|
64
63
|
@service.request_options.retries = retries || 3
|
65
64
|
@service.request_options.header ||= {}
|
66
|
-
@service.request_options.header["x-goog-api-client"] =
|
65
|
+
@service.request_options.header["x-goog-api-client"] =
|
67
66
|
"gl-ruby/#{RUBY_VERSION} gccl/#{Google::Cloud::Storage::VERSION}"
|
68
67
|
@service.request_options.header["Accept-Encoding"] = "gzip"
|
69
68
|
@service.request_options.quota_project = quota_project if quota_project
|
@@ -97,11 +96,12 @@ module Google
|
|
97
96
|
|
98
97
|
##
|
99
98
|
# Retrieves a list of buckets for the given project.
|
100
|
-
def list_buckets prefix: nil, token: nil, max: nil, user_project: nil, options: {}
|
99
|
+
def list_buckets prefix: nil, token: nil, max: nil, user_project: nil, soft_deleted: nil, options: {}
|
101
100
|
execute do
|
102
101
|
service.list_buckets \
|
103
102
|
@project, prefix: prefix, page_token: token, max_results: max,
|
104
|
-
user_project: user_project(user_project),
|
103
|
+
user_project: user_project(user_project),
|
104
|
+
soft_deleted: soft_deleted, options: options
|
105
105
|
end
|
106
106
|
end
|
107
107
|
|
@@ -112,12 +112,16 @@ module Google
|
|
112
112
|
if_metageneration_match: nil,
|
113
113
|
if_metageneration_not_match: nil,
|
114
114
|
user_project: nil,
|
115
|
+
soft_deleted: nil,
|
116
|
+
generation: nil,
|
115
117
|
options: {}
|
116
118
|
execute do
|
117
119
|
service.get_bucket bucket_name,
|
118
120
|
if_metageneration_match: if_metageneration_match,
|
119
121
|
if_metageneration_not_match: if_metageneration_not_match,
|
120
122
|
user_project: user_project(user_project),
|
123
|
+
soft_deleted: soft_deleted,
|
124
|
+
generation: generation,
|
121
125
|
options: options
|
122
126
|
end
|
123
127
|
end
|
@@ -543,7 +547,6 @@ module Google
|
|
543
547
|
if_metageneration_match: nil,
|
544
548
|
user_project: nil,
|
545
549
|
options: {}
|
546
|
-
|
547
550
|
source_objects = compose_file_source_objects source_files, if_source_generation_match
|
548
551
|
compose_req = Google::Apis::StorageV1::ComposeRequest.new source_objects: source_objects,
|
549
552
|
destination: destination_gapi
|
@@ -638,7 +641,6 @@ module Google
|
|
638
641
|
if_metageneration_not_match: nil,
|
639
642
|
user_project: nil,
|
640
643
|
options: {}
|
641
|
-
|
642
644
|
if options[:retries].nil?
|
643
645
|
is_idempotent = retry? generation: generation, if_generation_match: if_generation_match
|
644
646
|
options = is_idempotent ? {} : { retries: 0 }
|
@@ -656,6 +658,17 @@ module Google
|
|
656
658
|
end
|
657
659
|
end
|
658
660
|
|
661
|
+
##
|
662
|
+
# Restore soft deleted bucket
|
663
|
+
def restore_bucket bucket_name,
|
664
|
+
generation,
|
665
|
+
options: {}
|
666
|
+
execute do
|
667
|
+
service.restore_bucket bucket_name, generation,
|
668
|
+
options: options
|
669
|
+
end
|
670
|
+
end
|
671
|
+
|
659
672
|
##
|
660
673
|
# Restores a soft-deleted object.
|
661
674
|
def restore_file bucket_name,
|
@@ -670,7 +683,6 @@ module Google
|
|
670
683
|
user_project: nil,
|
671
684
|
fields: nil,
|
672
685
|
options: {}
|
673
|
-
|
674
686
|
if options[:retries].nil?
|
675
687
|
is_idempotent = retry? generation: generation, if_generation_match: if_generation_match
|
676
688
|
options = is_idempotent ? {} : { retries: 0 }
|
@@ -738,7 +750,6 @@ module Google
|
|
738
750
|
# Returns Google::Apis::StorageV1::HmacKey.
|
739
751
|
def create_hmac_key service_account_email, project_id: nil,
|
740
752
|
user_project: nil, options: {}
|
741
|
-
|
742
753
|
if options[:retries].nil?
|
743
754
|
options = options.merge({ retries: 0 })
|
744
755
|
end
|
@@ -899,8 +910,7 @@ module Google
|
|
899
910
|
headers = (options[:header] ||= {})
|
900
911
|
headers["x-goog-#{source}encryption-algorithm"] = "AES256"
|
901
912
|
headers["x-goog-#{source}encryption-key"] = Base64.strict_encode64 key
|
902
|
-
headers["x-goog-#{source}encryption-key-sha256"] =
|
903
|
-
Base64.strict_encode64 key_sha256
|
913
|
+
headers["x-goog-#{source}encryption-key-sha256"] = Base64.strict_encode64 key_sha256
|
904
914
|
options
|
905
915
|
end
|
906
916
|
|
data/lib/google/cloud/storage.rb
CHANGED
@@ -98,11 +98,11 @@ module Google
|
|
98
98
|
scope ||= configure.scope
|
99
99
|
retries ||= configure.retries
|
100
100
|
timeout ||= configure.timeout
|
101
|
-
open_timeout ||=
|
102
|
-
read_timeout ||=
|
103
|
-
send_timeout ||=
|
101
|
+
open_timeout ||= configure.open_timeout || timeout
|
102
|
+
read_timeout ||= configure.read_timeout || timeout
|
103
|
+
send_timeout ||= configure.send_timeout || timeout
|
104
104
|
endpoint ||= configure.endpoint
|
105
|
-
credentials ||=
|
105
|
+
credentials ||= keyfile || default_credentials(scope: scope)
|
106
106
|
max_elapsed_time ||= configure.max_elapsed_time
|
107
107
|
base_interval ||= configure.base_interval
|
108
108
|
max_interval ||= configure.max_interval
|
data/lib/google-cloud-storage.rb
CHANGED
@@ -79,11 +79,11 @@ module Google
|
|
79
79
|
def storage scope: nil, retries: nil, timeout: nil, open_timeout: nil, read_timeout: nil, send_timeout: nil,
|
80
80
|
max_elapsed_time: nil, base_interval: nil, max_interval: nil, multiplier: nil, upload_chunk_size: nil
|
81
81
|
Google::Cloud.storage @project, @keyfile, scope: scope,
|
82
|
-
retries:
|
83
|
-
timeout:
|
84
|
-
open_timeout:
|
85
|
-
read_timeout:
|
86
|
-
send_timeout:
|
82
|
+
retries: retries || @retries,
|
83
|
+
timeout: timeout || @timeout,
|
84
|
+
open_timeout: open_timeout || timeout,
|
85
|
+
read_timeout: read_timeout || timeout,
|
86
|
+
send_timeout: send_timeout || timeout,
|
87
87
|
max_elapsed_time: max_elapsed_time,
|
88
88
|
base_interval: base_interval,
|
89
89
|
max_interval: max_interval,
|
@@ -149,9 +149,9 @@ module Google
|
|
149
149
|
scope: scope,
|
150
150
|
retries: retries,
|
151
151
|
timeout: timeout,
|
152
|
-
open_timeout:
|
153
|
-
read_timeout:
|
154
|
-
send_timeout:
|
152
|
+
open_timeout: open_timeout || timeout,
|
153
|
+
read_timeout: read_timeout || timeout,
|
154
|
+
send_timeout: send_timeout || timeout,
|
155
155
|
max_elapsed_time: max_elapsed_time,
|
156
156
|
base_interval: base_interval,
|
157
157
|
max_interval: max_interval,
|
@@ -162,7 +162,6 @@ module Google
|
|
162
162
|
end
|
163
163
|
|
164
164
|
# Set the default storage configuration
|
165
|
-
# rubocop:disable Metrics/BlockLength
|
166
165
|
Google::Cloud.configure.add_config! :storage do |config|
|
167
166
|
default_project = Google::Cloud::Config.deferred do
|
168
167
|
ENV["STORAGE_PROJECT"]
|
@@ -195,4 +194,3 @@ Google::Cloud.configure.add_config! :storage do |config|
|
|
195
194
|
config.add_field! :endpoint, nil, match: String, allow_nil: true
|
196
195
|
config.add_field! :universe_domain, nil, match: String, allow_nil: true
|
197
196
|
end
|
198
|
-
# rubocop:enable Metrics/BlockLength
|
metadata
CHANGED
@@ -1,15 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-cloud-storage
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.55.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Moore
|
8
8
|
- Chris Smith
|
9
|
-
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2025-02-13 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: google-cloud-core
|
@@ -57,16 +56,16 @@ dependencies:
|
|
57
56
|
name: google-apis-storage_v1
|
58
57
|
requirement: !ruby/object:Gem::Requirement
|
59
58
|
requirements:
|
60
|
-
- - "
|
59
|
+
- - ">="
|
61
60
|
- !ruby/object:Gem::Version
|
62
|
-
version: '0.
|
61
|
+
version: '0.42'
|
63
62
|
type: :runtime
|
64
63
|
prerelease: false
|
65
64
|
version_requirements: !ruby/object:Gem::Requirement
|
66
65
|
requirements:
|
67
|
-
- - "
|
66
|
+
- - ">="
|
68
67
|
- !ruby/object:Gem::Version
|
69
|
-
version: '0.
|
68
|
+
version: '0.42'
|
70
69
|
- !ruby/object:Gem::Dependency
|
71
70
|
name: googleauth
|
72
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -129,14 +128,14 @@ dependencies:
|
|
129
128
|
requirements:
|
130
129
|
- - "~>"
|
131
130
|
- !ruby/object:Gem::Version
|
132
|
-
version: 1.
|
131
|
+
version: 1.30.0
|
133
132
|
type: :development
|
134
133
|
prerelease: false
|
135
134
|
version_requirements: !ruby/object:Gem::Requirement
|
136
135
|
requirements:
|
137
136
|
- - "~>"
|
138
137
|
- !ruby/object:Gem::Version
|
139
|
-
version: 1.
|
138
|
+
version: 1.30.0
|
140
139
|
- !ruby/object:Gem::Dependency
|
141
140
|
name: minitest
|
142
141
|
requirement: !ruby/object:Gem::Requirement
|
@@ -325,7 +324,6 @@ homepage: https://github.com/googleapis/google-cloud-ruby/tree/master/google-clo
|
|
325
324
|
licenses:
|
326
325
|
- Apache-2.0
|
327
326
|
metadata: {}
|
328
|
-
post_install_message:
|
329
327
|
rdoc_options: []
|
330
328
|
require_paths:
|
331
329
|
- lib
|
@@ -333,15 +331,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
333
331
|
requirements:
|
334
332
|
- - ">="
|
335
333
|
- !ruby/object:Gem::Version
|
336
|
-
version:
|
334
|
+
version: 3.0.0
|
337
335
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
338
336
|
requirements:
|
339
337
|
- - ">="
|
340
338
|
- !ruby/object:Gem::Version
|
341
339
|
version: '0'
|
342
340
|
requirements: []
|
343
|
-
rubygems_version: 3.
|
344
|
-
signing_key:
|
341
|
+
rubygems_version: 3.6.3
|
345
342
|
specification_version: 4
|
346
343
|
summary: API Client library for Google Cloud Storage
|
347
344
|
test_files: []
|