oci 2.3.6 → 2.3.7

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.
Files changed (76) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -10
  3. data/lib/oci.rb +1 -0
  4. data/lib/oci/api_client.rb +2 -2
  5. data/lib/oci/audit/audit_client.rb +11 -9
  6. data/lib/oci/base_signer.rb +13 -13
  7. data/lib/oci/container_engine/container_engine_client.rb +43 -39
  8. data/lib/oci/container_engine/models/node_error.rb +1 -1
  9. data/lib/oci/container_engine/models/work_request_error.rb +1 -1
  10. data/lib/oci/core/blockstorage_client.rb +421 -75
  11. data/lib/oci/core/compute_client.rb +77 -75
  12. data/lib/oci/core/compute_client_composite_operations.rb +40 -0
  13. data/lib/oci/core/core.rb +4 -0
  14. data/lib/oci/core/models/boot_volume.rb +18 -4
  15. data/lib/oci/core/models/boot_volume_kms_key.rb +152 -0
  16. data/lib/oci/core/models/create_boot_volume_details.rb +15 -1
  17. data/lib/oci/core/models/create_image_details.rb +2 -0
  18. data/lib/oci/core/models/create_volume_details.rb +15 -1
  19. data/lib/oci/core/models/fast_connect_provider_service.rb +1 -1
  20. data/lib/oci/core/models/image.rb +2 -0
  21. data/lib/oci/core/models/instance.rb +2 -0
  22. data/lib/oci/core/models/instance_source_via_image_details.rb +18 -4
  23. data/lib/oci/core/models/launch_options.rb +2 -0
  24. data/lib/oci/core/models/update_boot_volume_kms_key_details.rb +154 -0
  25. data/lib/oci/core/models/update_volume_kms_key_details.rb +154 -0
  26. data/lib/oci/core/models/volume.rb +15 -1
  27. data/lib/oci/core/models/volume_kms_key.rb +152 -0
  28. data/lib/oci/core/virtual_network_client.rb +233 -231
  29. data/lib/oci/core/virtual_network_client_composite_operations.rb +80 -0
  30. data/lib/oci/database/database_client.rb +123 -121
  31. data/lib/oci/database/database_client_composite_operations.rb +399 -0
  32. data/lib/oci/database/models/patch.rb +1 -1
  33. data/lib/oci/database/models/patch_summary.rb +1 -1
  34. data/lib/oci/dns/dns_client.rb +38 -36
  35. data/lib/oci/email/email_client.rb +21 -19
  36. data/lib/oci/email/models/sender.rb +1 -1
  37. data/lib/oci/email/models/suppression.rb +1 -1
  38. data/lib/oci/file_storage/file_storage_client.rb +49 -47
  39. data/lib/oci/identity/identity_client.rb +151 -149
  40. data/lib/oci/identity/identity_client_composite_operations.rb +40 -0
  41. data/lib/oci/key_management/key_management.rb +40 -0
  42. data/lib/oci/key_management/kms_crypto_client.rb +258 -0
  43. data/lib/oci/key_management/kms_crypto_client_composite_operations.rb +24 -0
  44. data/lib/oci/key_management/kms_management_client.rb +716 -0
  45. data/lib/oci/key_management/kms_management_client_composite_operations.rb +181 -0
  46. data/lib/oci/key_management/kms_vault_client.rb +533 -0
  47. data/lib/oci/key_management/kms_vault_client_composite_operations.rb +182 -0
  48. data/lib/oci/key_management/models/create_key_details.rb +180 -0
  49. data/lib/oci/key_management/models/create_vault_details.rb +194 -0
  50. data/lib/oci/key_management/models/decrypt_data_details.rb +177 -0
  51. data/lib/oci/key_management/models/decrypted_data.rb +160 -0
  52. data/lib/oci/key_management/models/encrypt_data_details.rb +177 -0
  53. data/lib/oci/key_management/models/encrypted_data.rb +146 -0
  54. data/lib/oci/key_management/models/generate_key_details.rb +195 -0
  55. data/lib/oci/key_management/models/generated_key.rb +177 -0
  56. data/lib/oci/key_management/models/key.rb +318 -0
  57. data/lib/oci/key_management/models/key_shape.rb +178 -0
  58. data/lib/oci/key_management/models/key_summary.rb +287 -0
  59. data/lib/oci/key_management/models/key_version.rb +205 -0
  60. data/lib/oci/key_management/models/key_version_summary.rb +205 -0
  61. data/lib/oci/key_management/models/schedule_vault_deletion_details.rb +153 -0
  62. data/lib/oci/key_management/models/update_key_details.rb +152 -0
  63. data/lib/oci/key_management/models/update_vault_details.rb +152 -0
  64. data/lib/oci/key_management/models/vault.rb +350 -0
  65. data/lib/oci/key_management/models/vault_summary.rb +334 -0
  66. data/lib/oci/key_management/util.rb +2 -0
  67. data/lib/oci/load_balancer/load_balancer_client.rb +89 -87
  68. data/lib/oci/object_storage/models/bucket.rb +18 -4
  69. data/lib/oci/object_storage/models/create_bucket_details.rb +18 -4
  70. data/lib/oci/object_storage/models/multipart_upload.rb +1 -1
  71. data/lib/oci/object_storage/models/preauthenticated_request.rb +1 -1
  72. data/lib/oci/object_storage/models/update_bucket_details.rb +22 -4
  73. data/lib/oci/object_storage/object_storage_client.rb +63 -58
  74. data/lib/oci/resource_search/resource_search_client.rb +11 -9
  75. data/lib/oci/version.rb +1 -1
  76. metadata +32 -2
