ibm_cloud_power 2.1.1 → 3.1.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 (1043) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +588 -34
  3. data/docs/{CloudConnectionSpeed.md → AccessConfig.md} +2 -2
  4. data/docs/AddHost.md +22 -0
  5. data/docs/AddServerVirtualSerialNumber.md +20 -0
  6. data/docs/AuxiliaryVolumesForOnboarding.md +2 -2
  7. data/docs/AuxiliaryVolumesForOnboardingAuxiliaryVolumesInner.md +20 -0
  8. data/docs/AvailableHost.md +22 -0
  9. data/docs/AvailableHostCapacity.md +20 -0
  10. data/docs/AvailableHostCapacityCores.md +18 -0
  11. data/docs/AvailableHostResourceCapacity.md +18 -0
  12. data/docs/CapabilitiesDetails.md +20 -0
  13. data/docs/CapabilitiesDetailsDisasterRecovery.md +20 -0
  14. data/docs/CapabilitiesDetailsSupportedSystems.md +20 -0
  15. data/docs/CloneTaskReference.md +2 -2
  16. data/docs/ClonedVolumeDetail.md +2 -2
  17. data/docs/ClonedVolumeDetailClone.md +22 -0
  18. data/docs/CloudConnection.md +2 -2
  19. data/docs/CloudConnectionClassic.md +20 -0
  20. data/docs/CloudConnectionCreate.md +2 -2
  21. data/docs/CloudConnectionCreateClassic.md +20 -0
  22. data/docs/CloudConnectionCreateResponse.md +5 -5
  23. data/docs/CloudConnectionEndpointVPC.md +1 -1
  24. data/docs/CloudConnectionUpdate.md +2 -2
  25. data/docs/CloudConnectionVpc.md +20 -0
  26. data/docs/CloudInstance.md +2 -2
  27. data/docs/CloudInstanceReference.md +1 -1
  28. data/docs/CloudInstanceUsageLimits.md +4 -4
  29. data/docs/CreateCosImageImportJob.md +9 -5
  30. data/docs/CreateDataVolume.md +5 -3
  31. data/docs/CreateImage.md +7 -5
  32. data/docs/CreateServerVirtualSerialNumber.md +22 -0
  33. data/docs/CreateWorkspaceSSHKey.md +24 -0
  34. data/docs/Datacenter.md +28 -0
  35. data/docs/DatacenterLocation.md +24 -0
  36. data/docs/Datacenters.md +18 -0
  37. data/docs/DatacentersApi.md +253 -0
  38. data/docs/DeleteServerVirtualSerialNumber.md +18 -0
  39. data/docs/DeploymentTarget.md +20 -0
  40. data/docs/DisasterRecovery.md +20 -0
  41. data/docs/DisasterRecoveryAsynchronousReplication.md +20 -0
  42. data/docs/DisasterRecoveryLocation.md +1 -1
  43. data/docs/GetBulkVolume.md +18 -0
  44. data/docs/GetServerVirtualSerialNumber.md +22 -0
  45. data/docs/Host.md +34 -0
  46. data/docs/HostCapacity.md +20 -0
  47. data/docs/HostCapacityCores.md +24 -0
  48. data/docs/HostCreate.md +20 -0
  49. data/docs/HostGroup.md +28 -0
  50. data/docs/HostGroupCreate.md +22 -0
  51. data/docs/HostGroupShareOp.md +20 -0
  52. data/docs/HostGroupSummary.md +22 -0
  53. data/docs/HostGroupsApi.md +632 -0
  54. data/docs/HostHostGroup.md +22 -0
  55. data/docs/HostPut.md +18 -0
  56. data/docs/HostResourceCapacity.md +24 -0
  57. data/docs/Image.md +7 -1
  58. data/docs/ImageImportDetails.md +22 -0
  59. data/docs/ImageReference.md +2 -0
  60. data/docs/ImageTaskref.md +20 -0
  61. data/docs/Job.md +2 -2
  62. data/docs/JobAction.md +24 -0
  63. data/docs/JobOperation.md +22 -0
  64. data/docs/JobResourceDetails.md +22 -0
  65. data/docs/JobResources.md +20 -0
  66. data/docs/JobStatus.md +22 -0
  67. data/docs/JobWorkflow.md +20 -0
  68. data/docs/MaximumStorageAllocation.md +1 -1
  69. data/docs/MetadataService.md +18 -0
  70. data/docs/MultiVolumesCreate.md +5 -3
  71. data/docs/Network.md +15 -3
  72. data/docs/NetworkAddressGroup.md +26 -0
  73. data/docs/NetworkAddressGroupAddMember.md +18 -0
  74. data/docs/NetworkAddressGroupCreate.md +20 -0
  75. data/docs/NetworkAddressGroupMember.md +20 -0
  76. data/docs/NetworkAddressGroupUpdate.md +18 -0
  77. data/docs/NetworkAddressGroups.md +18 -0
  78. data/docs/NetworkAddressGroupsApi.md +451 -0
  79. data/docs/NetworkAddressTranslation.md +18 -0
  80. data/docs/NetworkCreate.md +13 -3
  81. data/docs/NetworkInterface.md +38 -0
  82. data/docs/NetworkInterfaceCreate.md +22 -0
  83. data/docs/NetworkInterfaceInstance.md +20 -0
  84. data/docs/NetworkInterfaceUpdate.md +20 -0
  85. data/docs/NetworkInterfaces.md +18 -0
  86. data/docs/NetworkPeer.md +50 -0
  87. data/docs/NetworkPeerCreate.md +36 -0
  88. data/docs/NetworkPeerUpdate.md +36 -0
  89. data/docs/NetworkPeers.md +18 -0
  90. data/docs/NetworkPeersApi.md +576 -0
  91. data/docs/NetworkPortPvmInstance.md +1 -1
  92. data/docs/NetworkReference.md +13 -3
  93. data/docs/NetworkSecurityGroup.md +30 -0
  94. data/docs/NetworkSecurityGroupAddMember.md +20 -0
  95. data/docs/NetworkSecurityGroupAddRule.md +30 -0
  96. data/docs/NetworkSecurityGroupClone.md +18 -0
  97. data/docs/NetworkSecurityGroupCreate.md +20 -0
  98. data/docs/NetworkSecurityGroupMember.md +26 -0
  99. data/docs/NetworkSecurityGroupMoveMember.md +20 -0
  100. data/docs/NetworkSecurityGroupRule.md +28 -0
  101. data/docs/NetworkSecurityGroupRulePort.md +20 -0
  102. data/docs/NetworkSecurityGroupRuleProtocol.md +22 -0
  103. data/docs/NetworkSecurityGroupRuleProtocolTcpFlag.md +18 -0
  104. data/docs/NetworkSecurityGroupRuleRemote.md +20 -0
  105. data/docs/NetworkSecurityGroupUpdate.md +18 -0
  106. data/docs/NetworkSecurityGroups.md +18 -0
  107. data/docs/NetworkSecurityGroupsAction.md +18 -0
  108. data/docs/NetworkSecurityGroupsApi.md +779 -0
  109. data/docs/NetworkUpdate.md +4 -0
  110. data/docs/NetworksApi.md +334 -0
  111. data/docs/PCloudCloudConnectionsApi.md +10 -10
  112. data/docs/PCloudImagesApi.md +16 -10
  113. data/docs/PCloudNetworksApi.md +12 -2
  114. data/docs/PCloudPVMInstancesApi.md +81 -79
  115. data/docs/PCloudPlacementGroupsApi.md +1 -1
  116. data/docs/PCloudPodCapacityApi.md +72 -0
  117. data/docs/PCloudSAPApi.md +10 -4
  118. data/docs/PCloudSPPPlacementGroupsApi.md +2 -2
  119. data/docs/PCloudSharedProcessorPoolsApi.md +1 -1
  120. data/docs/PCloudSnapshotsApi.md +5 -5
  121. data/docs/PCloudStorageTiersApi.md +70 -0
  122. data/docs/PCloudTasksApi.md +1 -1
  123. data/docs/PCloudTenantsSSHKeysApi.md +1 -1
  124. data/docs/PCloudVPMemVolumesApi.md +346 -0
  125. data/docs/PCloudVPNConnectionsApi.md +2 -2
  126. data/docs/PCloudVPNPoliciesApi.md +4 -4
  127. data/docs/PCloudVirtualSerialNumberApi.md +591 -0
  128. data/docs/PCloudVolumeGroupsApi.md +9 -7
  129. data/docs/PCloudVolumeOnboardingApi.md +1 -1
  130. data/docs/PCloudVolumesApi.md +169 -21
  131. data/docs/PVMInstance.md +34 -10
  132. data/docs/PVMInstanceAction.md +1 -1
  133. data/docs/PVMInstanceAddNetwork.md +3 -1
  134. data/docs/PVMInstanceCapture.md +3 -1
  135. data/docs/PVMInstanceConfiguration.md +26 -0
  136. data/docs/PVMInstanceCores.md +22 -0
  137. data/docs/PVMInstanceCreate.md +27 -9
  138. data/docs/PVMInstanceDelete.md +18 -0
  139. data/docs/PVMInstanceMemory.md +22 -0
  140. data/docs/PVMInstanceNetwork.md +6 -0
  141. data/docs/PVMInstanceOperatingSystem.md +20 -0
  142. data/docs/PVMInstanceReference.md +32 -10
  143. data/docs/PVMInstanceReferenceV2.md +52 -0
  144. data/docs/PVMInstanceUpdate.md +12 -4
  145. data/docs/PVMInstanceUpdateResponse.md +17 -5
  146. data/docs/PVMInstanceV2Health.md +18 -0
  147. data/docs/PVMInstanceV2NetworkPort.md +26 -0
  148. data/docs/PVMInstanceVirtualCores.md +22 -0
  149. data/docs/PVMInstanceVolumeUpdate.md +1 -1
  150. data/docs/PVMInstancesV2.md +18 -0
  151. data/docs/PeerInterface.md +26 -0
  152. data/docs/PlacementGroup.md +5 -1
  153. data/docs/PlacementGroupCreate.md +3 -1
  154. data/docs/PodCapacity.md +22 -0
  155. data/docs/PodData.md +36 -0
  156. data/docs/PvmInstanceDeployment.md +24 -0
  157. data/docs/PvmInstanceHost.md +20 -0
  158. data/docs/PvmInstancePlacementGroup.md +18 -0
  159. data/docs/RemoveVirtualSerialNumber.md +18 -0
  160. data/docs/ReplicationService.md +20 -0
  161. data/docs/ReplicationTargetLocation.md +20 -0
  162. data/docs/Route.md +40 -0
  163. data/docs/RouteCreate.md +34 -0
  164. data/docs/RouteFilter.md +36 -0
  165. data/docs/RouteFilterCreate.md +28 -0
  166. data/docs/RouteReport.md +18 -0
  167. data/docs/RouteReportRoute.md +20 -0
  168. data/docs/RouteUpdate.md +32 -0
  169. data/docs/Routes.md +18 -0
  170. data/docs/RoutesApi.md +383 -0
  171. data/docs/SAPCreate.md +22 -6
  172. data/docs/SAPProfile.md +20 -2
  173. data/docs/SAPProfileVpmemVolume.md +20 -0
  174. data/docs/SPPPlacementGroup.md +5 -1
  175. data/docs/SPPPlacementGroupCreate.md +3 -1
  176. data/docs/SSHKeysApi.md +321 -0
  177. data/docs/Secondary.md +20 -0
  178. data/docs/SharedProcessorPool.md +9 -1
  179. data/docs/SharedProcessorPoolCreate.md +5 -1
  180. data/docs/SharedProcessorPoolDetail.md +1 -1
  181. data/docs/SharedProcessorPoolDetailSharedProcessorPool.md +44 -0
  182. data/docs/SharedProcessorPoolServer.md +2 -2
  183. data/docs/Snapshot.md +4 -2
  184. data/docs/SnapshotCreate.md +2 -0
  185. data/docs/SnapshotCreateResponse.md +5 -1
  186. data/docs/SnapshotList.md +18 -0
  187. data/docs/SnapshotUpdate.md +1 -1
  188. data/docs/SnapshotV1.md +30 -0
  189. data/docs/SnapshotsApi.md +261 -0
  190. data/docs/SoftwareLicenses.md +1 -1
  191. data/docs/SoftwareTier.md +15 -0
  192. data/docs/StorageController.md +26 -0
  193. data/docs/StoragePoolCapacity.md +8 -2
  194. data/docs/StoragePoolCombined.md +22 -0
  195. data/docs/StoragePoolMap.md +20 -0
  196. data/docs/StoragePoolsCapacity.md +1 -1
  197. data/docs/StoragePoolsCapacityMaximumStorageAllocation.md +22 -0
  198. data/docs/StorageTier.md +22 -0
  199. data/docs/StorageTypeCapacity.md +1 -1
  200. data/docs/StorageTypesCapacity.md +1 -1
  201. data/docs/SupportedSoftwareTier.md +20 -0
  202. data/docs/SupportedSystems.md +20 -0
  203. data/docs/System.md +16 -2
  204. data/docs/SystemPool.md +8 -6
  205. data/docs/SystemPoolCapacity.md +36 -0
  206. data/docs/SystemPoolSharedCoreRatio.md +22 -0
  207. data/docs/SystemResources.md +32 -0
  208. data/docs/TargetTrustedProfile.md +22 -0
  209. data/docs/TrustedProfile.md +20 -0
  210. data/docs/UpdateMetadataService.md +20 -0
  211. data/docs/UpdateServerVirtualSerialNumber.md +20 -0
  212. data/docs/UpdateTrustedProfile.md +20 -0
  213. data/docs/UpdateVirtualSerialNumber.md +18 -0
  214. data/docs/UpdateWorkspaceSSHKey.md +24 -0
  215. data/docs/VPMemVolumeAttach.md +20 -0
  216. data/docs/VPMemVolumeCreate.md +20 -0
  217. data/docs/VPMemVolumeReference.md +38 -0
  218. data/docs/VPMemVolumeUpdate.md +18 -0
  219. data/docs/VPMemVolumes.md +18 -0
  220. data/docs/VPNConnectionCreateResponse.md +4 -4
  221. data/docs/VirtualSerialNumber.md +24 -0
  222. data/docs/Volume.md +9 -3
  223. data/docs/VolumeAction.md +4 -2
  224. data/docs/VolumeGroup.md +8 -2
  225. data/docs/VolumeGroupDetails.md +7 -1
  226. data/docs/VolumeInfo.md +2 -0
  227. data/docs/VolumeOnboarding.md +7 -7
  228. data/docs/VolumeOnboardingAllOfResults.md +20 -0
  229. data/docs/VolumeOnboardingAllOfResultsVolumeOnboardingFailures.md +20 -0
  230. data/docs/VolumeOnboardingCreate.md +4 -2
  231. data/docs/VolumeOnboardingCreateVolumesInner.md +20 -0
  232. data/docs/VolumeReference.md +10 -2
  233. data/docs/VolumeRemoteCopyRelationship.md +5 -5
  234. data/docs/VolumeSnapshotList.md +18 -0
  235. data/docs/VolumesCloneAsyncRequest.md +7 -1
  236. data/docs/VolumesCloneExecute.md +8 -2
  237. data/docs/VolumesCloneRequest.md +1 -1
  238. data/docs/VolumesDelete.md +18 -0
  239. data/docs/VolumesDeleteResponse.md +18 -0
  240. data/docs/VolumesDetach.md +22 -0
  241. data/docs/VolumesDetachmentResponse.md +18 -0
  242. data/docs/Workspace.md +30 -0
  243. data/docs/WorkspaceDetails.md +26 -0
  244. data/docs/WorkspaceLocation.md +22 -0
  245. data/docs/WorkspaceNetworkSecurityGroupsDetails.md +18 -0
  246. data/docs/WorkspacePowerEdgeRouterDetails.md +22 -0
  247. data/docs/WorkspaceSSHKey.md +30 -0
  248. data/docs/WorkspaceSSHKeys.md +18 -0
  249. data/docs/Workspaces.md +18 -0
  250. data/docs/WorkspacesApi.md +135 -0
  251. data/ibm_cloud_power.gemspec +7 -6
  252. data/lib/ibm_cloud_power/api/datacenters_api.rb +254 -0
  253. data/lib/ibm_cloud_power/api/host_groups_api.rb +646 -0
  254. data/lib/ibm_cloud_power/api/network_address_groups_api.rb +476 -0
  255. data/lib/ibm_cloud_power/api/network_peers_api.rb +598 -0
  256. data/lib/ibm_cloud_power/api/network_security_groups_api.rb +828 -0
  257. data/lib/ibm_cloud_power/api/networks_api.rb +363 -0
  258. data/lib/ibm_cloud_power/api/p_cloud_cloud_connections_api.rb +24 -24
  259. data/lib/ibm_cloud_power/api/p_cloud_disaster_recovery_api.rb +7 -7
  260. data/lib/ibm_cloud_power/api/p_cloud_events_api.rb +12 -17
  261. data/lib/ibm_cloud_power/api/p_cloud_images_api.rb +39 -33
  262. data/lib/ibm_cloud_power/api/p_cloud_instances_api.rb +6 -6
  263. data/lib/ibm_cloud_power/api/p_cloud_jobs_api.rb +10 -10
  264. data/lib/ibm_cloud_power/api/p_cloud_networks_api.rb +34 -24
  265. data/lib/ibm_cloud_power/api/p_cloud_placement_groups_api.rb +16 -16
  266. data/lib/ibm_cloud_power/api/p_cloud_pod_capacity_api.rb +85 -0
  267. data/lib/ibm_cloud_power/api/p_cloud_pvm_instances_api.rb +121 -127
  268. data/lib/ibm_cloud_power/api/p_cloud_sap_api.rb +24 -10
  269. data/lib/ibm_cloud_power/api/p_cloud_shared_processor_pools_api.rb +14 -14
  270. data/lib/ibm_cloud_power/api/p_cloud_snapshots_api.rb +15 -15
  271. data/lib/ibm_cloud_power/api/p_cloud_spp_placement_groups_api.rb +16 -16
  272. data/lib/ibm_cloud_power/api/p_cloud_storage_capacity_api.rb +12 -12
  273. data/lib/ibm_cloud_power/api/p_cloud_storage_tiers_api.rb +83 -0
  274. data/lib/ibm_cloud_power/api/p_cloud_tasks_api.rb +8 -8
  275. data/lib/ibm_cloud_power/api/p_cloud_tenants_api.rb +8 -8
  276. data/lib/ibm_cloud_power/api/p_cloud_tenants_ssh_keys_api.rb +14 -14
  277. data/lib/ibm_cloud_power/api/p_cloud_virtual_serial_number_api.rb +626 -0
  278. data/lib/ibm_cloud_power/api/p_cloud_volume_groups_api.rb +30 -28
  279. data/lib/ibm_cloud_power/api/p_cloud_volume_onboarding_api.rb +10 -10
  280. data/lib/ibm_cloud_power/api/p_cloud_volumes_api.rb +230 -64
  281. data/lib/ibm_cloud_power/api/p_cloud_vp_mem_volumes_api.rb +401 -0
  282. data/lib/ibm_cloud_power/api/p_cloud_vpn_connections_api.rb +28 -28
  283. data/lib/ibm_cloud_power/api/p_cloud_vpn_policies_api.rb +28 -28
  284. data/lib/ibm_cloud_power/api/routes_api.rb +388 -0
  285. data/lib/ibm_cloud_power/api/snapshots_api.rb +262 -0
  286. data/lib/ibm_cloud_power/api/ssh_keys_api.rb +337 -0
  287. data/lib/ibm_cloud_power/api/workspaces_api.rb +141 -0
  288. data/lib/ibm_cloud_power/api_client.rb +32 -27
  289. data/lib/ibm_cloud_power/api_error.rb +5 -4
  290. data/lib/ibm_cloud_power/api_model_base.rb +88 -0
  291. data/lib/ibm_cloud_power/configuration.rb +40 -11
  292. data/lib/ibm_cloud_power/models/access_config.rb +43 -0
  293. data/lib/ibm_cloud_power/models/add_host.rb +253 -0
  294. data/lib/ibm_cloud_power/models/add_server_virtual_serial_number.rb +175 -0
  295. data/lib/ibm_cloud_power/models/auxiliary_volume_for_onboarding.rb +67 -97
  296. data/lib/ibm_cloud_power/models/auxiliary_volumes_for_onboarding.rb +51 -99
  297. data/lib/ibm_cloud_power/models/auxiliary_volumes_for_onboarding_auxiliary_volumes_inner.rb +212 -0
  298. data/lib/ibm_cloud_power/models/available_host.rb +168 -0
  299. data/lib/ibm_cloud_power/models/available_host_capacity.rb +163 -0
  300. data/lib/ibm_cloud_power/models/available_host_capacity_cores.rb +171 -0
  301. data/lib/ibm_cloud_power/models/available_host_resource_capacity.rb +164 -0
  302. data/lib/ibm_cloud_power/models/capabilities_details.rb +190 -0
  303. data/lib/ibm_cloud_power/models/capabilities_details_disaster_recovery.rb +180 -0
  304. data/lib/ibm_cloud_power/models/capabilities_details_supported_systems.rb +203 -0
  305. data/lib/ibm_cloud_power/models/clone_task_reference.rb +51 -99
  306. data/lib/ibm_cloud_power/models/clone_task_status.rb +39 -97
  307. data/lib/ibm_cloud_power/models/cloned_volume.rb +25 -97
  308. data/lib/ibm_cloud_power/models/cloned_volume_detail.rb +51 -99
  309. data/lib/ibm_cloud_power/models/cloned_volume_detail_clone.rb +175 -0
  310. data/lib/ibm_cloud_power/models/cloud_connection.rb +147 -99
  311. data/lib/ibm_cloud_power/models/cloud_connection_classic.rb +164 -0
  312. data/lib/ibm_cloud_power/models/cloud_connection_create.rb +41 -99
  313. data/lib/ibm_cloud_power/models/cloud_connection_create_classic.rb +164 -0
  314. data/lib/ibm_cloud_power/models/cloud_connection_create_response.rb +159 -111
  315. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_classic.rb +25 -97
  316. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_classic_update.rb +25 -97
  317. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_vpc.rb +26 -98
  318. data/lib/ibm_cloud_power/models/cloud_connection_gre_tunnel.rb +49 -97
  319. data/lib/ibm_cloud_power/models/cloud_connection_gre_tunnel_create.rb +49 -97
  320. data/lib/ibm_cloud_power/models/cloud_connection_update.rb +27 -99
  321. data/lib/ibm_cloud_power/models/cloud_connection_virtual_private_clouds.rb +37 -97
  322. data/lib/ibm_cloud_power/models/cloud_connection_virtual_private_clouds_virtual_private_clouds_inner.rb +73 -97
  323. data/lib/ibm_cloud_power/models/cloud_connection_vpc.rb +50 -118
  324. data/lib/ibm_cloud_power/models/cloud_connections.rb +37 -97
  325. data/lib/ibm_cloud_power/models/cloud_instance.rb +147 -97
  326. data/lib/ibm_cloud_power/models/cloud_instance_reference.rb +110 -97
  327. data/lib/ibm_cloud_power/models/cloud_instance_usage_limits.rb +89 -101
  328. data/lib/ibm_cloud_power/models/console_language.rb +37 -97
  329. data/lib/ibm_cloud_power/models/console_languages.rb +37 -97
  330. data/lib/ibm_cloud_power/models/create_cos_image_import_job.rb +107 -106
  331. data/lib/ibm_cloud_power/models/create_data_volume.rb +84 -101
  332. data/lib/ibm_cloud_power/models/create_image.rb +78 -104
  333. data/lib/ibm_cloud_power/models/create_server_virtual_serial_number.rb +206 -0
  334. data/lib/ibm_cloud_power/models/create_workspace_ssh_key.rb +268 -0
  335. data/lib/ibm_cloud_power/models/datacenter.rb +294 -0
  336. data/lib/ibm_cloud_power/models/datacenter_location.rb +246 -0
  337. data/lib/ibm_cloud_power/models/datacenters.rb +167 -0
  338. data/lib/ibm_cloud_power/models/dead_peer_detection.rb +27 -97
  339. data/lib/ibm_cloud_power/models/delete_server_virtual_serial_number.rb +148 -0
  340. data/lib/ibm_cloud_power/models/deployment_target.rb +216 -0
  341. data/lib/ibm_cloud_power/models/disaster_recovery.rb +173 -0
  342. data/lib/ibm_cloud_power/models/disaster_recovery_asynchronous_replication.rb +201 -0
  343. data/lib/ibm_cloud_power/models/disaster_recovery_location.rb +26 -98
  344. data/lib/ibm_cloud_power/models/disaster_recovery_locations.rb +37 -97
  345. data/lib/ibm_cloud_power/models/error.rb +25 -97
  346. data/lib/ibm_cloud_power/models/event.rb +99 -97
  347. data/lib/ibm_cloud_power/models/event_user.rb +37 -97
  348. data/lib/ibm_cloud_power/models/events.rb +37 -97
  349. data/lib/ibm_cloud_power/models/export_image.rb +49 -97
  350. data/lib/ibm_cloud_power/models/flash_copy_mapping.rb +37 -97
  351. data/lib/ibm_cloud_power/models/get_bulk_volume.rb +167 -0
  352. data/lib/ibm_cloud_power/models/get_server_virtual_serial_number.rb +223 -0
  353. data/lib/ibm_cloud_power/models/host.rb +248 -0
  354. data/lib/ibm_cloud_power/models/host_capacity.rb +163 -0
  355. data/lib/ibm_cloud_power/models/host_capacity_cores.rb +249 -0
  356. data/lib/ibm_cloud_power/models/host_create.rb +195 -0
  357. data/lib/ibm_cloud_power/models/host_group.rb +203 -0
  358. data/lib/ibm_cloud_power/models/host_group_create.rb +207 -0
  359. data/lib/ibm_cloud_power/models/host_group_share_op.rb +161 -0
  360. data/lib/ibm_cloud_power/models/host_group_summary.rb +168 -0
  361. data/lib/ibm_cloud_power/models/host_host_group.rb +175 -0
  362. data/lib/ibm_cloud_power/models/host_put.rb +195 -0
  363. data/lib/ibm_cloud_power/models/host_resource_capacity.rb +242 -0
  364. data/lib/ibm_cloud_power/models/ike_policies.rb +37 -97
  365. data/lib/ibm_cloud_power/models/ike_policy.rb +69 -97
  366. data/lib/ibm_cloud_power/models/ike_policy_authentication.rb +4 -4
  367. data/lib/ibm_cloud_power/models/ike_policy_create.rb +49 -99
  368. data/lib/ibm_cloud_power/models/ike_policy_ref.rb +49 -97
  369. data/lib/ibm_cloud_power/models/ike_policy_update.rb +39 -103
  370. data/lib/ibm_cloud_power/models/image.rb +179 -99
  371. data/lib/ibm_cloud_power/models/image_import_details.rb +247 -0
  372. data/lib/ibm_cloud_power/models/image_reference.rb +156 -98
  373. data/lib/ibm_cloud_power/models/image_specifications.rb +32 -97
  374. data/lib/ibm_cloud_power/models/image_taskref.rb +199 -0
  375. data/lib/ibm_cloud_power/models/image_volume.rb +73 -97
  376. data/lib/ibm_cloud_power/models/images.rb +37 -97
  377. data/lib/ibm_cloud_power/models/ip_address_range.rb +49 -97
  378. data/lib/ibm_cloud_power/models/ip_sec_policies.rb +37 -97
  379. data/lib/ibm_cloud_power/models/ip_sec_policy.rb +79 -97
  380. data/lib/ibm_cloud_power/models/ip_sec_policy_create.rb +47 -99
  381. data/lib/ibm_cloud_power/models/ip_sec_policy_ref.rb +49 -97
  382. data/lib/ibm_cloud_power/models/ip_sec_policy_update.rb +39 -103
  383. data/lib/ibm_cloud_power/models/ipsec_policy_authentication.rb +4 -4
  384. data/lib/ibm_cloud_power/models/job.rb +63 -99
  385. data/lib/ibm_cloud_power/models/job_action.rb +212 -0
  386. data/lib/ibm_cloud_power/models/job_operation.rb +226 -0
  387. data/lib/ibm_cloud_power/models/job_reference.rb +49 -97
  388. data/lib/ibm_cloud_power/models/job_resource_details.rb +202 -0
  389. data/lib/ibm_cloud_power/models/job_resources.rb +160 -0
  390. data/lib/ibm_cloud_power/models/job_status.rb +209 -0
  391. data/lib/ibm_cloud_power/models/job_workflow.rb +177 -0
  392. data/lib/ibm_cloud_power/models/jobs.rb +37 -97
  393. data/lib/ibm_cloud_power/models/maximum_storage_allocation.rb +62 -98
  394. data/lib/ibm_cloud_power/models/metadata_service.rb +166 -0
  395. data/lib/ibm_cloud_power/models/min_max_default.rb +61 -97
  396. data/lib/ibm_cloud_power/models/multi_volumes_create.rb +84 -101
  397. data/lib/ibm_cloud_power/models/network.rb +245 -106
  398. data/lib/ibm_cloud_power/models/network_address_group.rb +262 -0
  399. data/lib/ibm_cloud_power/models/network_address_group_add_member.rb +165 -0
  400. data/lib/ibm_cloud_power/models/network_address_group_create.rb +196 -0
  401. data/lib/ibm_cloud_power/models/network_address_group_member.rb +192 -0
  402. data/lib/ibm_cloud_power/models/network_address_group_update.rb +148 -0
  403. data/lib/ibm_cloud_power/models/network_address_groups.rb +150 -0
  404. data/lib/ibm_cloud_power/models/network_address_translation.rb +149 -0
  405. data/lib/ibm_cloud_power/models/network_cloud_connections_inner.rb +25 -97
  406. data/lib/ibm_cloud_power/models/network_create.rb +187 -103
  407. data/lib/ibm_cloud_power/models/network_id.rb +37 -97
  408. data/lib/ibm_cloud_power/models/network_ids.rb +25 -97
  409. data/lib/ibm_cloud_power/models/network_interface.rb +372 -0
  410. data/lib/ibm_cloud_power/models/network_interface_create.rb +189 -0
  411. data/lib/ibm_cloud_power/models/network_interface_instance.rb +159 -0
  412. data/lib/ibm_cloud_power/models/network_interface_update.rb +158 -0
  413. data/lib/ibm_cloud_power/models/network_interfaces.rb +167 -0
  414. data/lib/ibm_cloud_power/models/network_ip_address_metrics.rb +73 -97
  415. data/lib/ibm_cloud_power/models/network_peer.rb +631 -0
  416. data/lib/ibm_cloud_power/models/network_peer_create.rb +422 -0
  417. data/lib/ibm_cloud_power/models/network_peer_update.rb +310 -0
  418. data/lib/ibm_cloud_power/models/network_peers.rb +167 -0
  419. data/lib/ibm_cloud_power/models/network_port.rb +85 -97
  420. data/lib/ibm_cloud_power/models/network_port_create.rb +25 -97
  421. data/lib/ibm_cloud_power/models/network_port_pvm_instance.rb +26 -98
  422. data/lib/ibm_cloud_power/models/network_port_update.rb +25 -97
  423. data/lib/ibm_cloud_power/models/network_ports.rb +37 -97
  424. data/lib/ibm_cloud_power/models/network_reference.rb +178 -106
  425. data/lib/ibm_cloud_power/models/network_security_group.rb +284 -0
  426. data/lib/ibm_cloud_power/models/network_security_group_add_member.rb +216 -0
  427. data/lib/ibm_cloud_power/models/network_security_group_add_rule.rb +281 -0
  428. data/lib/ibm_cloud_power/models/network_security_group_clone.rb +165 -0
  429. data/lib/ibm_cloud_power/models/network_security_group_create.rb +196 -0
  430. data/lib/ibm_cloud_power/models/network_security_group_member.rb +263 -0
  431. data/lib/ibm_cloud_power/models/network_security_group_move_member.rb +192 -0
  432. data/lib/ibm_cloud_power/models/network_security_group_rule.rb +286 -0
  433. data/lib/ibm_cloud_power/models/network_security_group_rule_port.rb +196 -0
  434. data/lib/ibm_cloud_power/models/network_security_group_rule_protocol.rb +216 -0
  435. data/lib/ibm_cloud_power/models/network_security_group_rule_protocol_tcp_flag.rb +182 -0
  436. data/lib/ibm_cloud_power/models/network_security_group_rule_remote.rb +192 -0
  437. data/lib/ibm_cloud_power/models/network_security_group_update.rb +148 -0
  438. data/lib/ibm_cloud_power/models/network_security_groups.rb +150 -0
  439. data/lib/ibm_cloud_power/models/network_security_groups_action.rb +189 -0
  440. data/lib/ibm_cloud_power/models/network_update.rb +92 -98
  441. data/lib/ibm_cloud_power/models/networks.rb +37 -97
  442. data/lib/ibm_cloud_power/models/operation.rb +61 -97
  443. data/lib/ibm_cloud_power/models/operations.rb +27 -99
  444. data/lib/ibm_cloud_power/models/peer_interface.rb +297 -0
  445. data/lib/ibm_cloud_power/models/peer_subnet_update.rb +37 -97
  446. data/lib/ibm_cloud_power/models/peer_subnets.rb +25 -97
  447. data/lib/ibm_cloud_power/models/peering_network.rb +49 -97
  448. data/lib/ibm_cloud_power/models/pin_policy.rb +4 -4
  449. data/lib/ibm_cloud_power/models/placement_group.rb +108 -101
  450. data/lib/ibm_cloud_power/models/placement_group_create.rb +74 -101
  451. data/lib/ibm_cloud_power/models/placement_group_server.rb +37 -97
  452. data/lib/ibm_cloud_power/models/placement_groups.rb +37 -97
  453. data/lib/ibm_cloud_power/models/pod_capacity.rb +172 -0
  454. data/lib/ibm_cloud_power/models/pod_data.rb +409 -0
  455. data/lib/ibm_cloud_power/models/pvm_instance.rb +313 -106
  456. data/lib/ibm_cloud_power/models/pvm_instance_action.rb +30 -100
  457. data/lib/ibm_cloud_power/models/pvm_instance_add_network.rb +53 -101
  458. data/lib/ibm_cloud_power/models/pvm_instance_capture.rb +72 -101
  459. data/lib/ibm_cloud_power/models/pvm_instance_configuration.rb +190 -0
  460. data/lib/ibm_cloud_power/models/pvm_instance_console.rb +37 -97
  461. data/lib/ibm_cloud_power/models/pvm_instance_cores.rb +185 -0
  462. data/lib/ibm_cloud_power/models/pvm_instance_create.rb +223 -108
  463. data/lib/ibm_cloud_power/models/pvm_instance_delete.rb +148 -0
  464. data/lib/ibm_cloud_power/models/pvm_instance_deployment.rb +219 -0
  465. data/lib/ibm_cloud_power/models/pvm_instance_fault.rb +25 -97
  466. data/lib/ibm_cloud_power/models/pvm_instance_health.rb +25 -97
  467. data/lib/ibm_cloud_power/models/pvm_instance_host.rb +158 -0
  468. data/lib/ibm_cloud_power/models/pvm_instance_memory.rb +185 -0
  469. data/lib/ibm_cloud_power/models/pvm_instance_multi_create.rb +25 -97
  470. data/lib/ibm_cloud_power/models/pvm_instance_network.rb +60 -98
  471. data/lib/ibm_cloud_power/models/pvm_instance_networks.rb +37 -97
  472. data/lib/ibm_cloud_power/models/pvm_instance_operating_system.rb +175 -0
  473. data/lib/ibm_cloud_power/models/pvm_instance_operation.rb +39 -97
  474. data/lib/ibm_cloud_power/models/pvm_instance_placement_group.rb +165 -0
  475. data/lib/ibm_cloud_power/models/pvm_instance_reference.rb +258 -106
  476. data/lib/ibm_cloud_power/models/pvm_instance_reference_v2.rb +474 -0
  477. data/lib/ibm_cloud_power/models/pvm_instance_remove_network.rb +25 -97
  478. data/lib/ibm_cloud_power/models/pvm_instance_update.rb +70 -100
  479. data/lib/ibm_cloud_power/models/pvm_instance_update_response.rb +95 -105
  480. data/lib/ibm_cloud_power/models/pvm_instance_v2_health.rb +166 -0
  481. data/lib/ibm_cloud_power/models/pvm_instance_v2_network_port.rb +235 -0
  482. data/lib/ibm_cloud_power/models/pvm_instance_virtual_cores.rb +194 -0
  483. data/lib/ibm_cloud_power/models/pvm_instance_volume_update.rb +38 -98
  484. data/lib/ibm_cloud_power/models/pvm_instances.rb +37 -97
  485. data/lib/ibm_cloud_power/models/pvm_instances_v2.rb +167 -0
  486. data/lib/ibm_cloud_power/models/remote_copy_relationship.rb +49 -97
  487. data/lib/ibm_cloud_power/models/remove_virtual_serial_number.rb +165 -0
  488. data/lib/ibm_cloud_power/models/replication_service.rb +194 -0
  489. data/lib/ibm_cloud_power/models/replication_target_location.rb +192 -0
  490. data/lib/ibm_cloud_power/models/route.rb +518 -0
  491. data/lib/ibm_cloud_power/models/route_create.rb +400 -0
  492. data/lib/ibm_cloud_power/models/route_filter.rb +452 -0
  493. data/lib/ibm_cloud_power/models/route_filter_create.rb +361 -0
  494. data/lib/ibm_cloud_power/models/route_report.rb +167 -0
  495. data/lib/ibm_cloud_power/models/route_report_route.rb +216 -0
  496. data/lib/ibm_cloud_power/models/route_update.rb +318 -0
  497. data/lib/ibm_cloud_power/models/routes.rb +167 -0
  498. data/lib/ibm_cloud_power/models/sap_create.rb +222 -105
  499. data/lib/ibm_cloud_power/models/sap_profile.rb +195 -102
  500. data/lib/ibm_cloud_power/models/sap_profile_reference.rb +49 -97
  501. data/lib/ibm_cloud_power/models/sap_profile_vpmem_volume.rb +159 -0
  502. data/lib/ibm_cloud_power/models/sap_profiles.rb +37 -97
  503. data/lib/ibm_cloud_power/models/secondary.rb +176 -0
  504. data/lib/ibm_cloud_power/models/shared_processor_pool.rb +150 -101
  505. data/lib/ibm_cloud_power/models/shared_processor_pool_create.rb +95 -104
  506. data/lib/ibm_cloud_power/models/shared_processor_pool_detail.rb +50 -98
  507. data/lib/ibm_cloud_power/models/shared_processor_pool_detail_shared_processor_pool.rb +393 -0
  508. data/lib/ibm_cloud_power/models/shared_processor_pool_placement_group.rb +61 -97
  509. data/lib/ibm_cloud_power/models/shared_processor_pool_server.rb +27 -99
  510. data/lib/ibm_cloud_power/models/shared_processor_pool_update.rb +26 -97
  511. data/lib/ibm_cloud_power/models/shared_processor_pools.rb +25 -97
  512. data/lib/ibm_cloud_power/models/site.rb +25 -97
  513. data/lib/ibm_cloud_power/models/snapshot.rb +86 -100
  514. data/lib/ibm_cloud_power/models/snapshot_create.rb +108 -98
  515. data/lib/ibm_cloud_power/models/snapshot_create_response.rb +82 -101
  516. data/lib/ibm_cloud_power/models/snapshot_list.rb +167 -0
  517. data/lib/ibm_cloud_power/models/snapshot_restore.rb +25 -97
  518. data/lib/ibm_cloud_power/models/snapshot_update.rb +75 -98
  519. data/lib/ibm_cloud_power/models/snapshot_v1.rb +293 -0
  520. data/lib/ibm_cloud_power/models/snapshots.rb +37 -97
  521. data/lib/ibm_cloud_power/models/software_licenses.rb +26 -98
  522. data/lib/ibm_cloud_power/models/software_tier.rb +42 -0
  523. data/lib/ibm_cloud_power/models/spp_placement_group.rb +106 -101
  524. data/lib/ibm_cloud_power/models/spp_placement_group_create.rb +103 -101
  525. data/lib/ibm_cloud_power/models/spp_placement_groups.rb +25 -97
  526. data/lib/ibm_cloud_power/models/src.rb +25 -97
  527. data/lib/ibm_cloud_power/models/ssh_key.rb +49 -97
  528. data/lib/ibm_cloud_power/models/ssh_keys.rb +37 -97
  529. data/lib/ibm_cloud_power/models/status.rb +49 -97
  530. data/lib/ibm_cloud_power/models/status_description.rb +25 -97
  531. data/lib/ibm_cloud_power/models/status_description_error.rb +25 -97
  532. data/lib/ibm_cloud_power/models/stock_image.rb +25 -97
  533. data/lib/ibm_cloud_power/models/storage_affinity.rb +25 -97
  534. data/lib/ibm_cloud_power/models/storage_controller.rb +276 -0
  535. data/lib/ibm_cloud_power/models/storage_pool_capacity.rb +70 -100
  536. data/lib/ibm_cloud_power/models/storage_pool_combined.rb +220 -0
  537. data/lib/ibm_cloud_power/models/storage_pool_map.rb +156 -0
  538. data/lib/ibm_cloud_power/models/storage_pools_capacity.rb +26 -98
  539. data/lib/ibm_cloud_power/models/storage_pools_capacity_maximum_storage_allocation.rb +226 -0
  540. data/lib/ibm_cloud_power/models/storage_tier.rb +205 -0
  541. data/lib/ibm_cloud_power/models/storage_type_capacity.rb +26 -98
  542. data/lib/ibm_cloud_power/models/storage_types_capacity.rb +26 -98
  543. data/lib/ibm_cloud_power/models/supported_software_tier.rb +180 -0
  544. data/lib/ibm_cloud_power/models/supported_systems.rb +196 -0
  545. data/lib/ibm_cloud_power/models/system.rb +124 -102
  546. data/lib/ibm_cloud_power/models/system_pool.rb +42 -104
  547. data/lib/ibm_cloud_power/models/system_pool_capacity.rb +279 -0
  548. data/lib/ibm_cloud_power/models/system_pool_shared_core_ratio.rb +226 -0
  549. data/lib/ibm_cloud_power/models/system_resources.rb +338 -0
  550. data/lib/ibm_cloud_power/models/target_trusted_profile.rb +229 -0
  551. data/lib/ibm_cloud_power/models/task.rb +133 -97
  552. data/lib/ibm_cloud_power/models/task_reference.rb +49 -97
  553. data/lib/ibm_cloud_power/models/tenant.rb +73 -97
  554. data/lib/ibm_cloud_power/models/tenant_update.rb +25 -97
  555. data/lib/ibm_cloud_power/models/trusted_profile.rb +177 -0
  556. data/lib/ibm_cloud_power/models/update_metadata_service.rb +176 -0
  557. data/lib/ibm_cloud_power/models/update_server_virtual_serial_number.rb +179 -0
  558. data/lib/ibm_cloud_power/models/update_trusted_profile.rb +158 -0
  559. data/lib/ibm_cloud_power/models/update_virtual_serial_number.rb +165 -0
  560. data/lib/ibm_cloud_power/models/update_volume.rb +25 -97
  561. data/lib/ibm_cloud_power/models/update_workspace_ssh_key.rb +244 -0
  562. data/lib/ibm_cloud_power/models/virtual_cores.rb +27 -97
  563. data/lib/ibm_cloud_power/models/virtual_serial_number.rb +250 -0
  564. data/lib/ibm_cloud_power/models/volume.rb +145 -106
  565. data/lib/ibm_cloud_power/models/volume_action.rb +39 -106
  566. data/lib/ibm_cloud_power/models/volume_group.rb +86 -101
  567. data/lib/ibm_cloud_power/models/volume_group_action.rb +25 -97
  568. data/lib/ibm_cloud_power/models/volume_group_action_reset.rb +25 -97
  569. data/lib/ibm_cloud_power/models/volume_group_action_start.rb +25 -97
  570. data/lib/ibm_cloud_power/models/volume_group_action_stop.rb +37 -97
  571. data/lib/ibm_cloud_power/models/volume_group_create.rb +67 -97
  572. data/lib/ibm_cloud_power/models/volume_group_create_response.rb +61 -97
  573. data/lib/ibm_cloud_power/models/volume_group_details.rb +83 -98
  574. data/lib/ibm_cloud_power/models/volume_group_remote_copy_relationships.rb +25 -97
  575. data/lib/ibm_cloud_power/models/volume_group_storage_details.rb +37 -97
  576. data/lib/ibm_cloud_power/models/volume_group_update.rb +25 -97
  577. data/lib/ibm_cloud_power/models/volume_groups.rb +37 -97
  578. data/lib/ibm_cloud_power/models/volume_groups_details.rb +37 -97
  579. data/lib/ibm_cloud_power/models/volume_info.rb +36 -98
  580. data/lib/ibm_cloud_power/models/volume_onboarding.rb +70 -133
  581. data/lib/ibm_cloud_power/models/volume_onboarding_all_of_results.rb +161 -0
  582. data/lib/ibm_cloud_power/models/volume_onboarding_all_of_results_volume_onboarding_failures.rb +167 -0
  583. data/lib/ibm_cloud_power/models/volume_onboarding_common.rb +37 -97
  584. data/lib/ibm_cloud_power/models/volume_onboarding_create.rb +73 -102
  585. data/lib/ibm_cloud_power/models/volume_onboarding_create_response.rb +25 -97
  586. data/lib/ibm_cloud_power/models/volume_onboarding_create_volumes_inner.rb +200 -0
  587. data/lib/ibm_cloud_power/models/volume_onboarding_failure.rb +25 -97
  588. data/lib/ibm_cloud_power/models/volume_onboardings.rb +37 -97
  589. data/lib/ibm_cloud_power/models/volume_reference.rb +221 -100
  590. data/lib/ibm_cloud_power/models/volume_remote_copy_relationship.rb +73 -121
  591. data/lib/ibm_cloud_power/models/volume_snapshot_list.rb +150 -0
  592. data/lib/ibm_cloud_power/models/volumes.rb +37 -97
  593. data/lib/ibm_cloud_power/models/volumes_attach.rb +37 -97
  594. data/lib/ibm_cloud_power/models/volumes_attachment_response.rb +37 -97
  595. data/lib/ibm_cloud_power/models/volumes_clone.rb +37 -97
  596. data/lib/ibm_cloud_power/models/volumes_clone_async_request.rb +102 -99
  597. data/lib/ibm_cloud_power/models/volumes_clone_cancel.rb +25 -97
  598. data/lib/ibm_cloud_power/models/volumes_clone_create.rb +49 -97
  599. data/lib/ibm_cloud_power/models/volumes_clone_detail.rb +37 -97
  600. data/lib/ibm_cloud_power/models/volumes_clone_execute.rb +93 -102
  601. data/lib/ibm_cloud_power/models/volumes_clone_request.rb +50 -98
  602. data/lib/ibm_cloud_power/models/volumes_clone_response.rb +25 -97
  603. data/lib/ibm_cloud_power/models/volumes_clones.rb +25 -97
  604. data/lib/ibm_cloud_power/models/volumes_delete.rb +167 -0
  605. data/lib/ibm_cloud_power/models/volumes_delete_response.rb +148 -0
  606. data/lib/ibm_cloud_power/models/volumes_detach.rb +174 -0
  607. data/lib/ibm_cloud_power/models/volumes_detachment_response.rb +165 -0
  608. data/lib/ibm_cloud_power/models/vp_mem_volume_attach.rb +198 -0
  609. data/lib/ibm_cloud_power/models/vp_mem_volume_create.rb +230 -0
  610. data/lib/ibm_cloud_power/models/vp_mem_volume_reference.rb +367 -0
  611. data/lib/ibm_cloud_power/models/vp_mem_volume_update.rb +194 -0
  612. data/lib/ibm_cloud_power/models/vp_mem_volumes.rb +167 -0
  613. data/lib/ibm_cloud_power/models/vpn_connection.rb +149 -97
  614. data/lib/ibm_cloud_power/models/vpn_connection_create.rb +99 -97
  615. data/lib/ibm_cloud_power/models/vpn_connection_create_response.rb +162 -110
  616. data/lib/ibm_cloud_power/models/vpn_connection_update.rb +25 -97
  617. data/lib/ibm_cloud_power/models/vpn_connections.rb +25 -97
  618. data/lib/ibm_cloud_power/models/workspace.rb +353 -0
  619. data/lib/ibm_cloud_power/models/workspace_details.rb +222 -0
  620. data/lib/ibm_cloud_power/models/workspace_location.rb +185 -0
  621. data/lib/ibm_cloud_power/models/workspace_network_security_groups_details.rb +189 -0
  622. data/lib/ibm_cloud_power/models/workspace_power_edge_router_details.rb +240 -0
  623. data/lib/ibm_cloud_power/models/workspace_ssh_key.rb +332 -0
  624. data/lib/ibm_cloud_power/models/workspace_ssh_keys.rb +167 -0
  625. data/lib/ibm_cloud_power/models/workspaces.rb +167 -0
  626. data/lib/ibm_cloud_power/version.rb +5 -5
  627. data/lib/ibm_cloud_power.rb +168 -13
  628. data/spec/api/datacenters_api_spec.rb +77 -0
  629. data/spec/api/host_groups_api_spec.rb +144 -0
  630. data/spec/api/network_address_groups_api_spec.rb +114 -0
  631. data/spec/api/network_peers_api_spec.rb +136 -0
  632. data/spec/api/network_security_groups_api_spec.rb +174 -0
  633. data/spec/api/networks_api_spec.rb +95 -0
  634. data/spec/api/p_cloud_cloud_connections_api_spec.rb +29 -29
  635. data/spec/api/p_cloud_disaster_recovery_api_spec.rb +6 -6
  636. data/spec/api/p_cloud_events_api_spec.rb +9 -8
  637. data/spec/api/p_cloud_images_api_spec.rb +95 -18
  638. data/spec/api/p_cloud_instances_api_spec.rb +6 -29
  639. data/spec/api/p_cloud_jobs_api_spec.rb +9 -9
  640. data/spec/api/p_cloud_networks_api_spec.rb +24 -19
  641. data/spec/api/p_cloud_placement_groups_api_spec.rb +22 -22
  642. data/spec/api/p_cloud_pod_capacity_api_spec.rb +47 -0
  643. data/spec/api/p_cloud_pvm_instances_api_spec.rb +103 -39
  644. data/spec/api/p_cloud_sap_api_spec.rb +9 -7
  645. data/spec/api/p_cloud_shared_processor_pools_api_spec.rb +9 -9
  646. data/spec/api/p_cloud_snapshots_api_spec.rb +10 -10
  647. data/spec/api/p_cloud_spp_placement_groups_api_spec.rb +10 -10
  648. data/spec/api/p_cloud_storage_capacity_api_spec.rb +8 -8
  649. data/spec/api/p_cloud_storage_tiers_api_spec.rb +46 -0
  650. data/spec/api/p_cloud_tasks_api_spec.rb +8 -8
  651. data/spec/api/p_cloud_tenants_api_spec.rb +7 -7
  652. data/spec/api/p_cloud_tenants_ssh_keys_api_spec.rb +13 -13
  653. data/spec/api/p_cloud_virtual_serial_number_api_spec.rb +141 -0
  654. data/spec/api/p_cloud_volume_groups_api_spec.rb +16 -15
  655. data/spec/api/p_cloud_volume_onboarding_api_spec.rb +7 -7
  656. data/spec/api/p_cloud_volumes_api_spec.rb +198 -28
  657. data/spec/api/p_cloud_vp_mem_volumes_api_spec.rb +102 -0
  658. data/spec/api/p_cloud_vpn_connections_api_spec.rb +15 -27
  659. data/spec/api/p_cloud_vpn_policies_api_spec.rb +14 -14
  660. data/spec/api/routes_api_spec.rb +100 -0
  661. data/spec/api/snapshots_api_spec.rb +81 -0
  662. data/spec/api/ssh_keys_api_spec.rb +90 -0
  663. data/spec/api/workspaces_api_spec.rb +57 -0
  664. data/spec/models/access_config_spec.rb +30 -0
  665. data/spec/models/add_host_spec.rb +48 -0
  666. data/spec/models/add_server_virtual_serial_number_spec.rb +42 -0
  667. data/spec/models/auxiliary_volume_for_onboarding_spec.rb +10 -8
  668. data/spec/models/auxiliary_volumes_for_onboarding_auxiliary_volumes_inner_spec.rb +42 -0
  669. data/spec/models/auxiliary_volumes_for_onboarding_spec.rb +10 -8
  670. data/spec/models/available_host_capacity_cores_spec.rb +36 -0
  671. data/spec/models/available_host_capacity_spec.rb +42 -0
  672. data/spec/models/available_host_resource_capacity_spec.rb +36 -0
  673. data/spec/models/available_host_spec.rb +48 -0
  674. data/spec/models/capabilities_details_disaster_recovery_spec.rb +42 -0
  675. data/spec/models/capabilities_details_spec.rb +42 -0
  676. data/spec/models/capabilities_details_supported_systems_spec.rb +42 -0
  677. data/spec/models/clone_task_reference_spec.rb +11 -16
  678. data/spec/models/clone_task_status_spec.rb +21 -26
  679. data/spec/models/cloned_volume_detail_clone_spec.rb +48 -0
  680. data/spec/models/cloned_volume_detail_spec.rb +13 -18
  681. data/spec/models/cloned_volume_spec.rb +13 -18
  682. data/spec/models/cloud_connection_classic_spec.rb +42 -0
  683. data/spec/models/cloud_connection_create_classic_spec.rb +42 -0
  684. data/spec/models/cloud_connection_create_response_spec.rb +39 -31
  685. data/spec/models/cloud_connection_create_spec.rb +42 -19
  686. data/spec/models/cloud_connection_endpoint_classic_spec.rb +11 -16
  687. data/spec/models/cloud_connection_endpoint_classic_update_spec.rb +10 -8
  688. data/spec/models/cloud_connection_endpoint_vpc_spec.rb +11 -16
  689. data/spec/models/cloud_connection_gre_tunnel_create_spec.rb +10 -8
  690. data/spec/models/cloud_connection_gre_tunnel_spec.rb +11 -22
  691. data/spec/models/cloud_connection_spec.rb +38 -37
  692. data/spec/models/cloud_connection_update_spec.rb +24 -25
  693. data/spec/models/cloud_connection_virtual_private_clouds_spec.rb +10 -15
  694. data/spec/models/cloud_connection_virtual_private_clouds_virtual_private_clouds_inner_spec.rb +15 -13
  695. data/spec/models/cloud_connection_vpc_spec.rb +16 -21
  696. data/spec/models/cloud_connections_spec.rb +10 -15
  697. data/spec/models/cloud_instance_reference_spec.rb +23 -28
  698. data/spec/models/cloud_instance_spec.rb +31 -36
  699. data/spec/models/cloud_instance_usage_limits_spec.rb +29 -34
  700. data/spec/models/console_language_spec.rb +10 -8
  701. data/spec/models/console_languages_spec.rb +9 -7
  702. data/spec/models/create_cos_image_import_job_spec.rb +31 -17
  703. data/spec/models/create_data_volume_spec.rb +54 -29
  704. data/spec/models/create_image_spec.rb +53 -40
  705. data/spec/models/create_server_virtual_serial_number_spec.rb +48 -0
  706. data/spec/models/create_workspace_ssh_key_spec.rb +58 -0
  707. data/spec/models/datacenter_location_spec.rb +54 -0
  708. data/spec/models/datacenter_spec.rb +74 -0
  709. data/spec/models/datacenters_spec.rb +36 -0
  710. data/spec/models/dead_peer_detection_spec.rb +11 -9
  711. data/spec/models/delete_server_virtual_serial_number_spec.rb +36 -0
  712. data/spec/models/deployment_target_spec.rb +46 -0
  713. data/spec/models/disaster_recovery_asynchronous_replication_spec.rb +42 -0
  714. data/spec/models/disaster_recovery_location_spec.rb +10 -8
  715. data/spec/models/disaster_recovery_locations_spec.rb +9 -7
  716. data/spec/models/disaster_recovery_spec.rb +42 -0
  717. data/spec/models/error_spec.rb +13 -18
  718. data/spec/models/event_spec.rb +30 -35
  719. data/spec/models/event_user_spec.rb +14 -19
  720. data/spec/models/events_spec.rb +10 -15
  721. data/spec/models/export_image_spec.rb +16 -21
  722. data/spec/models/flash_copy_mapping_spec.rb +15 -13
  723. data/spec/models/get_bulk_volume_spec.rb +36 -0
  724. data/spec/models/get_server_virtual_serial_number_spec.rb +48 -0
  725. data/spec/models/host_capacity_cores_spec.rb +54 -0
  726. data/spec/models/host_capacity_spec.rb +42 -0
  727. data/spec/models/host_create_spec.rb +42 -0
  728. data/spec/models/host_group_create_spec.rb +48 -0
  729. data/spec/models/host_group_share_op_spec.rb +42 -0
  730. data/spec/models/host_group_spec.rb +66 -0
  731. data/spec/models/host_group_summary_spec.rb +48 -0
  732. data/spec/models/host_host_group_spec.rb +48 -0
  733. data/spec/models/host_put_spec.rb +36 -0
  734. data/spec/models/host_resource_capacity_spec.rb +54 -0
  735. data/spec/models/host_spec.rb +84 -0
  736. data/spec/models/ike_policies_spec.rb +9 -7
  737. data/spec/models/ike_policy_authentication_spec.rb +8 -6
  738. data/spec/models/ike_policy_create_spec.rb +16 -18
  739. data/spec/models/ike_policy_ref_spec.rb +10 -8
  740. data/spec/models/ike_policy_spec.rb +16 -18
  741. data/spec/models/ike_policy_update_spec.rb +16 -18
  742. data/spec/models/image_import_details_spec.rb +60 -0
  743. data/spec/models/image_reference_spec.rb +38 -31
  744. data/spec/models/image_spec.rb +54 -35
  745. data/spec/models/image_specifications_spec.rb +20 -25
  746. data/spec/models/image_taskref_spec.rb +42 -0
  747. data/spec/models/image_volume_spec.rb +15 -20
  748. data/spec/models/images_spec.rb +10 -15
  749. data/spec/models/ip_address_range_spec.rb +13 -18
  750. data/spec/models/ip_sec_policies_spec.rb +9 -7
  751. data/spec/models/ip_sec_policy_create_spec.rb +15 -17
  752. data/spec/models/ip_sec_policy_ref_spec.rb +10 -8
  753. data/spec/models/ip_sec_policy_spec.rb +16 -18
  754. data/spec/models/ip_sec_policy_update_spec.rb +15 -17
  755. data/spec/models/ipsec_policy_authentication_spec.rb +8 -6
  756. data/spec/models/job_action_spec.rb +58 -0
  757. data/spec/models/job_operation_spec.rb +48 -0
  758. data/spec/models/job_reference_spec.rb +10 -8
  759. data/spec/models/job_resource_details_spec.rb +52 -0
  760. data/spec/models/job_resources_spec.rb +42 -0
  761. data/spec/models/job_spec.rb +12 -10
  762. data/spec/models/job_status_spec.rb +48 -0
  763. data/spec/models/job_workflow_spec.rb +42 -0
  764. data/spec/models/jobs_spec.rb +9 -7
  765. data/spec/models/maximum_storage_allocation_spec.rb +14 -19
  766. data/spec/models/metadata_service_spec.rb +36 -0
  767. data/spec/models/min_max_default_spec.rb +14 -19
  768. data/spec/models/multi_volumes_create_spec.rb +60 -29
  769. data/spec/models/network_address_group_add_member_spec.rb +36 -0
  770. data/spec/models/network_address_group_create_spec.rb +42 -0
  771. data/spec/models/network_address_group_member_spec.rb +42 -0
  772. data/spec/models/network_address_group_spec.rb +60 -0
  773. data/spec/models/network_address_group_update_spec.rb +36 -0
  774. data/spec/models/network_address_groups_spec.rb +36 -0
  775. data/spec/models/network_address_translation_spec.rb +36 -0
  776. data/spec/models/network_cloud_connections_inner_spec.rb +10 -8
  777. data/spec/models/network_create_spec.rb +60 -27
  778. data/spec/models/network_id_spec.rb +9 -7
  779. data/spec/models/network_ids_spec.rb +9 -7
  780. data/spec/models/network_interface_create_spec.rb +48 -0
  781. data/spec/models/network_interface_instance_spec.rb +42 -0
  782. data/spec/models/network_interface_spec.rb +96 -0
  783. data/spec/models/network_interface_update_spec.rb +42 -0
  784. data/spec/models/network_interfaces_spec.rb +36 -0
  785. data/spec/models/network_ip_address_metrics_spec.rb +15 -20
  786. data/spec/models/network_peer_create_spec.rb +102 -0
  787. data/spec/models/network_peer_spec.rb +148 -0
  788. data/spec/models/network_peer_update_spec.rb +102 -0
  789. data/spec/models/network_peers_spec.rb +36 -0
  790. data/spec/models/network_port_create_spec.rb +11 -16
  791. data/spec/models/network_port_pvm_instance_spec.rb +13 -18
  792. data/spec/models/network_port_spec.rb +27 -26
  793. data/spec/models/network_port_update_spec.rb +11 -16
  794. data/spec/models/network_ports_spec.rb +10 -15
  795. data/spec/models/network_reference_spec.rb +67 -28
  796. data/spec/models/network_security_group_add_member_spec.rb +46 -0
  797. data/spec/models/network_security_group_add_rule_spec.rb +76 -0
  798. data/spec/models/network_security_group_clone_spec.rb +36 -0
  799. data/spec/models/network_security_group_create_spec.rb +42 -0
  800. data/spec/models/network_security_group_member_spec.rb +64 -0
  801. data/spec/models/network_security_group_move_member_spec.rb +42 -0
  802. data/spec/models/network_security_group_rule_port_spec.rb +42 -0
  803. data/spec/models/network_security_group_rule_protocol_spec.rb +56 -0
  804. data/spec/models/network_security_group_rule_protocol_tcp_flag_spec.rb +40 -0
  805. data/spec/models/network_security_group_rule_remote_spec.rb +46 -0
  806. data/spec/models/network_security_group_rule_spec.rb +70 -0
  807. data/spec/models/network_security_group_spec.rb +72 -0
  808. data/spec/models/network_security_group_update_spec.rb +36 -0
  809. data/spec/models/network_security_groups_action_spec.rb +40 -0
  810. data/spec/models/network_security_groups_spec.rb +36 -0
  811. data/spec/models/network_spec.rb +86 -35
  812. data/spec/models/network_update_spec.rb +35 -20
  813. data/spec/models/networks_spec.rb +10 -15
  814. data/spec/models/operation_spec.rb +11 -9
  815. data/spec/models/operations_spec.rb +16 -21
  816. data/spec/models/peer_interface_spec.rb +64 -0
  817. data/spec/models/peer_subnet_update_spec.rb +9 -7
  818. data/spec/models/peer_subnets_spec.rb +9 -7
  819. data/spec/models/peering_network_spec.rb +15 -20
  820. data/spec/models/pin_policy_spec.rb +9 -14
  821. data/spec/models/placement_group_create_spec.rb +18 -17
  822. data/spec/models/placement_group_server_spec.rb +10 -15
  823. data/spec/models/placement_group_spec.rb +27 -20
  824. data/spec/models/placement_groups_spec.rb +10 -15
  825. data/spec/models/pod_capacity_spec.rb +48 -0
  826. data/spec/models/pod_data_spec.rb +90 -0
  827. data/spec/models/pvm_instance_action_spec.rb +12 -17
  828. data/spec/models/pvm_instance_add_network_spec.rb +18 -17
  829. data/spec/models/pvm_instance_capture_spec.rb +30 -29
  830. data/spec/models/pvm_instance_configuration_spec.rb +60 -0
  831. data/spec/models/pvm_instance_console_spec.rb +10 -15
  832. data/spec/models/pvm_instance_cores_spec.rb +48 -0
  833. data/spec/models/pvm_instance_create_spec.rb +151 -56
  834. data/spec/models/pvm_instance_delete_spec.rb +36 -0
  835. data/spec/models/pvm_instance_deployment_spec.rb +58 -0
  836. data/spec/models/pvm_instance_fault_spec.rb +16 -21
  837. data/spec/models/pvm_instance_health_spec.rb +15 -20
  838. data/spec/models/pvm_instance_host_spec.rb +42 -0
  839. data/spec/models/pvm_instance_memory_spec.rb +48 -0
  840. data/spec/models/pvm_instance_multi_create_spec.rb +18 -23
  841. data/spec/models/pvm_instance_network_spec.rb +44 -31
  842. data/spec/models/pvm_instance_networks_spec.rb +10 -15
  843. data/spec/models/pvm_instance_operating_system_spec.rb +42 -0
  844. data/spec/models/pvm_instance_operation_spec.rb +17 -22
  845. data/spec/models/pvm_instance_placement_group_spec.rb +36 -0
  846. data/spec/models/pvm_instance_reference_spec.rb +182 -67
  847. data/spec/models/pvm_instance_reference_v2_spec.rb +138 -0
  848. data/spec/models/pvm_instance_remove_network_spec.rb +10 -15
  849. data/spec/models/pvm_instance_spec.rb +194 -73
  850. data/spec/models/pvm_instance_update_response_spec.rb +62 -25
  851. data/spec/models/pvm_instance_update_spec.rb +61 -30
  852. data/spec/models/pvm_instance_v2_health_spec.rb +36 -0
  853. data/spec/models/pvm_instance_v2_network_port_spec.rb +68 -0
  854. data/spec/models/pvm_instance_virtual_cores_spec.rb +48 -0
  855. data/spec/models/pvm_instance_volume_update_spec.rb +10 -15
  856. data/spec/models/pvm_instances_spec.rb +10 -15
  857. data/spec/models/pvm_instances_v2_spec.rb +36 -0
  858. data/spec/models/remote_copy_relationship_spec.rb +22 -20
  859. data/spec/models/remove_virtual_serial_number_spec.rb +36 -0
  860. data/spec/models/replication_service_spec.rb +42 -0
  861. data/spec/models/replication_target_location_spec.rb +46 -0
  862. data/spec/models/route_create_spec.rb +100 -0
  863. data/spec/models/route_filter_create_spec.rb +74 -0
  864. data/spec/models/route_filter_spec.rb +102 -0
  865. data/spec/models/route_report_route_spec.rb +46 -0
  866. data/spec/models/route_report_spec.rb +36 -0
  867. data/spec/models/route_spec.rb +122 -0
  868. data/spec/models/route_update_spec.rb +94 -0
  869. data/spec/models/routes_spec.rb +36 -0
  870. data/spec/models/sap_create_spec.rb +106 -27
  871. data/spec/models/sap_profile_reference_spec.rb +13 -18
  872. data/spec/models/sap_profile_spec.rb +77 -24
  873. data/spec/models/sap_profile_vpmem_volume_spec.rb +42 -0
  874. data/spec/models/sap_profiles_spec.rb +10 -15
  875. data/spec/models/secondary_spec.rb +42 -0
  876. data/spec/models/shared_processor_pool_create_spec.rb +24 -10
  877. data/spec/models/shared_processor_pool_detail_shared_processor_pool_spec.rb +114 -0
  878. data/spec/models/shared_processor_pool_detail_spec.rb +10 -8
  879. data/spec/models/shared_processor_pool_placement_group_spec.rb +11 -9
  880. data/spec/models/shared_processor_pool_server_spec.rb +16 -14
  881. data/spec/models/shared_processor_pool_spec.rb +42 -16
  882. data/spec/models/shared_processor_pool_update_spec.rb +10 -8
  883. data/spec/models/shared_processor_pools_spec.rb +9 -7
  884. data/spec/models/site_spec.rb +10 -8
  885. data/spec/models/snapshot_create_response_spec.rb +22 -15
  886. data/spec/models/snapshot_create_spec.rb +20 -19
  887. data/spec/models/snapshot_list_spec.rb +36 -0
  888. data/spec/models/snapshot_restore_spec.rb +10 -15
  889. data/spec/models/snapshot_spec.rb +35 -34
  890. data/spec/models/snapshot_update_spec.rb +13 -18
  891. data/spec/models/snapshot_v1_spec.rb +72 -0
  892. data/spec/models/snapshots_spec.rb +10 -15
  893. data/spec/models/software_licenses_spec.rb +18 -23
  894. data/spec/models/software_tier_spec.rb +30 -0
  895. data/spec/models/spp_placement_group_create_spec.rb +16 -8
  896. data/spec/models/spp_placement_group_spec.rb +24 -10
  897. data/spec/models/spp_placement_groups_spec.rb +9 -7
  898. data/spec/models/src_spec.rb +13 -18
  899. data/spec/models/ssh_key_spec.rb +15 -20
  900. data/spec/models/ssh_keys_spec.rb +10 -15
  901. data/spec/models/status_description_error_spec.rb +11 -9
  902. data/spec/models/status_description_spec.rb +9 -7
  903. data/spec/models/status_spec.rb +11 -9
  904. data/spec/models/stock_image_spec.rb +14 -19
  905. data/spec/models/storage_affinity_spec.rb +13 -11
  906. data/spec/models/storage_controller_spec.rb +60 -0
  907. data/spec/models/storage_pool_capacity_spec.rb +32 -19
  908. data/spec/models/storage_pool_combined_spec.rb +48 -0
  909. data/spec/models/storage_pool_map_spec.rb +42 -0
  910. data/spec/models/storage_pools_capacity_maximum_storage_allocation_spec.rb +48 -0
  911. data/spec/models/storage_pools_capacity_spec.rb +11 -16
  912. data/spec/models/storage_tier_spec.rb +52 -0
  913. data/spec/models/storage_type_capacity_spec.rb +15 -20
  914. data/spec/models/storage_types_capacity_spec.rb +11 -16
  915. data/spec/models/supported_software_tier_spec.rb +42 -0
  916. data/spec/models/supported_systems_spec.rb +42 -0
  917. data/spec/models/system_pool_capacity_spec.rb +90 -0
  918. data/spec/models/system_pool_shared_core_ratio_spec.rb +48 -0
  919. data/spec/models/system_pool_spec.rb +28 -27
  920. data/spec/models/system_resources_spec.rb +78 -0
  921. data/spec/models/system_spec.rb +53 -16
  922. data/spec/models/target_trusted_profile_spec.rb +48 -0
  923. data/spec/models/task_reference_spec.rb +13 -18
  924. data/spec/models/task_spec.rb +27 -32
  925. data/spec/models/tenant_spec.rb +23 -28
  926. data/spec/models/tenant_update_spec.rb +11 -16
  927. data/spec/models/trusted_profile_spec.rb +42 -0
  928. data/spec/models/update_metadata_service_spec.rb +42 -0
  929. data/spec/models/update_server_virtual_serial_number_spec.rb +42 -0
  930. data/spec/models/update_trusted_profile_spec.rb +42 -0
  931. data/spec/models/update_virtual_serial_number_spec.rb +36 -0
  932. data/spec/models/update_volume_spec.rb +16 -21
  933. data/spec/models/update_workspace_ssh_key_spec.rb +58 -0
  934. data/spec/models/virtual_cores_spec.rb +14 -19
  935. data/spec/models/virtual_serial_number_spec.rb +54 -0
  936. data/spec/models/volume_action_spec.rb +15 -7
  937. data/spec/models/volume_group_action_reset_spec.rb +9 -7
  938. data/spec/models/volume_group_action_spec.rb +11 -9
  939. data/spec/models/volume_group_action_start_spec.rb +9 -7
  940. data/spec/models/volume_group_action_stop_spec.rb +9 -7
  941. data/spec/models/volume_group_create_response_spec.rb +12 -10
  942. data/spec/models/volume_group_create_spec.rb +11 -9
  943. data/spec/models/volume_group_details_spec.rb +33 -13
  944. data/spec/models/volume_group_remote_copy_relationships_spec.rb +10 -8
  945. data/spec/models/volume_group_spec.rb +32 -12
  946. data/spec/models/volume_group_storage_details_spec.rb +17 -15
  947. data/spec/models/volume_group_update_spec.rb +10 -8
  948. data/spec/models/volume_groups_details_spec.rb +9 -7
  949. data/spec/models/volume_groups_spec.rb +9 -7
  950. data/spec/models/volume_info_spec.rb +18 -17
  951. data/spec/models/volume_onboarding_all_of_results_spec.rb +42 -0
  952. data/spec/models/volume_onboarding_all_of_results_volume_onboarding_failures_spec.rb +42 -0
  953. data/spec/models/volume_onboarding_common_spec.rb +12 -10
  954. data/spec/models/volume_onboarding_create_response_spec.rb +10 -8
  955. data/spec/models/volume_onboarding_create_spec.rb +16 -8
  956. data/spec/models/volume_onboarding_create_volumes_inner_spec.rb +42 -0
  957. data/spec/models/volume_onboarding_failure_spec.rb +10 -8
  958. data/spec/models/volume_onboarding_spec.rb +22 -20
  959. data/spec/models/volume_onboardings_spec.rb +9 -7
  960. data/spec/models/volume_reference_spec.rb +140 -39
  961. data/spec/models/volume_remote_copy_relationship_spec.rb +33 -31
  962. data/spec/models/volume_snapshot_list_spec.rb +36 -0
  963. data/spec/models/volume_spec.rb +133 -38
  964. data/spec/models/volumes_attach_spec.rb +9 -7
  965. data/spec/models/volumes_attachment_response_spec.rb +9 -7
  966. data/spec/models/volumes_clone_async_request_spec.rb +30 -17
  967. data/spec/models/volumes_clone_cancel_spec.rb +10 -15
  968. data/spec/models/volumes_clone_create_spec.rb +12 -17
  969. data/spec/models/volumes_clone_detail_spec.rb +27 -32
  970. data/spec/models/volumes_clone_execute_spec.rb +29 -16
  971. data/spec/models/volumes_clone_request_spec.rb +12 -17
  972. data/spec/models/volumes_clone_response_spec.rb +13 -18
  973. data/spec/models/volumes_clone_spec.rb +25 -30
  974. data/spec/models/volumes_clones_spec.rb +10 -15
  975. data/spec/models/volumes_delete_response_spec.rb +36 -0
  976. data/spec/models/volumes_delete_spec.rb +36 -0
  977. data/spec/models/volumes_detach_spec.rb +48 -0
  978. data/spec/models/volumes_detachment_response_spec.rb +36 -0
  979. data/spec/models/volumes_spec.rb +10 -15
  980. data/spec/models/vp_mem_volume_attach_spec.rb +42 -0
  981. data/spec/models/vp_mem_volume_create_spec.rb +42 -0
  982. data/spec/models/vp_mem_volume_reference_spec.rb +96 -0
  983. data/spec/models/vp_mem_volume_update_spec.rb +36 -0
  984. data/spec/models/vp_mem_volumes_spec.rb +36 -0
  985. data/spec/models/vpn_connection_create_response_spec.rb +25 -23
  986. data/spec/models/vpn_connection_create_spec.rb +15 -13
  987. data/spec/models/vpn_connection_spec.rb +20 -18
  988. data/spec/models/vpn_connection_update_spec.rb +12 -10
  989. data/spec/models/vpn_connections_spec.rb +9 -7
  990. data/spec/models/workspace_details_spec.rb +60 -0
  991. data/spec/models/workspace_location_spec.rb +48 -0
  992. data/spec/models/workspace_network_security_groups_details_spec.rb +40 -0
  993. data/spec/models/workspace_power_edge_router_details_spec.rb +60 -0
  994. data/spec/models/workspace_spec.rb +76 -0
  995. data/spec/models/workspace_ssh_key_spec.rb +76 -0
  996. data/spec/models/workspace_ssh_keys_spec.rb +36 -0
  997. data/spec/models/workspaces_spec.rb +36 -0
  998. data/spec/spec_helper.rb +4 -4
  999. metadata +729 -142
  1000. data/Gemfile.lock +0 -72
  1001. data/docs/CloudConnectionEndpointGRE.md +0 -20
  1002. data/docs/CloudConnectionVPC.md +0 -20
  1003. data/docs/CloudConnectionVirtualPrivateCloudsVirtualPrivateClouds.md +0 -23
  1004. data/docs/CloudInstanceCreate.md +0 -30
  1005. data/docs/CloudInstanceUpdate.md +0 -26
  1006. data/docs/IKEPolicyOptions.md +0 -24
  1007. data/docs/IKEPolicyTemplate.md +0 -26
  1008. data/docs/IPSecPolicyOptions.md +0 -22
  1009. data/docs/IPSecPolicyTemplate.md +0 -24
  1010. data/docs/Options.md +0 -18
  1011. data/docs/PCloudSystemPoolsApi.md +0 -70
  1012. data/docs/PVMInstanceClone.md +0 -32
  1013. data/docs/VPNaaSOptions.md +0 -26
  1014. data/ibm_cloud_power-2.1.0.gem +0 -0
  1015. data/lib/ibm_cloud_power/api/p_cloud_system_pools_api.rb +0 -83
  1016. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_gre.rb +0 -232
  1017. data/lib/ibm_cloud_power/models/cloud_connection_speed.rb +0 -43
  1018. data/lib/ibm_cloud_power/models/cloud_connection_virtual_private_clouds_virtual_private_clouds.rb +0 -259
  1019. data/lib/ibm_cloud_power/models/cloud_instance_create.rb +0 -305
  1020. data/lib/ibm_cloud_power/models/cloud_instance_update.rb +0 -260
  1021. data/lib/ibm_cloud_power/models/ike_policy_options.rb +0 -274
  1022. data/lib/ibm_cloud_power/models/ike_policy_template.rb +0 -313
  1023. data/lib/ibm_cloud_power/models/ip_sec_policy_options.rb +0 -258
  1024. data/lib/ibm_cloud_power/models/ip_sec_policy_template.rb +0 -298
  1025. data/lib/ibm_cloud_power/models/options.rb +0 -224
  1026. data/lib/ibm_cloud_power/models/pvm_instance_clone.rb +0 -339
  1027. data/lib/ibm_cloud_power/models/vp_naa_s_options.rb +0 -280
  1028. data/spec/api/p_cloud_system_pools_api_spec.rb +0 -46
  1029. data/spec/api_client_spec.rb +0 -226
  1030. data/spec/configuration_spec.rb +0 -42
  1031. data/spec/models/cloud_connection_endpoint_gre_spec.rb +0 -47
  1032. data/spec/models/cloud_connection_speed_spec.rb +0 -35
  1033. data/spec/models/cloud_connection_virtual_private_clouds_virtual_private_clouds_spec.rb +0 -59
  1034. data/spec/models/cloud_instance_create_spec.rb +0 -77
  1035. data/spec/models/cloud_instance_update_spec.rb +0 -65
  1036. data/spec/models/ike_policy_options_spec.rb +0 -52
  1037. data/spec/models/ike_policy_template_spec.rb +0 -58
  1038. data/spec/models/ip_sec_policy_options_spec.rb +0 -46
  1039. data/spec/models/ip_sec_policy_template_spec.rb +0 -52
  1040. data/spec/models/options_spec.rb +0 -34
  1041. data/spec/models/pvm_instance_clone_spec.rb +0 -87
  1042. data/spec/models/vp_naa_s_options_spec.rb +0 -58
  1043. data/test.rb +0 -32
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Power Cloud API
3
3
 
