oci 2.1.2 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +26 -13
  3. data/lib/oci/core/blockstorage_client.rb +690 -61
  4. data/lib/oci/core/blockstorage_client_composite_operations.rb +238 -0
  5. data/lib/oci/core/compute_client.rb +1 -5
  6. data/lib/oci/core/core.rb +10 -0
  7. data/lib/oci/core/models/boot_volume.rb +18 -4
  8. data/lib/oci/core/models/cpe.rb +38 -1
  9. data/lib/oci/core/models/create_cpe_details.rb +38 -1
  10. data/lib/oci/core/models/create_drg_details.rb +41 -4
  11. data/lib/oci/core/models/create_internet_gateway_details.rb +38 -1
  12. data/lib/oci/core/models/create_ip_sec_connection_details.rb +38 -1
  13. data/lib/oci/core/models/create_local_peering_gateway_details.rb +38 -1
  14. data/lib/oci/core/models/create_public_ip_details.rb +38 -1
  15. data/lib/oci/core/models/create_vnic_details.rb +38 -1
  16. data/lib/oci/core/models/create_volume_group_backup_details.rb +239 -0
  17. data/lib/oci/core/models/create_volume_group_details.rb +231 -0
  18. data/lib/oci/core/models/drg.rb +38 -1
  19. data/lib/oci/core/models/internet_gateway.rb +38 -1
  20. data/lib/oci/core/models/ip_sec_connection.rb +38 -1
  21. data/lib/oci/core/models/launch_options.rb +4 -0
  22. data/lib/oci/core/models/local_peering_gateway.rb +38 -1
  23. data/lib/oci/core/models/public_ip.rb +38 -1
  24. data/lib/oci/core/models/update_cpe_details.rb +41 -4
  25. data/lib/oci/core/models/update_drg_details.rb +41 -4
  26. data/lib/oci/core/models/update_internet_gateway_details.rb +38 -1
  27. data/lib/oci/core/models/update_ip_sec_connection_details.rb +41 -4
  28. data/lib/oci/core/models/update_local_peering_gateway_details.rb +41 -4
  29. data/lib/oci/core/models/update_public_ip_details.rb +38 -1
  30. data/lib/oci/core/models/update_vnic_details.rb +38 -1
  31. data/lib/oci/core/models/update_volume_group_backup_details.rb +187 -0
  32. data/lib/oci/core/models/update_volume_group_details.rb +201 -0
  33. data/lib/oci/core/models/vnic.rb +38 -1
  34. data/lib/oci/core/models/volume.rb +18 -4
  35. data/lib/oci/core/models/volume_group.rb +322 -0
  36. data/lib/oci/core/models/volume_group_backup.rb +380 -0
  37. data/lib/oci/core/models/volume_group_source_details.rb +164 -0
  38. data/lib/oci/core/models/volume_group_source_from_volume_group_backup_details.rb +158 -0
  39. data/lib/oci/core/models/volume_group_source_from_volume_group_details.rb +158 -0
  40. data/lib/oci/core/models/volume_group_source_from_volumes_details.rb +158 -0
  41. data/lib/oci/core/virtual_network_client.rb +6 -6
  42. data/lib/oci/database/database.rb +3 -0
  43. data/lib/oci/database/database_client.rb +1 -1
  44. data/lib/oci/database/database_client_composite_operations.rb +1 -1
  45. data/lib/oci/database/models/backup.rb +31 -1
  46. data/lib/oci/database/models/backup_summary.rb +31 -1
  47. data/lib/oci/database/models/create_db_home_from_backup_details.rb +160 -0
  48. data/lib/oci/database/models/launch_db_system_base.rb +438 -0
  49. data/lib/oci/database/models/launch_db_system_details.rb +41 -227
  50. data/lib/oci/database/models/launch_db_system_from_backup_details.rb +314 -0
  51. data/lib/oci/file_storage/file_storage_client.rb +9 -8
  52. data/lib/oci/file_storage/models/export.rb +6 -5
  53. data/lib/oci/file_storage/models/file_system_summary.rb +1 -2
  54. data/lib/oci/version.rb +1 -1
  55. metadata +15 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 37573a9ca10b5391667b82d4ea82e579a1a895a3
4
- data.tar.gz: 601a533872b26b89fc408e3c7822edafd5b1decf
3
+ metadata.gz: 00fc6f703d1737eca425a90f4b38f21908e40e49
4
+ data.tar.gz: b3dad080a51b96f5c6f5b899f35e79daac284a5e
5
5
  SHA512:
6
- metadata.gz: 75e03fd60ed4a3cd5bd31a0e71d2a4e38c18cdbaa61da2913a474c19ea3ea8a11c101e920e989b6f31016e69080c94c2cb32790aaa531bdbb093fdcd5340b430
7
- data.tar.gz: 434a7e35aed3a027bd819dc73a57c5e1a7a6696ddadffa847f41c9607c50bd8719f1ba5d3507cbb56054a984b3f18c9435931a2792d045256915e1daf7c37dbf
6
+ metadata.gz: 2ea53e6f1ad10ce62615ec01e6a54a6b35b81e888dd5641c18841426ef038f7ef524cdb5e8e2b121a35b00124d8f628d78ee09bfbeb9519fab6e41c8e12d1155
7
+ data.tar.gz: c5a8236a93d618755ba7a69075ebb9a851fd18b9407e6fe16cb2de16d23cb5cf83190d75c80b53392b0fe32975e162ee508fd4f3375baebc2e9b64e994923c50
data/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  # Oracle Cloud Infrastructure Ruby SDK
2
- **Version 2.1.2**
2
+ **Version 2.2.0**
3
3
 
4
4
  This topic describes how to install, configure, and use the Oracle Cloud Infrastructure Ruby SDK.
5
5
 
@@ -73,8 +73,7 @@ The following table provides details about some of the attributes of the SDK.
73
73
  <p>
74
74
  In addition to using waiters, you can use the CompositeOperation classes in the SDK (e.g. {OCI::Core::ComputeClientCompositeOperations}) to perform
75
75
  an action on a resource and wait for it to enter a particular state (or states). The CompositeOperation classes provide convenience methods so that
76
- you yourself do not have to invoke an operation and then separately invoke a waiter. An example of using the CompositeOperations classes can be found
77
- in the examples folder of the Ruby SDK <a href="https://docs.us-phoenix-1.oraclecloud.com/tools/ruby/latest/download/oci-ruby-sdk.zip">download</a>
76
+ you yourself do not have to invoke an operation and then separately invoke a waiter. An example of using the CompositeOperations classes: <a href="https://github.com/oracle/oci-ruby-sdk/blob/master/examples-oci/composite_operations_example.rb">composite_operations_example.rb</a>
78
77
  </p>
79
78
  </td>
80
79
  </tr>
