oci 2.1.0 → 2.1.1

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 (370) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -3
  3. data/lib/oci.rb +6 -0
  4. data/lib/oci/api_client.rb +159 -134
  5. data/lib/oci/audit/audit.rb +3 -0
  6. data/lib/oci/audit/audit_client.rb +88 -40
  7. data/lib/oci/audit/audit_client_composite_operations.rb +64 -0
  8. data/lib/oci/audit/models/audit_event.rb +151 -200
  9. data/lib/oci/audit/models/configuration.rb +61 -38
  10. data/lib/oci/audit/models/update_configuration_details.rb +61 -38
  11. data/lib/oci/auth/util.rb +1 -1
  12. data/lib/oci/base_signer.rb +20 -29
  13. data/lib/oci/config.rb +9 -3
  14. data/lib/oci/core/blockstorage_client.rb +512 -269
  15. data/lib/oci/core/blockstorage_client_composite_operations.rb +342 -0
  16. data/lib/oci/core/compute_client.rb +959 -536
  17. data/lib/oci/core/compute_client_composite_operations.rb +738 -0
  18. data/lib/oci/core/core.rb +5 -0
  19. data/lib/oci/core/models/attach_boot_volume_details.rb +72 -57
  20. data/lib/oci/core/models/attach_i_scsi_volume_details.rb +76 -53
  21. data/lib/oci/core/models/attach_paravirtualized_volume_details.rb +69 -45
  22. data/lib/oci/core/models/attach_vnic_details.rb +79 -68
  23. data/lib/oci/core/models/attach_volume_details.rb +83 -74
  24. data/lib/oci/core/models/boot_volume.rb +119 -120
  25. data/lib/oci/core/models/boot_volume_attachment.rb +114 -111
  26. data/lib/oci/core/models/bulk_add_virtual_circuit_public_prefixes_details.rb +61 -38
  27. data/lib/oci/core/models/bulk_delete_virtual_circuit_public_prefixes_details.rb +61 -38
  28. data/lib/oci/core/models/capture_console_history_details.rb +81 -70
  29. data/lib/oci/core/models/connect_local_peering_gateways_details.rb +60 -38
  30. data/lib/oci/core/models/connect_remote_peering_connections_details.rb +67 -49
  31. data/lib/oci/core/models/console_history.rb +122 -123
  32. data/lib/oci/core/models/cpe.rb +82 -74
  33. data/lib/oci/core/models/create_cpe_details.rb +73 -58
  34. data/lib/oci/core/models/create_cross_connect_details.rb +98 -99
  35. data/lib/oci/core/models/create_cross_connect_group_details.rb +67 -48
  36. data/lib/oci/core/models/create_dhcp_details.rb +89 -84
  37. data/lib/oci/core/models/create_drg_attachment_details.rb +71 -56
  38. data/lib/oci/core/models/create_drg_details.rb +66 -47
  39. data/lib/oci/core/models/create_image_details.rb +108 -110
  40. data/lib/oci/core/models/create_instance_console_connection_details.rb +79 -69
  41. data/lib/oci/core/models/create_internet_gateway_details.rb +76 -65
  42. data/lib/oci/core/models/create_ip_sec_connection_details.rb +83 -76
  43. data/lib/oci/core/models/create_local_peering_gateway_details.rb +72 -57
  44. data/lib/oci/core/models/create_private_ip_details.rb +97 -94
  45. data/lib/oci/core/models/create_public_ip_details.rb +90 -77
  46. data/lib/oci/core/models/create_remote_peering_connection_details.rb +72 -57
  47. data/lib/oci/core/models/create_route_table_details.rb +90 -87
  48. data/lib/oci/core/models/create_security_list_details.rb +95 -96
  49. data/lib/oci/core/models/create_subnet_details.rb +133 -154
  50. data/lib/oci/core/models/create_vcn_details.rb +96 -93
  51. data/lib/oci/core/models/create_virtual_circuit_details.rb +136 -153
  52. data/lib/oci/core/models/create_virtual_circuit_public_prefix_details.rb +62 -39
  53. data/lib/oci/core/models/create_vnic_details.rb +99 -97
  54. data/lib/oci/core/models/create_volume_backup_details.rb +94 -85
  55. data/lib/oci/core/models/create_volume_backup_policy_assignment_details.rb +66 -47
  56. data/lib/oci/core/models/create_volume_details.rb +117 -130
  57. data/lib/oci/core/models/cross_connect.rb +120 -121
  58. data/lib/oci/core/models/cross_connect_group.rb +97 -82
  59. data/lib/oci/core/models/cross_connect_location.rb +65 -43
  60. data/lib/oci/core/models/cross_connect_mapping.rb +89 -81
  61. data/lib/oci/core/models/cross_connect_port_speed_shape.rb +68 -48
  62. data/lib/oci/core/models/cross_connect_status.rb +110 -87
  63. data/lib/oci/core/models/delete_virtual_circuit_public_prefix_details.rb +61 -38
  64. data/lib/oci/core/models/dhcp_dns_option.rb +85 -60
  65. data/lib/oci/core/models/dhcp_option.rb +62 -38
  66. data/lib/oci/core/models/dhcp_options.rb +119 -118
  67. data/lib/oci/core/models/dhcp_search_domain_option.rb +66 -44
  68. data/lib/oci/core/models/drg.rb +96 -81
  69. data/lib/oci/core/models/drg_attachment.rb +106 -99
  70. data/lib/oci/core/models/egress_security_rule.rb +89 -83
  71. data/lib/oci/core/models/export_image_details.rb +63 -41
  72. data/lib/oci/core/models/export_image_via_object_storage_tuple_details.rb +74 -59
  73. data/lib/oci/core/models/export_image_via_object_storage_uri_details.rb +65 -42
  74. data/lib/oci/core/models/fast_connect_provider_service.rb +155 -126
  75. data/lib/oci/core/models/get_public_ip_by_ip_address_details.rb +61 -39
  76. data/lib/oci/core/models/get_public_ip_by_private_ip_id_details.rb +61 -39
  77. data/lib/oci/core/models/i_scsi_volume_attachment.rb +117 -105
  78. data/lib/oci/core/models/icmp_options.rb +63 -41
  79. data/lib/oci/core/models/image.rb +170 -185
  80. data/lib/oci/core/models/image_source_details.rb +79 -60
  81. data/lib/oci/core/models/image_source_via_object_storage_tuple_details.rb +77 -62
  82. data/lib/oci/core/models/image_source_via_object_storage_uri_details.rb +67 -44
  83. data/lib/oci/core/models/ingress_security_rule.rb +89 -83
  84. data/lib/oci/core/models/instance.rb +190 -211
  85. data/lib/oci/core/models/instance_console_connection.rb +118 -117
  86. data/lib/oci/core/models/instance_credentials.rb +63 -41
  87. data/lib/oci/core/models/instance_source_details.rb +64 -41
  88. data/lib/oci/core/models/instance_source_via_boot_volume_details.rb +64 -41
  89. data/lib/oci/core/models/instance_source_via_image_details.rb +70 -51
  90. data/lib/oci/core/models/internet_gateway.rb +107 -100
  91. data/lib/oci/core/models/ip_sec_connection.rb +113 -110
  92. data/lib/oci/core/models/ip_sec_connection_device_config.rb +73 -59
  93. data/lib/oci/core/models/ip_sec_connection_device_status.rb +75 -61
  94. data/lib/oci/core/models/launch_instance_details.rb +163 -189
  95. data/lib/oci/core/models/launch_options.rb +130 -93
  96. data/lib/oci/core/models/letter_of_authority.rb +105 -100
  97. data/lib/oci/core/models/local_peering_gateway.rb +141 -140
  98. data/lib/oci/core/models/paravirtualized_volume_attachment.rb +83 -60
  99. data/lib/oci/core/models/peer_region_for_remote_peering.rb +61 -37
  100. data/lib/oci/core/models/port_range.rb +65 -42
  101. data/lib/oci/core/models/private_ip.rb +131 -151
  102. data/lib/oci/core/models/public_ip.rb +160 -149
  103. data/lib/oci/core/models/remote_peering_connection.rb +148 -151
  104. data/lib/oci/core/models/route_rule.rb +68 -50
  105. data/lib/oci/core/models/route_table.rb +120 -121
  106. data/lib/oci/core/models/security_list.rb +125 -130
  107. data/lib/oci/core/models/shape.rb +60 -36
  108. data/lib/oci/core/models/subnet.rb +183 -220
  109. data/lib/oci/core/models/tcp_options.rb +67 -49
  110. data/lib/oci/core/models/tunnel_config.rb +76 -62
  111. data/lib/oci/core/models/tunnel_status.rb +94 -77
  112. data/lib/oci/core/models/udp_options.rb +67 -49
  113. data/lib/oci/core/models/update_boot_volume_details.rb +62 -39
  114. data/lib/oci/core/models/update_console_history_details.rb +76 -61
  115. data/lib/oci/core/models/update_cpe_details.rb +62 -39
  116. data/lib/oci/core/models/update_cross_connect_details.rb +68 -50
  117. data/lib/oci/core/models/update_cross_connect_group_details.rb +62 -39
  118. data/lib/oci/core/models/update_dhcp_details.rb +80 -67
  119. data/lib/oci/core/models/update_drg_attachment_details.rb +62 -39
  120. data/lib/oci/core/models/update_drg_details.rb +62 -39
  121. data/lib/oci/core/models/update_image_details.rb +77 -62
  122. data/lib/oci/core/models/update_instance_details.rb +77 -62
  123. data/lib/oci/core/models/update_internet_gateway_details.rb +67 -48
  124. data/lib/oci/core/models/update_ip_sec_connection_details.rb +62 -39
  125. data/lib/oci/core/models/update_local_peering_gateway_details.rb +62 -39
  126. data/lib/oci/core/models/update_private_ip_details.rb +90 -83
  127. data/lib/oci/core/models/update_public_ip_details.rb +68 -49
  128. data/lib/oci/core/models/update_remote_peering_connection_details.rb +62 -39
  129. data/lib/oci/core/models/update_route_table_details.rb +81 -70
  130. data/lib/oci/core/models/update_security_list_details.rb +86 -79
  131. data/lib/oci/core/models/update_subnet_details.rb +76 -61
  132. data/lib/oci/core/models/update_vcn_details.rb +76 -61
  133. data/lib/oci/core/models/update_virtual_circuit_details.rb +114 -115
  134. data/lib/oci/core/models/update_vnic_details.rb +75 -60
  135. data/lib/oci/core/models/update_volume_backup_details.rb +76 -61
  136. data/lib/oci/core/models/update_volume_details.rb +76 -61
  137. data/lib/oci/core/models/vcn.rb +150 -167
  138. data/lib/oci/core/models/virtual_circuit.rb +254 -269
  139. data/lib/oci/core/models/virtual_circuit_bandwidth_shape.rb +68 -48
  140. data/lib/oci/core/models/virtual_circuit_public_prefix.rb +79 -54
  141. data/lib/oci/core/models/vnic.rb +149 -166
  142. data/lib/oci/core/models/vnic_attachment.rb +132 -141
  143. data/lib/oci/core/models/volume.rb +138 -151
  144. data/lib/oci/core/models/volume_attachment.rb +126 -131
  145. data/lib/oci/core/models/volume_backup.rb +185 -200
  146. data/lib/oci/core/models/volume_backup_policy.rb +75 -61
  147. data/lib/oci/core/models/volume_backup_policy_assignment.rb +75 -63
  148. data/lib/oci/core/models/volume_backup_schedule.rb +101 -76
  149. data/lib/oci/core/models/volume_source_details.rb +62 -37
  150. data/lib/oci/core/models/volume_source_from_volume_backup_details.rb +62 -38
  151. data/lib/oci/core/models/volume_source_from_volume_details.rb +62 -38
  152. data/lib/oci/core/virtual_network_client.rb +2683 -1457
  153. data/lib/oci/core/virtual_network_client_composite_operations.rb +1849 -0
  154. data/lib/oci/database/database.rb +3 -0
  155. data/lib/oci/database/database_client.rb +894 -454
  156. data/lib/oci/database/database_client_composite_operations.rb +462 -0
  157. data/lib/oci/database/models/backup.rb +131 -128
  158. data/lib/oci/database/models/backup_summary.rb +131 -128
  159. data/lib/oci/database/models/create_backup_details.rb +66 -47
  160. data/lib/oci/database/models/create_data_guard_association_details.rb +112 -102
  161. data/lib/oci/database/models/create_data_guard_association_to_existing_db_system_details.rb +73 -51
  162. data/lib/oci/database/models/create_database_details.rb +140 -105
  163. data/lib/oci/database/models/create_database_from_backup_details.rb +71 -56
  164. data/lib/oci/database/models/create_db_home_details.rb +70 -53
  165. data/lib/oci/database/models/create_db_home_with_db_system_id_base.rb +83 -67
  166. data/lib/oci/database/models/create_db_home_with_db_system_id_details.rb +74 -53
  167. data/lib/oci/database/models/create_db_home_with_db_system_id_from_backup_details.rb +69 -44
  168. data/lib/oci/database/models/data_guard_association.rb +205 -204
  169. data/lib/oci/database/models/data_guard_association_summary.rb +205 -204
  170. data/lib/oci/database/models/database.rb +175 -156
  171. data/lib/oci/database/models/database_summary.rb +175 -156
  172. data/lib/oci/database/models/db_backup_config.rb +60 -38
  173. data/lib/oci/database/models/db_home.rb +110 -107
  174. data/lib/oci/database/models/db_home_summary.rb +110 -107
  175. data/lib/oci/database/models/db_node.rb +113 -108
  176. data/lib/oci/database/models/db_node_summary.rb +113 -108
  177. data/lib/oci/database/models/db_system.rb +299 -314
  178. data/lib/oci/database/models/db_system_shape_summary.rb +88 -86
  179. data/lib/oci/database/models/db_system_summary.rb +299 -314
  180. data/lib/oci/database/models/db_version_summary.rb +64 -44
  181. data/lib/oci/database/models/failover_data_guard_association_details.rb +60 -38
  182. data/lib/oci/database/models/launch_db_system_details.rb +231 -234
  183. data/lib/oci/database/models/patch.rb +136 -113
  184. data/lib/oci/database/models/patch_details.rb +73 -53
  185. data/lib/oci/database/models/patch_history_entry.rb +114 -99
  186. data/lib/oci/database/models/patch_history_entry_summary.rb +114 -99
  187. data/lib/oci/database/models/patch_summary.rb +136 -113
  188. data/lib/oci/database/models/reinstate_data_guard_association_details.rb +60 -38
  189. data/lib/oci/database/models/restore_database_details.rb +72 -53
  190. data/lib/oci/database/models/switchover_data_guard_association_details.rb +60 -38
  191. data/lib/oci/database/models/update_database_details.rb +97 -38
  192. data/lib/oci/database/models/update_db_home_details.rb +60 -38
  193. data/lib/oci/database/models/update_db_system_details.rb +112 -64
  194. data/lib/oci/dns/dns.rb +3 -0
  195. data/lib/oci/dns/dns_client.rb +489 -302
  196. data/lib/oci/dns/dns_client_composite_operations.rb +143 -0
  197. data/lib/oci/dns/models/create_zone_details.rb +84 -72
  198. data/lib/oci/dns/models/external_master.rb +67 -47
  199. data/lib/oci/dns/models/patch_domain_records_details.rb +60 -35
  200. data/lib/oci/dns/models/patch_rr_set_details.rb +60 -35
  201. data/lib/oci/dns/models/patch_zone_records_details.rb +60 -35
  202. data/lib/oci/dns/models/record.rb +92 -86
  203. data/lib/oci/dns/models/record_collection.rb +59 -35
  204. data/lib/oci/dns/models/record_details.rb +92 -86
  205. data/lib/oci/dns/models/record_operation.rb +113 -110
  206. data/lib/oci/dns/models/rr_set.rb +59 -35
  207. data/lib/oci/dns/models/sort_order.rb +0 -2
  208. data/lib/oci/dns/models/tsig.rb +68 -48
  209. data/lib/oci/dns/models/update_domain_records_details.rb +60 -35
  210. data/lib/oci/dns/models/update_rr_set_details.rb +60 -35
  211. data/lib/oci/dns/models/update_zone_details.rb +60 -38
  212. data/lib/oci/dns/models/update_zone_records_details.rb +60 -35
  213. data/lib/oci/dns/models/zone.rb +133 -126
  214. data/lib/oci/dns/models/zone_summary.rb +108 -99
  215. data/lib/oci/email/email.rb +3 -0
  216. data/lib/oci/email/email_client.rb +223 -112
  217. data/lib/oci/email/email_client_composite_operations.rb +103 -0
  218. data/lib/oci/email/models/create_sender_details.rb +65 -47
  219. data/lib/oci/email/models/create_suppression_details.rb +66 -48
  220. data/lib/oci/email/models/sender.rb +97 -84
  221. data/lib/oci/email/models/sender_summary.rb +89 -70
  222. data/lib/oci/email/models/suppression.rb +90 -69
  223. data/lib/oci/email/models/suppression_summary.rb +90 -69
  224. data/lib/oci/errors.rb +16 -0
  225. data/lib/oci/file_storage/file_storage.rb +3 -0
  226. data/lib/oci/file_storage/file_storage_client.rb +587 -333
  227. data/lib/oci/file_storage/file_storage_client_composite_operations.rb +460 -0
  228. data/lib/oci/file_storage/models/create_export_details.rb +73 -56
  229. data/lib/oci/file_storage/models/create_file_system_details.rb +75 -60
  230. data/lib/oci/file_storage/models/create_mount_target_details.rb +96 -93
  231. data/lib/oci/file_storage/models/create_snapshot_details.rb +68 -47
  232. data/lib/oci/file_storage/models/export.rb +102 -89
  233. data/lib/oci/file_storage/models/export_set.rb +121 -122
  234. data/lib/oci/file_storage/models/export_set_summary.rb +109 -102
  235. data/lib/oci/file_storage/models/export_summary.rb +102 -89
  236. data/lib/oci/file_storage/models/file_system.rb +110 -103
  237. data/lib/oci/file_storage/models/file_system_summary.rb +110 -103
  238. data/lib/oci/file_storage/models/mount_target.rb +126 -131
  239. data/lib/oci/file_storage/models/mount_target_summary.rb +121 -122
  240. data/lib/oci/file_storage/models/snapshot.rb +98 -81
  241. data/lib/oci/file_storage/models/snapshot_summary.rb +98 -81
  242. data/lib/oci/file_storage/models/update_export_set_details.rb +75 -60
  243. data/lib/oci/file_storage/models/update_file_system_details.rb +63 -40
  244. data/lib/oci/file_storage/models/update_mount_target_details.rb +63 -40
  245. data/lib/oci/identity/identity.rb +3 -0
  246. data/lib/oci/identity/identity_client.rb +1671 -872
  247. data/lib/oci/identity/identity_client_composite_operations.rb +818 -0
  248. data/lib/oci/identity/models/add_user_to_group_details.rb +66 -47
  249. data/lib/oci/identity/models/api_key.rb +108 -101
  250. data/lib/oci/identity/models/availability_domain.rb +64 -44
  251. data/lib/oci/identity/models/compartment.rb +118 -115
  252. data/lib/oci/identity/models/create_api_key_details.rb +60 -35
  253. data/lib/oci/identity/models/create_compartment_details.rb +83 -72
  254. data/lib/oci/identity/models/create_customer_secret_key_details.rb +62 -39
  255. data/lib/oci/identity/models/create_dynamic_group_details.rb +75 -61
  256. data/lib/oci/identity/models/create_group_details.rb +82 -71
  257. data/lib/oci/identity/models/create_identity_provider_details.rb +115 -110
  258. data/lib/oci/identity/models/create_idp_group_mapping_details.rb +67 -48
  259. data/lib/oci/identity/models/create_policy_details.rb +94 -89
  260. data/lib/oci/identity/models/create_region_subscription_details.rb +64 -41
  261. data/lib/oci/identity/models/create_saml2_identity_provider_details.rb +88 -67
  262. data/lib/oci/identity/models/create_smtp_credential_details.rb +61 -36
  263. data/lib/oci/identity/models/create_swift_password_details.rb +61 -36
  264. data/lib/oci/identity/models/create_tag_details.rb +77 -62
  265. data/lib/oci/identity/models/create_tag_namespace_details.rb +82 -71
  266. data/lib/oci/identity/models/create_user_details.rb +82 -71
  267. data/lib/oci/identity/models/customer_secret_key.rb +114 -109
  268. data/lib/oci/identity/models/customer_secret_key_summary.rb +109 -102
  269. data/lib/oci/identity/models/dynamic_group.rb +112 -105
  270. data/lib/oci/identity/models/group.rb +118 -115
  271. data/lib/oci/identity/models/identity_provider.rb +135 -138
  272. data/lib/oci/identity/models/idp_group_mapping.rb +112 -109
  273. data/lib/oci/identity/models/policy.rb +129 -132
  274. data/lib/oci/identity/models/region.rb +67 -45
  275. data/lib/oci/identity/models/region_subscription.rb +90 -71
  276. data/lib/oci/identity/models/saml2_identity_provider.rb +106 -92
  277. data/lib/oci/identity/models/smtp_credential.rb +118 -113
  278. data/lib/oci/identity/models/smtp_credential_summary.rb +113 -106
  279. data/lib/oci/identity/models/swift_password.rb +113 -106
  280. data/lib/oci/identity/models/tag.rb +108 -116
  281. data/lib/oci/identity/models/tag_namespace.rb +97 -97
  282. data/lib/oci/identity/models/tag_namespace_summary.rb +97 -97
  283. data/lib/oci/identity/models/tag_summary.rb +97 -97
  284. data/lib/oci/identity/models/tenancy.rb +86 -78
  285. data/lib/oci/identity/models/ui_password.rb +97 -82
  286. data/lib/oci/identity/models/update_compartment_details.rb +77 -62
  287. data/lib/oci/identity/models/update_customer_secret_key_details.rb +61 -38
  288. data/lib/oci/identity/models/update_dynamic_group_details.rb +65 -45
  289. data/lib/oci/identity/models/update_group_details.rb +72 -55
  290. data/lib/oci/identity/models/update_identity_provider_details.rb +89 -74
  291. data/lib/oci/identity/models/update_idp_group_mapping_details.rb +66 -47
  292. data/lib/oci/identity/models/update_policy_details.rb +83 -72
  293. data/lib/oci/identity/models/update_saml2_identity_provider_details.rb +79 -58
  294. data/lib/oci/identity/models/update_smtp_credential_details.rb +60 -35
  295. data/lib/oci/identity/models/update_state_details.rb +61 -36
  296. data/lib/oci/identity/models/update_swift_password_details.rb +60 -35
  297. data/lib/oci/identity/models/update_tag_details.rb +78 -65
  298. data/lib/oci/identity/models/update_tag_namespace_details.rb +78 -65
  299. data/lib/oci/identity/models/update_user_details.rb +72 -55
  300. data/lib/oci/identity/models/user.rb +120 -117
  301. data/lib/oci/identity/models/user_group_membership.rb +107 -100
  302. data/lib/oci/load_balancer/load_balancer.rb +3 -0
  303. data/lib/oci/load_balancer/load_balancer_client.rb +918 -500
  304. data/lib/oci/load_balancer/load_balancer_client_composite_operations.rb +795 -0
  305. data/lib/oci/load_balancer/models/backend.rb +101 -94
  306. data/lib/oci/load_balancer/models/backend_details.rb +95 -86
  307. data/lib/oci/load_balancer/models/backend_health.rb +84 -57
  308. data/lib/oci/load_balancer/models/backend_set.rb +87 -79
  309. data/lib/oci/load_balancer/models/backend_set_details.rb +80 -70
  310. data/lib/oci/load_balancer/models/backend_set_health.rb +106 -91
  311. data/lib/oci/load_balancer/models/certificate.rb +78 -64
  312. data/lib/oci/load_balancer/models/certificate_details.rb +92 -84
  313. data/lib/oci/load_balancer/models/connection_configuration.rb +73 -51
  314. data/lib/oci/load_balancer/models/create_backend_details.rb +95 -86
  315. data/lib/oci/load_balancer/models/create_backend_set_details.rb +87 -79
  316. data/lib/oci/load_balancer/models/create_certificate_details.rb +92 -84
  317. data/lib/oci/load_balancer/models/create_listener_details.rb +97 -93
  318. data/lib/oci/load_balancer/models/create_load_balancer_details.rb +109 -117
  319. data/lib/oci/load_balancer/models/create_path_route_set_details.rb +66 -46
  320. data/lib/oci/load_balancer/models/health_check_result.rb +98 -79
  321. data/lib/oci/load_balancer/models/health_checker.rb +108 -108
  322. data/lib/oci/load_balancer/models/health_checker_details.rb +108 -108
  323. data/lib/oci/load_balancer/models/ip_address.rb +70 -52
  324. data/lib/oci/load_balancer/models/listener.rb +97 -93
  325. data/lib/oci/load_balancer/models/listener_details.rb +91 -85
  326. data/lib/oci/load_balancer/models/load_balancer.rb +144 -157
  327. data/lib/oci/load_balancer/models/load_balancer_health.rb +110 -95
  328. data/lib/oci/load_balancer/models/load_balancer_health_summary.rb +88 -61
  329. data/lib/oci/load_balancer/models/load_balancer_policy.rb +59 -35
  330. data/lib/oci/load_balancer/models/load_balancer_protocol.rb +59 -35
  331. data/lib/oci/load_balancer/models/load_balancer_shape.rb +59 -35
  332. data/lib/oci/load_balancer/models/path_match_type.rb +80 -51
  333. data/lib/oci/load_balancer/models/path_route.rb +76 -60
  334. data/lib/oci/load_balancer/models/path_route_set.rb +66 -46
  335. data/lib/oci/load_balancer/models/path_route_set_details.rb +60 -38
  336. data/lib/oci/load_balancer/models/session_persistence_configuration_details.rb +71 -55
  337. data/lib/oci/load_balancer/models/ssl_configuration.rb +78 -66
  338. data/lib/oci/load_balancer/models/ssl_configuration_details.rb +78 -66
  339. data/lib/oci/load_balancer/models/update_backend_details.rb +82 -67
  340. data/lib/oci/load_balancer/models/update_backend_set_details.rb +80 -70
  341. data/lib/oci/load_balancer/models/update_health_checker_details.rb +108 -108
  342. data/lib/oci/load_balancer/models/update_listener_details.rb +91 -85
  343. data/lib/oci/load_balancer/models/update_load_balancer_details.rb +62 -40
  344. data/lib/oci/load_balancer/models/update_path_route_set_details.rb +60 -38
  345. data/lib/oci/load_balancer/models/work_request.rb +115 -108
  346. data/lib/oci/load_balancer/models/work_request_error.rb +76 -49
  347. data/lib/oci/object_storage/models/bucket.rb +136 -133
  348. data/lib/oci/object_storage/models/bucket_summary.rb +95 -95
  349. data/lib/oci/object_storage/models/commit_multipart_upload_details.rb +66 -48
  350. data/lib/oci/object_storage/models/commit_multipart_upload_part_details.rb +64 -44
  351. data/lib/oci/object_storage/models/create_bucket_details.rb +113 -111
  352. data/lib/oci/object_storage/models/create_multipart_upload_details.rb +80 -70
  353. data/lib/oci/object_storage/models/create_preauthenticated_request_details.rb +87 -74
  354. data/lib/oci/object_storage/models/list_objects.rb +71 -53
  355. data/lib/oci/object_storage/models/multipart_upload.rb +77 -65
  356. data/lib/oci/object_storage/models/multipart_upload_part_summary.rb +72 -56
  357. data/lib/oci/object_storage/models/namespace_metadata.rb +69 -53
  358. data/lib/oci/object_storage/models/object_summary.rb +73 -57
  359. data/lib/oci/object_storage/models/preauthenticated_request.rb +105 -96
  360. data/lib/oci/object_storage/models/preauthenticated_request_summary.rb +99 -86
  361. data/lib/oci/object_storage/models/rename_object_details.rb +80 -74
  362. data/lib/oci/object_storage/models/restore_objects_details.rb +66 -45
  363. data/lib/oci/object_storage/models/update_bucket_details.rb +101 -97
  364. data/lib/oci/object_storage/models/update_namespace_metadata_details.rb +65 -47
  365. data/lib/oci/object_storage/object_storage.rb +2 -0
  366. data/lib/oci/object_storage/object_storage_client.rb +737 -435
  367. data/lib/oci/object_storage/object_storage_client_composite_operations.rb +24 -0
  368. data/lib/oci/signer.rb +20 -7
  369. data/lib/oci/version.rb +1 -1
  370. metadata +13 -2