4
- #IBM Power Cloud API for Power Hardware / Infrastructure
4
+ ### Introduction You can use the IBM® Power® Virtual Server to easily deploy and configure virtual servers that are running AIX, IBM i, or Linux (RHEL and SLES) workloads. To learn about using Power Virtual Server, see: - [Getting started with IBM Power Virtual Servers](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-getting-started) - [IBM Power Virtual Server CLI Reference](https://cloud.ibm.com/docs/power-iaas-cli-plugin?topic=power-iaas-cli-plugin-power-iaas-cli-reference-v1) ## Endpoint URLs The Power Virtual Server service uses regional endpoints over both public and private network. Automatically generated regional API endpoints (service URL) will default to IBM Cloud Regions which may cause your request to fail. You should always use the Power Virtual Server regions in the service URL. The following table shows the IBM Cloud® regions and their corresponding Power Virtual Server region where the APIs are available: <!-- | Country | Power Virtual Server region | Location | Public endpoint (service URL) | | ------------- | ------------------------------------------ | -------- | ------------------------------------------- | | United States | Washington DC | us-south | `https://us-south.power-iaas.cloud.ibm.com` | | Washington DC, USA | us-east | us-east | `https://us-east.power-iaas.cloud.ibm.com` | | S----------------l | b-----o | s-----o | `----------------------------------------` | | Toronto, Canada | ca-tor | tor | `https://tor.power-iaas.cloud.ibm.com` | | Montreal, Canada | ca-mon | mon | `https://mon.power-iaas.cloud.ibm.com` | | Frankfurt, Germany | eu-de | eu-de | `https://eu-de.power-iaas.cloud.ibm.com` | | London, UK | eu-gb | lon | `https://lon.power-iaas.cloud.ibm.com` | | Sydney, Australia | au-syd | syd | `https://syd.power-iaas.cloud.ibm.com` | | Tokyo, Japan | jp-tok | tok | `https://tok.power-iaas.cloud.ibm.com` | | Osaka, Japan | jp-osa | osa | `https://osa.power-iaas.cloud.ibm.com` | --> | Country | Power Virtual Server region | Location | Public end-point (service URL) | | ---------------- | ------------------------------------------ | -------------------------- | ----------------------------------------- | | Australia | Sydney | syd04 \\n syd05 | https://syd.power-iaas.cloud.ibm.com | | Brazil | Sao Paulo | sao01 \\n sao04 | https://sao.power-iaas.cloud.ibm.com | | Canada | Montreal | mon01 | https://mon.power-iaas.cloud.ibm.com | | | Toronto | tor01 | https://tor.power-iaas.cloud.ibm.com | | Germany | Frankfurt | eu-de-1 \\n eu-de-2 | https://eu-de.power-iaas.cloud.ibm.com | | UK/Great Britain | London | lon04 \\n lon06 | https://lon.power-iaas.cloud.ibm.com | | India | Chennai | che01 \\n che02 \\n che03 | https://che.power-iaas.cloud.ibm.com | | | Mumbai | in-mum-1 \\n in-mum-2 | https://in-mum.power-iaas.cloud.ibm.com | | Japan | Tokyo | tok04 | https://tok.power-iaas.cloud.ibm.com | | | Osaka | osa21 | https://osa.power-iaas.cloud.ibm.com | | Spain | Madrid | mad02 \\n mad04 | https://mad.power-iaas.cloud.ibm.com | | United States | Washington DC | us-east \\n wdc06 \\n wdc07 | https://us-east.power-iaas.cloud.ibm.com | | | Dallas | dal10 \\n dal12 \\n us-south | https://us-south.power-iaas.cloud.ibm.com | | Country | Power Virtual Server region | Location | Private end-point (service URL) | | ---------------- | ------------------------------------------ | -------------------------- | ------------------------------------------------- | | Australia | Sydney | syd04 \\n syd05 | https://private.au-syd.power-iaas.cloud.ibm.com | | Brazil | Sao Paulo | sao01 \\n sao04 | https://private.br-sao.power-iaas.cloud.ibm.com | | Canada | Montreal | mon01 | https://private.ca-mon.power-iaas.cloud.ibm.com | | | Toronto | tor01 | https://private.ca-tor.power-iaas.cloud.ibm.com | | Germany | Frankfurt | eu-de-1 \\n eu-de-2 | https://private.eu-de.power-iaas.cloud.ibm.com | | UK/Great Britain | London | lon04 \\n lon06 | https://private.eu-gb.power-iaas.cloud.ibm.com | | India | Chennai | che01 \\n che02 \\n che03 | https://private.in-che.power-iaas.cloud.ibm.com | | | Mumbai | in-mum-1 \\n in-mum-2 | https://private.in-mum.power-iaas.cloud.ibm.com | | Japan | Tokyo | tok04 | https://private.jp-tok.power-iaas.cloud.ibm.com | | | Osaka | osa21 | https://private.jp-osa.power-iaas.cloud.ibm.com | | Spain | Madrid | mad02 \\n mad04 | https://private.eu-es.power-iaas.cloud.ibm.com | | United States | Washington DC | us-east \\n wdc06 \\n wdc07 | https://private.us-east.power-iaas.cloud.ibm.com | | | Dallas | dal10 \\n dal12 \\n us-south | https://private.us-south.power-iaas.cloud.ibm.com | ## Curl service URL intro To call the API, select the service URL that corresponds to the region of your choice and add a method path to form the complete request URL. For example, to list all the workspaces available in the `us-south` region, make a `GET` request to `https://us-south.iaas.cloud.ibm.com/v1/workspaces`. Example request to call the `us-south` service URL: ```codeblock curl -H \"Authorization: Bearer {token}\" -X {http_method} \"https://us-south.iaas.cloud.ibm.com/v1{path}\" ``` Replace `{token}`, `{http_method}`, and `{path}` in this example with the values for your particular request. ## Authentication The Power Virtual Server API uses Identity and Access Management ([IAM](https://cloud.ibm.com/docs/account?topic=account-iamoverview)) to authenticate requests. To call each API method, you must be assigned a role that includes the required IAM actions. Each method has an Authorization section that lists the required actions and, if applicable, the conditions under which each action is required. Check your access on the [IBM Cloud console](https://cloud.ibm.com/login) by navigating to **[Users](https://cloud.ibm.com/iam/users) > _User_ > Access**. For more information about IAM actions and how they map to roles, see [Assigning access to account management services](https://cloud.ibm.com/docs/account?topic=account-account-services) and [Managing IAM access for Power Virtual Server](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-managing-resources-and-users). Learn about obtaining an IAM token for an authenticated user or service ID in the [IAM Identity Services API](https://cloud.ibm.com/apidocs/iam-identity-token-api). If you first [create an API key](https://cloud.ibm.com/docs/account?topic=account-userapikey#create_user_key), you can [use it to generate an IAM token](https://cloud.ibm.com/docs/account?topic=account-iamtoken_from_apikey). To use the API, add a valid IAM token to the HTTP `Authorization` request header. For example, `-H 'Authorization: Bearer {token}'`. For specific APIs you must need to include your IBM Cloud IAM access token and the Power Virtual Server instance ID, also known as your **Cloud Resource Name** (CRN), in each request. The first part of your CRN contains your **Tenant ID** and the second part contains your **Cloud Instance ID**. The following example shows a typical CRN: ```text crn:v1:staging:public:power-iaas:us-east:a/abcdefghijklmnopqrstuvwxyzabcdef:121d5ee5-b87d-4a0e-86b8-aaff422135478:: Tenant ID {tenant_id} = abcdefghijklmnopqrstuvwxyzabcdef Cloud Instance ID {cloud_instance_id} = 121d5ee5-b87d-4a0e-86b8-aaff422135478 ``` You can retrieve an access token by first creating an API key, and then exchanging your API key for a IBM Cloud IAM token. For more information, see [Retrieving an access token programmatically](https://cloud.ibm.com/docs/services/key-protect?topic=key-protect-retrieve-access-token) and [Retrieving your instance ID](https://cloud.ibm.com/docs/services/key-protect?topic=key-protect-retrieve-instance-ID). To retrieve your access token: ```sh curl -X POST \\ \"https://iam.cloud.ibm.com/identity/token\" \\ --header 'Content-Type: application/x-www-form-urlencoded' \\ --header 'Accept: application/json' \\ --data-urlencode 'grant_type=urn:ibm:params:oauth:grant-type:apikey' \\ --data-urlencode 'apikey={api_key}' ``` To use the API, replace `{token}` with the token obtained above from IAM, replace `{http_method}` with an HTTP method such as `POST`, and replace `{url}` with a request URL such as `https://us-south.iaas.cloud.ibm.com/v1/workspaces/{workspace_id}`: ```sh curl -H \"Authorization: Bearer {token}\" -X {http_method} \"{url}\" -H \"CRN\" ``` ## Auditing Monitor API activity within your account by using the IBM Cloud Activity Tracker service. Each time you make an API call, one or more events are generated that you can track and audit from within Activity Tracker. Specific auditing event types are listed for each individual method. For more information about Power Virtual Server activity tracking, see [Activity Tracker events](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-at-events). ## Error handling This API uses standard HTTP response codes to indicate whether a method completed successfully. A `200` response indicates success. A `400` type response indicates a failure, and a `500` type response indicates an internal system error. | HTTP Error Code | Description | Recovery | | --------------- | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `400` | Bad Request | The input parameters in the request body are either incomplete, malformed, or too large. Be sure to include all required parameters in your request. | | `401` | Unauthorized | You are not authorized to make this request. Log in to IBM Cloud and try submitting the request again. If this error persists, contact the account owner to check your permissions. | | `403` | Forbidden | The supplied authentication is not authorized to perform the requested operation. Either you do not have valid access through IAM access policies or your request is denied. If this error persists, contact the account owner to check your permissions. | | `404` | Not Found | The requested resource could not be found but may be available in the future. | | `405` | Method Not Allowed | The requested resource does not support the request method. | | `406` | Not Acceptable | The resource the client requested is not available in a format allowed by the `Accept` header supplied by the client. | | `408` | Request Timeout | The connection to the server timed out. Wait a few minutes, and try submitting the request again. | | `409` | Conflict | The request cannot be completed because of a conflict between the request and the current state of the resource. | | `412` | Precondition Failed | The client specified one or more preconditions in its headers, and the server cannot meet those preconditions. | | `426` | Upgrade Required | The server refuses to perform the request using the current protocol but might perform the request after the client upgrades to a different protocol. | | `500` | Internal Server Error | The request cannot be processed because the client encountered an unexpected condition on the server. Wait a few minutes and try submitting the request again. If this error persists, contact IBM Support. | | `501` | Not Implemented | The server either does not recognize the request method, or it lacks the ability to fulfill the request. | | `502` | Bad Gateway | The server was acting as a gateway or proxy and received an invalid response from the upstream server. | | `503` | Service Unavailable | The server cannot process the request. Generally, this condition is temporary, such as when a server is overloaded or down for scheduled maintenance. This condition could also be due to an unplanned outage of a service that is needed to process the request. Wait a few minutes and try submitting the request again. If this error persists, contact IBM Support. | | `504` | Gateway Timeout | The server was acting as a gateway or proxy and did not receive a timely response from the upstream server. | | `505` | HTTP Version Not Supported | The server does not support the HTTP protocol version that is used in the request. | ## Release notes Use the release notes to learn about the latest changes to the Power Virtual Server API. <!-- ## 2025 --> ### June 2026 Added the following APIs associated with vPMEM volumes: - [Update a vPMEM volume attached to this PVM Instance](https://cloud.ibm.com/docs/apis/power-cloud#pcloud-pvminstances-vpmem-volumes-put) ### December 2025 Added the following APIs associated with vPMEM volumes: - [List all vPMEM volumes attached to this PVM Instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-getall) - [Create a vPMEM volume to be attached to this PVM Instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-post) - [Delete a vPMEM volume attached to this PVM Instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-delete) - [Get information about a vPMEM volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-get) ### September 2025 Added the following APIs associated with network peers: - [Get the list of Network Peers for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-getall) - [Create a new Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-post) - [Get the list of Network Interfaces for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-interfaces-getall) - [Delete a Network Peer from a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-id-delete) - [Get the details of a Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-id-get) - [Update a Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-id-put) - [Create a new Route Filter](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-routefilter-post) - [Delete a Route Filter from a Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-routefilter-id-delete) - [Get the details of a Route Filter](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-routefilter-id-get) ### July 2025 Added the following APIs associated with routes: - [Get all routes in the workspace](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-getall) - [Perform a route creation](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-post) - [Get the route report for a workspace](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-report-get) - [Delete a route](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-delete) - [Get a route's information](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-get) - [Update a route's information](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-put) Added the following APIs associated with ssh keys: - [List SSH Keys](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-getall) - [Add a new SSH key](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-post) - [Delete ssh-key](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-delete) - [Get ssh-key information](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-get) - [Update the ssh key](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-put) Added an API to list the supported IBM i software tiers: [List supported software tiers (IBMi licensing)](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#pcloud-virtualserialnumber-softwaretiers-getall) ### February 2025 Added the following APIs associated with network address groups: - [Get the list of Network Address Groups for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-get) - [Create a new Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-post) - [Delete a Network Address Group from a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-id-delete) - [Get the detail of a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-id-get) - [Update a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-id-put) - [Add a member to a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-members-post) - [Delete the member from a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-members-delete) Added the following APIs associated with network security groups: - [Get the list of Network Security Groups for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-list) - [Create a new Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-post) - [Perform a Network Security Groups action (enable, disable) on a workspace.](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-action-post) - [Delete a Network Security Group from a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-delete) - [Get the detail of a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-get) - [Clone a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-post) - [Update a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-put) - [Add a member to a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-members-post) - [Delete the member from a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-members-delete) - [Move a Network Security Group member to another Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-move-member-post) - [Add a rule to a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-rules-post) - [Delete the rule from a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-rules-delete) ### December 2023 The following APIs are availavle: - [Get all Datacenters information and capabilities](https://cloud.ibm.com/apidocs/power-cloud#v1-datacenters-getall) - [Get a Datacenter's information and capabilities](https://cloud.ibm.com/apidocs/power-cloud#v1-datacenters-get) - [Get all Workspaces information and capabilities for a tenant](https://cloud.ibm.com/apidocs/power-cloud#v1-workspaces-getall) - [Get a Workspace's information and capabilities](https://cloud.ibm.com/apidocs/power-cloud#v1-workspaces-get) ### November 2023 - New API [List all supported storage tiers for this cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-storagetiers-getall) is available. ### September 2023 - Added parameters `availableCapacity`, `maxAllocationSize`, `replicationEnabled`, `storageHost` in the [Storage capacity for a storage pool in a region (GET)](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-pools-get). ### December 2022 - You can now get new error messages for undefined response codes for new service endpoint response codes. ### September 2022 - Added the following APIs associated with shared processor pool: - [Get the list of Shared Processor Pools for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-getall) - [Create a new Shared Processor Pool](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-post) - [Get the detail of a Shared Processor Pool for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-get) - [Update a Shared Processor Pool for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-put) - [Delete a Shared Processor Pool from a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-delete) - Added the following APIs associated with global recovery service: - Disaster recovery - [Get the disaster recovery site details for the current location](https://cloud.ibm.com/apidocs/power-cloud#pcloud-locations-disasterrecovery-get) - [Get all disaster recovery locations supported by Power Virtual Server](https://cloud.ibm.com/apidocs/power-cloud#pcloud-locations-disasterrecovery-getall) - Volume - [Perform an action on a Volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-volumes-action-post) - [Get a list of flashcopy mappings of a given volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-volumes-flashcopymappings-ge) - [Get remote copy relationship of a volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-volumes-remotecopyrelationsh) - Volume onboarding - [List all volume onboardings for this cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volume-onboarding-getall) - [Onboard auxiliary volumes to target site](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volume-onboarding-post) - [Get the information of volume onboarding operation](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volume-onboarding-get) - Volume groups - [Get all volume groups](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-getall) - [Create a new volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-post) - [Get all volume groups with details](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-getalldetails) - [Get volume Group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-get) - [updates the volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-put) - [Delete a cloud instance volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-delete) - [Perform an action (start stop reset ) on a volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-action-post) - [Get volume Group details](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-getdetails) - [Get remote copy relationships of the volume belonging to volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-remotecopyrelationships-get) - [Get storage details of volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-storagedetails-get) ### October 2021 - Added the following APIs associated with VPN connections: - [Get VPN connections](https://cloud.ibm.com/apidocs/power-cloud#pcloud-vpnconnections-getall) - [Add IKE policy](https://cloud.ibm.com/apidocs/power-cloud#pcloud-ikepolicies-post) - [Add IPsec policy](https://cloud.ibm.com/apidocs/power-cloud#pcloud-ipsecpolicies-post) ### September 2021 - Added the following APIs associated with Image Capture, Image Import, and Image Export: - [Capture a PVM instance and create a deployable image](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-pvminstances-capture-post) - [Add image export job to the jobs queue](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-images-export-post) - [Create a new image from available images in COS](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v1-cloudinstances-cosimages-post) - [List up to the last 5 jobs initiated by the cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-jobs-getall) - Added the following APIs associated with storage volumes: - [Create multiple data volumes from a single definition](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumes-post) - Added the following APIs associated with private endpoint: - [Endpoint URL](https://cloud.ibm.com/apidocs/power-cloud#endpoint) ### June 2021 - Added the following APIs associated with placement groups: - [Create a server placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-post) - [Get all server placement groups](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-getall) - [Get server placement group details](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-get) - [Delete server placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-delete) - [Add server to placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-members-post) - [Remove server from placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-members-delete) ### May 2021 - Added the following APIs associated with Cloud connections: - [Create a new Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-post) - [Get all Cloud connections in a specific cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-getall) - [Get a Cloud connection's state or information](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-get) - [Update a Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-put) - [Delete a Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-delete) - [Get information about a Cloud connections attached network](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-networks-get) - [Add a network to the Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-networks-put) - [Delete a network from a Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-networks-delete) ### February 2021 - Added the following APIs associated with volume clone requests: - [Create a new volumes clone request and initiate the Prepare action](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-post) - [Get the list of volumes-clone request for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-getall) - [Get the details for a volumes-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-get) - [Delete a volumes-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-delete) - [Initiate the Start action for a volume-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-start-post) - [Initiate the Execute action for a volumes-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-execute-post) - [Cancel a volume-clone request and initiate the Cleanup action](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-cancel-post) - Added the following APIs for requests related to storage capacity: - [Get storage capacity for all available storage types in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-types-getall) - [Get storage capacity for a storage type in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-types-get) - [Get storage capacity for all available storage pools in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-pools-getall) - [Get storage capacity for a storage pool in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-pools-get)
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.5.0
7
+ Contact: ismirlia@us.ibm.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.2.1
9
+ Generator version: 7.23.0
10
10
 