@@ -29,10 +29,12 @@ module OCI
29
29
 
30
30
 
31
31
  # Creates a new ComputeClient.
32
- # If a config is not specified, then the global OCI.config will be used.
32
+ # Notes:
33
+ # If a config is not specified, then the global OCI.config will be used.
34
+ # This client is not thread-safe
33
35
  #
34
- # A region must be specified in either the config or the region parameter. If specified
35
- # in both, then the region parameter will be used.
36
+ # A region must be specified in either the config or the region parameter. If specified in both,
37
+ # then the region parameter will be used.
36
38
  #
37
39
  # @param [Config] config A Config object.
38
40
  # @param [String] region A region used to determine the service endpoint. This will usually
@@ -126,8 +128,8 @@ module OCI
126
128
 
127
129
  # Header Params
128
130
  header_params = {}
129
- header_params['accept'] = 'application/json'
130
- header_params['content-type'] = 'application/json'
131
+ header_params[:accept] = 'application/json'
132
+ header_params[:'content-type'] = 'application/json'
131
133
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
132
134
  # rubocop:enable Style/NegatedIf
133
135
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
@@ -187,8 +189,8 @@ module OCI
187
189
 
188
190
  # Header Params
189
191
  header_params = {}
190
- header_params['accept'] = 'application/json'
191
- header_params['content-type'] = 'application/json'
192
+ header_params[:accept] = 'application/json'
193
+ header_params[:'content-type'] = 'application/json'
192
194
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
193
195
  # rubocop:enable Style/NegatedIf
194
196
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
@@ -246,8 +248,8 @@ module OCI
246
248
 
247
249
  # Header Params
248
250
  header_params = {}
249
- header_params['accept'] = 'application/json'
250
- header_params['content-type'] = 'application/json'
251
+ header_params[:accept] = 'application/json'
252
+ header_params[:'content-type'] = 'application/json'
251
253
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
252
254
  # rubocop:enable Style/NegatedIf
253
255
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
@@ -321,8 +323,8 @@ module OCI
321
323
 
322
324
  # Header Params
323
325
  header_params = {}
324
- header_params['accept'] = 'application/json'
325
- header_params['content-type'] = 'application/json'
326
+ header_params[:accept] = 'application/json'
327
+ header_params[:'content-type'] = 'application/json'
326
328
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
327
329
  # rubocop:enable Style/NegatedIf
328
330
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
@@ -402,8 +404,8 @@ module OCI
402
404
 
403
405
  # Header Params
404
406
  header_params = {}
405
- header_params['accept'] = 'application/json'
406
- header_params['content-type'] = 'application/json'
407
+ header_params[:accept] = 'application/json'
408
+ header_params[:'content-type'] = 'application/json'
407
409
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
408
410
  # rubocop:enable Style/NegatedIf
409
411
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
@@ -465,8 +467,8 @@ module OCI
465
467
 
466
468
  # Header Params
467
469
  header_params = {}
468
- header_params['accept'] = 'application/json'
469
- header_params['content-type'] = 'application/json'
470
+ header_params[:accept] = 'application/json'
471
+ header_params[:'content-type'] = 'application/json'
470
472
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
471
473
  # rubocop:enable Style/NegatedIf
472
474
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
@@ -522,8 +524,8 @@ module OCI
522
524
 
523
525
  # Header Params