@@ -2,9 +2,10 @@
2
2
 
3
3
  require 'date'
4
4
 
5
+ # rubocop:disable Lint/UnneededCopDisableDirective
5
6
  module OCI
6
7
  # A rule for allowing inbound IP packets.
7
- class Core::Models::IngressSecurityRule
8
+ class Core::Models::IngressSecurityRule # rubocop:disable Metrics/LineLength
8
9
  # Optional and valid only for ICMP. Use to specify a particular ICMP type and code
9
10
  # as defined in
10
11
  # [ICMP Parameters](http://www.iana.org/assignments/icmp-parameters/icmp-parameters.xhtml).
@@ -13,7 +14,7 @@ module OCI
13
14
  # To enable MTU negotiation for ingress internet traffic, make sure to allow type 3 (\"Destination
14
15
  # Unreachable\") code 4 (\"Fragmentation Needed and Don't Fragment was Set\"). If you need to specify
15
16
  # multiple codes for a single type, create a separate security list rule for each.
16
- #
17
+ #
17
18
  # @return [OCI::Core::Models::IcmpOptions]
18
19
  attr_accessor :icmp_options
19
20
 
@@ -22,7 +23,7 @@ module OCI
22
23
  # example, if ingress traffic allows TCP destination port 80, there should be an egress