11
11
  =end
12
12
 
@@ -14,7 +14,7 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module IbmCloudPower
17
- class PVMInstanceMultiCreate
17
+ class PVMInstanceMultiCreate < ApiModelBase
18
18
  # Affinity policy for pvm-instances being created; affinity for the same host, anti-affinity for different hosts, none for no preference
19
19
  attr_accessor :affinity_policy
20
20
 
@@ -55,9 +55,14 @@ module IbmCloudPower
55
55
  }
56
56
  end
57
57
 
58
+ # Returns attribute mapping this model knows about
59
+ def self.acceptable_attribute_map
60
+ attribute_map
61
+ end
62
+
58
63
  # Returns all the JSON keys this model knows about
59
64
  def self.acceptable_attributes
60
- attribute_map.values
65
+ acceptable_attribute_map.values
61
66
  end
62
67
 
63
68
  # Attribute type mapping.
@@ -83,9 +88,10 @@ module IbmCloudPower
83
88
  end
84
89
 
85
90
  # check to see if the attribute exists and convert string to symbol for hash key
91
+ acceptable_attribute_map = self.class.acceptable_attribute_map
86
92
  attributes = attributes.each_with_object({}) { |(k, v), h|
87
- if (!self.class.attribute_map.key?(k.to_sym))
88
- fail ArgumentError, "`#{k}` is not a valid attribute in `IbmCloudPower::PVMInstanceMultiCreate`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
93
+ if (!acceptable_attribute_map.key?(k.to_sym))
94
+ fail ArgumentError, "`#{k}` is not a valid attribute in `IbmCloudPower::PVMInstanceMultiCreate`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
89
95
  end
90
96
  h[k.to_sym] = v
91
97
  }
