ibm_cloud_power 2.1.1 → 3.0.0

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 (808) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +172 -30
  3. data/docs/AccessConfig.md +15 -0
  4. data/docs/AddHost.md +22 -0
  5. data/docs/AddServerVirtualSerialNumber.md +20 -0
  6. data/docs/AvailableHost.md +22 -0
  7. data/docs/AvailableHostCapacity.md +20 -0
  8. data/docs/AvailableHostResourceCapacity.md +18 -0
  9. data/docs/CapabilitiesDetails.md +20 -0
  10. data/docs/CloudConnectionEndpointVPC.md +1 -1
  11. data/docs/CloudConnectionVirtualPrivateClouds.md +1 -1
  12. data/docs/CloudConnectionVirtualPrivateCloudsVirtualPrivateClouds.md +14 -13
  13. data/docs/CloudConnectionVpc.md +20 -0
  14. data/docs/CreateCosImageImportJob.md +7 -3
  15. data/docs/CreateDataVolume.md +4 -2
  16. data/docs/CreateImage.md +6 -4
  17. data/docs/CreateServerVirtualSerialNumber.md +20 -0
  18. data/docs/Datacenter.md +28 -0
  19. data/docs/DatacenterLocation.md +24 -0
  20. data/docs/Datacenters.md +18 -0
  21. data/docs/DatacentersApi.md +253 -0
  22. data/docs/DeleteServerVirtualSerialNumber.md +18 -0
  23. data/docs/DeploymentTarget.md +20 -0
  24. data/docs/DisasterRecovery.md +20 -0
  25. data/docs/DisasterRecoveryLocation.md +1 -1
  26. data/docs/GetBulkVolume.md +18 -0
  27. data/docs/GetServerVirtualSerialNumber.md +20 -0
  28. data/docs/Host.md +34 -0
  29. data/docs/HostCapacity.md +20 -0
  30. data/docs/HostCreate.md +20 -0
  31. data/docs/HostGroup.md +28 -0
  32. data/docs/HostGroupCreate.md +22 -0
  33. data/docs/HostGroupShareOp.md +20 -0
  34. data/docs/HostGroupSummary.md +22 -0
  35. data/docs/HostGroupsApi.md +632 -0
  36. data/docs/HostPut.md +18 -0
  37. data/docs/HostResourceCapacity.md +24 -0
  38. data/docs/Image.md +6 -0
  39. data/docs/ImageImportDetails.md +22 -0
  40. data/docs/ImageReference.md +2 -0
  41. data/docs/MultiVolumesCreate.md +4 -2
  42. data/docs/Network.md +9 -3
  43. data/docs/NetworkAddressGroup.md +26 -0
  44. data/docs/NetworkAddressGroupAddMember.md +18 -0
  45. data/docs/NetworkAddressGroupCreate.md +20 -0
  46. data/docs/NetworkAddressGroupMember.md +20 -0
  47. data/docs/NetworkAddressGroupUpdate.md +18 -0
  48. data/docs/NetworkAddressGroups.md +18 -0
  49. data/docs/NetworkAddressGroupsApi.md +451 -0
  50. data/docs/NetworkAddressTranslation.md +18 -0
  51. data/docs/NetworkCloudConnections.md +20 -0
  52. data/docs/NetworkCreate.md +6 -2
  53. data/docs/NetworkInterface.md +36 -0
  54. data/docs/NetworkInterfaceCreate.md +22 -0
  55. data/docs/NetworkInterfaceInstance.md +20 -0
  56. data/docs/NetworkInterfaceUpdate.md +20 -0
  57. data/docs/NetworkInterfaces.md +18 -0
  58. data/docs/NetworkPortPvmInstance.md +1 -1
  59. data/docs/NetworkReference.md +8 -2
  60. data/docs/NetworkSecurityGroup.md +30 -0
  61. data/docs/NetworkSecurityGroupAddMember.md +20 -0
  62. data/docs/NetworkSecurityGroupAddRule.md +30 -0
  63. data/docs/NetworkSecurityGroupClone.md +18 -0
  64. data/docs/NetworkSecurityGroupCreate.md +20 -0
  65. data/docs/NetworkSecurityGroupMember.md +26 -0
  66. data/docs/NetworkSecurityGroupMoveMember.md +20 -0
  67. data/docs/NetworkSecurityGroupRule.md +28 -0
  68. data/docs/NetworkSecurityGroupRulePort.md +20 -0
  69. data/docs/NetworkSecurityGroupRuleProtocol.md +22 -0
  70. data/docs/NetworkSecurityGroupRuleProtocolTcpFlag.md +18 -0
  71. data/docs/NetworkSecurityGroupRuleRemote.md +20 -0
  72. data/docs/NetworkSecurityGroupUpdate.md +18 -0
  73. data/docs/NetworkSecurityGroups.md +18 -0
  74. data/docs/NetworkSecurityGroupsAction.md +18 -0
  75. data/docs/NetworkSecurityGroupsApi.md +779 -0
  76. data/docs/NetworksApi.md +334 -0
  77. data/docs/PCloudCloudConnectionsApi.md +10 -10
  78. data/docs/PCloudImagesApi.md +15 -9
  79. data/docs/PCloudNetworksApi.md +12 -2
  80. data/docs/PCloudPVMInstancesApi.md +80 -78
  81. data/docs/PCloudPlacementGroupsApi.md +1 -1
  82. data/docs/PCloudPodCapacityApi.md +72 -0
  83. data/docs/PCloudSAPApi.md +10 -4
  84. data/docs/PCloudSPPPlacementGroupsApi.md +2 -2
  85. data/docs/PCloudSharedProcessorPoolsApi.md +1 -1
  86. data/docs/PCloudSnapshotsApi.md +1 -1
  87. data/docs/PCloudStorageTiersApi.md +70 -0
  88. data/docs/PCloudTasksApi.md +1 -1
  89. data/docs/PCloudTenantsSSHKeysApi.md +1 -1
  90. data/docs/PCloudVirtualSerialNumberApi.md +531 -0
  91. data/docs/PCloudVolumeGroupsApi.md +7 -5
  92. data/docs/PCloudVolumesApi.md +169 -21
  93. data/docs/PVMInstance.md +12 -0
  94. data/docs/PVMInstanceAction.md +1 -1
  95. data/docs/PVMInstanceAddNetwork.md +3 -1
  96. data/docs/PVMInstanceCapture.md +3 -1
  97. data/docs/PVMInstanceConfiguration.md +26 -0
  98. data/docs/PVMInstanceCores.md +22 -0
  99. data/docs/PVMInstanceCreate.md +11 -3
  100. data/docs/PVMInstanceDelete.md +18 -0
  101. data/docs/PVMInstanceMemory.md +22 -0
  102. data/docs/PVMInstanceNetwork.md +6 -0
  103. data/docs/PVMInstanceOperatingSystem.md +20 -0
  104. data/docs/PVMInstanceReference.md +11 -1
  105. data/docs/PVMInstanceReferenceV2.md +48 -0
  106. data/docs/PVMInstanceUpdateResponse.md +6 -2
  107. data/docs/PVMInstanceV2Health.md +18 -0
  108. data/docs/PVMInstanceV2NetworkPort.md +26 -0
  109. data/docs/PVMInstanceVirtualCores.md +22 -0
  110. data/docs/PVMInstanceVolumeUpdate.md +1 -1
  111. data/docs/PVMInstancesV2.md +18 -0
  112. data/docs/PodCapacity.md +22 -0
  113. data/docs/PodData.md +36 -0
  114. data/docs/PvmInstanceDeployment.md +24 -0
  115. data/docs/PvmInstanceHost.md +20 -0
  116. data/docs/PvmInstancePlacementGroup.md +18 -0
  117. data/docs/RemoveVirtualSerialNumber.md +18 -0
  118. data/docs/ReplicationService.md +20 -0
  119. data/docs/ReplicationTargetLocation.md +20 -0
  120. data/docs/SAPCreate.md +9 -3
  121. data/docs/SAPProfile.md +13 -1
  122. data/docs/Secondary.md +20 -0
  123. data/docs/SharedProcessorPool.md +7 -1
  124. data/docs/SharedProcessorPoolCreate.md +5 -1
  125. data/docs/SharedProcessorPoolServer.md +2 -2
  126. data/docs/Snapshot.md +3 -1
  127. data/docs/SnapshotCreate.md +2 -0
  128. data/docs/SnapshotCreateResponse.md +5 -1
  129. data/docs/SnapshotList.md +18 -0
  130. data/docs/SnapshotV1.md +30 -0
  131. data/docs/SnapshotsApi.md +261 -0
  132. data/docs/StorageController.md +26 -0
  133. data/docs/StoragePoolCapacity.md +6 -0
  134. data/docs/StoragePoolCombined.md +22 -0
  135. data/docs/StoragePoolMap.md +20 -0
  136. data/docs/StorageTier.md +22 -0
  137. data/docs/SupportedSystems.md +20 -0
  138. data/docs/System.md +16 -2
  139. data/docs/SystemPool.md +2 -0
  140. data/docs/SystemPoolCapacity.md +30 -0
  141. data/docs/SystemResources.md +32 -0
  142. data/docs/UpdateServerVirtualSerialNumber.md +18 -0
  143. data/docs/UpdateVirtualSerialNumber.md +18 -0
  144. data/docs/VirtualSerialNumber.md +22 -0
  145. data/docs/Volume.md +9 -3
  146. data/docs/VolumeAction.md +4 -2
  147. data/docs/VolumeGroup.md +7 -1
  148. data/docs/VolumeGroupDetails.md +6 -0
  149. data/docs/VolumeInfo.md +2 -0
  150. data/docs/VolumeOnboardingCreate.md +3 -1
  151. data/docs/VolumeReference.md +10 -2
  152. data/docs/VolumeSnapshotList.md +18 -0
  153. data/docs/VolumesCloneAsyncRequest.md +7 -1
  154. data/docs/VolumesCloneExecute.md +8 -2
  155. data/docs/VolumesCloneRequest.md +1 -1
  156. data/docs/VolumesDelete.md +18 -0
  157. data/docs/VolumesDeleteResponse.md +18 -0
  158. data/docs/VolumesDetach.md +22 -0
  159. data/docs/VolumesDetachmentResponse.md +18 -0
  160. data/docs/Workspace.md +30 -0
  161. data/docs/WorkspaceDetails.md +26 -0
  162. data/docs/WorkspaceLocation.md +22 -0
  163. data/docs/WorkspaceNetworkSecurityGroupsDetails.md +18 -0
  164. data/docs/WorkspacePowerEdgeRouterDetails.md +22 -0
  165. data/docs/Workspaces.md +18 -0
  166. data/docs/WorkspacesApi.md +130 -0
  167. data/ibm_cloud_power.gemspec +4 -4
  168. data/lib/ibm_cloud_power/api/datacenters_api.rb +254 -0
  169. data/lib/ibm_cloud_power/api/host_groups_api.rb +646 -0
  170. data/lib/ibm_cloud_power/api/network_address_groups_api.rb +476 -0
  171. data/lib/ibm_cloud_power/api/network_security_groups_api.rb +828 -0
  172. data/lib/ibm_cloud_power/api/networks_api.rb +363 -0
  173. data/lib/ibm_cloud_power/api/p_cloud_cloud_connections_api.rb +9 -9
  174. data/lib/ibm_cloud_power/api/p_cloud_disaster_recovery_api.rb +3 -3
  175. data/lib/ibm_cloud_power/api/p_cloud_events_api.rb +7 -12
  176. data/lib/ibm_cloud_power/api/p_cloud_images_api.rb +14 -8
  177. data/lib/ibm_cloud_power/api/p_cloud_instances_api.rb +3 -3
  178. data/lib/ibm_cloud_power/api/p_cloud_jobs_api.rb +3 -3
  179. data/lib/ibm_cloud_power/api/p_cloud_networks_api.rb +15 -5
  180. data/lib/ibm_cloud_power/api/p_cloud_placement_groups_api.rb +4 -4
  181. data/lib/ibm_cloud_power/api/{p_cloud_system_pools_api.rb → p_cloud_pod_capacity_api.rb} +19 -17
  182. data/lib/ibm_cloud_power/api/p_cloud_pvm_instances_api.rb +81 -87
  183. data/lib/ibm_cloud_power/api/p_cloud_sap_api.rb +17 -3
  184. data/lib/ibm_cloud_power/api/p_cloud_shared_processor_pools_api.rb +4 -4
  185. data/lib/ibm_cloud_power/api/p_cloud_snapshots_api.rb +4 -4
  186. data/lib/ibm_cloud_power/api/p_cloud_spp_placement_groups_api.rb +5 -5
  187. data/lib/ibm_cloud_power/api/p_cloud_storage_capacity_api.rb +3 -3
  188. data/lib/ibm_cloud_power/api/p_cloud_storage_tiers_api.rb +83 -0
  189. data/lib/ibm_cloud_power/api/p_cloud_tasks_api.rb +4 -4
  190. data/lib/ibm_cloud_power/api/p_cloud_tenants_api.rb +3 -3
  191. data/lib/ibm_cloud_power/api/p_cloud_tenants_ssh_keys_api.rb +4 -4
  192. data/lib/ibm_cloud_power/api/p_cloud_virtual_serial_number_api.rb +571 -0
  193. data/lib/ibm_cloud_power/api/p_cloud_volume_groups_api.rb +8 -6
  194. data/lib/ibm_cloud_power/api/p_cloud_volume_onboarding_api.rb +3 -3
  195. data/lib/ibm_cloud_power/api/p_cloud_volumes_api.rb +181 -15
  196. data/lib/ibm_cloud_power/api/p_cloud_vpn_connections_api.rb +3 -3
  197. data/lib/ibm_cloud_power/api/p_cloud_vpn_policies_api.rb +3 -3
  198. data/lib/ibm_cloud_power/api/snapshots_api.rb +262 -0
  199. data/lib/ibm_cloud_power/api/workspaces_api.rb +138 -0
  200. data/lib/ibm_cloud_power/api_client.rb +4 -6
  201. data/lib/ibm_cloud_power/api_error.rb +3 -3
  202. data/lib/ibm_cloud_power/configuration.rb +6 -7
  203. data/lib/ibm_cloud_power/models/{cloud_connection_speed.rb → access_config.rb} +11 -14
  204. data/lib/ibm_cloud_power/models/add_host.rb +250 -0
  205. data/lib/ibm_cloud_power/models/add_server_virtual_serial_number.rb +234 -0
  206. data/lib/ibm_cloud_power/models/auxiliary_volume_for_onboarding.rb +29 -4
  207. data/lib/ibm_cloud_power/models/auxiliary_volumes_for_onboarding.rb +3 -4
  208. data/lib/ibm_cloud_power/models/available_host.rb +240 -0
  209. data/lib/ibm_cloud_power/models/available_host_capacity.rb +229 -0
  210. data/lib/ibm_cloud_power/models/available_host_resource_capacity.rb +223 -0
  211. data/lib/ibm_cloud_power/models/capabilities_details.rb +229 -0
  212. data/lib/ibm_cloud_power/models/clone_task_reference.rb +3 -4
  213. data/lib/ibm_cloud_power/models/clone_task_status.rb +3 -4
  214. data/lib/ibm_cloud_power/models/cloned_volume.rb +3 -4
  215. data/lib/ibm_cloud_power/models/cloned_volume_detail.rb +5 -14
  216. data/lib/ibm_cloud_power/models/cloud_connection.rb +5 -4
  217. data/lib/ibm_cloud_power/models/cloud_connection_create.rb +5 -4
  218. data/lib/ibm_cloud_power/models/cloud_connection_create_response.rb +5 -4
  219. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_classic.rb +4 -4
  220. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_classic_update.rb +4 -4
  221. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_vpc.rb +4 -5
  222. data/lib/ibm_cloud_power/models/cloud_connection_gre_tunnel.rb +3 -4
  223. data/lib/ibm_cloud_power/models/cloud_connection_gre_tunnel_create.rb +3 -4
  224. data/lib/ibm_cloud_power/models/cloud_connection_update.rb +5 -4
  225. data/lib/ibm_cloud_power/models/cloud_connection_virtual_private_clouds.rb +4 -5
  226. data/lib/ibm_cloud_power/models/cloud_connection_virtual_private_clouds_virtual_private_clouds.rb +39 -29
  227. data/lib/ibm_cloud_power/models/cloud_connection_vpc.rb +6 -7
  228. data/lib/ibm_cloud_power/models/cloud_connections.rb +3 -4
  229. data/lib/ibm_cloud_power/models/cloud_instance.rb +5 -14
  230. data/lib/ibm_cloud_power/models/cloud_instance_reference.rb +4 -9
  231. data/lib/ibm_cloud_power/models/cloud_instance_usage_limits.rb +3 -4
  232. data/lib/ibm_cloud_power/models/console_language.rb +3 -4
  233. data/lib/ibm_cloud_power/models/console_languages.rb +3 -4
  234. data/lib/ibm_cloud_power/models/create_cos_image_import_job.rb +30 -10
  235. data/lib/ibm_cloud_power/models/create_data_volume.rb +16 -7
  236. data/lib/ibm_cloud_power/models/create_image.rb +33 -11
  237. data/lib/ibm_cloud_power/models/create_server_virtual_serial_number.rb +234 -0
  238. data/lib/ibm_cloud_power/models/datacenter.rb +332 -0
  239. data/lib/ibm_cloud_power/models/datacenter_location.rb +269 -0
  240. data/lib/ibm_cloud_power/models/datacenters.rb +226 -0
  241. data/lib/ibm_cloud_power/models/dead_peer_detection.rb +3 -4
  242. data/lib/ibm_cloud_power/models/delete_server_virtual_serial_number.rb +219 -0
  243. data/lib/ibm_cloud_power/models/deployment_target.rb +273 -0
  244. data/lib/ibm_cloud_power/models/disaster_recovery.rb +229 -0
  245. data/lib/ibm_cloud_power/models/disaster_recovery_location.rb +6 -9
  246. data/lib/ibm_cloud_power/models/disaster_recovery_locations.rb +3 -4
  247. data/lib/ibm_cloud_power/models/error.rb +3 -4
  248. data/lib/ibm_cloud_power/models/event.rb +3 -4
  249. data/lib/ibm_cloud_power/models/event_user.rb +3 -4
  250. data/lib/ibm_cloud_power/models/events.rb +3 -4
  251. data/lib/ibm_cloud_power/models/export_image.rb +3 -4
  252. data/lib/ibm_cloud_power/models/flash_copy_mapping.rb +3 -4
  253. data/lib/ibm_cloud_power/models/get_bulk_volume.rb +226 -0
  254. data/lib/ibm_cloud_power/models/get_server_virtual_serial_number.rb +239 -0
  255. data/lib/ibm_cloud_power/models/host.rb +300 -0
  256. data/lib/ibm_cloud_power/models/host_capacity.rb +229 -0
  257. data/lib/ibm_cloud_power/models/host_create.rb +242 -0
  258. data/lib/ibm_cloud_power/models/host_group.rb +274 -0
  259. data/lib/ibm_cloud_power/models/host_group_create.rb +254 -0
  260. data/lib/ibm_cloud_power/models/host_group_share_op.rb +232 -0
  261. data/lib/ibm_cloud_power/models/host_group_summary.rb +239 -0
  262. data/lib/ibm_cloud_power/models/{options.rb → host_put.rb} +18 -17
  263. data/lib/ibm_cloud_power/models/host_resource_capacity.rb +265 -0
  264. data/lib/ibm_cloud_power/models/ike_policies.rb +3 -4
  265. data/lib/ibm_cloud_power/models/ike_policy.rb +3 -4
  266. data/lib/ibm_cloud_power/models/ike_policy_authentication.rb +6 -9
  267. data/lib/ibm_cloud_power/models/ike_policy_create.rb +3 -4
  268. data/lib/ibm_cloud_power/models/ike_policy_ref.rb +3 -4
  269. data/lib/ibm_cloud_power/models/ike_policy_update.rb +3 -4
  270. data/lib/ibm_cloud_power/models/image.rb +41 -5
  271. data/lib/ibm_cloud_power/models/image_import_details.rb +312 -0
  272. data/lib/ibm_cloud_power/models/image_reference.rb +15 -10
  273. data/lib/ibm_cloud_power/models/image_specifications.rb +3 -4
  274. data/lib/ibm_cloud_power/models/image_volume.rb +3 -4
  275. data/lib/ibm_cloud_power/models/images.rb +3 -4
  276. data/lib/ibm_cloud_power/models/ip_address_range.rb +3 -4
  277. data/lib/ibm_cloud_power/models/ip_sec_policies.rb +3 -4
  278. data/lib/ibm_cloud_power/models/ip_sec_policy.rb +3 -4
  279. data/lib/ibm_cloud_power/models/ip_sec_policy_create.rb +3 -4
  280. data/lib/ibm_cloud_power/models/ip_sec_policy_ref.rb +3 -4
  281. data/lib/ibm_cloud_power/models/ip_sec_policy_update.rb +3 -4
  282. data/lib/ibm_cloud_power/models/ipsec_policy_authentication.rb +6 -9
  283. data/lib/ibm_cloud_power/models/job.rb +5 -14
  284. data/lib/ibm_cloud_power/models/job_reference.rb +3 -4
  285. data/lib/ibm_cloud_power/models/jobs.rb +3 -4
  286. data/lib/ibm_cloud_power/models/maximum_storage_allocation.rb +3 -4
  287. data/lib/ibm_cloud_power/models/min_max_default.rb +3 -4
  288. data/lib/ibm_cloud_power/models/multi_volumes_create.rb +16 -7
  289. data/lib/ibm_cloud_power/models/network.rb +60 -13
  290. data/lib/ibm_cloud_power/models/{cloud_connection_virtual_private_clouds_virtual_private_clouds_inner.rb → network_address_group.rb} +54 -46
  291. data/lib/ibm_cloud_power/models/network_address_group_add_member.rb +224 -0
  292. data/lib/ibm_cloud_power/models/network_address_group_create.rb +236 -0
  293. data/lib/ibm_cloud_power/models/network_address_group_member.rb +239 -0
  294. data/lib/ibm_cloud_power/models/network_address_group_update.rb +219 -0
  295. data/lib/ibm_cloud_power/models/network_address_groups.rb +221 -0
  296. data/lib/ibm_cloud_power/models/network_address_translation.rb +220 -0
  297. data/lib/ibm_cloud_power/models/{network_cloud_connections_inner.rb → network_cloud_connections.rb} +6 -7
  298. data/lib/ibm_cloud_power/models/network_create.rb +77 -9
  299. data/lib/ibm_cloud_power/models/network_create.rb.orig +393 -0
  300. data/lib/ibm_cloud_power/models/network_id.rb +3 -4
  301. data/lib/ibm_cloud_power/models/network_ids.rb +3 -4
  302. data/lib/ibm_cloud_power/models/network_interface.rb +342 -0
  303. data/lib/ibm_cloud_power/models/network_interface_create.rb +241 -0
  304. data/lib/ibm_cloud_power/models/network_interface_instance.rb +230 -0
  305. data/lib/ibm_cloud_power/models/network_interface_update.rb +229 -0
  306. data/lib/ibm_cloud_power/models/network_interfaces.rb +226 -0
  307. data/lib/ibm_cloud_power/models/network_ip_address_metrics.rb +3 -4
  308. data/lib/ibm_cloud_power/models/network_port.rb +3 -4
  309. data/lib/ibm_cloud_power/models/network_port_create.rb +3 -4
  310. data/lib/ibm_cloud_power/models/network_port_pvm_instance.rb +4 -5
  311. data/lib/ibm_cloud_power/models/network_port_update.rb +3 -4
  312. data/lib/ibm_cloud_power/models/network_ports.rb +3 -4
  313. data/lib/ibm_cloud_power/models/network_reference.rb +59 -12
  314. data/lib/ibm_cloud_power/models/network_security_group.rb +300 -0
  315. data/lib/ibm_cloud_power/models/network_security_group_add_member.rb +273 -0
  316. data/lib/ibm_cloud_power/models/network_security_group_add_rule.rb +326 -0
  317. data/lib/ibm_cloud_power/models/network_security_group_clone.rb +224 -0
  318. data/lib/ibm_cloud_power/models/network_security_group_create.rb +236 -0
  319. data/lib/ibm_cloud_power/models/network_security_group_member.rb +308 -0
  320. data/lib/ibm_cloud_power/models/network_security_group_move_member.rb +239 -0
  321. data/lib/ibm_cloud_power/models/{ike_policy_template.rb → network_security_group_rule.rb} +91 -85
  322. data/lib/ibm_cloud_power/models/network_security_group_rule_port.rb +259 -0
  323. data/lib/ibm_cloud_power/models/{cloud_instance_create.rb → network_security_group_rule_protocol.rb} +77 -95
  324. data/lib/ibm_cloud_power/models/network_security_group_rule_protocol_tcp_flag.rb +253 -0
  325. data/lib/ibm_cloud_power/models/network_security_group_rule_remote.rb +263 -0
  326. data/lib/ibm_cloud_power/models/network_security_group_update.rb +219 -0
  327. data/lib/ibm_cloud_power/models/network_security_groups.rb +221 -0
  328. data/lib/ibm_cloud_power/models/network_security_groups_action.rb +258 -0
  329. data/lib/ibm_cloud_power/models/network_update.rb +3 -4
  330. data/lib/ibm_cloud_power/models/networks.rb +3 -4
  331. data/lib/ibm_cloud_power/models/operation.rb +3 -4
  332. data/lib/ibm_cloud_power/models/operations.rb +3 -4
  333. data/lib/ibm_cloud_power/models/peer_subnet_update.rb +3 -4
  334. data/lib/ibm_cloud_power/models/peer_subnets.rb +3 -4
  335. data/lib/ibm_cloud_power/models/peering_network.rb +3 -4
  336. data/lib/ibm_cloud_power/models/pin_policy.rb +6 -9
  337. data/lib/ibm_cloud_power/models/placement_group.rb +3 -4
  338. data/lib/ibm_cloud_power/models/placement_group_create.rb +3 -4
  339. data/lib/ibm_cloud_power/models/placement_group_server.rb +3 -4
  340. data/lib/ibm_cloud_power/models/placement_groups.rb +3 -4
  341. data/lib/ibm_cloud_power/models/pod_capacity.rb +243 -0
  342. data/lib/ibm_cloud_power/models/pod_data.rb +360 -0
  343. data/lib/ibm_cloud_power/models/pvm_instance.rb +68 -5
  344. data/lib/ibm_cloud_power/models/pvm_instance_action.rb +6 -7
  345. data/lib/ibm_cloud_power/models/pvm_instance_add_network.rb +19 -8
  346. data/lib/ibm_cloud_power/models/pvm_instance_capture.rb +17 -8
  347. data/lib/ibm_cloud_power/models/pvm_instance_configuration.rb +261 -0
  348. data/lib/ibm_cloud_power/models/pvm_instance_console.rb +3 -4
  349. data/lib/ibm_cloud_power/models/pvm_instance_cores.rb +244 -0
  350. data/lib/ibm_cloud_power/models/pvm_instance_create.rb +69 -10
  351. data/lib/ibm_cloud_power/models/pvm_instance_delete.rb +219 -0
  352. data/lib/ibm_cloud_power/models/pvm_instance_deployment.rb +290 -0
  353. data/lib/ibm_cloud_power/models/pvm_instance_fault.rb +3 -4
  354. data/lib/ibm_cloud_power/models/pvm_instance_health.rb +3 -4
  355. data/lib/ibm_cloud_power/models/pvm_instance_host.rb +229 -0
  356. data/lib/ibm_cloud_power/models/pvm_instance_memory.rb +244 -0
  357. data/lib/ibm_cloud_power/models/pvm_instance_multi_create.rb +3 -4
  358. data/lib/ibm_cloud_power/models/pvm_instance_network.rb +38 -5
  359. data/lib/ibm_cloud_power/models/pvm_instance_networks.rb +3 -4
  360. data/lib/ibm_cloud_power/models/{cloud_connection_endpoint_gre.rb → pvm_instance_operating_system.rb} +26 -24
  361. data/lib/ibm_cloud_power/models/pvm_instance_operation.rb +3 -4
  362. data/lib/ibm_cloud_power/models/pvm_instance_placement_group.rb +224 -0
  363. data/lib/ibm_cloud_power/models/pvm_instance_reference.rb +63 -10
  364. data/lib/ibm_cloud_power/models/pvm_instance_reference_v2.rb +395 -0
  365. data/lib/ibm_cloud_power/models/pvm_instance_remove_network.rb +3 -4
  366. data/lib/ibm_cloud_power/models/pvm_instance_update.rb +5 -4
  367. data/lib/ibm_cloud_power/models/pvm_instance_update_response.rb +30 -9
  368. data/lib/ibm_cloud_power/models/pvm_instance_v2_health.rb +225 -0
  369. data/lib/ibm_cloud_power/models/{ip_sec_policy_template.rb → pvm_instance_v2_network_port.rb} +89 -81
  370. data/lib/ibm_cloud_power/models/pvm_instance_virtual_cores.rb +263 -0
  371. data/lib/ibm_cloud_power/models/pvm_instance_volume_update.rb +4 -5
  372. data/lib/ibm_cloud_power/models/pvm_instances.rb +3 -4
  373. data/lib/ibm_cloud_power/models/pvm_instances_v2.rb +226 -0
  374. data/lib/ibm_cloud_power/models/remote_copy_relationship.rb +3 -4
  375. data/lib/ibm_cloud_power/models/remove_virtual_serial_number.rb +224 -0
  376. data/lib/ibm_cloud_power/models/replication_service.rb +241 -0
  377. data/lib/ibm_cloud_power/models/{ip_sec_policy_options.rb → replication_target_location.rb} +55 -50
  378. data/lib/ibm_cloud_power/models/sap_create.rb +61 -8
  379. data/lib/ibm_cloud_power/models/sap_profile.rb +95 -8
  380. data/lib/ibm_cloud_power/models/sap_profile_reference.rb +3 -4
  381. data/lib/ibm_cloud_power/models/sap_profiles.rb +3 -4
  382. data/lib/ibm_cloud_power/models/secondary.rb +235 -0
  383. data/lib/ibm_cloud_power/models/shared_processor_pool.rb +37 -8
  384. data/lib/ibm_cloud_power/models/shared_processor_pool_create.rb +28 -13
  385. data/lib/ibm_cloud_power/models/shared_processor_pool_detail.rb +4 -9
  386. data/lib/ibm_cloud_power/models/shared_processor_pool_placement_group.rb +3 -4
  387. data/lib/ibm_cloud_power/models/shared_processor_pool_server.rb +5 -6
  388. data/lib/ibm_cloud_power/models/shared_processor_pool_update.rb +4 -4
  389. data/lib/ibm_cloud_power/models/shared_processor_pools.rb +3 -4
  390. data/lib/ibm_cloud_power/models/site.rb +3 -4
  391. data/lib/ibm_cloud_power/models/snapshot.rb +15 -6
  392. data/lib/ibm_cloud_power/models/snapshot_create.rb +44 -5
  393. data/lib/ibm_cloud_power/models/snapshot_create_response.rb +27 -8
  394. data/lib/ibm_cloud_power/models/snapshot_list.rb +226 -0
  395. data/lib/ibm_cloud_power/models/snapshot_restore.rb +3 -4
  396. data/lib/ibm_cloud_power/models/snapshot_update.rb +29 -4
  397. data/lib/ibm_cloud_power/models/snapshot_v1.rb +304 -0
  398. data/lib/ibm_cloud_power/models/snapshots.rb +3 -4
  399. data/lib/ibm_cloud_power/models/software_licenses.rb +3 -4
  400. data/lib/ibm_cloud_power/models/spp_placement_group.rb +3 -4
  401. data/lib/ibm_cloud_power/models/spp_placement_group_create.rb +42 -4
  402. data/lib/ibm_cloud_power/models/spp_placement_groups.rb +3 -4
  403. data/lib/ibm_cloud_power/models/src.rb +3 -4
  404. data/lib/ibm_cloud_power/models/ssh_key.rb +3 -4
  405. data/lib/ibm_cloud_power/models/ssh_keys.rb +3 -4
  406. data/lib/ibm_cloud_power/models/status.rb +3 -4
  407. data/lib/ibm_cloud_power/models/status_description.rb +3 -4
  408. data/lib/ibm_cloud_power/models/status_description_error.rb +3 -4
  409. data/lib/ibm_cloud_power/models/stock_image.rb +3 -4
  410. data/lib/ibm_cloud_power/models/storage_affinity.rb +3 -4
  411. data/lib/ibm_cloud_power/models/storage_controller.rb +287 -0
  412. data/lib/ibm_cloud_power/models/storage_pool_capacity.rb +34 -5
  413. data/lib/ibm_cloud_power/models/{cloud_instance_update.rb → storage_pool_combined.rb} +44 -49
  414. data/lib/ibm_cloud_power/models/storage_pool_map.rb +227 -0
  415. data/lib/ibm_cloud_power/models/storage_pools_capacity.rb +4 -4
  416. data/lib/ibm_cloud_power/models/storage_tier.rb +276 -0
  417. data/lib/ibm_cloud_power/models/storage_type_capacity.rb +4 -4
  418. data/lib/ibm_cloud_power/models/storage_types_capacity.rb +4 -4
  419. data/lib/ibm_cloud_power/models/supported_systems.rb +243 -0
  420. data/lib/ibm_cloud_power/models/system.rb +78 -9
  421. data/lib/ibm_cloud_power/models/system_pool.rb +19 -5
  422. data/lib/ibm_cloud_power/models/system_pool_capacity.rb +312 -0
  423. data/lib/ibm_cloud_power/models/system_resources.rb +325 -0
  424. data/lib/ibm_cloud_power/models/task.rb +3 -4
  425. data/lib/ibm_cloud_power/models/task_reference.rb +3 -4
  426. data/lib/ibm_cloud_power/models/tenant.rb +3 -4
  427. data/lib/ibm_cloud_power/models/tenant_update.rb +3 -4
  428. data/lib/ibm_cloud_power/models/update_server_virtual_serial_number.rb +219 -0
  429. data/lib/ibm_cloud_power/models/update_virtual_serial_number.rb +224 -0
  430. data/lib/ibm_cloud_power/models/update_volume.rb +3 -4
  431. data/lib/ibm_cloud_power/models/virtual_cores.rb +3 -4
  432. data/lib/ibm_cloud_power/models/virtual_serial_number.rb +254 -0
  433. data/lib/ibm_cloud_power/models/volume.rb +42 -13
  434. data/lib/ibm_cloud_power/models/volume_action.rb +17 -13
  435. data/lib/ibm_cloud_power/models/volume_group.rb +40 -8
  436. data/lib/ibm_cloud_power/models/volume_group_action.rb +3 -4
  437. data/lib/ibm_cloud_power/models/volume_group_action_reset.rb +3 -4
  438. data/lib/ibm_cloud_power/models/volume_group_action_start.rb +3 -4
  439. data/lib/ibm_cloud_power/models/volume_group_action_stop.rb +3 -4
  440. data/lib/ibm_cloud_power/models/volume_group_create.rb +29 -4
  441. data/lib/ibm_cloud_power/models/volume_group_create_response.rb +3 -4
  442. data/lib/ibm_cloud_power/models/volume_group_details.rb +37 -5
  443. data/lib/ibm_cloud_power/models/volume_group_remote_copy_relationships.rb +3 -4
  444. data/lib/ibm_cloud_power/models/volume_group_storage_details.rb +3 -4
  445. data/lib/ibm_cloud_power/models/volume_group_update.rb +3 -4
  446. data/lib/ibm_cloud_power/models/volume_groups.rb +3 -4
  447. data/lib/ibm_cloud_power/models/volume_groups_details.rb +3 -4
  448. data/lib/ibm_cloud_power/models/volume_info.rb +14 -5
  449. data/lib/ibm_cloud_power/models/volume_onboarding.rb +3 -4
  450. data/lib/ibm_cloud_power/models/volume_onboarding_common.rb +3 -4
  451. data/lib/ibm_cloud_power/models/volume_onboarding_create.rb +17 -8
  452. data/lib/ibm_cloud_power/models/volume_onboarding_create_response.rb +3 -4
  453. data/lib/ibm_cloud_power/models/volume_onboarding_failure.rb +3 -4
  454. data/lib/ibm_cloud_power/models/volume_onboardings.rb +3 -4
  455. data/lib/ibm_cloud_power/models/volume_reference.rb +46 -7
  456. data/lib/ibm_cloud_power/models/volume_remote_copy_relationship.rb +3 -4
  457. data/lib/ibm_cloud_power/models/volume_snapshot_list.rb +221 -0
  458. data/lib/ibm_cloud_power/models/volumes.rb +3 -4
  459. data/lib/ibm_cloud_power/models/volumes_attach.rb +3 -4
  460. data/lib/ibm_cloud_power/models/volumes_attachment_response.rb +3 -4
  461. data/lib/ibm_cloud_power/models/volumes_clone.rb +3 -4
  462. data/lib/ibm_cloud_power/models/volumes_clone_async_request.rb +35 -6
  463. data/lib/ibm_cloud_power/models/volumes_clone_cancel.rb +3 -4
  464. data/lib/ibm_cloud_power/models/volumes_clone_create.rb +3 -4
  465. data/lib/ibm_cloud_power/models/volumes_clone_detail.rb +3 -4
  466. data/lib/ibm_cloud_power/models/volumes_clone_execute.rb +38 -9
  467. data/lib/ibm_cloud_power/models/volumes_clone_request.rb +4 -5
  468. data/lib/ibm_cloud_power/models/volumes_clone_response.rb +3 -4
  469. data/lib/ibm_cloud_power/models/volumes_clones.rb +3 -4
  470. data/lib/ibm_cloud_power/models/volumes_delete.rb +226 -0
  471. data/lib/ibm_cloud_power/models/volumes_delete_response.rb +219 -0
  472. data/lib/ibm_cloud_power/models/volumes_detach.rb +245 -0
  473. data/lib/ibm_cloud_power/models/volumes_detachment_response.rb +224 -0
  474. data/lib/ibm_cloud_power/models/vpn_connection.rb +3 -4
  475. data/lib/ibm_cloud_power/models/vpn_connection_create.rb +3 -4
  476. data/lib/ibm_cloud_power/models/vpn_connection_create_response.rb +3 -4
  477. data/lib/ibm_cloud_power/models/vpn_connection_update.rb +3 -4
  478. data/lib/ibm_cloud_power/models/vpn_connections.rb +3 -4
  479. data/lib/ibm_cloud_power/models/{pvm_instance_clone.rb → workspace.rb} +81 -80
  480. data/lib/ibm_cloud_power/models/{ike_policy_options.rb → workspace_details.rb} +51 -56
  481. data/lib/ibm_cloud_power/models/workspace_location.rb +244 -0
  482. data/lib/ibm_cloud_power/models/workspace_network_security_groups_details.rb +258 -0
  483. data/lib/ibm_cloud_power/models/workspace_power_edge_router_details.rb +307 -0
  484. data/lib/ibm_cloud_power/models/workspaces.rb +226 -0
  485. data/lib/ibm_cloud_power/version.rb +4 -4
  486. data/lib/ibm_cloud_power.rb +111 -14
  487. data/spec/api/datacenters_api_spec.rb +77 -0
  488. data/spec/api/host_groups_api_spec.rb +144 -0
  489. data/spec/api/network_address_groups_api_spec.rb +114 -0
  490. data/spec/api/network_security_groups_api_spec.rb +174 -0
  491. data/spec/api/networks_api_spec.rb +95 -0
  492. data/spec/api/p_cloud_cloud_connections_api_spec.rb +20 -20
  493. data/spec/api/p_cloud_disaster_recovery_api_spec.rb +3 -3
  494. data/spec/api/p_cloud_events_api_spec.rb +6 -5
  495. data/spec/api/p_cloud_images_api_spec.rb +87 -10
  496. data/spec/api/p_cloud_instances_api_spec.rb +4 -27
  497. data/spec/api/p_cloud_jobs_api_spec.rb +5 -5
  498. data/spec/api/p_cloud_networks_api_spec.rb +13 -8
  499. data/spec/api/p_cloud_placement_groups_api_spec.rb +15 -15
  500. data/spec/api/{p_cloud_system_pools_api_spec.rb → p_cloud_pod_capacity_api_spec.rb} +14 -13
  501. data/spec/api/p_cloud_pvm_instances_api_spec.rb +86 -22
  502. data/spec/api/p_cloud_sap_api_spec.rb +5 -3
  503. data/spec/api/p_cloud_shared_processor_pools_api_spec.rb +3 -3
  504. data/spec/api/p_cloud_snapshots_api_spec.rb +4 -4
  505. data/spec/api/p_cloud_spp_placement_groups_api_spec.rb +3 -3
  506. data/spec/api/p_cloud_storage_capacity_api_spec.rb +3 -3
  507. data/spec/api/p_cloud_storage_tiers_api_spec.rb +46 -0
  508. data/spec/api/p_cloud_tasks_api_spec.rb +5 -5
  509. data/spec/api/p_cloud_tenants_api_spec.rb +4 -4
  510. data/spec/api/p_cloud_tenants_ssh_keys_api_spec.rb +7 -7
  511. data/spec/api/p_cloud_virtual_serial_number_api_spec.rb +131 -0
  512. data/spec/api/p_cloud_volume_groups_api_spec.rb +5 -4
  513. data/spec/api/p_cloud_volume_onboarding_api_spec.rb +3 -3
  514. data/spec/api/p_cloud_volumes_api_spec.rb +182 -12
  515. data/spec/api/p_cloud_vpn_connections_api_spec.rb +3 -15
  516. data/spec/api/p_cloud_vpn_policies_api_spec.rb +3 -3
  517. data/spec/api/snapshots_api_spec.rb +81 -0
  518. data/spec/api/workspaces_api_spec.rb +56 -0
  519. data/spec/api_client_spec.rb +3 -3
  520. data/spec/configuration_spec.rb +3 -3
  521. data/spec/models/access_config_spec.rb +28 -0
  522. data/spec/models/{ip_sec_policy_options_spec.rb → add_host_spec.rb} +12 -12
  523. data/spec/models/add_server_virtual_serial_number_spec.rb +40 -0
  524. data/spec/models/auxiliary_volume_for_onboarding_spec.rb +3 -3
  525. data/spec/models/auxiliary_volumes_for_onboarding_spec.rb +3 -3
  526. data/spec/models/available_host_capacity_spec.rb +40 -0
  527. data/spec/models/available_host_resource_capacity_spec.rb +34 -0
  528. data/spec/models/available_host_spec.rb +46 -0
  529. data/spec/models/capabilities_details_spec.rb +40 -0
  530. data/spec/models/clone_task_reference_spec.rb +6 -13
  531. data/spec/models/clone_task_status_spec.rb +14 -21
  532. data/spec/models/cloned_volume_detail_spec.rb +8 -15
  533. data/spec/models/cloned_volume_spec.rb +8 -15
  534. data/spec/models/cloud_connection_create_response_spec.rb +19 -13
  535. data/spec/models/cloud_connection_create_spec.rb +35 -14
  536. data/spec/models/cloud_connection_endpoint_classic_spec.rb +6 -13
  537. data/spec/models/cloud_connection_endpoint_classic_update_spec.rb +3 -3
  538. data/spec/models/cloud_connection_endpoint_vpc_spec.rb +6 -13
  539. data/spec/models/cloud_connection_gre_tunnel_create_spec.rb +3 -3
  540. data/spec/models/cloud_connection_gre_tunnel_spec.rb +7 -20
  541. data/spec/models/cloud_connection_spec.rb +22 -23
  542. data/spec/models/cloud_connection_update_spec.rb +15 -18
  543. data/spec/models/cloud_connection_virtual_private_clouds_spec.rb +6 -13
  544. data/spec/models/cloud_connection_virtual_private_clouds_virtual_private_clouds_spec.rb +9 -16
  545. data/spec/models/cloud_connection_vpc_spec.rb +11 -18
  546. data/spec/models/cloud_connections_spec.rb +6 -13
  547. data/spec/models/cloud_instance_reference_spec.rb +12 -19
  548. data/spec/models/cloud_instance_spec.rb +17 -24
  549. data/spec/models/cloud_instance_usage_limits_spec.rb +15 -22
  550. data/spec/models/console_language_spec.rb +3 -3
  551. data/spec/models/console_languages_spec.rb +3 -3
  552. data/spec/models/create_cos_image_import_job_spec.rb +15 -3
  553. data/spec/models/create_data_volume_spec.rb +44 -21
  554. data/spec/models/create_image_spec.rb +39 -28
  555. data/spec/models/create_server_virtual_serial_number_spec.rb +40 -0
  556. data/spec/models/{ike_policy_options_spec.rb → datacenter_location_spec.rb} +13 -13
  557. data/spec/models/datacenter_spec.rb +72 -0
  558. data/spec/models/datacenters_spec.rb +34 -0
  559. data/spec/models/dead_peer_detection_spec.rb +3 -3
  560. data/spec/models/delete_server_virtual_serial_number_spec.rb +34 -0
  561. data/spec/models/deployment_target_spec.rb +44 -0
  562. data/spec/models/disaster_recovery_location_spec.rb +3 -3
  563. data/spec/models/disaster_recovery_locations_spec.rb +3 -3
  564. data/spec/models/disaster_recovery_spec.rb +40 -0
  565. data/spec/models/error_spec.rb +8 -15
  566. data/spec/models/event_spec.rb +18 -25
  567. data/spec/models/event_user_spec.rb +8 -15
  568. data/spec/models/events_spec.rb +6 -13
  569. data/spec/models/export_image_spec.rb +9 -16
  570. data/spec/models/flash_copy_mapping_spec.rb +3 -3
  571. data/spec/models/get_bulk_volume_spec.rb +34 -0
  572. data/spec/models/get_server_virtual_serial_number_spec.rb +40 -0
  573. data/spec/models/host_capacity_spec.rb +40 -0
  574. data/spec/models/host_create_spec.rb +40 -0
  575. data/spec/models/host_group_create_spec.rb +46 -0
  576. data/spec/models/host_group_share_op_spec.rb +40 -0
  577. data/spec/models/host_group_spec.rb +64 -0
  578. data/spec/models/host_group_summary_spec.rb +46 -0
  579. data/spec/models/{options_spec.rb → host_put_spec.rb} +10 -10
  580. data/spec/models/{ip_sec_policy_template_spec.rb → host_resource_capacity_spec.rb} +13 -13
  581. data/spec/models/host_spec.rb +82 -0
  582. data/spec/models/ike_policies_spec.rb +3 -3
  583. data/spec/models/ike_policy_authentication_spec.rb +3 -3
  584. data/spec/models/ike_policy_create_spec.rb +4 -8
  585. data/spec/models/ike_policy_ref_spec.rb +3 -3
  586. data/spec/models/ike_policy_spec.rb +4 -8
  587. data/spec/models/ike_policy_update_spec.rb +4 -8
  588. data/spec/models/image_import_details_spec.rb +58 -0
  589. data/spec/models/image_reference_spec.rb +26 -21
  590. data/spec/models/image_spec.rb +39 -22
  591. data/spec/models/image_specifications_spec.rb +10 -17
  592. data/spec/models/image_volume_spec.rb +8 -15
  593. data/spec/models/images_spec.rb +6 -13
  594. data/spec/models/ip_address_range_spec.rb +8 -15
  595. data/spec/models/ip_sec_policies_spec.rb +3 -3
  596. data/spec/models/ip_sec_policy_create_spec.rb +4 -8
  597. data/spec/models/ip_sec_policy_ref_spec.rb +3 -3
  598. data/spec/models/ip_sec_policy_spec.rb +4 -8
  599. data/spec/models/ip_sec_policy_update_spec.rb +4 -8
  600. data/spec/models/ipsec_policy_authentication_spec.rb +3 -3
  601. data/spec/models/job_reference_spec.rb +3 -3
  602. data/spec/models/job_spec.rb +3 -3
  603. data/spec/models/jobs_spec.rb +3 -3
  604. data/spec/models/maximum_storage_allocation_spec.rb +8 -15
  605. data/spec/models/min_max_default_spec.rb +8 -15
  606. data/spec/models/multi_volumes_create_spec.rb +50 -21
  607. data/spec/models/network_address_group_add_member_spec.rb +34 -0
  608. data/spec/models/network_address_group_create_spec.rb +40 -0
  609. data/spec/models/network_address_group_member_spec.rb +40 -0
  610. data/spec/models/{ike_policy_template_spec.rb → network_address_group_spec.rb} +14 -14
  611. data/spec/models/network_address_group_update_spec.rb +34 -0
  612. data/spec/models/network_address_groups_spec.rb +34 -0
  613. data/spec/models/network_address_translation_spec.rb +34 -0
  614. data/spec/models/{network_cloud_connections_inner_spec.rb → network_cloud_connections_spec.rb} +9 -9
  615. data/spec/models/network_create_spec.rb +28 -23
  616. data/spec/models/network_id_spec.rb +3 -3
  617. data/spec/models/network_ids_spec.rb +3 -3
  618. data/spec/models/network_interface_create_spec.rb +46 -0
  619. data/spec/models/network_interface_instance_spec.rb +40 -0
  620. data/spec/models/network_interface_spec.rb +88 -0
  621. data/spec/models/network_interface_update_spec.rb +40 -0
  622. data/spec/models/network_interfaces_spec.rb +34 -0
  623. data/spec/models/network_ip_address_metrics_spec.rb +8 -15
  624. data/spec/models/network_port_create_spec.rb +6 -13
  625. data/spec/models/network_port_pvm_instance_spec.rb +8 -15
  626. data/spec/models/network_port_spec.rb +17 -18
  627. data/spec/models/network_port_update_spec.rb +6 -13
  628. data/spec/models/network_ports_spec.rb +6 -13
  629. data/spec/models/network_reference_spec.rb +39 -22
  630. data/spec/models/network_security_group_add_member_spec.rb +44 -0
  631. data/spec/models/network_security_group_add_rule_spec.rb +74 -0
  632. data/spec/models/network_security_group_clone_spec.rb +34 -0
  633. data/spec/models/network_security_group_create_spec.rb +40 -0
  634. data/spec/models/network_security_group_member_spec.rb +62 -0
  635. data/spec/models/network_security_group_move_member_spec.rb +40 -0
  636. data/spec/models/network_security_group_rule_port_spec.rb +40 -0
  637. data/spec/models/network_security_group_rule_protocol_spec.rb +54 -0
  638. data/spec/models/network_security_group_rule_protocol_tcp_flag_spec.rb +38 -0
  639. data/spec/models/network_security_group_rule_remote_spec.rb +44 -0
  640. data/spec/models/network_security_group_rule_spec.rb +68 -0
  641. data/spec/models/network_security_group_spec.rb +70 -0
  642. data/spec/models/network_security_group_update_spec.rb +34 -0
  643. data/spec/models/network_security_groups_action_spec.rb +38 -0
  644. data/spec/models/network_security_groups_spec.rb +34 -0
  645. data/spec/models/network_spec.rb +48 -25
  646. data/spec/models/network_update_spec.rb +9 -16
  647. data/spec/models/networks_spec.rb +6 -13
  648. data/spec/models/operation_spec.rb +3 -3
  649. data/spec/models/operations_spec.rb +9 -16
  650. data/spec/models/peer_subnet_update_spec.rb +3 -3
  651. data/spec/models/peer_subnets_spec.rb +3 -3
  652. data/spec/models/peering_network_spec.rb +9 -16
  653. data/spec/models/pin_policy_spec.rb +6 -13
  654. data/spec/models/placement_group_create_spec.rb +7 -14
  655. data/spec/models/placement_group_server_spec.rb +6 -13
  656. data/spec/models/placement_group_spec.rb +13 -20
  657. data/spec/models/placement_groups_spec.rb +6 -13
  658. data/spec/models/pod_capacity_spec.rb +46 -0
  659. data/spec/models/{pvm_instance_clone_spec.rb → pod_data_spec.rb} +27 -26
  660. data/spec/models/pvm_instance_action_spec.rb +8 -15
  661. data/spec/models/pvm_instance_add_network_spec.rb +13 -14
  662. data/spec/models/pvm_instance_capture_spec.rb +20 -21
  663. data/spec/models/{cloud_connection_virtual_private_clouds_virtual_private_clouds_inner_spec.rb → pvm_instance_configuration_spec.rb} +19 -13
  664. data/spec/models/pvm_instance_console_spec.rb +6 -13
  665. data/spec/models/pvm_instance_cores_spec.rb +46 -0
  666. data/spec/models/pvm_instance_create_spec.rb +99 -36
  667. data/spec/models/pvm_instance_delete_spec.rb +34 -0
  668. data/spec/models/pvm_instance_deployment_spec.rb +56 -0
  669. data/spec/models/pvm_instance_fault_spec.rb +9 -16
  670. data/spec/models/pvm_instance_health_spec.rb +9 -16
  671. data/spec/models/pvm_instance_host_spec.rb +40 -0
  672. data/spec/models/pvm_instance_memory_spec.rb +46 -0
  673. data/spec/models/pvm_instance_multi_create_spec.rb +13 -20
  674. data/spec/models/pvm_instance_network_spec.rb +32 -21
  675. data/spec/models/pvm_instance_networks_spec.rb +6 -13
  676. data/spec/models/pvm_instance_operating_system_spec.rb +40 -0
  677. data/spec/models/pvm_instance_operation_spec.rb +12 -19
  678. data/spec/models/pvm_instance_placement_group_spec.rb +34 -0
  679. data/spec/models/pvm_instance_reference_spec.rb +116 -39
  680. data/spec/models/pvm_instance_reference_v2_spec.rb +124 -0
  681. data/spec/models/pvm_instance_remove_network_spec.rb +6 -13
  682. data/spec/models/pvm_instance_spec.rb +124 -41
  683. data/spec/models/pvm_instance_update_response_spec.rb +30 -19
  684. data/spec/models/pvm_instance_update_spec.rb +26 -21
  685. data/spec/models/pvm_instance_v2_health_spec.rb +34 -0
  686. data/spec/models/pvm_instance_v2_network_port_spec.rb +66 -0
  687. data/spec/models/pvm_instance_virtual_cores_spec.rb +46 -0
  688. data/spec/models/pvm_instance_volume_update_spec.rb +6 -13
  689. data/spec/models/pvm_instances_spec.rb +6 -13
  690. data/spec/models/pvm_instances_v2_spec.rb +34 -0
  691. data/spec/models/remote_copy_relationship_spec.rb +3 -3
  692. data/spec/models/remove_virtual_serial_number_spec.rb +34 -0
  693. data/spec/models/{cloud_connection_endpoint_gre_spec.rb → replication_service_spec.rb} +10 -17
  694. data/spec/models/replication_target_location_spec.rb +44 -0
  695. data/spec/models/sap_create_spec.rb +65 -18
  696. data/spec/models/sap_profile_reference_spec.rb +8 -15
  697. data/spec/models/sap_profile_spec.rb +51 -18
  698. data/spec/models/sap_profiles_spec.rb +6 -13
  699. data/spec/models/secondary_spec.rb +40 -0
  700. data/spec/models/shared_processor_pool_create_spec.rb +15 -3
  701. data/spec/models/shared_processor_pool_detail_spec.rb +3 -3
  702. data/spec/models/shared_processor_pool_placement_group_spec.rb +3 -3
  703. data/spec/models/shared_processor_pool_server_spec.rb +3 -3
  704. data/spec/models/shared_processor_pool_spec.rb +21 -3
  705. data/spec/models/shared_processor_pool_update_spec.rb +3 -3
  706. data/spec/models/shared_processor_pools_spec.rb +3 -3
  707. data/spec/models/site_spec.rb +3 -3
  708. data/spec/models/snapshot_create_response_spec.rb +18 -13
  709. data/spec/models/snapshot_create_spec.rb +14 -15
  710. data/spec/models/snapshot_list_spec.rb +34 -0
  711. data/spec/models/snapshot_restore_spec.rb +6 -13
  712. data/spec/models/snapshot_spec.rb +22 -23
  713. data/spec/models/snapshot_update_spec.rb +8 -15
  714. data/spec/models/snapshot_v1_spec.rb +70 -0
  715. data/spec/models/snapshots_spec.rb +6 -13
  716. data/spec/models/software_licenses_spec.rb +10 -17
  717. data/spec/models/spp_placement_group_create_spec.rb +3 -3
  718. data/spec/models/spp_placement_group_spec.rb +3 -3
  719. data/spec/models/spp_placement_groups_spec.rb +3 -3
  720. data/spec/models/src_spec.rb +8 -15
  721. data/spec/models/ssh_key_spec.rb +9 -16
  722. data/spec/models/ssh_keys_spec.rb +6 -13
  723. data/spec/models/status_description_error_spec.rb +3 -3
  724. data/spec/models/status_description_spec.rb +3 -3
  725. data/spec/models/status_spec.rb +3 -3
  726. data/spec/models/stock_image_spec.rb +8 -15
  727. data/spec/models/storage_affinity_spec.rb +3 -3
  728. data/spec/models/{vp_naa_s_options_spec.rb → storage_controller_spec.rb} +14 -14
  729. data/spec/models/storage_pool_capacity_spec.rb +26 -15
  730. data/spec/models/storage_pool_combined_spec.rb +46 -0
  731. data/spec/models/storage_pool_map_spec.rb +40 -0
  732. data/spec/models/storage_pools_capacity_spec.rb +6 -13
  733. data/spec/models/storage_tier_spec.rb +50 -0
  734. data/spec/models/storage_type_capacity_spec.rb +9 -16
  735. data/spec/models/storage_types_capacity_spec.rb +6 -13
  736. data/spec/models/supported_systems_spec.rb +40 -0
  737. data/spec/models/{cloud_instance_create_spec.rb → system_pool_capacity_spec.rb} +16 -23
  738. data/spec/models/system_pool_spec.rb +17 -18
  739. data/spec/models/system_resources_spec.rb +76 -0
  740. data/spec/models/system_spec.rb +48 -13
  741. data/spec/models/task_reference_spec.rb +8 -15
  742. data/spec/models/task_spec.rb +15 -22
  743. data/spec/models/tenant_spec.rb +13 -20
  744. data/spec/models/tenant_update_spec.rb +6 -13
  745. data/spec/models/update_server_virtual_serial_number_spec.rb +34 -0
  746. data/spec/models/update_virtual_serial_number_spec.rb +34 -0
  747. data/spec/models/update_volume_spec.rb +9 -16
  748. data/spec/models/virtual_cores_spec.rb +8 -15
  749. data/spec/models/virtual_serial_number_spec.rb +46 -0
  750. data/spec/models/volume_action_spec.rb +9 -3
  751. data/spec/models/volume_group_action_reset_spec.rb +3 -3
  752. data/spec/models/volume_group_action_spec.rb +3 -3
  753. data/spec/models/volume_group_action_start_spec.rb +3 -3
  754. data/spec/models/volume_group_action_stop_spec.rb +3 -3
  755. data/spec/models/volume_group_create_response_spec.rb +3 -3
  756. data/spec/models/volume_group_create_spec.rb +3 -3
  757. data/spec/models/volume_group_details_spec.rb +21 -3
  758. data/spec/models/volume_group_remote_copy_relationships_spec.rb +3 -3
  759. data/spec/models/volume_group_spec.rb +21 -3
  760. data/spec/models/volume_group_storage_details_spec.rb +3 -3
  761. data/spec/models/volume_group_update_spec.rb +3 -3
  762. data/spec/models/volume_groups_details_spec.rb +3 -3
  763. data/spec/models/volume_groups_spec.rb +3 -3
  764. data/spec/models/volume_info_spec.rb +13 -14
  765. data/spec/models/volume_onboarding_common_spec.rb +3 -3
  766. data/spec/models/volume_onboarding_create_response_spec.rb +3 -3
  767. data/spec/models/volume_onboarding_create_spec.rb +9 -3
  768. data/spec/models/volume_onboarding_failure_spec.rb +3 -3
  769. data/spec/models/volume_onboarding_spec.rb +3 -3
  770. data/spec/models/volume_onboardings_spec.rb +3 -3
  771. data/spec/models/volume_reference_spec.rb +123 -24
  772. data/spec/models/volume_remote_copy_relationship_spec.rb +3 -3
  773. data/spec/models/volume_snapshot_list_spec.rb +34 -0
  774. data/spec/models/volume_spec.rb +117 -24
  775. data/spec/models/volumes_attach_spec.rb +3 -3
  776. data/spec/models/volumes_attachment_response_spec.rb +3 -3
  777. data/spec/models/volumes_clone_async_request_spec.rb +25 -14
  778. data/spec/models/volumes_clone_cancel_spec.rb +6 -13
  779. data/spec/models/volumes_clone_create_spec.rb +7 -14
  780. data/spec/models/volumes_clone_detail_spec.rb +15 -22
  781. data/spec/models/volumes_clone_execute_spec.rb +24 -13
  782. data/spec/models/volumes_clone_request_spec.rb +7 -14
  783. data/spec/models/volumes_clone_response_spec.rb +8 -15
  784. data/spec/models/volumes_clone_spec.rb +14 -21
  785. data/spec/models/volumes_clones_spec.rb +6 -13
  786. data/spec/models/volumes_delete_response_spec.rb +34 -0
  787. data/spec/models/volumes_delete_spec.rb +34 -0
  788. data/spec/models/volumes_detach_spec.rb +46 -0
  789. data/spec/models/volumes_detachment_response_spec.rb +34 -0
  790. data/spec/models/volumes_spec.rb +6 -13
  791. data/spec/models/vpn_connection_create_response_spec.rb +3 -3
  792. data/spec/models/vpn_connection_create_spec.rb +3 -3
  793. data/spec/models/vpn_connection_spec.rb +3 -3
  794. data/spec/models/vpn_connection_update_spec.rb +3 -3
  795. data/spec/models/vpn_connections_spec.rb +3 -3
  796. data/spec/models/{cloud_instance_update_spec.rb → workspace_details_spec.rb} +14 -21
  797. data/spec/models/workspace_location_spec.rb +46 -0
  798. data/spec/models/workspace_network_security_groups_details_spec.rb +38 -0
  799. data/spec/models/workspace_power_edge_router_details_spec.rb +58 -0
  800. data/spec/models/workspace_spec.rb +74 -0
  801. data/spec/models/workspaces_spec.rb +34 -0
  802. data/spec/spec_helper.rb +3 -3
  803. metadata +502 -124
  804. data/Gemfile.lock +0 -72
  805. data/ibm_cloud_power-2.1.0.gem +0 -0
  806. data/lib/ibm_cloud_power/models/vp_naa_s_options.rb +0 -280
  807. data/spec/models/cloud_connection_speed_spec.rb +0 -35
  808. data/test.rb +0 -32