23
24
  # rule to allow TCP source port 80. Defaults to false, which means the rule is stateful
24
25
  # and a corresponding rule is not necessary for bidirectional traffic.
25
- #
26
+ #
26
27
  # @return [BOOLEAN]
27
28
  attr_accessor :is_stateless
28
29
 
@@ -30,28 +31,59 @@ module OCI
30
31
  # defined in
31
32
  # [Protocol Numbers](http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml).
32
33
  # Options are supported only for ICMP (\"1\"), TCP (\"6\"), and UDP (\"17\").
33
- #
34
+ #
34
35
  # @return [String]
35
36
  attr_accessor :protocol
36
37
 
37
38
  # **[Required]** The source CIDR block for the ingress rule. This is the range of IP addresses that a
38
39
  # packet coming into the instance can come from.
39
- #
40
+ #
40
41
  # @return [String]
41
42
  attr_accessor :source
42
43
 
43
44
  # Optional and valid only for TCP. Use to specify particular destination ports for TCP rules.
44
45
  # If you specify TCP as the protocol but omit this object, then all destination ports are allowed.
45
- #
46
+ #
46
47
  # @return [OCI::Core::Models::TcpOptions]
47
48
  attr_accessor :tcp_options
48
49
 
49
50
  # Optional and valid only for UDP. Use to specify particular destination ports for UDP rules.