@@ -110,6 +116,7 @@ module IbmCloudPower
110
116
  # Show invalid properties with the reasons. Usually used together with valid?
111
117
  # @return Array for valid properties with the reasons
112
118
  def list_invalid_properties
119
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
113
120
  invalid_properties = Array.new
114
121
  invalid_properties
115
122
  end
@@ -117,6 +124,7 @@ module IbmCloudPower
117
124
  # Check to see if the all the properties in the model are valid
118
125
  # @return true if the model is valid
119
126
  def valid?
127
+ warn '[DEPRECATED] the `valid?` method is obsolete'
120
128
  affinity_policy_validator = EnumAttributeValidator.new('String', ["affinity", "anti-affinity", "none"])
121
129
  return false unless affinity_policy_validator.valid?(@affinity_policy)
122
130
  numerical_validator = EnumAttributeValidator.new('String', ["prefix", "suffix"])
@@ -170,85 +178,23 @@ module IbmCloudPower
170
178
  # @param [Hash] attributes Model attributes in the form of hash
171
179
  # @return [Object] Returns the model itself
172
180
  def self.build_from_hash(attributes)
173
- new.build_from_hash(attributes)
174
- end
175
-
176
- # Builds the object from hash
177
- # @param [Hash] attributes Model attributes in the form of hash
178
- # @return [Object] Returns the model itself
179
- def build_from_hash(attributes)
180
181
  return nil unless attributes.is_a?(Hash)