@@ -0,0 +1,312 @@
1
+ =begin
2
+ #Power Cloud API
3
+
4
+ #IBM Power Cloud API for Power Hardware / Infrastructure
5
+
6
+ The version of the OpenAPI document: 2.3.1
7
+ Contact: ismirlia@us.ibm.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.4.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module IbmCloudPower
17
+ # Description of a System Pool's Capacity
18
+ class SystemPoolCapacity
19
+ # Number of available cores in the System Pool
20
+ attr_accessor :cores
21
+
22
+ # Amount of available memory in the System Pool (GB)
23
+ attr_accessor :memory
24
+
25
+ # The DataCenter list of servers and their available resources
26
+ attr_accessor :systems
27
+
28
+ # Total number of cores in the System Pool
29
+ attr_accessor :total_cores
30
+
31
+ # Total amount of memory in the System Pool (GB)
32
+ attr_accessor :total_memory
33
+
34
+ # Total number of physical cores in the Pod
35
+ attr_accessor :total_phys_cores
36
+
37
+ # Total amount of physical memory in the Pod (GB)
38
+ attr_accessor :total_phys_memory
39
+
40
+ # Attribute mapping from ruby-style variable name to JSON key.
41
+ def self.attribute_map
42
+ {
43
+ :'cores' => :'cores',
44
+ :'memory' => :'memory',
45
+ :'systems' => :'systems',
46
+ :'total_cores' => :'totalCores',
47
+ :'total_memory' => :'totalMemory',
48
+ :'total_phys_cores' => :'totalPhysCores',
49
+ :'total_phys_memory' => :'totalPhysMemory'
50
+ }
51
+ end
52
+
53
+ # Returns all the JSON keys this model knows about
54
+ def self.acceptable_attributes
55
+ attribute_map.values
56
+ end
57
+
58
+ # Attribute type mapping.
59
+ def self.openapi_types
60
+ {
61
+ :'cores' => :'Float',
62
+ :'memory' => :'Integer',
63
+ :'systems' => :'Array<SystemResources>',
64
+ :'total_cores' => :'Float',
65
+ :'total_memory' => :'Integer',
66
+ :'total_phys_cores' => :'Float',
67
+ :'total_phys_memory' => :'Integer'
68
+ }
69
+ end
70
+
71
+ # List of attributes with nullable: true
72
+ def self.openapi_nullable
73
+ Set.new([
74
+ ])
75
+ end
76
+
77
+ # Initializes the object
78
+ # @param [Hash] attributes Model attributes in the form of hash
79
+ def initialize(attributes = {})
80
+ if (!attributes.is_a?(Hash))
81
+ fail ArgumentError, "The input argument (attributes) must be a hash in `IbmCloudPower::SystemPoolCapacity` initialize method"
82
+ end
83
+
84
+ # check to see if the attribute exists and convert string to symbol for hash key
85
+ attributes = attributes.each_with_object({}) { |(k, v), h|
86
+ if (!self.class.attribute_map.key?(k.to_sym))
87
+ fail ArgumentError, "`#{k}` is not a valid attribute in `IbmCloudPower::SystemPoolCapacity`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
88
+ end
89
+ h[k.to_sym] = v
90
+ }
91
+
92
+ if attributes.key?(:'cores')
93
+ self.cores = attributes[:'cores']
94
+ end
95
+
96
+ if attributes.key?(:'memory')
97
+ self.memory = attributes[:'memory']
98
+ end
99
+
100
+ if attributes.key?(:'systems')
101
+ if (value = attributes[:'systems']).is_a?(Array)
102
+ self.systems = value
103
+ end
104
+ end
105
+
106
+ if attributes.key?(:'total_cores')
107
+ self.total_cores = attributes[:'total_cores']
108
+ end
109
+
110
+ if attributes.key?(:'total_memory')
111
+ self.total_memory = attributes[:'total_memory']
112
+ end
113
+
114
+ if attributes.key?(:'total_phys_cores')
115
+ self.total_phys_cores = attributes[:'total_phys_cores']
116
+ end
117
+
118
+ if attributes.key?(:'total_phys_memory')
119
+ self.total_phys_memory = attributes[:'total_phys_memory']
120
+ end
121
+ end
122
+
123
+ # Show invalid properties with the reasons. Usually used together with valid?
124
+ # @return Array for valid properties with the reasons
125
+ def list_invalid_properties
126
+ invalid_properties = Array.new
127
+ if @cores.nil?
128
+ invalid_properties.push('invalid value for "cores", cores cannot be nil.')
129
+ end
130
+
131
+ if @memory.nil?
132
+ invalid_properties.push('invalid value for "memory", memory cannot be nil.')
133
+ end
134
+
135
+ if @total_cores.nil?
136
+ invalid_properties.push('invalid value for "total_cores", total_cores cannot be nil.')
137
+ end
138
+
139
+ if @total_memory.nil?
140
+ invalid_properties.push('invalid value for "total_memory", total_memory cannot be nil.')
141
+ end
142
+
143
+ if @total_phys_cores.nil?
144
+ invalid_properties.push('invalid value for "total_phys_cores", total_phys_cores cannot be nil.')
145
+ end
146
+
147
+ if @total_phys_memory.nil?
148
+ invalid_properties.push('invalid value for "total_phys_memory", total_phys_memory cannot be nil.')
149
+ end
150
+
151
+ invalid_properties
152
+ end
153
+
154
+ # Check to see if the all the properties in the model are valid
155
+ # @return true if the model is valid
156
+ def valid?
157
+ return false if @cores.nil?
158
+ return false if @memory.nil?
159
+ return false if @total_cores.nil?
160
+ return false if @total_memory.nil?
161
+ return false if @total_phys_cores.nil?
162
+ return false if @total_phys_memory.nil?
163
+ true
164
+ end
165
+
166
+ # Checks equality by comparing each attribute.
167
+ # @param [Object] Object to be compared
168
+ def ==(o)
169
+ return true if self.equal?(o)
170
+ self.class == o.class &&
171
+ cores == o.cores &&
172
+ memory == o.memory &&
173
+ systems == o.systems &&
174
+ total_cores == o.total_cores &&
175
+ total_memory == o.total_memory &&
176
+ total_phys_cores == o.total_phys_cores &&
177
+ total_phys_memory == o.total_phys_memory
178
+ end
179
+
180
+ # @see the `==` method
181
+ # @param [Object] Object to be compared
182
+ def eql?(o)
183
+ self == o
184
+ end
185
+
186
+ # Calculates hash code according to all attributes.
187
+ # @return [Integer] Hash code
188
+ def hash
189
+ [cores, memory, systems, total_cores, total_memory, total_phys_cores, total_phys_memory].hash
190
+ end
191
+
192
+ # Builds the object from hash
193
+ # @param [Hash] attributes Model attributes in the form of hash
194
+ # @return [Object] Returns the model itself
195
+ def self.build_from_hash(attributes)
196
+ new.build_from_hash(attributes)
197
+ end
198
+
199
+ # Builds the object from hash
200
+ # @param [Hash] attributes Model attributes in the form of hash
201
+ # @return [Object] Returns the model itself
202
+ def build_from_hash(attributes)
203
+ return nil unless attributes.is_a?(Hash)
204
+ self.class.openapi_types.each_pair do |key, type|
205
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
206
+ self.send("#{key}=", nil)
207
+ elsif type =~ /\AArray<(.*)>/i
208
+ # check to ensure the input is an array given that the attribute
209
+ # is documented as an array but the input is not
210
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
211
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
212
+ end
213
+ elsif !attributes[self.class.attribute_map[key]].nil?
214
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
215
+ end
216
+ end
217
+
218
+ self
219
+ end
220
+
221
+ # Deserializes the data based on type
222
+ # @param string type Data type
223
+ # @param string value Value to be deserialized
224
+ # @return [Object] Deserialized data
225
+ def _deserialize(type, value)
226
+ case type.to_sym
227
+ when :Time
228
+ Time.parse(value)
229
+ when :Date
230
+ Date.parse(value)
231
+ when :String
232
+ value.to_s
233
+ when :Integer
234
+ value.to_i
235
+ when :Float
236
+ value.to_f
237
+ when :Boolean
238
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
239
+ true
240
+ else
241
+ false
242
+ end
243
+ when :Object
244
+ # generic object (usually a Hash), return directly
245
+ value
246
+ when /\AArray<(?<inner_type>.+)>\z/
247
+ inner_type = Regexp.last_match[:inner_type]
248
+ value.map { |v| _deserialize(inner_type, v) }
249
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
250
+ k_type = Regexp.last_match[:k_type]
251
+ v_type = Regexp.last_match[:v_type]
252
+ {}.tap do |hash|
253
+ value.each do |k, v|
254
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
255
+ end
256
+ end
257
+ else # model
258
+ # models (e.g. Pet) or oneOf
259
+ klass = IbmCloudPower.const_get(type)
260
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
261
+ end
262
+ end
263
+
264
+ # Returns the string representation of the object
265
+ # @return [String] String presentation of the object
266
+ def to_s
267
+ to_hash.to_s
268
+ end
269
+
270
+ # to_body is an alias to to_hash (backward compatibility)
271
+ # @return [Hash] Returns the object in the form of hash
272
+ def to_body
273
+ to_hash
274
+ end
275
+
276
+ # Returns the object in the form of hash
277
+ # @return [Hash] Returns the object in the form of hash
278
+ def to_hash
279
+ hash = {}
280
+ self.class.attribute_map.each_pair do |attr, param|
281
+ value = self.send(attr)
282
+ if value.nil?
283
+ is_nullable = self.class.openapi_nullable.include?(attr)
284
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
285
+ end
286
+
287
+ hash[param] = _to_hash(value)
288
+ end
289
+ hash
290
+ end
291
+
292
+ # Outputs non-array value in the form of hash
293
+ # For object, use to_hash. Otherwise, just return the value
294
+ # @param [Object] value Any valid value
295
+ # @return [Hash] Returns the value in the form of hash
296
+ def _to_hash(value)
297
+ if value.is_a?(Array)
298
+ value.compact.map { |v| _to_hash(v) }
299
+ elsif value.is_a?(Hash)
300
+ {}.tap do |hash|
301
+ value.each { |k, v| hash[k] = _to_hash(v) }
302
+ end
303
+ elsif value.respond_to? :to_hash
304
+ value.to_hash
305
+ else
306
+ value
307
+ end
308
+ end
309
+
310
+ end
311
+
312
+ end
@@ -0,0 +1,325 @@
1
+ =begin
2
+ #Power Cloud API
3
+
4
+ #IBM Power Cloud API for Power Hardware / Infrastructure
5
+
6
+ The version of the OpenAPI document: 2.3.1
7
+ Contact: ismirlia@us.ibm.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.4.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module IbmCloudPower
17
+ # Information about the resources that a single system contains
18
+ class SystemResources
19
+ # The host available Processor units
20
+ attr_accessor :cores
21
+
22
+ # The host MTMS name
23
+ attr_accessor :host_mtms_name
24
+
25
+ # The host identifier
26
+ attr_accessor :id
27
+
28
+ # The host available RAM memory in GiB
29
+ attr_accessor :memory
30
+
31
+ # The host total usable Processor units
32
+ attr_accessor :total_cores
33
+
34
+ # The host total usable RAM memory in GiB
35
+ attr_accessor :total_memory
36
+
37
+ # Total number of physical cores in the Pod
38
+ attr_accessor :total_phys_cores
39
+
40
+ # Total amount of physical memory in the Pod (GB)
41
+ attr_accessor :total_phys_memory
42
+
43
+ # Attribute mapping from ruby-style variable name to JSON key.
44
+ def self.attribute_map
45
+ {
46
+ :'cores' => :'cores',
47
+ :'host_mtms_name' => :'hostMTMSName',
48
+ :'id' => :'id',
49
+ :'memory' => :'memory',
50
+ :'total_cores' => :'totalCores',
51
+ :'total_memory' => :'totalMemory',
52
+ :'total_phys_cores' => :'totalPhysCores',
53
+ :'total_phys_memory' => :'totalPhysMemory'
54
+ }
55
+ end
56
+
57
+ # Returns all the JSON keys this model knows about
58
+ def self.acceptable_attributes
59
+ attribute_map.values
60
+ end
61
+
62
+ # Attribute type mapping.
63
+ def self.openapi_types
64
+ {
65
+ :'cores' => :'Float',
66
+ :'host_mtms_name' => :'String',
67
+ :'id' => :'Integer',
68
+ :'memory' => :'Integer',
69
+ :'total_cores' => :'Float',
70
+ :'total_memory' => :'Integer',
71
+ :'total_phys_cores' => :'Float',
72
+ :'total_phys_memory' => :'Integer'
73
+ }
74
+ end
75
+
76
+ # List of attributes with nullable: true
77
+ def self.openapi_nullable
78
+ Set.new([
79
+ ])
80
+ end
81
+
82
+ # Initializes the object
83
+ # @param [Hash] attributes Model attributes in the form of hash
84
+ def initialize(attributes = {})
85
+ if (!attributes.is_a?(Hash))
86
+ fail ArgumentError, "The input argument (attributes) must be a hash in `IbmCloudPower::SystemResources` initialize method"
87
+ end
88
+
89
+ # check to see if the attribute exists and convert string to symbol for hash key
90
+ attributes = attributes.each_with_object({}) { |(k, v), h|
91
+ if (!self.class.attribute_map.key?(k.to_sym))
92
+ fail ArgumentError, "`#{k}` is not a valid attribute in `IbmCloudPower::SystemResources`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
93
+ end
94
+ h[k.to_sym] = v
95
+ }
96
+
97
+ if attributes.key?(:'cores')
98
+ self.cores = attributes[:'cores']
99
+ end
100
+
101
+ if attributes.key?(:'host_mtms_name')
102
+ self.host_mtms_name = attributes[:'host_mtms_name']
103
+ end
104
+
105
+ if attributes.key?(:'id')
106
+ self.id = attributes[:'id']
107
+ end
108
+
109
+ if attributes.key?(:'memory')
110
+ self.memory = attributes[:'memory']
111
+ end
112
+
113
+ if attributes.key?(:'total_cores')
114
+ self.total_cores = attributes[:'total_cores']
115
+ end
116
+
117
+ if attributes.key?(:'total_memory')
118
+ self.total_memory = attributes[:'total_memory']
119
+ end
120
+
121
+ if attributes.key?(:'total_phys_cores')
122
+ self.total_phys_cores = attributes[:'total_phys_cores']
123
+ end
124
+
125
+ if attributes.key?(:'total_phys_memory')
126
+ self.total_phys_memory = attributes[:'total_phys_memory']
127
+ end
128
+ end
129
+
130
+ # Show invalid properties with the reasons. Usually used together with valid?
131
+ # @return Array for valid properties with the reasons
132
+ def list_invalid_properties
133
+ invalid_properties = Array.new
134
+ if @cores.nil?
135
+ invalid_properties.push('invalid value for "cores", cores cannot be nil.')
136
+ end
137
+
138
+ if @id.nil?
139
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
140
+ end
141
+
142
+ if @memory.nil?
143
+ invalid_properties.push('invalid value for "memory", memory cannot be nil.')
144
+ end
145
+
146
+ if @total_cores.nil?
147
+ invalid_properties.push('invalid value for "total_cores", total_cores cannot be nil.')
148
+ end
149
+
150
+ if @total_memory.nil?
151
+ invalid_properties.push('invalid value for "total_memory", total_memory cannot be nil.')
152
+ end
153
+
154
+ if @total_phys_cores.nil?
155
+ invalid_properties.push('invalid value for "total_phys_cores", total_phys_cores cannot be nil.')
156
+ end
157
+
158
+ if @total_phys_memory.nil?
159
+ invalid_properties.push('invalid value for "total_phys_memory", total_phys_memory cannot be nil.')
160
+ end
161
+
162
+ invalid_properties
163
+ end
164
+
165
+ # Check to see if the all the properties in the model are valid
166
+ # @return true if the model is valid
167
+ def valid?
168
+ return false if @cores.nil?
169
+ return false if @id.nil?
170
+ return false if @memory.nil?
171
+ return false if @total_cores.nil?
172
+ return false if @total_memory.nil?
173
+ return false if @total_phys_cores.nil?
174
+ return false if @total_phys_memory.nil?
175
+ true
176
+ end
177
+
178
+ # Checks equality by comparing each attribute.
179
+ # @param [Object] Object to be compared
180
+ def ==(o)
181
+ return true if self.equal?(o)
182
+ self.class == o.class &&
183
+ cores == o.cores &&
184
+ host_mtms_name == o.host_mtms_name &&
185
+ id == o.id &&
186
+ memory == o.memory &&
187
+ total_cores == o.total_cores &&
188
+ total_memory == o.total_memory &&
189
+ total_phys_cores == o.total_phys_cores &&
190
+ total_phys_memory == o.total_phys_memory
191
+ end
192
+
193
+ # @see the `==` method
194
+ # @param [Object] Object to be compared
195
+ def eql?(o)
196
+ self == o
197
+ end
198
+
199
+ # Calculates hash code according to all attributes.
200
+ # @return [Integer] Hash code
201
+ def hash
202
+ [cores, host_mtms_name, id, memory, total_cores, total_memory, total_phys_cores, total_phys_memory].hash
203
+ end
204
+
205
+ # Builds the object from hash
206
+ # @param [Hash] attributes Model attributes in the form of hash
207
+ # @return [Object] Returns the model itself
208
+ def self.build_from_hash(attributes)
209
+ new.build_from_hash(attributes)
210
+ end
211
+
212
+ # Builds the object from hash
213
+ # @param [Hash] attributes Model attributes in the form of hash
214
+ # @return [Object] Returns the model itself
215
+ def build_from_hash(attributes)
216
+ return nil unless attributes.is_a?(Hash)
217
+ self.class.openapi_types.each_pair do |key, type|
218
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
219
+ self.send("#{key}=", nil)
220
+ elsif type =~ /\AArray<(.*)>/i
221
+ # check to ensure the input is an array given that the attribute
222
+ # is documented as an array but the input is not
223
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
224
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
225
+ end
226
+ elsif !attributes[self.class.attribute_map[key]].nil?
227
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
228
+ end
229
+ end
230
+
231
+ self
232
+ end
233
+
234
+ # Deserializes the data based on type
235
+ # @param string type Data type
236
+ # @param string value Value to be deserialized
237
+ # @return [Object] Deserialized data
238
+ def _deserialize(type, value)
239
+ case type.to_sym
240
+ when :Time
241
+ Time.parse(value)
242
+ when :Date
243
+ Date.parse(value)
244
+ when :String
245
+ value.to_s
246
+ when :Integer
247
+ value.to_i
248
+ when :Float
249
+ value.to_f
250
+ when :Boolean
251
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
252
+ true
253
+ else
254
+ false
255
+ end
256
+ when :Object
257
+ # generic object (usually a Hash), return directly
258
+ value
259
+ when /\AArray<(?<inner_type>.+)>\z/
260
+ inner_type = Regexp.last_match[:inner_type]
261
+ value.map { |v| _deserialize(inner_type, v) }
262
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
263
+ k_type = Regexp.last_match[:k_type]
264
+ v_type = Regexp.last_match[:v_type]
265
+ {}.tap do |hash|
266
+ value.each do |k, v|
267
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
268
+ end
269
+ end
270
+ else # model
271
+ # models (e.g. Pet) or oneOf
272
+ klass = IbmCloudPower.const_get(type)
273
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
274
+ end
275
+ end
276
+
277
+ # Returns the string representation of the object
278
+ # @return [String] String presentation of the object
279
+ def to_s
280
+ to_hash.to_s
281
+ end
282
+
283
+ # to_body is an alias to to_hash (backward compatibility)
284
+ # @return [Hash] Returns the object in the form of hash
285
+ def to_body
286
+ to_hash
287
+ end
288
+
289
+ # Returns the object in the form of hash
290
+ # @return [Hash] Returns the object in the form of hash
291
+ def to_hash
292
+ hash = {}
293
+ self.class.attribute_map.each_pair do |attr, param|
294
+ value = self.send(attr)
295
+ if value.nil?
296
+ is_nullable = self.class.openapi_nullable.include?(attr)
297
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
298
+ end
299
+
300
+ hash[param] = _to_hash(value)
301
+ end
302
+ hash
303
+ end
304
+
305
+ # Outputs non-array value in the form of hash
306
+ # For object, use to_hash. Otherwise, just return the value
307
+ # @param [Object] value Any valid value
308
+ # @return [Hash] Returns the value in the form of hash
309
+ def _to_hash(value)
310
+ if value.is_a?(Array)
311
+ value.compact.map { |v| _to_hash(v) }
312
+ elsif value.is_a?(Hash)
313
+ {}.tap do |hash|
314
+ value.each { |k, v| hash[k] = _to_hash(v) }
315
+ end
316
+ elsif value.respond_to? :to_hash
317
+ value.to_hash
318
+ else
319
+ value
320
+ end
321
+ end
322
+
323
+ end
324
+
325
+ end
@@ -3,10 +3,10 @@
3
3
 