50
51
  # If you specify UDP as the protocol but omit this object, then all destination ports are allowed.
51
- #
52
+ #
52
53
  # @return [OCI::Core::Models::UdpOptions]
53
54
  attr_accessor :udp_options
54
55
 
56
+ # Attribute mapping from ruby-style variable name to JSON key.
57
+ def self.attribute_map
58
+ {
59
+ # rubocop:disable Style/SymbolLiteral
60
+ 'icmp_options': :'icmpOptions',
61
+ 'is_stateless': :'isStateless',
62
+ 'protocol': :'protocol',
63
+ 'source': :'source',
64
+ 'tcp_options': :'tcpOptions',
65
+ 'udp_options': :'udpOptions'
66
+ # rubocop:enable Style/SymbolLiteral
67
+ }
68
+ end
69
+
70
+ # Attribute type mapping.
71
+ def self.swagger_types
72
+ {
73
+ # rubocop:disable Style/SymbolLiteral
74
+ 'icmp_options': :'OCI::Core::Models::IcmpOptions',
75
+ 'is_stateless': :'BOOLEAN',
76
+ 'protocol': :'String',
77
+ 'source': :'String',
78
+ 'tcp_options': :'OCI::Core::Models::TcpOptions',
79
+ 'udp_options': :'OCI::Core::Models::UdpOptions'
80
+ # rubocop:enable Style/SymbolLiteral
81
+ }
82
+ end
83
+
84
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
85
+ # rubocop:disable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
86
+
55
87
 
56
88
  # Initializes the object
57
89
  # @param [Hash] attributes Model attributes in the form of hash
@@ -65,82 +97,74 @@ module OCI
65
97
  return unless attributes.is_a?(Hash)
66
98
 
67
99
  # convert string to symbol for hash key
68
- attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
100
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
69
101
 
70
- if attributes[:'icmpOptions']
71
- self.icmp_options = attributes[:'icmpOptions']
72
- end
102
+ self.icmp_options = attributes[:'icmpOptions'] if attributes[:'icmpOptions']
73
103
 
74
104
  raise 'You cannot provide both :icmpOptions and :icmp_options' if attributes.key?(:'icmpOptions') && attributes.key?(:'icmp_options')
75
105
 
76
- if attributes[:'icmp_options']
77
- self.icmp_options = attributes[:'icmp_options']
78
- end
106
+ self.icmp_options = attributes[:'icmp_options'] if attributes[:'icmp_options']
79
107
 
