google-cloud-shell-v1 0.1.0 → 0.1.4

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
  SHA256:
3
- metadata.gz: 9a4ecd15e91378e74dea208ee6afaf2c5799b499eba1223ca8b75da3ce3d0f6e
4
- data.tar.gz: 4dbb08d203e5a1243b0c152856e1ed303050b76f2ec21ce675bd5cbfce93533f
3
+ metadata.gz: a0f6d0690ab6fe99a9d55aaa8df5f12d48c99365beebb798808db0c177d45c4a
4
+ data.tar.gz: 572d90f31cf79961db6a390151511f8c84294471b879c1214db8be66e8665379
5
5
  SHA512:
6
- metadata.gz: e3b40a39975c6623a3037514c7f47fc8111bda8b7e2f294ba428fd4c2715cf94c920751d7656bab61404b995058b0a0956728d1b1a287b515182a12e62241212
7
- data.tar.gz: d8c81851dca70f649edd3b7556317782a2c89ed3be5f715f354e52b3748238987236e9600aa1e2e8bed1a4b75f6036ba2e0952c5b65df697445cd640d245c044
6
+ metadata.gz: 72d54587b045762da969f35c463c235f7d554318f7e4e3701ddf1705cb2b86dc814452aa053cd6b85ab685e3793aa9a2edeb3303e05cbf9d5e1958caf555c4f5
7
+ data.tar.gz: 1f342599060a7b58631f7bc806fe8c785d4be2d79c7c6d02820346142798cc50a3ea5bfba3d70bc1ee328c174f46a878440d944b609914557bf0a8f4f0f2ffe9
data/.yardopts CHANGED
@@ -1,5 +1,5 @@
1
1
  --no-private
2
- --title=Cloud Shell V1 API
2
+ --title="Cloud Shell V1 API"
3
3
  --exclude _pb\.rb$
4
4
  --markup markdown
5
5
  --markup-provider redcarpet
data/AUTHENTICATION.md CHANGED
@@ -66,11 +66,11 @@ The environment variables that google-cloud-shell-v1
66
66
  checks for credentials are configured on the service Credentials class (such as
67
67
  {::Google::Cloud::Shell::V1::CloudShellService::Credentials}):
68
68
 
69
- 1. `CLOUD_SHELL_CREDENTIALS` - Path to JSON file, or JSON contents
70
- 2. `CLOUD_SHELL_KEYFILE` - Path to JSON file, or JSON contents
71
- 3. `GOOGLE_CLOUD_CREDENTIALS` - Path to JSON file, or JSON contents
72
- 4. `GOOGLE_CLOUD_KEYFILE` - Path to JSON file, or JSON contents
73
- 5. `GOOGLE_APPLICATION_CREDENTIALS` - Path to JSON file
69
+ * `CLOUD_SHELL_CREDENTIALS` - Path to JSON file, or JSON contents
70
+ * `CLOUD_SHELL_KEYFILE` - Path to JSON file, or JSON contents
71
+ * `GOOGLE_CLOUD_CREDENTIALS` - Path to JSON file, or JSON contents
72
+ * `GOOGLE_CLOUD_KEYFILE` - Path to JSON file, or JSON contents
73
+ * `GOOGLE_APPLICATION_CREDENTIALS` - Path to JSON file
74
74
 
75
75
  ```ruby
76
76
  require "google/cloud/shell/v1"
@@ -82,8 +82,8 @@ client = ::Google::Cloud::Shell::V1::CloudShellService::Client.new
82
82
 
83
83
  ### Configuration
84
84
 
85
- The **Credentials JSON** can be configured instead of placing them in
86
- environment variables. Either on an individual client initialization:
85
+ The path to the **Credentials JSON** file can be configured instead of storing
86
+ it in an environment variable. Either on an individual client initialization:
87
87
 
88
88
  ```ruby
89
89
  require "google/cloud/shell/v1"
@@ -93,7 +93,7 @@ client = ::Google::Cloud::Shell::V1::CloudShellService::Client.new do |config|
93
93
  end
94
94
  ```
95
95
 
96
- Or configured globally for all clients:
96
+ Or globally for all clients:
97
97
 
98
98
  ```ruby
99
99
  require "google/cloud/shell/v1"
@@ -120,15 +120,6 @@ To configure your system for this, simply:
120
120
  **NOTE:** This is _not_ recommended for running in production. The Cloud SDK
121
121
  *should* only be used during development.
122
122
 
123
- [gce-how-to]: https://cloud.google.com/compute/docs/authentication#using
124
- [dev-console]: https://console.cloud.google.com/project
125
-
126
- [enable-apis]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/enable-apis.png
127
-
128
- [create-new-service-account]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/create-new-service-account.png
129
- [create-new-service-account-existing-keys]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/create-new-service-account-existing-keys.png
130
- [reuse-service-account]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/reuse-service-account.png
131
-
132
123
  ## Creating a Service Account
133
124
 
134
125
  Google Cloud requires **Service Account Credentials** to
