fog-cosmic 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.github/workflows/ci.yml +29 -0
- data/.gitignore +18 -0
- data/.travis.yml +7 -0
- data/CHANGELOG.md +8 -0
- data/CONTRIBUTORS.md +2 -0
- data/Gemfile +4 -0
- data/Gemfile.lock +49 -0
- data/LICENSE.md +21 -0
- data/README.md +44 -0
- data/Rakefile +10 -0
- data/fog-cosmic.gemspec +32 -0
- data/lib/fog/cosmic.rb +45 -0
- data/lib/fog/cosmic/compute.rb +861 -0
- data/lib/fog/cosmic/models/compute/address.rb +17 -0
- data/lib/fog/cosmic/models/compute/disk_offering.rb +44 -0
- data/lib/fog/cosmic/models/compute/disk_offerings.rb +24 -0
- data/lib/fog/cosmic/models/compute/egress_firewall_rule.rb +38 -0
- data/lib/fog/cosmic/models/compute/egress_firewall_rules.rb +25 -0
- data/lib/fog/cosmic/models/compute/firewall_rule.rb +24 -0
- data/lib/fog/cosmic/models/compute/firewall_rules.rb +25 -0
- data/lib/fog/cosmic/models/compute/flavor.rb +36 -0
- data/lib/fog/cosmic/models/compute/flavors.rb +25 -0
- data/lib/fog/cosmic/models/compute/image.rb +72 -0
- data/lib/fog/cosmic/models/compute/images.rb +37 -0
- data/lib/fog/cosmic/models/compute/job.rb +51 -0
- data/lib/fog/cosmic/models/compute/jobs.rb +25 -0
- data/lib/fog/cosmic/models/compute/network.rb +73 -0
- data/lib/fog/cosmic/models/compute/network_offering.rb +25 -0
- data/lib/fog/cosmic/models/compute/network_offerings.rb +39 -0
- data/lib/fog/cosmic/models/compute/networks.rb +38 -0
- data/lib/fog/cosmic/models/compute/port_forwarding_rule.rb +25 -0
- data/lib/fog/cosmic/models/compute/port_forwarding_rules.rb +25 -0
- data/lib/fog/cosmic/models/compute/project.rb +58 -0
- data/lib/fog/cosmic/models/compute/projects.rb +39 -0
- data/lib/fog/cosmic/models/compute/public_ip_address.rb +96 -0
- data/lib/fog/cosmic/models/compute/public_ip_addresses.rb +27 -0
- data/lib/fog/cosmic/models/compute/server.rb +151 -0
- data/lib/fog/cosmic/models/compute/servers.rb +39 -0
- data/lib/fog/cosmic/models/compute/snapshot.rb +46 -0
- data/lib/fog/cosmic/models/compute/snapshots.rb +23 -0
- data/lib/fog/cosmic/models/compute/volume.rb +121 -0
- data/lib/fog/cosmic/models/compute/volumes.rb +26 -0
- data/lib/fog/cosmic/models/compute/zone.rb +36 -0
- data/lib/fog/cosmic/models/compute/zones.rb +29 -0
- data/lib/fog/cosmic/requests/compute/activate_project.rb +25 -0
- data/lib/fog/cosmic/requests/compute/add_account_to_project.rb +25 -0
- data/lib/fog/cosmic/requests/compute/add_cluster.rb +29 -0
- data/lib/fog/cosmic/requests/compute/add_guest_os.rb +26 -0
- data/lib/fog/cosmic/requests/compute/add_guest_os_mapping.rb +27 -0
- data/lib/fog/cosmic/requests/compute/add_host.rb +30 -0
- data/lib/fog/cosmic/requests/compute/add_image_store.rb +25 -0
- data/lib/fog/cosmic/requests/compute/add_ip_to_nic.rb +25 -0
- data/lib/fog/cosmic/requests/compute/add_ldap_configuration.rb +26 -0
- data/lib/fog/cosmic/requests/compute/add_network_device.rb +24 -0
- data/lib/fog/cosmic/requests/compute/add_network_service_provider.rb +26 -0
- data/lib/fog/cosmic/requests/compute/add_nic_to_virtual_machine.rb +26 -0
- data/lib/fog/cosmic/requests/compute/add_nicira_nvp_device.rb +29 -0
- data/lib/fog/cosmic/requests/compute/add_region.rb +27 -0
- data/lib/fog/cosmic/requests/compute/add_resource_detail.rb +27 -0
- data/lib/fog/cosmic/requests/compute/add_secondary_storage.rb +25 -0
- data/lib/fog/cosmic/requests/compute/add_traffic_type.rb +26 -0
- data/lib/fog/cosmic/requests/compute/add_vpn_user.rb +26 -0
- data/lib/fog/cosmic/requests/compute/archive_alerts.rb +24 -0
- data/lib/fog/cosmic/requests/compute/archive_events.rb +24 -0
- data/lib/fog/cosmic/requests/compute/assign_cert_to_load_balancer.rb +26 -0
- data/lib/fog/cosmic/requests/compute/assign_to_load_balancer_rule.rb +25 -0
- data/lib/fog/cosmic/requests/compute/assign_virtual_machine.rb +27 -0
- data/lib/fog/cosmic/requests/compute/associate_ip_address.rb +55 -0
- data/lib/fog/cosmic/requests/compute/attach_iso.rb +26 -0
- data/lib/fog/cosmic/requests/compute/attach_volume.rb +76 -0
- data/lib/fog/cosmic/requests/compute/cancel_host_maintenance.rb +25 -0
- data/lib/fog/cosmic/requests/compute/cancel_storage_maintenance.rb +25 -0
- data/lib/fog/cosmic/requests/compute/change_service_for_router.rb +26 -0
- data/lib/fog/cosmic/requests/compute/change_service_for_system_vm.rb +26 -0
- data/lib/fog/cosmic/requests/compute/change_service_for_virtual_machine.rb +26 -0
- data/lib/fog/cosmic/requests/compute/clean_vmreservations.rb +24 -0
- data/lib/fog/cosmic/requests/compute/configure_virtual_router_element.rb +26 -0
- data/lib/fog/cosmic/requests/compute/copy_iso.rb +26 -0
- data/lib/fog/cosmic/requests/compute/copy_template.rb +26 -0
- data/lib/fog/cosmic/requests/compute/create_account.rb +30 -0
- data/lib/fog/cosmic/requests/compute/create_affinity_group.rb +26 -0
- data/lib/fog/cosmic/requests/compute/create_disk_offering.rb +56 -0
- data/lib/fog/cosmic/requests/compute/create_domain.rb +25 -0
- data/lib/fog/cosmic/requests/compute/create_egress_firewall_rule.rb +44 -0
- data/lib/fog/cosmic/requests/compute/create_firewall_rule.rb +48 -0
- data/lib/fog/cosmic/requests/compute/create_instance_group.rb +25 -0
- data/lib/fog/cosmic/requests/compute/create_ip_forwarding_rule.rb +27 -0
- data/lib/fog/cosmic/requests/compute/create_lb_health_check_policy.rb +25 -0
- data/lib/fog/cosmic/requests/compute/create_lb_stickiness_policy.rb +27 -0
- data/lib/fog/cosmic/requests/compute/create_load_balancer_rule.rb +28 -0
- data/lib/fog/cosmic/requests/compute/create_network.rb +30 -0
- data/lib/fog/cosmic/requests/compute/create_network_acl.rb +25 -0
- data/lib/fog/cosmic/requests/compute/create_network_acl_list.rb +26 -0
- data/lib/fog/cosmic/requests/compute/create_network_offering.rb +55 -0
- data/lib/fog/cosmic/requests/compute/create_physical_network.rb +26 -0
- data/lib/fog/cosmic/requests/compute/create_pod.rb +29 -0
- data/lib/fog/cosmic/requests/compute/create_port_forwarding_rule.rb +55 -0
- data/lib/fog/cosmic/requests/compute/create_private_gateway.rb +29 -0
- data/lib/fog/cosmic/requests/compute/create_project.rb +26 -0
- data/lib/fog/cosmic/requests/compute/create_remote_access_vpn.rb +25 -0
- data/lib/fog/cosmic/requests/compute/create_secondary_staging_store.rb +25 -0
- data/lib/fog/cosmic/requests/compute/create_service_offering.rb +55 -0
- data/lib/fog/cosmic/requests/compute/create_snapshot.rb +48 -0
- data/lib/fog/cosmic/requests/compute/create_ssh_key_pair.rb +27 -0
- data/lib/fog/cosmic/requests/compute/create_static_route.rb +26 -0
- data/lib/fog/cosmic/requests/compute/create_storage_network_ip_range.rb +28 -0
- data/lib/fog/cosmic/requests/compute/create_storage_pool.rb +27 -0
- data/lib/fog/cosmic/requests/compute/create_tags.rb +27 -0
- data/lib/fog/cosmic/requests/compute/create_template.rb +27 -0
- data/lib/fog/cosmic/requests/compute/create_user.rb +30 -0
- data/lib/fog/cosmic/requests/compute/create_virtual_router_element.rb +25 -0
- data/lib/fog/cosmic/requests/compute/create_vlan_ip_range.rb +24 -0
- data/lib/fog/cosmic/requests/compute/create_vm_snapshot.rb +25 -0
- data/lib/fog/cosmic/requests/compute/create_volume.rb +69 -0
- data/lib/fog/cosmic/requests/compute/create_vpc.rb +29 -0
- data/lib/fog/cosmic/requests/compute/create_vpcoffering.rb +27 -0
- data/lib/fog/cosmic/requests/compute/create_vpn_connection.rb +26 -0
- data/lib/fog/cosmic/requests/compute/create_vpn_customer_gateway.rb +29 -0
- data/lib/fog/cosmic/requests/compute/create_vpn_gateway.rb +25 -0
- data/lib/fog/cosmic/requests/compute/create_zone.rb +28 -0
- data/lib/fog/cosmic/requests/compute/dedicate_cluster.rb +26 -0
- data/lib/fog/cosmic/requests/compute/dedicate_guest_vlan_range.rb +28 -0
- data/lib/fog/cosmic/requests/compute/dedicate_host.rb +26 -0
- data/lib/fog/cosmic/requests/compute/dedicate_pod.rb +26 -0
- data/lib/fog/cosmic/requests/compute/dedicate_public_ip_range.rb +27 -0
- data/lib/fog/cosmic/requests/compute/dedicate_zone.rb +26 -0
- data/lib/fog/cosmic/requests/compute/delete_account.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_account_from_project.rb +26 -0
- data/lib/fog/cosmic/requests/compute/delete_affinity_group.rb +24 -0
- data/lib/fog/cosmic/requests/compute/delete_alerts.rb +24 -0
- data/lib/fog/cosmic/requests/compute/delete_cluster.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_disk_offering.rb +33 -0
- data/lib/fog/cosmic/requests/compute/delete_domain.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_egress_firewall_rule.rb +34 -0
- data/lib/fog/cosmic/requests/compute/delete_events.rb +24 -0
- data/lib/fog/cosmic/requests/compute/delete_firewall_rule.rb +34 -0
- data/lib/fog/cosmic/requests/compute/delete_host.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_image_store.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_instance_group.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_ip_forwarding_rule.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_iso.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_lb_health_check_policy.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_lb_stickiness_policy.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_ldap_configuration.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_load_balancer_rule.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_network.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_network_acl.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_network_acl_list.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_network_device.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_network_offering.rb +34 -0
- data/lib/fog/cosmic/requests/compute/delete_network_service_provider.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_nicira_nvp_device.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_physical_network.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_pod.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_port_forwarding_rule.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_private_gateway.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_project.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_project_invitation.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_remote_access_vpn.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_secondary_staging_store.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_service_offering.rb +34 -0
- data/lib/fog/cosmic/requests/compute/delete_snapshot.rb +61 -0
- data/lib/fog/cosmic/requests/compute/delete_ssh_key_pair.rb +27 -0
- data/lib/fog/cosmic/requests/compute/delete_ssl_cert.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_static_route.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_storage_network_ip_range.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_storage_pool.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_tags.rb +26 -0
- data/lib/fog/cosmic/requests/compute/delete_template.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_traffic_type.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_user.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_vlan_ip_range.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_vm_snapshot.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_volume.rb +45 -0
- data/lib/fog/cosmic/requests/compute/delete_vpc.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_vpcoffering.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_vpn_connection.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_vpn_customer_gateway.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_vpn_gateway.rb +25 -0
- data/lib/fog/cosmic/requests/compute/delete_zone.rb +25 -0
- data/lib/fog/cosmic/requests/compute/deploy_virtual_machine.rb +127 -0
- data/lib/fog/cosmic/requests/compute/destroy_router.rb +25 -0
- data/lib/fog/cosmic/requests/compute/destroy_system_vm.rb +25 -0
- data/lib/fog/cosmic/requests/compute/destroy_virtual_machine.rb +54 -0
- data/lib/fog/cosmic/requests/compute/detach_iso.rb +25 -0
- data/lib/fog/cosmic/requests/compute/detach_volume.rb +64 -0
- data/lib/fog/cosmic/requests/compute/disable_account.rb +25 -0
- data/lib/fog/cosmic/requests/compute/disable_static_nat.rb +51 -0
- data/lib/fog/cosmic/requests/compute/disable_user.rb +25 -0
- data/lib/fog/cosmic/requests/compute/disassociate_ip_address.rb +35 -0
- data/lib/fog/cosmic/requests/compute/enable_account.rb +24 -0
- data/lib/fog/cosmic/requests/compute/enable_static_nat.rb +69 -0
- data/lib/fog/cosmic/requests/compute/enable_storage_maintenance.rb +25 -0
- data/lib/fog/cosmic/requests/compute/enable_user.rb +25 -0
- data/lib/fog/cosmic/requests/compute/expunge_virtual_machine.rb +25 -0
- data/lib/fog/cosmic/requests/compute/extract_iso.rb +26 -0
- data/lib/fog/cosmic/requests/compute/extract_template.rb +65 -0
- data/lib/fog/cosmic/requests/compute/extract_volume.rb +27 -0
- data/lib/fog/cosmic/requests/compute/find_hosts_for_migration.rb +25 -0
- data/lib/fog/cosmic/requests/compute/find_storage_pools_for_migration.rb +25 -0
- data/lib/fog/cosmic/requests/compute/generate_alert.rb +27 -0
- data/lib/fog/cosmic/requests/compute/get_api_limit.rb +24 -0
- data/lib/fog/cosmic/requests/compute/get_cloud_identifier.rb +25 -0
- data/lib/fog/cosmic/requests/compute/get_user.rb +25 -0
- data/lib/fog/cosmic/requests/compute/get_virtual_machine_user_data.rb +25 -0
- data/lib/fog/cosmic/requests/compute/get_vm_password.rb +25 -0
- data/lib/fog/cosmic/requests/compute/import_ldap_users.rb +25 -0
- data/lib/fog/cosmic/requests/compute/ldap_create_account.rb +26 -0
- data/lib/fog/cosmic/requests/compute/list_accounts.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_affinity_group_types.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_affinity_groups.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_alerts.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_apis.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_async_jobs.rb +36 -0
- data/lib/fog/cosmic/requests/compute/list_capabilities.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_capacity.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_clusters.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_configurations.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_dedicated_clusters.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_dedicated_guest_vlan_ranges.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_dedicated_hosts.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_dedicated_pods.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_dedicated_zones.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_deployment_planners.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_disk_offerings.rb +32 -0
- data/lib/fog/cosmic/requests/compute/list_domain_children.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_domains.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_egress_firewall_rules.rb +35 -0
- data/lib/fog/cosmic/requests/compute/list_event_types.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_events.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_firewall_rules.rb +35 -0
- data/lib/fog/cosmic/requests/compute/list_guest_os_mapping.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_hosts.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_hypervisor_capabilities.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_hypervisors.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_image_stores.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_instance_groups.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_ip_forwarding_rules.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_iso_permissions.rb +25 -0
- data/lib/fog/cosmic/requests/compute/list_isos.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_lb_health_check_policies.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_lb_stickiness_policies.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_ldap_configurations.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_ldap_users.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_load_balancer_rule_instances.rb +25 -0
- data/lib/fog/cosmic/requests/compute/list_load_balancer_rules.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_network_acl_lists.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_network_acls.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_network_device.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_network_isolation_methods.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_network_offerings.rb +31 -0
- data/lib/fog/cosmic/requests/compute/list_network_service_providers.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_networks.rb +28 -0
- data/lib/fog/cosmic/requests/compute/list_nicira_nvp_device_networks.rb +25 -0
- data/lib/fog/cosmic/requests/compute/list_nicira_nvp_devices.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_nics.rb +25 -0
- data/lib/fog/cosmic/requests/compute/list_os_categories.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_os_types.rb +32 -0
- data/lib/fog/cosmic/requests/compute/list_physical_networks.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_pods.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_port_forwarding_rules.rb +40 -0
- data/lib/fog/cosmic/requests/compute/list_private_gateways.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_project_accounts.rb +25 -0
- data/lib/fog/cosmic/requests/compute/list_project_invitations.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_projects.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_public_ip_addresses.rb +45 -0
- data/lib/fog/cosmic/requests/compute/list_regions.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_remote_access_vpns.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_resource_details.rb +25 -0
- data/lib/fog/cosmic/requests/compute/list_resource_limits.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_routers.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_secondary_staging_stores.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_service_offerings.rb +44 -0
- data/lib/fog/cosmic/requests/compute/list_snapshots.rb +43 -0
- data/lib/fog/cosmic/requests/compute/list_ssh_key_pairs.rb +26 -0
- data/lib/fog/cosmic/requests/compute/list_ssl_certs.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_static_routes.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_storage_network_ip_range.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_storage_pools.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_storage_providers.rb +25 -0
- data/lib/fog/cosmic/requests/compute/list_supported_network_services.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_system_vms.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_tags.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_template_permissions.rb +25 -0
- data/lib/fog/cosmic/requests/compute/list_templates.rb +42 -0
- data/lib/fog/cosmic/requests/compute/list_traffic_types.rb +25 -0
- data/lib/fog/cosmic/requests/compute/list_users.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_virtual_machines.rb +32 -0
- data/lib/fog/cosmic/requests/compute/list_virtual_router_elements.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_vlan_ip_ranges.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_vm_snapshot.rb +26 -0
- data/lib/fog/cosmic/requests/compute/list_volumes.rb +43 -0
- data/lib/fog/cosmic/requests/compute/list_vpc_offerings.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_vpcs.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_vpn_connections.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_vpn_customer_gateways.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_vpn_gateways.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_vpn_users.rb +24 -0
- data/lib/fog/cosmic/requests/compute/list_zones.rb +37 -0
- data/lib/fog/cosmic/requests/compute/lock_account.rb +26 -0
- data/lib/fog/cosmic/requests/compute/lock_user.rb +25 -0
- data/lib/fog/cosmic/requests/compute/mark_default_zone_for_account.rb +27 -0
- data/lib/fog/cosmic/requests/compute/migrate_system_vm.rb +26 -0
- data/lib/fog/cosmic/requests/compute/migrate_virtual_machine.rb +25 -0
- data/lib/fog/cosmic/requests/compute/migrate_virtual_machine_with_volume.rb +26 -0
- data/lib/fog/cosmic/requests/compute/migrate_volume.rb +26 -0
- data/lib/fog/cosmic/requests/compute/prepare_host_for_maintenance.rb +25 -0
- data/lib/fog/cosmic/requests/compute/prepare_template.rb +26 -0
- data/lib/fog/cosmic/requests/compute/query_async_job_result.rb +38 -0
- data/lib/fog/cosmic/requests/compute/reboot_router.rb +25 -0
- data/lib/fog/cosmic/requests/compute/reboot_system_vm.rb +25 -0
- data/lib/fog/cosmic/requests/compute/reboot_virtual_machine.rb +35 -0
- data/lib/fog/cosmic/requests/compute/reconnect_host.rb +25 -0
- data/lib/fog/cosmic/requests/compute/recover_virtual_machine.rb +25 -0
- data/lib/fog/cosmic/requests/compute/register_iso.rb +28 -0
- data/lib/fog/cosmic/requests/compute/register_ssh_key_pair.rb +28 -0
- data/lib/fog/cosmic/requests/compute/register_template.rb +45 -0
- data/lib/fog/cosmic/requests/compute/register_user_keys.rb +25 -0
- data/lib/fog/cosmic/requests/compute/release_dedicated_cluster.rb +25 -0
- data/lib/fog/cosmic/requests/compute/release_dedicated_guest_vlan_range.rb +25 -0
- data/lib/fog/cosmic/requests/compute/release_dedicated_host.rb +25 -0
- data/lib/fog/cosmic/requests/compute/release_dedicated_pod.rb +25 -0
- data/lib/fog/cosmic/requests/compute/release_dedicated_zone.rb +25 -0
- data/lib/fog/cosmic/requests/compute/release_host_reservation.rb +25 -0
- data/lib/fog/cosmic/requests/compute/release_public_ip_range.rb +25 -0
- data/lib/fog/cosmic/requests/compute/remove_cert_from_load_balancer.rb +25 -0
- data/lib/fog/cosmic/requests/compute/remove_from_load_balancer_rule.rb +25 -0
- data/lib/fog/cosmic/requests/compute/remove_guest_os.rb +25 -0
- data/lib/fog/cosmic/requests/compute/remove_guest_os_mapping.rb +25 -0
- data/lib/fog/cosmic/requests/compute/remove_ip_from_nic.rb +25 -0
- data/lib/fog/cosmic/requests/compute/remove_nic_from_virtual_machine.rb +26 -0
- data/lib/fog/cosmic/requests/compute/remove_region.rb +25 -0
- data/lib/fog/cosmic/requests/compute/remove_resource_detail.rb +26 -0
- data/lib/fog/cosmic/requests/compute/remove_vpn_user.rb +25 -0
- data/lib/fog/cosmic/requests/compute/replace_network_acl_list.rb +25 -0
- data/lib/fog/cosmic/requests/compute/reset_api_limit.rb +24 -0
- data/lib/fog/cosmic/requests/compute/reset_password_for_virtual_machine.rb +25 -0
- data/lib/fog/cosmic/requests/compute/reset_ssh_key_for_virtual_machine.rb +28 -0
- data/lib/fog/cosmic/requests/compute/reset_vpn_connection.rb +25 -0
- data/lib/fog/cosmic/requests/compute/resize_volume.rb +25 -0
- data/lib/fog/cosmic/requests/compute/restart_network.rb +25 -0
- data/lib/fog/cosmic/requests/compute/restart_vpc.rb +25 -0
- data/lib/fog/cosmic/requests/compute/restore_virtual_machine.rb +25 -0
- data/lib/fog/cosmic/requests/compute/revert_snapshot.rb +25 -0
- data/lib/fog/cosmic/requests/compute/revert_to_vm_snapshot.rb +25 -0
- data/lib/fog/cosmic/requests/compute/scale_system_vm.rb +26 -0
- data/lib/fog/cosmic/requests/compute/scale_virtual_machine.rb +26 -0
- data/lib/fog/cosmic/requests/compute/start_router.rb +25 -0
- data/lib/fog/cosmic/requests/compute/start_system_vm.rb +25 -0
- data/lib/fog/cosmic/requests/compute/start_virtual_machine.rb +25 -0
- data/lib/fog/cosmic/requests/compute/stop_router.rb +25 -0
- data/lib/fog/cosmic/requests/compute/stop_system_vm.rb +25 -0
- data/lib/fog/cosmic/requests/compute/stop_virtual_machine.rb +25 -0
- data/lib/fog/cosmic/requests/compute/suspend_project.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_account.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_cluster.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_configuration.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_default_nic_for_virtual_machine.rb +26 -0
- data/lib/fog/cosmic/requests/compute/update_disk_offering.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_domain.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_egress_firewall_rule.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_firewall_rule.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_guest_os.rb +26 -0
- data/lib/fog/cosmic/requests/compute/update_guest_os_mapping.rb +26 -0
- data/lib/fog/cosmic/requests/compute/update_host.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_host_password.rb +26 -0
- data/lib/fog/cosmic/requests/compute/update_hypervisor_capabilities.rb +24 -0
- data/lib/fog/cosmic/requests/compute/update_instance_group.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_ip_address.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_iso.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_iso_permissions.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_lb_health_check_policy.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_lb_stickiness_policy.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_load_balancer_rule.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_network.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_network_acl_item.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_network_acl_list.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_network_offering.rb +24 -0
- data/lib/fog/cosmic/requests/compute/update_network_service_provider.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_physical_network.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_pod.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_port_forwarding_rule.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_project.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_project_invitation.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_region.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_remote_access_vpn.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_resource_count.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_resource_limit.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_service_offering.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_storage_network_ip_range.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_storage_pool.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_template.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_template_permissions.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_user.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_virtual_machine.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_vm_affinity_group.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_volume.rb +24 -0
- data/lib/fog/cosmic/requests/compute/update_vpc.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_vpcoffering.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_vpn_connection.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_vpn_customer_gateway.rb +30 -0
- data/lib/fog/cosmic/requests/compute/update_vpn_gateway.rb +25 -0
- data/lib/fog/cosmic/requests/compute/update_zone.rb +25 -0
- data/lib/fog/cosmic/requests/compute/upgrade_router_template.rb +24 -0
- data/lib/fog/cosmic/requests/compute/upload_custom_certificate.rb +26 -0
- data/lib/fog/cosmic/requests/compute/upload_ssl_cert.rb +26 -0
- data/lib/fog/cosmic/requests/compute/upload_volume.rb +30 -0
- data/lib/fog/cosmic/version.rb +5 -0
- data/tests/compute/models/disk_offering_tests.rb +7 -0
- data/tests/compute/models/egress_firewall_rule_tests.rb +9 -0
- data/tests/compute/models/public_ip_address_tests.rb +42 -0
- data/tests/compute/models/public_ip_addresses_tests.rb +3 -0
- data/tests/compute/models/server_tests.rb +20 -0
- data/tests/compute/models/snapshot_tests.rb +17 -0
- data/tests/compute/models/volume_tests.rb +46 -0
- data/tests/compute/models/volumes_tests.rb +14 -0
- data/tests/helper.rb +5 -0
- data/tests/helpers/collection_helper.rb +91 -0
- data/tests/helpers/formats_helper.rb +98 -0
- data/tests/helpers/mock_helper.rb +20 -0
- data/tests/helpers/model_helper.rb +31 -0
- data/tests/helpers/responds_to_helper.rb +11 -0
- data/tests/helpers/succeeds_helper.rb +9 -0
- data/tests/requests/disk_offering_tests.rb +29 -0
- data/tests/requests/egress_firewall_rule_tests.rb +25 -0
- data/tests/requests/firewall_rule_tests.rb +29 -0
- data/tests/requests/network_offering_tests.rb +32 -0
- data/tests/requests/os_type_tests.rb +37 -0
- data/tests/requests/port_forwarding_rule_tests.rb +33 -0
- data/tests/requests/public_ip_address_tests.rb +38 -0
- data/tests/requests/service_offering_tests.rb +31 -0
- data/tests/requests/snapshot_tests.rb +32 -0
- data/tests/requests/ssh_key_pair_tests.rb +23 -0
- data/tests/requests/template_tests.rb +52 -0
- data/tests/requests/virtual_machine_tests.rb +66 -0
- data/tests/requests/volume_tests.rb +47 -0
- data/tests/requests/zone_tests.rb +32 -0
- data/tests/signed_params_tests.rb +12 -0
- metadata +583 -0
@@ -0,0 +1,55 @@
|
|
1
|
+
module Fog
|
2
|
+
module Cosmic
|
3
|
+
class Compute
|
4
|
+
|
5
|
+
class Real
|
6
|
+
# Creates a service offering.
|
7
|
+
#
|
8
|
+
# {Cosmic API Reference}[https://apidoc.mcc.schubergphilis.com/root_admin/createServiceOffering.html]
|
9
|
+
def create_service_offering(*args)
|
10
|
+
options = {}
|
11
|
+
if args[0].is_a? Hash
|
12
|
+
options = args[0]
|
13
|
+
options.merge!('command' => 'createServiceOffering')
|
14
|
+
else
|
15
|
+
options.merge!('command' => 'createServiceOffering',
|
16
|
+
'name' => args[0],
|
17
|
+
'displaytext' => args[1])
|
18
|
+
end
|
19
|
+
request(options)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
class Mock
|
24
|
+
|
25
|
+
def create_service_offering(options={})
|
26
|
+
flavour_id = Fog::Cosmic.uuid
|
27
|
+
|
28
|
+
flavour = {
|
29
|
+
"id" => flavour_id,
|
30
|
+
"name" => "4CPU, 4 GB RAM, High Availability",
|
31
|
+
"displaytext" => "4CPU, 4 GB RAM, High Availability",
|
32
|
+
"cpunumber" => 4,
|
33
|
+
"cpuspeed" => 2000,
|
34
|
+
"memory" => 4096,
|
35
|
+
"created" => Time.now.iso8601,
|
36
|
+
"storagetype" => "shared",
|
37
|
+
"offerha" => true,
|
38
|
+
"limitcpuuse" => false,
|
39
|
+
"isvolatile" => false,
|
40
|
+
"issytem" => false,
|
41
|
+
"defaultuse" => false,
|
42
|
+
"iscustomized" => false,
|
43
|
+
"tags" => []
|
44
|
+
}
|
45
|
+
|
46
|
+
self.data[:flavours][flavour_id] = flavour
|
47
|
+
|
48
|
+
{'createserviceofferingresponse' => flavour}
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
@@ -0,0 +1,48 @@
|
|
1
|
+
module Fog
|
2
|
+
module Cosmic
|
3
|
+
class Compute
|
4
|
+
|
5
|
+
class Real
|
6
|
+
# Creates an instant snapshot of a volume.
|
7
|
+
#
|
8
|
+
# {Cosmic API Reference}[https://apidoc.mcc.schubergphilis.com/root_admin/createSnapshot.html]
|
9
|
+
def create_snapshot(*args)
|
10
|
+
options = {}
|
11
|
+
if args[0].is_a? Hash
|
12
|
+
options = args[0]
|
13
|
+
options.merge!('command' => 'createSnapshot')
|
14
|
+
else
|
15
|
+
options.merge!('command' => 'createSnapshot',
|
16
|
+
'volumeid' => args[0])
|
17
|
+
end
|
18
|
+
request(options)
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
class Mock
|
23
|
+
def create_snapshot(options={})
|
24
|
+
snapshot_id = Fog::Cosmic.uuid
|
25
|
+
|
26
|
+
unless volume_id = options['volumeid']
|
27
|
+
raise Fog::Cosmic::Compute::BadRequest.new('Unable to execute API command createsnapshot due to missing parameter volumeid')
|
28
|
+
end
|
29
|
+
|
30
|
+
snapshot = {
|
31
|
+
"id" => snapshot_id,
|
32
|
+
"name" => "ROOT-6",
|
33
|
+
"created" => "2013-05-22T14:52:55-0500",
|
34
|
+
"state" => "BackedUp",
|
35
|
+
"account" => "accountname",
|
36
|
+
"domainid" => "6023b6fe-5bef-4358-bc76-9f4e75afa52f",
|
37
|
+
"domain" => "ROOT",
|
38
|
+
"intervaltype" => "weekly"
|
39
|
+
}
|
40
|
+
|
41
|
+
self.data[:snapshots][snapshot_id]= snapshot
|
42
|
+
{'createsnapshotresponse' => snapshot}
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
@@ -0,0 +1,27 @@
|
|
1
|
+
module Fog
|
2
|
+
module Cosmic
|
3
|
+
class Compute
|
4
|
+
|
5
|
+
class Real
|
6
|
+
# Create a new keypair and returns the private key
|
7
|
+
#
|
8
|
+
# {Cosmic API Reference}[https://apidoc.mcc.schubergphilis.com/root_admin/createSSHKeyPair.html]
|
9
|
+
def create_ssh_key_pair(*args)
|
10
|
+
options = {}
|
11
|
+
if args[0].is_a? Hash
|
12
|
+
options = args[0]
|
13
|
+
options.merge!('command' => 'createSSHKeyPair')
|
14
|
+
else
|
15
|
+
options.merge!('command' => 'createSSHKeyPair',
|
16
|
+
'name' => args[0])
|
17
|
+
end
|
18
|
+
# add project id if we have one
|
19
|
+
@cosmic_project_id ? options.merge!('projectid' => @cosmic_project_id) : nil
|
20
|
+
request(options)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
@@ -0,0 +1,26 @@
|
|
1
|
+
module Fog
|
2
|
+
module Cosmic
|
3
|
+
class Compute
|
4
|
+
|
5
|
+
class Real
|
6
|
+
# Creates a static route
|
7
|
+
#
|
8
|
+
# {Cosmic API Reference}[https://apidoc.mcc.schubergphilis.com/root_admin/createStaticRoute.html]
|
9
|
+
def create_static_route(*args)
|
10
|
+
options = {}
|
11
|
+
if args[0].is_a? Hash
|
12
|
+
options = args[0]
|
13
|
+
options.merge!('command' => 'createStaticRoute')
|
14
|
+
else
|
15
|
+
options.merge!('command' => 'createStaticRoute',
|
16
|
+
'gatewayid' => args[0],
|
17
|
+
'cidr' => args[1])
|
18
|
+
end
|
19
|
+
request(options)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module Fog
|
2
|
+
module Cosmic
|
3
|
+
class Compute
|
4
|
+
|
5
|
+
class Real
|
6
|
+
# Creates a Storage network IP range.
|
7
|
+
#
|
8
|
+
# {Cosmic API Reference}[https://apidoc.mcc.schubergphilis.com/root_admin/createStorageNetworkIpRange.html]
|
9
|
+
def create_storage_network_ip_range(*args)
|
10
|
+
options = {}
|
11
|
+
if args[0].is_a? Hash
|
12
|
+
options = args[0]
|
13
|
+
options.merge!('command' => 'createStorageNetworkIpRange')
|
14
|
+
else
|
15
|
+
options.merge!('command' => 'createStorageNetworkIpRange',
|
16
|
+
'podid' => args[0],
|
17
|
+
'netmask' => args[1],
|
18
|
+
'gateway' => args[2],
|
19
|
+
'startip' => args[3])
|
20
|
+
end
|
21
|
+
request(options)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
@@ -0,0 +1,27 @@
|
|
1
|
+
module Fog
|
2
|
+
module Cosmic
|
3
|
+
class Compute
|
4
|
+
|
5
|
+
class Real
|
6
|
+
# Creates a storage pool.
|
7
|
+
#
|
8
|
+
# {Cosmic API Reference}[https://apidoc.mcc.schubergphilis.com/root_admin/createStoragePool.html]
|
9
|
+
def create_storage_pool(*args)
|
10
|
+
options = {}
|
11
|
+
if args[0].is_a? Hash
|
12
|
+
options = args[0]
|
13
|
+
options.merge!('command' => 'createStoragePool')
|
14
|
+
else
|
15
|
+
options.merge!('command' => 'createStoragePool',
|
16
|
+
'url' => args[0],
|
17
|
+
'name' => args[1],
|
18
|
+
'zoneid' => args[2])
|
19
|
+
end
|
20
|
+
request(options)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
@@ -0,0 +1,27 @@
|
|
1
|
+
module Fog
|
2
|
+
module Cosmic
|
3
|
+
class Compute
|
4
|
+
|
5
|
+
class Real
|
6
|
+
# Creates resource tag(s)
|
7
|
+
#
|
8
|
+
# {Cosmic API Reference}[https://apidoc.mcc.schubergphilis.com/root_admin/createTags.html]
|
9
|
+
def create_tags(*args)
|
10
|
+
options = {}
|
11
|
+
if args[0].is_a? Hash
|
12
|
+
options = args[0]
|
13
|
+
options.merge!('command' => 'createTags')
|
14
|
+
else
|
15
|
+
options.merge!('command' => 'createTags',
|
16
|
+
'tags' => args[0],
|
17
|
+
'resourcetype' => args[1],
|
18
|
+
'resourceids' => args[2])
|
19
|
+
end
|
20
|
+
request(options)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
@@ -0,0 +1,27 @@
|
|
1
|
+
module Fog
|
2
|
+
module Cosmic
|
3
|
+
class Compute
|
4
|
+
|
5
|
+
class Real
|
6
|
+
# Creates a template of a virtual machine. The virtual machine must be in a STOPPED state. A template created from this command is automatically designated as a private template visible to the account that created it.
|
7
|
+
#
|
8
|
+
# {Cosmic API Reference}[https://apidoc.mcc.schubergphilis.com/root_admin/createTemplate.html]
|
9
|
+
def create_template(*args)
|
10
|
+
options = {}
|
11
|
+
if args[0].is_a? Hash
|
12
|
+
options = args[0]
|
13
|
+
options.merge!('command' => 'createTemplate')
|
14
|
+
else
|
15
|
+
options.merge!('command' => 'createTemplate',
|
16
|
+
'ostypeid' => args[0],
|
17
|
+
'name' => args[1],
|
18
|
+
'displaytext' => args[2])
|
19
|
+
end
|
20
|
+
request(options)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
@@ -0,0 +1,30 @@
|
|
1
|
+
module Fog
|
2
|
+
module Cosmic
|
3
|
+
class Compute
|
4
|
+
|
5
|
+
class Real
|
6
|
+
# Creates a user for an account that already exists
|
7
|
+
#
|
8
|
+
# {Cosmic API Reference}[https://apidoc.mcc.schubergphilis.com/root_admin/createUser.html]
|
9
|
+
def create_user(*args)
|
10
|
+
options = {}
|
11
|
+
if args[0].is_a? Hash
|
12
|
+
options = args[0]
|
13
|
+
options.merge!('command' => 'createUser')
|
14
|
+
else
|
15
|
+
options.merge!('command' => 'createUser',
|
16
|
+
'email' => args[0],
|
17
|
+
'username' => args[1],
|
18
|
+
'lastname' => args[2],
|
19
|
+
'password' => args[3],
|
20
|
+
'firstname' => args[4],
|
21
|
+
'account' => args[5])
|
22
|
+
end
|
23
|
+
request(options)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module Fog
|
2
|
+
module Cosmic
|
3
|
+
class Compute
|
4
|
+
|
5
|
+
class Real
|
6
|
+
# Create a virtual router element.
|
7
|
+
#
|
8
|
+
# {Cosmic API Reference}[https://apidoc.mcc.schubergphilis.com/root_admin/createVirtualRouterElement.html]
|
9
|
+
def create_virtual_router_element(*args)
|
10
|
+
options = {}
|
11
|
+
if args[0].is_a? Hash
|
12
|
+
options = args[0]
|
13
|
+
options.merge!('command' => 'createVirtualRouterElement')
|
14
|
+
else
|
15
|
+
options.merge!('command' => 'createVirtualRouterElement',
|
16
|
+
'nspid' => args[0])
|
17
|
+
end
|
18
|
+
request(options)
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module Fog
|
2
|
+
module Cosmic
|
3
|
+
class Compute
|
4
|
+
|
5
|
+
class Real
|
6
|
+
# Creates a VLAN IP range.
|
7
|
+
#
|
8
|
+
# {Cosmic API Reference}[https://apidoc.mcc.schubergphilis.com/root_admin/createVlanIpRange.html]
|
9
|
+
def create_vlan_ip_range(*args)
|
10
|
+
options = {}
|
11
|
+
if args[0].is_a? Hash
|
12
|
+
options = args[0]
|
13
|
+
options.merge!('command' => 'createVlanIpRange')
|
14
|
+
else
|
15
|
+
options.merge!('command' => 'createVlanIpRange')
|
16
|
+
end
|
17
|
+
request(options)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module Fog
|
2
|
+
module Cosmic
|
3
|
+
class Compute
|
4
|
+
|
5
|
+
class Real
|
6
|
+
# Creates snapshot for a vm.
|
7
|
+
#
|
8
|
+
# {Cosmic API Reference}[https://apidoc.mcc.schubergphilis.com/root_admin/createVMSnapshot.html]
|
9
|
+
def create_vm_snapshot(*args)
|
10
|
+
options = {}
|
11
|
+
if args[0].is_a? Hash
|
12
|
+
options = args[0]
|
13
|
+
options.merge!('command' => 'createVMSnapshot')
|
14
|
+
else
|
15
|
+
options.merge!('command' => 'createVMSnapshot',
|
16
|
+
'virtualmachineid' => args[0])
|
17
|
+
end
|
18
|
+
request(options)
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
@@ -0,0 +1,69 @@
|
|
1
|
+
module Fog
|
2
|
+
module Cosmic
|
3
|
+
class Compute
|
4
|
+
|
5
|
+
class Real
|
6
|
+
# Creates a disk volume from a disk offering. This disk volume must still be attached to a virtual machine to make use of it.
|
7
|
+
#
|
8
|
+
# {Cosmic API Reference}[https://apidoc.mcc.schubergphilis.com/root_admin/createVolume.html]
|
9
|
+
def create_volume(*args)
|
10
|
+
options = {}
|
11
|
+
if args[0].is_a? Hash
|
12
|
+
options = args[0]
|
13
|
+
options.merge!('command' => 'createVolume')
|
14
|
+
else
|
15
|
+
options.merge!('command' => 'createVolume',
|
16
|
+
'name' => args[0])
|
17
|
+
end
|
18
|
+
# add project id if we have one
|
19
|
+
@cosmic_project_id ? options.merge!('projectid' => @cosmic_project_id) : nil
|
20
|
+
request(options)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
class Mock
|
25
|
+
def create_volume(options={})
|
26
|
+
volume_id = Fog::Cosmic.uuid
|
27
|
+
|
28
|
+
unless volume_name = options['name']
|
29
|
+
raise Fog::Cosmic::Compute::BadRequest.new('Unable to execute API command createvolume due to missing parameter name')
|
30
|
+
end
|
31
|
+
|
32
|
+
unless zone_id = options['zoneid']
|
33
|
+
raise Fog::Cosmic::Compute::BadRequest.new('Unable to execute API command createvolume due to missing parameter zoneid')
|
34
|
+
end
|
35
|
+
|
36
|
+
unless disk_offering_id = options['diskofferingid']
|
37
|
+
raise Fog::Cosmic::Compute::BadRequest.new('Unable to execute API command createvolume due to missing parameter diskofferingid')
|
38
|
+
end
|
39
|
+
|
40
|
+
volume = {
|
41
|
+
"id" => volume_id,
|
42
|
+
"name" => volume_name,
|
43
|
+
"zoneid" => zone_id,
|
44
|
+
"zonename" => "ey-wdc-00",
|
45
|
+
"type" => "DATADISK",
|
46
|
+
"size" => 5368709120,
|
47
|
+
"created" => "2012-05-22T14:52:55-0500",
|
48
|
+
"state" => "Allocated",
|
49
|
+
"account" => "accountname",
|
50
|
+
"domainid" => "6023b6fe-5bef-4358-bc76-9f4e75afa52f",
|
51
|
+
"domain" => "ROOT",
|
52
|
+
"storagetype" => "shared",
|
53
|
+
"hypervisor" => "None",
|
54
|
+
"diskofferingid" => disk_offering_id,
|
55
|
+
"diskofferingname" => "Small",
|
56
|
+
"diskofferingdisplaytext" => "Small Disk, 5 GB",
|
57
|
+
"storage" => "none",
|
58
|
+
"destroyed" => false,
|
59
|
+
"isextractable" => false
|
60
|
+
}
|
61
|
+
|
62
|
+
self.data[:volumes][volume_id]= volume
|
63
|
+
{'createvolumeresponse' => volume}
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|