80
- unless attributes[:'isStateless'].nil?
81
- self.is_stateless = attributes[:'isStateless']
82
- end
108
+ self.is_stateless = attributes[:'isStateless'] unless attributes[:'isStateless'].nil?
83
109
 
84
110
  raise 'You cannot provide both :isStateless and :is_stateless' if attributes.key?(:'isStateless') && attributes.key?(:'is_stateless')
85
111
 
86
- unless attributes[:'is_stateless'].nil?
87
- self.is_stateless = attributes[:'is_stateless']
88
- end
112
+ self.is_stateless = attributes[:'is_stateless'] unless attributes[:'is_stateless'].nil?
89
113
 
90
- if attributes[:'protocol']
91
- self.protocol = attributes[:'protocol']
92
- end
114
+ self.protocol = attributes[:'protocol'] if attributes[:'protocol']
93
115
 
94
- if attributes[:'source']
95
- self.source = attributes[:'source']
96
- end
116
+ self.source = attributes[:'source'] if attributes[:'source']
97
117
 
98
- if attributes[:'tcpOptions']
99
- self.tcp_options = attributes[:'tcpOptions']
100
- end
118
+ self.tcp_options = attributes[:'tcpOptions'] if attributes[:'tcpOptions']
101
119
 
102
120
  raise 'You cannot provide both :tcpOptions and :tcp_options' if attributes.key?(:'tcpOptions') && attributes.key?(:'tcp_options')
103
121
 
104
- if attributes[:'tcp_options']
105
- self.tcp_options = attributes[:'tcp_options']
106
- end
122
+ self.tcp_options = attributes[:'tcp_options'] if attributes[:'tcp_options']
107
123
 
108
- if attributes[:'udpOptions']
109
- self.udp_options = attributes[:'udpOptions']
110
- end
124
+ self.udp_options = attributes[:'udpOptions'] if attributes[:'udpOptions']
111
125
 
112
126
  raise 'You cannot provide both :udpOptions and :udp_options' if attributes.key?(:'udpOptions') && attributes.key?(:'udp_options')
113
127
 
114
- if attributes[:'udp_options']
115
- self.udp_options = attributes[:'udp_options']
116
- end
117
-
128
+ self.udp_options = attributes[:'udp_options'] if attributes[:'udp_options']
118
129
  end
130
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
131
+ # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
132
+
133
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
134
+
119
135
 
120
136
  # Checks equality by comparing each attribute.
121
- # @param [Object] other_object to be compared
122
- def ==(other_object)
123
- return true if self.equal?(other_object)
124
- self.class == other_object.class &&
125
- icmp_options == other_object.icmp_options &&
126
- is_stateless == other_object.is_stateless &&
127
- protocol == other_object.protocol &&
128
- source == other_object.source &&
129
- tcp_options == other_object.tcp_options &&
130
- udp_options == other_object.udp_options
137
+ # @param [Object] other the other object to be compared
138
+ def ==(other)
139
+ return true if equal?(other)
140
+ self.class == other.class &&
141
+ icmp_options == other.icmp_options &&
142
+ is_stateless == other.is_stateless &&
143
+ protocol == other.protocol &&
144
+ source == other.source &&
145
+ tcp_options == other.tcp_options &&
146
+ udp_options == other.udp_options
131
147
  end
148
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
132
149
 
133
150
  # @see the `==` method
134
- # @param [Object] other_object to be compared
135
- def eql?(other_object)
136
- self == other_object
151
+ # @param [Object] other the other object to be compared
152
+ def eql?(other)
153
+ self == other
137
154
  end
138
155
 
156
+ # rubocop:disable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
157
+
158
+
139
159
  # Calculates hash code according to all attributes.
140
160
  # @return [Fixnum] Hash code
141
161
  def hash
142
162
  [icmp_options, is_stateless, protocol, source, tcp_options, udp_options].hash
143
163
  end
164
+ # rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
165
+
166
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
167
+
144
168
 
145
169
  # Builds the object from hash
146
170
  # @param [Hash] attributes Model attributes in the form of hash
@@ -152,15 +176,22 @@ module OCI
152
176
  # check to ensure the input is an array given that the the attribute
153
177
  # is documented as an array but the input is not
154
178
  if attributes[self.class.attribute_map[key]].is_a?(Array)
