fog 1.1.1 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +6 -0
- data/README.rdoc +1 -1
- data/Rakefile +6 -19
- data/changelog.txt +614 -2
- data/docs/_layouts/default.html +1 -1
- data/docs/compute/index.markdown +15 -1
- data/docs/index.markdown +2 -2
- data/docs/storage/index.markdown +4 -4
- data/fog.gemspec +7 -4
- data/lib/fog/aws/auto_scaling.rb +2 -17
- data/lib/fog/aws/beanstalk.rb +140 -0
- data/lib/fog/aws/cloud_formation.rb +1 -16
- data/lib/fog/aws/cloud_watch.rb +2 -17
- data/lib/fog/aws/compute.rb +22 -21
- data/lib/fog/aws/dns.rb +2 -2
- data/lib/fog/aws/dynamodb.rb +162 -0
- data/lib/fog/aws/elasticache.rb +1 -7
- data/lib/fog/aws/elb/policy_types.rb +35 -0
- data/lib/fog/aws/elb.rb +34 -24
- 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/cloud_watch/metric_statistic.rb +1 -2
- 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 +3 -3
- data/lib/fog/aws/models/compute/security_groups.rb +30 -5
- data/lib/fog/aws/models/compute/server.rb +5 -1
- 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/dns/records.rb +3 -3
- 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/elb/load_balancer.rb +6 -0
- data/lib/fog/aws/models/storage/directory.rb +22 -1
- data/lib/fog/aws/models/storage/file.rb +60 -9
- data/lib/fog/aws/models/storage/files.rb +4 -4
- 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 +97 -0
- 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/sqs/receive_message.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 +31 -0
- data/lib/fog/aws/rds.rb +51 -18
- 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_availability_zones.rb +3 -0
- data/lib/fog/aws/requests/compute/describe_instance_status.rb +36 -0
- data/lib/fog/aws/requests/compute/describe_security_groups.rb +4 -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_listener_ssl_certificate.rb +27 -0
- 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 +73 -7
- 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 +18 -3
- 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 +57 -2
- 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_reserved_instances.rb +1 -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 +26 -1
- data/lib/fog/aws/requests/rds/reboot_db_instance.rb +17 -1
- 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/{hash_to_acl.rb → acl_utils.rb} +8 -0
- data/lib/fog/aws/requests/storage/copy_object.rb +11 -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_acl.rb +7 -1
- 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_acl.rb +7 -1
- data/lib/fog/aws/requests/storage/get_object_http_url.rb +10 -4
- data/lib/fog/aws/requests/storage/get_object_https_url.rb +10 -4
- data/lib/fog/aws/requests/storage/head_object.rb +7 -6
- data/lib/fog/aws/requests/storage/put_bucket_acl.rb +2 -2
- 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/put_object_acl.rb +1 -1
- data/lib/fog/aws/requests/storage/sync_clock.rb +1 -1
- data/lib/fog/aws/requests/sts/get_federation_token.rb +21 -0
- data/lib/fog/aws/requests/sts/get_session_token.rb +19 -0
- data/lib/fog/aws/ses.rb +2 -7
- data/lib/fog/aws/simpledb.rb +4 -17
- data/lib/fog/aws/sns.rb +1 -14
- data/lib/fog/aws/sqs.rb +5 -11
- data/lib/fog/aws/storage.rb +7 -23
- data/lib/fog/aws/sts.rb +137 -0
- data/lib/fog/aws.rb +40 -5
- 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/{new_servers.rb → bare_metal_cloud.rb} +2 -2
- data/lib/fog/bin/aws.rb +11 -1
- data/lib/fog/bin/{new_servers.rb → bare_metal_cloud.rb} +5 -5
- data/lib/fog/bin/clodo.rb +31 -0
- 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/bin.rb +5 -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 +8 -0
- data/lib/fog/brightbox/models/compute/cloud_ip.rb +10 -2
- data/lib/fog/brightbox/models/compute/firewall_policies.rb +29 -0
- data/lib/fog/brightbox/models/compute/firewall_policy.rb +65 -0
- data/lib/fog/brightbox/models/compute/firewall_rule.rb +54 -0
- data/lib/fog/brightbox/models/compute/firewall_rules.rb +24 -0
- data/lib/fog/brightbox/models/compute/image.rb +2 -0
- data/lib/fog/brightbox/models/compute/server.rb +41 -6
- data/lib/fog/brightbox/models/compute/server_group.rb +56 -17
- data/lib/fog/brightbox/requests/compute/remove_firewall_policy.rb +14 -0
- data/lib/fog/brightbox/requests/compute/update_firewall_rule.rb +13 -0
- data/lib/fog/clodo/compute.rb +152 -0
- data/lib/fog/clodo/models/compute/image.rb +31 -0
- data/lib/fog/clodo/models/compute/images.rb +28 -0
- data/lib/fog/clodo/models/compute/server.rb +163 -0
- data/lib/fog/clodo/models/compute/servers.rb +36 -0
- data/lib/fog/clodo/requests/compute/add_ip_address.rb +49 -0
- data/lib/fog/clodo/requests/compute/create_server.rb +112 -0
- data/lib/fog/clodo/requests/compute/delete_ip_address.rb +47 -0
- data/lib/fog/clodo/requests/compute/delete_server.rb +44 -0
- data/lib/fog/clodo/requests/compute/get_image_details.rb +20 -0
- data/lib/fog/clodo/requests/compute/get_server_details.rb +49 -0
- data/lib/fog/clodo/requests/compute/list_images.rb +48 -0
- data/lib/fog/clodo/requests/compute/list_images_detail.rb +61 -0
- data/lib/fog/clodo/requests/compute/list_servers.rb +50 -0
- data/lib/fog/clodo/requests/compute/list_servers_detail.rb +51 -0
- data/lib/fog/clodo/requests/compute/move_ip_address.rb +34 -0
- data/lib/fog/clodo/requests/compute/reboot_server.rb +19 -0
- data/lib/fog/clodo/requests/compute/rebuild_server.rb +21 -0
- data/lib/fog/clodo/requests/compute/server_action.rb +25 -0
- data/lib/fog/clodo/requests/compute/start_server.rb +19 -0
- data/lib/fog/clodo/requests/compute/stop_server.rb +19 -0
- data/lib/fog/clodo.rb +34 -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/cloudstack.rb +28 -0
- data/lib/fog/compute/models/server.rb +11 -0
- data/lib/fog/compute.rb +20 -3
- data/lib/fog/core/connection.rb +2 -2
- data/lib/fog/core/credentials.rb +3 -3
- data/lib/fog/core/errors.rb +10 -2
- data/lib/fog/core/model.rb +8 -0
- data/lib/fog/core/scp.rb +18 -2
- data/lib/fog/core/wait_for.rb +1 -1
- data/lib/fog/core.rb +1 -3
- data/lib/fog/dns.rb +1 -0
- data/lib/fog/dnsimple/dns.rb +1 -1
- data/lib/fog/dnsmadeeasy/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/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/joyent.rb +8 -0
- data/lib/fog/libvirt/compute.rb +7 -3
- data/lib/fog/libvirt/models/compute/nodes.rb +1 -3
- data/lib/fog/libvirt/models/compute/server.rb +93 -99
- 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/compute.rb +0 -2
- data/lib/fog/openstack.rb +9 -7
- 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/ovirt.rb +17 -0
- data/lib/fog/providers.rb +5 -1
- data/lib/fog/rackspace/dns.rb +10 -2
- data/lib/fog/rackspace/load_balancers.rb +3 -0
- data/lib/fog/rackspace/models/compute/flavor.rb +2 -0
- data/lib/fog/rackspace/models/compute/server.rb +2 -2
- data/lib/fog/rackspace/models/dns/callback.rb +3 -1
- data/lib/fog/rackspace/models/dns/record.rb +4 -0
- data/lib/fog/rackspace/models/load_balancers/load_balancer.rb +18 -8
- 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/load_balancers/delete_nodes.rb +1 -2
- data/lib/fog/rackspace/requests/load_balancers/get_error_page.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/list_load_balancers.rb +8 -2
- data/lib/fog/rackspace/requests/load_balancers/remove_error_page.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/set_error_page.rb +21 -0
- 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 +91 -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 +5 -8
- data/lib/fog/vcloud/models/compute/helpers/status.rb +37 -0
- data/lib/fog/vcloud/models/compute/ip.rb +2 -2
- data/lib/fog/vcloud/models/compute/network.rb +9 -51
- data/lib/fog/vcloud/models/compute/networks.rb +21 -7
- data/lib/fog/vcloud/models/compute/organization.rb +43 -0
- data/lib/fog/vcloud/models/compute/organizations.rb +32 -0
- data/lib/fog/vcloud/models/compute/server.rb +38 -58
- data/lib/fog/vcloud/models/compute/servers.rb +12 -18
- 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 +43 -0
- data/lib/fog/vcloud/models/compute/vapps.rb +28 -0
- data/lib/fog/vcloud/models/compute/vdc.rb +14 -29
- data/lib/fog/vcloud/models/compute/vdcs.rb +6 -11
- 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/get_server.rb +10 -0
- 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 +6 -0
- data/lib/fog/vsphere/models/compute/server.rb +43 -0
- data/lib/fog/vsphere/models/compute/servers.rb +8 -2
- data/lib/fog/vsphere/requests/compute/datacenters.rb +34 -0
- data/lib/fog/vsphere/requests/compute/list_virtual_machines.rb +132 -91
- data/lib/fog/vsphere/requests/compute/vm_clone.rb +115 -41
- 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/lib/fog.rb +1 -1
- data/spec/ecloud/spec_helper.rb +1 -1
- data/spec/lib/fog/aws/parsers/sqs/receive_message_spec.rb +58 -0
- 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 +15 -6
- 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 +37 -0
- data/tests/aws/requests/compute/security_group_tests.rb +78 -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 +22 -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/{hash_to_acl_tests.rb → acl_utils_tests.rb} +38 -2
- data/tests/aws/requests/storage/bucket_tests.rb +66 -4
- data/tests/aws/requests/storage/object_tests.rb +2 -4
- data/tests/aws/requests/storage/versioning_tests.rb +188 -0
- data/tests/aws/requests/sts/get_federation_token_tests.rb +21 -0
- data/tests/aws/requests/sts/session_token_tests.rb +16 -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 +11 -6
- data/tests/brightbox/requests/compute/api_client_tests.rb +23 -12
- data/tests/brightbox/requests/compute/cloud_ip_tests.rb +32 -17
- data/tests/brightbox/requests/compute/helper.rb +62 -11
- data/tests/brightbox/requests/compute/image_tests.rb +17 -14
- data/tests/brightbox/requests/compute/interface_tests.rb +3 -2
- data/tests/brightbox/requests/compute/load_balancer_tests.rb +57 -11
- data/tests/brightbox/requests/compute/server_group_tests.rb +29 -22
- data/tests/brightbox/requests/compute/server_tests.rb +43 -22
- data/tests/brightbox/requests/compute/server_type_tests.rb +7 -6
- data/tests/brightbox/requests/compute/user_tests.rb +11 -16
- data/tests/brightbox/requests/compute/zone_tests.rb +7 -6
- data/tests/clodo/requests/compute/image_tests.rb +36 -0
- data/tests/clodo/requests/compute/server_tests.rb +152 -0
- 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 +8 -3
- data/tests/core/credential_tests.rb +2 -2
- data/tests/glesys/requests/compute/helper.rb +187 -139
- data/tests/glesys/requests/compute/ip_tests.rb +4 -4
- data/tests/glesys/requests/compute/server_tests.rb +55 -17
- data/tests/helper.rb +1 -1
- data/tests/helpers/formats_helper.rb +1 -1
- data/tests/helpers/mock_helper.rb +9 -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/rackspace/models/dns/zone_tests.rb +14 -0
- data/tests/rackspace/models/{load_balancer_tests.rb → load_balancers/load_balancer_tests.rb} +25 -0
- data/tests/rackspace/requests/dns/dns_tests.rb +4 -2
- data/tests/rackspace/requests/load_balancers/error_page_tests.rb +31 -0
- data/tests/rackspace/requests/load_balancers/helper.rb +27 -11
- data/tests/rackspace/requests/load_balancers/load_balancer_tests.rb +4 -1
- data/tests/rackspace/requests/load_balancers/node_tests.rb +24 -25
- data/tests/slicehost/requests/compute/slice_tests.rb +2 -2
- data/tests/storm_on_demand/requests/compute/server_tests.rb +3 -3
- 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_+_admin_+_network_+_2 +110 -0
- data/tests/vcloud/data/api_+_v1.0_+_login +5 -0
- data/tests/vcloud/data/api_+_v1.0_+_network_+_1 +44 -0
- data/tests/vcloud/data/api_+_v1.0_+_network_+_2 +31 -0
- data/tests/vcloud/data/api_+_v1.0_+_org_+_1 +17 -0
- data/tests/vcloud/data/api_+_v1.0_+_vApp_+_vapp-1 +369 -0
- data/tests/vcloud/data/api_+_v1.0_+_vApp_+_vm-1 +139 -0
- data/tests/vcloud/data/api_+_v1.0_+_vApp_+_vm-2 +155 -0
- data/tests/vcloud/data/api_+_v1.0_+_vdc_+_1 +61 -0
- 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 +20 -0
- data/tests/vcloud/models/compute/network_tests.rb +67 -0
- data/tests/vcloud/models/compute/networks_tests.rb +61 -0
- data/tests/vcloud/models/compute/organization_tests.rb +20 -0
- data/tests/vcloud/models/compute/organizations_tests.rb +16 -0
- data/tests/vcloud/models/compute/server_tests.rb +142 -0
- data/tests/vcloud/models/compute/servers_tests.rb +18 -90
- data/tests/vcloud/models/compute/vapp_tests.rb +32 -0
- data/tests/vcloud/models/compute/vapps_tests.rb +19 -0
- data/tests/vcloud/models/compute/vdc_tests.rb +48 -0
- data/tests/vcloud/models/compute/vdcs_tests.rb +24 -0
- data/tests/vsphere/requests/compute/vm_clone_tests.rb +16 -8
- 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 +634 -69
- data/examples/compute_tests.rb +0 -71
- data/examples/dns_tests.rb +0 -78
- data/examples/storage_tests.rb +0 -105
- /data/tests/rackspace/models/{access_list_tests.rb → load_balancers/access_list_tests.rb} +0 -0
- /data/tests/rackspace/models/{access_lists_tests.rb → load_balancers/access_lists_tests.rb} +0 -0
- /data/tests/rackspace/models/{load_balancers_tests.rb → load_balancers/load_balancers_tests.rb} +0 -0
- /data/tests/rackspace/models/{node_tests.rb → load_balancers/node_tests.rb} +0 -0
- /data/tests/rackspace/models/{nodes_tests.rb → load_balancers/nodes_tests.rb} +0 -0
- /data/tests/rackspace/models/{virtual_ip_tests.rb → load_balancers/virtual_ip_tests.rb} +0 -0
- /data/tests/rackspace/models/{virtual_ips_tests.rb → load_balancers/virtual_ips_tests.rb} +0 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
class Clodo < Fog::Bin
|
|
2
|
+
class << self
|
|
3
|
+
|
|
4
|
+
def class_for(key)
|
|
5
|
+
case key
|
|
6
|
+
when :compute
|
|
7
|
+
Fog::Compute::Clodo
|
|
8
|
+
else
|
|
9
|
+
raise ArgumentError, "Unrecognized service: #{key}"
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def [](service)
|
|
14
|
+
@@connections ||= Hash.new do |hash, key|
|
|
15
|
+
hash[key] = case key
|
|
16
|
+
when :compute
|
|
17
|
+
Formatador.display_line("[yellow][WARN] Clodo[:compute] is deprecated, use Compute[:clodo] instead[/]")
|
|
18
|
+
Fog::Compute.new(:provider => 'Clodo')
|
|
19
|
+
else
|
|
20
|
+
raise ArgumentError, "Unrecognized service: #{key.inspect}"
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
@@connections[service]
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def services
|
|
27
|
+
Fog::Clodo.services
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
end
|
|
31
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
class Cloudstack < Fog::Bin
|
|
2
|
+
class << self
|
|
3
|
+
|
|
4
|
+
def class_for(key)
|
|
5
|
+
case key
|
|
6
|
+
when :compute
|
|
7
|
+
Fog::Compute::Cloudstack
|
|
8
|
+
else
|
|
9
|
+
raise ArgumentError, "Unrecognized service: #{key}"
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def [](service)
|
|
14
|
+
@@connections ||= Hash.new do |hash, key|
|
|
15
|
+
hash[key] = case key
|
|
16
|
+
when :compute
|
|
17
|
+
Fog::Compute.new(:provider => 'Cloudstack')
|
|
18
|
+
else
|
|
19
|
+
raise ArgumentError, "Unrecognized service: #{key.inspect}"
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
@@connections[service]
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def services
|
|
26
|
+
Fog::Cloudstack.services
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
class Joyent < Fog::Bin
|
|
2
|
+
class << self
|
|
3
|
+
|
|
4
|
+
def class_for(key)
|
|
5
|
+
case key
|
|
6
|
+
when :compute
|
|
7
|
+
Fog::Compute::Joyent
|
|
8
|
+
else
|
|
9
|
+
raise ArgumentError, "Unrecognized service: #{key}"
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def [](service)
|
|
14
|
+
@@connections ||= Hash.new do |hash, key|
|
|
15
|
+
hash[key] = case key
|
|
16
|
+
when :compute
|
|
17
|
+
Fog::Logger.warning("Joyent[:compute] is not recommended, use Compute[:joyent] for portability")
|
|
18
|
+
Fog::Compute.new(:provider => 'Joyent')
|
|
19
|
+
else
|
|
20
|
+
raise ArgumentError, "Unrecognized service: #{key.inspect}"
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
@@connections[service]
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def services
|
|
27
|
+
Fog::Joyent.services
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
end
|
|
31
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
class Ovirt < Fog::Bin
|
|
2
|
+
class << self
|
|
3
|
+
|
|
4
|
+
def class_for(key)
|
|
5
|
+
case key
|
|
6
|
+
when :compute
|
|
7
|
+
Fog::Compute::Ovirt
|
|
8
|
+
else
|
|
9
|
+
raise ArgumentError, "Unrecognized service: #{key}"
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def [](service)
|
|
14
|
+
@@connections ||= Hash.new do |hash, key|
|
|
15
|
+
hash[key] = case key
|
|
16
|
+
when :compute
|
|
17
|
+
Fog::Compute.new(:provider => 'Ovirt')
|
|
18
|
+
else
|
|
19
|
+
raise ArgumentError, "Unrecognized service: #{key.inspect}"
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
@@connections[service]
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def services
|
|
26
|
+
Fog::Ovirt.services
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
end
|
|
30
|
+
end
|
data/lib/fog/bin/voxel.rb
CHANGED
|
@@ -14,7 +14,7 @@ class Voxel < Fog::Bin
|
|
|
14
14
|
@@connections ||= Hash.new do |hash, key|
|
|
15
15
|
hash[key] = case key
|
|
16
16
|
when :compute
|
|
17
|
-
Fog::Logger.warning("Voxel[:
|
|
17
|
+
Fog::Logger.warning("Voxel[:compute] is not recommended, use Compute[:voxel] for portability")
|
|
18
18
|
Fog::Compute.new(:provider => 'Voxel')
|
|
19
19
|
else
|
|
20
20
|
raise ArgumentError, "Unrecognized service: #{key.inspect}"
|
data/lib/fog/bin.rb
CHANGED
|
@@ -55,6 +55,8 @@ end
|
|
|
55
55
|
require 'fog/bin/aws'
|
|
56
56
|
require 'fog/bin/bluebox'
|
|
57
57
|
require 'fog/bin/brightbox'
|
|
58
|
+
require 'fog/bin/cloudstack'
|
|
59
|
+
require 'fog/bin/clodo'
|
|
58
60
|
require 'fog/bin/dnsimple'
|
|
59
61
|
require 'fog/bin/dnsmadeeasy'
|
|
60
62
|
require 'fog/bin/dynect'
|
|
@@ -62,13 +64,15 @@ require 'fog/bin/ecloud'
|
|
|
62
64
|
require 'fog/bin/glesys'
|
|
63
65
|
require 'fog/bin/go_grid'
|
|
64
66
|
require 'fog/bin/google'
|
|
67
|
+
require 'fog/bin/joyent'
|
|
65
68
|
require 'fog/bin/libvirt'
|
|
66
69
|
require 'fog/bin/linode'
|
|
67
70
|
require 'fog/bin/local'
|
|
68
|
-
require 'fog/bin/
|
|
71
|
+
require 'fog/bin/bare_metal_cloud'
|
|
69
72
|
require 'fog/bin/ninefold'
|
|
70
73
|
require 'fog/bin/rackspace'
|
|
71
74
|
require 'fog/bin/openstack'
|
|
75
|
+
require 'fog/bin/ovirt'
|
|
72
76
|
require 'fog/bin/slicehost'
|
|
73
77
|
require 'fog/bin/stormondemand'
|
|
74
78
|
require 'fog/bin/terremark'
|
data/lib/fog/bluebox/compute.rb
CHANGED
|
@@ -15,12 +15,16 @@ module Fog
|
|
|
15
15
|
collection :images
|
|
16
16
|
model :server
|
|
17
17
|
collection :servers
|
|
18
|
+
model :location
|
|
19
|
+
collection :locations
|
|
18
20
|
|
|
19
21
|
request_path 'fog/bluebox/requests/compute'
|
|
20
22
|
request :create_block
|
|
21
23
|
request :destroy_block
|
|
22
24
|
request :get_block
|
|
23
25
|
request :get_blocks
|
|
26
|
+
request :get_location
|
|
27
|
+
request :get_locations
|
|
24
28
|
request :get_product
|
|
25
29
|
request :get_products
|
|
26
30
|
request :get_template
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
require 'fog/core/collection'
|
|
2
|
+
require 'fog/bluebox/models/compute/location'
|
|
3
|
+
|
|
4
|
+
module Fog
|
|
5
|
+
module Compute
|
|
6
|
+
class Bluebox
|
|
7
|
+
|
|
8
|
+
class Locations < Fog::Collection
|
|
9
|
+
|
|
10
|
+
model Fog::Compute::Bluebox::Location
|
|
11
|
+
|
|
12
|
+
def all
|
|
13
|
+
data = connection.get_locations.body
|
|
14
|
+
load(data)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def get(location_id)
|
|
18
|
+
response = connection.get_location(location_id)
|
|
19
|
+
new(response.body)
|
|
20
|
+
rescue Fog::Compute::Bluebox::NotFound
|
|
21
|
+
nil
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -15,6 +15,7 @@ module Fog
|
|
|
15
15
|
attribute :flavor_id, :aliases => :product, :squash => 'id'
|
|
16
16
|
attribute :hostname
|
|
17
17
|
attribute :image_id
|
|
18
|
+
attribute :location_id
|
|
18
19
|
attribute :ips
|
|
19
20
|
attribute :memory
|
|
20
21
|
attribute :state, :aliases => "status"
|
|
@@ -25,8 +26,9 @@ module Fog
|
|
|
25
26
|
attr_writer :private_key, :private_key_path, :public_key, :public_key_path, :username
|
|
26
27
|
|
|
27
28
|
def initialize(attributes={})
|
|
28
|
-
self.flavor_id
|
|
29
|
-
self.image_id
|
|
29
|
+
self.flavor_id ||= '94fd37a7-2606-47f7-84d5-9000deda52ae' # Block 1GB Virtual Server
|
|
30
|
+
self.image_id ||= 'a8f05200-7638-47d1-8282-2474ef57c4c3' # Scientific Linux 6
|
|
31
|
+
self.location_id ||= '37c2bd9a-3e81-46c9-b6e2-db44a25cc675' # Seattle, WA
|
|
30
32
|
super
|
|
31
33
|
end
|
|
32
34
|
|
|
@@ -45,6 +47,11 @@ module Fog
|
|
|
45
47
|
requires :image_id
|
|
46
48
|
connection.images.get(image_id)
|
|
47
49
|
end
|
|
50
|
+
|
|
51
|
+
def location
|
|
52
|
+
requires :location_id
|
|
53
|
+
connection.locations.get(location_id)
|
|
54
|
+
end
|
|
48
55
|
|
|
49
56
|
def private_ip_address
|
|
50
57
|
nil
|
|
@@ -84,7 +91,7 @@ module Fog
|
|
|
84
91
|
|
|
85
92
|
def save
|
|
86
93
|
raise Fog::Errors::Error.new('Resaving an existing object may create a duplicate') if identity
|
|
87
|
-
requires :flavor_id, :image_id
|
|
94
|
+
requires :flavor_id, :image_id, :location_id
|
|
88
95
|
options = {}
|
|
89
96
|
|
|
90
97
|
if identity.nil? # new record
|
|
@@ -100,10 +107,10 @@ module Fog
|
|
|
100
107
|
elsif @lb_applications
|
|
101
108
|
options['lb_applications'] = lb_applications
|
|
102
109
|
end
|
|
103
|
-
|
|
110
|
+
|
|
104
111
|
options['username'] = username
|
|
105
112
|
options['hostname'] = hostname if @hostname
|
|
106
|
-
data = connection.create_block(flavor_id, image_id, options)
|
|
113
|
+
data = connection.create_block(flavor_id, image_id, location_id, options)
|
|
107
114
|
merge_attributes(data.body)
|
|
108
115
|
true
|
|
109
116
|
end
|
|
@@ -18,12 +18,12 @@ module Fog
|
|
|
18
18
|
# * response<~Excon::Response>:
|
|
19
19
|
# * body<~Hash>:
|
|
20
20
|
# TODO
|
|
21
|
-
def create_block(product_id, template_id, options = {})
|
|
21
|
+
def create_block(product_id, template_id, location_id, options = {})
|
|
22
22
|
request(
|
|
23
23
|
:expects => 200,
|
|
24
24
|
:method => 'POST',
|
|
25
25
|
:path => '/api/blocks.json',
|
|
26
|
-
:query => {'product' => product_id, 'template' => template_id}.merge!(options)
|
|
26
|
+
:query => {'product' => product_id, 'template' => template_id, 'location' => location_id}.merge!(options)
|
|
27
27
|
)
|
|
28
28
|
end
|
|
29
29
|
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module Compute
|
|
3
|
+
class Bluebox
|
|
4
|
+
class Real
|
|
5
|
+
|
|
6
|
+
# Get details of a location
|
|
7
|
+
#
|
|
8
|
+
# ==== Parameters
|
|
9
|
+
# * location_id<~Integer> - Id of location to lookup
|
|
10
|
+
#
|
|
11
|
+
# ==== Returns
|
|
12
|
+
# * response<~Excon::Response>:
|
|
13
|
+
# * body<~Array>:
|
|
14
|
+
# TODO
|
|
15
|
+
def get_location(location_id)
|
|
16
|
+
request(
|
|
17
|
+
:expects => 200,
|
|
18
|
+
:method => 'GET',
|
|
19
|
+
:path => "api/locations/#{location_id}.json"
|
|
20
|
+
)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module Compute
|
|
3
|
+
class Bluebox
|
|
4
|
+
class Real
|
|
5
|
+
|
|
6
|
+
# Get list of locations
|
|
7
|
+
#
|
|
8
|
+
# ==== Returns
|
|
9
|
+
# * response<~Excon::Response>:
|
|
10
|
+
# * body<~Array>:
|
|
11
|
+
# * 'id'<~String> - UUID of the location
|
|
12
|
+
# * 'description'<~String> - Description of the location
|
|
13
|
+
def get_locations
|
|
14
|
+
request(
|
|
15
|
+
:expects => 200,
|
|
16
|
+
:method => 'GET',
|
|
17
|
+
:path => 'api/locations.json'
|
|
18
|
+
)
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
@@ -16,6 +16,10 @@ module Fog
|
|
|
16
16
|
model :server
|
|
17
17
|
collection :server_groups
|
|
18
18
|
model :server_group
|
|
19
|
+
collection :firewall_policies
|
|
20
|
+
model :firewall_policy
|
|
21
|
+
collection :firewall_rules
|
|
22
|
+
model :firewall_rule
|
|
19
23
|
collection :flavors
|
|
20
24
|
model :flavor
|
|
21
25
|
collection :images
|
|
@@ -35,6 +39,7 @@ module Fog
|
|
|
35
39
|
request :add_nodes_load_balancer
|
|
36
40
|
request :add_servers_server_group
|
|
37
41
|
request :apply_to_firewall_policy
|
|
42
|
+
request :remove_firewall_policy
|
|
38
43
|
request :create_api_client
|
|
39
44
|
request :create_cloud_ip
|
|
40
45
|
request :create_firewall_policy
|
|
@@ -80,6 +85,7 @@ module Fog
|
|
|
80
85
|
request :remove_nodes_load_balancer
|
|
81
86
|
request :remove_servers_server_group
|
|
82
87
|
request :reset_ftp_password_account
|
|
88
|
+
request :reset_secret_api_client
|
|
83
89
|
request :resize_server
|
|
84
90
|
request :shutdown_server
|
|
85
91
|
request :snapshot_server
|
|
@@ -88,6 +94,8 @@ module Fog
|
|
|
88
94
|
request :unmap_cloud_ip
|
|
89
95
|
request :update_account
|
|
90
96
|
request :update_api_client
|
|
97
|
+
request :update_cloud_ip
|
|
98
|
+
request :update_firewall_rule
|
|
91
99
|
request :update_image
|
|
92
100
|
request :update_load_balancer
|
|
93
101
|
request :update_server
|
|
@@ -23,9 +23,17 @@ module Fog
|
|
|
23
23
|
attribute :server_id, :aliases => "server", :squash => "id"
|
|
24
24
|
attribute :load_balancer, :alias => "load_balancer", :squash => "id"
|
|
25
25
|
|
|
26
|
-
def map(
|
|
26
|
+
def map(destination)
|
|
27
27
|
requires :identity
|
|
28
|
-
|
|
28
|
+
case destination
|
|
29
|
+
when Fog::Compute::Brightbox::Server
|
|
30
|
+
final_destination = destination.interfaces.first["id"]
|
|
31
|
+
when Fog::Compute::Brightbox::LoadBalancer
|
|
32
|
+
final_destination = destination.id
|
|
33
|
+
else
|
|
34
|
+
final_destination = destination
|
|
35
|
+
end
|
|
36
|
+
connection.map_cloud_ip(identity, :destination => final_destination)
|
|
29
37
|
end
|
|
30
38
|
|
|
31
39
|
def mapped?
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
require 'fog/core/collection'
|
|
2
|
+
require 'fog/brightbox/models/compute/firewall_policy'
|
|
3
|
+
|
|
4
|
+
module Fog
|
|
5
|
+
module Compute
|
|
6
|
+
class Brightbox
|
|
7
|
+
|
|
8
|
+
class FirewallPolicies < Fog::Collection
|
|
9
|
+
|
|
10
|
+
model Fog::Compute::Brightbox::FirewallPolicy
|
|
11
|
+
|
|
12
|
+
def all
|
|
13
|
+
data = connection.list_firewall_policies
|
|
14
|
+
load(data)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def get(identifier)
|
|
18
|
+
return nil if identifier.nil? || identifier == ""
|
|
19
|
+
data = connection.get_firewall_policy(identifier)
|
|
20
|
+
new(data)
|
|
21
|
+
rescue Excon::Errors::NotFound
|
|
22
|
+
nil
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
require 'fog/core/model'
|
|
2
|
+
|
|
3
|
+
module Fog
|
|
4
|
+
module Compute
|
|
5
|
+
class Brightbox
|
|
6
|
+
|
|
7
|
+
class FirewallPolicy < Fog::Model
|
|
8
|
+
|
|
9
|
+
identity :id
|
|
10
|
+
attribute :url
|
|
11
|
+
attribute :resource_type
|
|
12
|
+
|
|
13
|
+
attribute :name
|
|
14
|
+
attribute :description
|
|
15
|
+
|
|
16
|
+
attribute :default
|
|
17
|
+
|
|
18
|
+
attribute :server_group_id, :aliases => "server_group", :squash => "id"
|
|
19
|
+
attribute :created_at, :type => :time
|
|
20
|
+
attribute :rules
|
|
21
|
+
|
|
22
|
+
# Sticking with existing Fog behaviour, save does not update but creates a new resource
|
|
23
|
+
def save
|
|
24
|
+
raise Fog::Errors::Error.new('Resaving an existing object may create a duplicate') if identity
|
|
25
|
+
options = {
|
|
26
|
+
:server_group => server_group_id,
|
|
27
|
+
:name => name,
|
|
28
|
+
:description => description
|
|
29
|
+
}.delete_if {|k,v| v.nil? || v == "" }
|
|
30
|
+
data = connection.create_firewall_policy(options)
|
|
31
|
+
merge_attributes(data)
|
|
32
|
+
true
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def apply_to(server_group_id)
|
|
36
|
+
requires :identity
|
|
37
|
+
options = {
|
|
38
|
+
:server_group => server_group_id
|
|
39
|
+
}
|
|
40
|
+
data = connection.apply_to_firewall_policy(identity, options)
|
|
41
|
+
merge_attributes(data)
|
|
42
|
+
true
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
def remove(server_group_id)
|
|
46
|
+
requires :identity
|
|
47
|
+
options = {
|
|
48
|
+
:server_group => server_group_id
|
|
49
|
+
}
|
|
50
|
+
data = connection.remove_firewall_policy(identity, options)
|
|
51
|
+
merge_attributes(data)
|
|
52
|
+
true
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
def destroy
|
|
56
|
+
requires :identity
|
|
57
|
+
data = connection.destroy_firewall_policy(identity)
|
|
58
|
+
true
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
end
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
require 'fog/core/model'
|
|
2
|
+
|
|
3
|
+
module Fog
|
|
4
|
+
module Compute
|
|
5
|
+
class Brightbox
|
|
6
|
+
|
|
7
|
+
class FirewallRule < Fog::Model
|
|
8
|
+
|
|
9
|
+
identity :id
|
|
10
|
+
attribute :url
|
|
11
|
+
attribute :resource_type
|
|
12
|
+
|
|
13
|
+
attribute :description
|
|
14
|
+
|
|
15
|
+
attribute :source
|
|
16
|
+
attribute :source_port
|
|
17
|
+
attribute :destination
|
|
18
|
+
attribute :destination_port
|
|
19
|
+
attribute :protocol
|
|
20
|
+
attribute :icmp_type_name
|
|
21
|
+
attribute :created_at, :type => :time
|
|
22
|
+
|
|
23
|
+
attribute :firewall_policy_id, :aliases => "firewall_policy", :squash => "id"
|
|
24
|
+
|
|
25
|
+
# Sticking with existing Fog behaviour, save does not update but creates a new resource
|
|
26
|
+
def save
|
|
27
|
+
raise Fog::Errors::Error.new('Resaving an existing object may create a duplicate') if identity
|
|
28
|
+
requires :firewall_policy_id
|
|
29
|
+
options = {
|
|
30
|
+
:firewall_policy => firewall_policy_id,
|
|
31
|
+
:protocol => protocol,
|
|
32
|
+
:description => description,
|
|
33
|
+
:source => source,
|
|
34
|
+
:source_port => source_port,
|
|
35
|
+
:destination => destination,
|
|
36
|
+
:destination_port => destination_port,
|
|
37
|
+
:icmp_type_name => icmp_type_name
|
|
38
|
+
}.delete_if {|k,v| v.nil? || v == "" }
|
|
39
|
+
data = connection.create_firewall_rule(options)
|
|
40
|
+
merge_attributes(data)
|
|
41
|
+
true
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def destroy
|
|
45
|
+
requires :identity
|
|
46
|
+
connection.destroy_firewall_rule(identity)
|
|
47
|
+
true
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
require 'fog/core/collection'
|
|
2
|
+
require 'fog/brightbox/models/compute/firewall_rule'
|
|
3
|
+
|
|
4
|
+
module Fog
|
|
5
|
+
module Compute
|
|
6
|
+
class Brightbox
|
|
7
|
+
|
|
8
|
+
class FirewallRules < Fog::Collection
|
|
9
|
+
|
|
10
|
+
model Fog::Compute::Brightbox::FirewallRule
|
|
11
|
+
|
|
12
|
+
def get(identifier)
|
|
13
|
+
return nil if identifier.nil? || identifier == ""
|
|
14
|
+
data = connection.get_firewall_rule(identifier)
|
|
15
|
+
new(data)
|
|
16
|
+
rescue Excon::Errors::NotFound
|
|
17
|
+
nil
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
@@ -11,6 +11,7 @@ module Fog
|
|
|
11
11
|
attribute :resource_type
|
|
12
12
|
|
|
13
13
|
attribute :name
|
|
14
|
+
attribute :username
|
|
14
15
|
attribute :status
|
|
15
16
|
attribute :description
|
|
16
17
|
|
|
@@ -43,6 +44,7 @@ module Fog
|
|
|
43
44
|
:source => source,
|
|
44
45
|
:arch => arch,
|
|
45
46
|
:name => name,
|
|
47
|
+
:username => username,
|
|
46
48
|
:description => description
|
|
47
49
|
}.delete_if {|k,v| v.nil? || v == "" }
|
|
48
50
|
data = connection.create_image(options)
|
|
@@ -27,17 +27,43 @@ module Fog
|
|
|
27
27
|
# Links - to be replaced
|
|
28
28
|
attribute :account_id, :aliases => "account", :squash => "id"
|
|
29
29
|
attribute :image_id, :aliases => "image", :squash => "id"
|
|
30
|
-
|
|
31
|
-
attribute :zone_id, :aliases => "zone", :squash => "id"
|
|
30
|
+
|
|
32
31
|
attribute :snapshots
|
|
33
32
|
attribute :cloud_ips
|
|
34
33
|
attribute :interfaces
|
|
34
|
+
attribute :server_groups
|
|
35
|
+
attribute :zone
|
|
36
|
+
attribute :server_type
|
|
35
37
|
|
|
36
38
|
def initialize(attributes={})
|
|
37
|
-
self.image_id ||= 'img-
|
|
39
|
+
self.image_id ||= 'img-4gqhs' # Ubuntu Lucid 10.04 server (i686)
|
|
38
40
|
super
|
|
39
41
|
end
|
|
40
42
|
|
|
43
|
+
def zone_id
|
|
44
|
+
if t_zone_id = attributes[:zone_id]
|
|
45
|
+
t_zone_id
|
|
46
|
+
elsif zone
|
|
47
|
+
zone[:id] || zone['id']
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
def flavor_id
|
|
52
|
+
if t_flavour_id = attributes[:flavor_id]
|
|
53
|
+
t_flavour_id
|
|
54
|
+
elsif server_type
|
|
55
|
+
server_type[:id] || server_type['id']
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def zone_id=(incoming_zone_id)
|
|
60
|
+
attributes[:zone_id] = incoming_zone_id
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
def flavor_id=(incoming_flavour_id)
|
|
64
|
+
attributes[:flavor_id] = incoming_flavour_id
|
|
65
|
+
end
|
|
66
|
+
|
|
41
67
|
def snapshot
|
|
42
68
|
requires :identity
|
|
43
69
|
connection.snapshot_server(identity)
|
|
@@ -82,11 +108,19 @@ module Fog
|
|
|
82
108
|
end
|
|
83
109
|
|
|
84
110
|
def private_ip_address
|
|
85
|
-
interfaces.
|
|
111
|
+
unless interfaces.empty?
|
|
112
|
+
interfaces.first["ipv4_address"]
|
|
113
|
+
else
|
|
114
|
+
nil
|
|
115
|
+
end
|
|
86
116
|
end
|
|
87
117
|
|
|
88
118
|
def public_ip_address
|
|
89
|
-
cloud_ips.
|
|
119
|
+
unless cloud_ips.empty?
|
|
120
|
+
cloud_ips.first["public_ip"]
|
|
121
|
+
else
|
|
122
|
+
nil
|
|
123
|
+
end
|
|
90
124
|
end
|
|
91
125
|
|
|
92
126
|
def ready?
|
|
@@ -106,7 +140,8 @@ module Fog
|
|
|
106
140
|
:image => image_id,
|
|
107
141
|
:name => name,
|
|
108
142
|
:zone => zone_id,
|
|
109
|
-
:user_data => user_data
|
|
143
|
+
:user_data => user_data,
|
|
144
|
+
:server_groups => server_groups
|
|
110
145
|
}.delete_if {|k,v| v.nil? || v == "" }
|
|
111
146
|
unless flavor_id.nil? || flavor_id == ""
|
|
112
147
|
options.merge!(:server_type => flavor_id)
|