fog 1.3.1 → 1.4.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +1 -0
- data/.irbrc +87 -0
- data/Rakefile +3 -3
- data/bin/fog +1 -3
- data/docs/_layouts/default.html +2 -2
- data/docs/cdn/index.markdown +2 -2
- data/docs/compute/index.markdown +2 -2
- data/docs/dns/index.markdown +2 -2
- data/docs/public/js/libs/dd_belatedpng.js +289 -13
- data/docs/public/js/libs/dd_belatedpng.min.js +13 -0
- data/docs/public/js/libs/modernizr-1.6.js +892 -0
- data/docs/public/js/profiling/yahoo-profiling.js +1028 -0
- data/docs/storage/index.markdown +2 -2
- data/fog.gemspec +10 -4
- data/lib/fog.rb +4 -1
- data/lib/fog/aws.rb +46 -5
- data/lib/fog/aws/auto_scaling.rb +26 -11
- data/lib/fog/aws/beanstalk.rb +28 -16
- data/lib/fog/aws/cdn.rb +25 -9
- data/lib/fog/aws/cloud_formation.rb +18 -7
- data/lib/fog/aws/cloud_watch.rb +18 -8
- data/lib/fog/aws/compute.rb +52 -10
- data/lib/fog/aws/credential_fetcher.rb +64 -0
- data/lib/fog/aws/dns.rb +31 -11
- data/lib/fog/aws/dynamodb.rb +32 -18
- data/lib/fog/aws/elasticache.rb +18 -5
- data/lib/fog/aws/elb.rb +30 -10
- data/lib/fog/aws/elb/policy_types.rb +432 -1
- data/lib/fog/aws/emr.rb +20 -20
- data/lib/fog/aws/iam.rb +25 -2
- data/lib/fog/aws/models/beanstalk/environment.rb +16 -0
- data/lib/fog/aws/models/beanstalk/template.rb +16 -0
- data/lib/fog/aws/models/compute/address.rb +4 -0
- data/lib/fog/aws/models/compute/dhcp_option.rb +68 -0
- data/lib/fog/aws/models/compute/dhcp_options.rb +91 -0
- data/lib/fog/aws/models/compute/flavors.rb +10 -1
- data/lib/fog/aws/models/compute/internet_gateway.rb +81 -0
- data/lib/fog/aws/models/compute/internet_gateways.rb +91 -0
- data/lib/fog/aws/models/compute/network_interface.rb +70 -0
- data/lib/fog/aws/models/compute/network_interfaces.rb +136 -0
- data/lib/fog/aws/models/compute/security_group.rb +75 -17
- data/lib/fog/aws/models/compute/server.rb +16 -18
- data/lib/fog/aws/models/compute/servers.rb +1 -1
- data/lib/fog/aws/models/compute/spot_request.rb +20 -0
- data/lib/fog/aws/models/compute/spot_requests.rb +4 -4
- data/lib/fog/aws/models/compute/volume.rb +13 -0
- data/lib/fog/aws/models/dns/record.rb +12 -6
- data/lib/fog/aws/models/dns/records.rb +84 -12
- data/lib/fog/aws/models/dns/zones.rb +1 -1
- data/lib/fog/aws/models/elb/load_balancer.rb +36 -4
- data/lib/fog/aws/models/elb/load_balancers.rb +14 -4
- data/lib/fog/aws/models/iam/access_key.rb +38 -0
- data/lib/fog/aws/models/iam/access_keys.rb +36 -0
- data/lib/fog/aws/models/iam/policies.rb +44 -0
- data/lib/fog/aws/models/iam/policy.rb +39 -0
- data/lib/fog/aws/models/iam/user.rb +40 -0
- data/lib/fog/aws/models/iam/users.rb +27 -0
- data/lib/fog/aws/models/storage/directory.rb +34 -27
- data/lib/fog/aws/models/storage/file.rb +1 -1
- data/lib/fog/aws/models/storage/files.rb +5 -0
- data/lib/fog/aws/parsers/auto_scaling/put_notification_configuration.rb +27 -0
- data/lib/fog/aws/parsers/cloud_formation/describe_stacks.rb +12 -3
- data/lib/fog/aws/parsers/compute/associate_dhcp_options.rb +24 -0
- data/lib/fog/aws/parsers/compute/attach_internet_gateway.rb +24 -0
- data/lib/fog/aws/parsers/compute/attach_network_interface.rb +18 -0
- data/lib/fog/aws/parsers/compute/create_dhcp_options.rb +75 -0
- data/lib/fog/aws/parsers/compute/create_internet_gateway.rb +65 -0
- data/lib/fog/aws/parsers/compute/create_network_interface.rb +28 -0
- data/lib/fog/aws/parsers/compute/delete_dhcp_options.rb +24 -0
- data/lib/fog/aws/parsers/compute/delete_internet_gateway.rb +24 -0
- data/lib/fog/aws/parsers/compute/delete_network_interface.rb +24 -0
- data/lib/fog/aws/parsers/compute/describe_dhcp_options.rb +75 -0
- data/lib/fog/aws/parsers/compute/describe_instance_status.rb +32 -62
- data/lib/fog/aws/parsers/compute/describe_instances.rb +26 -8
- data/lib/fog/aws/parsers/compute/describe_internet_gateways.rb +65 -0
- data/lib/fog/aws/parsers/compute/describe_network_interface_attribute.rb +79 -0
- data/lib/fog/aws/parsers/compute/describe_network_interfaces.rb +43 -0
- data/lib/fog/aws/parsers/compute/describe_reserved_instances.rb +2 -2
- data/lib/fog/aws/parsers/compute/describe_volume_status.rb +62 -45
- data/lib/fog/aws/parsers/compute/describe_volumes.rb +0 -2
- data/lib/fog/aws/parsers/compute/detach_internet_gateway.rb +24 -0
- data/lib/fog/aws/parsers/compute/detach_network_interface.rb +24 -0
- data/lib/fog/aws/parsers/compute/network_interface_parser.rb +89 -0
- data/lib/fog/aws/parsers/dns/list_resource_record_sets.rb +2 -2
- data/lib/fog/aws/parsers/elb/apply_security_groups_to_load_balancer.rb +26 -0
- data/lib/fog/aws/parsers/elb/attach_load_balancer_to_subnets.rb +26 -0
- data/lib/fog/aws/parsers/elb/describe_load_balancers.rb +18 -2
- data/lib/fog/aws/parsers/elb/detach_load_balancer_from_subnets.rb +26 -0
- data/lib/fog/aws/parsers/iam/base_instance_profile.rb +79 -0
- data/lib/fog/aws/parsers/iam/get_role_policy.rb +32 -0
- data/lib/fog/aws/parsers/iam/get_user_policy.rb +9 -3
- data/lib/fog/aws/parsers/iam/instance_profile.rb +34 -0
- data/lib/fog/aws/parsers/iam/list_instance_profiles.rb +34 -0
- data/lib/fog/aws/parsers/iam/list_roles.rb +31 -0
- data/lib/fog/aws/parsers/iam/role_parser.rb +53 -0
- data/lib/fog/aws/parsers/iam/single_role.rb +29 -0
- data/lib/fog/aws/rds.rb +23 -11
- data/lib/fog/aws/requests/auto_scaling/create_launch_configuration.rb +4 -3
- data/lib/fog/aws/requests/auto_scaling/delete_notification_configuration.rb +47 -0
- data/lib/fog/aws/requests/auto_scaling/put_notification_configuration.rb +51 -0
- data/lib/fog/aws/requests/beanstalk/create_configuration_template.rb +3 -0
- data/lib/fog/aws/requests/compute/associate_dhcp_options.rb +57 -0
- data/lib/fog/aws/requests/compute/attach_internet_gateway.rb +56 -0
- data/lib/fog/aws/requests/compute/attach_network_interface.rb +57 -0
- data/lib/fog/aws/requests/compute/authorize_security_group_ingress.rb +2 -2
- data/lib/fog/aws/requests/compute/create_dhcp_options.rb +75 -0
- data/lib/fog/aws/requests/compute/create_internet_gateway.rb +51 -0
- data/lib/fog/aws/requests/compute/create_network_interface.rb +118 -0
- data/lib/fog/aws/requests/compute/delete_dhcp_options.rb +50 -0
- data/lib/fog/aws/requests/compute/delete_internet_gateway.rb +48 -0
- data/lib/fog/aws/requests/compute/delete_network_interface.rb +52 -0
- data/lib/fog/aws/requests/compute/describe_dhcp_options.rb +62 -0
- data/lib/fog/aws/requests/compute/describe_instance_status.rb +11 -1
- data/lib/fog/aws/requests/compute/describe_instances.rb +3 -0
- data/lib/fog/aws/requests/compute/describe_internet_gateways.rb +61 -0
- data/lib/fog/aws/requests/compute/describe_network_interface_attribute.rb +67 -0
- data/lib/fog/aws/requests/compute/describe_network_interfaces.rb +85 -0
- data/lib/fog/aws/requests/compute/describe_volume_status.rb +3 -8
- data/lib/fog/aws/requests/compute/detach_internet_gateway.rb +56 -0
- data/lib/fog/aws/requests/compute/detach_network_interface.rb +49 -0
- data/lib/fog/aws/requests/compute/modify_network_interface_attribute.rb +90 -0
- data/lib/fog/aws/requests/compute/register_image.rb +3 -3
- data/lib/fog/aws/requests/compute/release_address.rb +10 -2
- data/lib/fog/aws/requests/compute/reset_network_interface_attribute.rb +56 -0
- data/lib/fog/aws/requests/compute/run_instances.rb +1 -1
- data/lib/fog/aws/requests/compute/start_instances.rb +27 -0
- data/lib/fog/aws/requests/compute/stop_instances.rb +27 -0
- data/lib/fog/aws/requests/dns/change_resource_record_sets.rb +109 -15
- data/lib/fog/aws/requests/dns/create_hosted_zone.rb +46 -1
- data/lib/fog/aws/requests/dns/get_hosted_zone.rb +24 -1
- data/lib/fog/aws/requests/dns/list_hosted_zones.rb +45 -0
- data/lib/fog/aws/requests/dns/list_resource_record_sets.rb +4 -2
- data/lib/fog/aws/requests/dynamodb/batch_get_item.rb +1 -1
- data/lib/fog/aws/requests/dynamodb/batch_write_item.rb +35 -0
- data/lib/fog/aws/requests/dynamodb/create_table.rb +1 -1
- data/lib/fog/aws/requests/dynamodb/delete_item.rb +1 -1
- data/lib/fog/aws/requests/dynamodb/delete_table.rb +1 -1
- data/lib/fog/aws/requests/dynamodb/describe_table.rb +1 -1
- data/lib/fog/aws/requests/dynamodb/get_item.rb +1 -1
- data/lib/fog/aws/requests/dynamodb/list_tables.rb +1 -1
- data/lib/fog/aws/requests/dynamodb/put_item.rb +1 -1
- data/lib/fog/aws/requests/dynamodb/query.rb +1 -1
- data/lib/fog/aws/requests/dynamodb/scan.rb +1 -1
- data/lib/fog/aws/requests/dynamodb/update_item.rb +1 -1
- data/lib/fog/aws/requests/dynamodb/update_table.rb +1 -1
- data/lib/fog/aws/requests/elb/apply_security_groups_to_load_balancer.rb +61 -0
- data/lib/fog/aws/requests/elb/attach_load_balancer_to_subnets.rb +61 -0
- data/lib/fog/aws/requests/elb/create_load_balancer.rb +8 -3
- data/lib/fog/aws/requests/elb/describe_load_balancers.rb +35 -5
- data/lib/fog/aws/requests/elb/detach_load_balancer_from_subnets.rb +61 -0
- data/lib/fog/aws/requests/iam/add_role_to_instance_profile.rb +35 -0
- data/lib/fog/aws/requests/iam/create_instance_profile.rb +46 -0
- data/lib/fog/aws/requests/iam/create_role.rb +56 -0
- data/lib/fog/aws/requests/iam/delete_instance_profile.rb +32 -0
- data/lib/fog/aws/requests/iam/delete_role.rb +32 -0
- data/lib/fog/aws/requests/iam/delete_role_policy.rb +35 -0
- data/lib/fog/aws/requests/iam/get_group.rb +18 -0
- data/lib/fog/aws/requests/iam/get_instance_profile.rb +42 -0
- data/lib/fog/aws/requests/iam/get_role.rb +38 -0
- data/lib/fog/aws/requests/iam/get_role_policy.rb +36 -0
- data/lib/fog/aws/requests/iam/get_user.rb +23 -3
- data/lib/fog/aws/requests/iam/get_user_policy.rb +17 -0
- data/lib/fog/aws/requests/iam/list_instance_profiles.rb +50 -0
- data/lib/fog/aws/requests/iam/list_instance_profiles_for_role.rb +51 -0
- data/lib/fog/aws/requests/iam/list_role_policies.rb +39 -0
- data/lib/fog/aws/requests/iam/list_roles.rb +43 -0
- data/lib/fog/aws/requests/iam/put_group_policy.rb +1 -1
- data/lib/fog/aws/requests/iam/put_role_policy.rb +36 -0
- data/lib/fog/aws/requests/iam/put_user_policy.rb +1 -1
- data/lib/fog/aws/requests/iam/remove_role_from_instance_profile.rb +36 -0
- data/lib/fog/aws/requests/storage/get_bucket_policy.rb +1 -1
- data/lib/fog/aws/requests/storage/get_object_http_url.rb +2 -1
- data/lib/fog/aws/requests/storage/get_object_https_url.rb +1 -18
- data/lib/fog/aws/requests/storage/get_object_url.rb +29 -8
- data/lib/fog/aws/requests/storage/post_object_hidden_fields.rb +1 -1
- data/lib/fog/aws/requests/storage/put_bucket_policy.rb +1 -1
- data/lib/fog/aws/requests/storage/put_object_url.rb +22 -28
- data/lib/fog/aws/requests/sts/get_federation_token.rb +1 -1
- data/lib/fog/aws/ses.rb +21 -8
- data/lib/fog/aws/simpledb.rb +22 -9
- data/lib/fog/aws/sns.rb +18 -7
- data/lib/fog/aws/sqs.rb +20 -11
- data/lib/fog/aws/storage.rb +51 -18
- data/lib/fog/aws/sts.rb +1 -2
- data/lib/fog/bare_metal_cloud.rb +1 -1
- data/lib/fog/bare_metal_cloud/compute.rb +1 -1
- data/lib/fog/bin.rb +2 -1
- data/lib/fog/bin/aws.rb +2 -0
- data/lib/fog/bin/hp.rb +38 -0
- data/lib/fog/bin/openstack.rb +6 -1
- data/lib/fog/bin/xenserver.rb +31 -0
- data/lib/fog/bluebox.rb +1 -1
- data/lib/fog/bluebox/compute.rb +2 -3
- data/lib/fog/bluebox/dns.rb +2 -2
- data/lib/fog/bluebox/models/compute/server.rb +1 -1
- data/lib/fog/brightbox.rb +1 -1
- data/lib/fog/brightbox/compute.rb +6 -8
- data/lib/fog/brightbox/models/compute/server.rb +2 -1
- data/lib/fog/cdn.rb +3 -0
- data/lib/fog/clodo/compute.rb +1 -3
- data/lib/fog/clodo/models/compute/server.rb +1 -1
- data/lib/fog/clodo/requests/compute/create_server.rb +1 -1
- data/lib/fog/clodo/requests/compute/delete_ip_address.rb +1 -1
- data/lib/fog/clodo/requests/compute/move_ip_address.rb +1 -1
- data/lib/fog/clodo/requests/compute/server_action.rb +1 -1
- data/lib/fog/cloudstack.rb +13 -1
- data/lib/fog/cloudstack/compute.rb +238 -61
- data/lib/fog/cloudstack/models/compute/address.rb +17 -0
- data/lib/fog/cloudstack/models/compute/flavor.rb +33 -0
- data/lib/fog/cloudstack/models/compute/flavors.rb +28 -0
- data/lib/fog/cloudstack/models/compute/image.rb +72 -0
- data/lib/fog/cloudstack/models/compute/images.rb +32 -0
- data/lib/fog/cloudstack/models/compute/job.rb +29 -0
- data/lib/fog/cloudstack/models/compute/jobs.rb +28 -0
- data/lib/fog/cloudstack/models/compute/server.rb +92 -0
- data/lib/fog/cloudstack/models/compute/servers.rb +34 -0
- data/lib/fog/cloudstack/models/compute/volume.rb +119 -0
- data/lib/fog/cloudstack/models/compute/volumes.rb +28 -0
- data/lib/fog/cloudstack/models/compute/zone.rb +39 -0
- data/lib/fog/cloudstack/models/compute/zones.rb +33 -0
- data/lib/fog/cloudstack/requests/compute/attach_volume.rb +57 -10
- data/lib/fog/cloudstack/requests/compute/create_volume.rb +43 -0
- data/lib/fog/cloudstack/requests/compute/delete_template.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/delete_volume.rb +24 -4
- data/lib/fog/cloudstack/requests/compute/deploy_virtual_machine.rb +110 -14
- data/lib/fog/cloudstack/requests/compute/destroy_virtual_machine.rb +12 -3
- data/lib/fog/cloudstack/requests/compute/detach_volume.rb +47 -6
- data/lib/fog/cloudstack/requests/compute/list_async_jobs.rb +17 -5
- data/lib/fog/cloudstack/requests/compute/list_capabilities.rb +1 -1
- data/lib/fog/cloudstack/requests/compute/list_service_offerings.rb +27 -5
- data/lib/fog/cloudstack/requests/compute/list_templates.rb +20 -5
- data/lib/fog/cloudstack/requests/compute/list_virtual_machines.rb +11 -5
- data/lib/fog/cloudstack/requests/compute/list_volumes.rb +23 -5
- data/lib/fog/cloudstack/requests/compute/list_zones.rb +18 -4
- data/lib/fog/cloudstack/requests/compute/reboot_virtual_machine.rb +11 -0
- data/lib/fog/compute.rb +6 -4
- data/lib/fog/compute/models/server.rb +19 -4
- data/lib/fog/core/collection.rb +4 -5
- data/lib/fog/core/credentials.rb +5 -3
- data/lib/fog/core/current_machine.rb +1 -5
- data/lib/fog/core/errors.rb +6 -3
- data/lib/fog/core/json.rb +27 -1
- data/lib/fog/core/model.rb +1 -2
- data/lib/fog/core/scp.rb +11 -3
- data/lib/fog/core/service.rb +29 -8
- data/lib/fog/core/ssh.rb +18 -5
- data/lib/fog/dns.rb +0 -4
- data/lib/fog/dnsimple.rb +1 -1
- data/lib/fog/dnsimple/dns.rb +2 -4
- data/lib/fog/dnsimple/requests/dns/create_domain.rb +1 -1
- data/lib/fog/dnsimple/requests/dns/create_record.rb +1 -1
- data/lib/fog/dnsimple/requests/dns/update_record.rb +1 -1
- data/lib/fog/dnsmadeeasy.rb +1 -1
- data/lib/fog/dnsmadeeasy/dns.rb +4 -5
- data/lib/fog/dnsmadeeasy/requests/dns/create_record.rb +1 -1
- data/lib/fog/dnsmadeeasy/requests/dns/create_secondary.rb +1 -1
- data/lib/fog/dnsmadeeasy/requests/dns/update_record.rb +1 -1
- data/lib/fog/dnsmadeeasy/requests/dns/update_secondary.rb +1 -1
- data/lib/fog/dynect.rb +1 -1
- data/lib/fog/dynect/dns.rb +3 -5
- data/lib/fog/dynect/requests/dns/delete_record.rb +1 -0
- data/lib/fog/dynect/requests/dns/get_node_list.rb +1 -0
- data/lib/fog/dynect/requests/dns/get_record.rb +1 -0
- data/lib/fog/dynect/requests/dns/get_zone.rb +1 -0
- data/lib/fog/dynect/requests/dns/post_record.rb +1 -1
- data/lib/fog/dynect/requests/dns/post_session.rb +2 -1
- data/lib/fog/dynect/requests/dns/post_zone.rb +1 -1
- data/lib/fog/dynect/requests/dns/put_zone.rb +1 -1
- data/lib/fog/ecloud/collection.rb +26 -0
- data/lib/fog/ecloud/compute.rb +341 -1135
- data/lib/fog/ecloud/generate_collection.rb +130 -0
- data/lib/fog/ecloud/ipaddr.rb +5 -0
- data/lib/fog/ecloud/mock_data_classes.rb +768 -0
- data/lib/fog/ecloud/model.rb +22 -0
- data/lib/fog/ecloud/models/compute/admin_organization.rb +39 -0
- data/lib/fog/ecloud/models/compute/admin_organizations.rb +27 -0
- data/lib/fog/ecloud/models/compute/api_key.rb +21 -0
- data/lib/fog/ecloud/models/compute/api_keys.rb +27 -0
- data/lib/fog/ecloud/models/compute/association.rb +23 -0
- data/lib/fog/ecloud/models/compute/associations.rb +35 -0
- data/lib/fog/ecloud/models/compute/authentication_level.rb +22 -0
- data/lib/fog/ecloud/models/compute/authentication_levels.rb +27 -0
- data/lib/fog/ecloud/models/compute/backup_internet_service.rb +22 -33
- data/lib/fog/ecloud/models/compute/backup_internet_services.rb +20 -11
- data/lib/fog/ecloud/models/compute/catalog.rb +17 -5
- data/lib/fog/ecloud/models/compute/catalog_configuration.rb +23 -0
- data/lib/fog/ecloud/models/compute/catalog_configurations.rb +27 -0
- data/lib/fog/ecloud/models/compute/catalog_item.rb +12 -17
- data/lib/fog/ecloud/models/compute/compute_pool.rb +59 -0
- data/lib/fog/ecloud/models/compute/compute_pools.rb +34 -0
- data/lib/fog/ecloud/models/compute/cpu_usage_detail.rb +17 -0
- data/lib/fog/ecloud/models/compute/cpu_usage_detail_summary.rb +27 -0
- data/lib/fog/ecloud/models/compute/environment.rb +105 -0
- data/lib/fog/ecloud/models/compute/environments.rb +40 -0
- data/lib/fog/ecloud/models/compute/firewall_acl.rb +14 -11
- data/lib/fog/ecloud/models/compute/firewall_acls.rb +7 -10
- data/lib/fog/ecloud/models/compute/group.rb +39 -0
- data/lib/fog/ecloud/models/compute/groups.rb +28 -0
- data/lib/fog/ecloud/models/compute/guest_process.rb +15 -0
- data/lib/fog/ecloud/models/compute/guest_processes.rb +27 -0
- data/lib/fog/ecloud/models/compute/hardware_configuration.rb +18 -0
- data/lib/fog/ecloud/models/compute/hardware_configurations.rb +27 -0
- data/lib/fog/ecloud/models/compute/internet_service.rb +47 -73
- data/lib/fog/ecloud/models/compute/internet_services.rb +23 -10
- data/lib/fog/ecloud/models/compute/ip_address.rb +25 -0
- data/lib/fog/ecloud/models/compute/ip_addresses.rb +27 -0
- data/lib/fog/ecloud/models/compute/layout.rb +20 -0
- data/lib/fog/ecloud/models/compute/layouts.rb +27 -0
- data/lib/fog/ecloud/models/compute/location.rb +23 -0
- data/lib/fog/ecloud/models/compute/locations.rb +31 -0
- data/lib/fog/ecloud/models/compute/login_banner.rb +16 -0
- data/lib/fog/ecloud/models/compute/login_banners.rb +27 -0
- data/lib/fog/ecloud/models/compute/memory_usage_detail.rb +16 -0
- data/lib/fog/ecloud/models/compute/memory_usage_detail_summary.rb +27 -0
- data/lib/fog/ecloud/models/compute/monitor.rb +46 -0
- data/lib/fog/ecloud/models/compute/monitors.rb +31 -0
- data/lib/fog/ecloud/models/compute/network.rb +16 -55
- data/lib/fog/ecloud/models/compute/networks.rb +5 -10
- data/lib/fog/ecloud/models/compute/node.rb +22 -26
- data/lib/fog/ecloud/models/compute/nodes.rb +19 -6
- data/lib/fog/ecloud/models/compute/operating_system.rb +17 -0
- data/lib/fog/ecloud/models/compute/operating_system_families.rb +27 -0
- data/lib/fog/ecloud/models/compute/operating_system_family.rb +21 -0
- data/lib/fog/ecloud/models/compute/operating_systems.rb +26 -0
- data/lib/fog/ecloud/models/compute/organization.rb +79 -0
- data/lib/fog/ecloud/models/compute/organizations.rb +39 -0
- data/lib/fog/ecloud/models/compute/password_complexity_rule.rb +49 -0
- data/lib/fog/ecloud/models/compute/password_complexity_rules.rb +27 -0
- data/lib/fog/ecloud/models/compute/physical_device.rb +22 -0
- data/lib/fog/ecloud/models/compute/physical_devices.rb +27 -0
- data/lib/fog/ecloud/models/compute/public_ip.rb +14 -10
- data/lib/fog/ecloud/models/compute/public_ips.rb +8 -11
- data/lib/fog/ecloud/models/compute/rnat.rb +27 -0
- data/lib/fog/ecloud/models/compute/rnats.rb +27 -0
- data/lib/fog/ecloud/models/compute/role.rb +24 -0
- data/lib/fog/ecloud/models/compute/roles.rb +37 -0
- data/lib/fog/ecloud/models/compute/row.rb +53 -0
- data/lib/fog/ecloud/models/compute/rows.rb +37 -0
- data/lib/fog/ecloud/models/compute/server.rb +170 -132
- data/lib/fog/ecloud/models/compute/server_configuration_option.rb +17 -0
- data/lib/fog/ecloud/models/compute/server_configuration_options.rb +27 -0
- data/lib/fog/ecloud/models/compute/servers.rb +38 -28
- data/lib/fog/ecloud/models/compute/ssh_key.rb +20 -0
- data/lib/fog/ecloud/models/compute/ssh_keys.rb +27 -0
- data/lib/fog/ecloud/models/compute/storage_usage_detail.rb +16 -0
- data/lib/fog/ecloud/models/compute/storage_usage_detail_summary.rb +27 -0
- data/lib/fog/ecloud/models/compute/support_ticket.rb +29 -0
- data/lib/fog/ecloud/models/compute/support_tickets.rb +27 -0
- data/lib/fog/ecloud/models/compute/tag.rb +13 -0
- data/lib/fog/ecloud/models/compute/tags.rb +27 -0
- data/lib/fog/ecloud/models/compute/task.rb +10 -11
- data/lib/fog/ecloud/models/compute/tasks.rb +8 -8
- data/lib/fog/ecloud/models/compute/template.rb +24 -0
- data/lib/fog/ecloud/models/compute/templates.rb +40 -0
- data/lib/fog/ecloud/models/compute/trusted_network_group.rb +33 -0
- data/lib/fog/ecloud/models/compute/trusted_network_groups.rb +28 -0
- data/lib/fog/ecloud/models/compute/user.rb +35 -0
- data/lib/fog/ecloud/models/compute/users.rb +27 -0
- data/lib/fog/ecloud/requests/compute/admin_disable_support_access.rb +9 -0
- data/lib/fog/ecloud/requests/compute/admin_edit_authentication_levels.rb +34 -0
- data/lib/fog/ecloud/requests/compute/admin_edit_login_banner.rb +32 -0
- data/lib/fog/ecloud/requests/compute/admin_edit_password_complexity_rules.rb +74 -0
- data/lib/fog/ecloud/requests/compute/admin_enable_support_access.rb +9 -0
- data/lib/fog/ecloud/requests/compute/backup_internet_service_create.rb +47 -0
- data/lib/fog/ecloud/requests/compute/backup_internet_service_delete.rb +11 -0
- data/lib/fog/ecloud/requests/compute/backup_internet_service_edit.rb +47 -0
- data/lib/fog/ecloud/requests/compute/compute_pool_edit.rb +37 -0
- data/lib/fog/ecloud/requests/compute/firewall_acls_create.rb +79 -0
- data/lib/fog/ecloud/requests/compute/firewall_acls_delete.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_admin_organization.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_admin_organizations.rb +11 -0
- data/lib/fog/ecloud/requests/compute/{get_task_list.rb → get_api_key.rb} +1 -1
- data/lib/fog/ecloud/requests/compute/{get_vapp_template.rb → get_api_keys.rb} +1 -1
- data/lib/fog/ecloud/requests/compute/get_association.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_associations.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_authentication_level.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_authentication_levels.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_backup_internet_service.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_backup_internet_services.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_catalog.rb +0 -33
- data/lib/fog/ecloud/requests/compute/get_catalog_configuration.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_catalog_configurations.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_catalog_item.rb +0 -36
- data/lib/fog/ecloud/requests/compute/get_compute_pool.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_compute_pools.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_cpu_usage_detail.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_cpu_usage_detail_summary.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_environment.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_environments.rb +0 -0
- data/lib/fog/ecloud/requests/compute/get_group.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_groups.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_guest_process.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_guest_processes.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_hardware_configuration.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_hardware_configurations.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_internet_service.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_internet_services.rb +0 -71
- data/lib/fog/ecloud/requests/compute/get_ip_address.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_ip_addresses.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_layout.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_layouts.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_location.rb +12 -0
- data/lib/fog/ecloud/requests/compute/get_locations.rb +12 -0
- data/lib/fog/ecloud/requests/compute/get_login_banner.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_login_banners.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_memory_usage_detail.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_memory_usage_detail_summary.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_monitor.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_monitors.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_network.rb +1 -34
- data/lib/fog/ecloud/requests/compute/get_network_summary.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_networks.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_node.rb +0 -29
- data/lib/fog/ecloud/requests/compute/get_nodes.rb +0 -30
- data/lib/fog/ecloud/requests/compute/get_operating_system.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_operating_system_families.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_operating_system_family.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_organization.rb +0 -38
- data/lib/fog/ecloud/requests/compute/get_organizations.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_password_complexity_rule.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_password_complexity_rules.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_physical_device.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_physical_devices.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_process.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_processes.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_public_ip.rb +0 -23
- data/lib/fog/ecloud/requests/compute/get_public_ips.rb +0 -27
- data/lib/fog/ecloud/requests/compute/get_rnat.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_rnats.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_role.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_roles.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_row.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_rows.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_server.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_server_configuration_option.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_server_configuration_options.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_servers.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_ssh_key.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_ssh_keys.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_storage_usage_detail.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_storage_usage_detail_summary.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_support_ticket.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_support_tickets.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_tag.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_tags.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_tasks.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_template.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_templates.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_trusted_network_group.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_trusted_network_groups.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_user.rb +11 -0
- data/lib/fog/ecloud/requests/compute/get_users.rb +11 -0
- data/lib/fog/ecloud/requests/compute/groups_create.rb +31 -0
- data/lib/fog/ecloud/requests/compute/groups_delete.rb +11 -0
- data/lib/fog/ecloud/requests/compute/groups_edit.rb +29 -0
- data/lib/fog/ecloud/requests/compute/groups_movedown.rb +11 -0
- data/lib/fog/ecloud/requests/compute/groups_moveup.rb +11 -0
- data/lib/fog/ecloud/requests/compute/internet_service_create.rb +67 -0
- data/lib/fog/ecloud/requests/compute/internet_service_delete.rb +11 -0
- data/lib/fog/ecloud/requests/compute/internet_service_edit.rb +60 -0
- data/lib/fog/ecloud/requests/compute/monitors_create_default.rb +11 -0
- data/lib/fog/ecloud/requests/compute/monitors_create_ecv.rb +40 -0
- data/lib/fog/ecloud/requests/compute/monitors_create_http.rb +44 -0
- data/lib/fog/ecloud/requests/compute/monitors_create_loopback.rb +11 -0
- data/lib/fog/ecloud/requests/compute/monitors_create_ping.rb +35 -0
- data/lib/fog/ecloud/requests/compute/monitors_disable.rb +11 -0
- data/lib/fog/ecloud/requests/compute/monitors_edit_ecv.rb +40 -0
- data/lib/fog/ecloud/requests/compute/monitors_edit_http.rb +44 -0
- data/lib/fog/ecloud/requests/compute/monitors_edit_ping.rb +35 -0
- data/lib/fog/ecloud/requests/compute/monitors_enable.rb +11 -0
- data/lib/fog/ecloud/requests/compute/node_service_create.rb +45 -0
- data/lib/fog/ecloud/requests/compute/node_service_delete.rb +11 -0
- data/lib/fog/ecloud/requests/compute/node_service_edit.rb +41 -0
- data/lib/fog/ecloud/requests/compute/power_off.rb +0 -12
- data/lib/fog/ecloud/requests/compute/power_on.rb +0 -12
- data/lib/fog/ecloud/requests/compute/power_shutdown.rb +1 -1
- data/lib/fog/ecloud/requests/compute/public_ip_activate.rb +11 -0
- data/lib/fog/ecloud/requests/compute/rnat_associations_create_device.rb +32 -0
- data/lib/fog/ecloud/requests/compute/rnat_associations_delete.rb +9 -0
- data/lib/fog/ecloud/requests/compute/rnat_associations_edit_network.rb +31 -0
- data/lib/fog/ecloud/requests/compute/rows_create.rb +29 -0
- data/lib/fog/ecloud/requests/compute/rows_delete.rb +11 -0
- data/lib/fog/ecloud/requests/compute/rows_edit.rb +29 -0
- data/lib/fog/ecloud/requests/compute/rows_movedown.rb +11 -0
- data/lib/fog/ecloud/requests/compute/rows_moveup.rb +11 -0
- data/lib/fog/ecloud/requests/compute/trusted_network_groups_create.rb +53 -0
- data/lib/fog/ecloud/requests/compute/trusted_network_groups_delete.rb +11 -0
- data/lib/fog/ecloud/requests/compute/trusted_network_groups_edit.rb +53 -0
- data/lib/fog/ecloud/requests/compute/virtual_machine_copy.rb +118 -0
- data/lib/fog/ecloud/requests/compute/virtual_machine_copy_identical.rb +45 -0
- data/lib/fog/ecloud/requests/compute/virtual_machine_create_from_template.rb +125 -0
- data/lib/fog/ecloud/requests/compute/virtual_machine_delete.rb +11 -0
- data/lib/fog/ecloud/requests/compute/virtual_machine_edit.rb +47 -0
- data/lib/fog/ecloud/requests/compute/virtual_machine_edit_hardware_configuration.rb +53 -0
- data/lib/fog/ecloud/requests/compute/virtual_machine_import.rb +67 -0
- data/lib/fog/glesys/compute.rb +2 -2
- data/lib/fog/glesys/models/compute/server.rb +5 -0
- data/lib/fog/glesys/models/compute/servers.rb +14 -8
- data/lib/fog/glesys/requests/compute/reboot.rb +14 -0
- data/lib/fog/go_grid.rb +1 -1
- data/lib/fog/go_grid/compute.rb +2 -3
- data/lib/fog/go_grid/models/compute/server.rb +2 -2
- data/lib/fog/google.rb +1 -1
- data/lib/fog/google/storage.rb +3 -3
- data/lib/fog/hp.rb +234 -0
- data/lib/fog/hp/README_HP.rdoc +60 -0
- data/lib/fog/hp/cdn.rb +131 -0
- data/lib/fog/hp/compute.rb +182 -0
- data/lib/fog/hp/models/compute/address.rb +71 -0
- data/lib/fog/hp/models/compute/addresses.rb +29 -0
- data/lib/fog/hp/models/compute/flavor.rb +24 -0
- data/lib/fog/hp/models/compute/flavors.rb +28 -0
- data/lib/fog/hp/models/compute/image.rb +37 -0
- data/lib/fog/hp/models/compute/images.rb +34 -0
- data/lib/fog/hp/models/compute/key_pair.rb +59 -0
- data/lib/fog/hp/models/compute/key_pairs.rb +31 -0
- data/lib/fog/hp/models/compute/security_group.rb +50 -0
- data/lib/fog/hp/models/compute/security_groups.rb +29 -0
- data/lib/fog/hp/models/compute/server.rb +225 -0
- data/lib/fog/{slicehost → hp}/models/compute/servers.rb +6 -8
- data/lib/fog/hp/models/storage/directories.rb +50 -0
- data/lib/fog/hp/models/storage/directory.rb +160 -0
- data/lib/fog/hp/models/storage/file.rb +87 -0
- data/lib/fog/hp/models/storage/files.rb +103 -0
- data/lib/fog/hp/requests/cdn/delete_container.rb +38 -0
- data/lib/fog/hp/requests/cdn/get_containers.rb +44 -0
- data/lib/fog/hp/requests/cdn/head_container.rb +50 -0
- data/lib/fog/hp/requests/cdn/post_container.rb +52 -0
- data/lib/fog/hp/requests/cdn/put_container.rb +53 -0
- data/lib/fog/hp/requests/compute/allocate_address.rb +49 -0
- data/lib/fog/hp/requests/compute/associate_address.rb +42 -0
- data/lib/fog/hp/requests/compute/change_password_server.rb +33 -0
- data/lib/fog/hp/requests/compute/confirm_resized_server.rb +34 -0
- data/lib/fog/hp/requests/compute/create_image.rb +63 -0
- data/lib/fog/hp/requests/compute/create_key_pair.rb +81 -0
- data/lib/fog/hp/requests/compute/create_security_group.rb +83 -0
- data/lib/fog/hp/requests/compute/create_security_group_rule.rb +75 -0
- data/lib/fog/hp/requests/compute/create_server.rb +140 -0
- data/lib/fog/hp/requests/compute/delete_image.rb +45 -0
- data/lib/fog/hp/requests/compute/delete_key_pair.rb +39 -0
- data/lib/fog/hp/requests/compute/delete_security_group.rb +41 -0
- data/lib/fog/hp/requests/compute/delete_security_group_rule.rb +49 -0
- data/lib/fog/hp/requests/compute/delete_server.rb +43 -0
- data/lib/fog/hp/requests/compute/disassociate_address.rb +39 -0
- data/lib/fog/hp/requests/compute/get_address.rb +45 -0
- data/lib/fog/hp/requests/compute/get_flavor_details.rb +51 -0
- data/lib/fog/hp/requests/compute/get_image_details.rb +43 -0
- data/lib/fog/hp/requests/compute/get_security_group.rb +57 -0
- data/lib/fog/hp/requests/compute/get_server_details.rb +52 -0
- data/lib/fog/hp/requests/compute/list_addresses.rb +41 -0
- data/lib/fog/hp/requests/compute/list_flavors.rb +44 -0
- data/lib/fog/hp/requests/compute/list_flavors_detail.rb +46 -0
- data/lib/fog/hp/requests/compute/list_images.rb +40 -0
- data/lib/fog/hp/requests/compute/list_images_detail.rb +49 -0
- data/lib/fog/hp/requests/compute/list_key_pairs.rb +44 -0
- data/lib/fog/hp/requests/compute/list_security_groups.rb +54 -0
- data/lib/fog/hp/requests/compute/list_server_addresses.rb +42 -0
- data/lib/fog/hp/requests/compute/list_server_private_addresses.rb +58 -0
- data/lib/fog/hp/requests/compute/list_server_public_addresses.rb +58 -0
- data/lib/fog/hp/requests/compute/list_servers.rb +41 -0
- data/lib/fog/hp/requests/compute/list_servers_detail.rb +56 -0
- data/lib/fog/hp/requests/compute/reboot_server.rb +34 -0
- data/lib/fog/hp/requests/compute/rebuild_server.rb +32 -0
- data/lib/fog/hp/requests/compute/release_address.rb +39 -0
- data/lib/fog/hp/requests/compute/resize_server.rb +39 -0
- data/lib/fog/hp/requests/compute/revert_resized_server.rb +35 -0
- data/lib/fog/hp/requests/compute/server_action.rb +25 -0
- data/lib/fog/hp/requests/compute/update_server.rb +42 -0
- data/lib/fog/hp/requests/storage/delete_container.rb +43 -0
- data/lib/fog/hp/requests/storage/delete_object.rb +44 -0
- data/lib/fog/hp/requests/storage/get_container.rb +92 -0
- data/lib/fog/hp/requests/storage/get_containers.rb +71 -0
- data/lib/fog/hp/requests/storage/get_object.rb +77 -0
- data/lib/fog/hp/requests/storage/head_container.rb +40 -0
- data/lib/fog/hp/requests/storage/head_containers.rb +37 -0
- data/lib/fog/hp/requests/storage/head_object.rb +35 -0
- data/lib/fog/hp/requests/storage/put_container.rb +48 -0
- data/lib/fog/hp/requests/storage/put_object.rb +94 -0
- data/lib/fog/hp/storage.rb +201 -0
- data/lib/fog/ibm.rb +2 -3
- data/lib/fog/ibm/compute.rb +1 -1
- data/lib/fog/ibm/models/compute/server.rb +2 -2
- data/lib/fog/ibm/storage.rb +1 -1
- data/lib/fog/identity.rb +24 -0
- data/lib/fog/image.rb +24 -0
- data/lib/fog/joyent/compute.rb +23 -8
- data/lib/fog/joyent/models/compute/keys.rb +2 -2
- data/lib/fog/joyent/models/compute/server.rb +1 -2
- data/lib/fog/joyent/requests/compute/list_datacenters.rb +17 -0
- data/lib/fog/libvirt.rb +1 -1
- data/lib/fog/libvirt/compute.rb +56 -28
- data/lib/fog/libvirt/models/compute/interface.rb +5 -25
- data/lib/fog/libvirt/models/compute/interfaces.rb +7 -45
- data/lib/fog/libvirt/models/compute/network.rb +3 -34
- data/lib/fog/libvirt/models/compute/networks.rb +6 -43
- data/lib/fog/libvirt/models/compute/nic.rb +54 -0
- data/lib/fog/libvirt/models/compute/nics.rb +16 -0
- data/lib/fog/libvirt/models/compute/node.rb +5 -16
- data/lib/fog/libvirt/models/compute/nodes.rb +9 -24
- data/lib/fog/libvirt/models/compute/pool.rb +26 -138
- data/lib/fog/libvirt/models/compute/pools.rb +6 -42
- data/lib/fog/libvirt/models/compute/server.rb +206 -308
- data/lib/fog/libvirt/models/compute/servers.rb +8 -63
- data/lib/fog/libvirt/models/compute/templates/server.xml.erb +17 -21
- data/lib/fog/libvirt/models/compute/templates/volume.xml.erb +2 -2
- data/lib/fog/libvirt/models/compute/{uri.rb → util/uri.rb} +1 -2
- data/lib/fog/libvirt/models/compute/util/util.rb +33 -0
- data/lib/fog/libvirt/models/compute/volume.rb +54 -122
- data/lib/fog/libvirt/models/compute/volumes.rb +2 -65
- data/lib/fog/libvirt/requests/compute/create_domain.rb +17 -0
- data/lib/fog/libvirt/requests/compute/create_volume.rb +17 -0
- data/lib/fog/libvirt/requests/compute/define_domain.rb +17 -0
- data/lib/fog/libvirt/requests/compute/define_pool.rb +17 -0
- data/lib/fog/libvirt/requests/compute/destroy_interface.rb +18 -0
- data/lib/fog/libvirt/requests/compute/destroy_network.rb +17 -0
- data/lib/fog/libvirt/requests/compute/get_node_info.rb +39 -0
- data/lib/fog/libvirt/requests/compute/list_domains.rb +106 -0
- data/lib/fog/libvirt/requests/compute/list_interfaces.rb +59 -0
- data/lib/fog/libvirt/requests/compute/list_networks.rb +58 -0
- data/lib/fog/libvirt/requests/compute/list_pool_volumes.rb +21 -0
- data/lib/fog/libvirt/requests/compute/list_pools.rb +72 -0
- data/lib/fog/libvirt/requests/compute/list_volumes.rb +89 -0
- data/lib/fog/libvirt/requests/compute/mock_files/domain.xml +40 -0
- data/lib/fog/libvirt/requests/compute/pool_action.rb +19 -0
- data/lib/fog/libvirt/requests/compute/update_display.rb +31 -0
- data/lib/fog/libvirt/requests/compute/vm_action.rb +19 -0
- data/lib/fog/libvirt/requests/compute/volume_action.rb +18 -0
- data/lib/fog/linode.rb +1 -1
- data/lib/fog/linode/compute.rb +2 -3
- data/lib/fog/linode/dns.rb +2 -3
- data/lib/fog/linode/requests/compute/avail_datacenters.rb +20 -0
- data/lib/fog/linode/requests/compute/avail_distributions.rb +38 -1
- data/lib/fog/linode/requests/compute/avail_kernels.rb +36 -1
- data/lib/fog/linode/requests/compute/avail_linodeplans.rb +37 -2
- data/lib/fog/linode/requests/compute/avail_stackscripts.rb +44 -0
- data/lib/fog/linode/requests/compute/linode_boot.rb +13 -0
- data/lib/fog/linode/requests/compute/linode_config_create.rb +13 -0
- data/lib/fog/linode/requests/compute/linode_config_list.rb +51 -0
- data/lib/fog/linode/requests/compute/linode_create.rb +15 -2
- data/lib/fog/linode/requests/compute/linode_delete.rb +13 -0
- data/lib/fog/linode/requests/compute/linode_disk_create.rb +14 -0
- data/lib/fog/linode/requests/compute/linode_disk_createfromdistribution.rb +14 -0
- data/lib/fog/linode/requests/compute/linode_disk_createfromstackscript.rb +1 -1
- data/lib/fog/linode/requests/compute/linode_disk_delete.rb +14 -0
- data/lib/fog/linode/requests/compute/linode_disk_list.rb +40 -1
- data/lib/fog/linode/requests/compute/linode_ip_list.rb +38 -0
- data/lib/fog/linode/requests/compute/linode_list.rb +53 -0
- data/lib/fog/linode/requests/compute/linode_reboot.rb +14 -1
- data/lib/fog/linode/requests/compute/linode_shutdown.rb +13 -0
- data/lib/fog/linode/requests/compute/linode_update.rb +13 -0
- data/lib/fog/local.rb +1 -1
- data/lib/fog/local/storage.rb +1 -1
- data/lib/fog/ninefold.rb +1 -1
- data/lib/fog/ninefold/compute.rb +4 -8
- data/lib/fog/ninefold/storage.rb +3 -3
- data/lib/fog/openstack.rb +90 -38
- data/lib/fog/openstack/compute.rb +223 -64
- data/lib/fog/openstack/identity.rb +226 -0
- data/lib/fog/openstack/image.rb +203 -0
- data/lib/fog/openstack/models/compute/address.rb +71 -0
- data/lib/fog/openstack/models/compute/addresses.rb +33 -0
- data/lib/fog/openstack/models/compute/flavor.rb +24 -4
- data/lib/fog/openstack/models/compute/host.rb +28 -0
- data/lib/fog/openstack/models/compute/hosts.rb +32 -0
- data/lib/fog/openstack/models/compute/key_pair.rb +60 -0
- data/lib/fog/openstack/models/compute/key_pairs.rb +31 -0
- data/lib/fog/openstack/models/compute/metadata.rb +5 -5
- data/lib/fog/openstack/models/compute/{meta.rb → metadatum.rb} +1 -1
- data/lib/fog/openstack/models/compute/network.rb +13 -0
- data/lib/fog/openstack/models/compute/networks.rb +29 -0
- data/lib/fog/openstack/models/compute/security_group.rb +44 -0
- data/lib/fog/openstack/models/compute/security_groups.rb +27 -0
- data/lib/fog/openstack/models/compute/server.rb +82 -5
- data/lib/fog/openstack/models/compute/snapshot.rb +43 -0
- data/lib/fog/openstack/models/compute/snapshots.rb +26 -0
- data/lib/fog/openstack/models/compute/tenant.rb +24 -0
- data/lib/fog/openstack/models/compute/tenants.rb +20 -0
- data/lib/fog/openstack/models/compute/volume.rb +58 -0
- data/lib/fog/openstack/models/compute/volumes.rb +26 -0
- data/lib/fog/openstack/models/identity/role.rb +50 -0
- data/lib/fog/openstack/models/identity/roles.rb +21 -0
- data/lib/fog/openstack/models/identity/tenant.rb +62 -0
- data/lib/fog/openstack/models/identity/tenants.rb +27 -0
- data/lib/fog/openstack/models/identity/user.rb +64 -0
- data/lib/fog/openstack/models/identity/users.rb +30 -0
- data/lib/fog/openstack/models/image/image.rb +85 -0
- data/lib/fog/openstack/models/image/images.rb +60 -0
- data/lib/fog/openstack/models/volume/volume.rb +46 -0
- data/lib/fog/openstack/models/volume/volumes.rb +27 -0
- data/lib/fog/openstack/requests/compute/add_fixed_ip.rb +29 -0
- data/lib/fog/openstack/requests/compute/allocate_address.rb +42 -0
- data/lib/fog/openstack/requests/compute/associate_address.rb +27 -0
- data/lib/fog/openstack/requests/compute/attach_volume.rb +28 -0
- data/lib/fog/openstack/requests/compute/boot_from_snapshot.rb +41 -0
- data/lib/fog/openstack/requests/compute/{change_password_server.rb → change_server_password.rb} +2 -2
- data/lib/fog/openstack/requests/compute/{confirm_resized_server.rb → confirm_resize_server.rb} +2 -2
- data/lib/fog/openstack/requests/compute/create_flavor.rb +82 -0
- data/lib/fog/openstack/requests/compute/create_image.rb +1 -1
- data/lib/fog/openstack/requests/compute/create_key_pair.rb +49 -0
- data/lib/fog/openstack/requests/compute/create_security_group.rb +47 -0
- data/lib/fog/openstack/requests/compute/create_security_group_rule.rb +56 -0
- data/lib/fog/openstack/requests/compute/create_server.rb +16 -14
- data/lib/fog/openstack/requests/compute/create_volume.rb +54 -0
- data/lib/fog/openstack/requests/compute/create_volume_snapshot.rb +32 -0
- data/lib/fog/openstack/requests/compute/delete_flavor.rb +28 -0
- data/lib/fog/openstack/requests/compute/delete_key_pair.rb +31 -0
- data/lib/fog/openstack/requests/compute/{delete_meta.rb → delete_metadata.rb} +2 -2
- data/lib/fog/openstack/requests/compute/delete_security_group.rb +31 -0
- data/lib/fog/openstack/requests/compute/delete_security_group_rule.rb +31 -0
- data/lib/fog/openstack/requests/compute/delete_snapshot.rb +26 -0
- data/lib/fog/openstack/requests/compute/delete_volume.rb +26 -0
- data/lib/fog/openstack/requests/compute/detach_volume.rb +21 -0
- data/lib/fog/openstack/requests/compute/disassociate_address.rb +27 -0
- data/lib/fog/openstack/requests/compute/get_address.rb +41 -0
- data/lib/fog/openstack/requests/compute/get_console_output.rb +28 -0
- data/lib/fog/openstack/requests/compute/get_host_details.rb +74 -0
- data/lib/fog/openstack/requests/compute/{get_meta.rb → get_metadata.rb} +2 -2
- data/lib/fog/openstack/requests/compute/get_quota.rb +42 -0
- data/lib/fog/openstack/requests/compute/get_quota_defaults.rb +42 -0
- data/lib/fog/openstack/requests/compute/get_security_group.rb +49 -0
- data/lib/fog/openstack/requests/compute/get_server_volumes.rb +23 -0
- data/lib/fog/openstack/requests/compute/get_snapshot_details.rb +39 -0
- data/lib/fog/openstack/requests/compute/get_usage.rb +53 -0
- data/lib/fog/openstack/requests/compute/get_vnc_console.rb +40 -0
- data/lib/fog/openstack/requests/compute/get_volume_details.rb +42 -0
- data/lib/fog/openstack/requests/compute/list_address_pools.rb +23 -0
- data/lib/fog/openstack/requests/compute/list_all_addresses.rb +64 -0
- data/lib/fog/openstack/requests/compute/list_hosts.rb +32 -0
- data/lib/fog/openstack/requests/compute/list_key_pairs.rb +39 -0
- data/lib/fog/openstack/requests/compute/list_private_addresses.rb +1 -1
- data/lib/fog/openstack/requests/compute/list_public_addresses.rb +1 -1
- data/lib/fog/openstack/requests/compute/list_security_groups.rb +74 -0
- data/lib/fog/openstack/requests/compute/list_servers.rb +6 -2
- data/lib/fog/openstack/requests/compute/list_servers_detail.rb +6 -2
- data/lib/fog/openstack/requests/compute/list_snapshots.rb +32 -0
- data/lib/fog/openstack/requests/compute/list_tenants.rb +43 -0
- data/lib/fog/openstack/requests/compute/list_usages.rb +43 -0
- data/lib/fog/openstack/requests/compute/list_volumes.rb +53 -0
- data/lib/fog/openstack/requests/compute/live_migrate_server.rb +31 -0
- data/lib/fog/openstack/requests/compute/migrate_server.rb +24 -0
- data/lib/fog/openstack/requests/compute/pause_server.rb +24 -0
- data/lib/fog/openstack/requests/compute/release_address.rb +22 -0
- data/lib/fog/openstack/requests/compute/remove_fixed_ip.rb +29 -0
- data/lib/fog/openstack/requests/compute/rescue_server.rb +24 -0
- data/lib/fog/openstack/requests/compute/resume_server.rb +24 -0
- data/lib/fog/openstack/requests/compute/{revert_resized_server.rb → revert_resize_server.rb} +0 -0
- data/lib/fog/openstack/requests/compute/server_action.rb +2 -2
- data/lib/fog/openstack/requests/compute/server_actions.rb +27 -0
- data/lib/fog/openstack/requests/compute/server_diagnostics.rb +25 -0
- data/lib/fog/openstack/requests/compute/set_metadata.rb +1 -1
- data/lib/fog/openstack/requests/compute/set_tenant.rb +21 -0
- data/lib/fog/openstack/requests/compute/suspend_server.rb +24 -0
- data/lib/fog/openstack/requests/compute/unpause_server.rb +24 -0
- data/lib/fog/openstack/requests/compute/update_metadata.rb +1 -1
- data/lib/fog/openstack/requests/compute/update_quota.rb +45 -0
- data/lib/fog/openstack/requests/compute/update_server.rb +1 -1
- data/lib/fog/openstack/requests/identity/add_user_to_tenant.rb +29 -0
- data/lib/fog/openstack/requests/identity/check_token.rb +23 -0
- data/lib/fog/openstack/requests/identity/create_role.rb +37 -0
- data/lib/fog/openstack/requests/identity/create_tenant.rb +34 -0
- data/lib/fog/openstack/requests/identity/create_user.rb +47 -0
- data/lib/fog/openstack/requests/identity/create_user_role.rb +26 -0
- data/lib/fog/openstack/requests/identity/delete_role.rb +32 -0
- data/lib/fog/openstack/requests/identity/delete_tenant.rb +31 -0
- data/lib/fog/openstack/requests/identity/delete_user.rb +32 -0
- data/lib/fog/openstack/requests/identity/delete_user_role.rb +26 -0
- data/lib/fog/openstack/requests/identity/get_role.rb +28 -0
- data/lib/fog/openstack/requests/identity/get_tenant.rb +31 -0
- data/lib/fog/openstack/requests/identity/get_tenants_by_id.rb +23 -0
- data/lib/fog/openstack/requests/identity/get_tenants_by_name.rb +23 -0
- data/lib/fog/openstack/requests/identity/get_user_by_id.rb +34 -0
- data/lib/fog/openstack/requests/identity/get_user_by_name.rb +23 -0
- data/lib/fog/openstack/requests/identity/list_endpoints_for_token.rb +23 -0
- data/lib/fog/openstack/requests/identity/list_roles.rb +29 -0
- data/lib/fog/openstack/requests/identity/list_roles_for_user_on_tenant.rb +24 -0
- data/lib/fog/openstack/requests/identity/list_tenants.rb +44 -0
- data/lib/fog/openstack/requests/identity/list_user_global_roles.rb +22 -0
- data/lib/fog/openstack/requests/identity/list_users.rb +25 -0
- data/lib/fog/openstack/requests/identity/remove_user_from_tenant.rb +20 -0
- data/lib/fog/openstack/requests/identity/update_tenant.rb +30 -0
- data/lib/fog/openstack/requests/identity/update_user.rb +36 -0
- data/lib/fog/openstack/requests/identity/validate_token.rb +23 -0
- data/lib/fog/openstack/requests/image/add_member_to_image.rb +23 -0
- data/lib/fog/openstack/requests/image/create_image.rb +77 -0
- data/lib/fog/openstack/requests/image/delete_image.rb +27 -0
- data/lib/fog/openstack/requests/image/get_image.rb +45 -0
- data/lib/fog/openstack/requests/image/get_image_by_id.rb +32 -0
- data/lib/fog/openstack/requests/image/get_image_members.rb +29 -0
- data/lib/fog/openstack/requests/image/get_shared_images.rb +29 -0
- data/lib/fog/openstack/requests/image/list_public_images.rb +32 -0
- data/lib/fog/openstack/requests/image/list_public_images_detailed.rb +52 -0
- data/lib/fog/openstack/requests/image/remove_member_from_image.rb +23 -0
- data/lib/fog/openstack/requests/image/set_tenant.rb +21 -0
- data/lib/fog/openstack/requests/image/update_image.rb +65 -0
- data/lib/fog/openstack/requests/volume/create_volume.rb +54 -0
- data/lib/fog/openstack/requests/volume/create_volume_snapshot.rb +32 -0
- data/lib/fog/openstack/requests/volume/delete_snapshot.rb +26 -0
- data/lib/fog/openstack/requests/volume/delete_volume.rb +26 -0
- data/lib/fog/openstack/requests/volume/get_snapshot_details.rb +39 -0
- data/lib/fog/openstack/requests/volume/get_volume_details.rb +42 -0
- data/lib/fog/openstack/requests/volume/list_snapshots.rb +32 -0
- data/lib/fog/openstack/requests/volume/list_volumes.rb +55 -0
- data/lib/fog/openstack/requests/volume/set_tenant.rb +21 -0
- data/lib/fog/openstack/volume.rb +204 -0
- data/lib/fog/ovirt/compute.rb +15 -6
- data/lib/fog/ovirt/models/compute/server.rb +18 -0
- data/lib/fog/ovirt/models/compute/template.rb +8 -1
- data/lib/fog/ovirt/models/compute/volume.rb +35 -0
- data/lib/fog/ovirt/models/compute/volumes.rb +32 -0
- data/lib/fog/ovirt/requests/compute/add_volume.rb +23 -0
- data/lib/fog/ovirt/requests/compute/destroy_volume.rb +25 -0
- data/lib/fog/ovirt/requests/compute/list_template_volumes.rb +20 -0
- data/lib/fog/ovirt/requests/compute/list_vm_volumes.rb +20 -0
- data/lib/fog/ovirt/requests/compute/mock_files/vm.xml +0 -2
- data/lib/fog/ovirt/requests/compute/mock_files/volumes.xml +40 -0
- data/lib/fog/ovirt/requests/compute/storage_domains.rb +2 -2
- data/lib/fog/providers.rb +2 -1
- data/lib/fog/rackspace.rb +2 -2
- data/lib/fog/rackspace/cdn.rb +2 -3
- data/lib/fog/rackspace/compute.rb +111 -7
- data/lib/fog/rackspace/dns.rb +2 -3
- data/lib/fog/rackspace/load_balancers.rb +2 -3
- data/lib/fog/rackspace/models/compute/images.rb +3 -1
- data/lib/fog/rackspace/models/compute/server.rb +2 -2
- data/lib/fog/rackspace/models/load_balancers/load_balancer.rb +8 -1
- data/lib/fog/rackspace/models/storage/file.rb +2 -1
- data/lib/fog/rackspace/models/storage/files.rb +1 -1
- data/lib/fog/rackspace/requests/compute/create_image.rb +1 -1
- data/lib/fog/rackspace/requests/compute/create_server.rb +1 -1
- data/lib/fog/rackspace/requests/compute/get_server_details.rb +1 -1
- data/lib/fog/rackspace/requests/compute/server_action.rb +1 -1
- data/lib/fog/rackspace/requests/compute/update_server.rb +1 -1
- data/lib/fog/rackspace/requests/dns/add_records.rb +1 -1
- data/lib/fog/rackspace/requests/dns/create_domains.rb +1 -1
- data/lib/fog/rackspace/requests/dns/modify_domain.rb +1 -1
- data/lib/fog/rackspace/requests/dns/modify_record.rb +1 -1
- data/lib/fog/rackspace/requests/load_balancers/create_access_rule.rb +1 -1
- data/lib/fog/rackspace/requests/load_balancers/create_load_balancer.rb +5 -2
- data/lib/fog/rackspace/requests/load_balancers/create_node.rb +1 -1
- data/lib/fog/rackspace/requests/load_balancers/create_virtual_ip.rb +1 -1
- data/lib/fog/rackspace/requests/load_balancers/set_connection_logging.rb +1 -1
- data/lib/fog/rackspace/requests/load_balancers/set_connection_throttling.rb +1 -1
- data/lib/fog/rackspace/requests/load_balancers/set_error_page.rb +1 -1
- data/lib/fog/rackspace/requests/load_balancers/set_monitor.rb +1 -1
- data/lib/fog/rackspace/requests/load_balancers/set_session_persistence.rb +1 -1
- data/lib/fog/rackspace/requests/load_balancers/update_load_balancer.rb +1 -1
- data/lib/fog/rackspace/requests/load_balancers/update_node.rb +1 -1
- data/lib/fog/rackspace/storage.rb +37 -11
- data/lib/fog/storage.rb +3 -0
- data/lib/fog/storm_on_demand.rb +1 -1
- data/lib/fog/storm_on_demand/compute.rb +2 -3
- data/lib/fog/storm_on_demand/requests/compute/add_balancer_node.rb +1 -1
- data/lib/fog/storm_on_demand/requests/compute/clone_server.rb +1 -1
- data/lib/fog/storm_on_demand/requests/compute/create_server.rb +1 -1
- data/lib/fog/storm_on_demand/requests/compute/delete_server.rb +1 -1
- data/lib/fog/storm_on_demand/requests/compute/get_server.rb +1 -1
- data/lib/fog/storm_on_demand/requests/compute/get_stats.rb +1 -1
- data/lib/fog/storm_on_demand/requests/compute/list_balancers.rb +1 -1
- data/lib/fog/storm_on_demand/requests/compute/list_configs.rb +1 -1
- data/lib/fog/storm_on_demand/requests/compute/list_images.rb +1 -1
- data/lib/fog/storm_on_demand/requests/compute/list_private_ips.rb +1 -1
- data/lib/fog/storm_on_demand/requests/compute/list_servers.rb +1 -1
- data/lib/fog/storm_on_demand/requests/compute/list_templates.rb +1 -1
- data/lib/fog/storm_on_demand/requests/compute/reboot_server.rb +1 -1
- data/lib/fog/storm_on_demand/requests/compute/remove_balancer_node.rb +1 -1
- data/lib/fog/storm_on_demand/requests/compute/resize_server.rb +1 -1
- data/lib/fog/terremark.rb +1 -1
- data/lib/fog/terremark/shared.rb +1 -1
- data/lib/fog/vcloud.rb +1 -1
- data/lib/fog/vcloud/compute.rb +2 -2
- data/lib/fog/vcloud/requests/compute/configure_vm.rb +1 -139
- data/lib/fog/virtual_box.rb +1 -1
- data/lib/fog/virtual_box/compute.rb +1 -1
- data/lib/fog/virtual_box/models/compute/server.rb +2 -2
- data/lib/fog/vmfusion.rb +1 -1
- data/lib/fog/vmfusion/compute.rb +1 -1
- data/lib/fog/volume.rb +25 -0
- data/lib/fog/voxel.rb +1 -1
- data/lib/fog/voxel/compute.rb +1 -1
- data/lib/fog/vsphere/compute.rb +6 -3
- data/lib/fog/vsphere/models/compute/server.rb +31 -1
- data/lib/fog/vsphere/requests/compute/vm_clone.rb +16 -5
- data/lib/fog/vsphere/requests/compute/vm_config_vnc.rb +47 -0
- data/lib/fog/xenserver.rb +56 -0
- data/lib/fog/xenserver/compute.rb +122 -0
- data/lib/fog/xenserver/models/compute/guest_metrics.rb +28 -0
- data/lib/fog/xenserver/models/compute/host.rb +46 -0
- data/lib/fog/xenserver/models/compute/hosts.rb +29 -0
- data/lib/fog/xenserver/models/compute/network.rb +58 -0
- data/lib/fog/xenserver/models/compute/networks.rb +33 -0
- data/lib/fog/xenserver/models/compute/pbd.rb +33 -0
- data/lib/fog/xenserver/models/compute/pbds.rb +33 -0
- data/lib/fog/xenserver/models/compute/pif.rb +46 -0
- data/lib/fog/xenserver/models/compute/pifs.rb +33 -0
- data/lib/fog/xenserver/models/compute/pool.rb +40 -0
- data/lib/fog/xenserver/models/compute/pools.rb +33 -0
- data/lib/fog/xenserver/models/compute/server.rb +211 -0
- data/lib/fog/xenserver/models/compute/servers.rb +63 -0
- data/lib/fog/xenserver/models/compute/storage_repositories.rb +31 -0
- data/lib/fog/xenserver/models/compute/storage_repository.rb +47 -0
- data/lib/fog/xenserver/models/compute/vbd.rb +90 -0
- data/lib/fog/xenserver/models/compute/vbd_metrics.rb +27 -0
- data/lib/fog/xenserver/models/compute/vbds.rb +33 -0
- data/lib/fog/xenserver/models/compute/vdi.rb +102 -0
- data/lib/fog/xenserver/models/compute/vdis.rb +29 -0
- data/lib/fog/xenserver/models/compute/vif.rb +51 -0
- data/lib/fog/xenserver/models/compute/vifs.rb +29 -0
- data/lib/fog/xenserver/parser.rb +36 -0
- data/lib/fog/xenserver/parsers/get_hosts.rb +19 -0
- data/lib/fog/xenserver/parsers/get_networks.rb +19 -0
- data/lib/fog/xenserver/parsers/get_pools.rb +19 -0
- data/lib/fog/xenserver/parsers/get_records.rb +19 -0
- data/lib/fog/xenserver/parsers/get_storage_repositories.rb +19 -0
- data/lib/fog/xenserver/parsers/get_vbds.rb +19 -0
- data/lib/fog/xenserver/parsers/get_vifs.rb +19 -0
- data/lib/fog/xenserver/parsers/get_vms.rb +20 -0
- data/lib/fog/xenserver/requests/compute/clone_server.rb +31 -0
- data/lib/fog/xenserver/requests/compute/create_server.rb +126 -0
- data/lib/fog/xenserver/requests/compute/create_vbd.rb +40 -0
- data/lib/fog/xenserver/requests/compute/create_vdi.rb +33 -0
- data/lib/fog/xenserver/requests/compute/create_vif.rb +57 -0
- data/lib/fog/xenserver/requests/compute/destroy_server.rb +22 -0
- data/lib/fog/xenserver/requests/compute/destroy_vdi.rb +22 -0
- data/lib/fog/xenserver/requests/compute/destroy_vif.rb +22 -0
- data/lib/fog/xenserver/requests/compute/eject_vbd.rb +22 -0
- data/lib/fog/xenserver/requests/compute/get_record.rb +29 -0
- data/lib/fog/xenserver/requests/compute/get_records.rb +30 -0
- data/lib/fog/xenserver/requests/compute/insert_vbd.rb +22 -0
- data/lib/fog/xenserver/requests/compute/provision_server.rb +21 -0
- data/lib/fog/xenserver/requests/compute/reboot_server.rb +23 -0
- data/lib/fog/xenserver/requests/compute/scan_sr.rb +22 -0
- data/lib/fog/xenserver/requests/compute/set_affinity.rb +25 -0
- data/lib/fog/xenserver/requests/compute/set_attribute.rb +25 -0
- data/lib/fog/xenserver/requests/compute/shutdown_server.rb +23 -0
- data/lib/fog/xenserver/requests/compute/start_server.rb +23 -0
- data/lib/fog/xenserver/requests/compute/start_vm.rb +25 -0
- data/lib/fog/xenserver/requests/compute/unplug_vbd.rb +30 -0
- data/lib/fog/xenserver/utilities.rb +8 -0
- data/lib/fog/zerigo.rb +1 -1
- data/lib/fog/zerigo/dns.rb +1 -1
- data/spec/core/current_machine_spec.rb +14 -4
- data/spec/spec_helper.rb +1 -1
- data/tests/aws/credentials_tests.rb +57 -0
- data/tests/aws/models/compute/address_tests.rb +7 -0
- data/tests/aws/models/compute/dhcp_option_tests.rb +4 -0
- data/tests/aws/models/compute/dhcp_options_tests.rb +4 -0
- data/tests/aws/models/compute/internet_gateway_tests.rb +3 -0
- data/tests/aws/models/compute/internet_gateways_tests.rb +4 -0
- data/tests/aws/models/compute/network_interfaces_test.rb +12 -0
- data/tests/aws/models/compute/security_group_tests.rb +14 -0
- data/tests/aws/models/compute/volume_tests.rb +5 -1
- data/tests/aws/models/elb/model_tests.rb +36 -2
- data/tests/aws/models/iam/access_keys_tests.rb +53 -0
- data/tests/aws/models/iam/policies_tests.rb +56 -0
- data/tests/aws/models/iam/users_tests.rb +54 -0
- data/tests/aws/models/storage/url_tests.rb +22 -0
- data/tests/aws/requests/compute/dhcp_options_tests.rb +40 -0
- data/tests/aws/requests/compute/internet_gateway_tests.rb +44 -0
- data/tests/aws/requests/compute/network_interface_tests.rb +175 -0
- data/tests/aws/requests/compute/security_group_tests.rb +5 -4
- data/tests/aws/requests/compute/volume_tests.rb +34 -5
- data/tests/aws/requests/dns/dns_tests.rb +1 -1
- data/tests/aws/requests/dynamodb/item_tests.rb +20 -0
- data/tests/aws/requests/elb/helper.rb +1 -0
- data/tests/aws/requests/elb/load_balancer_tests.rb +2 -2
- data/tests/aws/requests/iam/role_tests.rb +168 -0
- data/tests/aws/requests/iam/user_policy_tests.rb +10 -0
- data/tests/aws/requests/iam/user_tests.rb +4 -0
- data/tests/aws/requests/sns/subscription_tests.rb +2 -2
- data/tests/aws/requests/storage/object_tests.rb +5 -0
- data/tests/brightbox/requests/compute/helper.rb +23 -3
- data/tests/cloudstack/requests/virtual_machine_tests.rb +10 -10
- data/tests/compute/helper.rb +37 -8
- data/tests/compute/models/flavors_tests.rb +1 -1
- data/tests/compute/models/server_tests.rb +1 -1
- data/tests/compute/models/servers_tests.rb +2 -1
- data/tests/dns/helper.rb +0 -3
- data/tests/glesys/requests/compute/helper.rb +7 -2
- data/tests/helper.rb +9 -1
- data/tests/helpers/mock_helper.rb +11 -4
- data/tests/helpers/succeeds_helper.rb +2 -3
- data/tests/hp/models/compute/address_tests.rb +18 -0
- data/tests/hp/models/compute/addresses_tests.rb +5 -0
- data/tests/hp/models/compute/key_pair_tests.rb +27 -0
- data/tests/hp/models/compute/key_pairs_tests.rb +5 -0
- data/tests/hp/models/compute/security_group_tests.rb +36 -0
- data/tests/hp/models/compute/security_groups_tests.rb +5 -0
- data/tests/hp/requests/cdn/container_tests.rb +56 -0
- data/tests/hp/requests/compute/address_tests.rb +72 -0
- data/tests/hp/requests/compute/flavor_tests.rb +45 -0
- data/tests/hp/requests/compute/image_tests.rb +79 -0
- data/tests/hp/requests/compute/key_pair_tests.rb +65 -0
- data/tests/hp/requests/compute/security_group_rule_tests.rb +54 -0
- data/tests/hp/requests/compute/security_group_tests.rb +64 -0
- data/tests/hp/requests/compute/server_address_tests.rb +45 -0
- data/tests/hp/requests/compute/server_tests.rb +127 -0
- data/tests/hp/requests/storage/container_tests.rb +78 -0
- data/tests/hp/requests/storage/object_tests.rb +81 -0
- data/tests/libvirt/compute_tests.rb +17 -0
- data/tests/libvirt/models/compute/interface_tests.rb +27 -0
- data/tests/libvirt/models/compute/interfaces_tests.rb +14 -0
- data/tests/libvirt/models/compute/network_tests.rb +27 -0
- data/tests/libvirt/models/compute/networks_tests.rb +13 -0
- data/tests/libvirt/models/compute/nic_tests.rb +31 -0
- data/tests/libvirt/models/compute/nics_tests.rb +10 -0
- data/tests/libvirt/models/compute/pool_tests.rb +27 -0
- data/tests/libvirt/models/compute/pools_tests.rb +13 -0
- data/tests/libvirt/models/compute/server_tests.rb +58 -0
- data/tests/libvirt/models/compute/servers_tests.rb +14 -0
- data/tests/libvirt/models/compute/volume_tests.rb +30 -0
- data/tests/libvirt/models/compute/volumes_tests.rb +14 -0
- data/tests/libvirt/requests/compute/create_domain_tests.rb +21 -0
- data/tests/libvirt/requests/compute/define_domain_tests.rb +11 -0
- data/tests/libvirt/requests/compute/update_display.rb +13 -0
- data/tests/openstack/models/identity/role_tests.rb +27 -0
- data/tests/openstack/models/identity/roles_tests.rb +19 -0
- data/tests/openstack/models/identity/tenant_tests.rb +24 -0
- data/tests/openstack/models/identity/tenants_tests.rb +26 -0
- data/tests/openstack/models/identity/user_tests.rb +46 -0
- data/tests/openstack/models/identity/users_tests.rb +33 -0
- data/tests/openstack/models/image/image_tests.rb +35 -0
- data/tests/openstack/models/image/images_tests.rb +14 -0
- data/tests/openstack/requests/compute/address_tests.rb +49 -0
- data/tests/openstack/requests/compute/flavor_tests.rb +18 -5
- data/tests/openstack/requests/compute/keypair_tests.rb +30 -0
- data/tests/openstack/requests/compute/quota_tests.rb +44 -0
- data/tests/openstack/requests/compute/security_group_tests.rb +51 -0
- data/tests/openstack/requests/compute/tenant_tests.rb +19 -0
- data/tests/openstack/requests/compute/volume_tests.rb +39 -0
- data/tests/openstack/requests/identity/role_tests.rb +41 -0
- data/tests/openstack/requests/identity/tenant_tests.rb +53 -0
- data/tests/openstack/requests/identity/user_tests.rb +29 -0
- data/tests/openstack/requests/image/image_tests.rb +98 -0
- data/tests/ovirt/requests/compute/list_storage_domains_tests.rb +1 -1
- data/tests/rackspace/helper.rb +1 -1
- data/tests/rackspace/models/load_balancers/access_list_tests.rb +1 -1
- data/tests/rackspace/models/load_balancers/access_lists_tests.rb +1 -1
- data/tests/rackspace/models/load_balancers/load_balancer_tests.rb +13 -1
- data/tests/rackspace/models/load_balancers/load_balancers_tests.rb +1 -1
- data/tests/rackspace/models/load_balancers/node_tests.rb +1 -1
- data/tests/rackspace/models/load_balancers/nodes_tests.rb +1 -1
- data/tests/rackspace/requests/load_balancers/helper.rb +10 -2
- data/tests/rackspace/requests/load_balancers/load_balancer_tests.rb +13 -4
- data/tests/rackspace/requests/load_balancers/node_tests.rb +5 -5
- data/tests/storage/helper.rb +3 -0
- data/tests/vsphere/requests/compute/vm_config_vnc_tests.rb +19 -0
- data/tests/xenserver/README +21 -0
- data/tests/xenserver/compute_tests.rb +52 -0
- data/tests/xenserver/helper.rb +36 -0
- data/tests/xenserver/models/compute/host_tests.rb +68 -0
- data/tests/xenserver/models/compute/hosts_tests.rb +22 -0
- data/tests/xenserver/models/compute/network_tests.rb +67 -0
- data/tests/xenserver/models/compute/networks_tests.rb +22 -0
- data/tests/xenserver/models/compute/pbd_tests.rb +44 -0
- data/tests/xenserver/models/compute/pbds_tests.rb +22 -0
- data/tests/xenserver/models/compute/pif_tests.rb +58 -0
- data/tests/xenserver/models/compute/pifs_tests.rb +22 -0
- data/tests/xenserver/models/compute/pool_tests.rb +50 -0
- data/tests/xenserver/models/compute/pools_tests.rb +30 -0
- data/tests/xenserver/models/compute/server_tests.rb +167 -0
- data/tests/xenserver/models/compute/servers_tests.rb +88 -0
- data/tests/xenserver/models/compute/storage_repositories_tests.rb +30 -0
- data/tests/xenserver/models/compute/storage_repository_tests.rb +63 -0
- data/tests/xenserver/models/compute/vbd_tests.rb +115 -0
- data/tests/xenserver/models/compute/vbds_tests.rb +22 -0
- data/tests/xenserver/models/compute/vif_tests.rb +53 -0
- data/tests/xenserver/models/compute/vifs_tests.rb +22 -0
- data/tests/xenserver/requests/compute/clone_server_tests.rb +32 -0
- data/tests/xenserver/requests/compute/create_server_tests.rb +129 -0
- data/tests/xenserver/requests/compute/create_vdi_tests.rb +80 -0
- data/tests/xenserver/requests/compute/create_vif_tests.rb +88 -0
- data/tests/xenserver/requests/compute/destroy_vdi_tests.rb +25 -0
- data/tests/xenserver/requests/compute/get_record_tests.rb +15 -0
- data/tests/xenserver/requests/compute/set_attribute_tests.rb +66 -0
- data/tests/xenserver/xenserver_tests.rb +34 -0
- metadata +938 -232
- data/lib/fog/bin/slicehost.rb +0 -36
- data/lib/fog/brightbox/requests/compute/resize_server.rb +0 -19
- data/lib/fog/ecloud/models/compute/ip.rb +0 -49
- data/lib/fog/ecloud/models/compute/ips.rb +0 -32
- data/lib/fog/ecloud/models/compute/vdc.rb +0 -81
- data/lib/fog/ecloud/models/compute/vdcs.rb +0 -40
- data/lib/fog/ecloud/requests/compute/add_backup_internet_service.rb +0 -109
- data/lib/fog/ecloud/requests/compute/add_internet_service.rb +0 -149
- data/lib/fog/ecloud/requests/compute/add_node.rb +0 -62
- data/lib/fog/ecloud/requests/compute/clone_vapp.rb +0 -40
- data/lib/fog/ecloud/requests/compute/configure_internet_service.rb +0 -112
- data/lib/fog/ecloud/requests/compute/configure_network.rb +0 -44
- data/lib/fog/ecloud/requests/compute/configure_network_ip.rb +0 -66
- data/lib/fog/ecloud/requests/compute/configure_node.rb +0 -56
- data/lib/fog/ecloud/requests/compute/configure_vapp.rb +0 -144
- data/lib/fog/ecloud/requests/compute/delete_internet_service.rb +0 -22
- data/lib/fog/ecloud/requests/compute/delete_node.rb +0 -22
- data/lib/fog/ecloud/requests/compute/delete_vapp.rb +0 -29
- data/lib/fog/ecloud/requests/compute/get_customization_options.rb +0 -22
- data/lib/fog/ecloud/requests/compute/get_network_extensions.rb +0 -33
- data/lib/fog/ecloud/requests/compute/get_network_ip.rb +0 -43
- data/lib/fog/ecloud/requests/compute/get_network_ips.rb +0 -35
- data/lib/fog/ecloud/requests/compute/get_vapp.rb +0 -99
- data/lib/fog/ecloud/requests/compute/get_vdc.rb +0 -84
- data/lib/fog/ecloud/requests/compute/get_versions.rb +0 -37
- data/lib/fog/ecloud/requests/compute/instantiate_vapp_template.rb +0 -142
- data/lib/fog/ecloud/requests/compute/login.rb +0 -48
- data/lib/fog/libvirt/models/compute/util.rb +0 -24
- data/lib/fog/openstack/requests/compute/update_meta.rb +0 -45
- data/lib/fog/slicehost.rb +0 -12
- data/lib/fog/slicehost/compute.rb +0 -104
- data/lib/fog/slicehost/dns.rb +0 -101
- data/lib/fog/slicehost/models/compute/flavor.rb +0 -45
- data/lib/fog/slicehost/models/compute/flavors.rb +0 -28
- data/lib/fog/slicehost/models/compute/image.rb +0 -17
- data/lib/fog/slicehost/models/compute/images.rb +0 -27
- data/lib/fog/slicehost/models/compute/server.rb +0 -113
- data/lib/fog/slicehost/models/dns/record.rb +0 -73
- data/lib/fog/slicehost/models/dns/records.rb +0 -36
- data/lib/fog/slicehost/models/dns/zone.rb +0 -69
- data/lib/fog/slicehost/models/dns/zones.rb +0 -28
- data/lib/fog/slicehost/parsers/compute/create_slice.rb +0 -31
- data/lib/fog/slicehost/parsers/compute/get_backups.rb +0 -32
- data/lib/fog/slicehost/parsers/compute/get_flavor.rb +0 -26
- data/lib/fog/slicehost/parsers/compute/get_flavors.rb +0 -30
- data/lib/fog/slicehost/parsers/compute/get_image.rb +0 -26
- data/lib/fog/slicehost/parsers/compute/get_images.rb +0 -30
- data/lib/fog/slicehost/parsers/compute/get_slice.rb +0 -31
- data/lib/fog/slicehost/parsers/compute/get_slices.rb +0 -35
- data/lib/fog/slicehost/parsers/dns/create_record.rb +0 -32
- data/lib/fog/slicehost/parsers/dns/create_zone.rb +0 -26
- data/lib/fog/slicehost/parsers/dns/get_record.rb +0 -38
- data/lib/fog/slicehost/parsers/dns/get_records.rb +0 -38
- data/lib/fog/slicehost/parsers/dns/get_zone.rb +0 -26
- data/lib/fog/slicehost/parsers/dns/get_zones.rb +0 -30
- data/lib/fog/slicehost/requests/compute/create_slice.rb +0 -41
- data/lib/fog/slicehost/requests/compute/delete_slice.rb +0 -23
- data/lib/fog/slicehost/requests/compute/get_backups.rb +0 -29
- data/lib/fog/slicehost/requests/compute/get_flavor.rb +0 -32
- data/lib/fog/slicehost/requests/compute/get_flavors.rb +0 -29
- data/lib/fog/slicehost/requests/compute/get_image.rb +0 -30
- data/lib/fog/slicehost/requests/compute/get_images.rb +0 -27
- data/lib/fog/slicehost/requests/compute/get_slice.rb +0 -38
- data/lib/fog/slicehost/requests/compute/get_slices.rb +0 -35
- data/lib/fog/slicehost/requests/compute/reboot_slice.rb +0 -36
- data/lib/fog/slicehost/requests/dns/create_record.rb +0 -52
- data/lib/fog/slicehost/requests/dns/create_zone.rb +0 -46
- data/lib/fog/slicehost/requests/dns/delete_record.rb +0 -23
- data/lib/fog/slicehost/requests/dns/delete_zone.rb +0 -23
- data/lib/fog/slicehost/requests/dns/get_record.rb +0 -32
- data/lib/fog/slicehost/requests/dns/get_records.rb +0 -32
- data/lib/fog/slicehost/requests/dns/get_zone.rb +0 -32
- data/lib/fog/slicehost/requests/dns/get_zones.rb +0 -30
- data/lib/fog/slicehost/requests/dns/update_record.rb +0 -43
- data/spec/ecloud/bin_spec.rb +0 -28
- data/spec/ecloud/models/backup_internet_service_spec.rb +0 -48
- data/spec/ecloud/models/backup_internet_services_spec.rb +0 -28
- data/spec/ecloud/models/internet_service_spec.rb +0 -104
- data/spec/ecloud/models/internet_services_spec.rb +0 -29
- data/spec/ecloud/models/ip_spec.rb +0 -33
- data/spec/ecloud/models/ips_spec.rb +0 -28
- data/spec/ecloud/models/network_spec.rb +0 -71
- data/spec/ecloud/models/networks_spec.rb +0 -27
- data/spec/ecloud/models/node_spec.rb +0 -38
- data/spec/ecloud/models/nodes_spec.rb +0 -28
- data/spec/ecloud/models/public_ip_spec.rb +0 -36
- data/spec/ecloud/models/public_ips_spec.rb +0 -27
- data/spec/ecloud/models/server_spec.rb +0 -62
- data/spec/ecloud/models/vdc_spec.rb +0 -63
- data/spec/ecloud/models/vdcs_spec.rb +0 -28
- data/spec/ecloud/requests/add_backup_internet_service_spec.rb +0 -60
- data/spec/ecloud/requests/add_internet_service_spec.rb +0 -65
- data/spec/ecloud/requests/add_node_spec.rb +0 -56
- data/spec/ecloud/requests/configure_internet_service_spec.rb +0 -61
- data/spec/ecloud/requests/configure_network_ip_spec.rb +0 -55
- data/spec/ecloud/requests/configure_node_spec.rb +0 -52
- data/spec/ecloud/requests/configure_vapp_spec.rb +0 -71
- data/spec/ecloud/requests/delete_internet_service_spec.rb +0 -34
- data/spec/ecloud/requests/delete_node_spec.rb +0 -30
- data/spec/ecloud/requests/delete_vapp_spec.rb +0 -92
- data/spec/ecloud/requests/get_catalog_item_spec.rb +0 -62
- data/spec/ecloud/requests/get_catalog_spec.rb +0 -44
- data/spec/ecloud/requests/get_customization_options_spec.rb +0 -39
- data/spec/ecloud/requests/get_internet_services_spec.rb +0 -150
- data/spec/ecloud/requests/get_network_ip_spec.rb +0 -40
- data/spec/ecloud/requests/get_network_ips_spec.rb +0 -58
- data/spec/ecloud/requests/get_network_spec.rb +0 -49
- data/spec/ecloud/requests/get_node_spec.rb +0 -41
- data/spec/ecloud/requests/get_nodes_spec.rb +0 -58
- data/spec/ecloud/requests/get_organization_spec.rb +0 -52
- data/spec/ecloud/requests/get_public_ip_spec.rb +0 -38
- data/spec/ecloud/requests/get_public_ips_spec.rb +0 -52
- data/spec/ecloud/requests/get_vapp_spec.rb +0 -125
- data/spec/ecloud/requests/get_vdc_spec.rb +0 -112
- data/spec/ecloud/requests/get_versions_spec.rb +0 -57
- data/spec/ecloud/requests/instantiate_vapp_template_spec.rb +0 -95
- data/spec/ecloud/requests/login_spec.rb +0 -10
- data/spec/ecloud/requests/power_off_spec.rb +0 -34
- data/spec/ecloud/requests/power_on_spec.rb +0 -34
- data/spec/ecloud/spec_helper.rb +0 -387
- data/spec/ecloud/vcloud_spec.rb +0 -18
- data/tests/slicehost/requests/compute/backup_tests.rb +0 -18
- data/tests/slicehost/requests/compute/flavor_tests.rb +0 -33
- data/tests/slicehost/requests/compute/image_tests.rb +0 -31
- data/tests/slicehost/requests/compute/slice_tests.rb +0 -75
- data/tests/slicehost/requests/dns/dns_tests.rb +0 -314
data/lib/fog/aws/cloud_watch.rb
CHANGED
@@ -1,12 +1,12 @@
|
|
1
|
-
require
|
1
|
+
require 'fog/aws'
|
2
2
|
|
3
3
|
module Fog
|
4
4
|
module AWS
|
5
5
|
class CloudWatch < Fog::Service
|
6
|
-
|
6
|
+
extend Fog::AWS::CredentialFetcher::ServiceMethods
|
7
7
|
|
8
8
|
requires :aws_access_key_id, :aws_secret_access_key
|
9
|
-
recognizes :region, :host, :path, :port, :scheme, :persistent
|
9
|
+
recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at
|
10
10
|
|
11
11
|
request_path 'fog/aws/requests/cloud_watch'
|
12
12
|
|
@@ -42,7 +42,7 @@ module Fog
|
|
42
42
|
end
|
43
43
|
|
44
44
|
class Real
|
45
|
-
|
45
|
+
include Fog::AWS::CredentialFetcher::ConnectionMethods
|
46
46
|
# Initialize connection to Cloudwatch
|
47
47
|
#
|
48
48
|
# ==== Notes
|
@@ -62,9 +62,8 @@ module Fog
|
|
62
62
|
# ==== Returns
|
63
63
|
# * CloudWatch object with connection to AWS.
|
64
64
|
def initialize(options={})
|
65
|
-
@
|
66
|
-
|
67
|
-
@hmac = Fog::HMAC.new('sha256', @aws_secret_access_key)
|
65
|
+
@use_iam_profile = options[:use_iam_profile]
|
66
|
+
setup_credentials(options)
|
68
67
|
|
69
68
|
@connection_options = options[:connection_options] || {}
|
70
69
|
options[:region] ||= 'us-east-1'
|
@@ -82,7 +81,17 @@ module Fog
|
|
82
81
|
|
83
82
|
private
|
84
83
|
|
84
|
+
def setup_credentials(options)
|
85
|
+
@aws_access_key_id = options[:aws_access_key_id]
|
86
|
+
@aws_secret_access_key = options[:aws_secret_access_key]
|
87
|
+
@aws_session_token = options[:aws_session_token]
|
88
|
+
@aws_credentials_expire_at = options[:aws_credentials_expire_at]
|
89
|
+
|
90
|
+
@hmac = Fog::HMAC.new('sha256', @aws_secret_access_key)
|
91
|
+
end
|
92
|
+
|
85
93
|
def request(params)
|
94
|
+
refresh_credentials_if_expired
|
86
95
|
idempotent = params.delete(:idempotent)
|
87
96
|
parser = params.delete(:parser)
|
88
97
|
|
@@ -90,6 +99,7 @@ module Fog
|
|
90
99
|
params,
|
91
100
|
{
|
92
101
|
:aws_access_key_id => @aws_access_key_id,
|
102
|
+
:aws_session_token => @aws_session_token,
|
93
103
|
:hmac => @hmac,
|
94
104
|
:host => @host,
|
95
105
|
:path => @path,
|
@@ -98,7 +108,7 @@ module Fog
|
|
98
108
|
}
|
99
109
|
)
|
100
110
|
|
101
|
-
|
111
|
+
@connection.request({
|
102
112
|
:body => body,
|
103
113
|
:expects => 200,
|
104
114
|
:headers => { 'Content-Type' => 'application/x-www-form-urlencoded' },
|
data/lib/fog/aws/compute.rb
CHANGED
@@ -1,22 +1,31 @@
|
|
1
|
-
require
|
1
|
+
require 'fog/aws'
|
2
2
|
require 'fog/compute'
|
3
3
|
|
4
4
|
module Fog
|
5
5
|
module Compute
|
6
6
|
class AWS < Fog::Service
|
7
|
+
extend Fog::AWS::CredentialFetcher::ServiceMethods
|
7
8
|
|
8
9
|
requires :aws_access_key_id, :aws_secret_access_key
|
9
|
-
recognizes :endpoint, :region, :host, :path, :port, :scheme, :persistent, :aws_session_token
|
10
|
+
recognizes :endpoint, :region, :host, :path, :port, :scheme, :persistent, :aws_session_token, :use_iam_profile, :aws_credentials_expire_at
|
11
|
+
|
12
|
+
secrets :aws_secret_access_key, :hmac, :aws_session_token
|
10
13
|
|
11
14
|
model_path 'fog/aws/models/compute'
|
12
15
|
model :address
|
13
16
|
collection :addresses
|
17
|
+
model :dhcp_options
|
18
|
+
collection :dhcp_options
|
14
19
|
model :flavor
|
15
20
|
collection :flavors
|
16
21
|
model :image
|
17
22
|
collection :images
|
23
|
+
model :internet_gateway
|
24
|
+
collection :internet_gateways
|
18
25
|
model :key_pair
|
19
26
|
collection :key_pairs
|
27
|
+
model :network_interface
|
28
|
+
collection :network_interfaces
|
20
29
|
model :security_group
|
21
30
|
collection :security_groups
|
22
31
|
model :server
|
@@ -37,11 +46,17 @@ module Fog
|
|
37
46
|
request_path 'fog/aws/requests/compute'
|
38
47
|
request :allocate_address
|
39
48
|
request :associate_address
|
49
|
+
request :associate_dhcp_options
|
50
|
+
request :attach_network_interface
|
51
|
+
request :attach_internet_gateway
|
40
52
|
request :attach_volume
|
41
53
|
request :authorize_security_group_ingress
|
42
54
|
request :cancel_spot_instance_requests
|
55
|
+
request :create_dhcp_options
|
56
|
+
request :create_internet_gateway
|
43
57
|
request :create_image
|
44
58
|
request :create_key_pair
|
59
|
+
request :create_network_interface
|
45
60
|
request :create_placement_group
|
46
61
|
request :create_security_group
|
47
62
|
request :create_snapshot
|
@@ -50,7 +65,10 @@ module Fog
|
|
50
65
|
request :create_tags
|
51
66
|
request :create_volume
|
52
67
|
request :create_vpc
|
68
|
+
request :delete_dhcp_options
|
69
|
+
request :delete_internet_gateway
|
53
70
|
request :delete_key_pair
|
71
|
+
request :delete_network_interface
|
54
72
|
request :delete_security_group
|
55
73
|
request :delete_placement_group
|
56
74
|
request :delete_snapshot
|
@@ -62,11 +80,15 @@ module Fog
|
|
62
80
|
request :deregister_image
|
63
81
|
request :describe_addresses
|
64
82
|
request :describe_availability_zones
|
83
|
+
request :describe_dhcp_options
|
65
84
|
request :describe_images
|
66
85
|
request :describe_instances
|
86
|
+
request :describe_internet_gateways
|
67
87
|
request :describe_reserved_instances
|
68
88
|
request :describe_instance_status
|
69
89
|
request :describe_key_pairs
|
90
|
+
request :describe_network_interface_attribute
|
91
|
+
request :describe_network_interfaces
|
70
92
|
request :describe_placement_groups
|
71
93
|
request :describe_regions
|
72
94
|
request :describe_reserved_instances_offerings
|
@@ -80,6 +102,8 @@ module Fog
|
|
80
102
|
request :describe_volumes
|
81
103
|
request :describe_volume_status
|
82
104
|
request :describe_vpcs
|
105
|
+
request :detach_network_interface
|
106
|
+
request :detach_internet_gateway
|
83
107
|
request :detach_volume
|
84
108
|
request :disassociate_address
|
85
109
|
request :get_console_output
|
@@ -87,12 +111,14 @@ module Fog
|
|
87
111
|
request :import_key_pair
|
88
112
|
request :modify_image_attribute
|
89
113
|
request :modify_instance_attribute
|
114
|
+
request :modify_network_interface_attribute
|
90
115
|
request :modify_snapshot_attribute
|
91
116
|
request :purchase_reserved_instances_offering
|
92
117
|
request :reboot_instances
|
93
118
|
request :release_address
|
94
119
|
request :register_image
|
95
120
|
request :request_spot_instances
|
121
|
+
request :reset_network_interface_attribute
|
96
122
|
request :revoke_security_group_ingress
|
97
123
|
request :run_instances
|
98
124
|
request :terminate_instances
|
@@ -164,8 +190,10 @@ module Fog
|
|
164
190
|
'ownerId' => owner_id
|
165
191
|
}
|
166
192
|
},
|
193
|
+
:network_interfaces => {},
|
167
194
|
:snapshots => {},
|
168
195
|
:volumes => {},
|
196
|
+
:internet_gateways => {},
|
169
197
|
:tags => {},
|
170
198
|
:tag_sets => Hash.new do |tag_set_hash, resource_id|
|
171
199
|
tag_set_hash[resource_id] = {}
|
@@ -180,8 +208,8 @@ module Fog
|
|
180
208
|
end
|
181
209
|
|
182
210
|
def initialize(options={})
|
183
|
-
@
|
184
|
-
|
211
|
+
@use_iam_profile = options[:use_iam_profile]
|
212
|
+
setup_credentials(options)
|
185
213
|
@region = options[:region] || 'us-east-1'
|
186
214
|
|
187
215
|
unless ['ap-northeast-1', 'ap-southeast-1', 'eu-west-1', 'us-east-1', 'us-west-1', 'us-west-2', 'sa-east-1'].include?(@region)
|
@@ -243,10 +271,14 @@ module Fog
|
|
243
271
|
|
244
272
|
resources
|
245
273
|
end
|
274
|
+
|
275
|
+
def setup_credentials(options)
|
276
|
+
@aws_access_key_id = options[:aws_access_key_id]
|
277
|
+
end
|
246
278
|
end
|
247
279
|
|
248
280
|
class Real
|
249
|
-
|
281
|
+
include Fog::AWS::CredentialFetcher::ConnectionMethods
|
250
282
|
# Initialize connection to EC2
|
251
283
|
#
|
252
284
|
# ==== Notes
|
@@ -267,14 +299,15 @@ module Fog
|
|
267
299
|
#
|
268
300
|
# ==== Returns
|
269
301
|
# * EC2 object with connection to aws.
|
302
|
+
|
303
|
+
attr_accessor :region
|
304
|
+
|
270
305
|
def initialize(options={})
|
271
306
|
require 'fog/core/parser'
|
272
307
|
|
273
|
-
@
|
274
|
-
|
275
|
-
@aws_session_token = options[:aws_session_token]
|
308
|
+
@use_iam_profile = options[:use_iam_profile]
|
309
|
+
setup_credentials(options)
|
276
310
|
@connection_options = options[:connection_options] || {}
|
277
|
-
@hmac = Fog::HMAC.new('sha256', @aws_secret_access_key)
|
278
311
|
@region = options[:region] ||= 'us-east-1'
|
279
312
|
|
280
313
|
if @endpoint = options[:endpoint]
|
@@ -298,8 +331,17 @@ module Fog
|
|
298
331
|
end
|
299
332
|
|
300
333
|
private
|
334
|
+
def setup_credentials(options)
|
335
|
+
@aws_access_key_id = options[:aws_access_key_id]
|
336
|
+
@aws_secret_access_key = options[:aws_secret_access_key]
|
337
|
+
@aws_session_token = options[:aws_session_token]
|
338
|
+
@aws_credentials_expire_at = options[:aws_credentials_expire_at]
|
339
|
+
|
340
|
+
@hmac = Fog::HMAC.new('sha256', @aws_secret_access_key)
|
341
|
+
end
|
301
342
|
|
302
343
|
def request(params)
|
344
|
+
refresh_credentials_if_expired
|
303
345
|
idempotent = params.delete(:idempotent)
|
304
346
|
parser = params.delete(:parser)
|
305
347
|
|
@@ -312,7 +354,7 @@ module Fog
|
|
312
354
|
:host => @host,
|
313
355
|
:path => @path,
|
314
356
|
:port => @port,
|
315
|
-
:version => '2012-
|
357
|
+
:version => '2012-06-01'
|
316
358
|
}
|
317
359
|
)
|
318
360
|
|
@@ -0,0 +1,64 @@
|
|
1
|
+
require 'fog/core/json'
|
2
|
+
module Fog
|
3
|
+
module AWS
|
4
|
+
module CredentialFetcher
|
5
|
+
INSTANCE_METADATA_HOST = "http://169.254.169.254"
|
6
|
+
INSTANCE_METADATA_PATH = "/latest/meta-data/iam/security-credentials/"
|
7
|
+
module ServiceMethods
|
8
|
+
def fetch_credentials(options)
|
9
|
+
if options[:use_iam_profile]
|
10
|
+
begin
|
11
|
+
connection = options[:connection] || Excon.new(INSTANCE_METADATA_HOST)
|
12
|
+
role_name = connection.get(:path => INSTANCE_METADATA_PATH, :expects => 200).body
|
13
|
+
role_data = connection.get(:path => INSTANCE_METADATA_PATH+role_name, :expects => 200).body
|
14
|
+
|
15
|
+
session = Fog::JSON.decode(role_data)
|
16
|
+
credentials = {}
|
17
|
+
credentials[:aws_access_key_id] = session['AccessKeyId']
|
18
|
+
credentials[:aws_secret_access_key] = session['SecretAccessKey']
|
19
|
+
credentials[:aws_session_token] = session['Token']
|
20
|
+
credentials[:aws_credentials_expire_at] = Time.xmlschema session['Expiration']
|
21
|
+
#these indicate the metadata service is unavailable or has no profile setup
|
22
|
+
credentials
|
23
|
+
rescue Excon::Errors::Error => e
|
24
|
+
Fog::Logger.warning("Unable to fetch credentuals: #{e.message}")
|
25
|
+
super
|
26
|
+
end
|
27
|
+
else
|
28
|
+
super
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
module ConnectionMethods
|
34
|
+
|
35
|
+
def refresh_credentials_if_expired
|
36
|
+
refresh_credentials if credentials_expired?
|
37
|
+
end
|
38
|
+
|
39
|
+
private
|
40
|
+
|
41
|
+
def credentials_expired?
|
42
|
+
@use_iam_profile &&
|
43
|
+
(!@aws_credentials_expire_at ||
|
44
|
+
(@aws_credentials_expire_at && Fog::Time.now > @aws_credentials_expire_at - 15)) #new credentials become available from around 5 minutes before expiration time
|
45
|
+
end
|
46
|
+
|
47
|
+
def refresh_credentials
|
48
|
+
if @use_iam_profile
|
49
|
+
new_credentials = service.fetch_credentials :use_iam_profile => @use_iam_profile
|
50
|
+
if new_credentials.any?
|
51
|
+
setup_credentials new_credentials
|
52
|
+
return true
|
53
|
+
else
|
54
|
+
false
|
55
|
+
end
|
56
|
+
else
|
57
|
+
false
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
data/lib/fog/aws/dns.rb
CHANGED
@@ -1,12 +1,13 @@
|
|
1
|
-
require
|
1
|
+
require 'fog/aws'
|
2
2
|
require 'fog/dns'
|
3
3
|
|
4
4
|
module Fog
|
5
5
|
module DNS
|
6
6
|
class AWS < Fog::Service
|
7
|
+
extend Fog::AWS::CredentialFetcher::ServiceMethods
|
7
8
|
|
8
9
|
requires :aws_access_key_id, :aws_secret_access_key
|
9
|
-
recognizes :host, :path, :port, :scheme, :version, :persistent
|
10
|
+
recognizes :host, :path, :port, :scheme, :version, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at
|
10
11
|
|
11
12
|
model_path 'fog/aws/models/dns'
|
12
13
|
model :record
|
@@ -29,7 +30,11 @@ module Fog
|
|
29
30
|
@data ||= Hash.new do |hash, region|
|
30
31
|
hash[region] = Hash.new do |region_hash, key|
|
31
32
|
region_hash[key] = {
|
32
|
-
:buckets => {}
|
33
|
+
:buckets => {},
|
34
|
+
:limits => {
|
35
|
+
:duplicate_domains => 5
|
36
|
+
},
|
37
|
+
:zones => {}
|
33
38
|
}
|
34
39
|
end
|
35
40
|
end
|
@@ -41,7 +46,8 @@ module Fog
|
|
41
46
|
|
42
47
|
def initialize(options={})
|
43
48
|
require 'mime/types'
|
44
|
-
@
|
49
|
+
@use_iam_profile = options[:use_iam_profile]
|
50
|
+
setup_credentials(options)
|
45
51
|
@region = options[:region]
|
46
52
|
end
|
47
53
|
|
@@ -56,10 +62,14 @@ module Fog
|
|
56
62
|
def signature(params)
|
57
63
|
"foo"
|
58
64
|
end
|
65
|
+
|
66
|
+
def setup_credentials(options)
|
67
|
+
@aws_access_key_id = options[:aws_access_key_id]
|
68
|
+
end
|
59
69
|
end
|
60
70
|
|
61
71
|
class Real
|
62
|
-
|
72
|
+
include Fog::AWS::CredentialFetcher::ConnectionMethods
|
63
73
|
# Initialize connection to Route 53 DNS service
|
64
74
|
#
|
65
75
|
# ==== Notes
|
@@ -80,16 +90,15 @@ module Fog
|
|
80
90
|
def initialize(options={})
|
81
91
|
require 'fog/core/parser'
|
82
92
|
|
83
|
-
@
|
84
|
-
|
93
|
+
@use_iam_profile = options[:use_iam_profile]
|
94
|
+
setup_credentials(options)
|
85
95
|
@connection_options = options[:connection_options] || {}
|
86
|
-
@hmac = Fog::HMAC.new('sha1', @aws_secret_access_key)
|
87
96
|
@host = options[:host] || 'route53.amazonaws.com'
|
88
97
|
@path = options[:path] || '/'
|
89
|
-
@persistent = options
|
98
|
+
@persistent = options.fetch(:persistent, true)
|
90
99
|
@port = options[:port] || 443
|
91
100
|
@scheme = options[:scheme] || 'https'
|
92
|
-
@version = options[:version] || '
|
101
|
+
@version = options[:version] || '2012-02-29'
|
93
102
|
|
94
103
|
@connection = Fog::Connection.new("#{@scheme}://#{@host}:#{@port}#{@path}", @persistent, @connection_options)
|
95
104
|
end
|
@@ -100,9 +109,20 @@ module Fog
|
|
100
109
|
|
101
110
|
private
|
102
111
|
|
112
|
+
def setup_credentials(options)
|
113
|
+
@aws_access_key_id = options[:aws_access_key_id]
|
114
|
+
@aws_secret_access_key = options[:aws_secret_access_key]
|
115
|
+
@aws_session_token = options[:aws_session_token]
|
116
|
+
@aws_credentials_expire_at = options[:aws_credentials_expire_at]
|
117
|
+
|
118
|
+
@hmac = Fog::HMAC.new('sha1', @aws_secret_access_key)
|
119
|
+
end
|
120
|
+
|
103
121
|
def request(params, &block)
|
122
|
+
refresh_credentials_if_expired
|
104
123
|
params[:headers] ||= {}
|
105
124
|
params[:headers]['Date'] = Fog::Time.now.to_date_header
|
125
|
+
params[:headers]['x-amz-security-token'] = @aws_session_token if @aws_session_token
|
106
126
|
params[:headers]['X-Amzn-Authorization'] = "AWS3-HTTPS AWSAccessKeyId=#{@aws_access_key_id},Algorithm=HmacSHA1,Signature=#{signature(params)}"
|
107
127
|
params[:path] = "/#{@version}/#{params[:path]}"
|
108
128
|
@connection.request(params, &block)
|
@@ -111,7 +131,7 @@ module Fog
|
|
111
131
|
def signature(params)
|
112
132
|
string_to_sign = params[:headers]['Date']
|
113
133
|
signed_string = @hmac.sign(string_to_sign)
|
114
|
-
|
134
|
+
Base64.encode64(signed_string).chomp!
|
115
135
|
end
|
116
136
|
end
|
117
137
|
end
|
data/lib/fog/aws/dynamodb.rb
CHANGED
@@ -1,14 +1,16 @@
|
|
1
|
-
require
|
1
|
+
require 'fog/aws'
|
2
2
|
|
3
3
|
module Fog
|
4
4
|
module AWS
|
5
5
|
class DynamoDB < Fog::Service
|
6
|
+
extend Fog::AWS::CredentialFetcher::ServiceMethods
|
6
7
|
|
7
8
|
requires :aws_access_key_id, :aws_secret_access_key
|
8
|
-
recognizes :aws_session_token, :host, :path, :port, :scheme, :persistent, :region
|
9
|
+
recognizes :aws_session_token, :host, :path, :port, :scheme, :persistent, :region, :use_iam_profile, :aws_credentials_expire_at
|
9
10
|
|
10
11
|
request_path 'fog/aws/requests/dynamodb'
|
11
12
|
request :batch_get_item
|
13
|
+
request :batch_write_item
|
12
14
|
request :create_table
|
13
15
|
request :delete_item
|
14
16
|
request :delete_table
|
@@ -36,7 +38,8 @@ module Fog
|
|
36
38
|
end
|
37
39
|
|
38
40
|
def initialize(options={})
|
39
|
-
@
|
41
|
+
@use_iam_profile = options[:use_iam_profile]
|
42
|
+
setup_credentials(options)
|
40
43
|
end
|
41
44
|
|
42
45
|
def data
|
@@ -47,10 +50,13 @@ module Fog
|
|
47
50
|
self.class.data.delete(@aws_access_key_id)
|
48
51
|
end
|
49
52
|
|
53
|
+
def setup_credientials(options)
|
54
|
+
@aws_access_key_id = options[:aws_access_key_id]
|
55
|
+
end
|
50
56
|
end
|
51
57
|
|
52
58
|
class Real
|
53
|
-
|
59
|
+
include Fog::AWS::CredentialFetcher::ConnectionMethods
|
54
60
|
# Initialize connection to DynamoDB
|
55
61
|
#
|
56
62
|
# ==== Notes
|
@@ -69,12 +75,30 @@ module Fog
|
|
69
75
|
# ==== Returns
|
70
76
|
# * DynamoDB object with connection to aws
|
71
77
|
def initialize(options={})
|
72
|
-
|
78
|
+
@use_iam_profile = options[:use_iam_profile]
|
79
|
+
#TODO check dynamodb stuff
|
80
|
+
|
81
|
+
setup_credentials(options)
|
82
|
+
|
83
|
+
@connection_options = options[:connection_options] || {}
|
84
|
+
|
85
|
+
options[:region] ||= 'us-east-1'
|
86
|
+
@host = options[:host] || "dynamodb.#{options[:region]}.amazonaws.com"
|
87
|
+
@path = options[:path] || '/'
|
88
|
+
@persistent = options[:persistent] || false
|
89
|
+
@port = options[:port] || '80' #443
|
90
|
+
@scheme = options[:scheme] || 'http' #'https'
|
91
|
+
@connection = Fog::Connection.new("#{@scheme}://#{@host}:#{@port}#{@path}", @persistent, @connection_options)
|
92
|
+
end
|
73
93
|
|
94
|
+
private
|
95
|
+
|
96
|
+
def setup_credentials(options)
|
74
97
|
if options[:aws_session_token]
|
75
98
|
@aws_access_key_id = options[:aws_access_key_id]
|
76
99
|
@aws_secret_access_key = options[:aws_secret_access_key]
|
77
100
|
@aws_session_token = options[:aws_session_token]
|
101
|
+
@aws_credentials_expire_at = options[:aws_credentials_expire_at]
|
78
102
|
else
|
79
103
|
sts = Fog::AWS::STS.new(
|
80
104
|
:aws_access_key_id => options[:aws_access_key_id],
|
@@ -86,33 +110,23 @@ module Fog
|
|
86
110
|
@aws_secret_access_key = session_data['SecretAccessKey']
|
87
111
|
@aws_session_token = session_data['SessionToken']
|
88
112
|
end
|
89
|
-
@connection_options = options[:connection_options] || {}
|
90
113
|
@hmac = Fog::HMAC.new('sha256', @aws_secret_access_key)
|
91
|
-
|
92
|
-
options[:region] ||= 'us-east-1'
|
93
|
-
@host = options[:host] || "dynamodb.#{options[:region]}.amazonaws.com"
|
94
|
-
@path = options[:path] || '/'
|
95
|
-
@persistent = options[:persistent] || false
|
96
|
-
@port = options[:port] || '80' #443
|
97
|
-
@scheme = options[:scheme] || 'http' #'https'
|
98
|
-
@connection = Fog::Connection.new("#{@scheme}://#{@host}:#{@port}#{@path}", @persistent, @connection_options)
|
99
114
|
end
|
100
115
|
|
101
|
-
private
|
102
|
-
|
103
116
|
def reload
|
104
117
|
@connection.reset
|
105
118
|
end
|
106
119
|
|
107
120
|
def request(params)
|
121
|
+
refresh_credentials_if_expired
|
108
122
|
idempotent = params.delete(:idempotent)
|
109
123
|
|
110
|
-
now = Fog::Time.now
|
111
124
|
headers = {
|
112
125
|
'Content-Type' => 'application/x-amz-json-1.0',
|
113
126
|
'x-amz-date' => Fog::Time.now.to_date_header,
|
114
127
|
'x-amz-security-token' => @aws_session_token
|
115
128
|
}.merge(params[:headers])
|
129
|
+
|
116
130
|
headers['x-amzn-authorization'] = signed_authorization_header(params, headers)
|
117
131
|
|
118
132
|
response = @connection.request({
|
@@ -125,7 +139,7 @@ module Fog
|
|
125
139
|
})
|
126
140
|
|
127
141
|
unless response.body.empty?
|
128
|
-
response.body =
|
142
|
+
response.body = Fog::JSON.decode(response.body)
|
129
143
|
end
|
130
144
|
|
131
145
|
response
|