fog 0.9.0 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Rakefile +7 -4
- data/bin/fog +4 -1
- data/changelog.txt +464 -0
- data/docs/index.markdown +2 -2
- data/fog.gemspec +11 -11
- data/lib/fog.rb +1 -1
- data/lib/fog/aws/auto_scaling.rb +221 -0
- data/lib/fog/aws/cloud_formation.rb +1 -1
- data/lib/fog/aws/cloud_watch.rb +110 -0
- data/lib/fog/aws/elb.rb +58 -26
- data/lib/fog/aws/iam.rb +65 -13
- data/lib/fog/aws/models/auto_scaling/activities.rb +30 -0
- data/lib/fog/aws/models/auto_scaling/activity.rb +29 -0
- data/lib/fog/aws/models/auto_scaling/configuration.rb +63 -0
- data/lib/fog/aws/models/auto_scaling/configurations.rb +35 -0
- data/lib/fog/aws/models/auto_scaling/group.rb +140 -0
- data/lib/fog/aws/models/auto_scaling/groups.rb +35 -0
- data/lib/fog/aws/models/auto_scaling/instance.rb +60 -0
- data/lib/fog/aws/models/auto_scaling/instances.rb +30 -0
- data/lib/fog/aws/models/cloud_watch/metric.rb +14 -0
- data/lib/fog/aws/models/cloud_watch/metric_statistic.rb +46 -0
- data/lib/fog/aws/models/cloud_watch/metric_statistics.rb +23 -0
- data/lib/fog/aws/models/cloud_watch/metrics.rb +32 -0
- data/lib/fog/aws/models/elb/listener.rb +6 -0
- data/lib/fog/aws/models/elb/listeners.rb +2 -2
- data/lib/fog/aws/models/elb/load_balancer.rb +8 -5
- data/lib/fog/aws/models/rds/server.rb +3 -1
- data/lib/fog/aws/parsers/auto_scaling/basic.rb +28 -0
- data/lib/fog/aws/parsers/auto_scaling/describe_adjustment_types.rb +39 -0
- data/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_groups.rb +126 -0
- data/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_instances.rb +43 -0
- data/lib/fog/aws/parsers/auto_scaling/describe_launch_configurations.rb +94 -0
- data/lib/fog/aws/parsers/auto_scaling/describe_metric_collection_types.rb +66 -0
- data/lib/fog/aws/parsers/auto_scaling/describe_policies.rb +66 -0
- data/lib/fog/aws/parsers/auto_scaling/describe_scaling_activities.rb +47 -0
- data/lib/fog/aws/parsers/auto_scaling/describe_scaling_process_types.rb +39 -0
- data/lib/fog/aws/parsers/auto_scaling/describe_scheduled_actions.rb +46 -0
- data/lib/fog/aws/parsers/auto_scaling/put_scaling_policy.rb +30 -0
- data/lib/fog/aws/parsers/auto_scaling/terminate_instance_in_auto_scaling_group.rb +35 -0
- data/lib/fog/aws/parsers/cloud_watch/get_metric_statistics.rb +42 -0
- data/lib/fog/aws/parsers/cloud_watch/list_metrics.rb +58 -0
- data/lib/fog/aws/parsers/cloud_watch/put_metric_data.rb +26 -0
- data/lib/fog/aws/parsers/elb/describe_load_balancers.rb +1 -1
- data/lib/fog/aws/parsers/iam/get_group_policy.rb +27 -0
- data/lib/fog/aws/parsers/iam/list_account_aliases.rb +28 -0
- data/lib/fog/aws/parsers/rds/db_engine_version_parser.rb +35 -0
- data/lib/fog/aws/parsers/rds/db_parser.rb +1 -1
- data/lib/fog/aws/parsers/rds/describe_db_engine_versions.rb +39 -0
- data/lib/fog/aws/parsers/rds/describe_db_reserved_instances.rb +43 -0
- data/lib/fog/aws/parsers/sns/add_permission.rb +24 -0
- data/lib/fog/aws/parsers/sns/confirm_subscription.rb +24 -0
- data/lib/fog/aws/parsers/sns/create_topic.rb +24 -0
- data/lib/fog/aws/parsers/sns/delete_topic.rb +24 -0
- data/lib/fog/aws/parsers/sns/get_topic_attributes.rb +32 -0
- data/lib/fog/aws/parsers/sns/list_subscriptions.rb +29 -0
- data/lib/fog/aws/parsers/sns/list_topics.rb +26 -0
- data/lib/fog/aws/parsers/sns/publish.rb +24 -0
- data/lib/fog/aws/parsers/sns/remove_permission.rb +24 -0
- data/lib/fog/aws/parsers/sns/set_topic_attributes.rb +24 -0
- data/lib/fog/aws/parsers/sns/subscribe.rb +24 -0
- data/lib/fog/aws/parsers/sns/unsubscribe.rb +24 -0
- data/lib/fog/aws/parsers/sqs/basic.rb +23 -0
- data/lib/fog/aws/parsers/sqs/create_queue.rb +26 -0
- data/lib/fog/aws/parsers/sqs/get_queue_attributes.rb +35 -0
- data/lib/fog/aws/parsers/sqs/list_queues.rb +25 -0
- data/lib/fog/aws/parsers/sqs/receive_message.rb +41 -0
- data/lib/fog/aws/parsers/sqs/send_message.rb +28 -0
- data/lib/fog/aws/rds.rb +3 -1
- data/lib/fog/aws/requests/auto_scaling/create_auto_scaling_group.rb +108 -0
- data/lib/fog/aws/requests/auto_scaling/create_launch_configuration.rb +105 -0
- data/lib/fog/aws/requests/auto_scaling/delete_auto_scaling_group.rb +45 -0
- data/lib/fog/aws/requests/auto_scaling/delete_launch_configuration.rb +48 -0
- data/lib/fog/aws/requests/auto_scaling/delete_policy.rb +47 -0
- data/lib/fog/aws/requests/auto_scaling/delete_scheduled_action.rb +48 -0
- data/lib/fog/aws/requests/auto_scaling/describe_adjustment_types.rb +52 -0
- data/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_groups.rb +128 -0
- data/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_instances.rb +96 -0
- data/lib/fog/aws/requests/auto_scaling/describe_launch_configurations.rb +108 -0
- data/lib/fog/aws/requests/auto_scaling/describe_metric_collection_types.rb +60 -0
- data/lib/fog/aws/requests/auto_scaling/describe_policies.rb +85 -0
- data/lib/fog/aws/requests/auto_scaling/describe_scaling_activities.rb +88 -0
- data/lib/fog/aws/requests/auto_scaling/describe_scaling_process_types.rb +54 -0
- data/lib/fog/aws/requests/auto_scaling/describe_scheduled_actions.rb +83 -0
- data/lib/fog/aws/requests/auto_scaling/disable_metrics_collection.rb +56 -0
- data/lib/fog/aws/requests/auto_scaling/enable_metrics_collection.rb +66 -0
- data/lib/fog/aws/requests/auto_scaling/execute_policy.rb +50 -0
- data/lib/fog/aws/requests/auto_scaling/put_scaling_policy.rb +66 -0
- data/lib/fog/aws/requests/auto_scaling/put_scheduled_update_group_action.rb +57 -0
- data/lib/fog/aws/requests/auto_scaling/resume_processes.rb +50 -0
- data/lib/fog/aws/requests/auto_scaling/set_desired_capacity.rb +87 -0
- data/lib/fog/aws/requests/auto_scaling/set_instance_health.rb +55 -0
- data/lib/fog/aws/requests/auto_scaling/suspend_processes.rb +57 -0
- data/lib/fog/aws/requests/auto_scaling/terminate_instance_in_auto_scaling_group.rb +65 -0
- data/lib/fog/aws/requests/auto_scaling/update_auto_scaling_group.rb +79 -0
- data/lib/fog/aws/requests/cloud_watch/get_metric_statistics.rb +48 -0
- data/lib/fog/aws/requests/cloud_watch/list_metrics.rb +38 -0
- data/lib/fog/aws/requests/cloud_watch/put_metric_data.rb +73 -0
- data/lib/fog/aws/requests/elb/configure_health_check.rb +24 -0
- data/lib/fog/aws/requests/elb/create_app_cookie_stickiness_policy.rb +21 -0
- data/lib/fog/aws/requests/elb/create_lb_cookie_stickiness_policy.rb +21 -0
- data/lib/fog/aws/requests/elb/create_load_balancer.rb +55 -0
- data/lib/fog/aws/requests/elb/create_load_balancer_listeners.rb +28 -0
- data/lib/fog/aws/requests/elb/delete_load_balancer.rb +18 -0
- data/lib/fog/aws/requests/elb/delete_load_balancer_listeners.rb +20 -1
- data/lib/fog/aws/requests/elb/delete_load_balancer_policy.rb +23 -0
- data/lib/fog/aws/requests/elb/deregister_instances_from_load_balancer.rb +21 -5
- data/lib/fog/aws/requests/elb/describe_instance_health.rb +35 -0
- data/lib/fog/aws/requests/elb/describe_load_balancers.rb +29 -0
- data/lib/fog/aws/requests/elb/disable_availability_zones_for_load_balancer.rb +18 -5
- data/lib/fog/aws/requests/elb/enable_availability_zones_for_load_balancer.rb +18 -3
- data/lib/fog/aws/requests/elb/register_instances_with_load_balancer.rb +22 -5
- data/lib/fog/aws/requests/elb/set_load_balancer_listener_ssl_certificate.rb +40 -0
- data/lib/fog/aws/requests/elb/set_load_balancer_policies_of_listener.rb +37 -0
- data/lib/fog/aws/requests/iam/create_account_alias.rb +19 -0
- data/lib/fog/aws/requests/iam/delete_account_alias.rb +19 -0
- data/lib/fog/aws/requests/iam/delete_server_certificate.rb +14 -0
- data/lib/fog/aws/requests/iam/get_group_policy.rb +36 -0
- data/lib/fog/aws/requests/iam/get_server_certificate.rb +50 -0
- data/lib/fog/aws/requests/iam/list_account_aliases.rb +18 -0
- data/lib/fog/aws/requests/iam/list_server_certificates.rb +12 -0
- data/lib/fog/aws/requests/iam/put_group_policy.rb +1 -1
- data/lib/fog/aws/requests/iam/put_user_policy.rb +1 -1
- data/lib/fog/aws/requests/iam/upload_server_certificate.rb +53 -5
- data/lib/fog/aws/requests/rds/describe_db_engine_versions.rb +34 -0
- data/lib/fog/aws/requests/rds/describe_db_reserved_instances.rb +42 -0
- data/lib/fog/aws/requests/simpledb/get_attributes.rb +29 -17
- data/lib/fog/aws/requests/simpledb/select.rb +11 -3
- data/lib/fog/aws/requests/sns/add_permission.rb +26 -0
- data/lib/fog/aws/requests/sns/confirm_subscription.rb +33 -0
- data/lib/fog/aws/requests/sns/create_topic.rb +29 -0
- data/lib/fog/aws/requests/sns/delete_topic.rb +29 -0
- data/lib/fog/aws/requests/sns/get_topic_attributes.rb +29 -0
- data/lib/fog/aws/requests/sns/list_subscriptions.rb +29 -0
- data/lib/fog/aws/requests/sns/list_subscriptions_by_topic.rb +31 -0
- data/lib/fog/aws/requests/sns/list_topics.rb +29 -0
- data/lib/fog/aws/requests/sns/publish.rb +34 -0
- data/lib/fog/aws/requests/sns/remove_permission.rb +26 -0
- data/lib/fog/aws/requests/sns/set_topic_attributes.rb +33 -0
- data/lib/fog/aws/requests/sns/subscribe.rb +33 -0
- data/lib/fog/aws/requests/sns/unsubscribe.rb +29 -0
- data/lib/fog/aws/requests/sqs/change_message_visibility.rb +33 -0
- data/lib/fog/aws/requests/sqs/create_queue.rb +31 -0
- data/lib/fog/aws/requests/sqs/delete_message.rb +31 -0
- data/lib/fog/aws/requests/sqs/delete_queue.rb +29 -0
- data/lib/fog/aws/requests/sqs/get_queue_attributes.rb +31 -0
- data/lib/fog/aws/requests/sqs/list_queues.rb +28 -0
- data/lib/fog/aws/requests/sqs/receive_message.rb +34 -0
- data/lib/fog/aws/requests/sqs/send_message.rb +31 -0
- data/lib/fog/aws/requests/sqs/set_queue_attributes.rb +33 -0
- data/lib/fog/aws/sns.rb +112 -0
- data/lib/fog/aws/sqs.rb +115 -0
- data/lib/fog/bin.rb +1 -0
- data/lib/fog/bin/aws.rb +16 -0
- data/lib/fog/bin/brightbox.rb +1 -1
- data/lib/fog/bin/ninefold.rb +5 -0
- data/lib/fog/bin/vcloud.rb +30 -0
- data/lib/fog/bin/virtual_box.rb +5 -1
- data/lib/fog/cdn/rackspace.rb +16 -8
- data/lib/fog/compute.rb +4 -1
- data/lib/fog/compute/aws.rb +16 -4
- data/lib/fog/compute/bluebox.rb +2 -2
- data/lib/fog/compute/brightbox.rb +4 -4
- data/lib/fog/compute/go_grid.rb +2 -2
- data/lib/fog/compute/linode.rb +2 -2
- data/lib/fog/compute/models/aws/server.rb +17 -3
- data/lib/fog/compute/models/aws/spot_request.rb +93 -0
- data/lib/fog/compute/models/aws/spot_requests.rb +48 -0
- data/lib/fog/compute/models/aws/volume.rb +13 -13
- data/lib/fog/compute/models/bluebox/server.rb +4 -4
- data/lib/fog/compute/models/go_grid/server.rb +2 -2
- data/lib/fog/compute/models/ninefold/server.rb +18 -14
- data/lib/fog/compute/models/rackspace/flavor.rb +3 -2
- data/lib/fog/compute/models/rackspace/server.rb +2 -2
- data/lib/fog/compute/models/slicehost/server.rb +1 -1
- data/lib/fog/compute/models/vcloud/catalog.rb +22 -0
- data/lib/fog/compute/models/vcloud/catalog_item.rb +29 -0
- data/lib/fog/compute/models/vcloud/catalog_items.rb +32 -0
- data/lib/fog/compute/models/vcloud/catalogs.rb +39 -0
- data/lib/fog/compute/models/vcloud/ip.rb +42 -0
- data/lib/fog/compute/models/vcloud/ips.rb +33 -0
- data/lib/fog/compute/models/vcloud/network.rb +65 -0
- data/lib/fog/compute/models/vcloud/networks.rb +34 -0
- data/lib/fog/compute/models/vcloud/server.rb +291 -0
- data/lib/fog/compute/models/vcloud/servers.rb +58 -0
- data/lib/fog/compute/models/vcloud/task.rb +21 -0
- data/lib/fog/compute/models/vcloud/tasks.rb +32 -0
- data/lib/fog/compute/models/vcloud/vdc.rb +56 -0
- data/lib/fog/compute/models/vcloud/vdcs.rb +40 -0
- data/lib/fog/compute/models/virtual_box/server.rb +2 -2
- data/lib/fog/compute/ninefold.rb +3 -3
- data/lib/fog/compute/parsers/aws/cancel_spot_instance_requests.rb +30 -0
- data/lib/fog/compute/parsers/aws/describe_instances.rb +9 -4
- data/lib/fog/compute/parsers/aws/describe_placement_groups.rb +30 -0
- data/lib/fog/compute/parsers/aws/describe_reserved_instances.rb +1 -1
- data/lib/fog/compute/parsers/aws/describe_reserved_instances_offerings.rb +2 -2
- data/lib/fog/compute/parsers/aws/describe_spot_price_history.rb +34 -0
- data/lib/fog/compute/parsers/aws/purchase_reserved_instances_offering.rb +24 -0
- data/lib/fog/compute/parsers/aws/run_instances.rb +17 -16
- data/lib/fog/compute/parsers/aws/spot_datafeed_subscription.rb +29 -0
- data/lib/fog/compute/parsers/aws/spot_instance_requests.rb +67 -0
- data/lib/fog/compute/rackspace.rb +6 -5
- data/lib/fog/compute/requests/aws/cancel_spot_instance_requests.rb +34 -0
- data/lib/fog/compute/requests/aws/create_placement_group.rb +34 -0
- data/lib/fog/compute/requests/aws/create_spot_datafeed_subscription.rb +41 -0
- data/lib/fog/compute/requests/aws/delete_placement_group.rb +32 -0
- data/lib/fog/compute/requests/aws/delete_spot_datafeed_subscription.rb +28 -0
- data/lib/fog/compute/requests/aws/describe_placement_groups.rb +35 -0
- data/lib/fog/compute/requests/aws/describe_reserved_instances.rb +14 -0
- data/lib/fog/compute/requests/aws/describe_reserved_instances_offerings.rb +25 -0
- data/lib/fog/compute/requests/aws/describe_spot_datafeed_subscription.rb +35 -0
- data/lib/fog/compute/requests/aws/describe_spot_instance_requests.rb +47 -0
- data/lib/fog/compute/requests/aws/describe_spot_price_history.rb +37 -0
- data/lib/fog/compute/requests/aws/describe_volumes.rb +1 -1
- data/lib/fog/compute/requests/aws/purchase_reserved_instances_offering.rb +63 -0
- data/lib/fog/compute/requests/aws/request_spot_instances.rb +83 -0
- data/lib/fog/compute/requests/aws/run_instances.rb +2 -3
- data/lib/fog/compute/requests/brightbox/activate_console_server.rb +1 -1
- data/lib/fog/compute/requests/brightbox/add_listeners_load_balancer.rb +1 -1
- data/lib/fog/compute/requests/brightbox/add_nodes_load_balancer.rb +1 -1
- data/lib/fog/compute/requests/brightbox/create_api_client.rb +1 -1
- data/lib/fog/compute/requests/brightbox/create_cloud_ip.rb +1 -1
- data/lib/fog/compute/requests/brightbox/create_image.rb +1 -1
- data/lib/fog/compute/requests/brightbox/create_load_balancer.rb +1 -1
- data/lib/fog/compute/requests/brightbox/create_server.rb +1 -1
- data/lib/fog/compute/requests/brightbox/destroy_api_client.rb +1 -1
- data/lib/fog/compute/requests/brightbox/destroy_cloud_ip.rb +1 -1
- data/lib/fog/compute/requests/brightbox/destroy_image.rb +1 -1
- data/lib/fog/compute/requests/brightbox/destroy_load_balancer.rb +1 -1
- data/lib/fog/compute/requests/brightbox/destroy_server.rb +1 -1
- data/lib/fog/compute/requests/brightbox/get_account.rb +1 -1
- data/lib/fog/compute/requests/brightbox/get_api_client.rb +1 -1
- data/lib/fog/compute/requests/brightbox/get_cloud_ip.rb +1 -1
- data/lib/fog/compute/requests/brightbox/get_image.rb +1 -1
- data/lib/fog/compute/requests/brightbox/get_interface.rb +1 -1
- data/lib/fog/compute/requests/brightbox/get_load_balancer.rb +1 -1
- data/lib/fog/compute/requests/brightbox/get_server.rb +1 -1
- data/lib/fog/compute/requests/brightbox/get_server_type.rb +1 -1
- data/lib/fog/compute/requests/brightbox/get_user.rb +1 -1
- data/lib/fog/compute/requests/brightbox/get_zone.rb +1 -1
- data/lib/fog/compute/requests/brightbox/list_api_clients.rb +1 -1
- data/lib/fog/compute/requests/brightbox/list_cloud_ips.rb +1 -1
- data/lib/fog/compute/requests/brightbox/list_images.rb +1 -1
- data/lib/fog/compute/requests/brightbox/list_load_balancers.rb +1 -1
- data/lib/fog/compute/requests/brightbox/list_server_types.rb +1 -1
- data/lib/fog/compute/requests/brightbox/list_servers.rb +1 -1
- data/lib/fog/compute/requests/brightbox/list_users.rb +1 -1
- data/lib/fog/compute/requests/brightbox/list_zones.rb +1 -1
- data/lib/fog/compute/requests/brightbox/map_cloud_ip.rb +1 -1
- data/lib/fog/compute/requests/brightbox/remove_listeners_load_balancer.rb +1 -1
- data/lib/fog/compute/requests/brightbox/remove_nodes_load_balancer.rb +1 -1
- data/lib/fog/compute/requests/brightbox/reset_ftp_password_account.rb +1 -1
- data/lib/fog/compute/requests/brightbox/resize_server.rb +1 -1
- data/lib/fog/compute/requests/brightbox/shutdown_server.rb +1 -1
- data/lib/fog/compute/requests/brightbox/snapshot_server.rb +1 -1
- data/lib/fog/compute/requests/brightbox/start_server.rb +1 -1
- data/lib/fog/compute/requests/brightbox/stop_server.rb +1 -1
- data/lib/fog/compute/requests/brightbox/unmap_cloud_ip.rb +1 -1
- data/lib/fog/compute/requests/brightbox/update_account.rb +1 -1
- data/lib/fog/compute/requests/brightbox/update_api_client.rb +1 -1
- data/lib/fog/compute/requests/brightbox/update_image.rb +1 -1
- data/lib/fog/compute/requests/brightbox/update_load_balancer.rb +1 -1
- data/lib/fog/compute/requests/brightbox/update_server.rb +1 -1
- data/lib/fog/compute/requests/brightbox/update_user.rb +1 -1
- data/lib/fog/compute/requests/linode/linode_disk_createfromstackscript.rb +1 -1
- data/lib/fog/compute/requests/rackspace/create_image.rb +1 -1
- data/lib/fog/compute/requests/rackspace/create_server.rb +1 -1
- data/lib/fog/compute/requests/rackspace/server_action.rb +2 -2
- data/lib/fog/compute/requests/rackspace/update_server.rb +1 -1
- data/lib/fog/compute/requests/storm_on_demand/add_balancer_node.rb +1 -1
- data/lib/fog/compute/requests/storm_on_demand/clone_server.rb +1 -1
- data/lib/fog/compute/requests/storm_on_demand/create_server.rb +1 -1
- data/lib/fog/compute/requests/storm_on_demand/delete_server.rb +1 -1
- data/lib/fog/compute/requests/storm_on_demand/get_server.rb +1 -1
- data/lib/fog/compute/requests/storm_on_demand/get_stats.rb +1 -1
- data/lib/fog/compute/requests/storm_on_demand/list_balancers.rb +1 -1
- data/lib/fog/compute/requests/storm_on_demand/list_configs.rb +1 -1
- data/lib/fog/compute/requests/storm_on_demand/list_images.rb +1 -1
- data/lib/fog/compute/requests/storm_on_demand/list_private_ips.rb +1 -1
- data/lib/fog/compute/requests/storm_on_demand/list_servers.rb +1 -1
- data/lib/fog/compute/requests/storm_on_demand/list_templates.rb +1 -1
- data/lib/fog/compute/requests/storm_on_demand/reboot_server.rb +1 -1
- data/lib/fog/compute/requests/storm_on_demand/remove_balancer_node.rb +1 -1
- data/lib/fog/compute/requests/storm_on_demand/resize_server.rb +1 -1
- data/lib/fog/compute/requests/vcloud/clone_vapp.rb +40 -0
- data/lib/fog/compute/requests/vcloud/configure_network.rb +43 -0
- data/lib/fog/compute/requests/vcloud/configure_network_ip.rb +46 -0
- data/lib/fog/compute/requests/vcloud/configure_node.rb +38 -0
- data/lib/fog/compute/requests/vcloud/configure_vapp.rb +112 -0
- data/lib/fog/compute/requests/vcloud/configure_vm.rb +247 -0
- data/lib/fog/compute/requests/vcloud/configure_vm_disks.rb +100 -0
- data/lib/fog/compute/requests/vcloud/configure_vm_memory.rb +40 -0
- data/lib/fog/compute/requests/vcloud/configure_vm_name_description.rb +30 -0
- data/lib/fog/compute/requests/vcloud/delete_node.rb +10 -0
- data/lib/fog/compute/requests/vcloud/delete_vapp.rb +10 -0
- data/lib/fog/compute/requests/vcloud/get_catalog.rb +10 -0
- data/lib/fog/compute/requests/vcloud/get_catalog_item.rb +10 -0
- data/lib/fog/compute/requests/vcloud/get_customization_options.rb +10 -0
- data/lib/fog/compute/requests/vcloud/get_network.rb +10 -0
- data/lib/fog/compute/requests/vcloud/get_network_extensions.rb +11 -0
- data/lib/fog/compute/requests/vcloud/get_network_ip.rb +15 -0
- data/lib/fog/compute/requests/vcloud/get_network_ips.rb +15 -0
- data/lib/fog/compute/requests/vcloud/get_organization.rb +11 -0
- data/lib/fog/compute/requests/vcloud/get_task.rb +11 -0
- data/lib/fog/compute/requests/vcloud/get_task_list.rb +11 -0
- data/lib/fog/compute/requests/vcloud/get_vapp.rb +10 -0
- data/lib/fog/compute/requests/vcloud/get_vapp_template.rb +11 -0
- data/lib/fog/compute/requests/vcloud/get_vdc.rb +10 -0
- data/lib/fog/compute/requests/vcloud/get_vm_disks.rb +16 -0
- data/lib/fog/compute/requests/vcloud/get_vm_memory.rb +16 -0
- data/lib/fog/compute/requests/vcloud/instantiate_vapp_template.rb +83 -0
- data/lib/fog/compute/requests/vcloud/login.rb +23 -0
- data/lib/fog/compute/requests/vcloud/power_off.rb +10 -0
- data/lib/fog/compute/requests/vcloud/power_on.rb +11 -0
- data/lib/fog/compute/requests/vcloud/power_reset.rb +11 -0
- data/lib/fog/compute/requests/vcloud/power_shutdown.rb +11 -0
- data/lib/fog/compute/requests/vcloud/undeploy.rb +23 -0
- data/lib/fog/compute/storm_on_demand.rb +2 -2
- data/lib/fog/compute/vcloud.rb +310 -0
- data/lib/fog/core.rb +2 -1
- data/lib/fog/core/attributes.rb +23 -11
- data/lib/fog/core/collection.rb +7 -7
- data/lib/fog/core/credentials.rb +4 -2
- data/lib/fog/core/model.rb +4 -4
- data/lib/fog/core/time.rb +1 -2
- data/lib/fog/core/timeout.rb +11 -0
- data/lib/fog/core/wait_for.rb +2 -2
- data/lib/fog/dns/dnsimple.rb +2 -2
- data/lib/fog/dns/dnsmadeeasy.rb +2 -2
- data/lib/fog/dns/linode.rb +2 -2
- data/lib/fog/dns/requests/dnsimple/create_domain.rb +1 -1
- data/lib/fog/dns/requests/dnsimple/create_record.rb +1 -1
- data/lib/fog/dns/requests/dnsimple/update_record.rb +1 -1
- data/lib/fog/dns/requests/dnsmadeeasy/create_record.rb +1 -1
- data/lib/fog/dns/requests/dnsmadeeasy/create_secondary.rb +1 -1
- data/lib/fog/dns/requests/dnsmadeeasy/update_record.rb +1 -1
- data/lib/fog/dns/requests/dnsmadeeasy/update_secondary.rb +1 -1
- data/lib/fog/providers.rb +1 -0
- data/lib/fog/providers/aws.rb +15 -2
- data/lib/fog/providers/ninefold.rb +1 -0
- data/lib/fog/providers/rackspace.rb +4 -3
- data/lib/fog/providers/vcloud.rb +11 -0
- data/lib/fog/storage.rb +9 -6
- data/lib/fog/storage/aws.rb +18 -1
- data/lib/fog/storage/google.rb +19 -1
- data/lib/fog/storage/models/aws/file.rb +3 -3
- data/lib/fog/storage/models/aws/files.rb +9 -2
- data/lib/fog/storage/models/google/files.rb +9 -2
- data/lib/fog/storage/models/ninefold/directories.rb +48 -0
- data/lib/fog/storage/models/ninefold/directory.rb +53 -0
- data/lib/fog/storage/models/ninefold/file.rb +99 -0
- data/lib/fog/storage/models/ninefold/files.rb +72 -0
- data/lib/fog/storage/models/rackspace/directory.rb +7 -2
- data/lib/fog/storage/ninefold.rb +149 -0
- data/lib/fog/storage/rackspace.rb +8 -2
- data/lib/fog/storage/requests/aws/get_bucket_policy.rb +1 -1
- data/lib/fog/storage/requests/aws/get_object.rb +6 -2
- data/lib/fog/storage/requests/aws/get_object_http_url.rb +51 -0
- data/lib/fog/storage/requests/aws/get_object_https_url.rb +51 -0
- data/lib/fog/storage/requests/aws/get_object_url.rb +4 -24
- data/lib/fog/storage/requests/aws/post_object_hidden_fields.rb +1 -1
- data/lib/fog/storage/requests/aws/put_bucket_policy.rb +1 -1
- data/lib/fog/storage/requests/google/get_object_http_url.rb +51 -0
- data/lib/fog/storage/requests/google/get_object_https_url.rb +51 -0
- data/lib/fog/storage/requests/google/get_object_url.rb +8 -25
- data/lib/fog/storage/requests/ninefold/delete_namespace.rb +19 -0
- data/lib/fog/storage/requests/ninefold/get_namespace.rb +20 -0
- data/lib/fog/storage/requests/ninefold/post_namespace.rb +20 -0
- data/lib/fog/storage/requests/ninefold/put_namespace.rb +20 -0
- data/lib/fog/storage/requests/rackspace/put_object.rb +3 -0
- data/lib/fog/storage/requests/rackspace/put_object_manifest.rb +25 -0
- data/tests/aws/models/auto_scaling/activities_tests.rb +6 -0
- data/tests/aws/models/auto_scaling/configuration_test.rb +13 -0
- data/tests/aws/models/auto_scaling/configurations_tests.rb +11 -0
- data/tests/aws/models/auto_scaling/helper.rb +0 -0
- data/tests/aws/models/auto_scaling/instances_tests.rb +6 -0
- data/tests/aws/models/cloud_watch/metric_statistics_tests.rb +51 -0
- data/tests/aws/models/cloud_watch/metrics_tests.rb +17 -0
- data/tests/aws/{requests → models}/elb/model_tests.rb +82 -18
- data/tests/aws/models/rds/security_group_tests.rb +1 -1
- data/tests/aws/requests/auto_scaling/auto_scaling_tests.rb +80 -0
- data/tests/aws/requests/auto_scaling/helper.rb +185 -0
- data/tests/aws/requests/auto_scaling/model_tests.rb +235 -0
- data/tests/aws/requests/cloud_formation/stack_tests.rb +1 -1
- data/tests/aws/requests/cloud_watch/get_metric_statistics_tests.rb +28 -0
- data/tests/aws/requests/cloud_watch/list_metrics_test.rb +64 -0
- data/tests/aws/requests/cloud_watch/put_metric_data_tests.rb +36 -0
- data/tests/aws/requests/elb/listener_tests.rb +50 -0
- data/tests/aws/requests/elb/load_balancer_tests.rb +23 -44
- data/tests/aws/requests/elb/policy_tests.rb +41 -0
- data/tests/aws/requests/iam/helper.rb +29 -0
- data/tests/aws/requests/iam/login_profile_tests.rb +2 -2
- data/tests/aws/requests/iam/server_certificate_tests.rb +39 -6
- data/tests/aws/requests/rds/helper.rb +1 -0
- data/tests/aws/requests/simpledb/attributes_tests.rb +10 -15
- data/tests/aws/requests/sns/helper.rb +9 -0
- data/tests/aws/requests/sns/subscription_tests.rb +86 -0
- data/tests/aws/requests/sns/topic_tests.rb +50 -0
- data/tests/aws/requests/sqs/helper.rb +15 -0
- data/tests/aws/requests/sqs/message_tests.rb +57 -0
- data/tests/aws/requests/sqs/queue_tests.rb +55 -0
- data/tests/aws/signed_params_tests.rb +3 -1
- data/tests/compute/models/aws/volume_tests.rb +13 -0
- data/tests/compute/models/vcloud/helper.rb +25 -0
- data/tests/compute/models/vcloud/servers_tests.rb +95 -0
- data/tests/compute/requests/aws/address_tests.rb +1 -1
- data/tests/compute/requests/aws/instance_tests.rb +65 -4
- data/tests/compute/requests/aws/placement_group_tests.rb +48 -0
- data/tests/compute/requests/aws/spot_datafeed_subscription_tests.rb +47 -0
- data/tests/compute/requests/aws/spot_instance_tests.rb +53 -0
- data/tests/compute/requests/aws/spot_price_history_tests.rb +24 -0
- data/tests/compute/requests/aws/volume_tests.rb +4 -0
- data/tests/compute/requests/brightbox/helper.rb +2 -1
- data/tests/compute/requests/brightbox/interface_tests.rb +4 -4
- data/tests/compute/requests/ninefold/helper.rb +1 -1
- data/tests/compute/requests/vcloud/disk_configure_tests.rb +114 -0
- data/tests/compute/requests/voxel/server_tests.rb +2 -2
- data/tests/core/attribute_tests.rb +10 -1
- data/tests/core/credential_tests.rb +6 -0
- data/tests/core/timeout_tests.rb +10 -0
- data/tests/helpers/collection_helper.rb +4 -1
- data/tests/helpers/formats_helper.rb +1 -1
- data/tests/helpers/mock_helper.rb +5 -0
- data/tests/storage/helper.rb +4 -1
- data/tests/storage/models/ninefold/file_update_tests.rb +19 -0
- data/tests/storage/models/ninefold/nested_directories_tests.rb +23 -0
- data/tests/storage/requests/aws/multipart_upload_tests.rb +2 -5
- data/tests/storage/requests/rackspace/large_object_tests.rb +47 -0
- metadata +366 -105
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module AWS
|
|
3
|
+
class AutoScaling
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
require 'fog/aws/parsers/auto_scaling/describe_auto_scaling_instances'
|
|
8
|
+
|
|
9
|
+
# Returns a description of each Auto Scaling instance in the
|
|
10
|
+
# instance_ids list. If a list is not provided, the service returns the
|
|
11
|
+
# full details of all instances.
|
|
12
|
+
#
|
|
13
|
+
# This action supports pagination by returning a token if there are
|
|
14
|
+
# more pages to retrieve. To get the next page, call this action again
|
|
15
|
+
# with the returned token as the NextToken parameter.
|
|
16
|
+
#
|
|
17
|
+
# ==== Parameters
|
|
18
|
+
# * options<~Hash>:
|
|
19
|
+
# * 'InstanceIds'<~Array> - The list of Auto Scaling instances to
|
|
20
|
+
# describe. If this list is omitted, all auto scaling instances are
|
|
21
|
+
# described. The list of requested instances cannot contain more
|
|
22
|
+
# than 50 items. If unknown instances are requested, they are
|
|
23
|
+
# ignored with no error.
|
|
24
|
+
# * 'MaxRecords'<~Integer> - The aximum number of Auto Scaling
|
|
25
|
+
# instances to be described with each call.
|
|
26
|
+
# * 'NextToken'<~String> - The token returned by a previous call to
|
|
27
|
+
# indicate that there is more data available.
|
|
28
|
+
#
|
|
29
|
+
# ==== Returns
|
|
30
|
+
# * response<~Excon::Response>:
|
|
31
|
+
# * body<~Hash>:
|
|
32
|
+
# * 'ResponseMetadata'<~Hash>:
|
|
33
|
+
# * 'RequestId'<~String> - Id of request
|
|
34
|
+
# * 'DescribeAutoScalingInstancesResponse'<~Hash>:
|
|
35
|
+
# * 'AutoScalingInstances'<~Array>:
|
|
36
|
+
# * autoscalinginstancedetails<~Hash>:
|
|
37
|
+
# * 'AutoScalingGroupName'<~String> - The name of the Auto
|
|
38
|
+
# Scaling Group associated with this instance.
|
|
39
|
+
# * 'AvailabilityZone'<~String> - The availability zone in
|
|
40
|
+
# which this instance resides.
|
|
41
|
+
# * 'HealthStatus'<~String> - The health status of this
|
|
42
|
+
# instance. "Healthy" means that the instance is healthy
|
|
43
|
+
# and should remain in service. "Unhealthy" means that the
|
|
44
|
+
# instance is unhealthy. Auto Scaling should terminate and
|
|
45
|
+
# replace it.
|
|
46
|
+
# * 'InstanceId'<~String> - The instance's EC2 instance ID.
|
|
47
|
+
# * 'LaunchConfigurationName'<~String> - The launch
|
|
48
|
+
# configuration associated with this instance.
|
|
49
|
+
# * 'LifecycleState'<~String> - The life cycle state of this
|
|
50
|
+
# instance.
|
|
51
|
+
# * 'NextToken'<~String> - Acts as a paging mechanism for large
|
|
52
|
+
# result sets. Set to a non-empty string if there are
|
|
53
|
+
# additional results waiting to be returned. Pass this in to
|
|
54
|
+
# subsequent calls to return additional results.
|
|
55
|
+
#
|
|
56
|
+
# ==== See Also
|
|
57
|
+
# http://docs.amazonwebservices.com/AutoScaling/latest/APIReference/API_DescribeAutoScalingInstances.html
|
|
58
|
+
#
|
|
59
|
+
def describe_auto_scaling_instances(options = {})
|
|
60
|
+
if instance_ids = options.delete('InstanceIds')
|
|
61
|
+
options.merge!(AWS.indexed_param('InstanceIds.member.%d', [*instance_ids]))
|
|
62
|
+
end
|
|
63
|
+
request({
|
|
64
|
+
'Action' => 'DescribeAutoScalingInstances',
|
|
65
|
+
:parser => Fog::Parsers::AWS::AutoScaling::DescribeAutoScalingInstances.new
|
|
66
|
+
}.merge!(options))
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
class Mock
|
|
72
|
+
|
|
73
|
+
def describe_auto_scaling_instances(options = {})
|
|
74
|
+
results = { 'AutoScalingInstances' => [] }
|
|
75
|
+
data[:auto_scaling_groups].each do |asg_name, asg_data|
|
|
76
|
+
lc_name = data[asg_data][lc_name]
|
|
77
|
+
asg_data['Instances'].each do |instance|
|
|
78
|
+
results['AutoScalingInstances'] << {
|
|
79
|
+
'AutoScalingGroupName' => asg_name
|
|
80
|
+
}.merge!(instance)
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
response = Excon::Response.new
|
|
84
|
+
response.status = 200
|
|
85
|
+
response.body = {
|
|
86
|
+
'DescribeAutoScalingInstancesResult' => results,
|
|
87
|
+
'ResponseMetadata' => { 'RequestId' => Fog::AWS::Mock.request_id }
|
|
88
|
+
}
|
|
89
|
+
response
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
end
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module AWS
|
|
3
|
+
class AutoScaling
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
require 'fog/aws/parsers/auto_scaling/describe_launch_configurations'
|
|
8
|
+
|
|
9
|
+
# Returns a full description of the launch configurations given the
|
|
10
|
+
# specified names.
|
|
11
|
+
#
|
|
12
|
+
# If no names are specified, then the full details of all launch
|
|
13
|
+
# configurations are returned.
|
|
14
|
+
#
|
|
15
|
+
# ==== Parameters
|
|
16
|
+
# * options<~Hash>:
|
|
17
|
+
# * 'LaunchConfigurationNames'<~Array> - A list of launch
|
|
18
|
+
# configuration names.
|
|
19
|
+
# * 'MaxRecords'<~Integer> - The maximum number of launch
|
|
20
|
+
# configurations.
|
|
21
|
+
# * 'NextToken'<~String> - The token returned by a previous call to
|
|
22
|
+
# indicate that there is more data available.
|
|
23
|
+
#
|
|
24
|
+
# ==== Returns
|
|
25
|
+
# * response<~Excon::Response>:
|
|
26
|
+
# * body<~Hash>:
|
|
27
|
+
# * 'ResponseMetadata'<~Hash>:
|
|
28
|
+
# * 'RequestId'<~String> - Id of request
|
|
29
|
+
# * 'DescribeLaunchConfigurationsResponse'<~Hash>:
|
|
30
|
+
# * 'LaunchConfigurations'<~Array>:
|
|
31
|
+
# * launchconfiguration'<~Hash>:
|
|
32
|
+
# * 'BlockDeviceMappings'<~Array>:
|
|
33
|
+
# * blockdevicemapping<~Hash>:
|
|
34
|
+
# * 'DeviceName'<~String> - The name of the device within
|
|
35
|
+
# EC2.
|
|
36
|
+
# * 'Ebs'<~Hash>:
|
|
37
|
+
# * 'SnapshotId'<~String> - The snapshot ID
|
|
38
|
+
# * 'VolumeSize'<~Integer> - The volume size, in
|
|
39
|
+
# GigaBytes.
|
|
40
|
+
# * 'VirtualName'<~String> - The virtual name associated
|
|
41
|
+
# with the device.
|
|
42
|
+
# * 'CreatedTime'<~Time> - Provides the creation date and
|
|
43
|
+
# time for this launch configuration.
|
|
44
|
+
# * 'ImageId'<~String> - Provides the unique ID of the Amazon
|
|
45
|
+
# Machine Image (AMI) that was assigned during
|
|
46
|
+
# registration.
|
|
47
|
+
# * 'InstanceMonitoring'<~Hash>:
|
|
48
|
+
# * 'Enabled'<~Boolean> - If true, instance monitoring is
|
|
49
|
+
# enabled.
|
|
50
|
+
# * 'InstanceType'<~String> - Specifies the instance type of
|
|
51
|
+
# the EC2 instance.
|
|
52
|
+
# * 'KernelId'<~String> - Provides the ID of the kernel
|
|
53
|
+
# associated with the EC2 AMI.
|
|
54
|
+
# * 'KeyName'<~String> - Provides the name of the EC2 key
|
|
55
|
+
# pair.
|
|
56
|
+
# * 'LaunchConfigurationARN'<~String> - The launch
|
|
57
|
+
# configuration's Amazon Resource Name (ARN).
|
|
58
|
+
# * 'LaunchConfigurationName'<~String> - Specifies the name
|
|
59
|
+
# of the launch configuration.
|
|
60
|
+
# * 'RamdiskId'<~String> - Provides ID of the RAM disk
|
|
61
|
+
# associated with the EC2 AMI.
|
|
62
|
+
# * 'SecurityGroups'<~Array> - A description of the security
|
|
63
|
+
# groups to associate with the EC2 instances.
|
|
64
|
+
# * 'UserData'<~String> - The user data available to the
|
|
65
|
+
# launched EC2 instances.
|
|
66
|
+
# * 'NextToken'<~String> - Acts as a paging mechanism for large
|
|
67
|
+
# result sets. Set to a non-empty string if there are
|
|
68
|
+
# additional results waiting to be returned. Pass this in to
|
|
69
|
+
# subsequent calls to return additional results.
|
|
70
|
+
#
|
|
71
|
+
# ==== See Also
|
|
72
|
+
# http://docs.amazonwebservices.com/AutoScaling/latest/APIReference/API_DescribeLaunchConfigurations.html
|
|
73
|
+
#
|
|
74
|
+
def describe_launch_configurations(options = {})
|
|
75
|
+
if launch_configuration_names = options.delete('LaunchConfigurationNames')
|
|
76
|
+
options.merge!(AWS.indexed_param('LaunchConfigurationNames.member.%d', [*launch_configuration_names]))
|
|
77
|
+
end
|
|
78
|
+
request({
|
|
79
|
+
'Action' => 'DescribeLaunchConfigurations',
|
|
80
|
+
:parser => Fog::Parsers::AWS::AutoScaling::DescribeLaunchConfigurations.new
|
|
81
|
+
}.merge!(options))
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
end
|
|
85
|
+
|
|
86
|
+
class Mock
|
|
87
|
+
|
|
88
|
+
def describe_launch_configurations(options = {})
|
|
89
|
+
results = { 'LaunchConfigurations' => [] }
|
|
90
|
+
data[:launch_configurations].each do |lc_name, lc_data|
|
|
91
|
+
results['LaunchConfigurations'] << {
|
|
92
|
+
'LaunchConfigurationName' => lc_name
|
|
93
|
+
}.merge!(lc_data)
|
|
94
|
+
end
|
|
95
|
+
response = Excon::Response.new
|
|
96
|
+
response.status = 200
|
|
97
|
+
response.body = {
|
|
98
|
+
'DescribeLaunchConfigurationsResult' => results,
|
|
99
|
+
'ResponseMetadata' => { 'RequestId' => Fog::AWS::Mock.request_id }
|
|
100
|
+
}
|
|
101
|
+
response
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
end
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module AWS
|
|
3
|
+
class AutoScaling
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
require 'fog/aws/parsers/auto_scaling/describe_metric_collection_types'
|
|
8
|
+
|
|
9
|
+
# Returns a list of metrics and a corresponding list of granularities
|
|
10
|
+
# for each metric.
|
|
11
|
+
#
|
|
12
|
+
# ==== Returns
|
|
13
|
+
# * response<~Excon::Response>:
|
|
14
|
+
# * body<~Hash>:
|
|
15
|
+
# * 'ResponseMetadata'<~Hash>:
|
|
16
|
+
# * 'RequestId'<~String> - Id of request
|
|
17
|
+
# * 'DescribeMetricCollectionTypesResult'<~Hash>:
|
|
18
|
+
# * 'Granularities'<~Array>:
|
|
19
|
+
# * 'Granularity'<~String> - The granularity of a Metric.
|
|
20
|
+
# * 'Metrics'<~Array>:
|
|
21
|
+
# * 'Metric'<~String> - The name of a Metric.
|
|
22
|
+
#
|
|
23
|
+
# ==== See Also
|
|
24
|
+
# http://docs.amazonwebservices.com/AutoScaling/latest/APIReference/API_DescribeAutoScalingInstances.html
|
|
25
|
+
#
|
|
26
|
+
def describe_metric_collection_types()
|
|
27
|
+
request({
|
|
28
|
+
'Action' => 'DescribeMetricCollectionTypes',
|
|
29
|
+
:parser => Fog::Parsers::AWS::AutoScaling::DescribeMetricCollectionTypes.new
|
|
30
|
+
})
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
class Mock
|
|
36
|
+
|
|
37
|
+
def describe_metric_collection_types()
|
|
38
|
+
results = {
|
|
39
|
+
'Granularities' => [],
|
|
40
|
+
'Metrics' => []
|
|
41
|
+
}
|
|
42
|
+
data[:metric_collection_types][:granularities].each do |granularity|
|
|
43
|
+
results['Granularities'] << { 'Granularity' => granularity }
|
|
44
|
+
end
|
|
45
|
+
data[:metric_collection_types][:metrics].each do |metric|
|
|
46
|
+
results['Metrics'] << { 'Metric' => metric }
|
|
47
|
+
end
|
|
48
|
+
response = Excon::Response.new
|
|
49
|
+
response.status = 200
|
|
50
|
+
response.body = {
|
|
51
|
+
'DescribeMetricCollectionTypesResult' => results,
|
|
52
|
+
'ResponseMetadata' => { 'RequestId' => Fog::AWS::Mock.request_id }
|
|
53
|
+
}
|
|
54
|
+
response
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module AWS
|
|
3
|
+
class AutoScaling
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
require 'fog/aws/parsers/auto_scaling/describe_policies'
|
|
8
|
+
|
|
9
|
+
# Returns descriptions of what each policy does. This action supports
|
|
10
|
+
# pagination. If the response includes a token, there are more records
|
|
11
|
+
# available. To get the additional records, repeat the request with the
|
|
12
|
+
# response token as the NextToken parameter.
|
|
13
|
+
#
|
|
14
|
+
# ==== Parameters
|
|
15
|
+
# * options<~Hash>:
|
|
16
|
+
# * 'AutoScalingGroupName'<~String> - The name of the Auto Scaling
|
|
17
|
+
# group.
|
|
18
|
+
# * 'MaxRecords'<~Integer> - The maximum number of policies that will
|
|
19
|
+
# be described with each call.
|
|
20
|
+
# * 'NextToken'<~String> - The token returned by a previous call to
|
|
21
|
+
# indicate that there is more data available.
|
|
22
|
+
# * PolicyNames<~Array> - A list of policy names or policy ARNs to be
|
|
23
|
+
# described. If this list is omitted, all policy names are
|
|
24
|
+
# described. If an auto scaling group name is provided, the results
|
|
25
|
+
# are limited to that group.The list of requested policy names
|
|
26
|
+
# cannot contain more than 50 items. If unknown policy names are
|
|
27
|
+
# requested, they are ignored with no error.
|
|
28
|
+
#
|
|
29
|
+
# ==== Returns
|
|
30
|
+
# * response<~Excon::Response>:
|
|
31
|
+
# * body<~Hash>:
|
|
32
|
+
# * 'ResponseMetadata'<~Hash>:
|
|
33
|
+
# * 'RequestId'<~String> - Id of request
|
|
34
|
+
# * 'DescribePoliciesResult'<~Hash>:
|
|
35
|
+
# * 'ScalingPolicies'<~Array>:
|
|
36
|
+
# * 'AdjustmentType'<~String> - Specifies whether the
|
|
37
|
+
# adjustment is an absolute number or a percentage of the
|
|
38
|
+
# current capacity.
|
|
39
|
+
# * 'Alarms'<~Array>:
|
|
40
|
+
# * 'AlarmARN'<~String> - The Amazon Resource Name (ARN) of
|
|
41
|
+
# the alarm.
|
|
42
|
+
# * 'AlarmName'<~String> - The name of the alarm.
|
|
43
|
+
# * 'AutoScalingGroupName'<~String> - The name of the Auto
|
|
44
|
+
# Scaling group associated with this scaling policy.
|
|
45
|
+
# * 'Cooldown'<~Integer> - The amount of time, in seconds,
|
|
46
|
+
# after a scaling activity completes before any further
|
|
47
|
+
# trigger-related scaling activities can start.
|
|
48
|
+
# * 'PolicyARN'<~String> - The Amazon Resource Name (ARN) of
|
|
49
|
+
# the policy.
|
|
50
|
+
# * 'PolicyName'<~String> - The name of the scaling policy.
|
|
51
|
+
# * 'ScalingAdjustment'<~Integer> - The number associated with
|
|
52
|
+
# the specified AdjustmentType. A positive value adds to the
|
|
53
|
+
# current capacity and a negative value removes from the
|
|
54
|
+
# current capacity.
|
|
55
|
+
# * 'NextToken'<~String> - Acts as a paging mechanism for large
|
|
56
|
+
# result sets. Set to a non-empty string if there are
|
|
57
|
+
# additional results waiting to be returned. Pass this in to
|
|
58
|
+
# subsequent calls to return additional results.
|
|
59
|
+
#
|
|
60
|
+
# ==== See Also
|
|
61
|
+
# http://docs.amazonwebservices.com/AutoScaling/latest/APIReference/API_DescribePolicies.html
|
|
62
|
+
#
|
|
63
|
+
def describe_policies(options = {})
|
|
64
|
+
if policy_names = options.delete('PolicyNames')
|
|
65
|
+
options.merge!(AWS.indexed_param('PolicyNames.member.%d', [*policy_names]))
|
|
66
|
+
end
|
|
67
|
+
request({
|
|
68
|
+
'Action' => 'DescribePolicies',
|
|
69
|
+
:parser => Fog::Parsers::AWS::AutoScaling::DescribePolicies.new
|
|
70
|
+
}.merge!(options))
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
class Mock
|
|
76
|
+
|
|
77
|
+
def describe_policies(options = {})
|
|
78
|
+
Fog::Mock.not_implemented
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
end
|
|
84
|
+
end
|
|
85
|
+
end
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module AWS
|
|
3
|
+
class AutoScaling
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
require 'fog/aws/parsers/auto_scaling/describe_scaling_activities'
|
|
8
|
+
|
|
9
|
+
# Returns the scaling activities for the specified Auto Scaling group.
|
|
10
|
+
#
|
|
11
|
+
# If the specified activity_ids list is empty, all the activities from
|
|
12
|
+
# the past six weeks are returned. Activities are sorted by completion
|
|
13
|
+
# time. Activities still in progress appear first on the list.
|
|
14
|
+
#
|
|
15
|
+
# This action supports pagination. If the response includes a token,
|
|
16
|
+
# there are more records available. To get the additional records,
|
|
17
|
+
# repeat the request with the response token as the NextToken
|
|
18
|
+
# parameter.
|
|
19
|
+
#
|
|
20
|
+
# ==== Parameters
|
|
21
|
+
# * options<~Hash>:
|
|
22
|
+
# * 'ActivityIds'<~Array> - A list containing the activity IDs of the
|
|
23
|
+
# desired scaling activities. If this list is omitted, all
|
|
24
|
+
# activities are described. If an AutoScalingGroupName is provided,
|
|
25
|
+
# the results are limited to that group. The list of requested
|
|
26
|
+
# activities cannot contain more than 50 items. If unknown
|
|
27
|
+
# activities are requested, they are ignored with no error.
|
|
28
|
+
# * 'AutoScalingGroupName'<~String> - The name of the Auto Scaling
|
|
29
|
+
# group.
|
|
30
|
+
# * 'MaxRecords'<~Integer> - The maximum number of scaling activities
|
|
31
|
+
# to return.
|
|
32
|
+
# * 'NextToken'<~String> - The token returned by a previous call to
|
|
33
|
+
# indicate that there is more data available.
|
|
34
|
+
#
|
|
35
|
+
# ==== Returns
|
|
36
|
+
# * response<~Excon::Response>:
|
|
37
|
+
# * body<~Hash>:
|
|
38
|
+
# * 'ResponseMetadata'<~Hash>:
|
|
39
|
+
# * 'RequestId'<~String> - Id of request
|
|
40
|
+
# * 'DescribeScalingActivitiesResponse'<~Hash>:
|
|
41
|
+
# * 'Activities'<~Array>:
|
|
42
|
+
# * 'ActivityId'<~String> - Specifies the ID of the activity.
|
|
43
|
+
# * 'AutoScalingGroupName'<~String> - The name of the Auto
|
|
44
|
+
# Scaling group.
|
|
45
|
+
# * 'Cause'<~String> - Contins the reason the activity was
|
|
46
|
+
# begun.
|
|
47
|
+
# * 'Description'<~String> - Contains a friendly, more verbose
|
|
48
|
+
# description of the scaling activity.
|
|
49
|
+
# * 'EndTime'<~Time> - Provides the end time of this activity.
|
|
50
|
+
# * 'Progress'<~Integer> - Specifies a value between 0 and 100
|
|
51
|
+
# that indicates the progress of the activity.
|
|
52
|
+
# * 'StartTime'<~Time> - Provides the start time of this
|
|
53
|
+
# activity.
|
|
54
|
+
# * 'StatusCode'<~String> - Contains the current status of the
|
|
55
|
+
# activity.
|
|
56
|
+
# * 'StatusMessage'<~String> - Contains a friendly, more
|
|
57
|
+
# verbose description of the activity status.
|
|
58
|
+
# * 'NextToken'<~String> - Acts as a paging mechanism for large
|
|
59
|
+
# result sets. Set to a non-empty string if there are
|
|
60
|
+
# additional results waiting to be returned. Pass this in to
|
|
61
|
+
# subsequent calls to return additional results.
|
|
62
|
+
#
|
|
63
|
+
# ==== See Also
|
|
64
|
+
# http://docs.amazonwebservices.com/AutoScaling/latest/APIReference/API_DescribeScalingActivities.html
|
|
65
|
+
#
|
|
66
|
+
def describe_scaling_activities(options = {})
|
|
67
|
+
if activity_ids = options.delete('ActivityIds')
|
|
68
|
+
options.merge!(AWS.indexed_param('ActivityIds.member.%d', [*activity_ids]))
|
|
69
|
+
end
|
|
70
|
+
request({
|
|
71
|
+
'Action' => 'DescribeScalingActivities',
|
|
72
|
+
:parser => Fog::Parsers::AWS::AutoScaling::DescribeScalingActivities.new
|
|
73
|
+
}.merge!(options))
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
class Mock
|
|
79
|
+
|
|
80
|
+
def describe_scaling_activities(options = {})
|
|
81
|
+
Fog::Mock.not_implemented
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
end
|
|
85
|
+
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
end
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
module Fog
|
|
2
|
+
module AWS
|
|
3
|
+
class AutoScaling
|
|
4
|
+
|
|
5
|
+
class Real
|
|
6
|
+
|
|
7
|
+
require 'fog/aws/parsers/auto_scaling/describe_scaling_process_types'
|
|
8
|
+
|
|
9
|
+
# Returns scaling process types for use in the resume_processes and
|
|
10
|
+
# suspend_processes actions.
|
|
11
|
+
#
|
|
12
|
+
# ==== Returns
|
|
13
|
+
# * response<~Excon::Response>:
|
|
14
|
+
# * body<~Hash>:
|
|
15
|
+
# * 'ResponseMetadata'<~Hash>:
|
|
16
|
+
# * 'RequestId'<~String> - Id of request
|
|
17
|
+
# * 'DescribeScalingProcessTypesResult'<~Hash>:
|
|
18
|
+
# * 'Processes'<~Array>:
|
|
19
|
+
# * processtype<~Hash>:
|
|
20
|
+
# * 'ProcessName'<~String> - The name of a process.
|
|
21
|
+
#
|
|
22
|
+
# ==== See Also
|
|
23
|
+
# http://docs.amazonwebservices.com/AutoScaling/latest/APIReference/API_DescribeScalingProcessTypes.html
|
|
24
|
+
#
|
|
25
|
+
def describe_scaling_process_types()
|
|
26
|
+
request({
|
|
27
|
+
'Action' => 'DescribeScalingProcessTypes',
|
|
28
|
+
:parser => Fog::Parsers::AWS::AutoScaling::DescribeScalingProcessTypes.new
|
|
29
|
+
})
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
class Mock
|
|
35
|
+
|
|
36
|
+
def describe_scaling_process_types()
|
|
37
|
+
results = { 'Processes' => [] }
|
|
38
|
+
data[:process_types].each do |process_type|
|
|
39
|
+
results['Processes'] << { 'ProcessName' => process_type }
|
|
40
|
+
end
|
|
41
|
+
response = Excon::Response.new
|
|
42
|
+
response.status = 200
|
|
43
|
+
response.body = {
|
|
44
|
+
'DescribeScalingProcessTypesResult' => results,
|
|
45
|
+
'ResponseMetadata' => { 'RequestId' => Fog::AWS::Mock.request_id }
|
|
46
|
+
}
|
|
47
|
+
response
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|