181
182
  attributes = attributes.transform_keys(&:to_sym)
182
- self.class.openapi_types.each_pair do |key, type|
183
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
184
- self.send("#{key}=", nil)
183
+ transformed_hash = {}
184
+ openapi_types.each_pair do |key, type|
185
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
186
+ transformed_hash["#{key}"] = nil
185
187
  elsif type =~ /\AArray<(.*)>/i
186
188
  # check to ensure the input is an array given that the attribute
187
189
  # is documented as an array but the input is not
188
- if attributes[self.class.attribute_map[key]].is_a?(Array)
189
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
190
- end
191
- elsif !attributes[self.class.attribute_map[key]].nil?
192
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
193
- end
194
- end
195
-
196
- self
197
- end
198
-
199
- # Deserializes the data based on type
200
- # @param string type Data type
201
- # @param string value Value to be deserialized
202
- # @return [Object] Deserialized data
203
- def _deserialize(type, value)
204
- case type.to_sym
205
- when :Time
206
- Time.parse(value)
207
- when :Date
208
- Date.parse(value)
209
- when :String
210
- value.to_s
211
- when :Integer
212
- value.to_i
213
- when :Float
214
- value.to_f
215
- when :Boolean
216
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
217
- true
218
- else
219
- false
220
- end
221
- when :Object
222
- # generic object (usually a Hash), return directly
223
- value
224
- when /\AArray<(?<inner_type>.+)>\z/
225
- inner_type = Regexp.last_match[:inner_type]
226
- value.map { |v| _deserialize(inner_type, v) }
227
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
228
- k_type = Regexp.last_match[:k_type]
229
- v_type = Regexp.last_match[:v_type]
230
- {}.tap do |hash|
231
- value.each do |k, v|
232
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
190
+ if attributes[attribute_map[key]].is_a?(Array)
191
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
233
192
  end
