test-oneview 5.18.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.
- checksums.yaml +7 -0
- data/CHANGELOG.md +758 -0
- data/Dockerfile +21 -0
- data/Gemfile +14 -0
- data/Guardfile +26 -0
- data/LICENSE +201 -0
- data/README.md +516 -0
- data/Rakefile +126 -0
- data/TESTING.md +61 -0
- data/bin/oneview-sdk-ruby +4 -0
- data/endpoints-support.md +552 -0
- data/lib/oneview-sdk.rb +65 -0
- data/lib/oneview-sdk/cli.rb +639 -0
- data/lib/oneview-sdk/client.rb +220 -0
- data/lib/oneview-sdk/config_loader.rb +31 -0
- data/lib/oneview-sdk/exceptions.rb +91 -0
- data/lib/oneview-sdk/image-streamer/client.rb +99 -0
- data/lib/oneview-sdk/image-streamer/resource/api1000.rb +39 -0
- data/lib/oneview-sdk/image-streamer/resource/api1000/artifact_bundle.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1000/build_plan.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1000/deployment_group.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1000/deployment_plan.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1000/golden_image.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1000/os_volume.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1000/plan_script.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1020.rb +39 -0
- data/lib/oneview-sdk/image-streamer/resource/api1020/artifact_bundle.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1020/build_plan.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1020/deployment_group.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1020/deployment_plan.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1020/golden_image.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1020/os_volume.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1020/plan_script.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1600.rb +39 -0
- data/lib/oneview-sdk/image-streamer/resource/api1600/artifact_bundle.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1600/build_plan.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1600/deployment_group.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1600/deployment_plan.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1600/golden_image.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1600/os_volume.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api1600/plan_script.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api300.rb +39 -0
- data/lib/oneview-sdk/image-streamer/resource/api300/artifact_bundle.rb +213 -0
- data/lib/oneview-sdk/image-streamer/resource/api300/build_plan.rb +33 -0
- data/lib/oneview-sdk/image-streamer/resource/api300/deployment_group.rb +41 -0
- data/lib/oneview-sdk/image-streamer/resource/api300/deployment_plan.rb +33 -0
- data/lib/oneview-sdk/image-streamer/resource/api300/golden_image.rb +89 -0
- data/lib/oneview-sdk/image-streamer/resource/api300/os_volume.rb +49 -0
- data/lib/oneview-sdk/image-streamer/resource/api300/plan_script.rb +42 -0
- data/lib/oneview-sdk/image-streamer/resource/api300/resource.rb +21 -0
- data/lib/oneview-sdk/image-streamer/resource/api500.rb +39 -0
- data/lib/oneview-sdk/image-streamer/resource/api500/artifact_bundle.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api500/build_plan.rb +32 -0
- data/lib/oneview-sdk/image-streamer/resource/api500/deployment_group.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api500/deployment_plan.rb +42 -0
- data/lib/oneview-sdk/image-streamer/resource/api500/golden_image.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api500/os_volume.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api500/plan_script.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api600.rb +39 -0
- data/lib/oneview-sdk/image-streamer/resource/api600/artifact_bundle.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api600/build_plan.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api600/deployment_group.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api600/deployment_plan.rb +31 -0
- data/lib/oneview-sdk/image-streamer/resource/api600/golden_image.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api600/os_volume.rb +39 -0
- data/lib/oneview-sdk/image-streamer/resource/api600/plan_script.rb +31 -0
- data/lib/oneview-sdk/image-streamer/resource/api800.rb +39 -0
- data/lib/oneview-sdk/image-streamer/resource/api800/artifact_bundle.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api800/build_plan.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api800/deployment_group.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api800/deployment_plan.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api800/golden_image.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api800/os_volume.rb +22 -0
- data/lib/oneview-sdk/image-streamer/resource/api800/plan_script.rb +22 -0
- data/lib/oneview-sdk/image_streamer.rb +68 -0
- data/lib/oneview-sdk/resource.rb +431 -0
- data/lib/oneview-sdk/resource/api1000.rb +66 -0
- data/lib/oneview-sdk/resource/api1000/c7000.rb +27 -0
- data/lib/oneview-sdk/resource/api1000/c7000/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/c7000/enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/c7000/enclosure_group.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/c7000/ethernet_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/c7000/fc_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/c7000/fcoe_network.rb +23 -0
- data/lib/oneview-sdk/resource/api1000/c7000/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/c7000/hypervisor_cluster_profile.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/c7000/hypervisor_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/c7000/interconnect.rb +23 -0
- data/lib/oneview-sdk/resource/api1000/c7000/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api1000/c7000/logical_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/c7000/logical_interconnect.rb +32 -0
- data/lib/oneview-sdk/resource/api1000/c7000/logical_interconnect_group.rb +32 -0
- data/lib/oneview-sdk/resource/api1000/c7000/network_set.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/c7000/scope.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/c7000/server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/c7000/server_hardware.rb +32 -0
- data/lib/oneview-sdk/resource/api1000/c7000/server_hardware_type.rb +32 -0
- data/lib/oneview-sdk/resource/api1000/c7000/server_profile.rb +32 -0
- data/lib/oneview-sdk/resource/api1000/c7000/server_profile_template.rb +33 -0
- data/lib/oneview-sdk/resource/api1000/c7000/storage_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/c7000/storage_system.rb +35 -0
- data/lib/oneview-sdk/resource/api1000/c7000/uplink_set.rb +32 -0
- data/lib/oneview-sdk/resource/api1000/c7000/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/c7000/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/c7000/volume_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy.rb +27 -0
- data/lib/oneview-sdk/resource/api1000/synergy/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/enclosure_group.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/ethernet_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/fc_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/fcoe_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/hypervisor_cluster_profile.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/hypervisor_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/interconnect.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api1000/synergy/logical_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/logical_interconnect.rb +32 -0
- data/lib/oneview-sdk/resource/api1000/synergy/logical_interconnect_group.rb +33 -0
- data/lib/oneview-sdk/resource/api1000/synergy/network_set.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/os_deployment_plan.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/sas_logical_interconnect_group.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/scope.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/server_hardware.rb +32 -0
- data/lib/oneview-sdk/resource/api1000/synergy/server_hardware_type.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/server_profile.rb +25 -0
- data/lib/oneview-sdk/resource/api1000/synergy/server_profile_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/storage_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/storage_system.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/uplink_set.rb +32 -0
- data/lib/oneview-sdk/resource/api1000/synergy/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api1000/synergy/volume_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1200.rb +66 -0
- data/lib/oneview-sdk/resource/api1200/c7000.rb +27 -0
- data/lib/oneview-sdk/resource/api1200/c7000/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/c7000/enclosure.rb +32 -0
- data/lib/oneview-sdk/resource/api1200/c7000/enclosure_group.rb +36 -0
- data/lib/oneview-sdk/resource/api1200/c7000/ethernet_network.rb +35 -0
- data/lib/oneview-sdk/resource/api1200/c7000/fc_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/c7000/fcoe_network.rb +23 -0
- data/lib/oneview-sdk/resource/api1200/c7000/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/c7000/hypervisor_cluster_profile.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/c7000/hypervisor_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/c7000/interconnect.rb +33 -0
- data/lib/oneview-sdk/resource/api1200/c7000/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api1200/c7000/logical_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/c7000/logical_interconnect.rb +32 -0
- data/lib/oneview-sdk/resource/api1200/c7000/logical_interconnect_group.rb +32 -0
- data/lib/oneview-sdk/resource/api1200/c7000/network_set.rb +32 -0
- data/lib/oneview-sdk/resource/api1200/c7000/scope.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/c7000/server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/c7000/server_hardware.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/c7000/server_hardware_type.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/c7000/server_profile.rb +32 -0
- data/lib/oneview-sdk/resource/api1200/c7000/server_profile_template.rb +33 -0
- data/lib/oneview-sdk/resource/api1200/c7000/storage_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/c7000/storage_system.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/c7000/uplink_set.rb +32 -0
- data/lib/oneview-sdk/resource/api1200/c7000/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/c7000/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/c7000/volume_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy.rb +27 -0
- data/lib/oneview-sdk/resource/api1200/synergy/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/enclosure.rb +32 -0
- data/lib/oneview-sdk/resource/api1200/synergy/enclosure_group.rb +36 -0
- data/lib/oneview-sdk/resource/api1200/synergy/ethernet_network.rb +35 -0
- data/lib/oneview-sdk/resource/api1200/synergy/fc_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/fcoe_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/hypervisor_cluster_profile.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/hypervisor_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/interconnect.rb +32 -0
- data/lib/oneview-sdk/resource/api1200/synergy/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api1200/synergy/logical_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/logical_interconnect.rb +32 -0
- data/lib/oneview-sdk/resource/api1200/synergy/logical_interconnect_group.rb +32 -0
- data/lib/oneview-sdk/resource/api1200/synergy/network_set.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/os_deployment_plan.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/sas_logical_interconnect_group.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/scope.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/server_hardware.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/server_hardware_type.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/server_profile.rb +25 -0
- data/lib/oneview-sdk/resource/api1200/synergy/server_profile_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/storage_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/storage_system.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/uplink_set.rb +32 -0
- data/lib/oneview-sdk/resource/api1200/synergy/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api1200/synergy/volume_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1600.rb +66 -0
- data/lib/oneview-sdk/resource/api1600/c7000.rb +27 -0
- data/lib/oneview-sdk/resource/api1600/c7000/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/enclosure_group.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/ethernet_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/fc_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/fcoe_network.rb +23 -0
- data/lib/oneview-sdk/resource/api1600/c7000/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/hypervisor_cluster_profile.rb +36 -0
- data/lib/oneview-sdk/resource/api1600/c7000/hypervisor_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/interconnect.rb +26 -0
- data/lib/oneview-sdk/resource/api1600/c7000/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api1600/c7000/logical_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/logical_interconnect.rb +32 -0
- data/lib/oneview-sdk/resource/api1600/c7000/logical_interconnect_group.rb +36 -0
- data/lib/oneview-sdk/resource/api1600/c7000/network_set.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/scope.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/server_hardware.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/server_hardware_type.rb +25 -0
- data/lib/oneview-sdk/resource/api1600/c7000/server_profile.rb +40 -0
- data/lib/oneview-sdk/resource/api1600/c7000/server_profile_template.rb +32 -0
- data/lib/oneview-sdk/resource/api1600/c7000/storage_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/storage_system.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/uplink_set.rb +32 -0
- data/lib/oneview-sdk/resource/api1600/c7000/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/c7000/volume_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy.rb +27 -0
- data/lib/oneview-sdk/resource/api1600/synergy/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/enclosure_group.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/ethernet_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/fc_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/fcoe_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/hypervisor_cluster_profile.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/hypervisor_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/interconnect.rb +25 -0
- data/lib/oneview-sdk/resource/api1600/synergy/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api1600/synergy/logical_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/logical_interconnect.rb +32 -0
- data/lib/oneview-sdk/resource/api1600/synergy/logical_interconnect_group.rb +36 -0
- data/lib/oneview-sdk/resource/api1600/synergy/network_set.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/os_deployment_plan.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/scope.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/server_hardware.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/server_hardware_type.rb +25 -0
- data/lib/oneview-sdk/resource/api1600/synergy/server_profile.rb +25 -0
- data/lib/oneview-sdk/resource/api1600/synergy/server_profile_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/storage_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/storage_system.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/uplink_set.rb +32 -0
- data/lib/oneview-sdk/resource/api1600/synergy/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api1600/synergy/volume_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1800.rb +66 -0
- data/lib/oneview-sdk/resource/api1800/c7000.rb +27 -0
- data/lib/oneview-sdk/resource/api1800/c7000/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/enclosure_group.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/ethernet_network.rb +28 -0
- data/lib/oneview-sdk/resource/api1800/c7000/fc_network.rb +28 -0
- data/lib/oneview-sdk/resource/api1800/c7000/fcoe_network.rb +28 -0
- data/lib/oneview-sdk/resource/api1800/c7000/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/hypervisor_cluster_profile.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/hypervisor_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/interconnect.rb +26 -0
- data/lib/oneview-sdk/resource/api1800/c7000/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api1800/c7000/logical_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/logical_interconnect.rb +42 -0
- data/lib/oneview-sdk/resource/api1800/c7000/logical_interconnect_group.rb +25 -0
- data/lib/oneview-sdk/resource/api1800/c7000/network_set.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/scope.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/server_hardware.rb +51 -0
- data/lib/oneview-sdk/resource/api1800/c7000/server_hardware_type.rb +25 -0
- data/lib/oneview-sdk/resource/api1800/c7000/server_profile.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/server_profile_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/storage_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/storage_system.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/uplink_set.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/c7000/volume_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy.rb +27 -0
- data/lib/oneview-sdk/resource/api1800/synergy/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/enclosure_group.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/ethernet_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/fc_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/fcoe_network.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/hypervisor_cluster_profile.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/hypervisor_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/interconnect.rb +25 -0
- data/lib/oneview-sdk/resource/api1800/synergy/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api1800/synergy/logical_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/logical_interconnect.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/logical_interconnect_group.rb +25 -0
- data/lib/oneview-sdk/resource/api1800/synergy/network_set.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/os_deployment_plan.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/scope.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/server_hardware.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/server_hardware_type.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/server_profile.rb +25 -0
- data/lib/oneview-sdk/resource/api1800/synergy/server_profile_template.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/storage_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/storage_system.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/uplink_set.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api1800/synergy/volume_template.rb +22 -0
- data/lib/oneview-sdk/resource/api200.rb +34 -0
- data/lib/oneview-sdk/resource/api200/alerts.rb +39 -0
- data/lib/oneview-sdk/resource/api200/client_certificate.rb +134 -0
- data/lib/oneview-sdk/resource/api200/connection_template.rb +53 -0
- data/lib/oneview-sdk/resource/api200/datacenter.rb +81 -0
- data/lib/oneview-sdk/resource/api200/enclosure.rb +192 -0
- data/lib/oneview-sdk/resource/api200/enclosure_group.rb +93 -0
- data/lib/oneview-sdk/resource/api200/ethernet_network.rb +60 -0
- data/lib/oneview-sdk/resource/api200/event.rb +43 -0
- data/lib/oneview-sdk/resource/api200/fabric.rb +45 -0
- data/lib/oneview-sdk/resource/api200/fc_network.rb +34 -0
- data/lib/oneview-sdk/resource/api200/fcoe_network.rb +32 -0
- data/lib/oneview-sdk/resource/api200/firmware_bundle.rb +31 -0
- data/lib/oneview-sdk/resource/api200/firmware_driver.rb +37 -0
- data/lib/oneview-sdk/resource/api200/id_pool.rb +124 -0
- data/lib/oneview-sdk/resource/api200/interconnect.rb +114 -0
- data/lib/oneview-sdk/resource/api200/lig_uplink_set.rb +106 -0
- data/lib/oneview-sdk/resource/api200/logical_downlink.rb +57 -0
- data/lib/oneview-sdk/resource/api200/logical_enclosure.rb +88 -0
- data/lib/oneview-sdk/resource/api200/logical_interconnect.rb +267 -0
- data/lib/oneview-sdk/resource/api200/logical_interconnect_group.rb +134 -0
- data/lib/oneview-sdk/resource/api200/logical_switch.rb +188 -0
- data/lib/oneview-sdk/resource/api200/logical_switch_group.rb +70 -0
- data/lib/oneview-sdk/resource/api200/login_detail.rb +27 -0
- data/lib/oneview-sdk/resource/api200/managed_san.rb +83 -0
- data/lib/oneview-sdk/resource/api200/network_set.rb +68 -0
- data/lib/oneview-sdk/resource/api200/power_device.rb +178 -0
- data/lib/oneview-sdk/resource/api200/rack.rb +95 -0
- data/lib/oneview-sdk/resource/api200/resource.rb +18 -0
- data/lib/oneview-sdk/resource/api200/san_manager.rb +92 -0
- data/lib/oneview-sdk/resource/api200/server_hardware.rb +250 -0
- data/lib/oneview-sdk/resource/api200/server_hardware_type.rb +61 -0
- data/lib/oneview-sdk/resource/api200/server_profile.rb +396 -0
- data/lib/oneview-sdk/resource/api200/server_profile_template.rb +227 -0
- data/lib/oneview-sdk/resource/api200/storage_pool.rb +99 -0
- data/lib/oneview-sdk/resource/api200/storage_system.rb +159 -0
- data/lib/oneview-sdk/resource/api200/switch.rb +85 -0
- data/lib/oneview-sdk/resource/api200/unmanaged_device.rb +59 -0
- data/lib/oneview-sdk/resource/api200/uplink_set.rb +92 -0
- data/lib/oneview-sdk/resource/api200/user.rb +98 -0
- data/lib/oneview-sdk/resource/api200/version.rb +27 -0
- data/lib/oneview-sdk/resource/api200/volume.rb +191 -0
- data/lib/oneview-sdk/resource/api200/volume_attachment.rb +85 -0
- data/lib/oneview-sdk/resource/api200/volume_snapshot.rb +50 -0
- data/lib/oneview-sdk/resource/api200/volume_template.rb +96 -0
- data/lib/oneview-sdk/resource/api200/web_server_certificate.rb +97 -0
- data/lib/oneview-sdk/resource/api2000.rb +66 -0
- data/lib/oneview-sdk/resource/api2000/c7000.rb +27 -0
- data/lib/oneview-sdk/resource/api2000/c7000/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/enclosure_group.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/ethernet_network.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/fc_network.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/fcoe_network.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/hypervisor_cluster_profile.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/hypervisor_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/interconnect.rb +26 -0
- data/lib/oneview-sdk/resource/api2000/c7000/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api2000/c7000/logical_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/logical_interconnect.rb +33 -0
- data/lib/oneview-sdk/resource/api2000/c7000/logical_interconnect_group.rb +25 -0
- data/lib/oneview-sdk/resource/api2000/c7000/network_set.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/scope.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/server_hardware.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/server_hardware_type.rb +25 -0
- data/lib/oneview-sdk/resource/api2000/c7000/server_profile.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/server_profile_template.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/storage_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/storage_system.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/uplink_set.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/c7000/volume_template.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy.rb +27 -0
- data/lib/oneview-sdk/resource/api2000/synergy/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/enclosure_group.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/ethernet_network.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/fc_network.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/fcoe_network.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/hypervisor_cluster_profile.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/hypervisor_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/interconnect.rb +25 -0
- data/lib/oneview-sdk/resource/api2000/synergy/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api2000/synergy/logical_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/logical_interconnect.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/logical_interconnect_group.rb +25 -0
- data/lib/oneview-sdk/resource/api2000/synergy/network_set.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/os_deployment_plan.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/scope.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/server_hardware.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/server_hardware_type.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/server_profile.rb +25 -0
- data/lib/oneview-sdk/resource/api2000/synergy/server_profile_template.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/storage_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/storage_system.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/uplink_set.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api2000/synergy/volume_template.rb +22 -0
- data/lib/oneview-sdk/resource/api300.rb +66 -0
- data/lib/oneview-sdk/resource/api300/c7000.rb +27 -0
- data/lib/oneview-sdk/resource/api300/c7000/alerts.rb +22 -0
- data/lib/oneview-sdk/resource/api300/c7000/client_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api300/c7000/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api300/c7000/datacenter.rb +22 -0
- data/lib/oneview-sdk/resource/api300/c7000/enclosure.rb +36 -0
- data/lib/oneview-sdk/resource/api300/c7000/enclosure_group.rb +89 -0
- data/lib/oneview-sdk/resource/api300/c7000/ethernet_network.rb +37 -0
- data/lib/oneview-sdk/resource/api300/c7000/event.rb +22 -0
- data/lib/oneview-sdk/resource/api300/c7000/fabric.rb +22 -0
- data/lib/oneview-sdk/resource/api300/c7000/fc_network.rb +39 -0
- data/lib/oneview-sdk/resource/api300/c7000/fcoe_network.rb +37 -0
- data/lib/oneview-sdk/resource/api300/c7000/firmware_bundle.rb +21 -0
- data/lib/oneview-sdk/resource/api300/c7000/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api300/c7000/id_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api300/c7000/interconnect.rb +33 -0
- data/lib/oneview-sdk/resource/api300/c7000/internal_link_set.rb +58 -0
- data/lib/oneview-sdk/resource/api300/c7000/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api300/c7000/logical_downlink.rb +34 -0
- data/lib/oneview-sdk/resource/api300/c7000/logical_enclosure.rb +37 -0
- data/lib/oneview-sdk/resource/api300/c7000/logical_interconnect.rb +45 -0
- data/lib/oneview-sdk/resource/api300/c7000/logical_interconnect_group.rb +35 -0
- data/lib/oneview-sdk/resource/api300/c7000/logical_switch.rb +36 -0
- data/lib/oneview-sdk/resource/api300/c7000/logical_switch_group.rb +35 -0
- data/lib/oneview-sdk/resource/api300/c7000/login_detail.rb +23 -0
- data/lib/oneview-sdk/resource/api300/c7000/managed_san.rb +36 -0
- data/lib/oneview-sdk/resource/api300/c7000/network_set.rb +39 -0
- data/lib/oneview-sdk/resource/api300/c7000/power_device.rb +21 -0
- data/lib/oneview-sdk/resource/api300/c7000/rack.rb +22 -0
- data/lib/oneview-sdk/resource/api300/c7000/resource.rb +21 -0
- data/lib/oneview-sdk/resource/api300/c7000/san_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api300/c7000/scope.rb +140 -0
- data/lib/oneview-sdk/resource/api300/c7000/server_hardware.rb +67 -0
- data/lib/oneview-sdk/resource/api300/c7000/server_hardware_type.rb +21 -0
- data/lib/oneview-sdk/resource/api300/c7000/server_profile.rb +33 -0
- data/lib/oneview-sdk/resource/api300/c7000/server_profile_template.rb +50 -0
- data/lib/oneview-sdk/resource/api300/c7000/storage_pool.rb +29 -0
- data/lib/oneview-sdk/resource/api300/c7000/storage_system.rb +21 -0
- data/lib/oneview-sdk/resource/api300/c7000/switch.rb +43 -0
- data/lib/oneview-sdk/resource/api300/c7000/unmanaged_device.rb +22 -0
- data/lib/oneview-sdk/resource/api300/c7000/uplink_set.rb +33 -0
- data/lib/oneview-sdk/resource/api300/c7000/user.rb +22 -0
- data/lib/oneview-sdk/resource/api300/c7000/version.rb +23 -0
- data/lib/oneview-sdk/resource/api300/c7000/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api300/c7000/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api300/c7000/volume_snapshot.rb +21 -0
- data/lib/oneview-sdk/resource/api300/c7000/volume_template.rb +32 -0
- data/lib/oneview-sdk/resource/api300/c7000/web_server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy.rb +27 -0
- data/lib/oneview-sdk/resource/api300/synergy/alerts.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/client_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/datacenter.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/drive_enclosure.rb +71 -0
- data/lib/oneview-sdk/resource/api300/synergy/enclosure.rb +83 -0
- data/lib/oneview-sdk/resource/api300/synergy/enclosure_group.rb +40 -0
- data/lib/oneview-sdk/resource/api300/synergy/ethernet_network.rb +37 -0
- data/lib/oneview-sdk/resource/api300/synergy/event.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/fabric.rb +46 -0
- data/lib/oneview-sdk/resource/api300/synergy/fc_network.rb +39 -0
- data/lib/oneview-sdk/resource/api300/synergy/fcoe_network.rb +24 -0
- data/lib/oneview-sdk/resource/api300/synergy/firmware_bundle.rb +21 -0
- data/lib/oneview-sdk/resource/api300/synergy/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/id_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/interconnect.rb +53 -0
- data/lib/oneview-sdk/resource/api300/synergy/internal_link_set.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api300/synergy/logical_downlink.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/logical_enclosure.rb +59 -0
- data/lib/oneview-sdk/resource/api300/synergy/logical_interconnect.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/logical_interconnect_group.rb +122 -0
- data/lib/oneview-sdk/resource/api300/synergy/login_detail.rb +23 -0
- data/lib/oneview-sdk/resource/api300/synergy/managed_san.rb +23 -0
- data/lib/oneview-sdk/resource/api300/synergy/network_set.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/os_deployment_plan.rb +41 -0
- data/lib/oneview-sdk/resource/api300/synergy/power_device.rb +21 -0
- data/lib/oneview-sdk/resource/api300/synergy/rack.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/resource.rb +21 -0
- data/lib/oneview-sdk/resource/api300/synergy/san_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/sas_interconnect.rb +87 -0
- data/lib/oneview-sdk/resource/api300/synergy/sas_logical_interconnect.rb +103 -0
- data/lib/oneview-sdk/resource/api300/synergy/sas_logical_interconnect_group.rb +87 -0
- data/lib/oneview-sdk/resource/api300/synergy/scope.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/server_hardware.rb +30 -0
- data/lib/oneview-sdk/resource/api300/synergy/server_hardware_type.rb +21 -0
- data/lib/oneview-sdk/resource/api300/synergy/server_profile.rb +88 -0
- data/lib/oneview-sdk/resource/api300/synergy/server_profile_template.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/storage_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/storage_system.rb +21 -0
- data/lib/oneview-sdk/resource/api300/synergy/switch.rb +37 -0
- data/lib/oneview-sdk/resource/api300/synergy/unmanaged_device.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/uplink_set.rb +33 -0
- data/lib/oneview-sdk/resource/api300/synergy/user.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/version.rb +23 -0
- data/lib/oneview-sdk/resource/api300/synergy/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api300/synergy/volume_snapshot.rb +21 -0
- data/lib/oneview-sdk/resource/api300/synergy/volume_template.rb +32 -0
- data/lib/oneview-sdk/resource/api300/synergy/web_server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api500.rb +66 -0
- data/lib/oneview-sdk/resource/api500/c7000.rb +27 -0
- data/lib/oneview-sdk/resource/api500/c7000/alerts.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/client_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/datacenter.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/enclosure.rb +57 -0
- data/lib/oneview-sdk/resource/api500/c7000/enclosure_group.rb +43 -0
- data/lib/oneview-sdk/resource/api500/c7000/ethernet_network.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/event.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/fabric.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/fc_network.rb +24 -0
- data/lib/oneview-sdk/resource/api500/c7000/fcoe_network.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/firmware_bundle.rb +21 -0
- data/lib/oneview-sdk/resource/api500/c7000/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/id_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/interconnect.rb +31 -0
- data/lib/oneview-sdk/resource/api500/c7000/internal_link_set.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api500/c7000/logical_downlink.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/logical_enclosure.rb +62 -0
- data/lib/oneview-sdk/resource/api500/c7000/logical_interconnect.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/logical_interconnect_group.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/logical_switch.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/logical_switch_group.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/login_detail.rb +23 -0
- data/lib/oneview-sdk/resource/api500/c7000/managed_san.rb +32 -0
- data/lib/oneview-sdk/resource/api500/c7000/network_set.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/power_device.rb +21 -0
- data/lib/oneview-sdk/resource/api500/c7000/rack.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/resource.rb +21 -0
- data/lib/oneview-sdk/resource/api500/c7000/san_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/scope.rb +71 -0
- data/lib/oneview-sdk/resource/api500/c7000/server_hardware.rb +42 -0
- data/lib/oneview-sdk/resource/api500/c7000/server_hardware_type.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/server_profile.rb +81 -0
- data/lib/oneview-sdk/resource/api500/c7000/server_profile_template.rb +108 -0
- data/lib/oneview-sdk/resource/api500/c7000/storage_pool.rb +116 -0
- data/lib/oneview-sdk/resource/api500/c7000/storage_system.rb +154 -0
- data/lib/oneview-sdk/resource/api500/c7000/switch.rb +29 -0
- data/lib/oneview-sdk/resource/api500/c7000/unmanaged_device.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/uplink_set.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/user.rb +22 -0
- data/lib/oneview-sdk/resource/api500/c7000/version.rb +23 -0
- data/lib/oneview-sdk/resource/api500/c7000/volume.rb +221 -0
- data/lib/oneview-sdk/resource/api500/c7000/volume_attachment.rb +45 -0
- data/lib/oneview-sdk/resource/api500/c7000/volume_snapshot.rb +32 -0
- data/lib/oneview-sdk/resource/api500/c7000/volume_template.rb +111 -0
- data/lib/oneview-sdk/resource/api500/c7000/web_server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy.rb +27 -0
- data/lib/oneview-sdk/resource/api500/synergy/alerts.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/client_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/datacenter.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/drive_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/enclosure.rb +57 -0
- data/lib/oneview-sdk/resource/api500/synergy/enclosure_group.rb +49 -0
- data/lib/oneview-sdk/resource/api500/synergy/ethernet_network.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/event.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/fabric.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/fc_network.rb +24 -0
- data/lib/oneview-sdk/resource/api500/synergy/fcoe_network.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/firmware_bundle.rb +21 -0
- data/lib/oneview-sdk/resource/api500/synergy/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/id_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/interconnect.rb +38 -0
- data/lib/oneview-sdk/resource/api500/synergy/internal_link_set.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api500/synergy/logical_downlink.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/logical_enclosure.rb +39 -0
- data/lib/oneview-sdk/resource/api500/synergy/logical_interconnect.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/logical_interconnect_group.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/login_detail.rb +23 -0
- data/lib/oneview-sdk/resource/api500/synergy/managed_san.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/network_set.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/os_deployment_plan.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/power_device.rb +21 -0
- data/lib/oneview-sdk/resource/api500/synergy/rack.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/resource.rb +21 -0
- data/lib/oneview-sdk/resource/api500/synergy/san_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/sas_interconnect.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/sas_logical_interconnect.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/sas_logical_interconnect_group.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/scope.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/server_hardware.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/server_hardware_type.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/server_profile.rb +25 -0
- data/lib/oneview-sdk/resource/api500/synergy/server_profile_template.rb +36 -0
- data/lib/oneview-sdk/resource/api500/synergy/storage_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/storage_system.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/switch.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/unmanaged_device.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/uplink_set.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/user.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/version.rb +23 -0
- data/lib/oneview-sdk/resource/api500/synergy/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/volume_snapshot.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/volume_template.rb +22 -0
- data/lib/oneview-sdk/resource/api500/synergy/web_server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api600.rb +66 -0
- data/lib/oneview-sdk/resource/api600/c7000.rb +27 -0
- data/lib/oneview-sdk/resource/api600/c7000/alerts.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/client_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/datacenter.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/enclosure.rb +71 -0
- data/lib/oneview-sdk/resource/api600/c7000/enclosure_group.rb +39 -0
- data/lib/oneview-sdk/resource/api600/c7000/ethernet_network.rb +47 -0
- data/lib/oneview-sdk/resource/api600/c7000/event.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/fabric.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/fc_network.rb +35 -0
- data/lib/oneview-sdk/resource/api600/c7000/fcoe_network.rb +33 -0
- data/lib/oneview-sdk/resource/api600/c7000/firmware_bundle.rb +21 -0
- data/lib/oneview-sdk/resource/api600/c7000/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/id_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/interconnect.rb +34 -0
- data/lib/oneview-sdk/resource/api600/c7000/internal_link_set.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api600/c7000/logical_downlink.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/logical_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/logical_interconnect.rb +39 -0
- data/lib/oneview-sdk/resource/api600/c7000/logical_interconnect_group.rb +33 -0
- data/lib/oneview-sdk/resource/api600/c7000/logical_switch.rb +32 -0
- data/lib/oneview-sdk/resource/api600/c7000/logical_switch_group.rb +32 -0
- data/lib/oneview-sdk/resource/api600/c7000/login_detail.rb +23 -0
- data/lib/oneview-sdk/resource/api600/c7000/managed_san.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/network_set.rb +32 -0
- data/lib/oneview-sdk/resource/api600/c7000/power_device.rb +21 -0
- data/lib/oneview-sdk/resource/api600/c7000/rack.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/resource.rb +21 -0
- data/lib/oneview-sdk/resource/api600/c7000/san_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/scope.rb +103 -0
- data/lib/oneview-sdk/resource/api600/c7000/server_certificate.rb +63 -0
- data/lib/oneview-sdk/resource/api600/c7000/server_hardware.rb +44 -0
- data/lib/oneview-sdk/resource/api600/c7000/server_hardware_type.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/server_profile.rb +82 -0
- data/lib/oneview-sdk/resource/api600/c7000/server_profile_template.rb +49 -0
- data/lib/oneview-sdk/resource/api600/c7000/storage_pool.rb +32 -0
- data/lib/oneview-sdk/resource/api600/c7000/storage_system.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/switch.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/unmanaged_device.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/uplink_set.rb +33 -0
- data/lib/oneview-sdk/resource/api600/c7000/user.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/version.rb +23 -0
- data/lib/oneview-sdk/resource/api600/c7000/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api600/c7000/volume_attachment.rb +45 -0
- data/lib/oneview-sdk/resource/api600/c7000/volume_snapshot.rb +32 -0
- data/lib/oneview-sdk/resource/api600/c7000/volume_template.rb +34 -0
- data/lib/oneview-sdk/resource/api600/c7000/web_server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy.rb +27 -0
- data/lib/oneview-sdk/resource/api600/synergy/alerts.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/client_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/datacenter.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/drive_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/enclosure.rb +71 -0
- data/lib/oneview-sdk/resource/api600/synergy/enclosure_group.rb +41 -0
- data/lib/oneview-sdk/resource/api600/synergy/ethernet_network.rb +47 -0
- data/lib/oneview-sdk/resource/api600/synergy/event.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/fabric.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/fc_network.rb +35 -0
- data/lib/oneview-sdk/resource/api600/synergy/fcoe_network.rb +33 -0
- data/lib/oneview-sdk/resource/api600/synergy/firmware_bundle.rb +21 -0
- data/lib/oneview-sdk/resource/api600/synergy/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/id_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/interconnect.rb +38 -0
- data/lib/oneview-sdk/resource/api600/synergy/internal_link_set.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api600/synergy/logical_downlink.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/logical_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/logical_interconnect.rb +39 -0
- data/lib/oneview-sdk/resource/api600/synergy/logical_interconnect_group.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/login_detail.rb +23 -0
- data/lib/oneview-sdk/resource/api600/synergy/managed_san.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/network_set.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/os_deployment_plan.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/power_device.rb +21 -0
- data/lib/oneview-sdk/resource/api600/synergy/rack.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/resource.rb +21 -0
- data/lib/oneview-sdk/resource/api600/synergy/san_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/sas_interconnect.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/sas_logical_interconnect.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/sas_logical_interconnect_group.rb +33 -0
- data/lib/oneview-sdk/resource/api600/synergy/scope.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/server_hardware.rb +33 -0
- data/lib/oneview-sdk/resource/api600/synergy/server_hardware_type.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/server_profile.rb +25 -0
- data/lib/oneview-sdk/resource/api600/synergy/server_profile_template.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/storage_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/storage_system.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/switch.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/unmanaged_device.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/uplink_set.rb +33 -0
- data/lib/oneview-sdk/resource/api600/synergy/user.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/version.rb +23 -0
- data/lib/oneview-sdk/resource/api600/synergy/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/volume_snapshot.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/volume_template.rb +22 -0
- data/lib/oneview-sdk/resource/api600/synergy/web_server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api800.rb +66 -0
- data/lib/oneview-sdk/resource/api800/c7000.rb +27 -0
- data/lib/oneview-sdk/resource/api800/c7000/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/enclosure_group.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/ethernet_network.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/fc_network.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/fcoe_network.rb +23 -0
- data/lib/oneview-sdk/resource/api800/c7000/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/hypervisor_cluster_profile.rb +39 -0
- data/lib/oneview-sdk/resource/api800/c7000/hypervisor_manager.rb +33 -0
- data/lib/oneview-sdk/resource/api800/c7000/interconnect.rb +23 -0
- data/lib/oneview-sdk/resource/api800/c7000/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api800/c7000/logical_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/logical_interconnect.rb +32 -0
- data/lib/oneview-sdk/resource/api800/c7000/logical_interconnect_group.rb +32 -0
- data/lib/oneview-sdk/resource/api800/c7000/network_set.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/scope.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/server_hardware.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/server_hardware_type.rb +32 -0
- data/lib/oneview-sdk/resource/api800/c7000/server_profile.rb +32 -0
- data/lib/oneview-sdk/resource/api800/c7000/server_profile_template.rb +33 -0
- data/lib/oneview-sdk/resource/api800/c7000/storage_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/storage_system.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/uplink_set.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api800/c7000/volume_template.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy.rb +27 -0
- data/lib/oneview-sdk/resource/api800/synergy/connection_template.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/enclosure_group.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/ethernet_network.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/fc_network.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/fcoe_network.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/firmware_driver.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/hypervisor_cluster_profile.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/hypervisor_manager.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/interconnect.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/lig_uplink_set.rb +21 -0
- data/lib/oneview-sdk/resource/api800/synergy/logical_enclosure.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/logical_interconnect.rb +32 -0
- data/lib/oneview-sdk/resource/api800/synergy/logical_interconnect_group.rb +33 -0
- data/lib/oneview-sdk/resource/api800/synergy/network_set.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/os_deployment_plan.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/sas_logical_interconnect_group.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/scope.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/server_certificate.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/server_hardware.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/server_hardware_type.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/server_profile.rb +25 -0
- data/lib/oneview-sdk/resource/api800/synergy/server_profile_template.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/storage_pool.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/storage_system.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/uplink_set.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/volume.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/volume_attachment.rb +22 -0
- data/lib/oneview-sdk/resource/api800/synergy/volume_template.rb +22 -0
- data/lib/oneview-sdk/resource_helper.rb +44 -0
- data/lib/oneview-sdk/rest.rb +292 -0
- data/lib/oneview-sdk/scmb.rb +71 -0
- data/lib/oneview-sdk/ssl_helper.rb +87 -0
- data/lib/oneview-sdk/version.rb +15 -0
- data/oneview-sdk.gemspec +48 -0
- metadata +1012 -0
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# (c) Copyright 2020 Hewlett Packard Enterprise Development LP
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
#
|
|
7
|
+
# Unless required by applicable law or agreed to in writing, software distributed
|
|
8
|
+
# under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
|
|
9
|
+
# CONDITIONS OF ANY KIND, either express or implied. See the License for the specific
|
|
10
|
+
# language governing permissions and limitations under the License.
|
|
11
|
+
|
|
12
|
+
require_relative 'version'
|
|
13
|
+
require_relative 'exceptions'
|
|
14
|
+
require_relative 'image-streamer/client'
|
|
15
|
+
require_relative 'resource'
|
|
16
|
+
Dir[File.dirname(__FILE__) + '/image-streamer/resource/*.rb'].each { |file| require file }
|
|
17
|
+
|
|
18
|
+
# Module for interacting with the HPE OneView API
|
|
19
|
+
module OneviewSDK
|
|
20
|
+
# Module for interacting with the Image Streamer
|
|
21
|
+
module ImageStreamer
|
|
22
|
+
SUPPORTED_API_VERSIONS = [300, 500, 600, 800, 1000, 1020, 1600].freeze
|
|
23
|
+
DEFAULT_API_VERSION = 300
|
|
24
|
+
@api_version = DEFAULT_API_VERSION
|
|
25
|
+
@api_version_updated = false # Whether or not the API version has been set by the user
|
|
26
|
+
|
|
27
|
+
# Get the current API version
|
|
28
|
+
def self.api_version
|
|
29
|
+
@api_version
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# Set the default API version
|
|
33
|
+
def self.api_version=(version)
|
|
34
|
+
version = version.to_i rescue version
|
|
35
|
+
raise "API version #{version} is not supported!" unless SUPPORTED_API_VERSIONS.include?(version)
|
|
36
|
+
raise "The module for API version #{@api_version} is undefined" unless constants.include?("API#{@api_version}".to_sym)
|
|
37
|
+
@api_version_updated = true
|
|
38
|
+
@api_version = version
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
# Has the API version been set by the user?
|
|
42
|
+
# @return [TrueClass, FalseClass]
|
|
43
|
+
def self.api_version_updated?
|
|
44
|
+
@api_version_updated
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
# Helps redirect resources to the correct API module for Image Streamer
|
|
48
|
+
def self.const_missing(const)
|
|
49
|
+
api_module = OneviewSDK::ImageStreamer.const_get("API#{@api_version}")
|
|
50
|
+
api_module.const_get(const)
|
|
51
|
+
rescue NameError
|
|
52
|
+
raise NameError, "The #{const} method or resource does not exist for Image Streamer API version #{@api_version}."
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
# Get resource class that matches the type given
|
|
56
|
+
# @param [String] type Name of the desired class type
|
|
57
|
+
# @param [Fixnum] api_ver API module version to fetch resource from
|
|
58
|
+
# @param [String] variant API module variant to fetch resource from
|
|
59
|
+
# @return [Class] Resource class or nil if not found
|
|
60
|
+
def self.resource_named(type, api_ver = @api_version, variant = nil)
|
|
61
|
+
unless SUPPORTED_API_VERSIONS.include?(api_ver)
|
|
62
|
+
raise UnsupportedVersion, "API version #{api_ver} is not supported! Try one of: #{SUPPORTED_API_VERSIONS}"
|
|
63
|
+
end
|
|
64
|
+
api_module = OneviewSDK::ImageStreamer.const_get("API#{api_ver}")
|
|
65
|
+
variant ? api_module.resource_named(type, variant) : api_module.resource_named(type)
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
@@ -0,0 +1,431 @@
|
|
|
1
|
+
# (C) Copyright 2016 Hewlett Packard Enterprise Development LP
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# You may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
#
|
|
7
|
+
# Unless required by applicable law or agreed to in writing, software distributed
|
|
8
|
+
# under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
|
|
9
|
+
# CONDITIONS OF ANY KIND, either express or implied. See the License for the specific
|
|
10
|
+
# language governing permissions and limitations under the License.
|
|
11
|
+
|
|
12
|
+
require_relative 'client'
|
|
13
|
+
require_relative 'image-streamer/client'
|
|
14
|
+
|
|
15
|
+
# OneviewSDK Resources
|
|
16
|
+
module OneviewSDK
|
|
17
|
+
# Resource base class that defines all common resource functionality.
|
|
18
|
+
class Resource
|
|
19
|
+
BASE_URI = '/rest'.freeze
|
|
20
|
+
UNIQUE_IDENTIFIERS = %w[name uri].freeze # Ordered list of unique attributes to search by
|
|
21
|
+
DEFAULT_REQUEST_HEADER = {}.freeze
|
|
22
|
+
|
|
23
|
+
attr_accessor \
|
|
24
|
+
:client,
|
|
25
|
+
:data,
|
|
26
|
+
:api_version,
|
|
27
|
+
:logger
|
|
28
|
+
|
|
29
|
+
# Create a resource object, associate it with a client, and set its properties.
|
|
30
|
+
# @param [OneviewSDK::Client] client The client object for the OneView appliance
|
|
31
|
+
# @param [Hash] params The options for this resource (key-value pairs)
|
|
32
|
+
# @param [Integer] api_ver The api version to use when interracting with this resource.
|
|
33
|
+
# Defaults to the client.api_version if it exists, or Appliance's max API version to be used by default for requests
|
|
34
|
+
def initialize(client, params = {}, api_ver = nil)
|
|
35
|
+
raise InvalidClient, 'Must specify a valid client'\
|
|
36
|
+
unless client.is_a?(OneviewSDK::Client) || client.is_a?(OneviewSDK::ImageStreamer::Client)
|
|
37
|
+
@client = client
|
|
38
|
+
@logger = @client.logger
|
|
39
|
+
@api_version = api_ver || @client.api_version
|
|
40
|
+
if @api_version > @client.max_api_version
|
|
41
|
+
raise UnsupportedVersion,
|
|
42
|
+
"#{self.class.name} api_version '#{@api_version}' is greater than the client's max_api_version '#{@client.max_api_version}'"
|
|
43
|
+
end
|
|
44
|
+
@data ||= {}
|
|
45
|
+
set_all(params)
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
# Retrieve resource details based on this resource's name or URI.
|
|
49
|
+
# @note one of the UNIQUE_IDENTIFIERS, e.g. name or uri, must be specified in the resource
|
|
50
|
+
# @param [Hash] header The header options for the request (key-value pairs)
|
|
51
|
+
# @return [Boolean] Whether or not retrieve was successful
|
|
52
|
+
def retrieve!(header = self.class::DEFAULT_REQUEST_HEADER)
|
|
53
|
+
retrieval_keys = self.class::UNIQUE_IDENTIFIERS.reject { |k| @data[k].nil? }
|
|
54
|
+
raise IncompleteResource, "Must set resource #{self.class::UNIQUE_IDENTIFIERS.join(' or ')} before trying to retrieve!" if retrieval_keys.empty?
|
|
55
|
+
retrieval_keys.each do |k|
|
|
56
|
+
results = self.class.find_by(@client, { k => @data[k] }, self.class::BASE_URI, header)
|
|
57
|
+
next if results.size != 1
|
|
58
|
+
set_all(results[0].data)
|
|
59
|
+
return true
|
|
60
|
+
end
|
|
61
|
+
false
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
# Check if a resource exists
|
|
65
|
+
# @note one of the UNIQUE_IDENTIFIERS, e.g. name or uri, must be specified in the resource
|
|
66
|
+
# @param [Hash] header The header options for the request (key-value pairs)
|
|
67
|
+
# @return [Boolean] Whether or not resource exists
|
|
68
|
+
def exists?(header = self.class::DEFAULT_REQUEST_HEADER)
|
|
69
|
+
retrieval_keys = self.class::UNIQUE_IDENTIFIERS.reject { |k| @data[k].nil? }
|
|
70
|
+
raise IncompleteResource, "Must set resource #{self.class::UNIQUE_IDENTIFIERS.join(' or ')} before trying to retrieve!" if retrieval_keys.empty?
|
|
71
|
+
retrieval_keys.each do |k|
|
|
72
|
+
results = self.class.find_by(@client, { k => @data[k] }, self.class::BASE_URI, header)
|
|
73
|
+
return true if results.size == 1
|
|
74
|
+
end
|
|
75
|
+
false
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
# Merges the first hash data structure with the second
|
|
79
|
+
# @note both arguments should be a Ruby Hash object.
|
|
80
|
+
# The second hash should have strings as a keys.
|
|
81
|
+
# This method will change the second argument.
|
|
82
|
+
# @raise [StandardError] if the arguments, or one them, is not a Hash object
|
|
83
|
+
def deep_merge!(other_data, target_data = @data)
|
|
84
|
+
raise 'Both arguments should be a object Hash' unless other_data.is_a?(Hash) && target_data.is_a?(Hash)
|
|
85
|
+
other_data.each do |key, value|
|
|
86
|
+
value_target = target_data[key.to_s]
|
|
87
|
+
if value_target.is_a?(Hash) && value.is_a?(Hash)
|
|
88
|
+
deep_merge!(value, value_target)
|
|
89
|
+
else
|
|
90
|
+
target_data[key.to_s] = value
|
|
91
|
+
end
|
|
92
|
+
end
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
# Set the given hash of key-value pairs as resource data attributes
|
|
96
|
+
# @param [Hash, Resource] params The options for this resource (key-value pairs or resource object)
|
|
97
|
+
# @note All top-level keys will be converted to strings
|
|
98
|
+
# @return [Resource] self
|
|
99
|
+
def set_all(params = self.class::DEFAULT_REQUEST_HEADER)
|
|
100
|
+
params = params.data if params.class <= Resource
|
|
101
|
+
params = Hash[params.map { |(k, v)| [k.to_s, v] }]
|
|
102
|
+
params.each { |key, value| set(key.to_s, value) }
|
|
103
|
+
self
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
# Set a resource attribute with the given value and call any validation method if necessary
|
|
107
|
+
# @param [String] key attribute name
|
|
108
|
+
# @param value value to assign to the given attribute
|
|
109
|
+
# @note Keys will be converted to strings
|
|
110
|
+
def set(key, value)
|
|
111
|
+
method_name = "validate_#{key}"
|
|
112
|
+
send(method_name.to_sym, value) if respond_to?(method_name.to_sym)
|
|
113
|
+
@data[key.to_s] = value
|
|
114
|
+
end
|
|
115
|
+
|
|
116
|
+
# Run block once for each data key-value pair
|
|
117
|
+
def each(&block)
|
|
118
|
+
@data.each(&block)
|
|
119
|
+
end
|
|
120
|
+
|
|
121
|
+
# Access data using hash syntax
|
|
122
|
+
# @param [String, Symbol] key Name of key to get value for
|
|
123
|
+
# @return The value of the given key. If not found, returns nil
|
|
124
|
+
# @note The key will be converted to a string
|
|
125
|
+
def [](key)
|
|
126
|
+
@data[key.to_s]
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
# Set data using hash syntax
|
|
130
|
+
# @param [String, Symbol] key Name of key to set the value for
|
|
131
|
+
# @param [Object] value to set for the given key
|
|
132
|
+
# @note The key will be converted to a string
|
|
133
|
+
# @return The value set for the given key
|
|
134
|
+
def []=(key, value)
|
|
135
|
+
set(key, value)
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
# Check equality of 2 resources. Same as eql?(other)
|
|
139
|
+
# @param [Resource] other The other resource to check equality for
|
|
140
|
+
# @return [Boolean] Whether or not the two objects are equal
|
|
141
|
+
def ==(other)
|
|
142
|
+
self_state = instance_variables.sort.map { |v| instance_variable_get(v) }
|
|
143
|
+
other_state = other.instance_variables.sort.map { |v| other.instance_variable_get(v) }
|
|
144
|
+
other.class == self.class && other_state == self_state
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
# Check equality of 2 resources. Same as ==(other)
|
|
148
|
+
# @param [Resource] other The other resource to check for equality
|
|
149
|
+
# @return [Boolean] Whether or not the two objects are equal
|
|
150
|
+
def eql?(other)
|
|
151
|
+
self == other
|
|
152
|
+
end
|
|
153
|
+
|
|
154
|
+
# Check the equality of the data for the other resource with this resource.
|
|
155
|
+
# @note Does not check the client, logger, or api_version if another resource is passed in
|
|
156
|
+
# @param [Hash, Resource] other resource or hash to compare the key-value pairs with
|
|
157
|
+
# @example Compare to hash
|
|
158
|
+
# myResource = OneviewSDK::Resource.new(client, { name: 'res1', description: 'example'}, 200)
|
|
159
|
+
# myResource.like?(description: '') # returns false
|
|
160
|
+
# myResource.like?(name: 'res1') # returns true
|
|
161
|
+
# @return [Boolean] Whether or not the two objects are alike
|
|
162
|
+
def like?(other)
|
|
163
|
+
recursive_like?(other, @data)
|
|
164
|
+
end
|
|
165
|
+
|
|
166
|
+
# Create the resource on OneView using the current data
|
|
167
|
+
# @note Calls the refresh method to set additional data
|
|
168
|
+
# @param [Hash] header The header options for the request (key-value pairs)
|
|
169
|
+
# @raise [OneviewSDK::IncompleteResource] if the client is not set
|
|
170
|
+
# @raise [StandardError] if the resource creation fails
|
|
171
|
+
# @return [Resource] self
|
|
172
|
+
def create(header = self.class::DEFAULT_REQUEST_HEADER)
|
|
173
|
+
ensure_client
|
|
174
|
+
options = {}.merge(header).merge('body' => @data)
|
|
175
|
+
response = @client.rest_post(self.class::BASE_URI, options, @api_version)
|
|
176
|
+
body = @client.response_handler(response)
|
|
177
|
+
set_all(body)
|
|
178
|
+
self
|
|
179
|
+
end
|
|
180
|
+
|
|
181
|
+
# Delete the resource from OneView if it exists, then create it using the current data
|
|
182
|
+
# @note Calls refresh method to set additional data
|
|
183
|
+
# @param [Hash] header The header options for the request (key-value pairs)
|
|
184
|
+
# @raise [OneviewSDK::IncompleteResource] if the client is not set
|
|
185
|
+
# @raise [StandardError] if the resource creation fails
|
|
186
|
+
# @return [Resource] self
|
|
187
|
+
def create!(header = self.class::DEFAULT_REQUEST_HEADER)
|
|
188
|
+
temp = self.class.new(@client, @data)
|
|
189
|
+
temp.delete(header) if temp.retrieve!(header)
|
|
190
|
+
create(header)
|
|
191
|
+
end
|
|
192
|
+
|
|
193
|
+
# Updates this object using the data that exists on OneView
|
|
194
|
+
# @note Will overwrite any data that differs from OneView
|
|
195
|
+
# @param [Hash] header The header options for the request (key-value pairs)
|
|
196
|
+
# @return [Resource] self
|
|
197
|
+
def refresh(header = self.class::DEFAULT_REQUEST_HEADER)
|
|
198
|
+
ensure_client && ensure_uri
|
|
199
|
+
response = @client.rest_get(@data['uri'], header, @api_version)
|
|
200
|
+
body = @client.response_handler(response)
|
|
201
|
+
set_all(body)
|
|
202
|
+
self
|
|
203
|
+
end
|
|
204
|
+
|
|
205
|
+
# Set data and save to OneView
|
|
206
|
+
# @param [Hash] attributes The attributes to add/change for this resource (key-value pairs)
|
|
207
|
+
# @param [Hash] header The header options for the request (key-value pairs)
|
|
208
|
+
# @raise [OneviewSDK::IncompleteResource] if the client or uri is not set
|
|
209
|
+
# @raise [StandardError] if the resource save fails
|
|
210
|
+
# @return [Resource] self
|
|
211
|
+
def update(attributes = {}, header = self.class::DEFAULT_REQUEST_HEADER)
|
|
212
|
+
set_all(attributes)
|
|
213
|
+
ensure_client && ensure_uri
|
|
214
|
+
options = {}.merge(header).merge('body' => @data)
|
|
215
|
+
response = @client.rest_put(@data['uri'], options, @api_version)
|
|
216
|
+
@client.response_handler(response)
|
|
217
|
+
self
|
|
218
|
+
end
|
|
219
|
+
|
|
220
|
+
# Delete resource from OneView
|
|
221
|
+
# @param [Hash] header The header options for the request (key-value pairs)
|
|
222
|
+
# @return [true] if resource was deleted successfully
|
|
223
|
+
def delete(header = self.class::DEFAULT_REQUEST_HEADER)
|
|
224
|
+
ensure_client && ensure_uri
|
|
225
|
+
response = @client.rest_delete(@data['uri'], header, @api_version)
|
|
226
|
+
@client.response_handler(response)
|
|
227
|
+
true
|
|
228
|
+
end
|
|
229
|
+
|
|
230
|
+
# Save resource to json or yaml file
|
|
231
|
+
# @param [String] file_path The full path to the file
|
|
232
|
+
# @param [Symbol] format The format. Options: [:json, :yml, :yaml]. Defaults to .json
|
|
233
|
+
# @note If a .yml or .yaml file extension is given in the file_path, the format will be set automatically
|
|
234
|
+
# @return [True] The Resource was saved successfully
|
|
235
|
+
def to_file(file_path, format = :json)
|
|
236
|
+
format = :yml if %w[.yml .yaml].include? File.extname(file_path)
|
|
237
|
+
temp_data = { type: self.class.name, api_version: @api_version, data: @data }
|
|
238
|
+
case format.to_sym
|
|
239
|
+
when :json
|
|
240
|
+
File.open(file_path, 'w') { |f| f.write(JSON.pretty_generate(temp_data)) }
|
|
241
|
+
when :yml, :yaml
|
|
242
|
+
File.open(file_path, 'w') { |f| f.write(temp_data.to_yaml) }
|
|
243
|
+
else
|
|
244
|
+
raise InvalidFormat, "Invalid format: #{format}"
|
|
245
|
+
end
|
|
246
|
+
true
|
|
247
|
+
end
|
|
248
|
+
|
|
249
|
+
# Get resource schema
|
|
250
|
+
# @note This may not be implemented in the API for every resource. Check the API docs
|
|
251
|
+
# @return [Hash] Schema
|
|
252
|
+
def schema
|
|
253
|
+
self.class.schema(@client)
|
|
254
|
+
end
|
|
255
|
+
|
|
256
|
+
# Get resource schema
|
|
257
|
+
# @param [OneviewSDK::Client] client The client object for the OneView appliance
|
|
258
|
+
# @return [Hash] Schema
|
|
259
|
+
def self.schema(client)
|
|
260
|
+
response = client.rest_get("#{self::BASE_URI}/schema", {}, client.api_version)
|
|
261
|
+
client.response_handler(response)
|
|
262
|
+
rescue StandardError => e
|
|
263
|
+
client.logger.error('This resource does not implement the schema endpoint!') if e.message =~ /404 NOT FOUND/
|
|
264
|
+
raise e
|
|
265
|
+
end
|
|
266
|
+
|
|
267
|
+
# Load resource from a .json or .yaml file
|
|
268
|
+
# @param [OneviewSDK::Client] client The client object for the OneView appliance
|
|
269
|
+
# @param [String] file_path The full path to the file
|
|
270
|
+
# @return [Resource] New resource created from the file contents
|
|
271
|
+
def self.from_file(client, file_path)
|
|
272
|
+
resource = OneviewSDK::Config.load(file_path)
|
|
273
|
+
klass = self
|
|
274
|
+
if klass == OneviewSDK::Resource && resource['type'] # Use correct resource class by parsing type
|
|
275
|
+
klass = OneviewSDK # Secondary/temp class/module reference
|
|
276
|
+
resource['type'].split('::').each do |id|
|
|
277
|
+
c = klass.const_get(id) rescue nil
|
|
278
|
+
klass = c if c.is_a?(Class) || c.is_a?(Module)
|
|
279
|
+
end
|
|
280
|
+
klass = OneviewSDK::Resource unless klass <= OneviewSDK::Resource
|
|
281
|
+
end
|
|
282
|
+
klass.new(client, resource['data'], resource['api_version'])
|
|
283
|
+
end
|
|
284
|
+
|
|
285
|
+
# Make a GET request to the resource uri, and returns an array with results matching the search
|
|
286
|
+
# @param [OneviewSDK::Client] client The client object for the OneView appliance
|
|
287
|
+
# @param [Hash] attributes Hash containing the attributes name and value
|
|
288
|
+
# @param [String] uri URI of the endpoint
|
|
289
|
+
# @param [Hash] header The header options for the request (key-value pairs)
|
|
290
|
+
# @return [Array<Resource>] Results matching the search
|
|
291
|
+
def self.find_by(client, attributes, uri = self::BASE_URI, header = self::DEFAULT_REQUEST_HEADER)
|
|
292
|
+
all = find_with_pagination(client, uri, header)
|
|
293
|
+
results = []
|
|
294
|
+
all.each do |member|
|
|
295
|
+
temp = new(client, member)
|
|
296
|
+
results.push(temp) if temp.like?(attributes)
|
|
297
|
+
end
|
|
298
|
+
results
|
|
299
|
+
end
|
|
300
|
+
|
|
301
|
+
# Make a GET request to the uri, and returns an array with all results (search using resource pagination)
|
|
302
|
+
# @param [OneviewSDK::Client] client The client object for the OneView appliance
|
|
303
|
+
# @param [String] uri URI of the endpoint
|
|
304
|
+
# @param [Hash] header The header options for the request (key-value pairs)
|
|
305
|
+
# @return [Array<Hash>] Results
|
|
306
|
+
def self.find_with_pagination(client, uri, header = self::DEFAULT_REQUEST_HEADER)
|
|
307
|
+
all = []
|
|
308
|
+
loop do
|
|
309
|
+
response = client.rest_get(uri, header)
|
|
310
|
+
body = client.response_handler(response)
|
|
311
|
+
members = body['members']
|
|
312
|
+
break unless members
|
|
313
|
+
all.concat(members)
|
|
314
|
+
break unless body['nextPageUri'] && (body['nextPageUri'] != body['uri'])
|
|
315
|
+
uri = body['nextPageUri']
|
|
316
|
+
end
|
|
317
|
+
all
|
|
318
|
+
end
|
|
319
|
+
|
|
320
|
+
# Make a GET request to the resource base uri, and returns an array with all objects of this type
|
|
321
|
+
# @param [OneviewSDK::Client] client The client object for the OneView appliance
|
|
322
|
+
# @param [Hash] header The header options for the request (key-value pairs)
|
|
323
|
+
# @return [Array<Resource>] Results
|
|
324
|
+
def self.get_all(client, header = self::DEFAULT_REQUEST_HEADER)
|
|
325
|
+
find_by(client, {}, self::BASE_URI, header)
|
|
326
|
+
end
|
|
327
|
+
|
|
328
|
+
# Builds a Query string corresponding to the parameters passed
|
|
329
|
+
# @param [Hash{String=>String,OneviewSDK::Resource}] query_options Query parameters and values
|
|
330
|
+
# to be applied to the query url.
|
|
331
|
+
# All key values should be Strings in snake case, the values could be Strings or Resources.
|
|
332
|
+
# @option query_options [String] String Values that are Strings can be associated as usual
|
|
333
|
+
# @option query_options [String] Resources Values that are Resources can be associated as usual,
|
|
334
|
+
# with keys representing only the resource names (like 'ethernet_network'). This method
|
|
335
|
+
# translates the SDK and Ruby standards to OneView request standard.
|
|
336
|
+
def self.build_query(query_options)
|
|
337
|
+
return '' if !query_options || query_options.empty?
|
|
338
|
+
query_path = '?'
|
|
339
|
+
query_options.each do |k, v|
|
|
340
|
+
words = k.to_s.split('_')
|
|
341
|
+
words.map!(&:capitalize!)
|
|
342
|
+
words[0] = words.first.downcase
|
|
343
|
+
new_key = words.join
|
|
344
|
+
v = "'" + v.join(',') + "'" if v.is_a?(Array) && v.any?
|
|
345
|
+
v.retrieve! if v.respond_to?(:retrieve!) && !v['uri']
|
|
346
|
+
if v.class <= OneviewSDK::Resource
|
|
347
|
+
new_key = new_key.concat('Uri')
|
|
348
|
+
v = v['uri']
|
|
349
|
+
end
|
|
350
|
+
query_path.concat("&#{new_key}=#{v}")
|
|
351
|
+
end
|
|
352
|
+
query_path.sub('?&', '?')
|
|
353
|
+
end
|
|
354
|
+
|
|
355
|
+
# Make a GET request to the resource base uri, query parameters and returns an array with all objects of this type
|
|
356
|
+
# @param [OneviewSDK::Client] client The client object for the OneView appliance
|
|
357
|
+
# @param [Hash] query The query options for the request (key-value pairs)
|
|
358
|
+
# @param [Hash] header The header options for the request (key-value pairs)
|
|
359
|
+
# @return [Array<Resource>] Results
|
|
360
|
+
def self.get_all_with_query(client, query = nil)
|
|
361
|
+
query_uri = build_query(query) if query
|
|
362
|
+
find_with_pagination(client, "#{self::BASE_URI}/#{query_uri}")
|
|
363
|
+
end
|
|
364
|
+
|
|
365
|
+
protected
|
|
366
|
+
|
|
367
|
+
# Fail unless @client is set for this resource.
|
|
368
|
+
def ensure_client
|
|
369
|
+
raise IncompleteResource, 'Please set client attribute before interacting with this resource' unless @client
|
|
370
|
+
true
|
|
371
|
+
end
|
|
372
|
+
|
|
373
|
+
# Fail unless @data['uri'] is set for this resource.
|
|
374
|
+
def ensure_uri
|
|
375
|
+
raise IncompleteResource, 'Please set uri attribute before interacting with this resource' unless @data['uri']
|
|
376
|
+
true
|
|
377
|
+
end
|
|
378
|
+
|
|
379
|
+
# Gets all the URIs for the specified resources
|
|
380
|
+
# @param [Array<OneviewSDK::Resource>] resources The list of resources
|
|
381
|
+
# @return [Array<String>] List of uris
|
|
382
|
+
# @raise IncompleteResource if 'uri' is not set for each resource.
|
|
383
|
+
def ensure_and_get_uris(resources)
|
|
384
|
+
resources.map do |resource|
|
|
385
|
+
resource.ensure_uri
|
|
386
|
+
resource['uri']
|
|
387
|
+
end
|
|
388
|
+
end
|
|
389
|
+
|
|
390
|
+
# Fail for methods that are not available for one resource
|
|
391
|
+
def unavailable_method
|
|
392
|
+
raise MethodUnavailable, "The method ##{caller(1..1).first[/`.*'/][1..-2]} is unavailable for this resource"
|
|
393
|
+
end
|
|
394
|
+
|
|
395
|
+
private
|
|
396
|
+
|
|
397
|
+
# Recursive helper method for like?
|
|
398
|
+
# Allows comparison of nested hash structures
|
|
399
|
+
def recursive_like?(other, data = @data)
|
|
400
|
+
raise "Can't compare with object type: #{other.class}! Must respond_to :each" unless other.respond_to?(:each)
|
|
401
|
+
other.each do |key, val|
|
|
402
|
+
return false unless data && data.respond_to?(:[])
|
|
403
|
+
if val.is_a?(Hash)
|
|
404
|
+
return false unless data.class == Hash && recursive_like?(val, data[key.to_s])
|
|
405
|
+
elsif val.is_a?(Array) && val.first.is_a?(Hash)
|
|
406
|
+
data_array = data[key.to_s] || data[key.to_sym]
|
|
407
|
+
return false unless data_array.is_a?(Array)
|
|
408
|
+
val.each do |other_item|
|
|
409
|
+
return false unless data_array.find { |data_item| recursive_like?(other_item, data_item) }
|
|
410
|
+
end
|
|
411
|
+
elsif val.to_s != data[key.to_s].to_s && val.to_s != data[key.to_sym].to_s
|
|
412
|
+
return false
|
|
413
|
+
end
|
|
414
|
+
end
|
|
415
|
+
true
|
|
416
|
+
end
|
|
417
|
+
|
|
418
|
+
end
|
|
419
|
+
|
|
420
|
+
# Get resource class that matches the type given
|
|
421
|
+
# @param [String] type Name of the desired class type
|
|
422
|
+
# @param [Fixnum] api_ver API module version to fetch resource from
|
|
423
|
+
# @param [String] variant API module variant to fetch resource from
|
|
424
|
+
# @return [Class] Resource class or nil if not found
|
|
425
|
+
def self.resource_named(type, api_ver = @api_version, variant = nil)
|
|
426
|
+
raise UnsupportedVersion, "API version #{api_ver} is not supported! Try one of: #{SUPPORTED_API_VERSIONS}"\
|
|
427
|
+
unless SUPPORTED_API_VERSIONS.include?(api_ver)
|
|
428
|
+
api_module = OneviewSDK.const_get("API#{api_ver}")
|
|
429
|
+
variant ? api_module.resource_named(type, variant) : api_module.resource_named(type)
|
|
430
|
+
end
|
|
431
|
+
end
|