google-cloud-resource_manager 0.30.0 → 0.30.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.yardopts +10 -1
- data/README.md +26 -16
- data/lib/google-cloud-resource_manager.rb +4 -4
- data/lib/google/cloud/resource_manager.rb +3 -225
- data/lib/google/cloud/resource_manager/version.rb +1 -1
- metadata +20 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bd0b1f48311db4574904ff3a47c9837ea0d566a51feca6689cfe93f557385f01
|
4
|
+
data.tar.gz: c4765b14fa28b1f08de397ae14cce5be61b6f97cf52e961e149a29323b75b313
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: db337590de2584a3f25ee8520bd4805fe549074e4452cdf8e7c138584839f9c602deeef9ee766ca4089c9b7e160ee53c00db375f9e67131b056e47db45752237
|
7
|
+
data.tar.gz: 63830bf855958324c46cc9e99ce340bf7e89421ea37d8092dde767bca23f6936ec223e5c7d969220fdcc2f7b5453c31a41bfedbd9442c1b74539495cb6062260
|
data/.yardopts
CHANGED
@@ -1,7 +1,16 @@
|
|
1
1
|
--no-private
|
2
2
|
--title=Google Cloud Resource Manager
|
3
3
|
--markup markdown
|
4
|
+
--markup-provider redcarpet
|
5
|
+
--main OVERVIEW.md
|
4
6
|
|
5
7
|
./lib/**/*.rb
|
6
8
|
-
|
7
|
-
|
9
|
+
OVERVIEW.md
|
10
|
+
AUTHENTICATION.md
|
11
|
+
LOGGING.md
|
12
|
+
CONTRIBUTING.md
|
13
|
+
TROUBLESHOOTING.md
|
14
|
+
CHANGELOG.md
|
15
|
+
CODE_OF_CONDUCT.md
|
16
|
+
LICENSE
|
data/README.md
CHANGED
@@ -9,7 +9,7 @@ programmatically manage container resources such as Organizations and Projects,
|
|
9
9
|
* Delete projects
|
10
10
|
* Undelete, or recover, projects that you don't want to delete
|
11
11
|
|
12
|
-
- [google-cloud-resource_manager API documentation](http://googlecloudplatform.github.io/google-cloud-ruby
|
12
|
+
- [google-cloud-resource_manager API documentation](http://googlecloudplatform.github.io/google-cloud-ruby/docs/google-cloud-resource_manager/latest)
|
13
13
|
- [google-cloud-resource_manager on RubyGems](https://rubygems.org/gems/google-cloud-resource_manager)
|
14
14
|
- [Google Cloud Resource Manager documentation](https://cloud.google.com/resource-manager/)
|
15
15
|
|
@@ -36,7 +36,7 @@ Also make sure all environment variables are cleared of any
|
|
36
36
|
service account credentials. Then google-cloud-resource_manager will be able to detect the user
|
37
37
|
authentication and connect with those credentials.
|
38
38
|
|
39
|
-
Instructions and configuration options are covered in the [Authentication Guide](https://googlecloudplatform.github.io/google-cloud-ruby
|
39
|
+
Instructions and configuration options are covered in the [Authentication Guide](https://googlecloudplatform.github.io/google-cloud-ruby/docs/google-cloud-resource_manager/latest/file.AUTHENTICATION).
|
40
40
|
|
41
41
|
## Example
|
42
42
|
|
@@ -62,7 +62,7 @@ projects = resource_manager.projects filter: "labels.env:production"
|
|
62
62
|
|
63
63
|
## Enabling Logging
|
64
64
|
|
65
|
-
To enable logging for this library, set the logger for the underlying [Google API Client](https://github.com/google/google-api-ruby-client/blob/master/README.md#logging) library. The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/stdlib-2.4.0/libdoc/logger/rdoc/Logger.html) as shown below, or a [`Google::Cloud::Logging::Logger`](https://googlecloudplatform.github.io/google-cloud-ruby
|
65
|
+
To enable logging for this library, set the logger for the underlying [Google API Client](https://github.com/google/google-api-ruby-client/blob/master/README.md#logging) library. The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/stdlib-2.4.0/libdoc/logger/rdoc/Logger.html) as shown below, or a [`Google::Cloud::Logging::Logger`](https://googlecloudplatform.github.io/google-cloud-ruby/docs/google-cloud-logging/latest/Google/Cloud/Logging/Logger) that will write logs to [Stackdriver Logging](https://cloud.google.com/logging/).
|
66
66
|
|
67
67
|
If you do not set the logger explicitly and your application is running in a Rails environment, it will default to `Rails.logger`. Otherwise, if you do not set the logger and you are not using Rails, logging is disabled by default.
|
68
68
|
|
@@ -80,34 +80,44 @@ Google::Apis.logger = my_logger
|
|
80
80
|
|
81
81
|
## Supported Ruby Versions
|
82
82
|
|
83
|
-
This library is supported on Ruby 2.
|
83
|
+
This library is supported on Ruby 2.3+.
|
84
84
|
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
85
|
+
Google provides official support for Ruby versions that are actively supported
|
86
|
+
by Ruby Core—that is, Ruby versions that are either in normal maintenance or in
|
87
|
+
security maintenance, and not end of life. Currently, this means Ruby 2.3 and
|
88
|
+
later. Older versions of Ruby _may_ still work, but are unsupported and not
|
89
|
+
recommended. See https://www.ruby-lang.org/en/downloads/branches/ for details
|
90
|
+
about the Ruby support schedule.
|
91
91
|
|
92
92
|
## Versioning
|
93
93
|
|
94
94
|
This library follows [Semantic Versioning](http://semver.org/).
|
95
95
|
|
96
|
-
It is currently in major version zero (0.y.z), which means that anything may
|
96
|
+
It is currently in major version zero (0.y.z), which means that anything may
|
97
|
+
change at any time and the public API should not be considered stable.
|
97
98
|
|
98
99
|
## Contributing
|
99
100
|
|
100
101
|
Contributions to this library are always welcome and highly encouraged.
|
101
102
|
|
102
|
-
See the [Contributing
|
103
|
+
See the [Contributing
|
104
|
+
Guide](https://googlecloudplatform.github.io/google-cloud-ruby/docs/google-cloud-resource_manager/latest/file.CONTRIBUTING)
|
105
|
+
for more information on how to get started.
|
103
106
|
|
104
|
-
Please note that this project is released with a Contributor Code of Conduct. By
|
107
|
+
Please note that this project is released with a Contributor Code of Conduct. By
|
108
|
+
participating in this project you agree to abide by its terms. See [Code of
|
109
|
+
Conduct](https://googlecloudplatform.github.io/google-cloud-ruby/docs/google-cloud-resource_manager/latest/file.CODE_OF_CONDUCT)
|
110
|
+
for more information.
|
105
111
|
|
106
112
|
## License
|
107
113
|
|
108
|
-
This library is licensed under Apache 2.0. Full license text is available in
|
114
|
+
This library is licensed under Apache 2.0. Full license text is available in
|
115
|
+
[LICENSE](https://googlecloudplatform.github.io/google-cloud-ruby/docs/google-cloud-resource_manager/latest/file.LICENSE).
|
109
116
|
|
110
117
|
## Support
|
111
118
|
|
112
|
-
Please [report bugs at the project on
|
113
|
-
|
119
|
+
Please [report bugs at the project on
|
120
|
+
Github](https://github.com/GoogleCloudPlatform/google-cloud-ruby/issues). Don't
|
121
|
+
hesitate to [ask
|
122
|
+
questions](http://stackoverflow.com/questions/tagged/google-cloud-platform+ruby)
|
123
|
+
about the client or APIs on [StackOverflow](http://stackoverflow.com).
|
@@ -30,8 +30,8 @@ module Google
|
|
30
30
|
# Creates a new object for connecting to the Resource Manager service.
|
31
31
|
# Each call creates a new connection.
|
32
32
|
#
|
33
|
-
# For more information on connecting to Google Cloud see the
|
34
|
-
# Guide
|
33
|
+
# For more information on connecting to Google Cloud see the
|
34
|
+
# {file:AUTHENTICATION.md Authentication Guide}.
|
35
35
|
#
|
36
36
|
# @param [String, Array<String>] scope The OAuth 2.0 scopes controlling the
|
37
37
|
# set of resources and operations that the connection can access. See
|
@@ -74,8 +74,8 @@ module Google
|
|
74
74
|
# Creates a new `Project` instance connected to the Resource Manager
|
75
75
|
# service. Each call creates a new connection.
|
76
76
|
#
|
77
|
-
# For more information on connecting to Google Cloud see the
|
78
|
-
# Guide
|
77
|
+
# For more information on connecting to Google Cloud see the
|
78
|
+
# {file:AUTHENTICATION.md Authentication Guide}.
|
79
79
|
#
|
80
80
|
# @param [String, Hash, Google::Auth::Credentials] credentials The path to
|
81
81
|
# the keyfile as a String, the contents of the keyfile as a Hash, or a
|
@@ -24,230 +24,9 @@ module Google
|
|
24
24
|
# # Google Cloud Resource Manager
|
25
25
|
#
|
26
26
|
# The Resource Manager API provides methods that you can use to
|
27
|
-
# programmatically manage your projects in the Google Cloud Platform.
|
28
|
-
# may be familiar with managing projects in the [Developers
|
29
|
-
# Console](https://developers.google.com/console/help/new/). With this API
|
30
|
-
# you can do the following:
|
27
|
+
# programmatically manage your projects in the Google Cloud Platform.
|
31
28
|
#
|
32
|
-
#
|
33
|
-
# * Create new projects
|
34
|
-
# * Update existing projects
|
35
|
-
# * Delete projects
|
36
|
-
# * Undelete, or recover, projects that you don't want to delete
|
37
|
-
#
|
38
|
-
# ## Authentication
|
39
|
-
#
|
40
|
-
# The Resource Manager API currently requires authentication of a [User
|
41
|
-
# Account](https://developers.google.com/identity/protocols/OAuth2), and
|
42
|
-
# cannot currently be accessed with a [Service
|
43
|
-
# Account](https://developers.google.com/identity/protocols/OAuth2ServiceAccount).
|
44
|
-
# To use a User Account install the [Google Cloud
|
45
|
-
# SDK](http://cloud.google.com/sdk) and authenticate with the following:
|
46
|
-
#
|
47
|
-
# ```
|
48
|
-
# $ gcloud auth login
|
49
|
-
# ```
|
50
|
-
#
|
51
|
-
# Also make sure all `GCLOUD` environment variables are cleared of any
|
52
|
-
# service accounts. Then google-cloud will be able to detect the user
|
53
|
-
# authentication and connect with those credentials.
|
54
|
-
#
|
55
|
-
# ```ruby
|
56
|
-
# require "google/cloud/resource_manager"
|
57
|
-
#
|
58
|
-
# resource_manager = Google::Cloud::ResourceManager.new
|
59
|
-
# ```
|
60
|
-
#
|
61
|
-
# ## Enabling Logging
|
62
|
-
#
|
63
|
-
# To enable logging for this library, set the logger for the underlying
|
64
|
-
# [Google API Client](https://github.com/google/google-api-ruby-client/blob/master/README.md#logging)
|
65
|
-
# library. The logger that you set may be a Ruby stdlib
|
66
|
-
# [`Logger`](https://ruby-doc.org/stdlib-2.4.0/libdoc/logger/rdoc/Logger.html)
|
67
|
-
# as shown below, or a
|
68
|
-
# [`Google::Cloud::Logging::Logger`](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/google-cloud-logging/latest/google/cloud/logging/logger)
|
69
|
-
# that will write logs to [Stackdriver
|
70
|
-
# Logging](https://cloud.google.com/logging/).
|
71
|
-
#
|
72
|
-
# If you do not set the logger explicitly and your application is running in
|
73
|
-
# a Rails environment, it will default to `Rails.logger`. Otherwise, if you
|
74
|
-
# do not set the logger and you are not using Rails, logging is disabled by
|
75
|
-
# default.
|
76
|
-
#
|
77
|
-
# Configuring a Ruby stdlib logger:
|
78
|
-
#
|
79
|
-
# ```ruby
|
80
|
-
# require "logger"
|
81
|
-
#
|
82
|
-
# my_logger = Logger.new $stderr
|
83
|
-
# my_logger.level = Logger::WARN
|
84
|
-
#
|
85
|
-
# # Set the Google API Client logger
|
86
|
-
# Google::Apis.logger = my_logger
|
87
|
-
# ```
|
88
|
-
#
|
89
|
-
# ## Listing Projects
|
90
|
-
#
|
91
|
-
# Project is a collection of settings, credentials, and metadata about the
|
92
|
-
# application or applications you're working on. You can retrieve and
|
93
|
-
# inspect all projects that you have permissions to. (See
|
94
|
-
# {Google::Cloud::ResourceManager::Manager#projects})
|
95
|
-
#
|
96
|
-
# ```ruby
|
97
|
-
# require "google/cloud/resource_manager"
|
98
|
-
#
|
99
|
-
# resource_manager = Google::Cloud::ResourceManager.new
|
100
|
-
# resource_manager.projects.each do |project|
|
101
|
-
# puts projects.project_id
|
102
|
-
# end
|
103
|
-
# ```
|
104
|
-
#
|
105
|
-
# ## Managing Projects with Labels
|
106
|
-
#
|
107
|
-
# Labels can be added to or removed from projects. (See
|
108
|
-
# {Google::Cloud::ResourceManager::Project#labels})
|
109
|
-
#
|
110
|
-
# ```ruby
|
111
|
-
# require "google/cloud/resource_manager"
|
112
|
-
#
|
113
|
-
# resource_manager = Google::Cloud::ResourceManager.new
|
114
|
-
# project = resource_manager.project "tokyo-rain-123"
|
115
|
-
# # Label the project as production
|
116
|
-
# project.update do |p|
|
117
|
-
# p.labels["env"] = "production"
|
118
|
-
# end
|
119
|
-
# ```
|
120
|
-
#
|
121
|
-
# Projects can then be filtered by labels. (See
|
122
|
-
# {Google::Cloud::ResourceManager::Manager#projects})
|
123
|
-
#
|
124
|
-
# ```ruby
|
125
|
-
# require "google/cloud/resource_manager"
|
126
|
-
#
|
127
|
-
# resource_manager = Google::Cloud::ResourceManager.new
|
128
|
-
# # Find only the productions projects
|
129
|
-
# projects = resource_manager.projects filter: "labels.env:production"
|
130
|
-
# projects.each do |project|
|
131
|
-
# puts project.project_id
|
132
|
-
# end
|
133
|
-
# ```
|
134
|
-
#
|
135
|
-
# ## Creating a Project
|
136
|
-
#
|
137
|
-
# You can also use the API to create new projects. (See
|
138
|
-
# {Google::Cloud::ResourceManager::Manager#create_project})
|
139
|
-
#
|
140
|
-
# ```ruby
|
141
|
-
# require "google/cloud/resource_manager"
|
142
|
-
#
|
143
|
-
# resource_manager = Google::Cloud::ResourceManager.new
|
144
|
-
# project = resource_manager.create_project "tokyo-rain-123",
|
145
|
-
# name: "Todos Development",
|
146
|
-
# labels: {env: :development}
|
147
|
-
# ```
|
148
|
-
#
|
149
|
-
# ## Deleting a Project
|
150
|
-
#
|
151
|
-
# You can delete projects when they are no longer needed. (See
|
152
|
-
# {Google::Cloud::ResourceManager::Manager#delete} and
|
153
|
-
# {Google::Cloud::ResourceManager::Project#delete})
|
154
|
-
#
|
155
|
-
# ```ruby
|
156
|
-
# require "google/cloud/resource_manager"
|
157
|
-
#
|
158
|
-
# resource_manager = Google::Cloud::ResourceManager.new
|
159
|
-
# resource_manager.delete "tokyo-rain-123"
|
160
|
-
# ```
|
161
|
-
#
|
162
|
-
# ## Undeleting a Project
|
163
|
-
#
|
164
|
-
# You can also restore a deleted project within the waiting period that
|
165
|
-
# starts when the project was deleted. Restoring a project returns it to the
|
166
|
-
# state it was in prior to being deleted. (See
|
167
|
-
# {Google::Cloud::ResourceManager::Manager#undelete} and
|
168
|
-
# {Google::Cloud::ResourceManager::Project#undelete})
|
169
|
-
#
|
170
|
-
# ```ruby
|
171
|
-
# require "google/cloud/resource_manager"
|
172
|
-
#
|
173
|
-
# resource_manager = Google::Cloud::ResourceManager.new
|
174
|
-
# resource_manager.undelete "tokyo-rain-123"
|
175
|
-
# ```
|
176
|
-
#
|
177
|
-
# ## Configuring retries and timeout
|
178
|
-
#
|
179
|
-
# You can configure how many times API requests may be automatically
|
180
|
-
# retried. When an API request fails, the response will be inspected to see
|
181
|
-
# if the request meets criteria indicating that it may succeed on retry,
|
182
|
-
# such as `500` and `503` status codes or a specific internal error code
|
183
|
-
# such as `rateLimitExceeded`. If it meets the criteria, the request will be
|
184
|
-
# retried after a delay. If another error occurs, the delay will be
|
185
|
-
# increased before a subsequent attempt, until the `retries` limit is
|
186
|
-
# reached.
|
187
|
-
#
|
188
|
-
# You can also set the request `timeout` value in seconds.
|
189
|
-
#
|
190
|
-
# ```ruby
|
191
|
-
# require "google/cloud/resource_manager"
|
192
|
-
#
|
193
|
-
# resource_manager = Google::Cloud::ResourceManager.new retries: 10,
|
194
|
-
# timeout: 120
|
195
|
-
# ```
|
196
|
-
#
|
197
|
-
# See the [Resource Manager error
|
198
|
-
# messages](https://cloud.google.com/resource-manager/docs/core_errors)
|
199
|
-
# for a list of error conditions.
|
200
|
-
#
|
201
|
-
# ## Managing IAM Policies
|
202
|
-
#
|
203
|
-
# Google Cloud Identity and Access Management ([Cloud
|
204
|
-
# IAM](https://cloud.google.com/iam/)) access control policies can be
|
205
|
-
# managed on projects. These policies allow project owners to manage _who_
|
206
|
-
# (identity) has access to _what_ (role). See [Cloud IAM
|
207
|
-
# Overview](https://cloud.google.com/iam/docs/overview) for more
|
208
|
-
# information.
|
209
|
-
#
|
210
|
-
# A project's access control policy can be retrieved. (See
|
211
|
-
# {Google::Cloud::ResourceManager::Project#policy} and
|
212
|
-
# {Google::Cloud::ResourceManager::Policy}.)
|
213
|
-
#
|
214
|
-
# ```ruby
|
215
|
-
# require "google/cloud/resource_manager"
|
216
|
-
#
|
217
|
-
# resource_manager = Google::Cloud::ResourceManager.new
|
218
|
-
# project = resource_manager.project "tokyo-rain-123"
|
219
|
-
# policy = project.policy
|
220
|
-
# ```
|
221
|
-
#
|
222
|
-
# A project's access control policy can also be updated:
|
223
|
-
#
|
224
|
-
# ```ruby
|
225
|
-
# require "google/cloud/resource_manager"
|
226
|
-
#
|
227
|
-
# resource_manager = Google::Cloud::ResourceManager.new
|
228
|
-
# project = resource_manager.project "tokyo-rain-123"
|
229
|
-
#
|
230
|
-
# policy = project.policy do |p|
|
231
|
-
# p.add "roles/viewer", "serviceAccount:your-service-account"
|
232
|
-
# end
|
233
|
-
# ```
|
234
|
-
#
|
235
|
-
# And permissions can be tested on a project. (See
|
236
|
-
# {Google::Cloud::ResourceManager::Project#test_permissions})
|
237
|
-
#
|
238
|
-
# ```ruby
|
239
|
-
# require "google/cloud/resource_manager"
|
240
|
-
#
|
241
|
-
# resource_manager = Google::Cloud::ResourceManager.new
|
242
|
-
# project = resource_manager.project "tokyo-rain-123"
|
243
|
-
# perms = project.test_permissions "resourcemanager.projects.get",
|
244
|
-
# "resourcemanager.projects.delete"
|
245
|
-
# perms.include? "resourcemanager.projects.get" #=> true
|
246
|
-
# perms.include? "resourcemanager.projects.delete" #=> false
|
247
|
-
# ```
|
248
|
-
#
|
249
|
-
# For more information about using access control policies see [Managing
|
250
|
-
# Policies](https://cloud.google.com/iam/docs/managing-policies).
|
29
|
+
# See {file:OVERVIEW.md Resource Manager Overview}.
|
251
30
|
#
|
252
31
|
module ResourceManager
|
253
32
|
##
|
@@ -255,8 +34,7 @@ module Google
|
|
255
34
|
# service. Each call creates a new connection.
|
256
35
|
#
|
257
36
|
# For more information on connecting to Google Cloud see the
|
258
|
-
#
|
259
|
-
# Guide](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/guides/authentication).
|
37
|
+
# {file:AUTHENTICATION.md Authentication Guide}.
|
260
38
|
#
|
261
39
|
# @param [String, Hash, Google::Auth::Credentials] credentials The path to
|
262
40
|
# the keyfile as a String, the contents of the keyfile as a Hash, or a
|
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.30.
|
4
|
+
version: 0.30.1
|
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: 2018-
|
12
|
+
date: 2018-09-10 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: google-cloud-core
|
@@ -123,6 +123,20 @@ dependencies:
|
|
123
123
|
- - "~>"
|
124
124
|
- !ruby/object:Gem::Version
|
125
125
|
version: '1.1'
|
126
|
+
- !ruby/object:Gem::Dependency
|
127
|
+
name: redcarpet
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
129
|
+
requirements:
|
130
|
+
- - "~>"
|
131
|
+
- !ruby/object:Gem::Version
|
132
|
+
version: '3.0'
|
133
|
+
type: :development
|
134
|
+
prerelease: false
|
135
|
+
version_requirements: !ruby/object:Gem::Requirement
|
136
|
+
requirements:
|
137
|
+
- - "~>"
|
138
|
+
- !ruby/object:Gem::Version
|
139
|
+
version: '3.0'
|
126
140
|
- !ruby/object:Gem::Dependency
|
127
141
|
name: rubocop
|
128
142
|
requirement: !ruby/object:Gem::Requirement
|
@@ -169,16 +183,16 @@ dependencies:
|
|
169
183
|
name: yard-doctest
|
170
184
|
requirement: !ruby/object:Gem::Requirement
|
171
185
|
requirements:
|
172
|
-
- - "
|
186
|
+
- - "~>"
|
173
187
|
- !ruby/object:Gem::Version
|
174
|
-
version: 0.1.
|
188
|
+
version: 0.1.13
|
175
189
|
type: :development
|
176
190
|
prerelease: false
|
177
191
|
version_requirements: !ruby/object:Gem::Requirement
|
178
192
|
requirements:
|
179
|
-
- - "
|
193
|
+
- - "~>"
|
180
194
|
- !ruby/object:Gem::Version
|
181
|
-
version: 0.1.
|
195
|
+
version: 0.1.13
|
182
196
|
description: google-cloud-resource_manager is the official library for Google Cloud
|
183
197
|
Resource Manager.
|
184
198
|
email:
|