193
+ elsif !attributes[attribute_map[key]].nil?
194
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
234
195
  end
235
- else # model
236
- # models (e.g. Pet) or oneOf
237
- klass = IbmCloudPower.const_get(type)
238
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
239
196
  end
240
- end
241
-
242
- # Returns the string representation of the object
243
- # @return [String] String presentation of the object
244
- def to_s
245
- to_hash.to_s
246
- end
247
-
248
- # to_body is an alias to to_hash (backward compatibility)
249
- # @return [Hash] Returns the object in the form of hash
250
- def to_body
251
- to_hash
197
+ new(transformed_hash)
252
198
  end
253
199
 
254
200
  # Returns the object in the form of hash
@@ -267,24 +213,6 @@ module IbmCloudPower
267
213
  hash
268
214
  end
269
215
 
270
- # Outputs non-array value in the form of hash
271
- # For object, use to_hash. Otherwise, just return the value
272
- # @param [Object] value Any valid value
273
- # @return [Hash] Returns the value in the form of hash
274
- def _to_hash(value)
275
- if value.is_a?(Array)
276
- value.compact.map { |v| _to_hash(v) }
277
- elsif value.is_a?(Hash)
278
- {}.tap do |hash|
279
- value.each { |k, v| hash[k] = _to_hash(v) }
280
- end
281
- elsif value.respond_to? :to_hash
282
- value.to_hash
283
- else
284
- value
285
- end
286
- end
287
-
288
216
  end