524
526
  header_params = {}
525
- header_params['accept'] = 'application/json'
526
- header_params['content-type'] = 'application/json'
527
+ header_params[:accept] = 'application/json'
528
+ header_params[:'content-type'] = 'application/json'
527
529
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
528
530
  # rubocop:enable Style/NegatedIf
529
531
 
@@ -577,8 +579,8 @@ module OCI
577
579
 
578
580
  # Header Params
579
581
  header_params = {}
580
- header_params['accept'] = 'application/json'
581
- header_params['content-type'] = 'application/json'
582
+ header_params[:accept] = 'application/json'
583
+ header_params[:'content-type'] = 'application/json'
582
584
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
583
585
  # rubocop:enable Style/NegatedIf
584
586
 
@@ -632,8 +634,8 @@ module OCI
632
634
 
633
635
  # Header Params
634
636
  header_params = {}
635
- header_params['accept'] = 'application/json'
636
- header_params['content-type'] = 'application/json'
637
+ header_params[:accept] = 'application/json'
638
+ header_params[:'content-type'] = 'application/json'
637
639
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
638
640
  # rubocop:enable Style/NegatedIf
639
641
 
@@ -691,8 +693,8 @@ module OCI
691
693
 
692
694
  # Header Params
693
695
  header_params = {}
694
- header_params['accept'] = 'application/json'
695
- header_params['content-type'] = 'application/json'
696
+ header_params[:accept] = 'application/json'
697
+ header_params[:'content-type'] = 'application/json'
696
698
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
697
699
  # rubocop:enable Style/NegatedIf
698
700
 
@@ -756,8 +758,8 @@ module OCI
756
758
 
757
759
  # Header Params
758
760
  header_params = {}
759
- header_params['accept'] = 'application/json'
760
- header_params['content-type'] = 'application/json'
761
+ header_params[:accept] = 'application/json'
762
+ header_params[:'content-type'] = 'application/json'
761
763
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
762
764
  # rubocop:enable Style/NegatedIf
763
765
 
@@ -815,8 +817,8 @@ module OCI
815
817
 
816
818
  # Header Params
817
819
  header_params = {}
818
- header_params['accept'] = 'application/json'
819
- header_params['content-type'] = 'application/json'
820
+ header_params[:accept] = 'application/json'
821
+ header_params[:'content-type'] = 'application/json'
820
822
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
821
823
  # rubocop:enable Style/NegatedIf
822
824
 
@@ -888,8 +890,8 @@ module OCI
888
890
 
889
891
  # Header Params
890
892
  header_params = {}
891
- header_params['accept'] = 'application/json'
892
- header_params['content-type'] = 'application/json'
893
+ header_params[:accept] = 'application/json'
894
+ header_params[:'content-type'] = 'application/json'
893
895
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
894
896
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
895
897
  # rubocop:enable Style/NegatedIf
@@ -943,8 +945,8 @@ module OCI
943
945
 
944
946
  # Header Params
945
947
  header_params = {}
946
- header_params['accept'] = 'application/json'
947
- header_params['content-type'] = 'application/json'
948
+ header_params[:accept] = 'application/json'
949
+ header_params[:'content-type'] = 'application/json'
948
950
  # rubocop:enable Style/NegatedIf
949
951
 
950
952
  post_body = nil
@@ -999,8 +1001,8 @@ module OCI
999
1001
 
1000
1002
  # Header Params
1001
1003
  header_params = {}
1002
- header_params['accept'] = 'application/json'
1003
- header_params['content-type'] = 'application/json'
1004
+ header_params[:accept] = 'application/json'
1005
+ header_params[:'content-type'] = 'application/json'
1004
1006
  # rubocop:enable Style/NegatedIf
1005
1007
 
1006
1008
  post_body = nil
@@ -1058,8 +1060,8 @@ module OCI
1058
1060
 
1059
1061
  # Header Params
1060
1062
  header_params = {}
1061
- header_params['accept'] = 'application/json'
1062
- header_params['content-type'] = 'application/json'
1063
+ header_params[:accept] = 'application/json'
1064
+ header_params[:'content-type'] = 'application/json'
1063
1065
  # rubocop:enable Style/NegatedIf
1064
1066
 
1065
1067
  post_body = nil
@@ -1110,8 +1112,8 @@ module OCI
1110
1112
 
1111
1113
  # Header Params
1112
1114
  header_params = {}
