fog 1.1.2 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +5 -0
- data/README.rdoc +1 -1
- data/Rakefile +3 -16
- data/changelog.txt +401 -2
- data/docs/_layouts/default.html +1 -1
- data/docs/index.markdown +2 -2
- data/docs/storage/index.markdown +4 -4
- data/fog.gemspec +7 -4
- data/lib/fog.rb +1 -1
- data/lib/fog/aws.rb +32 -6
- data/lib/fog/aws/auto_scaling.rb +1 -18
- data/lib/fog/aws/beanstalk.rb +140 -0
- data/lib/fog/aws/cloud_formation.rb +1 -18
- data/lib/fog/aws/cloud_watch.rb +2 -19
- data/lib/fog/aws/compute.rb +16 -21
- data/lib/fog/aws/dns.rb +2 -2
- data/lib/fog/aws/dynamodb.rb +162 -0
- data/lib/fog/aws/elasticache.rb +1 -14
- data/lib/fog/aws/elb.rb +34 -26
- data/lib/fog/aws/elb/policy_types.rb +35 -0
- data/lib/fog/aws/emr.rb +5 -4
- data/lib/fog/aws/iam.rb +16 -1
- data/lib/fog/aws/models/auto_scaling/activity.rb +1 -1
- data/lib/fog/aws/models/auto_scaling/group.rb +2 -2
- data/lib/fog/aws/models/beanstalk/application.rb +62 -0
- data/lib/fog/aws/models/beanstalk/applications.rb +25 -0
- data/lib/fog/aws/models/beanstalk/environment.rb +129 -0
- data/lib/fog/aws/models/beanstalk/environments.rb +29 -0
- data/lib/fog/aws/models/beanstalk/event.rb +20 -0
- data/lib/fog/aws/models/beanstalk/events.rb +19 -0
- data/lib/fog/aws/models/beanstalk/template.rb +62 -0
- data/lib/fog/aws/models/beanstalk/templates.rb +70 -0
- data/lib/fog/aws/models/beanstalk/version.rb +79 -0
- data/lib/fog/aws/models/beanstalk/versions.rb +31 -0
- data/lib/fog/aws/models/compute/address.rb +7 -4
- data/lib/fog/aws/models/compute/addresses.rb +2 -2
- data/lib/fog/aws/models/compute/flavors.rb +1 -1
- data/lib/fog/aws/models/compute/key_pairs.rb +2 -2
- data/lib/fog/aws/models/compute/security_group.rb +2 -2
- data/lib/fog/aws/models/compute/security_groups.rb +30 -5
- data/lib/fog/aws/models/compute/server.rb +2 -0
- data/lib/fog/aws/models/compute/servers.rb +2 -2
- data/lib/fog/aws/models/compute/subnet.rb +58 -0
- data/lib/fog/aws/models/compute/subnets.rb +99 -0
- data/lib/fog/aws/models/compute/volumes.rb +3 -3
- data/lib/fog/aws/models/compute/vpc.rb +63 -0
- data/lib/fog/aws/models/compute/vpcs.rb +93 -0
- data/lib/fog/aws/models/dns/record.rb +37 -23
- data/lib/fog/aws/models/elasticache/cluster.rb +1 -1
- data/lib/fog/aws/models/elb/listener.rb +9 -7
- data/lib/fog/aws/models/storage/directory.rb +22 -1
- data/lib/fog/aws/models/storage/file.rb +58 -7
- data/lib/fog/aws/models/storage/version.rb +36 -0
- data/lib/fog/aws/models/storage/versions.rb +38 -0
- data/lib/fog/aws/parsers/auto_scaling/describe_scheduled_actions.rb +3 -3
- data/lib/fog/aws/parsers/beanstalk/check_dns_availability.rb +19 -0
- data/lib/fog/aws/parsers/beanstalk/create_application.rb +24 -0
- data/lib/fog/aws/parsers/beanstalk/create_application_version.rb +26 -0
- data/lib/fog/aws/parsers/beanstalk/create_configuration_template.rb +29 -0
- data/lib/fog/aws/parsers/beanstalk/create_environment.rb +37 -0
- data/lib/fog/aws/parsers/beanstalk/create_storage_location.rb +18 -0
- data/lib/fog/aws/parsers/beanstalk/describe_application_versions.rb +26 -0
- data/lib/fog/aws/parsers/beanstalk/describe_applications.rb +24 -0
- data/lib/fog/aws/parsers/beanstalk/describe_configuration_options.rb +32 -0
- data/lib/fog/aws/parsers/beanstalk/describe_configuration_settings.rb +30 -0
- data/lib/fog/aws/parsers/beanstalk/describe_environment_resources.rb +26 -0
- data/lib/fog/aws/parsers/beanstalk/describe_environments.rb +38 -0
- data/lib/fog/aws/parsers/beanstalk/describe_events.rb +27 -0
- data/lib/fog/aws/parsers/beanstalk/empty.rb +27 -0
- data/lib/fog/aws/parsers/beanstalk/list_available_solution_stacks.rb +21 -0
- data/lib/fog/aws/parsers/beanstalk/parser.rb +93 -0
- data/lib/fog/aws/parsers/beanstalk/retrieve_environment_info.rb +22 -0
- data/lib/fog/aws/parsers/beanstalk/terminate_environment.rb +37 -0
- data/lib/fog/aws/parsers/beanstalk/update_application.rb +24 -0
- data/lib/fog/aws/parsers/beanstalk/update_application_version.rb +26 -0
- data/lib/fog/aws/parsers/beanstalk/update_configuration_template.rb +29 -0
- data/lib/fog/aws/parsers/beanstalk/update_environment.rb +37 -0
- data/lib/fog/aws/parsers/beanstalk/validate_configuration_settings.rb +22 -0
- data/lib/fog/aws/parsers/compute/allocate_address.rb +1 -1
- data/lib/fog/aws/parsers/compute/associate_address.rb +25 -0
- data/lib/fog/aws/parsers/compute/create_subnet.rb +51 -0
- data/lib/fog/aws/parsers/compute/create_vpc.rb +51 -0
- data/lib/fog/aws/parsers/compute/delete_subnet.rb +24 -0
- data/lib/fog/aws/parsers/compute/delete_vpc.rb +24 -0
- data/lib/fog/aws/parsers/compute/describe_addresses.rb +1 -1
- data/lib/fog/aws/parsers/compute/describe_images.rb +20 -13
- data/lib/fog/aws/parsers/compute/describe_instance_status.rb +62 -29
- data/lib/fog/aws/parsers/compute/describe_instances.rb +2 -2
- data/lib/fog/aws/parsers/compute/describe_security_groups.rb +4 -4
- data/lib/fog/aws/parsers/compute/describe_subnets.rb +49 -0
- data/lib/fog/aws/parsers/compute/describe_volume_status.rb +70 -0
- data/lib/fog/aws/parsers/compute/describe_vpcs.rb +49 -0
- data/lib/fog/aws/parsers/dns/list_resource_record_sets.rb +15 -7
- data/lib/fog/aws/parsers/elb/describe_load_balancer_policies.rb +64 -0
- data/lib/fog/aws/parsers/elb/describe_load_balancer_policy_types.rb +70 -0
- data/lib/fog/aws/parsers/sns/confirm_subscription.rb +1 -1
- data/lib/fog/aws/parsers/sns/create_topic.rb +1 -1
- data/lib/fog/aws/parsers/sns/list_subscriptions.rb +2 -2
- data/lib/fog/aws/parsers/sns/list_topics.rb +1 -1
- data/lib/fog/aws/parsers/sns/subscribe.rb +1 -1
- data/lib/fog/aws/parsers/storage/get_bucket_lifecycle.rb +32 -0
- data/lib/fog/aws/parsers/storage/get_bucket_object_versions.rb +1 -1
- data/lib/fog/aws/parsers/storage/get_bucket_versioning.rb +1 -1
- data/lib/fog/aws/parsers/sts/get_session_token.rb +1 -1
- data/lib/fog/aws/rds.rb +19 -21
- data/lib/fog/aws/requests/auto_scaling/delete_launch_configuration.rb +10 -1
- data/lib/fog/aws/requests/auto_scaling/describe_launch_configurations.rb +16 -7
- data/lib/fog/aws/requests/auto_scaling/describe_scheduled_actions.rb +5 -0
- data/lib/fog/aws/requests/auto_scaling/put_scheduled_update_group_action.rb +13 -3
- data/lib/fog/aws/requests/beanstalk/check_dns_availability.rb +27 -0
- data/lib/fog/aws/requests/beanstalk/create_application.rb +29 -0
- data/lib/fog/aws/requests/beanstalk/create_application_version.rb +41 -0
- data/lib/fog/aws/requests/beanstalk/create_configuration_template.rb +44 -0
- data/lib/fog/aws/requests/beanstalk/create_environment.rb +50 -0
- data/lib/fog/aws/requests/beanstalk/create_storage_location.rb +27 -0
- data/lib/fog/aws/requests/beanstalk/delete_application.rb +29 -0
- data/lib/fog/aws/requests/beanstalk/delete_application_version.rb +36 -0
- data/lib/fog/aws/requests/beanstalk/delete_configuration_template.rb +34 -0
- data/lib/fog/aws/requests/beanstalk/delete_environment_configuration.rb +34 -0
- data/lib/fog/aws/requests/beanstalk/describe_application_versions.rb +34 -0
- data/lib/fog/aws/requests/beanstalk/describe_applications.rb +30 -0
- data/lib/fog/aws/requests/beanstalk/describe_configuration_options.rb +40 -0
- data/lib/fog/aws/requests/beanstalk/describe_configuration_settings.rb +31 -0
- data/lib/fog/aws/requests/beanstalk/describe_environment_resources.rb +29 -0
- data/lib/fog/aws/requests/beanstalk/describe_environments.rb +40 -0
- data/lib/fog/aws/requests/beanstalk/describe_events.rb +29 -0
- data/lib/fog/aws/requests/beanstalk/list_available_solution_stacks.rb +27 -0
- data/lib/fog/aws/requests/beanstalk/rebuild_environment.rb +30 -0
- data/lib/fog/aws/requests/beanstalk/request_environment_info.rb +29 -0
- data/lib/fog/aws/requests/beanstalk/restart_app_server.rb +29 -0
- data/lib/fog/aws/requests/beanstalk/retrieve_environment_info.rb +29 -0
- data/lib/fog/aws/requests/beanstalk/swap_environment_cnames.rb +29 -0
- data/lib/fog/aws/requests/beanstalk/terminate_environment.rb +31 -0
- data/lib/fog/aws/requests/beanstalk/update_application.rb +30 -0
- data/lib/fog/aws/requests/beanstalk/update_application_version.rb +30 -0
- data/lib/fog/aws/requests/beanstalk/update_configuration_template.rb +36 -0
- data/lib/fog/aws/requests/beanstalk/update_environment.rb +42 -0
- data/lib/fog/aws/requests/beanstalk/validate_configuration_settings.rb +33 -0
- data/lib/fog/aws/requests/compute/allocate_address.rb +11 -4
- data/lib/fog/aws/requests/compute/associate_address.rb +44 -17
- data/lib/fog/aws/requests/compute/authorize_security_group_ingress.rb +15 -17
- data/lib/fog/aws/requests/compute/create_security_group.rb +8 -4
- data/lib/fog/aws/requests/compute/create_subnet.rb +79 -0
- data/lib/fog/aws/requests/compute/create_tags.rb +3 -2
- data/lib/fog/aws/requests/compute/create_vpc.rb +71 -0
- data/lib/fog/aws/requests/compute/delete_security_group.rb +22 -4
- data/lib/fog/aws/requests/compute/delete_subnet.rb +49 -0
- data/lib/fog/aws/requests/compute/delete_vpc.rb +52 -0
- data/lib/fog/aws/requests/compute/describe_security_groups.rb +2 -0
- data/lib/fog/aws/requests/compute/describe_subnets.rb +66 -0
- data/lib/fog/aws/requests/compute/describe_volume_status.rb +50 -0
- data/lib/fog/aws/requests/compute/describe_vpcs.rb +62 -0
- data/lib/fog/aws/requests/compute/detach_volume.rb +13 -8
- data/lib/fog/aws/requests/compute/disassociate_address.rb +7 -5
- data/lib/fog/aws/requests/compute/request_spot_instances.rb +5 -1
- data/lib/fog/aws/requests/compute/revoke_security_group_ingress.rb +11 -13
- data/lib/fog/aws/requests/compute/run_instances.rb +5 -1
- data/lib/fog/aws/requests/dns/change_resource_record_sets.rb +43 -28
- data/lib/fog/aws/requests/dns/create_hosted_zone.rb +9 -9
- data/lib/fog/aws/requests/dns/delete_hosted_zone.rb +7 -7
- data/lib/fog/aws/requests/dns/get_change.rb +5 -5
- data/lib/fog/aws/requests/dns/get_hosted_zone.rb +8 -8
- data/lib/fog/aws/requests/dns/list_hosted_zones.rb +15 -15
- data/lib/fog/aws/requests/dns/list_resource_record_sets.rb +23 -20
- data/lib/fog/aws/requests/dynamodb/batch_get_item.rb +43 -0
- data/lib/fog/aws/requests/dynamodb/create_table.rb +55 -0
- data/lib/fog/aws/requests/dynamodb/delete_item.rb +45 -0
- data/lib/fog/aws/requests/dynamodb/delete_table.rb +42 -0
- data/lib/fog/aws/requests/dynamodb/describe_table.rb +44 -0
- data/lib/fog/aws/requests/dynamodb/get_item.rb +43 -0
- data/lib/fog/aws/requests/dynamodb/list_tables.rb +29 -0
- data/lib/fog/aws/requests/dynamodb/put_item.rb +41 -0
- data/lib/fog/aws/requests/dynamodb/query.rb +44 -0
- data/lib/fog/aws/requests/dynamodb/scan.rb +45 -0
- data/lib/fog/aws/requests/dynamodb/update_item.rb +49 -0
- data/lib/fog/aws/requests/dynamodb/update_table.rb +46 -0
- data/lib/fog/aws/requests/elasticache/create_cache_cluster.rb +2 -2
- data/lib/fog/aws/requests/elasticache/modify_cache_cluster.rb +2 -2
- data/lib/fog/aws/requests/elb/create_app_cookie_stickiness_policy.rb +2 -0
- data/lib/fog/aws/requests/elb/create_lb_cookie_stickiness_policy.rb +3 -1
- data/lib/fog/aws/requests/elb/create_load_balancer.rb +7 -2
- data/lib/fog/aws/requests/elb/create_load_balancer_listeners.rb +10 -1
- data/lib/fog/aws/requests/elb/create_load_balancer_policy.rb +79 -0
- data/lib/fog/aws/requests/elb/delete_load_balancer_policy.rb +1 -1
- data/lib/fog/aws/requests/elb/describe_load_balancer_policies.rb +71 -0
- data/lib/fog/aws/requests/elb/describe_load_balancer_policy_types.rb +68 -0
- data/lib/fog/aws/requests/elb/describe_load_balancers.rb +5 -1
- data/lib/fog/aws/requests/elb/set_load_balancer_policies_of_listener.rb +1 -1
- data/lib/fog/aws/requests/emr/run_job_flow.rb +9 -7
- data/lib/fog/aws/requests/iam/add_user_to_group.rb +24 -0
- data/lib/fog/aws/requests/iam/create_access_key.rb +24 -0
- data/lib/fog/aws/requests/iam/create_group.rb +21 -0
- data/lib/fog/aws/requests/iam/create_user.rb +21 -0
- data/lib/fog/aws/requests/iam/delete_access_key.rb +17 -0
- data/lib/fog/aws/requests/iam/delete_group.rb +19 -0
- data/lib/fog/aws/requests/iam/delete_user.rb +17 -0
- data/lib/fog/aws/requests/iam/delete_user_policy.rb +16 -0
- data/lib/fog/aws/requests/iam/list_access_keys.rb +21 -0
- data/lib/fog/aws/requests/iam/list_groups.rb +18 -0
- data/lib/fog/aws/requests/iam/list_groups_for_user.rb +24 -0
- data/lib/fog/aws/requests/iam/list_user_policies.rb +18 -0
- data/lib/fog/aws/requests/iam/list_users.rb +17 -0
- data/lib/fog/aws/requests/iam/put_user_policy.rb +18 -0
- data/lib/fog/aws/requests/iam/remove_user_from_group.rb +19 -0
- data/lib/fog/aws/requests/iam/upload_server_certificate.rb +4 -1
- data/lib/fog/aws/requests/rds/authorize_db_security_group_ingress.rb +30 -1
- data/lib/fog/aws/requests/rds/create_db_instance.rb +18 -15
- data/lib/fog/aws/requests/rds/create_db_parameter_group.rb +19 -1
- data/lib/fog/aws/requests/rds/create_db_security_group.rb +19 -1
- data/lib/fog/aws/requests/rds/create_db_snapshot.rb +38 -2
- data/lib/fog/aws/requests/rds/delete_db_instance.rb +1 -2
- data/lib/fog/aws/requests/rds/delete_db_parameter_group.rb +11 -1
- data/lib/fog/aws/requests/rds/delete_db_security_group.rb +11 -1
- data/lib/fog/aws/requests/rds/delete_db_snapshot.rb +15 -4
- data/lib/fog/aws/requests/rds/describe_db_instances.rb +25 -9
- data/lib/fog/aws/requests/rds/describe_db_parameter_groups.rb +19 -1
- data/lib/fog/aws/requests/rds/describe_db_parameters.rb +0 -1
- data/lib/fog/aws/requests/rds/describe_db_security_groups.rb +49 -3
- data/lib/fog/aws/requests/rds/describe_db_snapshots.rb +28 -1
- data/lib/fog/aws/requests/rds/modify_db_instance.rb +10 -8
- data/lib/fog/aws/requests/rds/reboot_db_instance.rb +6 -6
- data/lib/fog/aws/requests/rds/revoke_db_security_group_ingress.rb +27 -1
- data/lib/fog/aws/requests/sns/confirm_subscription.rb +1 -1
- data/lib/fog/aws/requests/sns/delete_topic.rb +1 -1
- data/lib/fog/aws/requests/sns/get_topic_attributes.rb +1 -1
- data/lib/fog/aws/requests/sns/list_subscriptions_by_topic.rb +1 -1
- data/lib/fog/aws/requests/sns/publish.rb +1 -1
- data/lib/fog/aws/requests/sns/set_topic_attributes.rb +1 -1
- data/lib/fog/aws/requests/sns/subscribe.rb +1 -1
- data/lib/fog/aws/requests/sns/unsubscribe.rb +1 -1
- data/lib/fog/aws/requests/sqs/change_message_visibility.rb +1 -1
- data/lib/fog/aws/requests/sqs/delete_message.rb +1 -1
- data/lib/fog/aws/requests/sqs/receive_message.rb +13 -14
- data/lib/fog/aws/requests/storage/copy_object.rb +3 -5
- data/lib/fog/aws/requests/storage/delete_bucket_lifecycle.rb +30 -0
- data/lib/fog/aws/requests/storage/delete_object.rb +73 -2
- data/lib/fog/aws/requests/storage/get_bucket.rb +3 -2
- data/lib/fog/aws/requests/storage/get_bucket_lifecycle.rb +41 -0
- data/lib/fog/aws/requests/storage/get_bucket_object_versions.rb +95 -2
- data/lib/fog/aws/requests/storage/get_bucket_versioning.rb +32 -0
- data/lib/fog/aws/requests/storage/get_object.rb +42 -12
- data/lib/fog/aws/requests/storage/get_object_http_url.rb +7 -2
- data/lib/fog/aws/requests/storage/get_object_https_url.rb +7 -2
- data/lib/fog/aws/requests/storage/head_object.rb +7 -6
- data/lib/fog/aws/requests/storage/put_bucket_lifecycle.rb +48 -0
- data/lib/fog/aws/requests/storage/put_bucket_versioning.rb +41 -0
- data/lib/fog/aws/requests/storage/put_bucket_website.rb +17 -0
- data/lib/fog/aws/requests/storage/put_object.rb +26 -10
- data/lib/fog/aws/requests/storage/sync_clock.rb +1 -1
- data/lib/fog/aws/requests/sts/get_federation_token.rb +1 -0
- data/lib/fog/aws/requests/sts/get_session_token.rb +1 -0
- data/lib/fog/aws/ses.rb +2 -7
- data/lib/fog/aws/simpledb.rb +1 -18
- data/lib/fog/aws/sns.rb +1 -16
- data/lib/fog/aws/sqs.rb +2 -12
- data/lib/fog/aws/storage.rb +7 -29
- data/lib/fog/{new_servers.rb → bare_metal_cloud.rb} +2 -2
- data/lib/fog/{new_servers → bare_metal_cloud}/compute.rb +14 -14
- data/lib/fog/{new_servers → bare_metal_cloud}/requests/compute/add_server.rb +1 -1
- data/lib/fog/{new_servers → bare_metal_cloud}/requests/compute/cancel_server.rb +1 -1
- data/lib/fog/{new_servers → bare_metal_cloud}/requests/compute/get_server.rb +1 -1
- data/lib/fog/{new_servers → bare_metal_cloud}/requests/compute/list_images.rb +1 -1
- data/lib/fog/{new_servers → bare_metal_cloud}/requests/compute/list_plans.rb +1 -1
- data/lib/fog/{new_servers → bare_metal_cloud}/requests/compute/list_servers.rb +1 -1
- data/lib/fog/{new_servers → bare_metal_cloud}/requests/compute/reboot_server.rb +1 -1
- data/lib/fog/bin.rb +4 -1
- data/lib/fog/bin/aws.rb +9 -1
- data/lib/fog/bin/{new_servers.rb → bare_metal_cloud.rb} +5 -5
- data/lib/fog/bin/cloudstack.rb +30 -0
- data/lib/fog/bin/joyent.rb +31 -0
- data/lib/fog/bin/ovirt.rb +30 -0
- data/lib/fog/bin/voxel.rb +1 -1
- data/lib/fog/bluebox/compute.rb +4 -0
- data/lib/fog/bluebox/models/compute/location.rb +17 -0
- data/lib/fog/bluebox/models/compute/locations.rb +28 -0
- data/lib/fog/bluebox/models/compute/server.rb +12 -5
- data/lib/fog/bluebox/requests/compute/create_block.rb +2 -2
- data/lib/fog/bluebox/requests/compute/get_location.rb +26 -0
- data/lib/fog/bluebox/requests/compute/get_locations.rb +24 -0
- data/lib/fog/brightbox/compute.rb +1 -0
- data/lib/fog/brightbox/requests/compute/update_firewall_rule.rb +13 -0
- data/lib/fog/cloudstack.rb +28 -0
- data/lib/fog/cloudstack/compute.rb +254 -0
- data/lib/fog/cloudstack/requests/compute/acquire_ip_address.rb +21 -0
- data/lib/fog/cloudstack/requests/compute/assign_to_load_balancer_rule.rb +25 -0
- data/lib/fog/cloudstack/requests/compute/attach_volume.rb +23 -0
- data/lib/fog/cloudstack/requests/compute/authorize_security_group_ingress.rb +22 -0
- data/lib/fog/cloudstack/requests/compute/change_service_for_virtual_machine.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/create_account.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/create_domain.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/create_load_balancer_rule.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/create_network.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/create_port_forwarding_rule.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/create_security_group.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/create_snapshot.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/create_snapshot_policy.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/create_ssh_key_pair.rb +22 -0
- data/lib/fog/cloudstack/requests/compute/create_user.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/create_volume.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/delete_account.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/delete_domain.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/delete_load_balancer_rule.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/delete_port_forwarding_rule.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/delete_security_group.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/delete_snapshot.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/delete_snapshot_policies.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/delete_ssh_key_pair.rb +21 -0
- data/lib/fog/cloudstack/requests/compute/delete_user.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/delete_volume.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/deploy_virtual_machine.rb +33 -0
- data/lib/fog/cloudstack/requests/compute/destroy_virtual_machine.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/detach_volume.rb +21 -0
- data/lib/fog/cloudstack/requests/compute/disable_account.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/disable_user.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/enable_account.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/enable_user.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/generate_usage_records.rb +28 -0
- data/lib/fog/cloudstack/requests/compute/get_vm_password.rb +21 -0
- data/lib/fog/cloudstack/requests/compute/list_accounts.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_alerts.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_async_jobs.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_capabilities.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_capacity.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_clusters.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_configurations.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_disk_offerings.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_domain_children.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_domains.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_events.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_external_firewalls.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_external_load_balancers.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_hosts.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_hypervisors.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_instance_groups.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_isos.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_load_balancer_rule_instances.rb +23 -0
- data/lib/fog/cloudstack/requests/compute/list_load_balancer_rules.rb +22 -0
- data/lib/fog/cloudstack/requests/compute/list_network_offerings.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_networks.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_os_categories.rb +22 -0
- data/lib/fog/cloudstack/requests/compute/list_os_types.rb +22 -0
- data/lib/fog/cloudstack/requests/compute/list_pods.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_port_forwarding_rules.rb +22 -0
- data/lib/fog/cloudstack/requests/compute/list_public_ip_addresses.rb +22 -0
- data/lib/fog/cloudstack/requests/compute/list_resource_limits.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_security_groups.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_service_offerings.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_snapshot_policies.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_snapshots.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_ssh_key_pairs.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_storage_pools.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_templates.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_usage_records.rb +28 -0
- data/lib/fog/cloudstack/requests/compute/list_users.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_virtual_machines.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_volumes.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/list_zones.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/migrate_virtual_machine.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/query_async_job_result.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/reboot_virtual_machine.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/recover_virtual_machine.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/register_ssh_key_pair.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/register_user_keys.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/remove_from_load_balancer_rule.rb +25 -0
- data/lib/fog/cloudstack/requests/compute/reset_password_for_virtual_machine.rb +21 -0
- data/lib/fog/cloudstack/requests/compute/revoke_security_group_ingress.rb +21 -0
- data/lib/fog/cloudstack/requests/compute/start_virtual_machine.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/stop_virtual_machine.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/update_account.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/update_domain.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/update_resource_count.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/update_user.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/update_virtual_machine.rb +20 -0
- data/lib/fog/compute.rb +17 -3
- data/lib/fog/compute/models/server.rb +11 -0
- data/lib/fog/core.rb +1 -3
- data/lib/fog/core/connection.rb +2 -2
- data/lib/fog/core/errors.rb +8 -2
- data/lib/fog/core/model.rb +8 -0
- data/lib/fog/core/scp.rb +18 -2
- data/lib/fog/dns.rb +1 -0
- data/lib/fog/dnsimple/dns.rb +1 -1
- data/lib/fog/dynect/models/dns/records.rb +2 -2
- data/lib/fog/dynect/requests/dns/get_node_list.rb +2 -1
- data/lib/fog/ecloud/compute.rb +1 -1
- data/lib/fog/ecloud/requests/compute/add_backup_internet_service.rb +1 -1
- data/lib/fog/ecloud/requests/compute/add_internet_service.rb +2 -2
- data/lib/fog/ecloud/requests/compute/add_node.rb +1 -1
- data/lib/fog/ecloud/requests/compute/clone_vapp.rb +1 -1
- data/lib/fog/ecloud/requests/compute/configure_internet_service.rb +1 -1
- data/lib/fog/ecloud/requests/compute/configure_network.rb +1 -1
- data/lib/fog/ecloud/requests/compute/configure_network_ip.rb +1 -1
- data/lib/fog/ecloud/requests/compute/configure_vapp.rb +1 -1
- data/lib/fog/ecloud/requests/compute/instantiate_vapp_template.rb +1 -1
- data/lib/fog/glesys/compute.rb +4 -2
- data/lib/fog/glesys/models/compute/server.rb +14 -14
- data/lib/fog/google/requests/storage/get_object.rb +22 -14
- data/lib/fog/joyent.rb +8 -0
- data/lib/fog/joyent/compute.rb +228 -0
- data/lib/fog/joyent/errors.rb +90 -0
- data/lib/fog/joyent/models/compute/flavor.rb +17 -0
- data/lib/fog/joyent/models/compute/flavors.rb +25 -0
- data/lib/fog/joyent/models/compute/image.rb +18 -0
- data/lib/fog/joyent/models/compute/images.rb +25 -0
- data/lib/fog/joyent/models/compute/key.rb +19 -0
- data/lib/fog/joyent/models/compute/keys.rb +34 -0
- data/lib/fog/joyent/models/compute/server.rb +117 -0
- data/lib/fog/joyent/models/compute/servers.rb +35 -0
- data/lib/fog/joyent/models/compute/snapshot.rb +45 -0
- data/lib/fog/joyent/models/compute/snapshots.rb +37 -0
- data/lib/fog/joyent/requests/compute/add_machine_tags.rb +20 -0
- data/lib/fog/joyent/requests/compute/create_key.rb +56 -0
- data/lib/fog/joyent/requests/compute/create_machine.rb +16 -0
- data/lib/fog/joyent/requests/compute/create_machine_snapshot.rb +18 -0
- data/lib/fog/joyent/requests/compute/delete_all_machine_metadata.rb +16 -0
- data/lib/fog/joyent/requests/compute/delete_all_machine_tags.rb +15 -0
- data/lib/fog/joyent/requests/compute/delete_key.rb +29 -0
- data/lib/fog/joyent/requests/compute/delete_machine.rb +15 -0
- data/lib/fog/joyent/requests/compute/delete_machine_metadata.rb +18 -0
- data/lib/fog/joyent/requests/compute/delete_machine_snapshot.rb +21 -0
- data/lib/fog/joyent/requests/compute/delete_machine_tag.rb +15 -0
- data/lib/fog/joyent/requests/compute/get_dataset.rb +28 -0
- data/lib/fog/joyent/requests/compute/get_key.rb +29 -0
- data/lib/fog/joyent/requests/compute/get_machine.rb +29 -0
- data/lib/fog/joyent/requests/compute/get_machine_metadata.rb +25 -0
- data/lib/fog/joyent/requests/compute/get_machine_snapshot.rb +14 -0
- data/lib/fog/joyent/requests/compute/get_machine_tag.rb +19 -0
- data/lib/fog/joyent/requests/compute/get_package.rb +33 -0
- data/lib/fog/joyent/requests/compute/list_datasets.rb +24 -0
- data/lib/fog/joyent/requests/compute/list_keys.rb +25 -0
- data/lib/fog/joyent/requests/compute/list_machine_snapshots.rb +14 -0
- data/lib/fog/joyent/requests/compute/list_machine_tags.rb +20 -0
- data/lib/fog/joyent/requests/compute/list_machines.rb +25 -0
- data/lib/fog/joyent/requests/compute/list_packages.rb +36 -0
- data/lib/fog/joyent/requests/compute/reboot_machine.rb +15 -0
- data/lib/fog/joyent/requests/compute/resize_machine.rb +13 -0
- data/lib/fog/joyent/requests/compute/start_machine.rb +16 -0
- data/lib/fog/joyent/requests/compute/start_machine_from_snapshot.rb +15 -0
- data/lib/fog/joyent/requests/compute/stop_machine.rb +16 -0
- data/lib/fog/joyent/requests/compute/update_machine_metadata.rb +15 -0
- data/lib/fog/libvirt/compute.rb +5 -3
- data/lib/fog/libvirt/models/compute/server.rb +89 -102
- data/lib/fog/libvirt/models/compute/servers.rb +2 -1
- data/lib/fog/libvirt/models/compute/util.rb +1 -2
- data/lib/fog/local/models/storage/file.rb +8 -1
- data/lib/fog/local/storage.rb +8 -0
- data/lib/fog/ninefold/models/storage/file.rb +8 -0
- data/lib/fog/openstack.rb +9 -7
- data/lib/fog/openstack/compute.rb +0 -2
- data/lib/fog/ovirt.rb +17 -0
- data/lib/fog/ovirt/compute.rb +106 -0
- data/lib/fog/ovirt/models/compute/cluster.rb +24 -0
- data/lib/fog/ovirt/models/compute/clusters.rb +23 -0
- data/lib/fog/ovirt/models/compute/interface.rb +22 -0
- data/lib/fog/ovirt/models/compute/interfaces.rb +32 -0
- data/lib/fog/ovirt/models/compute/server.rb +112 -0
- data/lib/fog/ovirt/models/compute/servers.rb +30 -0
- data/lib/fog/ovirt/models/compute/template.rb +53 -0
- data/lib/fog/ovirt/models/compute/templates.rb +23 -0
- data/lib/fog/ovirt/requests/compute/add_interface.rb +23 -0
- data/lib/fog/ovirt/requests/compute/create_vm.rb +20 -0
- data/lib/fog/ovirt/requests/compute/datacenters.rb +22 -0
- data/lib/fog/ovirt/requests/compute/destroy_interface.rb +25 -0
- data/lib/fog/ovirt/requests/compute/destroy_vm.rb +22 -0
- data/lib/fog/ovirt/requests/compute/get_cluster.rb +18 -0
- data/lib/fog/ovirt/requests/compute/get_template.rb +18 -0
- data/lib/fog/ovirt/requests/compute/get_virtual_machine.rb +18 -0
- data/lib/fog/ovirt/requests/compute/list_clusters.rb +20 -0
- data/lib/fog/ovirt/requests/compute/list_networks.rb +17 -0
- data/lib/fog/ovirt/requests/compute/list_template_interfaces.rb +20 -0
- data/lib/fog/ovirt/requests/compute/list_templates.rb +20 -0
- data/lib/fog/ovirt/requests/compute/list_virtual_machines.rb +20 -0
- data/lib/fog/ovirt/requests/compute/list_vm_interfaces.rb +20 -0
- data/lib/fog/ovirt/requests/compute/mock_files/cluster.xml +20 -0
- data/lib/fog/ovirt/requests/compute/mock_files/clusters.xml +39 -0
- data/lib/fog/ovirt/requests/compute/mock_files/data_centers.xml +17 -0
- data/lib/fog/ovirt/requests/compute/mock_files/nics.xml +10 -0
- data/lib/fog/ovirt/requests/compute/mock_files/storage_domains.xml +36 -0
- data/lib/fog/ovirt/requests/compute/mock_files/template.xml +39 -0
- data/lib/fog/ovirt/requests/compute/mock_files/templates.xml +110 -0
- data/lib/fog/ovirt/requests/compute/mock_files/vm.xml +54 -0
- data/lib/fog/ovirt/requests/compute/mock_files/vms.xml +152 -0
- data/lib/fog/ovirt/requests/compute/storage_domains.rb +22 -0
- data/lib/fog/ovirt/requests/compute/update_interface.rb +25 -0
- data/lib/fog/ovirt/requests/compute/update_vm.rb +20 -0
- data/lib/fog/ovirt/requests/compute/vm_action.rb +26 -0
- data/lib/fog/providers.rb +4 -1
- data/lib/fog/rackspace/models/compute/flavor.rb +2 -0
- data/lib/fog/rackspace/models/storage/directory.rb +5 -1
- data/lib/fog/rackspace/models/storage/file.rb +7 -0
- data/lib/fog/rackspace/requests/compute/create_image.rb +1 -3
- data/lib/fog/rackspace/requests/storage/copy_object.rb +27 -0
- data/lib/fog/rackspace/requests/storage/get_object.rb +8 -2
- data/lib/fog/rackspace/requests/storage/put_object.rb +6 -5
- data/lib/fog/rackspace/storage.rb +1 -0
- data/lib/fog/storm_on_demand/compute.rb +1 -1
- data/lib/fog/vcloud/compute.rb +85 -30
- data/lib/fog/vcloud/models/compute/catalog.rb +1 -1
- data/lib/fog/vcloud/models/compute/catalog_item.rb +1 -1
- data/lib/fog/vcloud/models/compute/catalogs.rb +2 -4
- data/lib/fog/vcloud/models/compute/ip.rb +2 -2
- data/lib/fog/vcloud/models/compute/network.rb +3 -9
- data/lib/fog/vcloud/models/compute/networks.rb +13 -8
- data/lib/fog/vcloud/models/compute/organization.rb +3 -4
- data/lib/fog/vcloud/models/compute/organizations.rb +7 -4
- data/lib/fog/vcloud/models/compute/server.rb +5 -4
- data/lib/fog/vcloud/models/compute/servers.rb +1 -5
- data/lib/fog/vcloud/models/compute/task.rb +1 -1
- data/lib/fog/vcloud/models/compute/tasks.rb +1 -3
- data/lib/fog/vcloud/models/compute/vapp.rb +6 -4
- data/lib/fog/vcloud/models/compute/vapps.rb +2 -6
- data/lib/fog/vcloud/models/compute/vdc.rb +5 -5
- data/lib/fog/vcloud/models/compute/vdcs.rb +2 -5
- data/lib/fog/vcloud/requests/compute/clone_vapp.rb +1 -1
- data/lib/fog/vcloud/requests/compute/configure_network.rb +1 -1
- data/lib/fog/vcloud/requests/compute/configure_network_ip.rb +1 -1
- data/lib/fog/vcloud/requests/compute/configure_vapp.rb +1 -1
- data/lib/fog/vcloud/requests/compute/configure_vm.rb +1 -1
- data/lib/fog/vcloud/requests/compute/instantiate_vapp_template.rb +1 -1
- data/lib/fog/vcloud/requests/compute/login.rb +8 -4
- data/lib/fog/virtual_box/compute.rb +4 -0
- data/lib/fog/vmfusion/models/compute/server.rb +120 -52
- data/lib/fog/vmfusion/models/compute/servers.rb +11 -7
- data/lib/fog/voxel/compute.rb +1 -1
- data/lib/fog/vsphere/compute.rb +5 -0
- data/lib/fog/vsphere/models/compute/server.rb +25 -0
- data/lib/fog/vsphere/requests/compute/list_virtual_machines.rb +1 -1
- data/lib/fog/vsphere/requests/compute/vm_clone.rb +43 -8
- data/lib/fog/vsphere/requests/compute/vm_create.rb +97 -0
- data/lib/fog/vsphere/requests/compute/vm_migrate.rb +37 -0
- data/lib/fog/vsphere/requests/compute/vm_reconfig_cpus.rb +23 -0
- data/lib/fog/vsphere/requests/compute/vm_reconfig_hardware.rb +25 -0
- data/lib/fog/vsphere/requests/compute/vm_reconfig_memory.rb +23 -0
- data/lib/fog/zerigo/models/dns/record.rb +7 -5
- data/lib/fog/zerigo/parsers/dns/create_host.rb +3 -1
- data/lib/fog/zerigo/parsers/dns/find_hosts.rb +3 -1
- data/lib/fog/zerigo/parsers/dns/get_host.rb +3 -1
- data/lib/fog/zerigo/parsers/dns/get_zone.rb +3 -1
- data/lib/fog/zerigo/parsers/dns/list_hosts.rb +3 -1
- data/lib/fog/zerigo/requests/dns/update_host.rb +2 -2
- data/spec/ecloud/spec_helper.rb +1 -1
- data/tests/aws/models/beanstalk/application_tests.rb +70 -0
- data/tests/aws/models/beanstalk/applications_tests.rb +7 -0
- data/tests/aws/models/beanstalk/environment_tests.rb +132 -0
- data/tests/aws/models/beanstalk/environments_tests.rb +34 -0
- data/tests/aws/models/beanstalk/template_tests.rb +47 -0
- data/tests/aws/models/beanstalk/templates_tests.rb +62 -0
- data/tests/aws/models/beanstalk/version_tests.rb +66 -0
- data/tests/aws/models/beanstalk/versions_tests.rb +61 -0
- data/tests/aws/models/compute/subnet_tests.rb +5 -0
- data/tests/aws/models/compute/subnets_tests.rb +6 -0
- data/tests/aws/models/compute/vpc_tests.rb +4 -0
- data/tests/aws/models/compute/vpcs_tests.rb +6 -0
- data/tests/aws/models/dns/record_tests.rb +23 -0
- data/tests/aws/models/dns/records_tests.rb +23 -0
- data/tests/aws/models/dns/zone_tests.rb +4 -0
- data/tests/aws/models/dns/zones_tests.rb +4 -0
- data/tests/aws/models/elb/model_tests.rb +11 -7
- data/tests/aws/models/rds/security_group_tests.rb +6 -3
- data/tests/aws/models/rds/security_groups_tests.rb +1 -2
- data/tests/aws/models/rds/server_tests.rb +5 -3
- data/tests/aws/models/rds/servers_tests.rb +1 -3
- data/tests/aws/models/rds/snapshot_tests.rb +1 -3
- data/tests/aws/models/rds/snapshots_tests.rb +1 -3
- data/tests/aws/models/storage/directory_tests.rb +51 -0
- data/tests/aws/models/storage/file_tests.rb +80 -0
- data/tests/aws/models/storage/files_tests.rb +56 -0
- data/tests/aws/models/storage/version_tests.rb +52 -0
- data/tests/aws/models/storage/versions_tests.rb +56 -0
- data/tests/aws/requests/auto_scaling/helper.rb +2 -2
- data/tests/aws/requests/beanstalk/application_tests.rb +140 -0
- data/tests/aws/requests/beanstalk/solution_stack_tests.rb +22 -0
- data/tests/aws/requests/compute/address_tests.rb +7 -5
- data/tests/aws/requests/compute/instance_tests.rb +16 -2
- data/tests/aws/requests/compute/security_group_tests.rb +77 -4
- data/tests/aws/requests/compute/subnet_tests.rb +36 -0
- data/tests/aws/requests/compute/volume_tests.rb +4 -0
- data/tests/aws/requests/compute/vpc_tests.rb +34 -0
- data/tests/aws/requests/dns/dns_tests.rb +106 -99
- data/tests/aws/requests/dns/helper.rb +21 -0
- data/tests/aws/requests/dynamodb/item_tests.rb +117 -0
- data/tests/aws/requests/dynamodb/table_tests.rb +99 -0
- data/tests/aws/requests/elb/helper.rb +33 -0
- data/tests/aws/requests/elb/listener_tests.rb +18 -4
- data/tests/aws/requests/elb/policy_tests.rb +13 -0
- data/tests/aws/requests/iam/access_key_tests.rb +2 -7
- data/tests/aws/requests/iam/group_tests.rb +1 -4
- data/tests/aws/requests/iam/helper.rb +19 -0
- data/tests/aws/requests/iam/server_certificate_tests.rb +5 -0
- data/tests/aws/requests/iam/user_policy_tests.rb +4 -11
- data/tests/aws/requests/iam/user_tests.rb +19 -12
- data/tests/aws/requests/rds/helper.rb +45 -11
- data/tests/aws/requests/rds/instance_tests.rb +2 -3
- data/tests/aws/requests/rds/parameter_group_tests.rb +1 -7
- data/tests/aws/requests/rds/security_group_tests.rb +101 -0
- data/tests/aws/requests/storage/bucket_tests.rb +66 -1
- data/tests/aws/requests/storage/versioning_tests.rb +188 -0
- data/tests/bluebox/requests/compute/block_tests.rb +9 -8
- data/tests/bluebox/requests/compute/helper.rb +5 -0
- data/tests/bluebox/requests/compute/location_tests.rb +32 -0
- data/tests/bluebox/requests/compute/product_tests.rb +10 -4
- data/tests/bluebox/requests/compute/template_tests.rb +4 -2
- data/tests/brightbox/requests/compute/account_tests.rb +3 -3
- data/tests/brightbox/requests/compute/api_client_tests.rb +6 -6
- data/tests/brightbox/requests/compute/cloud_ip_tests.rb +7 -7
- data/tests/brightbox/requests/compute/helper.rb +33 -8
- data/tests/brightbox/requests/compute/image_tests.rb +2 -2
- data/tests/brightbox/requests/compute/interface_tests.rb +1 -1
- data/tests/brightbox/requests/compute/load_balancer_tests.rb +9 -9
- data/tests/brightbox/requests/compute/server_group_tests.rb +8 -8
- data/tests/brightbox/requests/compute/server_tests.rb +13 -11
- data/tests/brightbox/requests/compute/server_type_tests.rb +2 -2
- data/tests/brightbox/requests/compute/user_tests.rb +3 -3
- data/tests/brightbox/requests/compute/zone_tests.rb +2 -2
- data/tests/cloudstack/requests/disk_offering_tests.rb +29 -0
- data/tests/cloudstack/requests/os_type_tests.rb +38 -0
- data/tests/cloudstack/requests/security_group_tests.rb +29 -0
- data/tests/cloudstack/requests/service_offering_tests.rb +38 -0
- data/tests/cloudstack/requests/snapshot_tests.rb +32 -0
- data/tests/cloudstack/requests/ssh_key_pair_tests.rb +23 -0
- data/tests/cloudstack/requests/template_tests.rb +53 -0
- data/tests/cloudstack/requests/virtual_machine_tests.rb +71 -0
- data/tests/cloudstack/requests/volume_tests.rb +48 -0
- data/tests/cloudstack/requests/zone_tests.rb +33 -0
- data/tests/cloudstack/signed_params_tests.rb +12 -0
- data/tests/compute/helper.rb +7 -2
- data/tests/glesys/requests/compute/helper.rb +146 -123
- data/tests/glesys/requests/compute/ip_tests.rb +3 -3
- data/tests/glesys/requests/compute/server_tests.rb +50 -12
- data/tests/helper.rb +1 -1
- data/tests/helpers/formats_helper.rb +1 -1
- data/tests/helpers/mock_helper.rb +7 -2
- data/tests/joyent/requests/compute/datasets_tests.rb +49 -0
- data/tests/joyent/requests/compute/keys_tests.rb +47 -0
- data/tests/joyent/requests/compute/machines_tests.rb +67 -0
- data/tests/joyent/requests/compute/packages_tests.rb +68 -0
- data/tests/ovirt/compute_tests.rb +24 -0
- data/tests/ovirt/models/compute/cluster_tests.rb +31 -0
- data/tests/ovirt/models/compute/clusters_tests.rb +9 -0
- data/tests/ovirt/models/compute/interface_tests.rb +27 -0
- data/tests/ovirt/models/compute/interfaces_tests.rb +9 -0
- data/tests/ovirt/models/compute/server_tests.rb +51 -0
- data/tests/ovirt/models/compute/servers_tests.rb +14 -0
- data/tests/ovirt/models/compute/template_tests.rb +28 -0
- data/tests/ovirt/models/compute/templates_tests.rb +9 -0
- data/tests/ovirt/requests/compute/create_vm_tests.rb +26 -0
- data/tests/ovirt/requests/compute/destroy_vm_tests.rb +18 -0
- data/tests/ovirt/requests/compute/list_datacenters_tests.rb +13 -0
- data/tests/ovirt/requests/compute/list_storage_domains_tests.rb +13 -0
- data/tests/ovirt/requests/compute/update_vm_tests.rb +18 -0
- data/tests/vcloud/data/api_+_admin_+_network_+_2 +110 -0
- data/tests/vcloud/data/api_+_network_+_1 +44 -0
- data/tests/vcloud/data/api_+_org_+_ +5 -0
- data/tests/vcloud/data/api_+_org_+_1 +17 -0
- data/tests/vcloud/data/api_+_sessions +8 -0
- data/tests/vcloud/data/api_+_v1.0_+_vApp_+_vapp-1 +1 -1
- data/tests/vcloud/data/api_+_v1.0_+_vApp_+_vm-1 +1 -1
- data/tests/vcloud/data/api_+_v1.0_+_vApp_+_vm-2 +1 -1
- data/tests/vcloud/data/api_+_vApp_+_vapp-1 +369 -0
- data/tests/vcloud/data/api_+_vApp_+_vm-2 +155 -0
- data/tests/vcloud/data/api_+_vdc_+_1 +61 -0
- data/tests/vcloud/models/compute/conn_helper.rb +2 -2
- data/tests/vcloud/models/compute/network_tests.rb +54 -52
- data/tests/vcloud/models/compute/networks_tests.rb +54 -35
- data/tests/vcloud/models/compute/organization_tests.rb +17 -10
- data/tests/vcloud/models/compute/organizations_tests.rb +10 -8
- data/tests/vcloud/models/compute/server_tests.rb +45 -39
- data/tests/vcloud/models/compute/servers_tests.rb +17 -10
- data/tests/vcloud/models/compute/vapp_tests.rb +26 -21
- data/tests/vcloud/models/compute/vapps_tests.rb +13 -11
- data/tests/vcloud/models/compute/vdc_tests.rb +40 -34
- data/tests/vcloud/models/compute/vdcs_tests.rb +17 -10
- data/tests/vsphere/requests/compute/vm_clone_tests.rb +16 -4
- data/tests/vsphere/requests/compute/vm_create_tests.rb +20 -0
- data/tests/vsphere/requests/compute/vm_migrate_tests.rb +16 -0
- data/tests/vsphere/requests/compute/vm_power_on_tests.rb +1 -1
- data/tests/vsphere/requests/compute/vm_reconfig_cpus_tests.rb +19 -0
- data/tests/vsphere/requests/compute/vm_reconfig_hardware_tests.rb +19 -0
- data/tests/vsphere/requests/compute/vm_reconfig_memory_tests.rb +19 -0
- metadata +519 -50
- data/examples/compute_tests.rb +0 -71
- data/examples/dns_tests.rb +0 -78
- data/examples/storage_tests.rb +0 -105
@@ -0,0 +1,25 @@
|
|
1
|
+
module Fog
|
2
|
+
module Compute
|
3
|
+
class Joyent
|
4
|
+
|
5
|
+
class Mock
|
6
|
+
def list_machines(options={})
|
7
|
+
res = Excon::Response.new
|
8
|
+
res.status = 200
|
9
|
+
res.body = self.data[:machines].values
|
10
|
+
res
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class Real
|
15
|
+
def list_machines(options={})
|
16
|
+
request(
|
17
|
+
:path => "/my/machines",
|
18
|
+
:method => "GET",
|
19
|
+
:query => options
|
20
|
+
)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
module Fog
|
2
|
+
module Compute
|
3
|
+
class Joyent
|
4
|
+
|
5
|
+
class Mock
|
6
|
+
def list_packages
|
7
|
+
response = Excon::Response.new()
|
8
|
+
response.status = 200
|
9
|
+
response.body = self.data[:packages].values
|
10
|
+
response
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class Real
|
15
|
+
# Lists all the packages available to the authenticated user
|
16
|
+
# ==== Returns
|
17
|
+
# Exon::Response<Array>
|
18
|
+
# * name<~String> The "friendly name for this package
|
19
|
+
# * memory<~Number> How much memory will by available (in Mb)
|
20
|
+
# * disk<~Number> How much disk space will be available (in Gb)
|
21
|
+
# * swap<~Number> How much swap memory will be available (in Mb)
|
22
|
+
# * default<~Boolean> Whether this is the default package in this datacenter"
|
23
|
+
#
|
24
|
+
def list_packages
|
25
|
+
request(
|
26
|
+
:path => "/my/packages",
|
27
|
+
:method => "GET",
|
28
|
+
:expects => 200
|
29
|
+
)
|
30
|
+
end
|
31
|
+
end # Real
|
32
|
+
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
module Fog
|
2
|
+
module Compute
|
3
|
+
class Joyent
|
4
|
+
class Real
|
5
|
+
def start_machine_from_snapshot(machine_id, snapshot_name)
|
6
|
+
request(
|
7
|
+
:method => "POST",
|
8
|
+
:path => "/my/machines/#{machine_id}/snapshots/#{snapshot_name}",
|
9
|
+
:expects => 202
|
10
|
+
)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
data/lib/fog/libvirt/compute.rb
CHANGED
@@ -62,7 +62,7 @@ module Fog
|
|
62
62
|
end
|
63
63
|
|
64
64
|
rescue ::Libvirt::ConnectionError
|
65
|
-
raise Fog::Errors::Error.new("Error making a connection to libvirt URI #{
|
65
|
+
raise Fog::Errors::Error.new("Error making a connection to libvirt URI #{uri.uri}:\n#{$!}")
|
66
66
|
end
|
67
67
|
|
68
68
|
end
|
@@ -86,10 +86,12 @@ module Fog
|
|
86
86
|
end
|
87
87
|
end
|
88
88
|
end
|
89
|
-
|
90
|
-
return newuri
|
89
|
+
uri+append
|
91
90
|
end
|
92
91
|
|
92
|
+
def respond_to?(method, *)
|
93
|
+
super or @connection.respond_to? method
|
94
|
+
end
|
93
95
|
|
94
96
|
# hack to provide 'requests'
|
95
97
|
def method_missing(method_sym, *arguments, &block)
|
@@ -48,100 +48,73 @@ module Fog
|
|
48
48
|
# @returns server/domain created
|
49
49
|
def initialize(attributes={} )
|
50
50
|
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
self.name ||="fog-#{SecureRandom.random_number*10E14.to_i.round}" unless attributes[:name]
|
56
|
-
|
57
|
-
self.os_type ||="hvm" unless attributes[:os_type]
|
58
|
-
self.arch ||="x86_64" unless attributes[:arch]
|
59
|
-
|
60
|
-
self.domain_type ||="kvm" unless attributes[:domain_type]
|
61
|
-
|
62
|
-
self.iso_file ||=nil unless attributes[:iso_file]
|
63
|
-
self.iso_dir ||="/var/lib/libvirt/images" unless attributes[:iso_dir]
|
64
|
-
|
65
|
-
self.volume_format_type ||=nil unless attributes[:volume_format_type]
|
66
|
-
self.volume_capacity ||=nil unless attributes[:volume_capacity]
|
67
|
-
self.volume_allocation ||=nil unless attributes[:volume_allocation]
|
68
|
-
|
69
|
-
self.volume_name ||=nil unless attributes[:volume_name]
|
70
|
-
self.volume_pool_name ||=nil unless attributes[:volume_pool_name]
|
71
|
-
self.volume_template_name ||=nil unless attributes[:volume_template_name]
|
72
|
-
|
73
|
-
self.network_interface_type ||="nat" unless attributes[:network_interface_type]
|
74
|
-
self.network_nat_network ||="default" unless attributes[:network_nat_network]
|
75
|
-
self.network_bridge_name ||="br0" unless attributes[:network_bridge_name]
|
51
|
+
# setup all attributes.
|
52
|
+
defaults.merge(attributes).each do |k,v|
|
53
|
+
eval("self.#{k}= v") if self.respond_to?("#{k}=")
|
54
|
+
end
|
76
55
|
|
77
56
|
super
|
78
57
|
end
|
79
58
|
|
59
|
+
def new?
|
60
|
+
uuid.nil?
|
61
|
+
end
|
62
|
+
|
80
63
|
def save
|
81
64
|
|
82
|
-
raise Fog::Errors::Error.new('Resaving an existing server may create a duplicate')
|
65
|
+
raise Fog::Errors::Error.new('Resaving an existing server may create a duplicate') unless new?
|
83
66
|
|
84
67
|
validate_template_options
|
85
68
|
|
86
|
-
xml
|
69
|
+
xml ||= xml_from_template
|
87
70
|
|
88
71
|
create_or_clone_volume
|
89
72
|
|
90
|
-
xml=xml_from_template
|
73
|
+
xml = xml_from_template
|
91
74
|
|
92
75
|
# We either now have xml provided by the user or generated by the template
|
93
76
|
begin
|
94
|
-
if
|
95
|
-
|
96
|
-
if self.persistent
|
97
|
-
domain=connection.raw.define_domain_xml(xml)
|
98
|
-
else
|
99
|
-
domain=connection.raw.create_domain_xml(xml)
|
100
|
-
end
|
101
|
-
self.raw=domain
|
77
|
+
if xml
|
78
|
+
self.raw = persistent ? connection.raw.define_domain_xml(xml) : connection.raw.create_domain_xml(xml)
|
102
79
|
end
|
103
80
|
rescue
|
104
81
|
raise Fog::Errors::Error.new("Error saving the server: #{$!}")
|
105
82
|
end
|
106
83
|
end
|
107
84
|
|
85
|
+
#TODO move all of this to the volume class
|
108
86
|
def create_or_clone_volume
|
109
87
|
|
110
|
-
volume_options=Hash.new
|
88
|
+
volume_options = Hash.new
|
111
89
|
|
112
|
-
|
113
|
-
volume_options[:name]=self.volume_name
|
114
|
-
else
|
115
|
-
extension = self.volume_format_type.nil? ? "img" : self.volume_format_type
|
116
|
-
volume_name = "#{self.name}.#{extension}"
|
117
|
-
volume_options[:name]=volume_name
|
118
|
-
end
|
90
|
+
volume_options[:name] = volume_name || default_volume_name
|
119
91
|
|
120
92
|
# Check if a disk template was specified
|
121
93
|
unless self.volume_template_name.nil?
|
122
94
|
|
123
|
-
template_volumes=connection.volumes.all(:name => self.volume_template_name)
|
95
|
+
template_volumes = connection.volumes.all(:name => self.volume_template_name)
|
124
96
|
|
125
|
-
raise Fog::Errors::Error.new("Template #{self.volume_template_name} not found") unless template_volumes.
|
97
|
+
raise Fog::Errors::Error.new("Template #{self.volume_template_name} not found") unless template_volumes.empty?
|
126
98
|
|
127
|
-
orig_volume=template_volumes.first
|
128
|
-
|
129
|
-
volume=orig_volume.clone("#{volume_options[:name]}")
|
99
|
+
orig_volume = template_volumes.first
|
100
|
+
volume = orig_volume.clone("#{volume_options[:name]}")
|
130
101
|
|
102
|
+
# if we cloned it, it has the original volume type.
|
103
|
+
self.volume_format_type = orig_volume.format_type
|
131
104
|
# This gets passed to the domain to know the path of the disk
|
132
|
-
self.volume_path=volume.path
|
105
|
+
self.volume_path = volume.path
|
133
106
|
|
134
107
|
else
|
135
108
|
# If no template volume was given, let's create our own volume
|
136
109
|
|
137
|
-
volume_options[:format_type]=self.volume_format_type
|
138
|
-
volume_options[:capacity]=self.volume_capacity
|
139
|
-
volume_options[:allocation]=self.volume_allocation
|
110
|
+
volume_options[:format_type] = self.volume_format_type if volume_format_type
|
111
|
+
volume_options[:capacity] = self.volume_capacity if volume_capacity
|
112
|
+
volume_options[:allocation] = self.volume_allocation if volume_allocation
|
140
113
|
|
141
114
|
begin
|
142
|
-
volume=connection.volumes.create(volume_options)
|
143
|
-
self.volume_path=volume.path
|
144
|
-
self.volume_format_type
|
115
|
+
volume = connection.volumes.create(volume_options)
|
116
|
+
self.volume_path = volume.path
|
117
|
+
self.volume_format_type ||= volume.format_type
|
145
118
|
rescue
|
146
119
|
raise Fog::Errors::Error.new("Error creating the volume : #{$!}")
|
147
120
|
end
|
@@ -158,27 +131,27 @@ module Fog
|
|
158
131
|
def xml_from_template
|
159
132
|
|
160
133
|
template_options={
|
161
|
-
:cpus
|
162
|
-
:memory_size
|
163
|
-
:domain_type
|
164
|
-
:name
|
165
|
-
:iso_file
|
166
|
-
:iso_dir
|
167
|
-
:os_type
|
168
|
-
:arch
|
169
|
-
:volume_path
|
170
|
-
:volume_format_type
|
171
|
-
:network_interface_type =>
|
172
|
-
:network_nat_network
|
173
|
-
:network_bridge_name
|
134
|
+
:cpus => cpus,
|
135
|
+
:memory_size => memory_size,
|
136
|
+
:domain_type => domain_type,
|
137
|
+
:name => name,
|
138
|
+
:iso_file => iso_file,
|
139
|
+
:iso_dir => iso_dir,
|
140
|
+
:os_type => os_type,
|
141
|
+
:arch => arch,
|
142
|
+
:volume_path => volume_path,
|
143
|
+
:volume_format_type => volume_format_type,
|
144
|
+
:network_interface_type => network_interface_type,
|
145
|
+
:network_nat_network => network_nat_network,
|
146
|
+
:network_bridge_name => network_bridge_name
|
174
147
|
}
|
175
|
-
vars
|
176
|
-
template_path=File.join(File.dirname(__FILE__),"templates","server.xml.erb")
|
177
|
-
template=File.open(template_path).readlines.join
|
178
|
-
erb
|
179
|
-
vars_binding
|
180
|
-
|
181
|
-
|
148
|
+
vars = ErbBinding.new(template_options)
|
149
|
+
template_path = File.join(File.dirname(__FILE__),"templates","server.xml.erb")
|
150
|
+
template = File.open(template_path).readlines.join
|
151
|
+
erb = ERB.new(template)
|
152
|
+
vars_binding = vars.send(:get_binding)
|
153
|
+
|
154
|
+
erb.result(vars_binding)
|
182
155
|
end
|
183
156
|
|
184
157
|
def username
|
@@ -202,16 +175,13 @@ module Fog
|
|
202
175
|
# In fog a destroy means the remove of a machine
|
203
176
|
def destroy(options={ :destroy_volumes => false})
|
204
177
|
requires :raw
|
205
|
-
|
206
|
-
|
207
|
-
end
|
178
|
+
poweroff unless stopped?
|
179
|
+
#TODO: add handling of failure
|
208
180
|
@raw.undefine
|
181
|
+
|
209
182
|
if options[:destroy_volumes]
|
210
|
-
disk_path = document("domain/devices/disk/source", "file")
|
211
183
|
# volumes.all filters do not handle nil keys well
|
212
|
-
|
213
|
-
vol.destroy
|
214
|
-
end
|
184
|
+
connection.volumes.all(:path => disk_path).each { |vol| vol.destroy}
|
215
185
|
end
|
216
186
|
end
|
217
187
|
|
@@ -222,7 +192,7 @@ module Fog
|
|
222
192
|
|
223
193
|
# Alias for poweroff
|
224
194
|
def halt
|
225
|
-
|
195
|
+
poweroff
|
226
196
|
end
|
227
197
|
|
228
198
|
# In libvirt a destroy means a hard power-off of the domain
|
@@ -257,7 +227,10 @@ module Fog
|
|
257
227
|
when 5 then "shutoff"
|
258
228
|
when 6 then "crashed"
|
259
229
|
end
|
260
|
-
|
230
|
+
end
|
231
|
+
|
232
|
+
def stopped?
|
233
|
+
state == "shutoff"
|
261
234
|
end
|
262
235
|
|
263
236
|
def ready?
|
@@ -266,20 +239,15 @@ module Fog
|
|
266
239
|
|
267
240
|
def stop
|
268
241
|
requires :raw
|
269
|
-
|
270
242
|
@raw.shutdown
|
271
243
|
end
|
272
244
|
|
273
|
-
#def xml_desc
|
274
|
-
#requires :raw
|
275
|
-
#raw.xml_desc
|
276
|
-
#end
|
277
|
-
|
278
245
|
# This retrieves the ip address of the mac address
|
279
246
|
# It returns an array of public and private ip addresses
|
280
247
|
# Currently only one ip address is returned, but in the future this could be multiple
|
281
248
|
# if the server has multiple network interface
|
282
249
|
#
|
250
|
+
#TODO: move this into the util class
|
283
251
|
def addresses(options={})
|
284
252
|
mac=self.mac
|
285
253
|
|
@@ -487,21 +455,20 @@ module Fog
|
|
487
455
|
# Retrieves the mac address from parsing the XML of the domain
|
488
456
|
def mac
|
489
457
|
mac = document("domain/devices/interface/mac", "address")
|
490
|
-
return mac
|
491
458
|
end
|
492
459
|
|
493
460
|
def vnc_port
|
494
|
-
|
495
461
|
port = document("domain/devices/graphics[@type='vnc']", "port")
|
496
|
-
return port
|
497
462
|
end
|
498
463
|
|
464
|
+
def disk_path
|
465
|
+
document("domain/devices/disk/source", "file")
|
466
|
+
rescue
|
467
|
+
[]
|
468
|
+
end
|
499
469
|
|
500
470
|
private
|
501
|
-
|
502
|
-
def raw
|
503
|
-
@raw
|
504
|
-
end
|
471
|
+
attr_reader :raw
|
505
472
|
|
506
473
|
def raw=(new_raw)
|
507
474
|
@raw = new_raw
|
@@ -523,13 +490,33 @@ module Fog
|
|
523
490
|
merge_attributes(raw_attributes)
|
524
491
|
end
|
525
492
|
|
493
|
+
def randomized_name
|
494
|
+
"fog-#{SecureRandom.random_number*10E14.to_i.round}"
|
495
|
+
end
|
526
496
|
|
527
|
-
|
528
|
-
|
529
|
-
xml = REXML::Document.new(self.xml)
|
530
|
-
attribute.nil? ? xml.elements[path].text : xml.elements[path].attributes[attribute]
|
497
|
+
def default_iso_dir
|
498
|
+
"/var/lib/libvirt/images"
|
531
499
|
end
|
532
500
|
|
501
|
+
def default_volume_name
|
502
|
+
"#{name}.#{volume_format_type || 'img'}"
|
503
|
+
end
|
504
|
+
|
505
|
+
def defaults
|
506
|
+
{
|
507
|
+
:persistent => true,
|
508
|
+
:cpus => 1,
|
509
|
+
:memory_size => 256 *1024,
|
510
|
+
:name => randomized_name,
|
511
|
+
:os_type => "hvm",
|
512
|
+
:arch => "x86_64",
|
513
|
+
:domain_type => "kvm",
|
514
|
+
:iso_dir => default_iso_dir ,
|
515
|
+
:network_interface_type => "nat",
|
516
|
+
:network_nat_network => "default",
|
517
|
+
:network_bridge_name => "br0"
|
518
|
+
}
|
519
|
+
end
|
533
520
|
|
534
521
|
end
|
535
522
|
|