289
217
 
290
218
  end
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Power Cloud API
3
3
 
4
- #IBM Power Cloud API for Power Hardware / Infrastructure
4
+ ### Introduction You can use the IBM® Power® Virtual Server to easily deploy and configure virtual servers that are running AIX, IBM i, or Linux (RHEL and SLES) workloads. To learn about using Power Virtual Server, see: - [Getting started with IBM Power Virtual Servers](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-getting-started) - [IBM Power Virtual Server CLI Reference](https://cloud.ibm.com/docs/power-iaas-cli-plugin?topic=power-iaas-cli-plugin-power-iaas-cli-reference-v1) ## Endpoint URLs The Power Virtual Server service uses regional endpoints over both public and private network. Automatically generated regional API endpoints (service URL) will default to IBM Cloud Regions which may cause your request to fail. You should always use the Power Virtual Server regions in the service URL. The following table shows the IBM Cloud® regions and their corresponding Power Virtual Server region where the APIs are available: <!-- | Country | Power Virtual Server region | Location | Public endpoint (service URL) | | ------------- | ------------------------------------------ | -------- | ------------------------------------------- | | United States | Washington DC | us-south | `https://us-south.power-iaas.cloud.ibm.com` | | Washington DC, USA | us-east | us-east | `https://us-east.power-iaas.cloud.ibm.com` | | S----------------l | b-----o | s-----o | `----------------------------------------` | | Toronto, Canada | ca-tor | tor | `https://tor.power-iaas.cloud.ibm.com` | | Montreal, Canada | ca-mon | mon | `https://mon.power-iaas.cloud.ibm.com` | | Frankfurt, Germany | eu-de | eu-de | `https://eu-de.power-iaas.cloud.ibm.com` | | London, UK | eu-gb | lon | `https://lon.power-iaas.cloud.ibm.com` | | Sydney, Australia | au-syd | syd | `https://syd.power-iaas.cloud.ibm.com` | | Tokyo, Japan | jp-tok | tok | `https://tok.power-iaas.cloud.ibm.com` | | Osaka, Japan | jp-osa | osa | `https://osa.power-iaas.cloud.ibm.com` | --> | Country | Power Virtual Server region | Location | Public end-point (service URL) | | ---------------- | ------------------------------------------ | -------------------------- | ----------------------------------------- | | Australia | Sydney | syd04 \\n syd05 | https://syd.power-iaas.cloud.ibm.com | | Brazil | Sao Paulo | sao01 \\n sao04 | https://sao.power-iaas.cloud.ibm.com | | Canada | Montreal | mon01 | https://mon.power-iaas.cloud.ibm.com | | | Toronto | tor01 | https://tor.power-iaas.cloud.ibm.com | | Germany | Frankfurt | eu-de-1 \\n eu-de-2 | https://eu-de.power-iaas.cloud.ibm.com | | UK/Great Britain | London | lon04 \\n lon06 | https://lon.power-iaas.cloud.ibm.com | | India | Chennai | che01 \\n che02 \\n che03 | https://che.power-iaas.cloud.ibm.com | | | Mumbai | in-mum-1 \\n in-mum-2 | https://in-mum.power-iaas.cloud.ibm.com | | Japan | Tokyo | tok04 | https://tok.power-iaas.cloud.ibm.com | | | Osaka | osa21 | https://osa.power-iaas.cloud.ibm.com | | Spain | Madrid | mad02 \\n mad04 | https://mad.power-iaas.cloud.ibm.com | | United States | Washington DC | us-east \\n wdc06 \\n wdc07 | https://us-east.power-iaas.cloud.ibm.com | | | Dallas | dal10 \\n dal12 \\n us-south | https://us-south.power-iaas.cloud.ibm.com | | Country | Power Virtual Server region | Location | Private end-point (service URL) | | ---------------- | ------------------------------------------ | -------------------------- | ------------------------------------------------- | | Australia | Sydney | syd04 \\n syd05 | https://private.au-syd.power-iaas.cloud.ibm.com | | Brazil | Sao Paulo | sao01 \\n sao04 | https://private.br-sao.power-iaas.cloud.ibm.com | | Canada | Montreal | mon01 | https://private.ca-mon.power-iaas.cloud.ibm.com | | | Toronto | tor01 | https://private.ca-tor.power-iaas.cloud.ibm.com | | Germany | Frankfurt | eu-de-1 \\n eu-de-2 | https://private.eu-de.power-iaas.cloud.ibm.com | | UK/Great Britain | London | lon04 \\n lon06 | https://private.eu-gb.power-iaas.cloud.ibm.com | | India | Chennai | che01 \\n che02 \\n che03 | https://private.in-che.power-iaas.cloud.ibm.com | | | Mumbai | in-mum-1 \\n in-mum-2 | https://private.in-mum.power-iaas.cloud.ibm.com | | Japan | Tokyo | tok04 | https://private.jp-tok.power-iaas.cloud.ibm.com | | | Osaka | osa21 | https://private.jp-osa.power-iaas.cloud.ibm.com | | Spain | Madrid | mad02 \\n mad04 | https://private.eu-es.power-iaas.cloud.ibm.com | | United States | Washington DC | us-east \\n wdc06 \\n wdc07 | https://private.us-east.power-iaas.cloud.ibm.com | | | Dallas | dal10 \\n dal12 \\n us-south | https://private.us-south.power-iaas.cloud.ibm.com | ## Curl service URL intro To call the API, select the service URL that corresponds to the region of your choice and add a method path to form the complete request URL. For example, to list all the workspaces available in the `us-south` region, make a `GET` request to `https://us-south.iaas.cloud.ibm.com/v1/workspaces`. Example request to call the `us-south` service URL: ```codeblock curl -H \"Authorization: Bearer {token}\" -X {http_method} \"https://us-south.iaas.cloud.ibm.com/v1{path}\" ``` Replace `{token}`, `{http_method}`, and `{path}` in this example with the values for your particular request. ## Authentication The Power Virtual Server API uses Identity and Access Management ([IAM](https://cloud.ibm.com/docs/account?topic=account-iamoverview)) to authenticate requests. To call each API method, you must be assigned a role that includes the required IAM actions. Each method has an Authorization section that lists the required actions and, if applicable, the conditions under which each action is required. Check your access on the [IBM Cloud console](https://cloud.ibm.com/login) by navigating to **[Users](https://cloud.ibm.com/iam/users) > _User_ > Access**. For more information about IAM actions and how they map to roles, see [Assigning access to account management services](https://cloud.ibm.com/docs/account?topic=account-account-services) and [Managing IAM access for Power Virtual Server](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-managing-resources-and-users). Learn about obtaining an IAM token for an authenticated user or service ID in the [IAM Identity Services API](https://cloud.ibm.com/apidocs/iam-identity-token-api). If you first [create an API key](https://cloud.ibm.com/docs/account?topic=account-userapikey#create_user_key), you can [use it to generate an IAM token](https://cloud.ibm.com/docs/account?topic=account-iamtoken_from_apikey). To use the API, add a valid IAM token to the HTTP `Authorization` request header. For example, `-H 'Authorization: Bearer {token}'`. For specific APIs you must need to include your IBM Cloud IAM access token and the Power Virtual Server instance ID, also known as your **Cloud Resource Name** (CRN), in each request. The first part of your CRN contains your **Tenant ID** and the second part contains your **Cloud Instance ID**. The following example shows a typical CRN: ```text crn:v1:staging:public:power-iaas:us-east:a/abcdefghijklmnopqrstuvwxyzabcdef:121d5ee5-b87d-4a0e-86b8-aaff422135478:: Tenant ID {tenant_id} = abcdefghijklmnopqrstuvwxyzabcdef Cloud Instance ID {cloud_instance_id} = 121d5ee5-b87d-4a0e-86b8-aaff422135478 ``` You can retrieve an access token by first creating an API key, and then exchanging your API key for a IBM Cloud IAM token. For more information, see [Retrieving an access token programmatically](https://cloud.ibm.com/docs/services/key-protect?topic=key-protect-retrieve-access-token) and [Retrieving your instance ID](https://cloud.ibm.com/docs/services/key-protect?topic=key-protect-retrieve-instance-ID). To retrieve your access token: ```sh curl -X POST \\ \"https://iam.cloud.ibm.com/identity/token\" \\ --header 'Content-Type: application/x-www-form-urlencoded' \\ --header 'Accept: application/json' \\ --data-urlencode 'grant_type=urn:ibm:params:oauth:grant-type:apikey' \\ --data-urlencode 'apikey={api_key}' ``` To use the API, replace `{token}` with the token obtained above from IAM, replace `{http_method}` with an HTTP method such as `POST`, and replace `{url}` with a request URL such as `https://us-south.iaas.cloud.ibm.com/v1/workspaces/{workspace_id}`: ```sh curl -H \"Authorization: Bearer {token}\" -X {http_method} \"{url}\" -H \"CRN\" ``` ## Auditing Monitor API activity within your account by using the IBM Cloud Activity Tracker service. Each time you make an API call, one or more events are generated that you can track and audit from within Activity Tracker. Specific auditing event types are listed for each individual method. For more information about Power Virtual Server activity tracking, see [Activity Tracker events](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-at-events). ## Error handling This API uses standard HTTP response codes to indicate whether a method completed successfully. A `200` response indicates success. A `400` type response indicates a failure, and a `500` type response indicates an internal system error. | HTTP Error Code | Description | Recovery | | --------------- | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `400` | Bad Request | The input parameters in the request body are either incomplete, malformed, or too large. Be sure to include all required parameters in your request. | | `401` | Unauthorized | You are not authorized to make this request. Log in to IBM Cloud and try submitting the request again. If this error persists, contact the account owner to check your permissions. | | `403` | Forbidden | The supplied authentication is not authorized to perform the requested operation. Either you do not have valid access through IAM access policies or your request is denied. If this error persists, contact the account owner to check your permissions. | | `404` | Not Found | The requested resource could not be found but may be available in the future. | | `405` | Method Not Allowed | The requested resource does not support the request method. | | `406` | Not Acceptable | The resource the client requested is not available in a format allowed by the `Accept` header supplied by the client. | | `408` | Request Timeout | The connection to the server timed out. Wait a few minutes, and try submitting the request again. | | `409` | Conflict | The request cannot be completed because of a conflict between the request and the current state of the resource. | | `412` | Precondition Failed | The client specified one or more preconditions in its headers, and the server cannot meet those preconditions. | | `426` | Upgrade Required | The server refuses to perform the request using the current protocol but might perform the request after the client upgrades to a different protocol. | | `500` | Internal Server Error | The request cannot be processed because the client encountered an unexpected condition on the server. Wait a few minutes and try submitting the request again. If this error persists, contact IBM Support. | | `501` | Not Implemented | The server either does not recognize the request method, or it lacks the ability to fulfill the request. | | `502` | Bad Gateway | The server was acting as a gateway or proxy and received an invalid response from the upstream server. | | `503` | Service Unavailable | The server cannot process the request. Generally, this condition is temporary, such as when a server is overloaded or down for scheduled maintenance. This condition could also be due to an unplanned outage of a service that is needed to process the request. Wait a few minutes and try submitting the request again. If this error persists, contact IBM Support. | | `504` | Gateway Timeout | The server was acting as a gateway or proxy and did not receive a timely response from the upstream server. | | `505` | HTTP Version Not Supported | The server does not support the HTTP protocol version that is used in the request. | ## Release notes Use the release notes to learn about the latest changes to the Power Virtual Server API. <!-- ## 2025 --> ### June 2026 Added the following APIs associated with vPMEM volumes: - [Update a vPMEM volume attached to this PVM Instance](https://cloud.ibm.com/docs/apis/power-cloud#pcloud-pvminstances-vpmem-volumes-put) ### December 2025 Added the following APIs associated with vPMEM volumes: - [List all vPMEM volumes attached to this PVM Instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-getall) - [Create a vPMEM volume to be attached to this PVM Instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-post) - [Delete a vPMEM volume attached to this PVM Instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-delete) - [Get information about a vPMEM volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-get) ### September 2025 Added the following APIs associated with network peers: - [Get the list of Network Peers for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-getall) - [Create a new Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-post) - [Get the list of Network Interfaces for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-interfaces-getall) - [Delete a Network Peer from a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-id-delete) - [Get the details of a Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-id-get) - [Update a Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-id-put) - [Create a new Route Filter](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-routefilter-post) - [Delete a Route Filter from a Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-routefilter-id-delete) - [Get the details of a Route Filter](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-routefilter-id-get) ### July 2025 Added the following APIs associated with routes: - [Get all routes in the workspace](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-getall) - [Perform a route creation](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-post) - [Get the route report for a workspace](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-report-get) - [Delete a route](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-delete) - [Get a route's information](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-get) - [Update a route's information](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-put) Added the following APIs associated with ssh keys: - [List SSH Keys](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-getall) - [Add a new SSH key](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-post) - [Delete ssh-key](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-delete) - [Get ssh-key information](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-get) - [Update the ssh key](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-put) Added an API to list the supported IBM i software tiers: [List supported software tiers (IBMi licensing)](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#pcloud-virtualserialnumber-softwaretiers-getall) ### February 2025 Added the following APIs associated with network address groups: - [Get the list of Network Address Groups for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-get) - [Create a new Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-post) - [Delete a Network Address Group from a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-id-delete) - [Get the detail of a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-id-get) - [Update a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-id-put) - [Add a member to a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-members-post) - [Delete the member from a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-members-delete) Added the following APIs associated with network security groups: - [Get the list of Network Security Groups for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-list) - [Create a new Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-post) - [Perform a Network Security Groups action (enable, disable) on a workspace.](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-action-post) - [Delete a Network Security Group from a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-delete) - [Get the detail of a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-get) - [Clone a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-post) - [Update a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-put) - [Add a member to a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-members-post) - [Delete the member from a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-members-delete) - [Move a Network Security Group member to another Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-move-member-post) - [Add a rule to a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-rules-post) - [Delete the rule from a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-rules-delete) ### December 2023 The following APIs are availavle: - [Get all Datacenters information and capabilities](https://cloud.ibm.com/apidocs/power-cloud#v1-datacenters-getall) - [Get a Datacenter's information and capabilities](https://cloud.ibm.com/apidocs/power-cloud#v1-datacenters-get) - [Get all Workspaces information and capabilities for a tenant](https://cloud.ibm.com/apidocs/power-cloud#v1-workspaces-getall) - [Get a Workspace's information and capabilities](https://cloud.ibm.com/apidocs/power-cloud#v1-workspaces-get) ### November 2023 - New API [List all supported storage tiers for this cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-storagetiers-getall) is available. ### September 2023 - Added parameters `availableCapacity`, `maxAllocationSize`, `replicationEnabled`, `storageHost` in the [Storage capacity for a storage pool in a region (GET)](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-pools-get). ### December 2022 - You can now get new error messages for undefined response codes for new service endpoint response codes. ### September 2022 - Added the following APIs associated with shared processor pool: - [Get the list of Shared Processor Pools for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-getall) - [Create a new Shared Processor Pool](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-post) - [Get the detail of a Shared Processor Pool for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-get) - [Update a Shared Processor Pool for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-put) - [Delete a Shared Processor Pool from a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-delete) - Added the following APIs associated with global recovery service: - Disaster recovery - [Get the disaster recovery site details for the current location](https://cloud.ibm.com/apidocs/power-cloud#pcloud-locations-disasterrecovery-get) - [Get all disaster recovery locations supported by Power Virtual Server](https://cloud.ibm.com/apidocs/power-cloud#pcloud-locations-disasterrecovery-getall) - Volume - [Perform an action on a Volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-volumes-action-post) - [Get a list of flashcopy mappings of a given volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-volumes-flashcopymappings-ge) - [Get remote copy relationship of a volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-volumes-remotecopyrelationsh) - Volume onboarding - [List all volume onboardings for this cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volume-onboarding-getall) - [Onboard auxiliary volumes to target site](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volume-onboarding-post) - [Get the information of volume onboarding operation](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volume-onboarding-get) - Volume groups - [Get all volume groups](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-getall) - [Create a new volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-post) - [Get all volume groups with details](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-getalldetails) - [Get volume Group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-get) - [updates the volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-put) - [Delete a cloud instance volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-delete) - [Perform an action (start stop reset ) on a volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-action-post) - [Get volume Group details](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-getdetails) - [Get remote copy relationships of the volume belonging to volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-remotecopyrelationships-get) - [Get storage details of volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-storagedetails-get) ### October 2021 - Added the following APIs associated with VPN connections: - [Get VPN connections](https://cloud.ibm.com/apidocs/power-cloud#pcloud-vpnconnections-getall) - [Add IKE policy](https://cloud.ibm.com/apidocs/power-cloud#pcloud-ikepolicies-post) - [Add IPsec policy](https://cloud.ibm.com/apidocs/power-cloud#pcloud-ipsecpolicies-post) ### September 2021 - Added the following APIs associated with Image Capture, Image Import, and Image Export: - [Capture a PVM instance and create a deployable image](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-pvminstances-capture-post) - [Add image export job to the jobs queue](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-images-export-post) - [Create a new image from available images in COS](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v1-cloudinstances-cosimages-post) - [List up to the last 5 jobs initiated by the cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-jobs-getall) - Added the following APIs associated with storage volumes: - [Create multiple data volumes from a single definition](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumes-post) - Added the following APIs associated with private endpoint: - [Endpoint URL](https://cloud.ibm.com/apidocs/power-cloud#endpoint) ### June 2021 - Added the following APIs associated with placement groups: - [Create a server placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-post) - [Get all server placement groups](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-getall) - [Get server placement group details](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-get) - [Delete server placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-delete) - [Add server to placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-members-post) - [Remove server from placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-members-delete) ### May 2021 - Added the following APIs associated with Cloud connections: - [Create a new Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-post) - [Get all Cloud connections in a specific cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-getall) - [Get a Cloud connection's state or information](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-get) - [Update a Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-put) - [Delete a Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-delete) - [Get information about a Cloud connections attached network](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-networks-get) - [Add a network to the Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-networks-put) - [Delete a network from a Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-networks-delete) ### February 2021 - Added the following APIs associated with volume clone requests: - [Create a new volumes clone request and initiate the Prepare action](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-post) - [Get the list of volumes-clone request for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-getall) - [Get the details for a volumes-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-get) - [Delete a volumes-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-delete) - [Initiate the Start action for a volume-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-start-post) - [Initiate the Execute action for a volumes-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-execute-post) - [Cancel a volume-clone request and initiate the Cleanup action](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-cancel-post) - Added the following APIs for requests related to storage capacity: - [Get storage capacity for all available storage types in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-types-getall) - [Get storage capacity for a storage type in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-types-get) - [Get storage capacity for all available storage pools in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-pools-getall) - [Get storage capacity for a storage pool in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-pools-get)
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.5.0
7
+ Contact: ismirlia@us.ibm.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.2.1
9
+ Generator version: 7.23.0
10
10
 