1113
- header_params['accept'] = 'application/json'
1114
- header_params['content-type'] = 'application/json'
1115
+ header_params[:accept] = 'application/json'
1116
+ header_params[:'content-type'] = 'application/json'
1115
1117
  # rubocop:enable Style/NegatedIf
1116
1118
 
1117
1119
  post_body = nil
@@ -1163,8 +1165,8 @@ module OCI
1163
1165
 
1164
1166
  # Header Params
1165
1167
  header_params = {}
1166
- header_params['accept'] = 'application/json'
1167
- header_params['content-type'] = 'application/json'
1168
+ header_params[:accept] = 'application/json'
1169
+ header_params[:'content-type'] = 'application/json'
1168
1170
  # rubocop:enable Style/NegatedIf
1169
1171
 
1170
1172
  post_body = nil
@@ -1216,8 +1218,8 @@ module OCI
1216
1218
 
1217
1219
  # Header Params
1218
1220
  header_params = {}
1219
- header_params['accept'] = 'application/json'
1220
- header_params['content-type'] = 'application/json'
1221
+ header_params[:accept] = 'application/json'
1222
+ header_params[:'content-type'] = 'application/json'
1221
1223
  # rubocop:enable Style/NegatedIf
1222
1224
 
1223
1225
  post_body = nil
@@ -1270,8 +1272,8 @@ module OCI
1270
1272
 
1271
1273
  # Header Params
1272
1274
  header_params = {}
1273
- header_params['accept'] = 'application/json'
1274
- header_params['content-type'] = 'application/json'
1275
+ header_params[:accept] = 'application/json'
1276
+ header_params[:'content-type'] = 'application/json'
1275
1277
  # rubocop:enable Style/NegatedIf
1276
1278
 
1277
1279
  post_body = nil
@@ -1323,8 +1325,8 @@ module OCI
1323
1325
 
1324
1326
  # Header Params
1325
1327
  header_params = {}
1326
- header_params['accept'] = 'application/json'
1327
- header_params['content-type'] = 'application/json'
1328
+ header_params[:accept] = 'application/json'
1329
+ header_params[:'content-type'] = 'application/json'
1328
1330
  # rubocop:enable Style/NegatedIf
1329
1331
 
1330
1332
  post_body = nil
@@ -1378,8 +1380,8 @@ module OCI
1378
1380
 
1379
1381
  # Header Params
1380
1382
  header_params = {}
1381
- header_params['accept'] = 'application/json'
1382
- header_params['content-type'] = 'application/json'
1383
+ header_params[:accept] = 'application/json'
1384
+ header_params[:'content-type'] = 'application/json'
1383
1385
  # rubocop:enable Style/NegatedIf
1384
1386
 
1385
1387
  post_body = nil
@@ -1460,8 +1462,8 @@ module OCI
1460
1462
 
1461
1463
  # Header Params
1462
1464
  header_params = {}
1463
- header_params['accept'] = 'application/json'
1464
- header_params['content-type'] = 'application/json'
1465
+ header_params[:accept] = 'application/json'
1466
+ header_params[:'content-type'] = 'application/json'
1465
1467
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
1466
1468
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
1467
1469
  # rubocop:enable Style/NegatedIf
@@ -1550,8 +1552,8 @@ module OCI
1550
1552
 
1551
1553
  # Header Params
1552
1554
  header_params = {}
1553
- header_params['accept'] = 'application/json'
1554
- header_params['content-type'] = 'application/json'
1555
+ header_params[:accept] = 'application/json'
1556
+ header_params[:'content-type'] = 'application/json'
1555
1557
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
1556
1558
  # rubocop:enable Style/NegatedIf
1557
1559
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
@@ -1623,8 +1625,8 @@ module OCI
1623
1625
 
1624
1626
  # Header Params
1625
1627
  header_params = {}
1626
- header_params['accept'] = 'application/json, application/x-json-stream'
1627
- header_params['content-type'] = 'application/json'
1628
+ header_params[:accept] = 'application/json, application/x-json-stream'
1629
+ header_params[:'content-type'] = 'application/json'
1628
1630
  # rubocop:enable Style/NegatedIf
1629
1631
 
1630
1632
  post_body = nil
@@ -1721,8 +1723,8 @@ module OCI
1721
1723
 
1722
1724
  # Header Params
1723
1725
  header_params = {}
1724
- header_params['accept'] = 'application/json'
1725
- header_params['content-type'] = 'application/json'
1726
+ header_params[:accept] = 'application/json'
1727
+ header_params[:'content-type'] = 'application/json'
1726
1728
  # rubocop:enable Style/NegatedIf
