google-cloud-resource_manager 0.24.1 → 0.25.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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9f88849cc4f19c2527e7c6f342b4a83d34ecf829
|
4
|
+
data.tar.gz: 972305f19dc8f9ae8f9dceb08d59fd2a2589ae4b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 565b86635fd2cf1e6f0547ec16d151cbaa0dfbafb342eca0906360b4b3d0ec1bbb228e8ca20911b7a7d9877397723363de36ab4ff3008267af159522a436cc7a
|
7
|
+
data.tar.gz: 7b6ce1daadffe47e4776367e3357bc116cf37564702ba3ec46d885fa9bd3ce1fcda81f05a70843da05fcce6b6531ffc51bff589e0fcef01b280e0a298764a929
|
@@ -62,13 +62,11 @@ module Google
|
|
62
62
|
# resource_manager = Google::Cloud::ResourceManager.new
|
63
63
|
# project = resource_manager.project "tokyo-rain-123"
|
64
64
|
#
|
65
|
-
#
|
66
|
-
#
|
67
|
-
#
|
68
|
-
#
|
69
|
-
#
|
70
|
-
#
|
71
|
-
# project.policy = policy # API call
|
65
|
+
# project.policy do |p|
|
66
|
+
# p.remove "roles/owner", "user:owner@example.com"
|
67
|
+
# p.add "roles/owner", "user:newowner@example.com"
|
68
|
+
# p.roles["roles/viewer"] = ["allUsers"]
|
69
|
+
# end
|
72
70
|
#
|
73
71
|
class Policy
|
74
72
|
##
|
@@ -102,11 +100,9 @@ module Google
|
|
102
100
|
# resource_manager = Google::Cloud::ResourceManager.new
|
103
101
|
# project = resource_manager.project "tokyo-rain-123"
|
104
102
|
#
|
105
|
-
#
|
106
|
-
#
|
107
|
-
#
|
108
|
-
#
|
109
|
-
# project.policy = policy # API call
|
103
|
+
# project.policy do |p|
|
104
|
+
# p.add "roles/owner", "user:newowner@example.com"
|
105
|
+
# end
|
110
106
|
#
|
111
107
|
def add role_name, member
|
112
108
|
role(role_name) << member
|
@@ -130,11 +126,9 @@ module Google
|
|
130
126
|
# resource_manager = Google::Cloud::ResourceManager.new
|
131
127
|
# project = resource_manager.project "tokyo-rain-123"
|
132
128
|
#
|
133
|
-
#
|
134
|
-
#
|
135
|
-
#
|
136
|
-
#
|
137
|
-
# project.policy = policy # API call
|
129
|
+
# project.policy do |p|
|
130
|
+
# p.remove "roles/owner", "user:owner@example.com"
|
131
|
+
# end
|
138
132
|
#
|
139
133
|
def remove role_name, member
|
140
134
|
role(role_name).delete member
|
@@ -157,28 +151,14 @@ module Google
|
|
157
151
|
# resource_manager = Google::Cloud::ResourceManager.new
|
158
152
|
# project = resource_manager.project "tokyo-rain-123"
|
159
153
|
#
|
160
|
-
# policy
|
161
|
-
#
|
162
|
-
#
|
154
|
+
# project.policy do |p|
|
155
|
+
# p.role("roles/viewer") << "user:viewer@example.com"
|
156
|
+
# end
|
163
157
|
#
|
164
158
|
def role role_name
|
165
159
|
roles[role_name] ||= []
|
166
160
|
end
|
167
161
|
|
168
|
-
##
|
169
|
-
# Returns a deep copy of the policy.
|
170
|
-
#
|
171
|
-
# @return [Policy]
|
172
|
-
#
|
173
|
-
def deep_dup
|
174
|
-
dup.tap do |p|
|
175
|
-
roles_dup = p.roles.each_with_object({}) do |(k, v), memo|
|
176
|
-
memo[k] = v.dup rescue value
|
177
|
-
end
|
178
|
-
p.instance_variable_set "@roles", roles_dup
|
179
|
-
end
|
180
|
-
end
|
181
|
-
|
182
162
|
##
|
183
163
|
# @private Convert the Policy to a
|
184
164
|
# Google::Apis::CloudresourcemanagerV1::Policy.
|
@@ -330,10 +330,6 @@ module Google
|
|
330
330
|
# @see https://cloud.google.com/resource-manager/reference/rest/v1beta1/projects/setIamPolicy
|
331
331
|
# projects.setIamPolicy
|
332
332
|
#
|
333
|
-
# @param [Boolean] force Force load the latest policy when `true`.
|
334
|
-
# Otherwise the policy will be memoized to reduce the number of API
|
335
|
-
# calls made. The default is `false`.
|
336
|
-
#
|
337
333
|
# @yield [policy] A block for updating the policy. The latest policy
|
338
334
|
# will be read from the service and passed to the block. After the
|
339
335
|
# block completes, the modified policy will be written to the service.
|
@@ -342,23 +338,13 @@ module Google
|
|
342
338
|
#
|
343
339
|
# @return [Policy] the current Cloud IAM Policy for this project
|
344
340
|
#
|
345
|
-
# @example
|
346
|
-
# require "google/cloud/resource_manager"
|
347
|
-
#
|
348
|
-
# resource_manager = Google::Cloud::ResourceManager.new
|
349
|
-
# project = resource_manager.project "tokyo-rain-123"
|
350
|
-
#
|
351
|
-
# policy = project.policy # API call
|
352
|
-
# policy_2 = project.policy # No API call
|
353
|
-
#
|
354
|
-
# @example Use `force` to retrieve the latest policy from the service:
|
341
|
+
# @example
|
355
342
|
# require "google/cloud/resource_manager"
|
356
343
|
#
|
357
344
|
# resource_manager = Google::Cloud::ResourceManager.new
|
358
345
|
# project = resource_manager.project "tokyo-rain-123"
|
359
346
|
#
|
360
|
-
# policy = project.policy
|
361
|
-
# policy_2 = project.policy force: true # API call
|
347
|
+
# policy = project.policy
|
362
348
|
#
|
363
349
|
# @example Update the policy by passing a block:
|
364
350
|
# require "google/cloud/resource_manager"
|
@@ -366,21 +352,17 @@ module Google
|
|
366
352
|
# resource_manager = Google::Cloud::ResourceManager.new
|
367
353
|
# project = resource_manager.project "tokyo-rain-123"
|
368
354
|
#
|
369
|
-
#
|
355
|
+
# project.policy do |p|
|
370
356
|
# p.add "roles/owner", "user:owner@example.com"
|
371
|
-
# end
|
372
|
-
#
|
373
|
-
def policy
|
374
|
-
|
375
|
-
|
376
|
-
|
377
|
-
|
378
|
-
|
379
|
-
|
380
|
-
return @policy unless block_given?
|
381
|
-
p = @policy.deep_dup
|
382
|
-
yield p
|
383
|
-
self.policy = p
|
357
|
+
# end
|
358
|
+
#
|
359
|
+
def policy
|
360
|
+
ensure_service!
|
361
|
+
gapi = service.get_policy project_id
|
362
|
+
policy = Policy.from_gapi gapi
|
363
|
+
return policy unless block_given?
|
364
|
+
yield policy
|
365
|
+
self.policy = policy
|
384
366
|
end
|
385
367
|
|
386
368
|
##
|
@@ -400,6 +382,8 @@ module Google
|
|
400
382
|
# @param [Policy] new_policy a new or modified Cloud IAM Policy for this
|
401
383
|
# project
|
402
384
|
#
|
385
|
+
# @return [Policy] the policy returned by the API update operation
|
386
|
+
#
|
403
387
|
# @example
|
404
388
|
# require "google/cloud/resource_manager"
|
405
389
|
#
|
@@ -415,9 +399,7 @@ module Google
|
|
415
399
|
def policy= new_policy
|
416
400
|
ensure_service!
|
417
401
|
gapi = service.set_policy project_id, new_policy.to_gapi
|
418
|
-
|
419
|
-
# This will go away when we add a ResourceManager::Policy class.
|
420
|
-
@policy = Policy.from_gapi gapi
|
402
|
+
Policy.from_gapi gapi
|
421
403
|
end
|
422
404
|
|
423
405
|
##
|
@@ -75,7 +75,7 @@ module Google
|
|
75
75
|
##
|
76
76
|
# Returns API::Project
|
77
77
|
def create_project project_id, name, labels
|
78
|
-
project_attrs = {
|
78
|
+
project_attrs = { project_id: project_id, name: name,
|
79
79
|
labels: labels }.delete_if { |_, v| v.nil? }
|
80
80
|
execute { service.create_project API::Project.new(project_attrs) }
|
81
81
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-cloud-resource_manager
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.25.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Moore
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2017-
|
12
|
+
date: 2017-06-01 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: google-cloud-core
|
@@ -187,7 +187,7 @@ files:
|
|
187
187
|
- lib/google/cloud/resource_manager/project/updater.rb
|
188
188
|
- lib/google/cloud/resource_manager/service.rb
|
189
189
|
- lib/google/cloud/resource_manager/version.rb
|
190
|
-
homepage:
|
190
|
+
homepage: https://github.com/GoogleCloudPlatform/google-cloud-ruby/tree/master/google-cloud-resource_manager
|
191
191
|
licenses:
|
192
192
|
- Apache-2.0
|
193
193
|
metadata: {}
|
@@ -207,7 +207,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
207
207
|
version: '0'
|
208
208
|
requirements: []
|
209
209
|
rubyforge_project:
|
210
|
-
rubygems_version: 2.6.
|
210
|
+
rubygems_version: 2.6.12
|
211
211
|
signing_key:
|
212
212
|
specification_version: 4
|
213
213
|
summary: API Client library for Google Cloud Resource Manager
|