11
11
  =end
12
12
 
@@ -15,7 +15,7 @@ require 'time'
15
15
 
16
16
  module IbmCloudPower
17
17
  # A map containing information about a network address
18
- class PVMInstanceNetwork
18
+ class PVMInstanceNetwork < ApiModelBase
19
19
  # The external ip address (for pub-vlan networks)
20
20
  attr_accessor :external_ip
21
21
 
@@ -34,9 +34,18 @@ module IbmCloudPower
34
34
  # ID of the network
35
35
  attr_accessor :network_id
36
36
 
37
+ # ID of the network interface
38
+ attr_accessor :network_interface_id
39
+
37
40
  # The name of the network the address is on
38
41
  attr_accessor :network_name
39
42
 
43
+ # IDs of the network necurity groups that the network interface is a member of
44
+ attr_accessor :network_security_group_ids
45
+
46
+ # Links to the network security groups that the network interface is a member of
47
+ attr_accessor :network_security_groups_href
48
+
40
49
  # The address type (fixed or dynamic)
41
50
  attr_accessor :type
42
51
 
@@ -52,15 +61,23 @@ module IbmCloudPower
52
61
  :'ip_address' => :'ipAddress',
53
62
  :'mac_address' => :'macAddress',
54
63
  :'network_id' => :'networkID',
64
+ :'network_interface_id' => :'networkInterfaceID',
55
65
  :'network_name' => :'networkName',
66
+ :'network_security_group_ids' => :'networkSecurityGroupIDs',
67
+ :'network_security_groups_href' => :'networkSecurityGroupsHref',
56
68
  :'type' => :'type',
57
69
  :'version' => :'version'
58
70
  }
59
71
  end
60
72
 
73
+ # Returns attribute mapping this model knows about
74
+ def self.acceptable_attribute_map
75
+ attribute_map
76
+ end
77
+
61
78
  # Returns all the JSON keys this model knows about
62
79
  def self.acceptable_attributes
63
- attribute_map.values
80
+ acceptable_attribute_map.values
64
81
  end
65
82
 
66
83
  # Attribute type mapping.
@@ -72,7 +89,10 @@ module IbmCloudPower
72
89
  :'ip_address' => :'String',
73
90
  :'mac_address' => :'String',
74
91
  :'network_id' => :'String',
92
+ :'network_interface_id' => :'String',
75
93
  :'network_name' => :'String',
94
+ :'network_security_group_ids' => :'Array<String>',
95
+ :'network_security_groups_href' => :'Array<String>',
76
96
  :'type' => :'String',
77
97
  :'version' => :'Float'
78
98
  }
@@ -92,9 +112,10 @@ module IbmCloudPower
92
112
  end
93
113
 
94
114
  # check to see if the attribute exists and convert string to symbol for hash key
115
+ acceptable_attribute_map = self.class.acceptable_attribute_map
95
116
  attributes = attributes.each_with_object({}) { |(k, v), h|
96
- if (!self.class.attribute_map.key?(k.to_sym))
97
- fail ArgumentError, "`#{k}` is not a valid attribute in `IbmCloudPower::PVMInstanceNetwork`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
117
+ if (!acceptable_attribute_map.key?(k.to_sym))
118
+ fail ArgumentError, "`#{k}` is not a valid attribute in `IbmCloudPower::PVMInstanceNetwork`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
98
119
  end
99
120
  h[k.to_sym] = v
100
121
  }
@@ -123,10 +144,26 @@ module IbmCloudPower
123
144
  self.network_id = attributes[:'network_id']
124
145
  end
125
146
 
147
+ if attributes.key?(:'network_interface_id')
148
+ self.network_interface_id = attributes[:'network_interface_id']
149
+ end
150
+
126
151
  if attributes.key?(:'network_name')
127
152
  self.network_name = attributes[:'network_name']
128
153
  end
129
154
 
155
+ if attributes.key?(:'network_security_group_ids')
156
+ if (value = attributes[:'network_security_group_ids']).is_a?(Array)
157
+ self.network_security_group_ids = value
158
+ end
159
+ end
160
+
161
+ if attributes.key?(:'network_security_groups_href')
162
+ if (value = attributes[:'network_security_groups_href']).is_a?(Array)
163
+ self.network_security_groups_href = value
164
+ end
165
+ end
166
+
130
167
  if attributes.key?(:'type')
131
168
  self.type = attributes[:'type']
132
169
  end
@@ -139,6 +176,7 @@ module IbmCloudPower
139
176
  # Show invalid properties with the reasons. Usually used together with valid?
140
177
  # @return Array for valid properties with the reasons
141
178
  def list_invalid_properties
179
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
142
180
  invalid_properties = Array.new
143
181
  invalid_properties
144
182
  end
@@ -146,6 +184,7 @@ module IbmCloudPower
146
184
  # Check to see if the all the properties in the model are valid
147
185
  # @return true if the model is valid
148
186
  def valid?
187
+ warn '[DEPRECATED] the `valid?` method is obsolete'
149
188
  true
150
189
  end
151
190
 
@@ -160,7 +199,10 @@ module IbmCloudPower
160
199
  ip_address == o.ip_address &&
161
200
  mac_address == o.mac_address &&
162
201
  network_id == o.network_id &&
202
+ network_interface_id == o.network_interface_id &&
163
203
  network_name == o.network_name &&
204
+ network_security_group_ids == o.network_security_group_ids &&
205
+ network_security_groups_href == o.network_security_groups_href &&
164
206
  type == o.type &&
165
207
  version == o.version
166
208
  end
@@ -174,92 +216,30 @@ module IbmCloudPower
174
216
  # Calculates hash code according to all attributes.
175
217
  # @return [Integer] Hash code
176
218
  def hash
177
- [external_ip, href, ip, ip_address, mac_address, network_id, network_name, type, version].hash
219
+ [external_ip, href, ip, ip_address, mac_address, network_id, network_interface_id, network_name, network_security_group_ids, network_security_groups_href, type, version].hash
178
220
  end
179
221
 
180
222
  # Builds the object from hash
181
223
  # @param [Hash] attributes Model attributes in the form of hash
182
224
  # @return [Object] Returns the model itself
183
225
  def self.build_from_hash(attributes)
184
- new.build_from_hash(attributes)
185
- end
186
-
187
- # Builds the object from hash
188
- # @param [Hash] attributes Model attributes in the form of hash
189
- # @return [Object] Returns the model itself
190
- def build_from_hash(attributes)
191
226
  return nil unless attributes.is_a?(Hash)
192
227
  attributes = attributes.transform_keys(&:to_sym)
193
- self.class.openapi_types.each_pair do |key, type|
194
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
195
- self.send("#{key}=", nil)
228
+ transformed_hash = {}
229
+ openapi_types.each_pair do |key, type|
230
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
231
+ transformed_hash["#{key}"] = nil
196
232
  elsif type =~ /\AArray<(.*)>/i
197
233
  # check to ensure the input is an array given that the attribute
198
234
  # is documented as an array but the input is not
199
- if attributes[self.class.attribute_map[key]].is_a?(Array)
200
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
235
+ if attributes[attribute_map[key]].is_a?(Array)
236
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
201
237
  end
202
- elsif !attributes[self.class.attribute_map[key]].nil?
203
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
238
+ elsif !attributes[attribute_map[key]].nil?
239
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
204
240
  end
205
241
  end
206
-
207
- self
208
- end
209
-
210
- # Deserializes the data based on type
211
- # @param string type Data type
212
- # @param string value Value to be deserialized
213
- # @return [Object] Deserialized data
214
- def _deserialize(type, value)
215
- case type.to_sym
216
- when :Time
217
- Time.parse(value)
218
- when :Date
219
- Date.parse(value)
220
- when :String
221
- value.to_s
222
- when :Integer
223
- value.to_i
224
- when :Float
225
- value.to_f
226
- when :Boolean
227
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
228
- true
229
- else
230
- false
231
- end
232
- when :Object
233
- # generic object (usually a Hash), return directly
234
- value
235
- when /\AArray<(?<inner_type>.+)>\z/
236
- inner_type = Regexp.last_match[:inner_type]
237
- value.map { |v| _deserialize(inner_type, v) }
238
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
239
- k_type = Regexp.last_match[:k_type]
240
- v_type = Regexp.last_match[:v_type]
241
- {}.tap do |hash|
242
- value.each do |k, v|
243
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
244
- end
245
- end
246
- else # model
247
- # models (e.g. Pet) or oneOf
248
- klass = IbmCloudPower.const_get(type)
249
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
250
- end
251
- end
252
-
253
- # Returns the string representation of the object
254
- # @return [String] String presentation of the object
255
- def to_s
256
- to_hash.to_s
257
- end
258
-
259
- # to_body is an alias to to_hash (backward compatibility)
260
- # @return [Hash] Returns the object in the form of hash
261
- def to_body
262
- to_hash
242
+ new(transformed_hash)
263
243
  end
264
244
 
265
245
  # Returns the object in the form of hash
@@ -278,24 +258,6 @@ module IbmCloudPower
278
258
  hash
279
259
  end
280
260
 
281
- # Outputs non-array value in the form of hash
282
- # For object, use to_hash. Otherwise, just return the value
283
- # @param [Object] value Any valid value
284
- # @return [Hash] Returns the value in the form of hash
285
- def _to_hash(value)
286
- if value.is_a?(Array)
287
- value.compact.map { |v| _to_hash(v) }
288
- elsif value.is_a?(Hash)
289
- {}.tap do |hash|
290
- value.each { |k, v| hash[k] = _to_hash(v) }
291
- end
292
- elsif value.respond_to? :to_hash
293
- value.to_hash
294
- else
295
- value
296
- end
297
- end
298
-
299
261
  end
300
262
 
301
263
  end