1727
1729
 
1728
1730
  post_body = nil
@@ -1833,8 +1835,8 @@ module OCI
1833
1835
 
1834
1836
  # Header Params
1835
1837
  header_params = {}
1836
- header_params['accept'] = 'application/json'
1837
- header_params['content-type'] = 'application/json'
1838
+ header_params[:accept] = 'application/json'
1839
+ header_params[:'content-type'] = 'application/json'
1838
1840
  # rubocop:enable Style/NegatedIf
1839
1841
 
1840
1842
  post_body = nil
@@ -1897,8 +1899,8 @@ module OCI
1897
1899
 
1898
1900
  # Header Params
1899
1901
  header_params = {}
1900
- header_params['accept'] = 'application/json'
1901
- header_params['content-type'] = 'application/json'
1902
+ header_params[:accept] = 'application/json'
1903
+ header_params[:'content-type'] = 'application/json'
1902
1904
  # rubocop:enable Style/NegatedIf
1903
1905
 
1904
1906
  post_body = nil
@@ -1998,8 +2000,8 @@ module OCI
1998
2000
 
1999
2001
  # Header Params
2000
2002
  header_params = {}
2001
- header_params['accept'] = 'application/json, application/x-json-stream'
2002
- header_params['content-type'] = 'application/json'
2003
+ header_params[:accept] = 'application/json, application/x-json-stream'
2004
+ header_params[:'content-type'] = 'application/json'
2003
2005
  # rubocop:enable Style/NegatedIf
2004
2006
 
2005
2007
  post_body = nil
@@ -2066,8 +2068,8 @@ module OCI
2066
2068
 
2067
2069
  # Header Params
2068
2070
  header_params = {}
2069
- header_params['accept'] = 'application/json'
2070
- header_params['content-type'] = 'application/json'
2071
+ header_params[:accept] = 'application/json'
2072
+ header_params[:'content-type'] = 'application/json'
2071
2073
  # rubocop:enable Style/NegatedIf
2072
2074
 
2073
2075
  post_body = nil
@@ -2137,8 +2139,8 @@ module OCI
2137
2139
 
2138
2140
  # Header Params
2139
2141
  header_params = {}
2140
- header_params['accept'] = 'application/json, application/x-json-stream'
2141
- header_params['content-type'] = 'application/json'
2142
+ header_params[:accept] = 'application/json, application/x-json-stream'
2143
+ header_params[:'content-type'] = 'application/json'
2142
2144
  # rubocop:enable Style/NegatedIf
2143
2145
 
2144
2146
  post_body = nil
@@ -2210,8 +2212,8 @@ module OCI
2210
2212
 
2211
2213
  # Header Params
2212
2214
  header_params = {}
2213
- header_params['accept'] = 'application/json, application/x-json-stream'
2214
- header_params['content-type'] = 'application/json'
2215
+ header_params[:accept] = 'application/json, application/x-json-stream'
2216
+ header_params[:'content-type'] = 'application/json'
2215
2217
  # rubocop:enable Style/NegatedIf
2216
2218
 
2217
2219
  post_body = nil
@@ -2277,8 +2279,8 @@ module OCI
2277
2279
 
2278
2280
  # Header Params
2279
2281
  header_params = {}
2280
- header_params['accept'] = 'application/json'
2281
- header_params['content-type'] = 'application/json'
2282
+ header_params[:accept] = 'application/json'
2283
+ header_params[:'content-type'] = 'application/json'
2282
2284
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
2283
2285
  # rubocop:enable Style/NegatedIf
2284
2286
 
@@ -2334,8 +2336,8 @@ module OCI
2334
2336
 
2335
2337
  # Header Params
2336
2338
  header_params = {}
2337
- header_params['accept'] = 'application/json'
2338
- header_params['content-type'] = 'application/json'
2339
+ header_params[:accept] = 'application/json'
2340
+ header_params[:'content-type'] = 'application/json'
2339
2341
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
2340
2342
  # rubocop:enable Style/NegatedIf
2341
2343
 
@@ -2398,8 +2400,8 @@ module OCI
2398
2400
 
2399
2401
  # Header Params
2400
2402
  header_params = {}
2401
- header_params['accept'] = 'application/json'
2402
- header_params['content-type'] = 'application/json'
2403
+ header_params[:accept] = 'application/json'
2404
+ header_params[:'content-type'] = 'application/json'
2403
2405
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
2404
2406
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
2405
2407
  # rubocop:enable Style/NegatedIf