@@ -139,31 +130,22 @@ If you are not running this client within
139
130
  [Google Cloud Platform environments](#google-cloud-platform-environments), you
140
131
  need a Google Developers service account.
141
132
 
142
- 1. Visit the [Google Developers Console][dev-console].
133
+ 1. Visit the [Google Cloud Console](https://console.cloud.google.com/project).
143
134
  2. Create a new project or click on an existing project.
144
- 3. Activate the slide-out navigation tray and select **API Manager**. From
135
+ 3. Activate the menu in the upper left and select **APIs & Services**. From
145
136
  here, you will enable the APIs that your application requires.
146
137
 
147
- ![Enable the APIs that your application requires][enable-apis]
148
-
149
138
  *Note: You may need to enable billing in order to use these services.*
150
139
 
151
140
  4. Select **Credentials** from the side navigation.
152
141
 
153
- You should see a screen like one of the following.
154
-
155
- ![Create a new service account][create-new-service-account]
156
-
157
- ![Create a new service account With Existing Keys][create-new-service-account-existing-keys]
158
-
159
- Find the "Add credentials" drop down and select "Service account" to be
160
- guided through downloading a new JSON key file.
142
+ Find the "Create credentials" drop down near the top of the page, and select
143
+ "Service account" to be guided through downloading a new JSON key file.
161
144
 
162
145
  If you want to re-use an existing service account, you can easily generate a
163
- new key file. Just select the account you wish to re-use, and click "Generate
164
- new JSON key":
165
-
166
- ![Re-use an existing service account][reuse-service-account]
146
+ new key file. Just select the account you wish to re-use, click the pencil
147
+ tool on the right side to edit the service account, select the **Keys** tab,
148
+ and then select **Add Key**.
167
149
 
168
150
  The key file you download will be used by this library to authenticate API
169
151
  requests and should be stored in a secure location.
data/README.md CHANGED
@@ -33,7 +33,7 @@ In order to use this library, you first need to go through the following steps:
33
33
  require "google/cloud/shell/v1"
34
34
 
35
35
  client = ::Google::Cloud::Shell::V1::CloudShellService::Client.new
36
- request = my_create_request
36
+ request = ::Google::Cloud::Shell::V1::GetEnvironmentRequest.new # (request fields as keyword arguments...)
37
37
  response = client.get_environment request
38
38
  ```
39
39
 
@@ -47,13 +47,12 @@ module Google
47
47
  # See {::Google::Cloud::Shell::V1::CloudShellService::Client::Configuration}
48
48
  # for a description of the configuration fields.
49
49
  #
50
- # ## Example
50
+ # @example
51
51
  #
52
- # To modify the configuration for all CloudShellService clients:
53
- #
54
- # ::Google::Cloud::Shell::V1::CloudShellService::Client.configure do |config|
55
- # config.timeout = 10.0
56
- # end
52
+ # # Modify the configuration for all CloudShellService clients
53
+ # ::Google::Cloud::Shell::V1::CloudShellService::Client.configure do |config|
54
+ # config.timeout = 10.0
55
+ # end
57
56
  #
58
57
  # @yield [config] Configure the Client client.
59
58
  # @yieldparam config [Client::Configuration]
@@ -73,10 +72,7 @@ module Google
73
72
 
74
73
  default_config.rpcs.get_environment.timeout = 60.0
75
74
  default_config.rpcs.get_environment.retry_policy = {
76
- initial_delay: 1.0,
77
- max_delay: 60.0,
78
- multiplier: 1.3,
79
- retry_codes: [14, 2]
75
+ initial_delay: 1.0, max_delay: 60.0, multiplier: 1.3, retry_codes: [14, 2]
80
76
  }
81
77
 
82
78
  default_config.rpcs.start_environment.timeout = 60.0
@@ -116,19 +112,15 @@ module Google
116
112
  ##
117
113
  # Create a new CloudShellService client object.
118
114
  #
119
- # ## Examples
120
- #
121
- # To create a new CloudShellService client with the default
122
- # configuration:
123
- #
124
- # client = ::Google::Cloud::Shell::V1::CloudShellService::Client.new
115
+ # @example
125
116
  #
126
- # To create a new CloudShellService client with a custom
127
- # configuration:
117
+ # # Create a client using the default configuration
118
+ # client = ::Google::Cloud::Shell::V1::CloudShellService::Client.new
128
119
  #
129
- # client = ::Google::Cloud::Shell::V1::CloudShellService::Client.new do |config|
130
- # config.timeout = 10.0
131
- # end
120
+ # # Create a client using a custom configuration
121
+ # client = ::Google::Cloud::Shell::V1::CloudShellService::Client.new do |config|
122
+ # config.timeout = 10.0
123
+ # end
132
124
  #
133
125
  # @yield [config] Configure the CloudShellService client.
134
126
  # @yieldparam config [Client::Configuration]
@@ -148,14 +140,13 @@ module Google
148
140
 
149
141
  # Create credentials
150
142
  credentials = @config.credentials
151
- # Use self-signed JWT if the scope and endpoint are unchanged from default,
143
+ # Use self-signed JWT if the endpoint is unchanged from default,
152
144
  # but only if the default endpoint does not have a region prefix.
153
- enable_self_signed_jwt = @config.scope == Client.configure.scope &&
154
- @config.endpoint == Client.configure.endpoint &&
145
+ enable_self_signed_jwt = @config.endpoint == Client.configure.endpoint &&
155
146
  !@config.endpoint.split(".").first.include?("-")
156
147
  credentials ||= Credentials.default scope: @config.scope,
157
148
  enable_self_signed_jwt: enable_self_signed_jwt
158
- if credentials.is_a?(String) || credentials.is_a?(Hash)
149
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
159
150
  credentials = Credentials.new credentials, scope: @config.scope
160
151
  end
161
152
  @quota_project_id = @config.quota_project
@@ -163,6 +154,7 @@ module Google
163
154
 
164
155
  @operations_client = Operations.new do |config|
165
156
  config.credentials = credentials
157
+ config.quota_project = @quota_project_id
166
158
  config.endpoint = @config.endpoint
167
159
  end
168
160
 
@@ -214,6 +206,21 @@ module Google
214
206
  #
215
207
  # @raise [::Google::Cloud::Error] if the RPC is aborted.
216
208
  #
209
+ # @example Basic example
210
+ # require "google/cloud/shell/v1"
211
+ #
212
+ # # Create a client object. The client can be reused for multiple calls.
213
+ # client = Google::Cloud::Shell::V1::CloudShellService::Client.new
214
+ #
215
+ # # Create a request. To set request fields, pass in keyword arguments.
216
+ # request = Google::Cloud::Shell::V1::GetEnvironmentRequest.new
217
+ #
218
+ # # Call the get_environment method.
219
+ # result = client.get_environment request
220
+ #
221
+ # # The returned object is of type Google::Cloud::Shell::V1::Environment.
222
+ # p result
223
+ #
217
224
  def get_environment request, options = nil
218
225
  raise ::ArgumentError, "request must be provided" if request.nil?
219
226
 
@@ -231,16 +238,20 @@ module Google
231
238
  gapic_version: ::Google::Cloud::Shell::V1::VERSION
232
239
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
233
240
 
234
- header_params = {
235
- "name" => request.name
236
- }
241
+ header_params = {}
242
+ if request.name
243
+ header_params["name"] = request.name
244
+ end
245
+
237
246
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
238
247
  metadata[:"x-goog-request-params"] ||= request_params_header
239
248
 
240
249
  options.apply_defaults timeout: @config.rpcs.get_environment.timeout,
241
250
  metadata: metadata,
242
251
  retry_policy: @config.rpcs.get_environment.retry_policy
243
- options.apply_defaults metadata: @config.metadata,
252
+
253
+ options.apply_defaults timeout: @config.timeout,
254
+ metadata: @config.metadata,
244
255
  retry_policy: @config.retry_policy
245
256
 
246
257
  @cloud_shell_service_stub.call_rpc :get_environment, request, options: options do |response, operation|
@@ -294,6 +305,28 @@ module Google
294
305
  #
295
306
  # @raise [::Google::Cloud::Error] if the RPC is aborted.
296
307
  #
308
+ # @example Basic example
309
+ # require "google/cloud/shell/v1"
310
+ #
311
+ # # Create a client object. The client can be reused for multiple calls.
312
+ # client = Google::Cloud::Shell::V1::CloudShellService::Client.new
313
+ #
314
+ # # Create a request. To set request fields, pass in keyword arguments.
315
+ # request = Google::Cloud::Shell::V1::StartEnvironmentRequest.new
316
+ #
317
+ # # Call the start_environment method.
318
+ # result = client.start_environment request
319
+ #
320
+ # # The returned object is of type Gapic::Operation. You can use this
321
+ # # object to check the status of an operation, cancel it, or wait
322
+ # # for results. Here is how to block until completion:
323
+ # result.wait_until_done! timeout: 60
324
+ # if result.response?
325
+ # p result.response
326
+ # else
327
+ # puts "Error!"
328
+ # end
329
+ #
297
330
  def start_environment request, options = nil
298
331
  raise ::ArgumentError, "request must be provided" if request.nil?
299
332
 
@@ -311,16 +344,20 @@ module Google
311
344
  gapic_version: ::Google::Cloud::Shell::V1::VERSION
312
345
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
313
346
 
314
- header_params = {
315
- "name" => request.name
316
- }
347
+ header_params = {}
348
+ if request.name
349
+ header_params["name"] = request.name
350
+ end
351
+
317
352
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
318
353
  metadata[:"x-goog-request-params"] ||= request_params_header
319
354
 
320
355
  options.apply_defaults timeout: @config.rpcs.start_environment.timeout,
321
356
  metadata: metadata,
322
357
  retry_policy: @config.rpcs.start_environment.retry_policy
323
- options.apply_defaults metadata: @config.metadata,
358
+
359
+ options.apply_defaults timeout: @config.timeout,
360
+ metadata: @config.metadata,
324
361
  retry_policy: @config.retry_policy
325
362
 
326
363
  @cloud_shell_service_stub.call_rpc :start_environment, request, options: options do |response, operation|
@@ -373,6 +410,28 @@ module Google
373
410
  #
374
411
  # @raise [::Google::Cloud::Error] if the RPC is aborted.
375
412
  #
413
+ # @example Basic example
414
+ # require "google/cloud/shell/v1"
415
+ #
416
+ # # Create a client object. The client can be reused for multiple calls.
417
+ # client = Google::Cloud::Shell::V1::CloudShellService::Client.new
418
+ #
419
+ # # Create a request. To set request fields, pass in keyword arguments.
420
+ # request = Google::Cloud::Shell::V1::AuthorizeEnvironmentRequest.new
421
+ #
422
+ # # Call the authorize_environment method.
423
+ # result = client.authorize_environment request
424
+ #
425
+ # # The returned object is of type Gapic::Operation. You can use this
426
+ # # object to check the status of an operation, cancel it, or wait
427
+ # # for results. Here is how to block until completion:
428
+ # result.wait_until_done! timeout: 60
429
+ # if result.response?
430
+ # p result.response
431
+ # else
432
+ # puts "Error!"
433
+ # end
434
+ #
376
435
  def authorize_environment request, options = nil
377
436
  raise ::ArgumentError, "request must be provided" if request.nil?
378
437
 
@@ -390,16 +449,20 @@ module Google
390
449
  gapic_version: ::Google::Cloud::Shell::V1::VERSION
391
450
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
392
451
 
393
- header_params = {
394
- "name" => request.name
395
- }
452
+ header_params = {}
453
+ if request.name
454
+ header_params["name"] = request.name
455
+ end
456
+
396
457
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
397
458
  metadata[:"x-goog-request-params"] ||= request_params_header
398
459
 
399
460
  options.apply_defaults timeout: @config.rpcs.authorize_environment.timeout,
400
461
  metadata: metadata,
401
462
  retry_policy: @config.rpcs.authorize_environment.retry_policy
402
- options.apply_defaults metadata: @config.metadata,
463
+
464
+ options.apply_defaults timeout: @config.timeout,
465
+ metadata: @config.metadata,
403
466
  retry_policy: @config.retry_policy
404
467
 
405
468
  @cloud_shell_service_stub.call_rpc :authorize_environment, request, options: options do |response, operation|
@@ -450,6 +513,28 @@ module Google
450
513
  #
451
514
  # @raise [::Google::Cloud::Error] if the RPC is aborted.
452
515
  #
516
+ # @example Basic example
517
+ # require "google/cloud/shell/v1"
518
+ #
519
+ # # Create a client object. The client can be reused for multiple calls.
520
+ # client = Google::Cloud::Shell::V1::CloudShellService::Client.new
521
+ #
522
+ # # Create a request. To set request fields, pass in keyword arguments.
523
+ # request = Google::Cloud::Shell::V1::AddPublicKeyRequest.new
524
+ #
525
+ # # Call the add_public_key method.
526
+ # result = client.add_public_key request
527
+ #
528
+ # # The returned object is of type Gapic::Operation. You can use this
529
+ # # object to check the status of an operation, cancel it, or wait
530
+ # # for results. Here is how to block until completion:
531
+ # result.wait_until_done! timeout: 60
532
+ # if result.response?
533
+ # p result.response
534
+ # else
535
+ # puts "Error!"
536
+ # end
537
+ #
453
538
  def add_public_key request, options = nil
454
539
  raise ::ArgumentError, "request must be provided" if request.nil?
455
540
 
@@ -467,16 +552,20 @@ module Google
467
552
  gapic_version: ::Google::Cloud::Shell::V1::VERSION
468
553
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
469
554
 
470
- header_params = {
471
- "environment" => request.environment
472
- }
555
+ header_params = {}
556
+ if request.environment
557
+ header_params["environment"] = request.environment
558
+ end
559
+
473
560
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
474
561
  metadata[:"x-goog-request-params"] ||= request_params_header
475
562
 
476
563
  options.apply_defaults timeout: @config.rpcs.add_public_key.timeout,
477
564
  metadata: metadata,
478
565
  retry_policy: @config.rpcs.add_public_key.retry_policy
479
- options.apply_defaults metadata: @config.metadata,
566
+
567
+ options.apply_defaults timeout: @config.timeout,
568
+ metadata: @config.metadata,
480
569
  retry_policy: @config.retry_policy
481
570
 
482
571
  @cloud_shell_service_stub.call_rpc :add_public_key, request, options: options do |response, operation|
@@ -523,6 +612,28 @@ module Google
523
612
  #
524
613
  # @raise [::Google::Cloud::Error] if the RPC is aborted.
525
614
  #
615
+ # @example Basic example
616
+ # require "google/cloud/shell/v1"
617
+ #
618
+ # # Create a client object. The client can be reused for multiple calls.
619
+ # client = Google::Cloud::Shell::V1::CloudShellService::Client.new
620
+ #
621
+ # # Create a request. To set request fields, pass in keyword arguments.
622
+ # request = Google::Cloud::Shell::V1::RemovePublicKeyRequest.new
623
+ #
624
+ # # Call the remove_public_key method.
625
+ # result = client.remove_public_key request
626
+ #
627
+ # # The returned object is of type Gapic::Operation. You can use this
628
+ # # object to check the status of an operation, cancel it, or wait
629
+ # # for results. Here is how to block until completion:
630
+ # result.wait_until_done! timeout: 60
631
+ # if result.response?
632
+ # p result.response
633
+ # else
634
+ # puts "Error!"
635
+ # end
636
+ #
526
637
  def remove_public_key request, options = nil
527
638
  raise ::ArgumentError, "request must be provided" if request.nil?
528
639
 
@@ -540,16 +651,20 @@ module Google
540
651
  gapic_version: ::Google::Cloud::Shell::V1::VERSION
541
652
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
542
653
 
543
- header_params = {
544
- "environment" => request.environment
545
- }
654
+ header_params = {}
655
+ if request.environment
656
+ header_params["environment"] = request.environment
657
+ end
658
+
546
659
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
547
660
  metadata[:"x-goog-request-params"] ||= request_params_header
548
661
 
549
662
  options.apply_defaults timeout: @config.rpcs.remove_public_key.timeout,
550
663
  metadata: metadata,
551
664
  retry_policy: @config.rpcs.remove_public_key.retry_policy
552
- options.apply_defaults metadata: @config.metadata,
665
+
666
+ options.apply_defaults timeout: @config.timeout,
667
+ metadata: @config.metadata,
553
668
  retry_policy: @config.retry_policy
554
669
 
555
670
  @cloud_shell_service_stub.call_rpc :remove_public_key, request, options: options do |response, operation|
@@ -574,22 +689,21 @@ module Google
574
689
  # Configuration can be applied globally to all clients, or to a single client
575
690
  # on construction.
576
691
  #
577
- # # Examples
578
- #
579
- # To modify the global config, setting the timeout for get_environment
580
- # to 20 seconds, and all remaining timeouts to 10 seconds:
581
- #
582
- # ::Google::Cloud::Shell::V1::CloudShellService::Client.configure do |config|
583
- # config.timeout = 10.0
584
- # config.rpcs.get_environment.timeout = 20.0
585
- # end
586
- #
587
- # To apply the above configuration only to a new client:
588
- #
589
- # client = ::Google::Cloud::Shell::V1::CloudShellService::Client.new do |config|
590
- # config.timeout = 10.0
591
- # config.rpcs.get_environment.timeout = 20.0
592
- # end
692
+ # @example
693
+ #
694
+ # # Modify the global config, setting the timeout for
695
+ # # get_environment to 20 seconds,
696
+ # # and all remaining timeouts to 10 seconds.
697
+ # ::Google::Cloud::Shell::V1::CloudShellService::Client.configure do |config|
698
+ # config.timeout = 10.0
699
+ # config.rpcs.get_environment.timeout = 20.0
700
+ # end
701
+ #
702
+ # # Apply the above configuration only to a new client.
703
+ # client = ::Google::Cloud::Shell::V1::CloudShellService::Client.new do |config|
704
+ # config.timeout = 10.0
705
+ # config.rpcs.get_environment.timeout = 20.0
706
+ # end
593
707
  #
594
708
  # @!attribute [rw] endpoint
595
709
  # The hostname or hostname:port of the service endpoint.
@@ -82,7 +82,7 @@ module Google
82
82
  # Create credentials
83
83
  credentials = @config.credentials
84
84
  credentials ||= Credentials.default scope: @config.scope
85
- if credentials.is_a?(String) || credentials.is_a?(Hash)
85
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
86
86
  credentials = Credentials.new credentials, scope: @config.scope
87
87
  end
88
88
  @quota_project_id = @config.quota_project
@@ -143,6 +143,27 @@ module Google
143
143
  #
144
144
  # @raise [::Google::Cloud::Error] if the RPC is aborted.
145
145
  #
146
+ # @example Basic example
147
+ # require "google/longrunning"
148
+ #
149
+ # # Create a client object. The client can be reused for multiple calls.
150
+ # client = Google::Longrunning::Operations::Client.new
151
+ #
152
+ # # Create a request. To set request fields, pass in keyword arguments.
153
+ # request = Google::Longrunning::ListOperationsRequest.new
154
+ #
155
+ # # Call the list_operations method.
156
+ # result = client.list_operations request
157
+ #
158
+ # # The returned object is of type Gapic::PagedEnumerable. You can
159
+ # # iterate over all elements by calling #each, and the enumerable
160
+ # # will lazily make API calls to fetch subsequent pages. Other
161
+ # # methods are also available for managing paging directly.
162
+ # result.each do |response|
163
+ # # Each element is of type ::Google::Longrunning::Operation.
164
+ # p response
165
+ # end
166
+ #
146
167
  def list_operations request, options = nil
147
168
  raise ::ArgumentError, "request must be provided" if request.nil?
148
169
 
@@ -160,16 +181,20 @@ module Google
160
181
  gapic_version: ::Google::Cloud::Shell::V1::VERSION
161
182
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
162
183
 
163
- header_params = {
164
- "name" => request.name
165
- }
184
+ header_params = {}
185
+ if request.name
186
+ header_params["name"] = request.name
187
+ end
188
+
166
189
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
167
190
  metadata[:"x-goog-request-params"] ||= request_params_header
168
191
 
169
192
  options.apply_defaults timeout: @config.rpcs.list_operations.timeout,
170
193
  metadata: metadata,
171
194
  retry_policy: @config.rpcs.list_operations.retry_policy
172
- options.apply_defaults metadata: @config.metadata,
195
+
196
+ options.apply_defaults timeout: @config.timeout,
197
+ metadata: @config.metadata,
173
198
  retry_policy: @config.retry_policy
174
199
 
175
200
  @operations_stub.call_rpc :list_operations, request, options: options do |response, operation|
@@ -213,6 +238,28 @@ module Google
213
238
  #
214
239
  # @raise [::Google::Cloud::Error] if the RPC is aborted.
215
240
  #
241
+ # @example Basic example
242
+ # require "google/longrunning"
243
+ #
244
+ # # Create a client object. The client can be reused for multiple calls.
245
+ # client = Google::Longrunning::Operations::Client.new
246
+ #
247
+ # # Create a request. To set request fields, pass in keyword arguments.
248
+ # request = Google::Longrunning::GetOperationRequest.new
249
+ #
250
+ # # Call the get_operation method.
251
+ # result = client.get_operation request
252
+ #
253
+ # # The returned object is of type Gapic::Operation. You can use this
254
+ # # object to check the status of an operation, cancel it, or wait
255
+ # # for results. Here is how to block until completion:
256
+ # result.wait_until_done! timeout: 60
257
+ # if result.response?
258
+ # p result.response
259
+ # else
260
+ # puts "Error!"
261
+ # end
262
+ #
216
263
  def get_operation request, options = nil
217
264
  raise ::ArgumentError, "request must be provided" if request.nil?
218
265
 
@@ -230,16 +277,20 @@ module Google
230
277
  gapic_version: ::Google::Cloud::Shell::V1::VERSION
231
278
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
232
279
 
233
- header_params = {
234
- "name" => request.name
235
- }
280
+ header_params = {}
281
+ if request.name
282
+ header_params["name"] = request.name
283
+ end
284
+
236
285
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
237
286
  metadata[:"x-goog-request-params"] ||= request_params_header
238
287
 
239
288
  options.apply_defaults timeout: @config.rpcs.get_operation.timeout,
240
289
  metadata: metadata,
241
290
  retry_policy: @config.rpcs.get_operation.retry_policy
242
- options.apply_defaults metadata: @config.metadata,
291
+
292
+ options.apply_defaults timeout: @config.timeout,
293
+ metadata: @config.metadata,
243
294
  retry_policy: @config.retry_policy
244
295
 
245
296
  @operations_stub.call_rpc :get_operation, request, options: options do |response, operation|
@@ -283,6 +334,21 @@ module Google
283
334
  #
284
335
  # @raise [::Google::Cloud::Error] if the RPC is aborted.
285
336
  #
337
+ # @example Basic example
338
+ # require "google/longrunning"
339
+ #
340
+ # # Create a client object. The client can be reused for multiple calls.
341
+ # client = Google::Longrunning::Operations::Client.new
342
+ #
343
+ # # Create a request. To set request fields, pass in keyword arguments.
344
+ # request = Google::Longrunning::DeleteOperationRequest.new
345
+ #
346
+ # # Call the delete_operation method.
347
+ # result = client.delete_operation request
348
+ #
349
+ # # The returned object is of type Google::Protobuf::Empty.
350
+ # p result
351
+ #
286
352
  def delete_operation request, options = nil
287
353
  raise ::ArgumentError, "request must be provided" if request.nil?
288
354
 
@@ -300,16 +366,20 @@ module Google
300
366
  gapic_version: ::Google::Cloud::Shell::V1::VERSION
301
367
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
302
368
 
303
- header_params = {
304
- "name" => request.name
305
- }
369
+ header_params = {}
370
+ if request.name
371
+ header_params["name"] = request.name
372
+ end
373
+
306
374
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
307
375
  metadata[:"x-goog-request-params"] ||= request_params_header
308
376
 
309
377
  options.apply_defaults timeout: @config.rpcs.delete_operation.timeout,
310
378
  metadata: metadata,
311
379
  retry_policy: @config.rpcs.delete_operation.retry_policy
312
- options.apply_defaults metadata: @config.metadata,
380
+
381
+ options.apply_defaults timeout: @config.timeout,
382
+ metadata: @config.metadata,
313
383
  retry_policy: @config.retry_policy
314
384
 
315
385
  @operations_stub.call_rpc :delete_operation, request, options: options do |response, operation|
@@ -358,6 +428,21 @@ module Google
358
428
  #
359
429
  # @raise [::Google::Cloud::Error] if the RPC is aborted.
360
430
  #
431
+ # @example Basic example
432
+ # require "google/longrunning"
433
+ #
434
+ # # Create a client object. The client can be reused for multiple calls.
435
+ # client = Google::Longrunning::Operations::Client.new
436
+ #
437
+ # # Create a request. To set request fields, pass in keyword arguments.
438
+ # request = Google::Longrunning::CancelOperationRequest.new
439
+ #
440
+ # # Call the cancel_operation method.
441
+ # result = client.cancel_operation request
442
+ #
443
+ # # The returned object is of type Google::Protobuf::Empty.
444
+ # p result
445
+ #
361
446
  def cancel_operation request, options = nil
362
447
  raise ::ArgumentError, "request must be provided" if request.nil?
363
448
 
@@ -375,16 +460,20 @@ module Google
375
460
  gapic_version: ::Google::Cloud::Shell::V1::VERSION
376
461
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
377
462
 
378
- header_params = {
379
- "name" => request.name
380
- }
463
+ header_params = {}
464
+ if request.name
465
+ header_params["name"] = request.name
466
+ end
467
+
381
468
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
382
469
  metadata[:"x-goog-request-params"] ||= request_params_header
383
470
 
384
471
  options.apply_defaults timeout: @config.rpcs.cancel_operation.timeout,
385
472
  metadata: metadata,
386
473
  retry_policy: @config.rpcs.cancel_operation.retry_policy
387
- options.apply_defaults metadata: @config.metadata,
474
+
475
+ options.apply_defaults timeout: @config.timeout,
476
+ metadata: @config.metadata,
388
477
  retry_policy: @config.retry_policy
389
478
 
390
479
  @operations_stub.call_rpc :cancel_operation, request, options: options do |response, operation|
@@ -436,6 +525,28 @@ module Google
436
525
  #
437
526
  # @raise [::Google::Cloud::Error] if the RPC is aborted.
438
527
  #
528
+ # @example Basic example
529
+ # require "google/longrunning"
530
+ #
531
+ # # Create a client object. The client can be reused for multiple calls.
532
+ # client = Google::Longrunning::Operations::Client.new
533
+ #
534
+ # # Create a request. To set request fields, pass in keyword arguments.
535
+ # request = Google::Longrunning::WaitOperationRequest.new
536
+ #
537
+ # # Call the wait_operation method.
538
+ # result = client.wait_operation request
539
+ #
540
+ # # The returned object is of type Gapic::Operation. You can use this
541
+ # # object to check the status of an operation, cancel it, or wait
542
+ # # for results. Here is how to block until completion:
543
+ # result.wait_until_done! timeout: 60
544
+ # if result.response?
545
+ # p result.response
546
+ # else
547
+ # puts "Error!"
548
+ # end
549
+ #
439
550
  def wait_operation request, options = nil
440
551
  raise ::ArgumentError, "request must be provided" if request.nil?
441
552
 
@@ -456,7 +567,9 @@ module Google
456
567
  options.apply_defaults timeout: @config.rpcs.wait_operation.timeout,
457
568
  metadata: metadata,
458
569
  retry_policy: @config.rpcs.wait_operation.retry_policy
459
- options.apply_defaults metadata: @config.metadata,
570
+
571
+ options.apply_defaults timeout: @config.timeout,
572
+ metadata: @config.metadata,
460
573
  retry_policy: @config.retry_policy
461
574
 
462
575
  @operations_stub.call_rpc :wait_operation, request, options: options do |response, operation|
@@ -481,22 +594,21 @@ module Google
481
594
  # Configuration can be applied globally to all clients, or to a single client
482
595
  # on construction.
483
596
  #
484
- # # Examples
485
- #
486
- # To modify the global config, setting the timeout for list_operations
487
- # to 20 seconds, and all remaining timeouts to 10 seconds:
488
- #
489
- # ::Google::Longrunning::Operations::Client.configure do |config|
490
- # config.timeout = 10.0
491
- # config.rpcs.list_operations.timeout = 20.0
492
- # end
493
- #
494
- # To apply the above configuration only to a new client:
495
- #
496
- # client = ::Google::Longrunning::Operations::Client.new do |config|
497
- # config.timeout = 10.0
498
- # config.rpcs.list_operations.timeout = 20.0
499
- # end
597
+ # @example
598
+ #
599
+ # # Modify the global config, setting the timeout for
600
+ # # list_operations to 20 seconds,
601
+ # # and all remaining timeouts to 10 seconds.
602
+ # ::Google::Longrunning::Operations::Client.configure do |config|
603
+ # config.timeout = 10.0
604
+ # config.rpcs.list_operations.timeout = 20.0
605
+ # end
606
+ #
607
+ # # Apply the above configuration only to a new client.
608
+ # client = ::Google::Longrunning::Operations::Client.new do |config|
609
+ # config.timeout = 10.0
610
+ # config.rpcs.list_operations.timeout = 20.0
611
+ # end
500
612
  #
501
613
  # @!attribute [rw] endpoint
502
614
  # The hostname or hostname:port of the service endpoint.
@@ -1,8 +1,6 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/cloud/shell/v1/cloudshell.proto
3
3
 
4
- require 'google/protobuf'
5
-
6
4
  require 'google/api/annotations_pb'
7
5
  require 'google/api/client_pb'
8
6
  require 'google/api/field_behavior_pb'
@@ -10,6 +8,8 @@ require 'google/api/resource_pb'
10
8
  require 'google/longrunning/operations_pb'
11
9
  require 'google/protobuf/field_mask_pb'
12
10
  require 'google/protobuf/timestamp_pb'
11
+ require 'google/protobuf'
12
+
13
13
  Google::Protobuf::DescriptorPool.generated_pool.build do
14
14
  add_file("google/cloud/shell/v1/cloudshell.proto", :syntax => :proto3) do
15
15
  add_message "google.cloud.shell.v1.Environment" do
@@ -33,7 +33,7 @@ module Google
33
33
  # client.
34
34
  class Service
35
35
 
36
- include GRPC::GenericService
36
+ include ::GRPC::GenericService
37
37
 
38
38
  self.marshal_class_method = :encode
39
39
  self.unmarshal_class_method = :decode
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Shell
23
23
  module V1
24
- VERSION = "0.1.0"
24
+ VERSION = "0.1.4"
25
25
  end
26
26
  end
27
27
  end
@@ -60,6 +60,12 @@ module Google
60
60
  # in any arbitrary order, rather than the order the user originally
61
61
  # provided. Additionally, the list's order may or may not be stable.
62
62
  UNORDERED_LIST = 6
63
+
64
+ # Denotes that this field returns a non-empty default value if not set.
65
+ # This indicates that if the user provides the empty value in a request,
66
+ # a non-empty value will be returned. The user will not be aware of what
67
+ # non-empty value to expect.
68
+ NON_EMPTY_DEFAULT = 7
63
69
  end
64
70
  end
65
71
  end
@@ -33,11 +33,7 @@ module Google
33
33
  # // For Kubernetes resources, the format is {api group}/{kind}.
34
34
  # option (google.api.resource) = {
35
35
  # type: "pubsub.googleapis.com/Topic"
36
- # name_descriptor: {
37
- # pattern: "projects/{project}/topics/{topic}"
38
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
39
- # parent_name_extractor: "projects/{project}"
40
- # }
36
+ # pattern: "projects/{project}/topics/{topic}"
41
37
  # };
42
38
  # }
43
39
  #
@@ -45,10 +41,7 @@ module Google
45
41
  #
46
42
  # resources:
47
43
  # - type: "pubsub.googleapis.com/Topic"
48
- # name_descriptor:
49
- # - pattern: "projects/{project}/topics/{topic}"
50
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
51
- # parent_name_extractor: "projects/{project}"
44
+ # pattern: "projects/{project}/topics/{topic}"
52
45
  #
53
46
  # Sometimes, resources have multiple patterns, typically because they can
54
47
  # live under multiple parents.
@@ -58,26 +51,10 @@ module Google
58
51
  # message LogEntry {
59
52
  # option (google.api.resource) = {
60
53
  # type: "logging.googleapis.com/LogEntry"
61
- # name_descriptor: {
62
- # pattern: "projects/{project}/logs/{log}"
63
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
64
- # parent_name_extractor: "projects/{project}"
65
- # }
66
- # name_descriptor: {
67
- # pattern: "folders/{folder}/logs/{log}"
68
- # parent_type: "cloudresourcemanager.googleapis.com/Folder"
69
- # parent_name_extractor: "folders/{folder}"
70
- # }
71
- # name_descriptor: {
72
- # pattern: "organizations/{organization}/logs/{log}"
73
- # parent_type: "cloudresourcemanager.googleapis.com/Organization"
74
- # parent_name_extractor: "organizations/{organization}"
75
- # }
76
- # name_descriptor: {
77
- # pattern: "billingAccounts/{billing_account}/logs/{log}"
78
- # parent_type: "billing.googleapis.com/BillingAccount"
79
- # parent_name_extractor: "billingAccounts/{billing_account}"
80
- # }
54
+ # pattern: "projects/{project}/logs/{log}"
55
+ # pattern: "folders/{folder}/logs/{log}"
56
+ # pattern: "organizations/{organization}/logs/{log}"
57
+ # pattern: "billingAccounts/{billing_account}/logs/{log}"
81
58
  # };
82
59
  # }
83
60
  #
@@ -85,48 +62,10 @@ module Google
85
62
  #
86
63
  # resources:
87
64
  # - type: 'logging.googleapis.com/LogEntry'
88
- # name_descriptor:
89
- # - pattern: "projects/{project}/logs/{log}"
90
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
91
- # parent_name_extractor: "projects/{project}"
92
- # - pattern: "folders/{folder}/logs/{log}"
93
- # parent_type: "cloudresourcemanager.googleapis.com/Folder"
94
- # parent_name_extractor: "folders/{folder}"
95
- # - pattern: "organizations/{organization}/logs/{log}"
96
- # parent_type: "cloudresourcemanager.googleapis.com/Organization"
97
- # parent_name_extractor: "organizations/{organization}"
98
- # - pattern: "billingAccounts/{billing_account}/logs/{log}"
99
- # parent_type: "billing.googleapis.com/BillingAccount"
100
- # parent_name_extractor: "billingAccounts/{billing_account}"
101
- #
102
- # For flexible resources, the resource name doesn't contain parent names, but
103
- # the resource itself has parents for policy evaluation.
104
- #
105
- # Example:
106
- #
107
- # message Shelf {
108
- # option (google.api.resource) = {
109
- # type: "library.googleapis.com/Shelf"
110
- # name_descriptor: {
111
- # pattern: "shelves/{shelf}"
112
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
113
- # }
114
- # name_descriptor: {
115
- # pattern: "shelves/{shelf}"
116
- # parent_type: "cloudresourcemanager.googleapis.com/Folder"
117
- # }
118
- # };
119
- # }
120
- #
121
- # The ResourceDescriptor Yaml config will look like:
122
- #
123
- # resources:
124
- # - type: 'library.googleapis.com/Shelf'
125
- # name_descriptor:
126
- # - pattern: "shelves/{shelf}"
127
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
128
- # - pattern: "shelves/{shelf}"
129
- # parent_type: "cloudresourcemanager.googleapis.com/Folder"
65
+ # pattern: "projects/{project}/logs/{log}"
66
+ # pattern: "folders/{folder}/logs/{log}"
67
+ # pattern: "organizations/{organization}/logs/{log}"
68
+ # pattern: "billingAccounts/{billing_account}/logs/{log}"
130
69
  # @!attribute [rw] type
131
70
  # @return [::String]
132
71
  # The resource type. It must be in the format of
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-shell-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-06-21 00:00:00.000000000 Z
11
+ date: 2022-01-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gapic-common
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '0.5'
19
+ version: '0.7'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: 2.a
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: '0.5'
29
+ version: '0.7'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: 2.a
@@ -210,7 +210,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
210
210
  - !ruby/object:Gem::Version
211
211
  version: '0'
212
212
  requirements: []
213
- rubygems_version: 3.2.17
213
+ rubygems_version: 3.3.4
214
214
  signing_key:
215
215
  specification_version: 4
216
216
  summary: API Client library for the Cloud Shell V1 API