@@ -85,7 +84,7 @@ The following table provides details about some of the attributes of the SDK.
85
84
  <tr>
86
85
  <td>Instance Principals Authentication</td>
87
86
  <td>
88
- The Ruby SDK supports <a href="https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Tasks/callingservicesfrominstances.htm">Instance Principals</a> authentication via the use of the {OCI::Auth::Signers::InstancePrincipalsSecurityTokenSigner} class. An example of using Instance Principals authentication can be found in the examples folder of the Ruby SDK <a href="https://docs.us-phoenix-1.oraclecloud.com/tools/ruby/latest/download/oci-ruby-sdk.zip">download</a>
87
+ The Ruby SDK supports <a href="https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Tasks/callingservicesfrominstances.htm">Instance Principals</a> authentication via the use of the {OCI::Auth::Signers::InstancePrincipalsSecurityTokenSigner} class. An example of using Instance Principals authentication: <a href="https://github.com/oracle/oci-ruby-sdk/blob/master/examples-oci/instance_principals_example.rb">instance_principals_example.rb</a>
89
88
  </td>
90
89
  </tr>
91
90
  <tr>
@@ -93,20 +92,22 @@ The following table provides details about some of the attributes of the SDK.
93
92
  <td>
94
93
  The Object Storage service supports multipart uploads to make large object uploads easier by splitting the large object into parts. The Ruby SDK supports raw multipart upload operations for advanced use cases, as well as a higher-level upload class that uses the multipart upload APIs.
95
94
  <p>
96
- <a href="https://docs.us-phoenix-1.oraclecloud.com/Content/Object/Tasks/managingmultipartuploads.htm">Managing Multipart Uploads</a> provides links to the APIs used for raw multipart upload operations. Higher-level uploads can be performed using the {OCI::ObjectStorage::Transfer::UploadManager}.
95
+ <a href="https://docs.us-phoenix-1.oraclecloud.com/Content/Object/Tasks/usingmultipartuploads.htm">Managing Multipart Uploads</a> provides links to the APIs used for raw multipart upload operations. Higher-level uploads can be performed using the {OCI::ObjectStorage::Transfer::UploadManager}.
97
96
  </p>
98
97
  <p>
99
98
  The UploadManager simplifies interaction with the Object Storage service by abstracting away the method used to upload objects and can handle uploading an entire object at once, or in multiple parts if it is of sufficient size (which is configurable via a {OCI::ObjectStorage::Transfer::UploadManagerConfig} object). In the latter case, the UploadManager will split a large object into parts for you, upload the parts in parallel, and then recombine and commit the parts as a single object in Object Storage.
100
99
  </p>
101
100
  <p>
102
- Examples of using the Upload Manager can be found in the examples folder of the Ruby SDK <a href="https://docs.us-phoenix-1.oraclecloud.com/tools/ruby/latest/download/oci-ruby-sdk.zip">download</a>
101
+ Example of using the Upload Manager: <a href="https://github.com/oracle/oci-ruby-sdk/blob/master/examples-oci/upload_manager.rb">upload_manager.rb</a>
102
+ <br>
103
+ Example of using the Upload Manager from <code>stdin</code>: <a href="https://github.com/oracle/oci-ruby-sdk/blob/master/examples-oci/upload_manager_stdin_example.rb">upload_manager_stdin_example.rb</a>
103
104
  </p>
104
105
  </td>
105
106
  </tr>
106
107
  <tr>
107
108
  <td>Retries</td>
108
109
  <td>
109
- By default the Ruby SDK will not retry failed service calls, however the SDK supports specifying per client and per operation retry configurations. An example of using retries can be found in the examples folder of the Ruby SDK <a href="https://docs.us-phoenix-1.oraclecloud.com/tools/ruby/latest/download/oci-ruby-sdk.zip">download</a>
110
+ By default the Ruby SDK will not retry failed service calls, however the SDK supports specifying per client and per operation retry configurations. An example of using retries: <a href="https://github.com/oracle/oci-ruby-sdk/blob/master/examples-oci/retry_example.rb">retry_example.rb</a>
110
111
  </td>
111
112
  </tr>
112
113
  </tbody>
@@ -130,7 +131,7 @@ To use the Ruby SDK, you must have:
130
131
 
131
132
  `gem install oci`
132
133
 