@@ -2471,8 +2473,8 @@ module OCI
2471
2473
 
2472
2474
  # Header Params
2473
2475
  header_params = {}
2474
- header_params['accept'] = 'application/json'
2475
- header_params['content-type'] = 'application/json'
2476
+ header_params[:accept] = 'application/json'
2477
+ header_params[:'content-type'] = 'application/json'
2476
2478
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
2477
2479
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
2478
2480
  # rubocop:enable Style/NegatedIf
@@ -498,6 +498,46 @@ module OCI
498
498
  # rubocop:disable Layout/EmptyLines
499
499
 
500
500
 
501
+ # Calls {OCI::Core::ComputeClient#export_image} and then waits for the {OCI::Core::Models::Image} acted upon
502
+ # to enter the given state(s).
503
+ #
504
+ # @param [String] image_id The OCID of the image.
505
+ # @param [OCI::Core::Models::ExportImageDetails] export_image_details Details for the image export.
506
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Core::Models::Image#lifecycle_state}
507
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Core::ComputeClient#export_image}
508
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
509
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
510
+ # * max_wait_seconds The maximum time to wait, in seconds
511
+ #
512
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::Core::Models::Image}
513
+ def export_image_and_wait_for_state(image_id, export_image_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
514
+ operation_result = @service_client.export_image(image_id, export_image_details, base_operation_opts)
515
+
516
+ return operation_result if wait_for_states.empty?
517
+
518
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
519
+ wait_for_resource_id = operation_result.data.id
520
+
521
+ begin
522
+ waiter_result = @service_client.get_image(wait_for_resource_id).wait_until(
523
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
524
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
525
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
526
+ )
527
+ result_to_return = waiter_result
528
+
529
+ return result_to_return
530
+ rescue StandardError
531
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
532
+ end
533
+ end
534
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
535
+ # rubocop:enable Layout/EmptyLines
536
+
537
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
538
+ # rubocop:disable Layout/EmptyLines
539
+
540
+
501
541
  # Calls {OCI::Core::ComputeClient#instance_action} and then waits for the {OCI::Core::Models::Instance} acted upon
502
542
  # to enter the given state(s).
503
543
  #
@@ -18,6 +18,7 @@ require 'oci/core/models/attach_volume_details'
18
18
  require 'oci/core/models/boot_volume'
19
19
  require 'oci/core/models/boot_volume_attachment'
20
20
  require 'oci/core/models/boot_volume_backup'
21
+ require 'oci/core/models/boot_volume_kms_key'
21
22
  require 'oci/core/models/boot_volume_source_details'
22
23
  require 'oci/core/models/boot_volume_source_from_boot_volume_backup_details'
23
24
  require 'oci/core/models/boot_volume_source_from_boot_volume_details'
@@ -119,6 +120,7 @@ require 'oci/core/models/tunnel_status'
119
120
  require 'oci/core/models/udp_options'
120
121
  require 'oci/core/models/update_boot_volume_backup_details'
121
122
  require 'oci/core/models/update_boot_volume_details'
123
+ require 'oci/core/models/update_boot_volume_kms_key_details'
122
124
  require 'oci/core/models/update_console_history_details'
123
125
  require 'oci/core/models/update_cpe_details'
124
126
  require 'oci/core/models/update_cross_connect_details'
@@ -145,6 +147,7 @@ require 'oci/core/models/update_volume_backup_details'
145
147
  require 'oci/core/models/update_volume_details'
146
148
  require 'oci/core/models/update_volume_group_backup_details'
147
149
  require 'oci/core/models/update_volume_group_details'
150
+ require 'oci/core/models/update_volume_kms_key_details'
148
151
  require 'oci/core/models/vcn'
149
152
  require 'oci/core/models/virtual_circuit'
150
153
  require 'oci/core/models/virtual_circuit_bandwidth_shape'
@@ -163,6 +166,7 @@ require 'oci/core/models/volume_group_source_details'
163
166
  require 'oci/core/models/volume_group_source_from_volume_group_backup_details'
164
167
  require 'oci/core/models/volume_group_source_from_volume_group_details'
165
168
  require 'oci/core/models/volume_group_source_from_volumes_details'
169
+ require 'oci/core/models/volume_kms_key'
166
170
  require 'oci/core/models/volume_source_details'
167
171
  require 'oci/core/models/volume_source_from_volume_backup_details'
168
172
  require 'oci/core/models/volume_source_from_volume_details'