fog 0.7.2 → 0.8.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +3 -12
- data/Rakefile +3 -2
- data/benchs/parse_vs_push.rb +17 -8
- data/bin/fog +2 -2
- data/changelog.txt +123 -0
- data/docs/_layouts/default.html +21 -8
- data/docs/{_posts/2011-01-01-contributing.markdown → about/contributing.markdown} +0 -0
- data/docs/about/getting_started.markdown +83 -0
- data/docs/{_posts/2011-01-01-press.markdown → about/press.markdown} +6 -1
- data/docs/{_posts/2011-01-01-structure.markdown → about/structure.markdown} +0 -0
- data/docs/{_posts/2011-01-01-users.markdown → about/users.markdown} +0 -0
- data/docs/{_posts/2011-01-01-cdn.markdown → cdn/index.markdown} +12 -12
- data/docs/{_posts/2011-01-01-dns.markdown → dns/index.markdown} +18 -18
- data/docs/index.markdown +5 -4
- data/docs/{_posts/2011-01-01-storage.markdown → storage/index.markdown} +59 -21
- data/fog.gemspec +3 -9
- data/lib/fog.rb +1 -1
- data/lib/fog/aws/elb.rb +46 -12
- data/lib/fog/aws/iam.rb +1 -0
- data/lib/fog/aws/models/elb/listener.rb +51 -0
- data/lib/fog/aws/models/elb/listeners.rb +32 -0
- data/lib/fog/aws/models/elb/load_balancer.rb +129 -0
- data/lib/fog/aws/models/elb/load_balancers.rb +28 -0
- data/lib/fog/aws/models/elb/policies.rb +40 -0
- data/lib/fog/aws/models/elb/policy.rb +52 -0
- data/lib/fog/aws/{rds/models → models/rds}/parameter.rb +0 -0
- data/lib/fog/aws/{rds/models → models/rds}/parameter_group.rb +0 -0
- data/lib/fog/aws/{rds/models → models/rds}/parameter_groups.rb +1 -1
- data/lib/fog/aws/{rds/models → models/rds}/parameters.rb +1 -1
- data/lib/fog/aws/{rds/models → models/rds}/security_group.rb +0 -0
- data/lib/fog/aws/{rds/models → models/rds}/security_groups.rb +1 -1
- data/lib/fog/aws/{rds/models → models/rds}/server.rb +0 -0
- data/lib/fog/aws/{rds/models → models/rds}/servers.rb +1 -1
- data/lib/fog/aws/{rds/models → models/rds}/snapshot.rb +0 -0
- data/lib/fog/aws/{rds/models → models/rds}/snapshots.rb +1 -1
- data/lib/fog/aws/parsers/cloud_formation/create_stack.rb +1 -1
- data/lib/fog/aws/parsers/cloud_formation/describe_stack_events.rb +3 -3
- data/lib/fog/aws/parsers/cloud_formation/describe_stack_resources.rb +3 -3
- data/lib/fog/aws/parsers/cloud_formation/describe_stacks.rb +6 -6
- data/lib/fog/aws/parsers/cloud_formation/get_template.rb +1 -1
- data/lib/fog/aws/parsers/cloud_formation/validate_template.rb +5 -5
- data/lib/fog/aws/parsers/elb/configure_health_check.rb +37 -0
- data/lib/fog/aws/parsers/elb/create_load_balancer.rb +2 -2
- data/lib/fog/aws/parsers/elb/delete_load_balancer.rb +1 -1
- data/lib/fog/aws/parsers/elb/deregister_instances_from_load_balancer.rb +2 -2
- data/lib/fog/aws/parsers/elb/describe_instance_health.rb +2 -2
- data/lib/fog/aws/parsers/elb/describe_load_balancers.rb +36 -16
- data/lib/fog/aws/parsers/elb/disable_availability_zones_for_load_balancer.rb +2 -2
- data/lib/fog/aws/parsers/elb/empty.rb +28 -0
- data/lib/fog/aws/parsers/elb/enable_availability_zones_for_load_balancer.rb +2 -2
- data/lib/fog/aws/parsers/elb/register_instances_with_load_balancer.rb +2 -2
- data/lib/fog/aws/parsers/iam/basic.rb +1 -1
- data/lib/fog/aws/parsers/iam/create_access_key.rb +2 -2
- data/lib/fog/aws/parsers/iam/create_group.rb +2 -2
- data/lib/fog/aws/parsers/iam/create_user.rb +2 -2
- data/lib/fog/aws/parsers/iam/get_group.rb +6 -6
- data/lib/fog/aws/parsers/iam/get_user.rb +2 -2
- data/lib/fog/aws/parsers/iam/get_user_policy.rb +2 -2
- data/lib/fog/aws/parsers/iam/list_access_keys.rb +3 -3
- data/lib/fog/aws/parsers/iam/list_groups.rb +3 -3
- data/lib/fog/aws/parsers/iam/list_groups_for_user.rb +3 -3
- data/lib/fog/aws/parsers/iam/list_policies.rb +3 -3
- data/lib/fog/aws/parsers/iam/list_server_certificates.rb +38 -0
- data/lib/fog/aws/parsers/iam/list_signing_certificates.rb +3 -3
- data/lib/fog/aws/parsers/iam/list_users.rb +3 -3
- data/lib/fog/aws/parsers/iam/login_profile.rb +3 -3
- data/lib/fog/aws/parsers/iam/update_group.rb +2 -2
- data/lib/fog/aws/parsers/iam/update_user.rb +2 -2
- data/lib/fog/aws/parsers/iam/upload_server_certificate.rb +5 -3
- data/lib/fog/aws/parsers/iam/upload_signing_certificate.rb +2 -2
- data/lib/fog/aws/parsers/rds/authorize_db_security_group_ingress.rb +1 -1
- data/lib/fog/aws/parsers/rds/create_db_instance.rb +1 -1
- data/lib/fog/aws/parsers/rds/create_db_instance_read_replica.rb +1 -1
- data/lib/fog/aws/parsers/rds/create_db_parameter_group.rb +4 -4
- data/lib/fog/aws/parsers/rds/create_db_security_group.rb +1 -1
- data/lib/fog/aws/parsers/rds/create_db_snapshot.rb +1 -1
- data/lib/fog/aws/parsers/rds/db_parser.rb +16 -16
- data/lib/fog/aws/parsers/rds/delete_db_instance.rb +1 -1
- data/lib/fog/aws/parsers/rds/delete_db_parameter_group.rb +1 -1
- data/lib/fog/aws/parsers/rds/delete_db_security_group.rb +1 -1
- data/lib/fog/aws/parsers/rds/delete_db_snapshot.rb +1 -1
- data/lib/fog/aws/parsers/rds/describe_db_instances.rb +2 -2
- data/lib/fog/aws/parsers/rds/describe_db_parameter_groups.rb +5 -5
- data/lib/fog/aws/parsers/rds/describe_db_parameters.rb +10 -10
- data/lib/fog/aws/parsers/rds/describe_db_security_groups.rb +2 -2
- data/lib/fog/aws/parsers/rds/describe_db_snapshots.rb +2 -2
- data/lib/fog/aws/parsers/rds/modify_db_instance.rb +1 -1
- data/lib/fog/aws/parsers/rds/modify_db_parameter_group.rb +2 -2
- data/lib/fog/aws/parsers/rds/reboot_db_instance.rb +1 -1
- data/lib/fog/aws/parsers/rds/restore_db_instance_from_db_snapshot.rb +1 -1
- data/lib/fog/aws/parsers/rds/restore_db_instance_to_point_in_time.rb +1 -1
- data/lib/fog/aws/parsers/rds/revoke_db_security_group_ingress.rb +1 -1
- data/lib/fog/aws/parsers/rds/security_group_parser.rb +4 -4
- data/lib/fog/aws/parsers/rds/snapshot_parser.rb +11 -11
- data/lib/fog/aws/parsers/ses/delete_verified_email_address.rb +1 -1
- data/lib/fog/aws/parsers/ses/get_send_quota.rb +2 -2
- data/lib/fog/aws/parsers/ses/get_send_statistics.rb +2 -2
- data/lib/fog/aws/parsers/ses/list_verified_email_addresses.rb +2 -2
- data/lib/fog/aws/parsers/ses/send_email.rb +2 -2
- data/lib/fog/aws/parsers/ses/send_raw_email.rb +2 -2
- data/lib/fog/aws/parsers/ses/verify_email_address.rb +1 -1
- data/lib/fog/aws/parsers/simpledb/basic.rb +2 -2
- data/lib/fog/aws/parsers/simpledb/domain_metadata.rb +4 -4
- data/lib/fog/aws/parsers/simpledb/get_attributes.rb +4 -4
- data/lib/fog/aws/parsers/simpledb/list_domains.rb +3 -3
- data/lib/fog/aws/parsers/simpledb/select.rb +5 -5
- data/lib/fog/aws/rds.rb +2 -3
- data/lib/fog/aws/requests/elb/configure_health_check.rb +41 -0
- data/lib/fog/aws/requests/elb/create_app_cookie_stickiness_policy.rb +33 -0
- data/lib/fog/aws/requests/elb/create_lb_cookie_stickiness_policy.rb +35 -0
- data/lib/fog/aws/requests/elb/create_load_balancer_listeners.rb +51 -0
- data/lib/fog/aws/requests/elb/delete_load_balancer_listeners.rb +31 -0
- data/lib/fog/aws/requests/elb/delete_load_balancer_policy.rb +31 -0
- data/lib/fog/aws/requests/elb/set_load_balancer_policies_of_listener.rb +43 -0
- data/lib/fog/aws/requests/iam/list_server_certificates.rb +42 -0
- data/lib/fog/aws/requests/ses/send_raw_email.rb +4 -4
- data/lib/fog/aws/simpledb.rb +2 -2
- data/lib/fog/bin.rb +1 -0
- data/lib/fog/bin/stormondemand.rb +30 -0
- data/lib/fog/cdn/parsers/aws/distribution.rb +11 -11
- data/lib/fog/cdn/parsers/aws/get_distribution_list.rb +9 -9
- data/lib/fog/cdn/parsers/aws/post_invalidation.rb +3 -3
- data/lib/fog/compute.rb +3 -0
- data/lib/fog/compute/aws.rb +4 -2
- data/lib/fog/compute/models/aws/server.rb +16 -2
- data/lib/fog/compute/models/bluebox/server.rb +11 -2
- data/lib/fog/compute/models/brightbox/server.rb +6 -0
- data/lib/fog/compute/models/ecloud/servers.rb +3 -1
- data/lib/fog/compute/models/go_grid/server.rb +1 -0
- data/lib/fog/compute/models/rackspace/server.rb +2 -1
- data/lib/fog/compute/models/slicehost/server.rb +2 -1
- data/lib/fog/compute/models/storm_on_demand/balancer.rb +38 -0
- data/lib/fog/compute/models/storm_on_demand/balancers.rb +21 -0
- data/lib/fog/compute/models/storm_on_demand/config.rb +25 -0
- data/lib/fog/compute/models/storm_on_demand/configs.rb +22 -0
- data/lib/fog/compute/models/storm_on_demand/image.rb +20 -0
- data/lib/fog/compute/models/storm_on_demand/images.rb +21 -0
- data/lib/fog/compute/models/storm_on_demand/private_ip.rb +19 -0
- data/lib/fog/compute/models/storm_on_demand/private_ips.rb +31 -0
- data/lib/fog/compute/models/storm_on_demand/server.rb +74 -0
- data/lib/fog/compute/models/storm_on_demand/servers.rb +26 -0
- data/lib/fog/compute/models/storm_on_demand/stat.rb +23 -0
- data/lib/fog/compute/models/storm_on_demand/stats.rb +22 -0
- data/lib/fog/compute/models/storm_on_demand/template.rb +22 -0
- data/lib/fog/compute/models/storm_on_demand/templates.rb +21 -0
- data/lib/fog/compute/models/voxel/image.rb +4 -1
- data/lib/fog/compute/models/voxel/server.rb +1 -0
- data/lib/fog/compute/parsers/aws/allocate_address.rb +1 -1
- data/lib/fog/compute/parsers/aws/attach_volume.rb +2 -2
- data/lib/fog/compute/parsers/aws/basic.rb +2 -2
- data/lib/fog/compute/parsers/aws/create_image.rb +1 -1
- data/lib/fog/compute/parsers/aws/create_key_pair.rb +1 -1
- data/lib/fog/compute/parsers/aws/create_snapshot.rb +4 -4
- data/lib/fog/compute/parsers/aws/create_volume.rb +3 -3
- data/lib/fog/compute/parsers/aws/deregister_image.rb +1 -1
- data/lib/fog/compute/parsers/aws/describe_addresses.rb +2 -2
- data/lib/fog/compute/parsers/aws/describe_availability_zones.rb +3 -3
- data/lib/fog/compute/parsers/aws/describe_images.rb +7 -7
- data/lib/fog/compute/parsers/aws/describe_instances.rb +17 -17
- data/lib/fog/compute/parsers/aws/describe_key_pairs.rb +2 -2
- data/lib/fog/compute/parsers/aws/describe_regions.rb +2 -2
- data/lib/fog/compute/parsers/aws/describe_reserved_instances.rb +5 -5
- data/lib/fog/compute/parsers/aws/describe_reserved_instances_offerings.rb +4 -4
- data/lib/fog/compute/parsers/aws/describe_security_groups.rb +8 -8
- data/lib/fog/compute/parsers/aws/describe_snapshots.rb +5 -5
- data/lib/fog/compute/parsers/aws/describe_tags.rb +2 -2
- data/lib/fog/compute/parsers/aws/describe_volumes.rb +8 -8
- data/lib/fog/compute/parsers/aws/detach_volume.rb +2 -2
- data/lib/fog/compute/parsers/aws/get_console_output.rb +3 -7
- data/lib/fog/compute/parsers/aws/import_key_pair.rb +1 -1
- data/lib/fog/compute/parsers/aws/monitor_unmonitor_instances.rb +3 -3
- data/lib/fog/compute/parsers/aws/register_image.rb +1 -1
- data/lib/fog/compute/parsers/aws/run_instances.rb +14 -22
- data/lib/fog/compute/parsers/aws/start_stop_instances.rb +3 -3
- data/lib/fog/compute/parsers/aws/terminate_instances.rb +6 -6
- data/lib/fog/compute/parsers/slicehost/create_slice.rb +4 -4
- data/lib/fog/compute/parsers/slicehost/get_backups.rb +3 -3
- data/lib/fog/compute/parsers/slicehost/get_flavor.rb +2 -2
- data/lib/fog/compute/parsers/slicehost/get_flavors.rb +2 -2
- data/lib/fog/compute/parsers/slicehost/get_image.rb +2 -2
- data/lib/fog/compute/parsers/slicehost/get_images.rb +2 -2
- data/lib/fog/compute/parsers/slicehost/get_slice.rb +4 -4
- data/lib/fog/compute/parsers/slicehost/get_slices.rb +4 -4
- data/lib/fog/compute/parsers/voxel/devices_list.rb +12 -12
- data/lib/fog/compute/parsers/voxel/images_list.rb +5 -5
- data/lib/fog/compute/parsers/voxel/voxcloud_create.rb +2 -2
- data/lib/fog/compute/parsers/voxel/voxcloud_status.rb +2 -2
- data/lib/fog/compute/requests/aws/describe_availability_zones.rb +17 -1
- data/lib/fog/compute/requests/aws/describe_instances.rb +6 -1
- data/lib/fog/compute/requests/storm_on_demand/add_balancer_node.rb +16 -0
- data/lib/fog/compute/requests/storm_on_demand/clone_server.rb +16 -0
- data/lib/fog/compute/requests/storm_on_demand/create_server.rb +16 -0
- data/lib/fog/compute/requests/storm_on_demand/delete_server.rb +16 -0
- data/lib/fog/compute/requests/storm_on_demand/get_server.rb +16 -0
- data/lib/fog/compute/requests/storm_on_demand/get_stats.rb +16 -0
- data/lib/fog/compute/requests/storm_on_demand/list_balancers.rb +16 -0
- data/lib/fog/compute/requests/storm_on_demand/list_configs.rb +16 -0
- data/lib/fog/compute/requests/storm_on_demand/list_images.rb +16 -0
- data/lib/fog/compute/requests/storm_on_demand/list_private_ips.rb +16 -0
- data/lib/fog/compute/requests/storm_on_demand/list_servers.rb +16 -0
- data/lib/fog/compute/requests/storm_on_demand/list_templates.rb +16 -0
- data/lib/fog/compute/requests/storm_on_demand/reboot_server.rb +16 -0
- data/lib/fog/compute/requests/storm_on_demand/remove_balancer_node.rb +16 -0
- data/lib/fog/compute/requests/storm_on_demand/resize_server.rb +16 -0
- data/lib/fog/compute/requests/voxel/images_list.rb +3 -3
- data/lib/fog/compute/storm_on_demand.rb +122 -0
- data/lib/fog/core/attributes.rb +12 -0
- data/lib/fog/core/credentials.rb +1 -52
- data/lib/fog/core/errors.rb +53 -0
- data/lib/fog/core/model.rb +10 -5
- data/lib/fog/core/parser.rb +8 -3
- data/lib/fog/dns/models/aws/records.rb +1 -1
- data/lib/fog/dns/models/aws/zones.rb +1 -1
- data/lib/fog/dns/parsers/aws/change_resource_record_sets.rb +2 -2
- data/lib/fog/dns/parsers/aws/create_hosted_zone.rb +5 -5
- data/lib/fog/dns/parsers/aws/delete_hosted_zone.rb +1 -1
- data/lib/fog/dns/parsers/aws/get_change.rb +2 -2
- data/lib/fog/dns/parsers/aws/get_hosted_zone.rb +3 -3
- data/lib/fog/dns/parsers/aws/list_hosted_zones.rb +4 -4
- data/lib/fog/dns/parsers/aws/list_resource_record_sets.rb +4 -4
- data/lib/fog/dns/parsers/bluebox/create_record.rb +2 -2
- data/lib/fog/dns/parsers/bluebox/create_zone.rb +2 -2
- data/lib/fog/dns/parsers/bluebox/get_record.rb +1 -1
- data/lib/fog/dns/parsers/bluebox/get_records.rb +1 -1
- data/lib/fog/dns/parsers/bluebox/get_zone.rb +2 -2
- data/lib/fog/dns/parsers/bluebox/get_zones.rb +2 -2
- data/lib/fog/dns/parsers/slicehost/create_record.rb +2 -2
- data/lib/fog/dns/parsers/slicehost/create_zone.rb +2 -2
- data/lib/fog/dns/parsers/slicehost/get_record.rb +2 -2
- data/lib/fog/dns/parsers/slicehost/get_records.rb +2 -2
- data/lib/fog/dns/parsers/slicehost/get_zone.rb +2 -2
- data/lib/fog/dns/parsers/slicehost/get_zones.rb +2 -2
- data/lib/fog/dns/parsers/zerigo/count_hosts.rb +1 -1
- data/lib/fog/dns/parsers/zerigo/count_zones.rb +1 -1
- data/lib/fog/dns/parsers/zerigo/create_host.rb +2 -2
- data/lib/fog/dns/parsers/zerigo/create_zone.rb +2 -2
- data/lib/fog/dns/parsers/zerigo/find_hosts.rb +2 -2
- data/lib/fog/dns/parsers/zerigo/get_host.rb +2 -2
- data/lib/fog/dns/parsers/zerigo/get_zone.rb +4 -4
- data/lib/fog/dns/parsers/zerigo/get_zone_stats.rb +2 -2
- data/lib/fog/dns/parsers/zerigo/list_hosts.rb +2 -2
- data/lib/fog/dns/parsers/zerigo/list_zones.rb +2 -2
- data/lib/fog/providers.rb +1 -0
- data/lib/fog/providers/aws.rb +5 -1
- data/lib/fog/providers/storm_on_demand.rb +12 -0
- data/lib/fog/storage/models/aws/files.rb +17 -0
- data/lib/fog/storage/models/google/files.rb +17 -0
- data/lib/fog/storage/models/rackspace/files.rb +17 -0
- data/lib/fog/storage/parsers/aws/access_control_list.rb +4 -4
- data/lib/fog/storage/parsers/aws/complete_multipart_upload.rb +1 -1
- data/lib/fog/storage/parsers/aws/copy_object.rb +2 -2
- data/lib/fog/storage/parsers/aws/get_bucket.rb +10 -10
- data/lib/fog/storage/parsers/aws/get_bucket_location.rb +1 -1
- data/lib/fog/storage/parsers/aws/get_bucket_logging.rb +5 -5
- data/lib/fog/storage/parsers/aws/get_bucket_object_versions.rb +8 -8
- data/lib/fog/storage/parsers/aws/get_bucket_versioning.rb +1 -1
- data/lib/fog/storage/parsers/aws/get_bucket_website.rb +2 -2
- data/lib/fog/storage/parsers/aws/get_request_payment.rb +1 -1
- data/lib/fog/storage/parsers/aws/get_service.rb +3 -3
- data/lib/fog/storage/parsers/aws/initiate_multipart_upload.rb +1 -1
- data/lib/fog/storage/parsers/aws/list_multipart_uploads.rb +7 -7
- data/lib/fog/storage/parsers/aws/list_parts.rb +7 -7
- data/lib/fog/storage/parsers/google/access_control_list.rb +3 -3
- data/lib/fog/storage/parsers/google/copy_object.rb +2 -2
- data/lib/fog/storage/parsers/google/get_bucket.rb +10 -10
- data/lib/fog/storage/parsers/google/get_bucket_logging.rb +5 -5
- data/lib/fog/storage/parsers/google/get_bucket_object_versions.rb +9 -9
- data/lib/fog/storage/parsers/google/get_bucket_versioning.rb +1 -1
- data/lib/fog/storage/parsers/google/get_request_payment.rb +1 -1
- data/lib/fog/storage/parsers/google/get_service.rb +3 -3
- data/lib/fog/storage/requests/aws/get_object.rb +1 -1
- data/lib/fog/terremark/parsers/shared/get_catalog.rb +1 -1
- data/lib/fog/terremark/parsers/shared/get_catalog_item.rb +1 -1
- data/lib/fog/terremark/parsers/shared/get_internet_services.rb +7 -7
- data/lib/fog/terremark/parsers/shared/get_network_ips.rb +1 -1
- data/lib/fog/terremark/parsers/shared/get_node_services.rb +3 -3
- data/lib/fog/terremark/parsers/shared/get_organization.rb +1 -1
- data/lib/fog/terremark/parsers/shared/get_public_ips.rb +2 -2
- data/lib/fog/terremark/parsers/shared/get_vapp_template.rb +1 -1
- data/lib/fog/terremark/parsers/shared/get_vdc.rb +6 -6
- data/lib/fog/terremark/parsers/shared/internet_service.rb +7 -7
- data/lib/fog/terremark/parsers/shared/network.rb +1 -1
- data/lib/fog/terremark/parsers/shared/node_service.rb +3 -3
- data/lib/fog/terremark/parsers/shared/public_ip.rb +2 -2
- data/lib/fog/terremark/parsers/shared/vapp.rb +7 -7
- data/spec/ecloud/spec_helper.rb +1 -1
- data/tests/aws/requests/cloud_formation/stack_tests.rb +2 -0
- data/tests/aws/requests/elb/helper.rb +44 -0
- data/tests/aws/requests/elb/load_balancer_tests.rb +82 -0
- data/tests/aws/requests/elb/model_tests.rb +187 -0
- data/tests/aws/requests/iam/helper.rb +41 -0
- data/tests/aws/requests/iam/login_profile_tests.rb +1 -1
- data/tests/aws/requests/iam/server_certificate_tests.rb +36 -0
- data/tests/aws/requests/rds/instance_tests.rb +63 -66
- data/tests/aws/requests/simpledb/attributes_tests.rb +4 -4
- data/tests/aws/signed_params_tests.rb +3 -0
- data/tests/compute/helper.rb +2 -2
- data/tests/compute/models/aws/address_tests.rb +2 -2
- data/tests/compute/models/aws/security_group_tests.rb +12 -0
- data/tests/compute/models/aws/server_tests.rb +8 -1
- data/tests/compute/models/aws/snapshot_tests.rb +2 -2
- data/tests/compute/models/aws/volume_tests.rb +3 -3
- data/tests/compute/requests/aws/address_tests.rb +1 -1
- data/tests/compute/requests/aws/instance_tests.rb +1 -1
- data/tests/compute/requests/aws/key_pair_tests.rb +5 -1
- data/tests/compute/requests/aws/snapshot_tests.rb +1 -1
- data/tests/compute/requests/aws/tag_tests.rb +1 -1
- data/tests/compute/requests/aws/volume_tests.rb +3 -3
- data/tests/compute/requests/bluebox/block_tests.rb +14 -13
- data/tests/compute/requests/brightbox/helper.rb +1 -2
- data/tests/compute/requests/storm_on_demand/server_tests.rb +64 -0
- data/tests/compute/requests/voxel/image_tests.rb +30 -24
- data/tests/compute/requests/voxel/server_tests.rb +1 -1
- data/tests/dns/requests/aws/dns_tests.rb +1 -1
- data/tests/helper.rb +1 -1
- data/tests/storage/requests/aws/multipart_upload_tests.rb +1 -1
- data/tests/storage/requests/google/bucket_tests.rb +0 -1
- data/tests/storage/requests/rackspace/object_tests.rb +1 -0
- metadata +125 -66
- data/docs/_posts/2011-01-01-start.markdown +0 -21
@@ -55,7 +55,12 @@ module Fog
|
|
55
55
|
Formatador.display_line("[yellow][WARN] describe_instances with #{filters.class} param is deprecated, use describe_instances('instance-id' => []) instead[/] [light_black](#{caller.first})[/]")
|
56
56
|
filters = {'instance-id' => [*filters]}
|
57
57
|
end
|
58
|
-
params =
|
58
|
+
params = {}
|
59
|
+
# when seeking single instance id, old param style is most up to date
|
60
|
+
if filters['instance-id'] && !filters['instance-id'].is_a?(Array)
|
61
|
+
params.merge('InstanceId' => filters.delete('instance-id'))
|
62
|
+
end
|
63
|
+
params.merge!(AWS.indexed_filters(filters))
|
59
64
|
|
60
65
|
request({
|
61
66
|
'Action' => 'DescribeInstances',
|
@@ -16,10 +16,10 @@ module Fog
|
|
16
16
|
options[:image_id] = image_id
|
17
17
|
end
|
18
18
|
|
19
|
-
data = request("voxel.images.list", options)
|
19
|
+
data = request("voxel.images.list", options)
|
20
20
|
|
21
|
-
if data['stat'] == "ok"
|
22
|
-
data
|
21
|
+
if data.body['stat'] == "ok"
|
22
|
+
data
|
23
23
|
else
|
24
24
|
raise Fog::Voxel::Compute::NotFound
|
25
25
|
end
|
@@ -0,0 +1,122 @@
|
|
1
|
+
module Fog
|
2
|
+
module StormOnDemand
|
3
|
+
class Compute < Fog::Service
|
4
|
+
|
5
|
+
API_URL = 'https://api.stormondemand.com'
|
6
|
+
|
7
|
+
requires :storm_on_demand_username, :storm_on_demand_password
|
8
|
+
recognizes :storm_on_demand_auth_url
|
9
|
+
recognizes :provider # remove post deprecation
|
10
|
+
|
11
|
+
model_path 'fog/compute/models/storm_on_demand'
|
12
|
+
model :config
|
13
|
+
collection :configs
|
14
|
+
model :image
|
15
|
+
collection :images
|
16
|
+
model :server
|
17
|
+
collection :servers
|
18
|
+
model :balancer
|
19
|
+
collection :balancers
|
20
|
+
model :private_ip
|
21
|
+
collection :private_ips
|
22
|
+
model :stat
|
23
|
+
collection :stats
|
24
|
+
model :template
|
25
|
+
collection :templates
|
26
|
+
|
27
|
+
request_path 'fog/compute/requests/storm_on_demand'
|
28
|
+
request :clone_server
|
29
|
+
request :delete_server
|
30
|
+
request :reboot_server
|
31
|
+
request :list_servers
|
32
|
+
request :get_server
|
33
|
+
request :create_server
|
34
|
+
request :resize_server
|
35
|
+
request :remove_balancer_node
|
36
|
+
request :add_balancer_node
|
37
|
+
request :list_balancers
|
38
|
+
request :list_configs
|
39
|
+
request :list_templates
|
40
|
+
request :list_images
|
41
|
+
request :get_stats
|
42
|
+
request :list_private_ips
|
43
|
+
|
44
|
+
class Mock
|
45
|
+
|
46
|
+
def self.data
|
47
|
+
@data ||= Hash.new do |hash, key|
|
48
|
+
hash[key] = {
|
49
|
+
:last_modified => {
|
50
|
+
:images => {},
|
51
|
+
:servers => {}
|
52
|
+
},
|
53
|
+
:images => {},
|
54
|
+
:servers => {}
|
55
|
+
}
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
def self.reset_data(keys=data.keys)
|
60
|
+
for key in [*keys]
|
61
|
+
data.delete(key)
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
def initialize(options={})
|
66
|
+
@storm_on_demand_username = options[:storm_on_demand_username]
|
67
|
+
@data = self.class.data[@storm_on_demand_username]
|
68
|
+
end
|
69
|
+
|
70
|
+
end
|
71
|
+
|
72
|
+
class Real
|
73
|
+
|
74
|
+
def initialize(options={})
|
75
|
+
require 'json'
|
76
|
+
uri = URI.parse(options[:storm_on_demand_auth_url] ||= API_URL)
|
77
|
+
@host = uri.host
|
78
|
+
@path = uri.path
|
79
|
+
@port = uri.port
|
80
|
+
@scheme = uri.scheme
|
81
|
+
@storm_on_demand_username = options[:storm_on_demand_username]
|
82
|
+
@storm_on_demand_password = options[:storm_on_demand_password]
|
83
|
+
@connection = Fog::Connection.new("#{@scheme}://#{@host}:#{@port}")
|
84
|
+
end
|
85
|
+
|
86
|
+
def reload
|
87
|
+
@connection.reset
|
88
|
+
end
|
89
|
+
|
90
|
+
def request(params)
|
91
|
+
begin
|
92
|
+
response = @connection.request(params.merge!({
|
93
|
+
:headers => {
|
94
|
+
'Content-Type' => 'application/json',
|
95
|
+
'Authorization' => 'Basic ' << Base64.encode64("#{@storm_on_demand_username}:#{@storm_on_demand_password}").chomp
|
96
|
+
}.merge!(params[:headers] || {}),
|
97
|
+
:host => @host,
|
98
|
+
:path => "#{@path}/#{params[:path]}",
|
99
|
+
:expects => 200,
|
100
|
+
:method => :post
|
101
|
+
}))
|
102
|
+
rescue Excon::Errors::HTTPStatusError => error
|
103
|
+
raise case error
|
104
|
+
when Excon::Errors::NotFound
|
105
|
+
Fog::StormOnDemand::Compute::NotFound.slurp(error)
|
106
|
+
else
|
107
|
+
error
|
108
|
+
end
|
109
|
+
end
|
110
|
+
unless response.body.empty?
|
111
|
+
response.body = JSON.parse(response.body)
|
112
|
+
end
|
113
|
+
if response.body.keys.include?('full_error')
|
114
|
+
raise(Fog::StormOnDemand::Compute::Error, response.body.inspect)
|
115
|
+
end
|
116
|
+
response
|
117
|
+
end
|
118
|
+
|
119
|
+
end
|
120
|
+
end
|
121
|
+
end
|
122
|
+
end
|
data/lib/fog/core/attributes.rb
CHANGED
@@ -121,6 +121,12 @@ module Fog
|
|
121
121
|
@attributes ||= {}
|
122
122
|
end
|
123
123
|
|
124
|
+
def dup
|
125
|
+
copy = super
|
126
|
+
copy.dup_attributes!
|
127
|
+
copy
|
128
|
+
end
|
129
|
+
|
124
130
|
def identity
|
125
131
|
send(self.class.instance_variable_get('@identity'))
|
126
132
|
end
|
@@ -165,6 +171,12 @@ module Fog
|
|
165
171
|
end
|
166
172
|
end
|
167
173
|
|
174
|
+
protected
|
175
|
+
|
176
|
+
def dup_attributes!
|
177
|
+
@attributes = @attributes.dup
|
178
|
+
end
|
179
|
+
|
168
180
|
private
|
169
181
|
|
170
182
|
def remap_attributes(attributes, mapping)
|