155
- self.public_method("#{key}=").call(attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
179
+ public_method("#{key}=").call(
180
+ attributes[self.class.attribute_map[key]]
181
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
182
+ )
156
183
  end
157
184
  elsif !attributes[self.class.attribute_map[key]].nil?
158
- self.public_method("#{key}=").call(OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
159
- end # or else data not found in attributes(hash), not an issue as the data can be optional
185
+ public_method("#{key}=").call(
186
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
187
+ )
188
+ end
189
+ # or else data not found in attributes(hash), not an issue as the data can be optional
160
190
  end
161
191
 
162
192
  self
163
193
  end
194
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
164
195
 
165
196
  # Returns the string representation of the object
166
197
  # @return [String] String presentation of the object
@@ -184,11 +215,11 @@ module OCI
184
215
 
185
216
  # Outputs non-array value in the form of hash
186
217
  # For object, use to_hash. Otherwise, just return the value
187
- # @param [Object] value Any valid value
218
+ # @param [Object] value Any valid value
188
219
  # @return [Hash] Returns the value in the form of hash
189
220
  def _to_hash(value)
190
221
  if value.is_a?(Array)
191
- value.compact.map{ |v| _to_hash(v) }
222
+ value.compact.map { |v| _to_hash(v) }
192
223
  elsif value.is_a?(Hash)
193
224
  {}.tap do |hash|
194
225
  value.each { |k, v| hash[k] = _to_hash(v) }
@@ -199,31 +230,6 @@ module OCI
199
230
  value
200
231
  end
201
232
  end
202
-
203
-
204
-
205
- # Attribute mapping from ruby-style variable name to JSON key.
206
- def self.attribute_map
207
- {
208
- :'icmp_options' => :'icmpOptions',
209
- :'is_stateless' => :'isStateless',
210
- :'protocol' => :'protocol',
211
- :'source' => :'source',
212
- :'tcp_options' => :'tcpOptions',
213
- :'udp_options' => :'udpOptions'
214
- }
215
- end
216
-
217
- # Attribute type mapping.
218
- def self.swagger_types
219
- {
220
- :'icmp_options' => :'OCI::Core::Models::IcmpOptions',
221
- :'is_stateless' => :'BOOLEAN',
222
- :'protocol' => :'String',
223
- :'source' => :'String',
224
- :'tcp_options' => :'OCI::Core::Models::TcpOptions',
225
- :'udp_options' => :'OCI::Core::Models::UdpOptions'
226
- }
227
- end
228
233
  end
229
234
  end
235
+ # rubocop:enable Lint/UnneededCopDisableDirective
@@ -1,7 +1,9 @@
1
1
  # Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
2
2
 
3
3
  require 'date'
4
+ require 'logger'
4
5
 
6
+ # rubocop:disable Lint/UnneededCopDisableDirective
5
7
  module OCI
6
8
  # A compute host. The image used to launch the instance determines its operating system and other
7
9
  # software. The shape specified during the launch process determines the number of CPUs and memory
@@ -12,28 +14,30 @@ module OCI
12
14
  # talk to an administrator. If you're an administrator who needs to write policies to give users access, see
13
15
  # [Getting Started with Policies](https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/policygetstarted.htm).
14
16
  #
15
- class Core::Models::Instance
16
-
17
- LAUNCH_MODE_ENUM = [LAUNCH_MODE_NATIVE = 'NATIVE',
18
- LAUNCH_MODE_EMULATED = 'EMULATED',
19
- LAUNCH_MODE_CUSTOM = 'CUSTOM',
20
- LAUNCH_MODE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE']
21
-
22
-
23
- LIFECYCLE_STATE_ENUM = [LIFECYCLE_STATE_PROVISIONING = 'PROVISIONING',
24
- LIFECYCLE_STATE_RUNNING = 'RUNNING',
25
- LIFECYCLE_STATE_STARTING = 'STARTING',
26
- LIFECYCLE_STATE_STOPPING = 'STOPPING',
27
- LIFECYCLE_STATE_STOPPED = 'STOPPED',
28
- LIFECYCLE_STATE_CREATING_IMAGE = 'CREATING_IMAGE',
29
- LIFECYCLE_STATE_TERMINATING = 'TERMINATING',
30
- LIFECYCLE_STATE_TERMINATED = 'TERMINATED',
31
- LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE']
17
+ class Core::Models::Instance # rubocop:disable Metrics/LineLength
18
+ LAUNCH_MODE_ENUM = [
19
+ LAUNCH_MODE_NATIVE = 'NATIVE'.freeze,
20
+ LAUNCH_MODE_EMULATED = 'EMULATED'.freeze,
21
+ LAUNCH_MODE_CUSTOM = 'CUSTOM'.freeze,
22
+ LAUNCH_MODE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
23
+ ].freeze
24
+
25
+ LIFECYCLE_STATE_ENUM = [
26
+ LIFECYCLE_STATE_PROVISIONING = 'PROVISIONING'.freeze,
27
+ LIFECYCLE_STATE_RUNNING = 'RUNNING'.freeze,
28
+ LIFECYCLE_STATE_STARTING = 'STARTING'.freeze,
29
+ LIFECYCLE_STATE_STOPPING = 'STOPPING'.freeze,
30
+ LIFECYCLE_STATE_STOPPED = 'STOPPED'.freeze,
31
+ LIFECYCLE_STATE_CREATING_IMAGE = 'CREATING_IMAGE'.freeze,
32
+ LIFECYCLE_STATE_TERMINATING = 'TERMINATING'.freeze,
33
+ LIFECYCLE_STATE_TERMINATED = 'TERMINATED'.freeze,
34
+ LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
35
+ ].freeze
32
36
 
33
37
  # **[Required]** The Availability Domain the instance is running in.
34
- #
38
+ #
35
39
  # Example: `Uocm:PHX-AD-1`
36
- #
40
+ #
37
41
  # @return [String]
38
42
  attr_accessor :availability_domain
39
43
 
@@ -43,35 +47,35 @@ module OCI
43
47
 
44
48
  # Defined tags for this resource. Each key is predefined and scoped to a namespace.
45
49
  # For more information, see [Resource Tags](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm).
46
- #
50
+ #
47
51
  # Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
48
- #
52
+ #
49
53
  # @return [Hash<String, Hash<String, Object>>]
50
54
  attr_accessor :defined_tags
51
55
 
52
56
  # A user-friendly name. Does not have to be unique, and it's changeable.
53
57
  # Avoid entering confidential information.
54
- #
58
+ #
55
59
  # Example: `My bare metal instance`
56
- #
60
+ #
57
61
  # @return [String]
58
62
  attr_accessor :display_name
59
63
 
60
64
  # Additional metadata key/value pairs that you provide. They serve a similar purpose and functionality from fields in the 'metadata' object.
61
- #
65
+ #
62
66
  # They are distinguished from 'metadata' fields in that these can be nested JSON objects (whereas 'metadata' fields are string/string maps only).
63
- #
67
+ #
64
68
  # If you don't need nested metadata values, it is strongly advised to avoid using this object and use the Metadata object instead.
65
- #
69
+ #
66
70
  # @return [Hash<String, Object>]
67
71
  attr_accessor :extended_metadata
68
72
 
69
73
  # Free-form tags for this resource. Each tag is a simple key-value pair with no
70
74
  # predefined name, type, or namespace. For more information, see
71
75
  # [Resource Tags](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm).
72
- #
76
+ #
73
77
  # Example: `{\"Department\": \"Finance\"}`
74
- #
78
+ #
75
79
  # @return [Hash<String, String>]
76
80
  attr_accessor :freeform_tags
77
81
 
@@ -80,33 +84,33 @@ module OCI
80
84
  attr_accessor :id
81
85
 
82
86
  # Deprecated. Use `sourceDetails` instead.
83
- #
87
+ #
84
88
  # @return [String]
85
89
  attr_accessor :image_id
86
90
 
87
91
  # When a bare metal or virtual machine
88
92
  # instance boots, the iPXE firmware that runs on the instance is
89
93
  # configured to run an iPXE script to continue the boot process.
90
- #
94
+ #
91
95
  # If you want more control over the boot process, you can provide
92
96
  # your own custom iPXE script that will run when the instance boots;
93
97
  # however, you should be aware that the same iPXE script will run
94
98
  # every time an instance boots; not only after the initial
95
99
  # LaunchInstance call.
96
- #
100
+ #
97
101
  # The default iPXE script connects to the instance's local boot
98
102
  # volume over iSCSI and performs a network boot. If you use a custom iPXE
99
103
  # script and want to network-boot from the instance's local boot volume
100
104
  # over iSCSI the same way as the default iPXE script, you should use the
101
105
  # following iSCSI IP address: 169.254.0.2, and boot volume IQN:
102
106
  # iqn.2015-02.oracle.boot.
103
- #
107
+ #
104
108
  # For more information about the Bring Your Own Image feature of
105
109
  # Oracle Cloud Infrastructure, see
106
110
  # [Bring Your Own Image](https://docs.us-phoenix-1.oraclecloud.com/Content/Compute/References/bringyourownimage.htm).
107
- #
111
+ #
108
112
  # For more information about iPXE, see http://ipxe.org.
109
- #
113
+ #
110
114
  # @return [String]
111
115
  attr_accessor :ipxe_script
112
116
 
@@ -114,32 +118,32 @@ module OCI
114
118
  # * `NATIVE` - VM instances launch with iSCSI boot and VFIO devices. The default value for Oracle-provided images.
115
119
  # * `EMULATED` - VM instances launch with emulated devices, such as the E1000 network driver and emulated SCSI disk controller.
116
120
  # * `CUSTOM` - VM instances launch with custom configuration settings specified in the `LaunchOptions` parameter.
117
- #
121
+ #
118
122
  # @return [String]
119
- attr_accessor :launch_mode
123
+ attr_reader :launch_mode
120
124
 
121
125
  # @return [OCI::Core::Models::LaunchOptions]
122
126
  attr_accessor :launch_options
123
127
 
124
128
  # **[Required]** The current state of the instance.
125
129
  # @return [String]
126
- attr_accessor :lifecycle_state
130
+ attr_reader :lifecycle_state
127
131
 
128
132
  # Custom metadata that you provide.
129
133
  # @return [Hash<String, String>]
130
134
  attr_accessor :metadata
131
135
 
132
136
  # **[Required]** The region that contains the Availability Domain the instance is running in.
133
- #
137
+ #
134
138
  # Example: `phx`
135
- #
139
+ #
136
140
  # @return [String]
137
141
  attr_accessor :region
138
142
 
139
143
  # **[Required]** The shape of the instance. The shape determines the number of CPUs and the amount of memory
140
144
  # allocated to the instance. You can enumerate all available shapes by calling
141
145
  # {#list_shapes list_shapes}.
142
- #
146
+ #
143
147
  # @return [String]
144
148
  attr_accessor :shape
145
149
 
@@ -148,12 +152,65 @@ module OCI
148
152
  attr_accessor :source_details
149
153
 
150
154
  # **[Required]** The date and time the instance was created, in the format defined by RFC3339.
151
- #
155
+ #
152
156
  # Example: `2016-08-25T21:10:29.600Z`
153
- #
157
+ #
154
158
  # @return [DateTime]
155
159
  attr_accessor :time_created
156
160
 
161
+ # Attribute mapping from ruby-style variable name to JSON key.
162
+ def self.attribute_map
163
+ {
164
+ # rubocop:disable Style/SymbolLiteral
165
+ 'availability_domain': :'availabilityDomain',
166
+ 'compartment_id': :'compartmentId',
167
+ 'defined_tags': :'definedTags',
168
+ 'display_name': :'displayName',
169
+ 'extended_metadata': :'extendedMetadata',
170
+ 'freeform_tags': :'freeformTags',
171
+ 'id': :'id',
172
+ 'image_id': :'imageId',
173
+ 'ipxe_script': :'ipxeScript',
174
+ 'launch_mode': :'launchMode',
175
+ 'launch_options': :'launchOptions',
176
+ 'lifecycle_state': :'lifecycleState',
177
+ 'metadata': :'metadata',
178
+ 'region': :'region',
179
+ 'shape': :'shape',
180
+ 'source_details': :'sourceDetails',
181
+ 'time_created': :'timeCreated'
182
+ # rubocop:enable Style/SymbolLiteral
183
+ }
184
+ end
185
+
186
+ # Attribute type mapping.
187
+ def self.swagger_types
188
+ {
189
+ # rubocop:disable Style/SymbolLiteral
190
+ 'availability_domain': :'String',
191
+ 'compartment_id': :'String',
192
+ 'defined_tags': :'Hash<String, Hash<String, Object>>',
193
+ 'display_name': :'String',
194
+ 'extended_metadata': :'Hash<String, Object>',
195
+ 'freeform_tags': :'Hash<String, String>',
196
+ 'id': :'String',
197
+ 'image_id': :'String',
198
+ 'ipxe_script': :'String',
199
+ 'launch_mode': :'String',
200
+ 'launch_options': :'OCI::Core::Models::LaunchOptions',
201
+ 'lifecycle_state': :'String',
202
+ 'metadata': :'Hash<String, String>',
203
+ 'region': :'String',
204
+ 'shape': :'String',
205
+ 'source_details': :'OCI::Core::Models::InstanceSourceDetails',
206
+ 'time_created': :'DateTime'
207
+ # rubocop:enable Style/SymbolLiteral
208
+ }
209
+ end
210
+
211
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
212
+ # rubocop:disable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
213
+
157
214
 
158
215
  # Initializes the object
159
216
  # @param [Hash] attributes Model attributes in the form of hash
@@ -178,211 +235,173 @@ module OCI
178
235
  return unless attributes.is_a?(Hash)
179
236
 
180
237
  # convert string to symbol for hash key
181
- attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
238
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
182
239
 
183
- if attributes[:'availabilityDomain']
184
- self.availability_domain = attributes[:'availabilityDomain']
185
- end
240
+ self.availability_domain = attributes[:'availabilityDomain'] if attributes[:'availabilityDomain']
186
241
 
187
242
  raise 'You cannot provide both :availabilityDomain and :availability_domain' if attributes.key?(:'availabilityDomain') && attributes.key?(:'availability_domain')
188
243
 
189
- if attributes[:'availability_domain']
190
- self.availability_domain = attributes[:'availability_domain']
191
- end
244
+ self.availability_domain = attributes[:'availability_domain'] if attributes[:'availability_domain']
192
245
 
193
- if attributes[:'compartmentId']
194
- self.compartment_id = attributes[:'compartmentId']
195
- end
246
+ self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId']
196
247
 
197
248
  raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id')
198
249
 
199
- if attributes[:'compartment_id']
200
- self.compartment_id = attributes[:'compartment_id']
201
- end
250
+ self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id']
202
251
 
203
- if attributes[:'definedTags']
204
- self.defined_tags = attributes[:'definedTags']
205
- end
252
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
206
253
 
207
254
  raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
208
255
 
209
- if attributes[:'defined_tags']
210
- self.defined_tags = attributes[:'defined_tags']
211
- end
256
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
212
257
 
213
- if attributes[:'displayName']
214
- self.display_name = attributes[:'displayName']
215
- end
258
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
216
259
 
217
260
  raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
218
261
 
219
- if attributes[:'display_name']
220
- self.display_name = attributes[:'display_name']
221
- end
262
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
222
263
 
223
- if attributes[:'extendedMetadata']
224
- self.extended_metadata = attributes[:'extendedMetadata']
225
- end
264
+ self.extended_metadata = attributes[:'extendedMetadata'] if attributes[:'extendedMetadata']
226
265
 
227
266
  raise 'You cannot provide both :extendedMetadata and :extended_metadata' if attributes.key?(:'extendedMetadata') && attributes.key?(:'extended_metadata')
228
267
 
229
- if attributes[:'extended_metadata']
230
- self.extended_metadata = attributes[:'extended_metadata']
231
- end
268
+ self.extended_metadata = attributes[:'extended_metadata'] if attributes[:'extended_metadata']
232
269
 
233
- if attributes[:'freeformTags']
234
- self.freeform_tags = attributes[:'freeformTags']
235
- end
270
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
236
271
 
237
272
  raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
238
273
 
239
- if attributes[:'freeform_tags']
240
- self.freeform_tags = attributes[:'freeform_tags']
241
- end
274
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
242
275
 
243
- if attributes[:'id']
244
- self.id = attributes[:'id']
245
- end
276
+ self.id = attributes[:'id'] if attributes[:'id']
246
277
 
247
- if attributes[:'imageId']
248
- self.image_id = attributes[:'imageId']
249
- end
278
+ self.image_id = attributes[:'imageId'] if attributes[:'imageId']
250
279
 
251
280
  raise 'You cannot provide both :imageId and :image_id' if attributes.key?(:'imageId') && attributes.key?(:'image_id')
252
281
 
253
- if attributes[:'image_id']
254
- self.image_id = attributes[:'image_id']
255
- end
282
+ self.image_id = attributes[:'image_id'] if attributes[:'image_id']
256
283
 
257
- if attributes[:'ipxeScript']
258
- self.ipxe_script = attributes[:'ipxeScript']
259
- end
284
+ self.ipxe_script = attributes[:'ipxeScript'] if attributes[:'ipxeScript']
260
285
 
261
286
  raise 'You cannot provide both :ipxeScript and :ipxe_script' if attributes.key?(:'ipxeScript') && attributes.key?(:'ipxe_script')
262
287
 
263
- if attributes[:'ipxe_script']
264
- self.ipxe_script = attributes[:'ipxe_script']
265
- end
288
+ self.ipxe_script = attributes[:'ipxe_script'] if attributes[:'ipxe_script']
266
289
 
267
- if attributes[:'launchMode']
268
- self.launch_mode = attributes[:'launchMode']
269
- end
290
+ self.launch_mode = attributes[:'launchMode'] if attributes[:'launchMode']
270
291
 
271
292
  raise 'You cannot provide both :launchMode and :launch_mode' if attributes.key?(:'launchMode') && attributes.key?(:'launch_mode')
272
293
 
273
- if attributes[:'launch_mode']
274
- self.launch_mode = attributes[:'launch_mode']
275
- end
294
+ self.launch_mode = attributes[:'launch_mode'] if attributes[:'launch_mode']
276
295
 
277
- if attributes[:'launchOptions']
278
- self.launch_options = attributes[:'launchOptions']
279
- end
296
+ self.launch_options = attributes[:'launchOptions'] if attributes[:'launchOptions']
280
297
 
281
298
  raise 'You cannot provide both :launchOptions and :launch_options' if attributes.key?(:'launchOptions') && attributes.key?(:'launch_options')
282
299
 
283
- if attributes[:'launch_options']
284
- self.launch_options = attributes[:'launch_options']
285
- end
300
+ self.launch_options = attributes[:'launch_options'] if attributes[:'launch_options']
286
301
 
287
- if attributes[:'lifecycleState']
288
- self.lifecycle_state = attributes[:'lifecycleState']
289
- end
302
+ self.lifecycle_state = attributes[:'lifecycleState'] if attributes[:'lifecycleState']
290
303
 
291
304
  raise 'You cannot provide both :lifecycleState and :lifecycle_state' if attributes.key?(:'lifecycleState') && attributes.key?(:'lifecycle_state')
292
305
 
293
- if attributes[:'lifecycle_state']
294
- self.lifecycle_state = attributes[:'lifecycle_state']
295
- end
306
+ self.lifecycle_state = attributes[:'lifecycle_state'] if attributes[:'lifecycle_state']
296
307
 
297
- if attributes[:'metadata']
298
- self.metadata = attributes[:'metadata']
299
- end
308
+ self.metadata = attributes[:'metadata'] if attributes[:'metadata']
300
309
 
301
- if attributes[:'region']
302
- self.region = attributes[:'region']
303
- end
310
+ self.region = attributes[:'region'] if attributes[:'region']
304
311
 
305
- if attributes[:'shape']
306
- self.shape = attributes[:'shape']
307
- end
312
+ self.shape = attributes[:'shape'] if attributes[:'shape']
308
313
 
309
- if attributes[:'sourceDetails']
310
- self.source_details = attributes[:'sourceDetails']
311
- end
314
+ self.source_details = attributes[:'sourceDetails'] if attributes[:'sourceDetails']
312
315
 
313
316
  raise 'You cannot provide both :sourceDetails and :source_details' if attributes.key?(:'sourceDetails') && attributes.key?(:'source_details')
314
317
 
315
- if attributes[:'source_details']
316
- self.source_details = attributes[:'source_details']
317
- end
318
+ self.source_details = attributes[:'source_details'] if attributes[:'source_details']
318
319
 
319
- if attributes[:'timeCreated']
320
- self.time_created = attributes[:'timeCreated']
321
- end
320
+ self.time_created = attributes[:'timeCreated'] if attributes[:'timeCreated']
322
321
 
323
322
  raise 'You cannot provide both :timeCreated and :time_created' if attributes.key?(:'timeCreated') && attributes.key?(:'time_created')
324
323
 
325
- if attributes[:'time_created']
326
- self.time_created = attributes[:'time_created']
327
- end
328
-
324
+ self.time_created = attributes[:'time_created'] if attributes[:'time_created']
329
325
  end
326
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
327
+ # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
330
328
 
331
329
  # Custom attribute writer method checking allowed values (enum).
332
330
  # @param [Object] launch_mode Object to be assigned
333
331
  def launch_mode=(launch_mode)
332
+ # rubocop:disable Style/ConditionalAssignment
334
333
  if launch_mode && !LAUNCH_MODE_ENUM.include?(launch_mode)
334
+ # rubocop: disable Metrics/LineLength
335
+ OCI.logger.debug("Unknown value for 'launch_mode' [" + launch_mode + "]. Mapping to 'LAUNCH_MODE_UNKNOWN_ENUM_VALUE'") if OCI.logger
336
+ # rubocop: enable Metrics/LineLength
335
337
  @launch_mode = LAUNCH_MODE_UNKNOWN_ENUM_VALUE
336
338
  else
337
339
  @launch_mode = launch_mode
338
340
  end
341
+ # rubocop:enable Style/ConditionalAssignment
339
342
  end
340
343
 
341
344
  # Custom attribute writer method checking allowed values (enum).
342
345
  # @param [Object] lifecycle_state Object to be assigned
343
346
  def lifecycle_state=(lifecycle_state)
347
+ # rubocop:disable Style/ConditionalAssignment
344
348
  if lifecycle_state && !LIFECYCLE_STATE_ENUM.include?(lifecycle_state)
349
+ # rubocop: disable Metrics/LineLength
350
+ OCI.logger.debug("Unknown value for 'lifecycle_state' [" + lifecycle_state + "]. Mapping to 'LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE'") if OCI.logger
351
+ # rubocop: enable Metrics/LineLength
345
352
  @lifecycle_state = LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE
346
353
  else
347
354
  @lifecycle_state = lifecycle_state
348
355
  end
356
+ # rubocop:enable Style/ConditionalAssignment
349
357
  end
350
358
 
359
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
360
+
361
+
351
362
  # Checks equality by comparing each attribute.
352
- # @param [Object] other_object to be compared
353
- def ==(other_object)
354
- return true if self.equal?(other_object)
355
- self.class == other_object.class &&
356
- availability_domain == other_object.availability_domain &&
357
- compartment_id == other_object.compartment_id &&
358
- defined_tags == other_object.defined_tags &&
359
- display_name == other_object.display_name &&
360
- extended_metadata == other_object.extended_metadata &&
361
- freeform_tags == other_object.freeform_tags &&
362
- id == other_object.id &&
363
- image_id == other_object.image_id &&
364
- ipxe_script == other_object.ipxe_script &&
365
- launch_mode == other_object.launch_mode &&
366
- launch_options == other_object.launch_options &&
367
- lifecycle_state == other_object.lifecycle_state &&
368
- metadata == other_object.metadata &&
369
- region == other_object.region &&
370
- shape == other_object.shape &&
371
- source_details == other_object.source_details &&
372
- time_created == other_object.time_created
363
+ # @param [Object] other the other object to be compared
364
+ def ==(other)
365
+ return true if equal?(other)
366
+ self.class == other.class &&
367
+ availability_domain == other.availability_domain &&
368
+ compartment_id == other.compartment_id &&
369
+ defined_tags == other.defined_tags &&
370
+ display_name == other.display_name &&
371
+ extended_metadata == other.extended_metadata &&
372
+ freeform_tags == other.freeform_tags &&
373
+ id == other.id &&
374
+ image_id == other.image_id &&
375
+ ipxe_script == other.ipxe_script &&
376
+ launch_mode == other.launch_mode &&
377
+ launch_options == other.launch_options &&
378
+ lifecycle_state == other.lifecycle_state &&
379
+ metadata == other.metadata &&
380
+ region == other.region &&
381
+ shape == other.shape &&
382
+ source_details == other.source_details &&
383
+ time_created == other.time_created
373
384
  end
385
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
374
386
 
375
387
  # @see the `==` method
376
- # @param [Object] other_object to be compared
377
- def eql?(other_object)
378
- self == other_object
388
+ # @param [Object] other the other object to be compared
389
+ def eql?(other)
390
+ self == other
379
391
  end
380
392
 
393
+ # rubocop:disable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
394
+
395
+
381
396
  # Calculates hash code according to all attributes.
382
397
  # @return [Fixnum] Hash code
383
398
  def hash
384
399
  [availability_domain, compartment_id, defined_tags, display_name, extended_metadata, freeform_tags, id, image_id, ipxe_script, launch_mode, launch_options, lifecycle_state, metadata, region, shape, source_details, time_created].hash
385
400
  end
401
+ # rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
402
+
403
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
404
+
386
405
 
387
406
  # Builds the object from hash
388
407
  # @param [Hash] attributes Model attributes in the form of hash
@@ -394,15 +413,22 @@ module OCI
394
413
  # check to ensure the input is an array given that the the attribute
395
414
  # is documented as an array but the input is not
396
415
  if attributes[self.class.attribute_map[key]].is_a?(Array)
397
- self.public_method("#{key}=").call(attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
416
+ public_method("#{key}=").call(
417
+ attributes[self.class.attribute_map[key]]
418
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
419
+ )
398
420
  end
399
421
  elsif !attributes[self.class.attribute_map[key]].nil?
400
- self.public_method("#{key}=").call(OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
401
- end # or else data not found in attributes(hash), not an issue as the data can be optional
422
+ public_method("#{key}=").call(
423
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
424
+ )
425
+ end
426
+ # or else data not found in attributes(hash), not an issue as the data can be optional
402
427
  end
403
428
 
404
429
  self
405
430
  end
431
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
406
432
 
407
433
  # Returns the string representation of the object
408
434
  # @return [String] String presentation of the object
@@ -426,11 +452,11 @@ module OCI
426
452
 
427
453
  # Outputs non-array value in the form of hash
428
454
  # For object, use to_hash. Otherwise, just return the value
429
- # @param [Object] value Any valid value
455
+ # @param [Object] value Any valid value
430
456
  # @return [Hash] Returns the value in the form of hash
431
457
  def _to_hash(value)
432
458
  if value.is_a?(Array)
433
- value.compact.map{ |v| _to_hash(v) }
459
+ value.compact.map { |v| _to_hash(v) }
434
460
  elsif value.is_a?(Hash)
435
461
  {}.tap do |hash|
436
462
  value.each { |k, v| hash[k] = _to_hash(v) }
@@ -441,53 +467,6 @@ module OCI
441
467
  value
442
468
  end
443
469
  end
444
-
445
-
446
-
447
- # Attribute mapping from ruby-style variable name to JSON key.
448
- def self.attribute_map
449
- {
450
- :'availability_domain' => :'availabilityDomain',
451
- :'compartment_id' => :'compartmentId',
452
- :'defined_tags' => :'definedTags',
453
- :'display_name' => :'displayName',
454
- :'extended_metadata' => :'extendedMetadata',
455
- :'freeform_tags' => :'freeformTags',
456
- :'id' => :'id',
457
- :'image_id' => :'imageId',
458
- :'ipxe_script' => :'ipxeScript',
459
- :'launch_mode' => :'launchMode',
460
- :'launch_options' => :'launchOptions',
461
- :'lifecycle_state' => :'lifecycleState',
462
- :'metadata' => :'metadata',
463
- :'region' => :'region',
464
- :'shape' => :'shape',
465
- :'source_details' => :'sourceDetails',
466
- :'time_created' => :'timeCreated'
467
- }
468
- end
469
-
470
- # Attribute type mapping.
471
- def self.swagger_types
472
- {
473
- :'availability_domain' => :'String',
474
- :'compartment_id' => :'String',
475
- :'defined_tags' => :'Hash<String, Hash<String, Object>>',
476
- :'display_name' => :'String',
477
- :'extended_metadata' => :'Hash<String, Object>',
478
- :'freeform_tags' => :'Hash<String, String>',
479
- :'id' => :'String',
480
- :'image_id' => :'String',
481
- :'ipxe_script' => :'String',
482
- :'launch_mode' => :'String',
483
- :'launch_options' => :'OCI::Core::Models::LaunchOptions',
484
- :'lifecycle_state' => :'String',
485
- :'metadata' => :'Hash<String, String>',
486
- :'region' => :'String',
487
- :'shape' => :'String',
488
- :'source_details' => :'OCI::Core::Models::InstanceSourceDetails',
489
- :'time_created' => :'DateTime'
490
- }
491
- end
492
470
  end
493
471
  end
472
+ # rubocop:enable Lint/UnneededCopDisableDirective