133
- You can also [download the SDK](https://docs.us-phoenix-1.oraclecloud.com/tools/ruby/latest/download/oci-ruby-sdk.zip) as a zip file containing the gem file, examples, and documentation.
134
+ You can also [download the SDK](https://github.com/oracle/oci-ruby-sdk/releases) as a zip file containing the gem file, examples, and documentation.
134
135
 
135
136
  Install the gem with the following command:
136
137
 
@@ -345,7 +346,7 @@ The other errors you may encounter while using the SDK are:
345
346
  * {OCI::Errors::MultipartUploadError MultipartUploadError} when using {OCI::ObjectStorage::Transfer::UploadManager UploadManager}. The {OCI::Errors::MultipartUploadError#errors errors} attribute can be inspected to see what errors occurred during the upload, and the {OCI::Errors::MultipartUploadError#upload_id upload_id} can be used if you wish to try and resume the upload via the UploadManager's {OCI::ObjectStorage::Transfer::UploadManager#resume resume} method
346
347
 
347
348
  ## Examples
348
- The example code in this section shows how various parts of the Ruby SDK work. More examples can be found in the SDK download.
349
+ The example code in this section shows how various parts of the Ruby SDK work. More examples can be found from the [Ruby SDK on GitHub](https://github.com/oracle/oci-ruby-sdk/tree/master/examples-oci).
349
350
 
350
351
  ### Management Operations on a User
351
352
  The following example runs create, read, update, and delete (CRUD) operations on users.
@@ -529,19 +530,31 @@ The {OCI::Signer} can be used to sign arbitrary requests to the Oracle Cloud Inf
529
530
 
530
531
  ## Documentation
531
532
 
532
- Full documentation, including prerequisites and installation and configuration instructions, can be found [here](https://docs.us-phoenix-1.oraclecloud.com/Content/API/SDKDocs/rubysdk.htm).
533
+ Full documentation, including prerequisites, installation, and configuration instructions can be found [here](https://docs.us-phoenix-1.oraclecloud.com/Content/API/SDKDocs/rubysdk.htm).
533
534
 
534
535
  API reference can be found [here](https://docs.us-phoenix-1.oraclecloud.com/tools/ruby/latest/frames.html).
535
536
 
536
537
  ## Changes
537
538
 
538
- See [CHANGELOG](CHANGELOG.md).
539
+ See [CHANGELOG](https://github.com/oracle/oci-ruby-sdk/blob/master/CHANGELOG.md).
540
+
541
+ ## Contributing
542
+
543
+ oci-ruby-sdk is an open source project. See [CONTRIBUTING](https://github.com/oracle/oci-ruby-sdk/blob/master/CONTRIBUTING.md) for details.
544
+
545
+ Oracle gratefully acknowledges the contributions to oci-ruby-sdk that have been made by the community.
539
546
 
540
547
  ## Notifications
541
548
  To be notified when a new version of the Ruby SDK is released, subscribe to the [Atom feed](https://rubygems.org/gems/oci/versions.atom).
542
549
 
550
+ ## Known Issues
551
+
552
+ You can find information on any known issues with the SDK [here](https://docs.us-phoenix-1.oraclecloud.com/Content/knownissues.htm) and under the [Issues](https://github.com/oracle/oci-ruby-sdk/issues) tab of this project's [GitHub repository](https://github.com/oracle/oci-ruby-sdk).
553
+
543
554
  ## Questions or Feedback?
544
- Ways to get in touch:
555
+ You can post an issue on the [Issues](https://github.com/oracle/oci-ruby-sdk/issues) tab of this project's [GitHub repository](https://github.com/oracle/oci-ruby-sdk).
556
+
557
+ Addtional ways to get in touch:
545
558
 
546
559
  * [Stack Overflow](https://stackoverflow.com/): Please use the [oracle-cloud-infrastructure](https://stackoverflow.com/questions/tagged/oracle-cloud-infrastructure) and [oci-ruby-sdk](https://stackoverflow.com/questions/tagged/oci-ruby-sdk) tags in your post
547
560
  * [Developer Tools section](https://community.oracle.com/community/cloud_computing/bare-metal/content?filterID=contentstatus%5Bpublished%5D~category%5Bdeveloper-tools%5D&filterID=contentstatus%5Bpublished%5D~objecttype~objecttype%5Bthread%5D) of the Oracle Cloud forums
@@ -553,4 +566,4 @@ Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
553
566
 
554
567
  This SDK and sample is dual licensed under the Universal Permissive License 1.0 and the Apache License 2.0.
555
568
 
556
- See [LICENSE](LICENSE.txt) for more details.
569
+ See [LICENSE](https://github.com/oracle/oci-ruby-sdk/blob/master/LICENSE.txt) for more details.
@@ -284,6 +284,124 @@ module OCI
284
284
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
285
285
 
286
286
 
287
+ # Creates a new volume group in the specified compartment. A volume group can have at most 20 block volumes.
288
+ # A volume group is a collection of volumes and may be created from a list of volumes, cloning an existing
289
+ # volume group or by restoring a volume group backup.
290
+ # You may optionally specify a *display name* for the volume group, which is simply a friendly name or
291
+ # description. It does not have to be unique, and you can change it. Avoid entering confidential information.
292
+ #
293
+ # @param [OCI::Core::Models::CreateVolumeGroupDetails] create_volume_group_details Request to create a new volume group.
294
+ # @param [Hash] opts the optional parameters
295
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
296
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
297
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
298
+ # server error without risk of executing that same action again. Retry tokens expire after 24
299
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
300
+ # has been deleted and purged from the system, then a retry of the original creation request
301
+ # may be rejected).
302
+ #
303
+ # @return [Response] A Response object with data of type {OCI::Core::Models::VolumeGroup VolumeGroup}
304
+ def create_volume_group(create_volume_group_details, opts = {})
305
+ logger.debug 'Calling operation BlockstorageClient#create_volume_group.' if logger
306
+
307
+ raise "Missing the required parameter 'create_volume_group_details' when calling create_volume_group." if create_volume_group_details.nil?
308
+
309
+ path = '/volumeGroups'
310
+ operation_signing_strategy = :standard
311
+
312
+ # Query Params
313
+ query_params = {}
314
+
315
+ # Header Params
316
+ header_params = {}
317
+ header_params['accept'] = 'application/json'
318
+ header_params['content-type'] = 'application/json'
319
+ header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
320
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
321
+
322
+ post_body = @api_client.object_to_http_body(create_volume_group_details)
323
+
324
+ # rubocop:disable Metrics/BlockLength
325
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'BlockstorageClient#create_volume_group') do
326
+ @api_client.call_api(
327
+ :POST,
328
+ path,
329
+ endpoint,
330
+ header_params: header_params,
331
+ query_params: query_params,
332
+ operation_signing_strategy: operation_signing_strategy,
333
+ body: post_body,
334
+ return_type: 'OCI::Core::Models::VolumeGroup'
335
+ )
336
+ end
337
+ # rubocop:enable Metrics/BlockLength
338
+ end
339
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
340
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
341
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
342
+
343
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
344
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
345
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
346
+
347
+
348
+ # Creates a new group backup of the specified volume group.
349
+ #
350
+ # @param [OCI::Core::Models::CreateVolumeGroupBackupDetails] create_volume_group_backup_details Request to create a new backup group of given volume group.
351
+ # @param [Hash] opts the optional parameters
352
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
353
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
354
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
355
+ # server error without risk of executing that same action again. Retry tokens expire after 24
356
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
357
+ # has been deleted and purged from the system, then a retry of the original creation request
358
+ # may be rejected).
359
+ #
360
+ # @return [Response] A Response object with data of type {OCI::Core::Models::VolumeGroupBackup VolumeGroupBackup}
361
+ def create_volume_group_backup(create_volume_group_backup_details, opts = {})
362
+ logger.debug 'Calling operation BlockstorageClient#create_volume_group_backup.' if logger
363
+
364
+ raise "Missing the required parameter 'create_volume_group_backup_details' when calling create_volume_group_backup." if create_volume_group_backup_details.nil?
365
+
366
+ path = '/volumeGroupBackups'
367
+ operation_signing_strategy = :standard
368
+
369
+ # Query Params
370
+ query_params = {}
371
+
372
+ # Header Params
373
+ header_params = {}
374
+ header_params['accept'] = 'application/json'
375
+ header_params['content-type'] = 'application/json'
376
+ header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
377
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
378
+
379
+ post_body = @api_client.object_to_http_body(create_volume_group_backup_details)
380
+
381
+ # rubocop:disable Metrics/BlockLength
382
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'BlockstorageClient#create_volume_group_backup') do
383
+ @api_client.call_api(
384
+ :POST,
385
+ path,
386
+ endpoint,
387
+ header_params: header_params,
388
+ query_params: query_params,
389
+ operation_signing_strategy: operation_signing_strategy,
390
+ body: post_body,
391
+ return_type: 'OCI::Core::Models::VolumeGroupBackup'
392
+ )
393
+ end
394
+ # rubocop:enable Metrics/BlockLength
395
+ end
396
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
397
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
398
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
399
+
400
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
401
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
402
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
403
+
404
+
287
405
  # Deletes the specified boot volume. The volume cannot have an active connection to an instance.
288
406
  # To disconnect the boot volume from a connected instance, see
289
407
  # [Disconnecting From a Boot Volume](https://docs.us-phoenix-1.oraclecloud.com/Content/Block/Tasks/deletingbootvolume.htm).
@@ -499,6 +617,113 @@ module OCI
499
617
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
500
618
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
501
619
 
620
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
621
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
622
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
623
+
624
+
625
+ # Deletes the specified volume group. This will NOT delete data volumes.
626
+ #
627
+ # @param [String] volume_group_id The Oracle Cloud ID (OCID) that uniquely identifies the volume group.
628
+ # @param [Hash] opts the optional parameters
629
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
630
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
631
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
632
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
633
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
634
+ #
635
+ # @return [Response] A Response object with data of type nil
636
+ def delete_volume_group(volume_group_id, opts = {})
637
+ logger.debug 'Calling operation BlockstorageClient#delete_volume_group.' if logger
638
+
639
+ raise "Missing the required parameter 'volume_group_id' when calling delete_volume_group." if volume_group_id.nil?
640
+ raise "Parameter value for 'volume_group_id' must not be blank" if OCI::Internal::Util.blank_string?(volume_group_id)
641
+
642
+ path = '/volumeGroups/{volumeGroupId}'.sub('{volumeGroupId}', volume_group_id.to_s)
643
+ operation_signing_strategy = :standard
644
+
645
+ # Query Params
646
+ query_params = {}
647
+
648
+ # Header Params
649
+ header_params = {}
650
+ header_params['accept'] = 'application/json'
651
+ header_params['content-type'] = 'application/json'
652
+ header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
653
+
654
+ post_body = nil
655
+
656
+ # rubocop:disable Metrics/BlockLength
657
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'BlockstorageClient#delete_volume_group') do
658
+ @api_client.call_api(
659
+ :DELETE,
660
+ path,
661
+ endpoint,
662
+ header_params: header_params,
663
+ query_params: query_params,
664
+ operation_signing_strategy: operation_signing_strategy,
665
+ body: post_body
666
+ )
667
+ end
668
+ # rubocop:enable Metrics/BlockLength
669
+ end
670
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
671
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
672
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
673
+
674
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
675
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
676
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
677
+
678
+
679
+ # Deletes a volume group backup. This will NOT delete backups within the volume group backup.
680
+ # @param [String] volume_group_backup_id The Oracle Cloud ID (OCID) that uniquely identifies the volume group backup.
681
+ # @param [Hash] opts the optional parameters
682
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
683
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
684
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
685
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
686
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
687
+ #
688
+ # @return [Response] A Response object with data of type nil
689
+ def delete_volume_group_backup(volume_group_backup_id, opts = {})
690
+ logger.debug 'Calling operation BlockstorageClient#delete_volume_group_backup.' if logger
691
+
692
+ raise "Missing the required parameter 'volume_group_backup_id' when calling delete_volume_group_backup." if volume_group_backup_id.nil?
693
+ raise "Parameter value for 'volume_group_backup_id' must not be blank" if OCI::Internal::Util.blank_string?(volume_group_backup_id)
694
+
695
+ path = '/volumeGroupBackups/{volumeGroupBackupId}'.sub('{volumeGroupBackupId}', volume_group_backup_id.to_s)
696
+ operation_signing_strategy = :standard
697
+
698
+ # Query Params
699
+ query_params = {}
700
+
701
+ # Header Params
702
+ header_params = {}
703
+ header_params['accept'] = 'application/json'
704
+ header_params['content-type'] = 'application/json'
705
+ header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
706
+
707
+ post_body = nil
708
+
709
+ # rubocop:disable Metrics/BlockLength
710
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'BlockstorageClient#delete_volume_group_backup') do
711
+ @api_client.call_api(
712
+ :DELETE,
713
+ path,
714
+ endpoint,
715
+ header_params: header_params,
716
+ query_params: query_params,
717
+ operation_signing_strategy: operation_signing_strategy,
718
+ body: post_body
719
+ )
720
+ end
721
+ # rubocop:enable Metrics/BlockLength
722
+ end
723
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
724
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
725
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
726
+
502
727
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
503
728
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
504
729
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
@@ -817,40 +1042,26 @@ module OCI
817
1042
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
818
1043
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
819
1044
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
1045
+ # rubocop:disable Lint/UnusedMethodArgument
820
1046
 
821
1047
 
822
- # Lists the boot volumes in the specified compartment and Availability Domain.
823
- #
824
- # @param [String] availability_domain The name of the Availability Domain.
825
- #
826
- # Example: `Uocm:PHX-AD-1`
827
- #
828
- # @param [String] compartment_id The OCID of the compartment.
1048
+ # Gets information for the specified volume group.
1049
+ # @param [String] volume_group_id The Oracle Cloud ID (OCID) that uniquely identifies the volume group.
829
1050
  # @param [Hash] opts the optional parameters
830
1051
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
831
1052
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
832
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
833
- #
834
- # Example: `500`
835
- #
836
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
837
- #
838
- # @return [Response] A Response object with data of type Array<{OCI::Core::Models::BootVolume BootVolume}>
839
- def list_boot_volumes(availability_domain, compartment_id, opts = {})
840
- logger.debug 'Calling operation BlockstorageClient#list_boot_volumes.' if logger
1053
+ # @return [Response] A Response object with data of type {OCI::Core::Models::VolumeGroup VolumeGroup}
1054
+ def get_volume_group(volume_group_id, opts = {})
1055
+ logger.debug 'Calling operation BlockstorageClient#get_volume_group.' if logger
841
1056
 
842
- raise "Missing the required parameter 'availability_domain' when calling list_boot_volumes." if availability_domain.nil?
843
- raise "Missing the required parameter 'compartment_id' when calling list_boot_volumes." if compartment_id.nil?
1057
+ raise "Missing the required parameter 'volume_group_id' when calling get_volume_group." if volume_group_id.nil?
1058
+ raise "Parameter value for 'volume_group_id' must not be blank" if OCI::Internal::Util.blank_string?(volume_group_id)
844
1059
 
845
- path = '/bootVolumes'
1060
+ path = '/volumeGroups/{volumeGroupId}'.sub('{volumeGroupId}', volume_group_id.to_s)
846
1061
  operation_signing_strategy = :standard
847
1062
 
848
1063
  # Query Params
849
1064
  query_params = {}
850
- query_params[:availabilityDomain] = availability_domain
851
- query_params[:compartmentId] = compartment_id
852
- query_params[:limit] = opts[:limit] if opts[:limit]
853
- query_params[:page] = opts[:page] if opts[:page]
854
1065
 
855
1066
  # Header Params
856
1067
  header_params = {}
@@ -860,7 +1071,7 @@ module OCI
860
1071
  post_body = nil
861
1072
 
862
1073
  # rubocop:disable Metrics/BlockLength
863
- OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'BlockstorageClient#list_boot_volumes') do
1074
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'BlockstorageClient#get_volume_group') do
864
1075
  @api_client.call_api(
865
1076
  :GET,
866
1077
  path,
@@ -869,7 +1080,7 @@ module OCI
869
1080
  query_params: query_params,
870
1081
  operation_signing_strategy: operation_signing_strategy,
871
1082
  body: post_body,
872
- return_type: 'Array<OCI::Core::Models::BootVolume>'
1083
+ return_type: 'OCI::Core::Models::VolumeGroup'
873
1084
  )
874
1085
  end
875
1086
  # rubocop:enable Metrics/BlockLength
@@ -877,34 +1088,31 @@ module OCI
877
1088
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
878
1089
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
879
1090
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
1091
+ # rubocop:enable Lint/UnusedMethodArgument
880
1092
 
881
1093
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
882
1094
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
883
1095
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
1096
+ # rubocop:disable Lint/UnusedMethodArgument
884
1097
 
885
1098
 
886
- # Lists all volume backup policies available to the caller.
1099
+ # Gets information for the specified volume group backup.
1100
+ # @param [String] volume_group_backup_id The Oracle Cloud ID (OCID) that uniquely identifies the volume group backup.
887
1101
  # @param [Hash] opts the optional parameters
888
1102
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
889
1103
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
890
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
891
- #
892
- # Example: `500`
893
- #
894
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
895
- #
896
- # @return [Response] A Response object with data of type Array<{OCI::Core::Models::VolumeBackupPolicy VolumeBackupPolicy}>
897
- def list_volume_backup_policies(opts = {})
898
- logger.debug 'Calling operation BlockstorageClient#list_volume_backup_policies.' if logger
1104
+ # @return [Response] A Response object with data of type {OCI::Core::Models::VolumeGroupBackup VolumeGroupBackup}
1105
+ def get_volume_group_backup(volume_group_backup_id, opts = {})
1106
+ logger.debug 'Calling operation BlockstorageClient#get_volume_group_backup.' if logger
899
1107
 
1108
+ raise "Missing the required parameter 'volume_group_backup_id' when calling get_volume_group_backup." if volume_group_backup_id.nil?
1109
+ raise "Parameter value for 'volume_group_backup_id' must not be blank" if OCI::Internal::Util.blank_string?(volume_group_backup_id)
900
1110
 
901
- path = '/volumeBackupPolicies'
1111
+ path = '/volumeGroupBackups/{volumeGroupBackupId}'.sub('{volumeGroupBackupId}', volume_group_backup_id.to_s)
902
1112
  operation_signing_strategy = :standard
903
1113
 
904
1114
  # Query Params
905
1115
  query_params = {}
906
- query_params[:limit] = opts[:limit] if opts[:limit]
907
- query_params[:page] = opts[:page] if opts[:page]
908
1116
 
909
1117
  # Header Params
910
1118
  header_params = {}
@@ -914,7 +1122,7 @@ module OCI
914
1122
  post_body = nil
915
1123
 
916
1124
  # rubocop:disable Metrics/BlockLength
917
- OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'BlockstorageClient#list_volume_backup_policies') do
1125
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'BlockstorageClient#get_volume_group_backup') do
918
1126
  @api_client.call_api(
919
1127
  :GET,
920
1128
  path,
@@ -923,7 +1131,7 @@ module OCI
923
1131
  query_params: query_params,
924
1132
  operation_signing_strategy: operation_signing_strategy,
925
1133
  body: post_body,
926
- return_type: 'Array<OCI::Core::Models::VolumeBackupPolicy>'
1134
+ return_type: 'OCI::Core::Models::VolumeGroupBackup'
927
1135
  )
928
1136
  end
929
1137
  # rubocop:enable Metrics/BlockLength
@@ -931,44 +1139,165 @@ module OCI
931
1139
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
932
1140
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
933
1141
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
1142
+ # rubocop:enable Lint/UnusedMethodArgument
934
1143
 
935
1144
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
936
1145
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
937
1146
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
938
1147
 
939
1148
 
940
- # Lists the volume backups in the specified compartment. You can filter the results by volume.
1149
+ # Lists the boot volumes in the specified compartment and Availability Domain.
1150
+ #
1151
+ # @param [String] availability_domain The name of the Availability Domain.
1152
+ #
1153
+ # Example: `Uocm:PHX-AD-1`
941
1154
  #
942
1155
  # @param [String] compartment_id The OCID of the compartment.
943
1156
  # @param [Hash] opts the optional parameters
944
1157
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
945
1158
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
946
- # @option opts [String] :volume_id The OCID of the volume.
947
1159
  # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
948
1160
  #
949
1161
  # Example: `500`
950
1162
  #
951
1163
  # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
952
1164
  #
953
- # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
954
- #
955
- # @option opts [String] :sort_by The field to sort by. You can provide one sort order (`sortOrder`). Default order for
956
- # TIMECREATED is descending. Default order for DISPLAYNAME is ascending. The DISPLAYNAME
957
- # sort order is case sensitive.
958
- #
959
- # **Note:** In general, some \"List\" operations (for example, `ListInstances`) let you
960
- # optionally filter by Availability Domain if the scope of the resource type is within a
961
- # single Availability Domain. If you call one of these \"List\" operations without specifying
962
- # an Availability Domain, the resources are grouped by Availability Domain, then sorted.
963
- #
964
- # Allowed values are: TIMECREATED, DISPLAYNAME
965
- # @option opts [String] :sort_order The sort order to use, either ascending (`ASC`) or descending (`DESC`). The DISPLAYNAME sort order
966
- # is case sensitive.
967
- #
968
- # Allowed values are: ASC, DESC
969
- # @option opts [String] :lifecycle_state A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
970
- #
971
- # @return [Response] A Response object with data of type Array<{OCI::Core::Models::VolumeBackup VolumeBackup}>
1165
+ # @option opts [String] :volume_group_id The OCID of the volume group.
1166
+ # @return [Response] A Response object with data of type Array<{OCI::Core::Models::BootVolume BootVolume}>
1167
+ def list_boot_volumes(availability_domain, compartment_id, opts = {})
1168
+ logger.debug 'Calling operation BlockstorageClient#list_boot_volumes.' if logger
1169
+
1170
+ raise "Missing the required parameter 'availability_domain' when calling list_boot_volumes." if availability_domain.nil?
1171
+ raise "Missing the required parameter 'compartment_id' when calling list_boot_volumes." if compartment_id.nil?
1172
+
1173
+ path = '/bootVolumes'
1174
+ operation_signing_strategy = :standard
1175
+
1176
+ # Query Params
1177
+ query_params = {}
1178
+ query_params[:availabilityDomain] = availability_domain
1179
+ query_params[:compartmentId] = compartment_id
1180
+ query_params[:limit] = opts[:limit] if opts[:limit]
1181
+ query_params[:page] = opts[:page] if opts[:page]
1182
+ query_params[:volumeGroupId] = opts[:volume_group_id] if opts[:volume_group_id]
1183
+
1184
+ # Header Params
1185
+ header_params = {}
1186
+ header_params['accept'] = 'application/json'
1187
+ header_params['content-type'] = 'application/json'
1188
+
1189
+ post_body = nil
1190
+
1191
+ # rubocop:disable Metrics/BlockLength
1192
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'BlockstorageClient#list_boot_volumes') do
1193
+ @api_client.call_api(
1194
+ :GET,
1195
+ path,
1196
+ endpoint,
1197
+ header_params: header_params,
1198
+ query_params: query_params,
1199
+ operation_signing_strategy: operation_signing_strategy,
1200
+ body: post_body,
1201
+ return_type: 'Array<OCI::Core::Models::BootVolume>'
1202
+ )
1203
+ end
1204
+ # rubocop:enable Metrics/BlockLength
1205
+ end
1206
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1207
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
1208
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
1209
+
1210
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1211
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
1212
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
1213
+
1214
+
1215
+ # Lists all volume backup policies available to the caller.
1216
+ # @param [Hash] opts the optional parameters
1217
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
1218
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
1219
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
1220
+ #
1221
+ # Example: `500`
1222
+ #
1223
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
1224
+ #
1225
+ # @return [Response] A Response object with data of type Array<{OCI::Core::Models::VolumeBackupPolicy VolumeBackupPolicy}>
1226
+ def list_volume_backup_policies(opts = {})
1227
+ logger.debug 'Calling operation BlockstorageClient#list_volume_backup_policies.' if logger
1228
+
1229
+
1230
+ path = '/volumeBackupPolicies'
1231
+ operation_signing_strategy = :standard
1232
+
1233
+ # Query Params
1234
+ query_params = {}
1235
+ query_params[:limit] = opts[:limit] if opts[:limit]
1236
+ query_params[:page] = opts[:page] if opts[:page]
1237
+
1238
+ # Header Params
1239
+ header_params = {}
1240
+ header_params['accept'] = 'application/json'
1241
+ header_params['content-type'] = 'application/json'
1242
+
1243
+ post_body = nil
1244
+
1245
+ # rubocop:disable Metrics/BlockLength
1246
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'BlockstorageClient#list_volume_backup_policies') do
1247
+ @api_client.call_api(
1248
+ :GET,
1249
+ path,
1250
+ endpoint,
1251
+ header_params: header_params,
1252
+ query_params: query_params,
1253
+ operation_signing_strategy: operation_signing_strategy,
1254
+ body: post_body,
1255
+ return_type: 'Array<OCI::Core::Models::VolumeBackupPolicy>'
1256
+ )
1257
+ end
1258
+ # rubocop:enable Metrics/BlockLength
1259
+ end
1260
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1261
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
1262
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
1263
+
1264
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1265
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
1266
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
1267
+
1268
+
1269
+ # Lists the volume backups in the specified compartment. You can filter the results by volume.
1270
+ #
1271
+ # @param [String] compartment_id The OCID of the compartment.
1272
+ # @param [Hash] opts the optional parameters
1273
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
1274
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
1275
+ # @option opts [String] :volume_id The OCID of the volume.
1276
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
1277
+ #
1278
+ # Example: `500`
1279
+ #
1280
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
1281
+ #
1282
+ # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
1283
+ #
1284
+ # @option opts [String] :sort_by The field to sort by. You can provide one sort order (`sortOrder`). Default order for
1285
+ # TIMECREATED is descending. Default order for DISPLAYNAME is ascending. The DISPLAYNAME
1286
+ # sort order is case sensitive.
1287
+ #
1288
+ # **Note:** In general, some \"List\" operations (for example, `ListInstances`) let you
1289
+ # optionally filter by Availability Domain if the scope of the resource type is within a
1290
+ # single Availability Domain. If you call one of these \"List\" operations without specifying
1291
+ # an Availability Domain, the resources are grouped by Availability Domain, then sorted.
1292
+ #
1293
+ # Allowed values are: TIMECREATED, DISPLAYNAME
1294
+ # @option opts [String] :sort_order The sort order to use, either ascending (`ASC`) or descending (`DESC`). The DISPLAYNAME sort order
1295
+ # is case sensitive.
1296
+ #
1297
+ # Allowed values are: ASC, DESC
1298
+ # @option opts [String] :lifecycle_state A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
1299
+ #
1300
+ # @return [Response] A Response object with data of type Array<{OCI::Core::Models::VolumeBackup VolumeBackup}>
972
1301
  def list_volume_backups(compartment_id, opts = {})
973
1302
  logger.debug 'Calling operation BlockstorageClient#list_volume_backups.' if logger
974
1303
 
@@ -1031,6 +1360,189 @@ module OCI
1031
1360
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
1032
1361
 
1033
1362
 
1363
+ # Lists the backups for volume groups in the specified compartment. You can filter the results by volume group.
1364
+ #
1365
+ # @param [String] compartment_id The OCID of the compartment.
1366
+ # @param [Hash] opts the optional parameters
1367
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
1368
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
1369
+ # @option opts [String] :volume_group_id The OCID of the volume group.
1370
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
1371
+ #
1372
+ # Example: `500`
1373
+ #
1374
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
1375
+ #
1376
+ # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
1377
+ #
1378
+ # @option opts [String] :sort_by The field to sort by. You can provide one sort order (`sortOrder`). Default order for
1379
+ # TIMECREATED is descending. Default order for DISPLAYNAME is ascending. The DISPLAYNAME
1380
+ # sort order is case sensitive.
1381
+ #
1382
+ # **Note:** In general, some \"List\" operations (for example, `ListInstances`) let you
1383
+ # optionally filter by Availability Domain if the scope of the resource type is within a
1384
+ # single Availability Domain. If you call one of these \"List\" operations without specifying
1385
+ # an Availability Domain, the resources are grouped by Availability Domain, then sorted.
1386
+ #
1387
+ # Allowed values are: TIMECREATED, DISPLAYNAME
1388
+ # @option opts [String] :sort_order The sort order to use, either ascending (`ASC`) or descending (`DESC`). The DISPLAYNAME sort order
1389
+ # is case sensitive.
1390
+ #
1391
+ # Allowed values are: ASC, DESC
1392
+ # @return [Response] A Response object with data of type Array<{OCI::Core::Models::VolumeGroupBackup VolumeGroupBackup}>
1393
+ def list_volume_group_backups(compartment_id, opts = {})
1394
+ logger.debug 'Calling operation BlockstorageClient#list_volume_group_backups.' if logger
1395
+
1396
+ raise "Missing the required parameter 'compartment_id' when calling list_volume_group_backups." if compartment_id.nil?
1397
+
1398
+ if opts[:sort_by] && !%w[TIMECREATED DISPLAYNAME].include?(opts[:sort_by])
1399
+ raise 'Invalid value for "sort_by", must be one of TIMECREATED, DISPLAYNAME.'
1400
+ end
1401
+
1402
+ if opts[:sort_order] && !%w[ASC DESC].include?(opts[:sort_order])
1403
+ raise 'Invalid value for "sort_order", must be one of ASC, DESC.'
1404
+ end
1405
+
1406
+ path = '/volumeGroupBackups'
1407
+ operation_signing_strategy = :standard
1408
+
1409
+ # Query Params
1410
+ query_params = {}
1411
+ query_params[:compartmentId] = compartment_id
1412
+ query_params[:volumeGroupId] = opts[:volume_group_id] if opts[:volume_group_id]
1413
+ query_params[:limit] = opts[:limit] if opts[:limit]
1414
+ query_params[:page] = opts[:page] if opts[:page]
1415
+ query_params[:displayName] = opts[:display_name] if opts[:display_name]
1416
+ query_params[:sortBy] = opts[:sort_by] if opts[:sort_by]
1417
+ query_params[:sortOrder] = opts[:sort_order] if opts[:sort_order]
1418
+
1419
+ # Header Params
1420
+ header_params = {}
1421
+ header_params['accept'] = 'application/json'
1422
+ header_params['content-type'] = 'application/json'
1423
+
1424
+ post_body = nil
1425
+
1426
+ # rubocop:disable Metrics/BlockLength
1427
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'BlockstorageClient#list_volume_group_backups') do
1428
+ @api_client.call_api(
1429
+ :GET,
1430
+ path,
1431
+ endpoint,
1432
+ header_params: header_params,
1433
+ query_params: query_params,
1434
+ operation_signing_strategy: operation_signing_strategy,
1435
+ body: post_body,
1436
+ return_type: 'Array<OCI::Core::Models::VolumeGroupBackup>'
1437
+ )
1438
+ end
1439
+ # rubocop:enable Metrics/BlockLength
1440
+ end
1441
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1442
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
1443
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
1444
+
1445
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1446
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
1447
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
1448
+
1449
+
1450
+ # Lists the volume groups in the specified compartment and Availability Domain.
1451
+ #
1452
+ # @param [String] compartment_id The OCID of the compartment.
1453
+ # @param [Hash] opts the optional parameters
1454
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
1455
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
1456
+ # @option opts [String] :availability_domain The name of the Availability Domain.
1457
+ #
1458
+ # Example: `Uocm:PHX-AD-1`
1459
+ #
1460
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
1461
+ #
1462
+ # Example: `500`
1463
+ #
1464
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
1465
+ #
1466
+ # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
1467
+ #
1468
+ # @option opts [String] :sort_by The field to sort by. You can provide one sort order (`sortOrder`). Default order for
1469
+ # TIMECREATED is descending. Default order for DISPLAYNAME is ascending. The DISPLAYNAME
1470
+ # sort order is case sensitive.
1471
+ #
1472
+ # **Note:** In general, some \"List\" operations (for example, `ListInstances`) let you
1473
+ # optionally filter by Availability Domain if the scope of the resource type is within a
1474
+ # single Availability Domain. If you call one of these \"List\" operations without specifying
1475
+ # an Availability Domain, the resources are grouped by Availability Domain, then sorted.
1476
+ #
1477
+ # Allowed values are: TIMECREATED, DISPLAYNAME
1478
+ # @option opts [String] :sort_order The sort order to use, either ascending (`ASC`) or descending (`DESC`). The DISPLAYNAME sort order
1479
+ # is case sensitive.
1480
+ #
1481
+ # Allowed values are: ASC, DESC
1482
+ # @option opts [String] :lifecycle_state A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
1483
+ # @return [Response] A Response object with data of type Array<{OCI::Core::Models::VolumeGroup VolumeGroup}>
1484
+ def list_volume_groups(compartment_id, opts = {})
1485
+ logger.debug 'Calling operation BlockstorageClient#list_volume_groups.' if logger
1486
+
1487
+ raise "Missing the required parameter 'compartment_id' when calling list_volume_groups." if compartment_id.nil?
1488
+
1489
+ if opts[:sort_by] && !%w[TIMECREATED DISPLAYNAME].include?(opts[:sort_by])
1490
+ raise 'Invalid value for "sort_by", must be one of TIMECREATED, DISPLAYNAME.'
1491
+ end
1492
+
1493
+ if opts[:sort_order] && !%w[ASC DESC].include?(opts[:sort_order])
1494
+ raise 'Invalid value for "sort_order", must be one of ASC, DESC.'
1495
+ end
1496
+
1497
+ if opts[:lifecycle_state] && !OCI::Core::Models::VolumeGroup::LIFECYCLE_STATE_ENUM.include?(opts[:lifecycle_state])
1498
+ raise 'Invalid value for "lifecycle_state", must be one of the values in OCI::Core::Models::VolumeGroup::LIFECYCLE_STATE_ENUM.'
1499
+ end
1500
+
1501
+ path = '/volumeGroups'
1502
+ operation_signing_strategy = :standard
1503
+
1504
+ # Query Params
1505
+ query_params = {}
1506
+ query_params[:compartmentId] = compartment_id
1507
+ query_params[:availabilityDomain] = opts[:availability_domain] if opts[:availability_domain]
1508
+ query_params[:limit] = opts[:limit] if opts[:limit]
1509
+ query_params[:page] = opts[:page] if opts[:page]
1510
+ query_params[:displayName] = opts[:display_name] if opts[:display_name]
1511
+ query_params[:sortBy] = opts[:sort_by] if opts[:sort_by]
1512
+ query_params[:sortOrder] = opts[:sort_order] if opts[:sort_order]
1513
+ query_params[:lifecycleState] = opts[:lifecycle_state] if opts[:lifecycle_state]
1514
+
1515
+ # Header Params
1516
+ header_params = {}
1517
+ header_params['accept'] = 'application/json'
1518
+ header_params['content-type'] = 'application/json'
1519
+
1520
+ post_body = nil
1521
+
1522
+ # rubocop:disable Metrics/BlockLength
1523
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'BlockstorageClient#list_volume_groups') do
1524
+ @api_client.call_api(
1525
+ :GET,
1526
+ path,
1527
+ endpoint,
1528
+ header_params: header_params,
1529
+ query_params: query_params,
1530
+ operation_signing_strategy: operation_signing_strategy,
1531
+ body: post_body,
1532
+ return_type: 'Array<OCI::Core::Models::VolumeGroup>'
1533
+ )
1534
+ end
1535
+ # rubocop:enable Metrics/BlockLength
1536
+ end
1537
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1538
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
1539
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
1540
+
1541
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1542
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
1543
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
1544
+
1545
+
1034
1546
  # Lists the volumes in the specified compartment and Availability Domain.
1035
1547
  #
1036
1548
  # @param [String] compartment_id The OCID of the compartment.
@@ -1063,6 +1575,7 @@ module OCI
1063
1575
  # is case sensitive.
1064
1576
  #
1065
1577
  # Allowed values are: ASC, DESC
1578
+ # @option opts [String] :volume_group_id The OCID of the volume group.
1066
1579
  # @option opts [String] :lifecycle_state A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
1067
1580
  #
1068
1581
  # @return [Response] A Response object with data of type Array<{OCI::Core::Models::Volume Volume}>
@@ -1095,6 +1608,7 @@ module OCI
1095
1608
  query_params[:displayName] = opts[:display_name] if opts[:display_name]
1096
1609
  query_params[:sortBy] = opts[:sort_by] if opts[:sort_by]
1097
1610
  query_params[:sortOrder] = opts[:sort_order] if opts[:sort_order]
1611
+ query_params[:volumeGroupId] = opts[:volume_group_id] if opts[:volume_group_id]
1098
1612
  query_params[:lifecycleState] = opts[:lifecycle_state] if opts[:lifecycle_state]
1099
1613
 
1100
1614
  # Header Params
@@ -1295,6 +1809,121 @@ module OCI
1295
1809
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
1296
1810
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
1297
1811
 
1812
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1813
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
1814
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
1815
+
1816
+
1817
+ # Updates the set of volumes in a volume group along with (optionally) it's display name. This call can be used
1818
+ # to add or remove volumes in a volume group. The entire list of volume ids must be specified.
1819
+ # Avoid entering confidential information.
1820
+ #
1821
+ # @param [String] volume_group_id The Oracle Cloud ID (OCID) that uniquely identifies the volume group.
1822
+ # @param [OCI::Core::Models::UpdateVolumeGroupDetails] update_volume_group_details Update volume group's set of volumes and/or display name
1823
+ # @param [Hash] opts the optional parameters
1824
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
1825
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
1826
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
1827
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
1828
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
1829
+ #
1830
+ # @return [Response] A Response object with data of type {OCI::Core::Models::VolumeGroup VolumeGroup}
1831
+ def update_volume_group(volume_group_id, update_volume_group_details, opts = {})
1832
+ logger.debug 'Calling operation BlockstorageClient#update_volume_group.' if logger
1833
+
1834
+ raise "Missing the required parameter 'volume_group_id' when calling update_volume_group." if volume_group_id.nil?
1835
+ raise "Missing the required parameter 'update_volume_group_details' when calling update_volume_group." if update_volume_group_details.nil?
1836
+ raise "Parameter value for 'volume_group_id' must not be blank" if OCI::Internal::Util.blank_string?(volume_group_id)
1837
+
1838
+ path = '/volumeGroups/{volumeGroupId}'.sub('{volumeGroupId}', volume_group_id.to_s)
1839
+ operation_signing_strategy = :standard
1840
+
1841
+ # Query Params
1842
+ query_params = {}
1843
+
1844
+ # Header Params
1845
+ header_params = {}
1846
+ header_params['accept'] = 'application/json'
1847
+ header_params['content-type'] = 'application/json'
1848
+ header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
1849
+
1850
+ post_body = @api_client.object_to_http_body(update_volume_group_details)
1851
+
1852
+ # rubocop:disable Metrics/BlockLength
1853
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'BlockstorageClient#update_volume_group') do
1854
+ @api_client.call_api(
1855
+ :PUT,
1856
+ path,
1857
+ endpoint,
1858
+ header_params: header_params,
1859
+ query_params: query_params,
1860
+ operation_signing_strategy: operation_signing_strategy,
1861
+ body: post_body,
1862
+ return_type: 'OCI::Core::Models::VolumeGroup'
1863
+ )
1864
+ end
1865
+ # rubocop:enable Metrics/BlockLength
1866
+ end
1867
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1868
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
1869
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
1870
+
1871
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1872
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
1873
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
1874
+
1875
+
1876
+ # Updates the display name for the specified volume group backup.
1877
+ # @param [String] volume_group_backup_id The Oracle Cloud ID (OCID) that uniquely identifies the volume group backup.
1878
+ # @param [OCI::Core::Models::UpdateVolumeGroupBackupDetails] update_volume_group_backup_details Update volume group backup fields
1879
+ # @param [Hash] opts the optional parameters
1880
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
1881
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
1882
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
1883
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
1884
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
1885
+ #
1886
+ # @return [Response] A Response object with data of type {OCI::Core::Models::VolumeGroupBackup VolumeGroupBackup}
1887
+ def update_volume_group_backup(volume_group_backup_id, update_volume_group_backup_details, opts = {})
1888
+ logger.debug 'Calling operation BlockstorageClient#update_volume_group_backup.' if logger
1889
+
1890
+ raise "Missing the required parameter 'volume_group_backup_id' when calling update_volume_group_backup." if volume_group_backup_id.nil?
1891
+ raise "Missing the required parameter 'update_volume_group_backup_details' when calling update_volume_group_backup." if update_volume_group_backup_details.nil?
1892
+ raise "Parameter value for 'volume_group_backup_id' must not be blank" if OCI::Internal::Util.blank_string?(volume_group_backup_id)
1893
+
1894
+ path = '/volumeGroupBackups/{volumeGroupBackupId}'.sub('{volumeGroupBackupId}', volume_group_backup_id.to_s)
1895
+ operation_signing_strategy = :standard
1896
+
1897
+ # Query Params
1898
+ query_params = {}
1899
+
1900
+ # Header Params
1901
+ header_params = {}
1902
+ header_params['accept'] = 'application/json'
1903
+ header_params['content-type'] = 'application/json'
1904
+ header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
1905
+
1906
+ post_body = @api_client.object_to_http_body(update_volume_group_backup_details)
1907
+
1908
+ # rubocop:disable Metrics/BlockLength
1909
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'BlockstorageClient#update_volume_group_backup') do
1910
+ @api_client.call_api(
1911
+ :PUT,
1912
+ path,
1913
+ endpoint,
1914
+ header_params: header_params,
1915
+ query_params: query_params,
1916
+ operation_signing_strategy: operation_signing_strategy,
1917
+ body: post_body,
1918
+ return_type: 'OCI::Core::Models::VolumeGroupBackup'
1919
+ )
1920
+ end
1921
+ # rubocop:enable Metrics/BlockLength
1922
+ end
1923
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1924
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
1925
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
1926
+
1298
1927
  private
1299
1928
 
1300
1929
  def applicable_retry_config(opts = {})