4
4
  #IBM Power Cloud API for Power Hardware / Infrastructure
5
5
 
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: kylej@us.ibm.com
6
+ The version of the OpenAPI document: 2.3.1
7
+ Contact: ismirlia@us.ibm.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.2.1
9
+ OpenAPI Generator version: 5.4.0
10
10
 
11
11
  =end
12
12
 
@@ -233,7 +233,6 @@ module IbmCloudPower
233
233
  # @return [Object] Returns the model itself
234
234
  def build_from_hash(attributes)
235
235
  return nil unless attributes.is_a?(Hash)
236
- attributes = attributes.transform_keys(&:to_sym)
237
236
  self.class.openapi_types.each_pair do |key, type|
238
237
  if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
239
238
  self.send("#{key}=", nil)
@@ -3,10 +3,10 @@
3
3
 
4
4
  #IBM Power Cloud API for Power Hardware / Infrastructure
5
5
 
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: kylej@us.ibm.com
6
+ The version of the OpenAPI document: 2.3.1
7
+ Contact: ismirlia@us.ibm.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.2.1
9
+ OpenAPI Generator version: 5.4.0
10
10
 
11
11
  =end
12
12
 
@@ -128,7 +128,6 @@ module IbmCloudPower
128
128
  # @return [Object] Returns the model itself
129
129
  def build_from_hash(attributes)
130
130
  return nil unless attributes.is_a?(Hash)
131
- attributes = attributes.transform_keys(&:to_sym)
132
131
  self.class.openapi_types.each_pair do |key, type|
133
132
  if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
134
133
  self.send("#{key}=", nil)
@@ -3,10 +3,10 @@
3
3
 
4
4
  #IBM Power Cloud API for Power Hardware / Infrastructure
5
5
 
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: kylej@us.ibm.com
6
+ The version of the OpenAPI document: 2.3.1
7
+ Contact: ismirlia@us.ibm.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.2.1
9
+ OpenAPI Generator version: 5.4.0
10
10
 
11
11
  =end
12
12
 
@@ -194,7 +194,6 @@ module IbmCloudPower
194
194
  # @return [Object] Returns the model itself
195
195
  def build_from_hash(attributes)
196
196
  return nil unless attributes.is_a?(Hash)
197
- attributes = attributes.transform_keys(&:to_sym)
198
197
  self.class.openapi_types.each_pair do |key, type|
199
198
  if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
200
199
  self.send("#{key}=", nil)