[DRE-commits] [ruby-fog] 01/09: Imported Upstream version 1.24.0
Praveen Arimbrathodiyil
praveen at moszumanska.debian.org
Tue Nov 18 09:36:06 UTC 2014
This is an automated email from the git hooks/post-receive script.
praveen pushed a commit to branch master
in repository ruby-fog.
commit fd95ef15ced65c0a4b0b5728da638c89c73282bd
Author: Praveen Arimbrathodiyil <praveen at debian.org>
Date: Mon Nov 17 11:32:12 2014 +0530
Imported Upstream version 1.24.0
---
.rubocop.yml | 20 +
.rubocop_todo.yml | 606 ++++++++++++++
.travis.yml | 1 -
CHANGELOG.md | 651 +++++++++++++++
CONTRIBUTORS.md | 70 ++
Gemfile | 1 -
README.md | 1 -
Rakefile | 17 +-
benchs/parse_vs_push.rb | 2 -
checksums.yaml.gz | Bin 423 -> 0 bytes
fog.gemspec | 16 +-
gemfiles/Gemfile-edge | 3 -
gemfiles/Gemfile-ruby-1.8.7 | 1 +
lib/fog.rb | 3 +-
lib/fog/atmos/core.rb | 2 -
lib/fog/atmos/models/storage/directories.rb | 4 -
lib/fog/atmos/models/storage/directory.rb | 5 -
lib/fog/atmos/models/storage/file.rb | 4 -
lib/fog/atmos/models/storage/files.rb | 8 +-
lib/fog/atmos/requests/storage/delete_namespace.rb | 2 -
lib/fog/atmos/requests/storage/get_namespace.rb | 9 +-
lib/fog/atmos/requests/storage/head_namespace.rb | 2 -
lib/fog/atmos/requests/storage/post_namespace.rb | 2 -
lib/fog/atmos/requests/storage/put_namespace.rb | 2 -
lib/fog/atmos/storage.rb | 6 +-
lib/fog/aws/auto_scaling.rb | 3 -
lib/fog/aws/beanstalk.rb | 54 +-
lib/fog/aws/cdn.rb | 16 +-
lib/fog/aws/cloud_formation.rb | 50 +-
lib/fog/aws/cloud_watch.rb | 2 -
lib/fog/aws/compute.rb | 104 ++-
lib/fog/aws/core.rb | 11 +-
lib/fog/aws/credential_fetcher.rb | 1 -
lib/fog/aws/data_pipeline.rb | 18 +-
lib/fog/aws/dns.rb | 23 +-
lib/fog/aws/dynamodb.rb | 15 +-
lib/fog/aws/elasticache.rb | 58 +-
lib/fog/aws/elb.rb | 4 +-
lib/fog/aws/emr.rb | 34 +-
lib/fog/aws/glacier.rb | 27 +-
lib/fog/aws/iam.rb | 5 +-
lib/fog/aws/models/auto_scaling/activities.rb | 1 -
lib/fog/aws/models/auto_scaling/activity.rb | 2 -
lib/fog/aws/models/auto_scaling/configuration.rb | 5 +-
lib/fog/aws/models/auto_scaling/configurations.rb | 2 -
lib/fog/aws/models/auto_scaling/groups.rb | 1 -
lib/fog/aws/models/auto_scaling/instance.rb | 4 +-
lib/fog/aws/models/auto_scaling/instances.rb | 2 -
lib/fog/aws/models/beanstalk/application.rb | 3 -
lib/fog/aws/models/beanstalk/applications.rb | 2 -
lib/fog/aws/models/beanstalk/environment.rb | 4 -
lib/fog/aws/models/beanstalk/environments.rb | 2 -
lib/fog/aws/models/beanstalk/event.rb | 4 +-
lib/fog/aws/models/beanstalk/events.rb | 2 -
lib/fog/aws/models/beanstalk/template.rb | 2 -
lib/fog/aws/models/beanstalk/templates.rb | 4 +-
lib/fog/aws/models/beanstalk/version.rb | 2 -
lib/fog/aws/models/beanstalk/versions.rb | 2 -
lib/fog/aws/models/cdn/distribution.rb | 3 -
lib/fog/aws/models/cdn/distribution_helper.rb | 6 +-
lib/fog/aws/models/cdn/distributions.rb | 3 -
lib/fog/aws/models/cdn/distributions_helper.rb | 7 +-
lib/fog/aws/models/cdn/invalidation.rb | 4 -
lib/fog/aws/models/cdn/invalidations.rb | 4 -
lib/fog/aws/models/cdn/streaming_distribution.rb | 3 -
lib/fog/aws/models/cdn/streaming_distributions.rb | 3 -
lib/fog/aws/models/cloud_watch/alarm_data.rb | 3 +-
lib/fog/aws/models/cloud_watch/alarm_datum.rb | 1 -
lib/fog/aws/models/cloud_watch/alarm_histories.rb | 1 -
lib/fog/aws/models/cloud_watch/alarm_history.rb | 1 -
lib/fog/aws/models/cloud_watch/alarms.rb | 2 -
lib/fog/aws/models/cloud_watch/metric.rb | 3 +-
lib/fog/aws/models/cloud_watch/metric_statistic.rb | 1 -
.../aws/models/cloud_watch/metric_statistics.rb | 3 +-
lib/fog/aws/models/cloud_watch/metrics.rb | 6 +-
lib/fog/aws/models/compute/address.rb | 4 -
lib/fog/aws/models/compute/addresses.rb | 4 -
lib/fog/aws/models/compute/dhcp_option.rb | 2 -
lib/fog/aws/models/compute/dhcp_options.rb | 4 -
lib/fog/aws/models/compute/flavor.rb | 4 -
lib/fog/aws/models/compute/flavors.rb | 86 +-
lib/fog/aws/models/compute/image.rb | 7 +-
lib/fog/aws/models/compute/images.rb | 3 -
lib/fog/aws/models/compute/internet_gateway.rb | 3 -
lib/fog/aws/models/compute/internet_gateways.rb | 4 -
lib/fog/aws/models/compute/key_pair.rb | 8 +-
lib/fog/aws/models/compute/key_pairs.rb | 4 -
lib/fog/aws/models/compute/network_acl.rb | 16 +-
lib/fog/aws/models/compute/network_acls.rb | 2 -
lib/fog/aws/models/compute/network_interface.rb | 5 +-
lib/fog/aws/models/compute/network_interfaces.rb | 3 -
lib/fog/aws/models/compute/route_table.rb | 7 +-
lib/fog/aws/models/compute/route_tables.rb | 4 -
lib/fog/aws/models/compute/security_group.rb | 4 -
lib/fog/aws/models/compute/security_groups.rb | 3 -
lib/fog/aws/models/compute/server.rb | 43 +-
lib/fog/aws/models/compute/servers.rb | 117 ++-
lib/fog/aws/models/compute/snapshot.rb | 5 +-
lib/fog/aws/models/compute/snapshots.rb | 4 -
lib/fog/aws/models/compute/spot_request.rb | 3 -
lib/fog/aws/models/compute/spot_requests.rb | 15 +-
lib/fog/aws/models/compute/subnet.rb | 4 +-
lib/fog/aws/models/compute/subnets.rb | 4 -
lib/fog/aws/models/compute/tag.rb | 3 -
lib/fog/aws/models/compute/tags.rb | 3 -
lib/fog/aws/models/compute/volume.rb | 17 +-
lib/fog/aws/models/compute/volumes.rb | 4 -
lib/fog/aws/models/compute/vpc.rb | 15 +-
lib/fog/aws/models/compute/vpcs.rb | 4 -
lib/fog/aws/models/data_pipeline/pipeline.rb | 8 +-
lib/fog/aws/models/data_pipeline/pipelines.rb | 3 -
lib/fog/aws/models/dns/record.rb | 35 +-
lib/fog/aws/models/dns/records.rb | 8 +-
lib/fog/aws/models/dns/zone.rb | 4 -
lib/fog/aws/models/dns/zones.rb | 4 -
lib/fog/aws/models/elasticache/cluster.rb | 27 +-
lib/fog/aws/models/elasticache/clusters.rb | 2 -
lib/fog/aws/models/elasticache/parameter_group.rb | 4 -
lib/fog/aws/models/elasticache/parameter_groups.rb | 2 -
lib/fog/aws/models/elasticache/security_group.rb | 4 -
lib/fog/aws/models/elasticache/security_groups.rb | 2 -
lib/fog/aws/models/elasticache/subnet_group.rb | 3 -
lib/fog/aws/models/elasticache/subnet_groups.rb | 3 -
.../aws/models/elb/backend_server_descriptions.rb | 4 +-
lib/fog/aws/models/elb/listener.rb | 3 -
lib/fog/aws/models/elb/listeners.rb | 4 +-
lib/fog/aws/models/elb/load_balancer.rb | 20 +-
lib/fog/aws/models/elb/load_balancers.rb | 1 -
lib/fog/aws/models/elb/policies.rb | 13 +-
lib/fog/aws/models/elb/policy.rb | 3 -
lib/fog/aws/models/glacier/archive.rb | 4 -
lib/fog/aws/models/glacier/archives.rb | 4 -
lib/fog/aws/models/glacier/job.rb | 4 -
lib/fog/aws/models/glacier/jobs.rb | 5 -
lib/fog/aws/models/glacier/vault.rb | 3 -
lib/fog/aws/models/glacier/vaults.rb | 4 -
lib/fog/aws/models/iam/access_key.rb | 3 -
lib/fog/aws/models/iam/access_keys.rb | 3 -
lib/fog/aws/models/iam/policies.rb | 4 -
lib/fog/aws/models/iam/policy.rb | 3 -
lib/fog/aws/models/iam/role.rb | 12 +-
lib/fog/aws/models/iam/roles.rb | 5 +-
lib/fog/aws/models/iam/user.rb | 3 -
lib/fog/aws/models/iam/users.rb | 4 +-
lib/fog/aws/models/rds/instance_option.rb | 3 -
lib/fog/aws/models/rds/instance_options.rb | 2 -
lib/fog/aws/models/rds/log_file.rb | 4 -
lib/fog/aws/models/rds/log_files.rb | 2 -
lib/fog/aws/models/rds/parameter.rb | 3 -
lib/fog/aws/models/rds/parameter_group.rb | 4 +-
lib/fog/aws/models/rds/parameter_groups.rb | 3 -
lib/fog/aws/models/rds/parameters.rb | 1 -
lib/fog/aws/models/rds/security_group.rb | 3 -
lib/fog/aws/models/rds/security_groups.rb | 2 -
lib/fog/aws/models/rds/server.rb | 7 +-
lib/fog/aws/models/rds/servers.rb | 3 -
lib/fog/aws/models/rds/snapshot.rb | 3 -
lib/fog/aws/models/rds/snapshots.rb | 2 -
lib/fog/aws/models/rds/subnet_group.rb | 3 -
lib/fog/aws/models/rds/subnet_groups.rb | 3 -
lib/fog/aws/models/storage/directories.rb | 4 -
lib/fog/aws/models/storage/directory.rb | 5 +-
lib/fog/aws/models/storage/file.rb | 89 +--
lib/fog/aws/models/storage/files.rb | 5 +-
lib/fog/aws/models/storage/version.rb | 3 -
lib/fog/aws/models/storage/versions.rb | 4 -
lib/fog/aws/parsers/auto_scaling/basic.rb | 4 -
.../auto_scaling/describe_adjustment_types.rb | 3 -
.../auto_scaling/describe_auto_scaling_groups.rb | 3 -
.../describe_auto_scaling_instances.rb | 3 -
.../describe_auto_scaling_notification_types.rb | 3 -
.../auto_scaling/describe_launch_configurations.rb | 3 -
.../describe_metric_collection_types.rb | 4 +-
.../describe_notification_configurations.rb | 3 -
.../aws/parsers/auto_scaling/describe_policies.rb | 3 -
.../auto_scaling/describe_scaling_activities.rb | 3 -
.../auto_scaling/describe_scaling_process_types.rb | 3 -
.../auto_scaling/describe_scheduled_actions.rb | 3 -
lib/fog/aws/parsers/auto_scaling/describe_tags.rb | 4 -
.../describe_termination_policy_types.rb | 4 -
.../auto_scaling/put_notification_configuration.rb | 5 +-
.../aws/parsers/auto_scaling/put_scaling_policy.rb | 3 -
.../terminate_instance_in_auto_scaling_group.rb | 3 -
.../parsers/beanstalk/check_dns_availability.rb | 5 +-
.../aws/parsers/beanstalk/create_application.rb | 3 -
.../beanstalk/create_application_version.rb | 3 -
.../beanstalk/create_configuration_template.rb | 3 -
.../aws/parsers/beanstalk/create_environment.rb | 3 -
.../parsers/beanstalk/create_storage_location.rb | 3 -
.../beanstalk/describe_application_versions.rb | 3 -
.../aws/parsers/beanstalk/describe_applications.rb | 3 -
.../beanstalk/describe_configuration_options.rb | 3 -
.../beanstalk/describe_configuration_settings.rb | 3 -
.../beanstalk/describe_environment_resources.rb | 3 -
.../aws/parsers/beanstalk/describe_environments.rb | 3 -
lib/fog/aws/parsers/beanstalk/describe_events.rb | 3 -
lib/fog/aws/parsers/beanstalk/empty.rb | 7 -
.../beanstalk/list_available_solution_stacks.rb | 3 -
lib/fog/aws/parsers/beanstalk/parser.rb | 15 +-
.../parsers/beanstalk/retrieve_environment_info.rb | 3 -
.../aws/parsers/beanstalk/terminate_environment.rb | 3 -
.../aws/parsers/beanstalk/update_application.rb | 3 -
.../beanstalk/update_application_version.rb | 3 -
.../beanstalk/update_configuration_template.rb | 3 -
.../aws/parsers/beanstalk/update_environment.rb | 3 -
.../beanstalk/validate_configuration_settings.rb | 3 -
lib/fog/aws/parsers/cdn/distribution.rb | 4 -
lib/fog/aws/parsers/cdn/get_distribution_list.rb | 4 -
lib/fog/aws/parsers/cdn/get_invalidation.rb | 4 -
lib/fog/aws/parsers/cdn/get_invalidation_list.rb | 4 -
.../parsers/cdn/get_streaming_distribution_list.rb | 4 -
lib/fog/aws/parsers/cdn/post_invalidation.rb | 4 -
lib/fog/aws/parsers/cdn/streaming_distribution.rb | 5 +-
lib/fog/aws/parsers/cloud_formation/basic.rb | 2 -
.../aws/parsers/cloud_formation/create_stack.rb | 3 -
.../cloud_formation/describe_stack_events.rb | 3 -
.../cloud_formation/describe_stack_resources.rb | 3 -
.../aws/parsers/cloud_formation/describe_stacks.rb | 11 +-
.../aws/parsers/cloud_formation/get_template.rb | 3 -
.../cloud_formation/list_stack_resources.rb | 2 -
lib/fog/aws/parsers/cloud_formation/list_stacks.rb | 2 -
.../aws/parsers/cloud_formation/update_stack.rb | 3 -
.../parsers/cloud_formation/validate_template.rb | 3 -
lib/fog/aws/parsers/cloud_watch/delete_alarms.rb | 2 -
.../parsers/cloud_watch/describe_alarm_history.rb | 4 +-
lib/fog/aws/parsers/cloud_watch/describe_alarms.rb | 6 +-
.../cloud_watch/describe_alarms_for_metric.rb | 8 +-
.../parsers/cloud_watch/disable_alarm_actions.rb | 4 +-
.../parsers/cloud_watch/enable_alarm_actions.rb | 4 +-
.../parsers/cloud_watch/get_metric_statistics.rb | 3 -
lib/fog/aws/parsers/cloud_watch/list_metrics.rb | 2 -
.../aws/parsers/cloud_watch/put_metric_alarm.rb | 2 -
lib/fog/aws/parsers/cloud_watch/put_metric_data.rb | 2 -
lib/fog/aws/parsers/cloud_watch/set_alarm_state.rb | 4 +-
lib/fog/aws/parsers/compute/allocate_address.rb | 3 -
.../parsers/compute/assign_private_ip_addresses.rb | 3 -
lib/fog/aws/parsers/compute/associate_address.rb | 3 -
.../aws/parsers/compute/associate_route_table.rb | 4 -
.../parsers/compute/attach_network_interface.rb | 2 -
lib/fog/aws/parsers/compute/attach_volume.rb | 4 -
lib/fog/aws/parsers/compute/basic.rb | 3 -
.../compute/cancel_spot_instance_requests.rb | 4 -
lib/fog/aws/parsers/compute/copy_image.rb | 4 -
lib/fog/aws/parsers/compute/copy_snapshot.rb | 4 -
lib/fog/aws/parsers/compute/create_dhcp_options.rb | 8 +-
lib/fog/aws/parsers/compute/create_image.rb | 4 -
.../aws/parsers/compute/create_internet_gateway.rb | 4 -
lib/fog/aws/parsers/compute/create_key_pair.rb | 4 -
lib/fog/aws/parsers/compute/create_route_table.rb | 4 -
.../aws/parsers/compute/create_security_group.rb | 2 -
lib/fog/aws/parsers/compute/create_snapshot.rb | 4 -
lib/fog/aws/parsers/compute/create_subnet.rb | 4 -
lib/fog/aws/parsers/compute/create_volume.rb | 6 +-
lib/fog/aws/parsers/compute/create_vpc.rb | 4 -
lib/fog/aws/parsers/compute/deregister_image.rb | 4 -
.../parsers/compute/describe_account_attributes.rb | 1 -
lib/fog/aws/parsers/compute/describe_addresses.rb | 4 -
.../parsers/compute/describe_availability_zones.rb | 3 -
.../aws/parsers/compute/describe_dhcp_options.rb | 8 +-
lib/fog/aws/parsers/compute/describe_images.rb | 2 -
.../parsers/compute/describe_instance_status.rb | 1 -
lib/fog/aws/parsers/compute/describe_instances.rb | 6 +-
.../parsers/compute/describe_internet_gateways.rb | 7 +-
lib/fog/aws/parsers/compute/describe_key_pairs.rb | 4 -
.../describe_network_interface_attribute.rb | 2 -
.../parsers/compute/describe_network_interfaces.rb | 1 -
.../parsers/compute/describe_placement_groups.rb | 4 -
lib/fog/aws/parsers/compute/describe_regions.rb | 4 -
.../parsers/compute/describe_reserved_instances.rb | 5 -
.../describe_reserved_instances_offerings.rb | 4 -
.../aws/parsers/compute/describe_route_tables.rb | 4 -
.../parsers/compute/describe_security_groups.rb | 4 -
lib/fog/aws/parsers/compute/describe_snapshots.rb | 6 +-
.../parsers/compute/describe_spot_price_history.rb | 4 -
lib/fog/aws/parsers/compute/describe_subnets.rb | 4 +-
lib/fog/aws/parsers/compute/describe_tags.rb | 4 -
lib/fog/aws/parsers/compute/describe_volumes.rb | 4 +-
.../aws/parsers/compute/describe_vpc_attribute.rb | 48 ++
lib/fog/aws/parsers/compute/describe_vpcs.rb | 2 -
lib/fog/aws/parsers/compute/detach_volume.rb | 4 -
lib/fog/aws/parsers/compute/get_console_output.rb | 4 -
lib/fog/aws/parsers/compute/get_password_data.rb | 4 -
lib/fog/aws/parsers/compute/import_key_pair.rb | 4 -
.../aws/parsers/compute/modify_subnet_attribute.rb | 24 +
.../parsers/compute/monitor_unmonitor_instances.rb | 4 -
lib/fog/aws/parsers/compute/network_acl_parser.rb | 4 +-
.../parsers/compute/network_interface_parser.rb | 9 +-
.../purchase_reserved_instances_offering.rb | 4 -
lib/fog/aws/parsers/compute/register_image.rb | 4 -
lib/fog/aws/parsers/compute/run_instances.rb | 4 -
.../parsers/compute/spot_datafeed_subscription.rb | 4 -
.../aws/parsers/compute/spot_instance_requests.rb | 10 +-
.../aws/parsers/compute/start_stop_instances.rb | 4 -
lib/fog/aws/parsers/compute/terminate_instances.rb | 4 -
.../aws/parsers/dns/change_resource_record_sets.rb | 4 -
lib/fog/aws/parsers/dns/create_health_check.rb | 0
lib/fog/aws/parsers/dns/create_hosted_zone.rb | 4 -
lib/fog/aws/parsers/dns/delete_hosted_zone.rb | 4 -
lib/fog/aws/parsers/dns/get_change.rb | 4 -
lib/fog/aws/parsers/dns/get_hosted_zone.rb | 4 -
lib/fog/aws/parsers/dns/health_check.rb | 33 +
lib/fog/aws/parsers/dns/list_health_checks.rb | 41 +
lib/fog/aws/parsers/dns/list_hosted_zones.rb | 4 -
.../aws/parsers/dns/list_resource_record_sets.rb | 14 +-
.../authorize_cache_security_group_ingress.rb | 5 -
lib/fog/aws/parsers/elasticache/base.rb | 4 -
.../parsers/elasticache/cache_cluster_parser.rb | 2 -
.../elasticache/create_cache_subnet_group.rb | 6 -
.../parsers/elasticache/describe_cache_clusters.rb | 1 -
.../elasticache/describe_cache_parameters.rb | 1 -
.../elasticache/describe_cache_subnet_groups.rb | 4 -
.../describe_engine_default_parameters.rb | 1 -
.../elasticache/describe_parameter_groups.rb | 1 -
.../elasticache/describe_reserved_cache_nodes.rb | 5 -
.../elasticache/describe_security_groups.rb | 1 -
.../parsers/elasticache/engine_defaults_parser.rb | 1 -
lib/fog/aws/parsers/elasticache/event_list.rb | 2 -
.../parsers/elasticache/modify_parameter_group.rb | 1 -
.../parsers/elasticache/parameter_group_parser.rb | 1 -
.../parsers/elasticache/reset_parameter_group.rb | 1 -
.../parsers/elasticache/security_group_parser.rb | 2 -
.../parsers/elasticache/single_cache_cluster.rb | 1 -
.../parsers/elasticache/single_parameter_group.rb | 1 -
.../parsers/elasticache/single_security_group.rb | 1 -
.../aws/parsers/elasticache/subnet_group_parser.rb | 3 -
.../elb/apply_security_groups_to_load_balancer.rb | 4 -
.../parsers/elb/attach_load_balancer_to_subnets.rb | 4 -
lib/fog/aws/parsers/elb/configure_health_check.rb | 4 -
lib/fog/aws/parsers/elb/create_load_balancer.rb | 4 -
lib/fog/aws/parsers/elb/delete_load_balancer.rb | 4 -
.../elb/deregister_instances_from_load_balancer.rb | 4 -
.../aws/parsers/elb/describe_instance_health.rb | 4 -
.../elb/describe_load_balancer_attributes.rb | 15 +-
.../parsers/elb/describe_load_balancer_policies.rb | 4 -
.../elb/describe_load_balancer_policy_types.rb | 4 -
lib/fog/aws/parsers/elb/describe_load_balancers.rb | 4 -
.../elb/detach_load_balancer_from_subnets.rb | 4 -
...disable_availability_zones_for_load_balancer.rb | 4 -
lib/fog/aws/parsers/elb/empty.rb | 4 -
.../enable_availability_zones_for_load_balancer.rb | 4 -
.../elb/register_instances_with_load_balancer.rb | 4 -
lib/fog/aws/parsers/emr/add_instance_groups.rb | 2 -
lib/fog/aws/parsers/emr/add_job_flow_steps.rb | 1 -
lib/fog/aws/parsers/emr/describe_job_flows.rb | 3 -
lib/fog/aws/parsers/emr/modify_instance_groups.rb | 1 -
lib/fog/aws/parsers/emr/run_job_flow.rb | 1 -
.../aws/parsers/emr/set_termination_protection.rb | 1 -
lib/fog/aws/parsers/emr/terminate_job_flows.rb | 1 -
lib/fog/aws/parsers/iam/base_instance_profile.rb | 4 -
lib/fog/aws/parsers/iam/basic.rb | 3 -
lib/fog/aws/parsers/iam/create_access_key.rb | 4 -
lib/fog/aws/parsers/iam/create_group.rb | 4 -
lib/fog/aws/parsers/iam/create_user.rb | 4 -
.../aws/parsers/iam/get_account_password_policy.rb | 26 +
lib/fog/aws/parsers/iam/get_account_summary.rb | 4 -
lib/fog/aws/parsers/iam/get_group.rb | 5 +-
lib/fog/aws/parsers/iam/get_group_policy.rb | 3 -
lib/fog/aws/parsers/iam/get_role_policy.rb | 4 -
lib/fog/aws/parsers/iam/get_user.rb | 3 -
lib/fog/aws/parsers/iam/get_user_policy.rb | 3 -
lib/fog/aws/parsers/iam/instance_profile.rb | 6 -
lib/fog/aws/parsers/iam/list_access_keys.rb | 4 -
lib/fog/aws/parsers/iam/list_account_aliases.rb | 4 -
lib/fog/aws/parsers/iam/list_groups.rb | 4 -
lib/fog/aws/parsers/iam/list_groups_for_user.rb | 4 -
lib/fog/aws/parsers/iam/list_instance_profiles.rb | 5 -
lib/fog/aws/parsers/iam/list_mfa_devices.rb | 4 -
lib/fog/aws/parsers/iam/list_policies.rb | 4 -
lib/fog/aws/parsers/iam/list_roles.rb | 2 -
.../aws/parsers/iam/list_server_certificates.rb | 4 -
.../aws/parsers/iam/list_signing_certificates.rb | 4 -
lib/fog/aws/parsers/iam/list_users.rb | 4 -
lib/fog/aws/parsers/iam/login_profile.rb | 3 -
lib/fog/aws/parsers/iam/role_parser.rb | 4 -
lib/fog/aws/parsers/iam/single_role.rb | 2 -
lib/fog/aws/parsers/iam/update_group.rb | 3 -
lib/fog/aws/parsers/iam/update_user.rb | 3 -
.../aws/parsers/iam/upload_server_certificate.rb | 4 -
.../aws/parsers/iam/upload_signing_certificate.rb | 4 -
.../rds/authorize_db_security_group_ingress.rb | 6 -
lib/fog/aws/parsers/rds/base.rb | 4 -
lib/fog/aws/parsers/rds/create_db_instance.rb | 2 -
.../parsers/rds/create_db_instance_read_replica.rb | 2 -
.../aws/parsers/rds/create_db_parameter_group.rb | 2 -
.../aws/parsers/rds/create_db_security_group.rb | 6 -
lib/fog/aws/parsers/rds/create_db_snapshot.rb | 3 -
lib/fog/aws/parsers/rds/create_db_subnet_group.rb | 6 -
.../aws/parsers/rds/db_engine_version_parser.rb | 3 -
lib/fog/aws/parsers/rds/db_parser.rb | 23 +-
lib/fog/aws/parsers/rds/delete_db_instance.rb | 2 -
.../aws/parsers/rds/delete_db_parameter_group.rb | 2 -
.../aws/parsers/rds/delete_db_security_group.rb | 4 -
lib/fog/aws/parsers/rds/delete_db_snapshot.rb | 2 -
lib/fog/aws/parsers/rds/delete_db_subnet_group.rb | 6 -
.../aws/parsers/rds/describe_db_engine_versions.rb | 5 -
lib/fog/aws/parsers/rds/describe_db_instances.rb | 2 -
lib/fog/aws/parsers/rds/describe_db_log_files.rb | 2 -
.../parsers/rds/describe_db_parameter_groups.rb | 5 -
lib/fog/aws/parsers/rds/describe_db_parameters.rb | 2 -
.../parsers/rds/describe_db_reserved_instances.rb | 5 -
.../aws/parsers/rds/describe_db_security_groups.rb | 5 -
lib/fog/aws/parsers/rds/describe_db_snapshots.rb | 5 -
.../aws/parsers/rds/describe_db_subnet_groups.rb | 4 -
.../rds/describe_orderable_db_instance_options.rb | 2 -
.../aws/parsers/rds/download_db_logfile_portion.rb | 4 -
lib/fog/aws/parsers/rds/event_list.rb | 2 -
lib/fog/aws/parsers/rds/modify_db_instance.rb | 2 -
.../aws/parsers/rds/modify_db_parameter_group.rb | 2 -
lib/fog/aws/parsers/rds/promote_read_replica.rb | 32 +
lib/fog/aws/parsers/rds/reboot_db_instance.rb | 2 -
.../rds/restore_db_instance_from_db_snapshot.rb | 2 -
.../rds/restore_db_instance_to_point_in_time.rb | 3 -
.../rds/revoke_db_security_group_ingress.rb | 7 -
lib/fog/aws/parsers/rds/security_group_parser.rb | 3 -
lib/fog/aws/parsers/rds/snapshot_parser.rb | 3 -
lib/fog/aws/parsers/rds/subnet_group_parser.rb | 3 -
lib/fog/aws/parsers/rds/tag_list_parser.rb | 2 -
lib/fog/aws/parsers/redshift/cluster.rb | 1 -
lib/fog/aws/parsers/redshift/cluster_parser.rb | 1 -
.../redshift/cluster_security_group_parser.rb | 1 -
lib/fog/aws/parsers/redshift/cluster_snapshot.rb | 1 -
.../parsers/redshift/cluster_snapshot_parser.rb | 1 -
.../redshift/cluster_subnet_group_parser.rb | 1 -
.../redshift/create_cluster_parameter_group.rb | 1 -
.../redshift/create_cluster_security_group.rb | 1 -
.../redshift/describe_cluster_parameter_groups.rb | 1 -
.../redshift/describe_cluster_parameters.rb | 1 -
.../redshift/describe_cluster_security_groups.rb | 1 -
.../parsers/redshift/describe_cluster_snapshots.rb | 1 -
.../redshift/describe_cluster_subnet_groups.rb | 3 -
.../parsers/redshift/describe_cluster_versions.rb | 3 -
lib/fog/aws/parsers/redshift/describe_clusters.rb | 1 -
.../describe_default_cluster_parameters.rb | 1 -
lib/fog/aws/parsers/redshift/describe_events.rb | 1 -
.../redshift/describe_orderable_cluster_options.rb | 1 -
.../redshift/describe_reserved_node_offerings.rb | 1 -
.../parsers/redshift/describe_reserved_nodes.rb | 1 -
lib/fog/aws/parsers/redshift/describe_resize.rb | 2 -
.../redshift/purchase_reserved_node_offering.rb | 2 -
.../revoke_cluster_security_group_ingress.rb | 1 -
.../update_cluster_parameter_group_parser.rb | 1 -
.../parsers/ses/delete_verified_email_address.rb | 4 -
lib/fog/aws/parsers/ses/get_send_quota.rb | 4 -
lib/fog/aws/parsers/ses/get_send_statistics.rb | 3 -
.../parsers/ses/list_verified_email_addresses.rb | 3 -
lib/fog/aws/parsers/ses/send_email.rb | 4 -
lib/fog/aws/parsers/ses/send_raw_email.rb | 4 -
lib/fog/aws/parsers/ses/verify_domain_identity.rb | 4 -
lib/fog/aws/parsers/ses/verify_email_address.rb | 4 -
lib/fog/aws/parsers/simpledb/basic.rb | 4 -
lib/fog/aws/parsers/simpledb/domain_metadata.rb | 4 -
lib/fog/aws/parsers/simpledb/get_attributes.rb | 4 -
lib/fog/aws/parsers/simpledb/list_domains.rb | 4 -
lib/fog/aws/parsers/simpledb/select.rb | 4 -
lib/fog/aws/parsers/sns/add_permission.rb | 4 -
lib/fog/aws/parsers/sns/confirm_subscription.rb | 4 -
lib/fog/aws/parsers/sns/create_topic.rb | 4 -
lib/fog/aws/parsers/sns/delete_topic.rb | 4 -
lib/fog/aws/parsers/sns/get_topic_attributes.rb | 3 -
lib/fog/aws/parsers/sns/list_subscriptions.rb | 3 -
lib/fog/aws/parsers/sns/list_topics.rb | 4 -
lib/fog/aws/parsers/sns/publish.rb | 4 -
lib/fog/aws/parsers/sns/remove_permission.rb | 4 -
lib/fog/aws/parsers/sns/set_topic_attributes.rb | 4 -
lib/fog/aws/parsers/sns/subscribe.rb | 4 -
lib/fog/aws/parsers/sns/unsubscribe.rb | 4 -
lib/fog/aws/parsers/sqs/basic.rb | 3 -
lib/fog/aws/parsers/sqs/create_queue.rb | 4 -
lib/fog/aws/parsers/sqs/get_queue_attributes.rb | 4 -
lib/fog/aws/parsers/sqs/list_queues.rb | 3 -
lib/fog/aws/parsers/sqs/receive_message.rb | 4 -
lib/fog/aws/parsers/sqs/send_message.rb | 4 -
lib/fog/aws/parsers/storage/access_control_list.rb | 4 -
.../parsers/storage/complete_multipart_upload.rb | 4 -
lib/fog/aws/parsers/storage/copy_object.rb | 4 -
lib/fog/aws/parsers/storage/cors_configuration.rb | 3 -
.../aws/parsers/storage/delete_multiple_objects.rb | 5 -
lib/fog/aws/parsers/storage/get_bucket.rb | 4 -
.../aws/parsers/storage/get_bucket_lifecycle.rb | 2 -
lib/fog/aws/parsers/storage/get_bucket_location.rb | 4 -
lib/fog/aws/parsers/storage/get_bucket_logging.rb | 4 -
.../parsers/storage/get_bucket_object_versions.rb | 4 -
lib/fog/aws/parsers/storage/get_bucket_tagging.rb | 4 -
.../aws/parsers/storage/get_bucket_versioning.rb | 4 -
lib/fog/aws/parsers/storage/get_bucket_website.rb | 4 -
lib/fog/aws/parsers/storage/get_request_payment.rb | 4 -
lib/fog/aws/parsers/storage/get_service.rb | 4 -
.../parsers/storage/initiate_multipart_upload.rb | 4 -
.../aws/parsers/storage/list_multipart_uploads.rb | 4 -
lib/fog/aws/parsers/storage/list_parts.rb | 4 -
lib/fog/aws/parsers/sts/assume_role.rb | 4 -
lib/fog/aws/parsers/sts/get_session_token.rb | 3 -
lib/fog/aws/rds.rb | 75 +-
lib/fog/aws/redshift.rb | 25 +-
lib/fog/aws/region_methods.rb | 6 +-
.../auto_scaling/create_auto_scaling_group.rb | 10 +-
.../auto_scaling/create_launch_configuration.rb | 11 +-
.../requests/auto_scaling/create_or_update_tags.rb | 6 -
.../auto_scaling/delete_auto_scaling_group.rb | 5 -
.../auto_scaling/delete_launch_configuration.rb | 6 -
.../delete_notification_configuration.rb | 9 +-
lib/fog/aws/requests/auto_scaling/delete_policy.rb | 6 -
.../auto_scaling/delete_scheduled_action.rb | 6 -
lib/fog/aws/requests/auto_scaling/delete_tags.rb | 6 -
.../auto_scaling/describe_adjustment_types.rb | 5 -
.../auto_scaling/describe_auto_scaling_groups.rb | 6 -
.../describe_auto_scaling_instances.rb | 6 -
.../describe_auto_scaling_notification_types.rb | 5 -
.../auto_scaling/describe_launch_configurations.rb | 6 -
.../describe_metric_collection_types.rb | 5 -
.../describe_notification_configurations.rb | 6 -
.../aws/requests/auto_scaling/describe_policies.rb | 6 -
.../auto_scaling/describe_scaling_activities.rb | 6 -
.../auto_scaling/describe_scaling_process_types.rb | 6 -
.../auto_scaling/describe_scheduled_actions.rb | 6 -
lib/fog/aws/requests/auto_scaling/describe_tags.rb | 6 -
.../describe_termination_policy_types.rb | 6 -
.../auto_scaling/disable_metrics_collection.rb | 8 +-
.../auto_scaling/enable_metrics_collection.rb | 8 +-
.../aws/requests/auto_scaling/execute_policy.rb | 6 -
.../auto_scaling/put_notification_configuration.rb | 8 +-
.../requests/auto_scaling/put_scaling_policy.rb | 8 +-
.../put_scheduled_update_group_action.rb | 6 -
.../aws/requests/auto_scaling/resume_processes.rb | 8 +-
.../requests/auto_scaling/set_desired_capacity.rb | 8 +-
.../requests/auto_scaling/set_instance_health.rb | 6 -
.../aws/requests/auto_scaling/suspend_processes.rb | 8 +-
.../terminate_instance_in_auto_scaling_group.rb | 6 -
.../auto_scaling/update_auto_scaling_group.rb | 7 +-
.../requests/beanstalk/check_dns_availability.rb | 1 -
.../aws/requests/beanstalk/create_application.rb | 1 -
.../beanstalk/create_application_version.rb | 1 -
.../beanstalk/create_configuration_template.rb | 1 -
.../aws/requests/beanstalk/create_environment.rb | 1 -
.../requests/beanstalk/create_storage_location.rb | 1 -
.../aws/requests/beanstalk/delete_application.rb | 1 -
.../beanstalk/delete_application_version.rb | 1 -
.../beanstalk/delete_configuration_template.rb | 1 -
.../beanstalk/delete_environment_configuration.rb | 1 -
.../beanstalk/describe_application_versions.rb | 1 -
.../requests/beanstalk/describe_applications.rb | 1 -
.../beanstalk/describe_configuration_options.rb | 1 -
.../beanstalk/describe_configuration_settings.rb | 1 -
.../beanstalk/describe_environment_resources.rb | 1 -
.../requests/beanstalk/describe_environments.rb | 1 -
lib/fog/aws/requests/beanstalk/describe_events.rb | 1 -
.../beanstalk/list_available_solution_stacks.rb | 1 -
.../aws/requests/beanstalk/rebuild_environment.rb | 1 -
.../requests/beanstalk/request_environment_info.rb | 1 -
.../aws/requests/beanstalk/restart_app_server.rb | 1 -
.../beanstalk/retrieve_environment_info.rb | 1 -
.../requests/beanstalk/swap_environment_cnames.rb | 1 -
.../requests/beanstalk/terminate_environment.rb | 1 -
.../aws/requests/beanstalk/update_application.rb | 1 -
.../beanstalk/update_application_version.rb | 1 -
.../beanstalk/update_configuration_template.rb | 1 -
.../aws/requests/beanstalk/update_environment.rb | 1 -
.../beanstalk/validate_configuration_settings.rb | 1 -
lib/fog/aws/requests/cdn/delete_distribution.rb | 5 -
.../requests/cdn/delete_streaming_distribution.rb | 5 -
lib/fog/aws/requests/cdn/get_distribution.rb | 4 -
lib/fog/aws/requests/cdn/get_distribution_list.rb | 3 -
lib/fog/aws/requests/cdn/get_invalidation.rb | 4 -
lib/fog/aws/requests/cdn/get_invalidation_list.rb | 5 -
.../aws/requests/cdn/get_streaming_distribution.rb | 4 -
.../cdn/get_streaming_distribution_list.rb | 4 -
lib/fog/aws/requests/cdn/post_distribution.rb | 3 -
lib/fog/aws/requests/cdn/post_invalidation.rb | 5 -
.../requests/cdn/post_streaming_distribution.rb | 5 -
.../aws/requests/cdn/put_distribution_config.rb | 4 -
.../cdn/put_streaming_distribution_config.rb | 4 -
.../aws/requests/cloud_formation/create_stack.rb | 2 -
.../aws/requests/cloud_formation/delete_stack.rb | 2 -
.../cloud_formation/describe_stack_events.rb | 2 -
.../cloud_formation/describe_stack_resources.rb | 2 -
.../requests/cloud_formation/describe_stacks.rb | 2 -
.../aws/requests/cloud_formation/get_template.rb | 2 -
.../cloud_formation/list_stack_resources.rb | 2 -
.../aws/requests/cloud_formation/list_stacks.rb | 2 -
.../aws/requests/cloud_formation/update_stack.rb | 2 -
.../requests/cloud_formation/validate_template.rb | 2 -
lib/fog/aws/requests/cloud_watch/delete_alarms.rb | 3 +-
.../requests/cloud_watch/describe_alarm_history.rb | 1 -
.../aws/requests/cloud_watch/describe_alarms.rb | 1 -
.../cloud_watch/describe_alarms_for_metric.rb | 5 +-
.../requests/cloud_watch/disable_alarm_actions.rb | 1 -
.../requests/cloud_watch/enable_alarm_actions.rb | 1 -
.../requests/cloud_watch/get_metric_statistics.rb | 8 +-
lib/fog/aws/requests/cloud_watch/list_metrics.rb | 7 +-
.../aws/requests/cloud_watch/put_metric_alarm.rb | 6 +-
.../aws/requests/cloud_watch/put_metric_data.rb | 9 +-
.../aws/requests/cloud_watch/set_alarm_state.rb | 1 -
lib/fog/aws/requests/compute/allocate_address.rb | 4 -
.../compute/assign_private_ip_addresses.rb | 5 -
lib/fog/aws/requests/compute/associate_address.rb | 7 +-
.../aws/requests/compute/associate_dhcp_options.rb | 4 -
.../aws/requests/compute/associate_route_table.rb | 5 -
.../requests/compute/attach_internet_gateway.rb | 4 -
.../requests/compute/attach_network_interface.rb | 12 +-
lib/fog/aws/requests/compute/attach_volume.rb | 4 -
.../compute/authorize_security_group_ingress.rb | 19 +-
.../compute/cancel_spot_instance_requests.rb | 2 -
lib/fog/aws/requests/compute/copy_image.rb | 4 -
lib/fog/aws/requests/compute/copy_snapshot.rb | 4 -
.../aws/requests/compute/create_dhcp_options.rb | 2 -
lib/fog/aws/requests/compute/create_image.rb | 5 +-
.../requests/compute/create_internet_gateway.rb | 1 -
lib/fog/aws/requests/compute/create_key_pair.rb | 4 -
lib/fog/aws/requests/compute/create_network_acl.rb | 4 +-
.../requests/compute/create_network_acl_entry.rb | 2 +-
.../requests/compute/create_network_interface.rb | 90 ++-
.../aws/requests/compute/create_placement_group.rb | 3 -
lib/fog/aws/requests/compute/create_route.rb | 2 -
lib/fog/aws/requests/compute/create_route_table.rb | 1 -
.../aws/requests/compute/create_security_group.rb | 4 -
lib/fog/aws/requests/compute/create_snapshot.rb | 6 +-
.../compute/create_spot_datafeed_subscription.rb | 2 -
lib/fog/aws/requests/compute/create_subnet.rb | 20 +-
lib/fog/aws/requests/compute/create_tags.rb | 26 +-
lib/fog/aws/requests/compute/create_volume.rb | 13 +-
lib/fog/aws/requests/compute/create_vpc.rb | 15 +-
.../aws/requests/compute/delete_dhcp_options.rb | 1 -
.../requests/compute/delete_internet_gateway.rb | 1 -
lib/fog/aws/requests/compute/delete_key_pair.rb | 4 -
.../requests/compute/delete_network_acl_entry.rb | 2 +-
.../requests/compute/delete_network_interface.rb | 1 -
.../aws/requests/compute/delete_placement_group.rb | 2 -
lib/fog/aws/requests/compute/delete_route.rb | 3 -
lib/fog/aws/requests/compute/delete_route_table.rb | 2 -
.../aws/requests/compute/delete_security_group.rb | 2 -
lib/fog/aws/requests/compute/delete_snapshot.rb | 4 -
.../compute/delete_spot_datafeed_subscription.rb | 2 -
lib/fog/aws/requests/compute/delete_subnet.rb | 1 -
lib/fog/aws/requests/compute/delete_tags.rb | 23 +-
lib/fog/aws/requests/compute/delete_volume.rb | 4 -
lib/fog/aws/requests/compute/delete_vpc.rb | 1 -
lib/fog/aws/requests/compute/deregister_image.rb | 4 -
.../compute/describe_account_attributes.rb | 1 -
lib/fog/aws/requests/compute/describe_addresses.rb | 4 -
.../compute/describe_availability_zones.rb | 4 -
.../aws/requests/compute/describe_dhcp_options.rb | 1 -
lib/fog/aws/requests/compute/describe_images.rb | 4 -
.../requests/compute/describe_instance_status.rb | 2 -
lib/fog/aws/requests/compute/describe_instances.rb | 49 +-
.../requests/compute/describe_internet_gateways.rb | 1 -
lib/fog/aws/requests/compute/describe_key_pairs.rb | 4 -
.../aws/requests/compute/describe_network_acls.rb | 15 +-
.../describe_network_interface_attribute.rb | 1 -
.../compute/describe_network_interfaces.rb | 4 -
.../requests/compute/describe_placement_groups.rb | 2 -
lib/fog/aws/requests/compute/describe_regions.rb | 4 -
.../compute/describe_reserved_instances.rb | 2 -
.../describe_reserved_instances_offerings.rb | 1 -
.../aws/requests/compute/describe_route_tables.rb | 1 -
.../requests/compute/describe_security_groups.rb | 12 +-
lib/fog/aws/requests/compute/describe_snapshots.rb | 8 +-
.../compute/describe_spot_datafeed_subscription.rb | 2 -
.../compute/describe_spot_instance_requests.rb | 2 -
.../compute/describe_spot_price_history.rb | 2 -
lib/fog/aws/requests/compute/describe_subnets.rb | 1 -
lib/fog/aws/requests/compute/describe_tags.rb | 5 +-
.../aws/requests/compute/describe_volume_status.rb | 2 -
lib/fog/aws/requests/compute/describe_volumes.rb | 8 +-
.../aws/requests/compute/describe_vpc_attribute.rb | 55 ++
lib/fog/aws/requests/compute/describe_vpcs.rb | 7 +-
.../requests/compute/detach_internet_gateway.rb | 4 -
.../requests/compute/detach_network_interface.rb | 1 -
lib/fog/aws/requests/compute/detach_volume.rb | 4 -
.../aws/requests/compute/disassociate_address.rb | 4 -
.../requests/compute/disassociate_route_table.rb | 3 -
lib/fog/aws/requests/compute/get_console_output.rb | 4 -
lib/fog/aws/requests/compute/get_password_data.rb | 4 -
lib/fog/aws/requests/compute/import_key_pair.rb | 4 -
.../aws/requests/compute/modify_image_attribute.rb | 4 -
.../requests/compute/modify_instance_attribute.rb | 2 -
.../compute/modify_network_interface_attribute.rb | 1 -
.../requests/compute/modify_snapshot_attribute.rb | 2 -
.../requests/compute/modify_subnet_attribute.rb | 58 ++
.../requests/compute/modify_volume_attribute.rb | 3 -
.../aws/requests/compute/modify_vpc_attribute.rb | 17 +-
lib/fog/aws/requests/compute/monitor_instances.rb | 8 +-
.../purchase_reserved_instances_offering.rb | 2 -
lib/fog/aws/requests/compute/reboot_instances.rb | 4 -
lib/fog/aws/requests/compute/register_image.rb | 4 +-
lib/fog/aws/requests/compute/release_address.rb | 6 +-
.../compute/replace_network_acl_association.rb | 6 +-
.../requests/compute/replace_network_acl_entry.rb | 2 +-
lib/fog/aws/requests/compute/replace_route.rb | 4 -
.../aws/requests/compute/request_spot_instances.rb | 2 -
.../compute/reset_network_interface_attribute.rb | 1 -
.../compute/revoke_security_group_ingress.rb | 4 -
lib/fog/aws/requests/compute/run_instances.rb | 33 +-
lib/fog/aws/requests/compute/start_instances.rb | 6 +-
lib/fog/aws/requests/compute/stop_instances.rb | 6 +-
.../aws/requests/compute/terminate_instances.rb | 4 -
.../aws/requests/compute/unmonitor_instances.rb | 9 +-
.../requests/data_pipeline/activate_pipeline.rb | 4 -
.../aws/requests/data_pipeline/create_pipeline.rb | 10 +-
.../aws/requests/data_pipeline/delete_pipeline.rb | 4 -
.../aws/requests/data_pipeline/describe_objects.rb | 4 -
.../requests/data_pipeline/describe_pipelines.rb | 4 -
.../data_pipeline/get_pipeline_definition.rb | 4 -
.../aws/requests/data_pipeline/list_pipelines.rb | 4 -
.../data_pipeline/put_pipeline_definition.rb | 6 +-
.../aws/requests/data_pipeline/query_objects.rb | 5 -
.../requests/dns/change_resource_record_sets.rb | 33 +-
lib/fog/aws/requests/dns/create_health_check.rb | 64 ++
lib/fog/aws/requests/dns/create_hosted_zone.rb | 7 +-
lib/fog/aws/requests/dns/delete_health_check.rb | 24 +
lib/fog/aws/requests/dns/delete_hosted_zone.rb | 6 -
lib/fog/aws/requests/dns/get_change.rb | 5 -
lib/fog/aws/requests/dns/get_health_check.rb | 41 +
lib/fog/aws/requests/dns/get_hosted_zone.rb | 4 -
lib/fog/aws/requests/dns/list_health_checks.rb | 36 +
lib/fog/aws/requests/dns/list_hosted_zones.rb | 8 +-
.../aws/requests/dns/list_resource_record_sets.rb | 6 -
lib/fog/aws/requests/dynamodb/batch_get_item.rb | 2 -
lib/fog/aws/requests/dynamodb/batch_write_item.rb | 2 -
lib/fog/aws/requests/dynamodb/create_table.rb | 2 -
lib/fog/aws/requests/dynamodb/delete_item.rb | 2 -
lib/fog/aws/requests/dynamodb/delete_table.rb | 2 -
lib/fog/aws/requests/dynamodb/describe_table.rb | 2 -
lib/fog/aws/requests/dynamodb/get_item.rb | 2 -
lib/fog/aws/requests/dynamodb/list_tables.rb | 2 -
lib/fog/aws/requests/dynamodb/put_item.rb | 2 -
lib/fog/aws/requests/dynamodb/query.rb | 2 -
lib/fog/aws/requests/dynamodb/scan.rb | 2 -
lib/fog/aws/requests/dynamodb/update_item.rb | 2 -
lib/fog/aws/requests/dynamodb/update_table.rb | 2 -
.../authorize_cache_security_group_ingress.rb | 6 +-
.../requests/elasticache/create_cache_cluster.rb | 4 -
.../elasticache/create_cache_parameter_group.rb | 1 -
.../elasticache/create_cache_security_group.rb | 3 -
.../elasticache/create_cache_subnet_group.rb | 6 -
.../requests/elasticache/delete_cache_cluster.rb | 3 -
.../elasticache/delete_cache_parameter_group.rb | 1 -
.../elasticache/delete_cache_security_group.rb | 1 -
.../elasticache/delete_cache_subnet_group.rb | 1 -
.../elasticache/describe_cache_clusters.rb | 3 -
.../elasticache/describe_cache_parameter_groups.rb | 3 -
.../elasticache/describe_cache_parameters.rb | 2 -
.../elasticache/describe_cache_security_groups.rb | 4 -
.../elasticache/describe_cache_subnet_groups.rb | 4 -
.../describe_engine_default_parameters.rb | 2 -
.../aws/requests/elasticache/describe_events.rb | 2 -
.../elasticache/describe_reserved_cache_nodes.rb | 4 -
.../requests/elasticache/modify_cache_cluster.rb | 7 +-
.../elasticache/modify_cache_parameter_group.rb | 4 +-
.../requests/elasticache/reboot_cache_cluster.rb | 5 +-
.../elasticache/reset_cache_parameter_group.rb | 4 +-
.../revoke_cache_security_group_ingress.rb | 2 -
.../elb/apply_security_groups_to_load_balancer.rb | 7 +-
.../elb/attach_load_balancer_to_subnets.rb | 7 +-
lib/fog/aws/requests/elb/configure_health_check.rb | 2 -
.../elb/create_app_cookie_stickiness_policy.rb | 2 -
.../elb/create_lb_cookie_stickiness_policy.rb | 2 -
lib/fog/aws/requests/elb/create_load_balancer.rb | 89 ++-
.../requests/elb/create_load_balancer_listeners.rb | 2 -
.../requests/elb/create_load_balancer_policy.rb | 2 -
lib/fog/aws/requests/elb/delete_load_balancer.rb | 2 -
.../requests/elb/delete_load_balancer_listeners.rb | 2 -
.../requests/elb/delete_load_balancer_policy.rb | 2 -
.../elb/deregister_instances_from_load_balancer.rb | 6 +-
.../aws/requests/elb/describe_instance_health.rb | 4 +-
.../elb/describe_load_balancer_attributes.rb | 5 +-
.../elb/describe_load_balancer_policies.rb | 2 -
.../elb/describe_load_balancer_policy_types.rb | 2 -
.../aws/requests/elb/describe_load_balancers.rb | 8 +-
.../elb/detach_load_balancer_from_subnets.rb | 7 +-
...disable_availability_zones_for_load_balancer.rb | 6 +-
.../enable_availability_zones_for_load_balancer.rb | 7 +-
.../elb/modify_load_balancer_attributes.rb | 12 +-
.../elb/register_instances_with_load_balancer.rb | 6 +-
.../set_load_balancer_listener_ssl_certificate.rb | 2 -
...et_load_balancer_policies_for_backend_server.rb | 1 -
.../elb/set_load_balancer_policies_of_listener.rb | 2 -
lib/fog/aws/requests/emr/add_instance_groups.rb | 4 -
lib/fog/aws/requests/emr/add_job_flow_steps.rb | 4 -
lib/fog/aws/requests/emr/describe_job_flows.rb | 4 -
lib/fog/aws/requests/emr/modify_instance_groups.rb | 4 -
lib/fog/aws/requests/emr/run_job_flow.rb | 4 -
.../aws/requests/emr/set_termination_protection.rb | 4 -
lib/fog/aws/requests/emr/terminate_job_flows.rb | 4 -
.../aws/requests/glacier/abort_multipart_upload.rb | 2 -
.../requests/glacier/complete_multipart_upload.rb | 2 -
lib/fog/aws/requests/glacier/create_archive.rb | 2 -
lib/fog/aws/requests/glacier/create_vault.rb | 2 -
lib/fog/aws/requests/glacier/delete_archive.rb | 2 -
lib/fog/aws/requests/glacier/delete_vault.rb | 2 -
.../delete_vault_notification_configuration.rb | 2 -
lib/fog/aws/requests/glacier/describe_job.rb | 2 -
lib/fog/aws/requests/glacier/describe_vault.rb | 2 -
lib/fog/aws/requests/glacier/get_job_output.rb | 2 -
.../get_vault_notification_configuration.rb | 2 -
lib/fog/aws/requests/glacier/initiate_job.rb | 2 -
.../requests/glacier/initiate_multipart_upload.rb | 2 -
lib/fog/aws/requests/glacier/list_jobs.rb | 3 -
.../aws/requests/glacier/list_multipart_uploads.rb | 3 -
lib/fog/aws/requests/glacier/list_parts.rb | 2 -
lib/fog/aws/requests/glacier/list_vaults.rb | 2 -
.../set_vault_notification_configuration.rb | 2 -
lib/fog/aws/requests/glacier/upload_part.rb | 2 -
.../requests/iam/add_role_to_instance_profile.rb | 3 -
lib/fog/aws/requests/iam/add_user_to_group.rb | 8 +-
lib/fog/aws/requests/iam/create_access_key.rb | 4 +-
lib/fog/aws/requests/iam/create_account_alias.rb | 2 -
lib/fog/aws/requests/iam/create_group.rb | 6 +-
.../aws/requests/iam/create_instance_profile.rb | 1 -
lib/fog/aws/requests/iam/create_login_profile.rb | 2 -
lib/fog/aws/requests/iam/create_role.rb | 1 -
lib/fog/aws/requests/iam/create_user.rb | 4 +-
lib/fog/aws/requests/iam/delete_access_key.rb | 6 +-
lib/fog/aws/requests/iam/delete_account_alias.rb | 2 -
.../requests/iam/delete_account_password_policy.rb | 36 +
lib/fog/aws/requests/iam/delete_group.rb | 5 +-
lib/fog/aws/requests/iam/delete_group_policy.rb | 2 -
.../aws/requests/iam/delete_instance_profile.rb | 2 -
lib/fog/aws/requests/iam/delete_login_profile.rb | 2 -
lib/fog/aws/requests/iam/delete_role.rb | 2 -
lib/fog/aws/requests/iam/delete_role_policy.rb | 3 -
.../aws/requests/iam/delete_server_certificate.rb | 2 -
.../aws/requests/iam/delete_signing_certificate.rb | 2 -
lib/fog/aws/requests/iam/delete_user.rb | 7 +-
lib/fog/aws/requests/iam/delete_user_policy.rb | 6 +-
.../requests/iam/get_account_password_policy.rb | 36 +
lib/fog/aws/requests/iam/get_account_summary.rb | 5 -
lib/fog/aws/requests/iam/get_group.rb | 2 -
lib/fog/aws/requests/iam/get_group_policy.rb | 2 -
lib/fog/aws/requests/iam/get_instance_profile.rb | 2 -
lib/fog/aws/requests/iam/get_login_profile.rb | 2 -
lib/fog/aws/requests/iam/get_role.rb | 2 -
lib/fog/aws/requests/iam/get_role_policy.rb | 2 -
lib/fog/aws/requests/iam/get_server_certificate.rb | 3 -
lib/fog/aws/requests/iam/get_user.rb | 2 -
lib/fog/aws/requests/iam/get_user_policy.rb | 2 -
lib/fog/aws/requests/iam/list_access_keys.rb | 5 +-
lib/fog/aws/requests/iam/list_account_aliases.rb | 2 -
lib/fog/aws/requests/iam/list_group_policies.rb | 2 -
lib/fog/aws/requests/iam/list_groups.rb | 3 -
lib/fog/aws/requests/iam/list_groups_for_user.rb | 4 +-
lib/fog/aws/requests/iam/list_instance_profiles.rb | 2 -
.../iam/list_instance_profiles_for_role.rb | 2 -
lib/fog/aws/requests/iam/list_role_policies.rb | 2 -
lib/fog/aws/requests/iam/list_roles.rb | 2 -
.../aws/requests/iam/list_server_certificates.rb | 2 -
.../aws/requests/iam/list_signing_certificates.rb | 2 -
lib/fog/aws/requests/iam/list_user_policies.rb | 6 +-
lib/fog/aws/requests/iam/list_users.rb | 2 -
lib/fog/aws/requests/iam/put_group_policy.rb | 4 +-
lib/fog/aws/requests/iam/put_role_policy.rb | 2 -
lib/fog/aws/requests/iam/put_user_policy.rb | 5 +-
.../iam/remove_role_from_instance_profile.rb | 3 -
lib/fog/aws/requests/iam/remove_user_from_group.rb | 7 +-
lib/fog/aws/requests/iam/update_access_key.rb | 7 +-
.../requests/iam/update_account_password_policy.rb | 56 ++
lib/fog/aws/requests/iam/update_group.rb | 2 -
lib/fog/aws/requests/iam/update_login_profile.rb | 2 -
.../aws/requests/iam/update_server_certificate.rb | 1 -
.../aws/requests/iam/update_signing_certificate.rb | 1 -
lib/fog/aws/requests/iam/update_user.rb | 2 -
.../aws/requests/iam/upload_server_certificate.rb | 2 -
.../aws/requests/iam/upload_signing_certificate.rb | 2 -
lib/fog/aws/requests/rds/add_tags_to_resource.rb | 4 -
.../rds/authorize_db_security_group_ingress.rb | 11 +-
lib/fog/aws/requests/rds/create_db_instance.rb | 8 +-
.../rds/create_db_instance_read_replica.rb | 6 -
.../aws/requests/rds/create_db_parameter_group.rb | 6 -
.../aws/requests/rds/create_db_security_group.rb | 6 -
lib/fog/aws/requests/rds/create_db_snapshot.rb | 4 -
lib/fog/aws/requests/rds/create_db_subnet_group.rb | 5 -
lib/fog/aws/requests/rds/delete_db_instance.rb | 4 -
.../aws/requests/rds/delete_db_parameter_group.rb | 5 -
.../aws/requests/rds/delete_db_security_group.rb | 6 -
lib/fog/aws/requests/rds/delete_db_snapshot.rb | 5 -
lib/fog/aws/requests/rds/delete_db_subnet_group.rb | 4 -
.../requests/rds/describe_db_engine_versions.rb | 4 -
lib/fog/aws/requests/rds/describe_db_instances.rb | 5 -
lib/fog/aws/requests/rds/describe_db_log_files.rb | 3 -
.../requests/rds/describe_db_parameter_groups.rb | 5 -
lib/fog/aws/requests/rds/describe_db_parameters.rb | 3 -
.../requests/rds/describe_db_reserved_instances.rb | 4 -
.../requests/rds/describe_db_security_groups.rb | 5 -
lib/fog/aws/requests/rds/describe_db_snapshots.rb | 5 -
.../aws/requests/rds/describe_db_subnet_groups.rb | 4 -
lib/fog/aws/requests/rds/describe_events.rb | 2 -
.../rds/describe_orderable_db_instance_options.rb | 4 -
.../requests/rds/download_db_logfile_portion.rb | 5 -
lib/fog/aws/requests/rds/list_tags_for_resource.rb | 4 -
lib/fog/aws/requests/rds/modify_db_instance.rb | 5 -
.../aws/requests/rds/modify_db_parameter_group.rb | 5 -
lib/fog/aws/requests/rds/promote_read_replica.rb | 59 ++
lib/fog/aws/requests/rds/reboot_db_instance.rb | 4 -
.../aws/requests/rds/remove_tags_from_resource.rb | 4 -
.../rds/restore_db_instance_from_db_snapshot.rb | 5 -
.../rds/restore_db_instance_to_point_in_time.rb | 6 -
.../rds/revoke_db_security_group_ingress.rb | 7 -
.../authorize_cluster_security_group_ingress.rb | 2 -
.../requests/redshift/authorize_snapshot_access.rb | 1 -
.../aws/requests/redshift/copy_cluster_snapshot.rb | 2 -
lib/fog/aws/requests/redshift/create_cluster.rb | 3 -
.../redshift/create_cluster_parameter_group.rb | 1 -
.../redshift/create_cluster_security_group.rb | 1 -
.../requests/redshift/create_cluster_snapshot.rb | 1 -
.../redshift/create_cluster_subnet_group.rb | 1 -
lib/fog/aws/requests/redshift/delete_cluster.rb | 1 -
.../redshift/delete_cluster_parameter_group.rb | 1 -
.../redshift/delete_cluster_security_group.rb | 1 -
.../requests/redshift/delete_cluster_snapshot.rb | 1 -
.../redshift/delete_cluster_subnet_group.rb | 2 -
.../redshift/describe_cluster_parameter_groups.rb | 1 -
.../redshift/describe_cluster_parameters.rb | 1 -
.../redshift/describe_cluster_security_groups.rb | 1 -
.../redshift/describe_cluster_snapshots.rb | 1 -
.../redshift/describe_cluster_subnet_groups.rb | 1 -
.../requests/redshift/describe_cluster_versions.rb | 1 -
.../describe_default_cluster_parameters.rb | 1 -
lib/fog/aws/requests/redshift/describe_events.rb | 1 -
.../redshift/describe_orderable_cluster_options.rb | 1 -
.../redshift/describe_reserved_node_offerings.rb | 1 -
.../requests/redshift/describe_reserved_nodes.rb | 1 -
lib/fog/aws/requests/redshift/describe_resize.rb | 1 -
lib/fog/aws/requests/redshift/modify_cluster.rb | 2 -
.../redshift/modify_cluster_subnet_group.rb | 1 -
.../redshift/purchase_reserved_node_offering.rb | 2 -
lib/fog/aws/requests/redshift/reboot_cluster.rb | 1 -
.../redshift/reset_cluster_parameter_group.rb | 2 -
.../redshift/restore_from_cluster_snapshot.rb | 1 -
.../revoke_cluster_security_group_ingress.rb | 2 -
.../requests/redshift/revoke_snapshot_access.rb | 1 -
.../requests/ses/delete_verified_email_address.rb | 2 -
lib/fog/aws/requests/ses/get_send_quota.rb | 2 -
lib/fog/aws/requests/ses/get_send_statistics.rb | 2 -
.../requests/ses/list_verified_email_addresses.rb | 2 -
lib/fog/aws/requests/ses/send_email.rb | 6 +-
lib/fog/aws/requests/ses/send_raw_email.rb | 6 +-
lib/fog/aws/requests/ses/verify_domain_identity.rb | 2 -
lib/fog/aws/requests/ses/verify_email_address.rb | 2 -
.../aws/requests/simpledb/batch_put_attributes.rb | 4 -
lib/fog/aws/requests/simpledb/create_domain.rb | 4 -
lib/fog/aws/requests/simpledb/delete_attributes.rb | 4 -
lib/fog/aws/requests/simpledb/delete_domain.rb | 4 -
lib/fog/aws/requests/simpledb/domain_metadata.rb | 4 -
lib/fog/aws/requests/simpledb/get_attributes.rb | 6 +-
lib/fog/aws/requests/simpledb/list_domains.rb | 4 -
lib/fog/aws/requests/simpledb/put_attributes.rb | 4 -
lib/fog/aws/requests/simpledb/select.rb | 2 -
lib/fog/aws/requests/sns/add_permission.rb | 4 -
lib/fog/aws/requests/sns/confirm_subscription.rb | 3 -
lib/fog/aws/requests/sns/create_topic.rb | 3 -
lib/fog/aws/requests/sns/delete_topic.rb | 3 -
lib/fog/aws/requests/sns/get_topic_attributes.rb | 3 -
lib/fog/aws/requests/sns/list_subscriptions.rb | 3 -
.../requests/sns/list_subscriptions_by_topic.rb | 3 -
lib/fog/aws/requests/sns/list_topics.rb | 3 -
lib/fog/aws/requests/sns/publish.rb | 3 -
lib/fog/aws/requests/sns/remove_permission.rb | 4 -
lib/fog/aws/requests/sns/set_topic_attributes.rb | 3 -
lib/fog/aws/requests/sns/subscribe.rb | 3 -
lib/fog/aws/requests/sns/unsubscribe.rb | 3 -
.../aws/requests/sqs/change_message_visibility.rb | 7 +-
lib/fog/aws/requests/sqs/create_queue.rb | 3 -
lib/fog/aws/requests/sqs/delete_message.rb | 6 +-
lib/fog/aws/requests/sqs/delete_queue.rb | 5 -
lib/fog/aws/requests/sqs/get_queue_attributes.rb | 4 -
lib/fog/aws/requests/sqs/list_queues.rb | 1 -
lib/fog/aws/requests/sqs/receive_message.rb | 4 -
lib/fog/aws/requests/sqs/send_message.rb | 4 -
lib/fog/aws/requests/sqs/set_queue_attributes.rb | 2 -
.../aws/requests/storage/abort_multipart_upload.rb | 1 -
lib/fog/aws/requests/storage/acl_utils.rb | 8 +-
.../requests/storage/complete_multipart_upload.rb | 2 -
lib/fog/aws/requests/storage/copy_object.rb | 4 -
lib/fog/aws/requests/storage/cors_utils.rb | 2 -
lib/fog/aws/requests/storage/delete_bucket.rb | 5 -
lib/fog/aws/requests/storage/delete_bucket_cors.rb | 3 -
.../requests/storage/delete_bucket_lifecycle.rb | 1 -
.../aws/requests/storage/delete_bucket_policy.rb | 3 -
.../aws/requests/storage/delete_bucket_tagging.rb | 5 -
.../aws/requests/storage/delete_bucket_website.rb | 3 -
.../requests/storage/delete_multiple_objects.rb | 5 -
lib/fog/aws/requests/storage/delete_object.rb | 4 -
lib/fog/aws/requests/storage/get_bucket.rb | 8 +-
lib/fog/aws/requests/storage/get_bucket_acl.rb | 4 -
lib/fog/aws/requests/storage/get_bucket_cors.rb | 4 -
.../aws/requests/storage/get_bucket_lifecycle.rb | 3 -
.../aws/requests/storage/get_bucket_location.rb | 4 -
lib/fog/aws/requests/storage/get_bucket_logging.rb | 2 -
.../requests/storage/get_bucket_object_versions.rb | 6 +-
lib/fog/aws/requests/storage/get_bucket_policy.rb | 3 -
lib/fog/aws/requests/storage/get_bucket_tagging.rb | 4 -
.../aws/requests/storage/get_bucket_versioning.rb | 1 -
lib/fog/aws/requests/storage/get_bucket_website.rb | 2 -
lib/fog/aws/requests/storage/get_object.rb | 5 +-
lib/fog/aws/requests/storage/get_object_acl.rb | 4 -
.../aws/requests/storage/get_object_http_url.rb | 7 -
.../aws/requests/storage/get_object_https_url.rb | 7 -
lib/fog/aws/requests/storage/get_object_torrent.rb | 2 -
lib/fog/aws/requests/storage/get_object_url.rb | 6 -
.../aws/requests/storage/get_request_payment.rb | 4 -
lib/fog/aws/requests/storage/get_service.rb | 4 -
lib/fog/aws/requests/storage/head_bucket.rb | 38 +
lib/fog/aws/requests/storage/head_object.rb | 4 -
.../requests/storage/initiate_multipart_upload.rb | 2 -
.../aws/requests/storage/list_multipart_uploads.rb | 2 -
lib/fog/aws/requests/storage/list_parts.rb | 2 -
.../requests/storage/post_object_hidden_fields.rb | 2 -
.../aws/requests/storage/post_object_restore.rb | 4 -
lib/fog/aws/requests/storage/put_bucket.rb | 4 -
lib/fog/aws/requests/storage/put_bucket_acl.rb | 2 -
lib/fog/aws/requests/storage/put_bucket_cors.rb | 2 -
.../aws/requests/storage/put_bucket_lifecycle.rb | 1 -
lib/fog/aws/requests/storage/put_bucket_logging.rb | 2 -
lib/fog/aws/requests/storage/put_bucket_policy.rb | 3 -
lib/fog/aws/requests/storage/put_bucket_tagging.rb | 5 -
.../aws/requests/storage/put_bucket_versioning.rb | 1 -
lib/fog/aws/requests/storage/put_bucket_website.rb | 5 -
lib/fog/aws/requests/storage/put_object.rb | 4 -
lib/fog/aws/requests/storage/put_object_acl.rb | 2 -
lib/fog/aws/requests/storage/put_object_url.rb | 5 -
.../aws/requests/storage/put_request_payment.rb | 4 -
lib/fog/aws/requests/storage/sync_clock.rb | 4 -
lib/fog/aws/requests/storage/upload_part.rb | 2 -
lib/fog/aws/requests/sts/assume_role.rb | 2 -
lib/fog/aws/requests/sts/get_federation_token.rb | 1 -
lib/fog/aws/requests/sts/get_session_token.rb | 1 -
lib/fog/aws/ses.rb | 58 +-
lib/fog/aws/signaturev4.rb | 4 +-
lib/fog/aws/simpledb.rb | 20 +-
lib/fog/aws/sns.rb | 21 +-
lib/fog/aws/sqs.rb | 25 +-
lib/fog/aws/storage.rb | 31 +-
lib/fog/aws/sts.rb | 48 +-
lib/fog/bare_metal_cloud/compute.rb | 5 -
lib/fog/bare_metal_cloud/core.rb | 2 -
.../requests/compute/add_server.rb | 2 -
.../compute/add_server_by_configuration.rb | 2 -
.../requests/compute/cancel_server.rb | 2 -
.../requests/compute/get_server.rb | 2 -
.../requests/compute/list_configurations.rb | 2 -
.../requests/compute/list_images.rb | 2 -
.../requests/compute/list_plans.rb | 2 -
.../requests/compute/list_servers.rb | 2 -
.../requests/compute/reboot_server.rb | 2 -
lib/fog/bin.rb | 7 +-
lib/fog/bin/atmos.rb | 2 -
lib/fog/bin/aws.rb | 2 -
lib/fog/bin/bare_metal_cloud.rb | 2 -
lib/fog/bin/bluebox.rb | 2 -
lib/fog/bin/brightbox.rb | 2 -
lib/fog/bin/clodo.rb | 2 -
lib/fog/bin/cloudsigma.rb | 1 -
lib/fog/bin/cloudstack.rb | 2 -
lib/fog/bin/digitalocean.rb | 2 -
lib/fog/bin/dnsimple.rb | 2 -
lib/fog/bin/dnsmadeeasy.rb | 2 -
lib/fog/bin/dreamhost.rb | 2 -
lib/fog/bin/dynect.rb | 2 -
lib/fog/bin/ecloud.rb | 2 -
lib/fog/bin/fogdocker.rb | 2 -
lib/fog/bin/glesys.rb | 2 -
lib/fog/bin/go_grid.rb | 2 -
lib/fog/bin/google.rb | 21 +-
lib/fog/bin/hp.rb | 2 -
lib/fog/bin/ibm.rb | 2 -
lib/fog/bin/internet_archive.rb | 2 -
lib/fog/bin/joyent.rb | 2 -
lib/fog/bin/libvirt.rb | 2 -
lib/fog/bin/linode.rb | 2 -
lib/fog/bin/local.rb | 2 -
lib/fog/bin/ninefold.rb | 2 -
lib/fog/bin/opennebula.rb | 60 ++
lib/fog/bin/openstack.rb | 2 -
lib/fog/bin/openvz.rb | 2 -
lib/fog/bin/ovirt.rb | 2 -
lib/fog/bin/rackspace.rb | 2 -
lib/fog/bin/rage4.rb | 2 -
lib/fog/bin/riakcs.rb | 2 -
lib/fog/bin/sakuracloud.rb | 36 -
lib/fog/bin/serverlove.rb | 2 -
lib/fog/bin/softlayer.rb | 53 ++
lib/fog/bin/stormondemand.rb | 2 -
lib/fog/bin/terremark.rb | 2 -
lib/fog/bin/vcloud.rb | 2 -
lib/fog/bin/vcloud_director.rb | 2 -
lib/fog/bin/vmfusion.rb | 2 -
lib/fog/bin/voxel.rb | 2 -
lib/fog/bin/vsphere.rb | 2 -
lib/fog/bin/xenserver.rb | 2 -
lib/fog/bin/zerigo.rb | 2 -
lib/fog/bluebox/blb.rb | 3 -
lib/fog/bluebox/compute.rb | 5 -
lib/fog/bluebox/core.rb | 2 -
lib/fog/bluebox/dns.rb | 2 -
lib/fog/bluebox/models/blb/lb_application.rb | 3 -
lib/fog/bluebox/models/blb/lb_applications.rb | 2 -
lib/fog/bluebox/models/blb/lb_backend.rb | 3 -
lib/fog/bluebox/models/blb/lb_backends.rb | 3 -
lib/fog/bluebox/models/blb/lb_service.rb | 3 -
lib/fog/bluebox/models/blb/lb_services.rb | 2 -
lib/fog/bluebox/models/compute/flavor.rb | 4 -
lib/fog/bluebox/models/compute/flavors.rb | 4 -
lib/fog/bluebox/models/compute/image.rb | 4 -
lib/fog/bluebox/models/compute/images.rb | 4 -
lib/fog/bluebox/models/compute/location.rb | 4 -
lib/fog/bluebox/models/compute/locations.rb | 4 -
lib/fog/bluebox/models/compute/server.rb | 4 -
lib/fog/bluebox/models/compute/servers.rb | 4 -
lib/fog/bluebox/models/dns/record.rb | 3 -
lib/fog/bluebox/models/dns/records.rb | 4 -
lib/fog/bluebox/models/dns/zone.rb | 2 -
lib/fog/bluebox/models/dns/zones.rb | 4 -
lib/fog/bluebox/parsers/dns/create_record.rb | 4 -
lib/fog/bluebox/parsers/dns/create_zone.rb | 4 -
lib/fog/bluebox/parsers/dns/get_record.rb | 4 -
lib/fog/bluebox/parsers/dns/get_records.rb | 4 -
lib/fog/bluebox/parsers/dns/get_zone.rb | 4 -
lib/fog/bluebox/parsers/dns/get_zones.rb | 4 -
lib/fog/bluebox/requests/blb/get_lb_application.rb | 1 -
.../bluebox/requests/blb/get_lb_applications.rb | 1 -
lib/fog/bluebox/requests/blb/get_lb_backend.rb | 1 -
lib/fog/bluebox/requests/blb/get_lb_backends.rb | 1 -
lib/fog/bluebox/requests/blb/get_lb_machine.rb | 1 -
lib/fog/bluebox/requests/blb/get_lb_machines.rb | 1 -
lib/fog/bluebox/requests/blb/get_lb_service.rb | 1 -
lib/fog/bluebox/requests/blb/get_lb_services.rb | 1 -
lib/fog/bluebox/requests/compute/create_block.rb | 5 +-
.../bluebox/requests/compute/create_template.rb | 2 -
lib/fog/bluebox/requests/compute/destroy_block.rb | 2 -
.../bluebox/requests/compute/destroy_template.rb | 2 -
lib/fog/bluebox/requests/compute/get_block.rb | 2 -
lib/fog/bluebox/requests/compute/get_blocks.rb | 2 -
lib/fog/bluebox/requests/compute/get_location.rb | 2 -
lib/fog/bluebox/requests/compute/get_locations.rb | 2 -
lib/fog/bluebox/requests/compute/get_product.rb | 2 -
lib/fog/bluebox/requests/compute/get_products.rb | 2 -
lib/fog/bluebox/requests/compute/get_template.rb | 2 -
lib/fog/bluebox/requests/compute/get_templates.rb | 2 -
lib/fog/bluebox/requests/compute/reboot_block.rb | 2 -
lib/fog/bluebox/requests/dns/create_record.rb | 4 -
lib/fog/bluebox/requests/dns/create_zone.rb | 4 -
lib/fog/bluebox/requests/dns/delete_record.rb | 4 -
lib/fog/bluebox/requests/dns/delete_zone.rb | 4 -
lib/fog/bluebox/requests/dns/get_record.rb | 4 -
lib/fog/bluebox/requests/dns/get_records.rb | 4 -
lib/fog/bluebox/requests/dns/get_zone.rb | 4 -
lib/fog/bluebox/requests/dns/get_zones.rb | 4 -
lib/fog/bluebox/requests/dns/update_record.rb | 4 -
lib/fog/bluebox/requests/dns/update_zone.rb | 4 -
lib/fog/clodo/compute.rb | 5 -
lib/fog/clodo/core.rb | 2 -
lib/fog/clodo/models/compute/image.rb | 4 -
lib/fog/clodo/models/compute/images.rb | 4 -
lib/fog/clodo/models/compute/server.rb | 5 -
lib/fog/clodo/models/compute/servers.rb | 4 -
lib/fog/clodo/requests/compute/add_ip_address.rb | 2 -
lib/fog/clodo/requests/compute/create_server.rb | 3 -
.../clodo/requests/compute/delete_ip_address.rb | 2 -
lib/fog/clodo/requests/compute/delete_server.rb | 6 +-
.../clodo/requests/compute/get_server_details.rb | 6 +-
lib/fog/clodo/requests/compute/list_images.rb | 4 -
.../clodo/requests/compute/list_images_detail.rb | 4 -
lib/fog/clodo/requests/compute/list_servers.rb | 4 -
.../clodo/requests/compute/list_servers_detail.rb | 4 -
lib/fog/clodo/requests/compute/move_ip_address.rb | 1 -
lib/fog/clodo/requests/compute/server_action.rb | 1 -
lib/fog/cloudsigma/compute.rb | 12 +-
lib/fog/cloudsigma/connection.rb | 5 -
lib/fog/cloudsigma/error.rb | 6 -
lib/fog/cloudsigma/mock_data.rb | 1 -
lib/fog/cloudsigma/models/fwpolicies.rb | 3 -
lib/fog/cloudsigma/models/fwpolicy.rb | 2 -
lib/fog/cloudsigma/models/ip.rb | 2 -
lib/fog/cloudsigma/models/ips.rb | 1 -
lib/fog/cloudsigma/models/lib_volume.rb | 4 +-
lib/fog/cloudsigma/models/lib_volumes.rb | 1 -
lib/fog/cloudsigma/models/mountpoint.rb | 2 +-
lib/fog/cloudsigma/models/nic.rb | 4 -
lib/fog/cloudsigma/models/price_record.rb | 1 -
lib/fog/cloudsigma/models/pricing.rb | 1 -
lib/fog/cloudsigma/models/profile.rb | 2 -
lib/fog/cloudsigma/models/rule.rb | 3 -
lib/fog/cloudsigma/models/server.rb | 7 +-
lib/fog/cloudsigma/models/servers.rb | 1 -
lib/fog/cloudsigma/models/subscription.rb | 1 -
lib/fog/cloudsigma/models/vlan.rb | 2 +-
lib/fog/cloudsigma/models/vlans.rb | 1 -
lib/fog/cloudsigma/models/volume.rb | 4 +-
lib/fog/cloudsigma/models/volumes.rb | 1 -
.../requests/calculate_subscription_price.rb | 2 -
lib/fog/cloudsigma/requests/clone_libvolume.rb | 1 -
lib/fog/cloudsigma/requests/clone_server.rb | 1 -
lib/fog/cloudsigma/requests/clone_volume.rb | 1 -
lib/fog/cloudsigma/requests/close_vnc.rb | 1 -
lib/fog/cloudsigma/requests/create_server.rb | 2 -
lib/fog/cloudsigma/requests/create_subscription.rb | 2 -
lib/fog/cloudsigma/requests/create_volume.rb | 1 -
lib/fog/cloudsigma/requests/delete_server.rb | 1 -
lib/fog/cloudsigma/requests/delete_volume.rb | 1 -
lib/fog/cloudsigma/requests/extend_subscription.rb | 2 -
lib/fog/cloudsigma/requests/get_balance.rb | 1 -
lib/fog/cloudsigma/requests/get_current_usage.rb | 2 -
lib/fog/cloudsigma/requests/get_ip.rb | 1 -
lib/fog/cloudsigma/requests/get_lib_volume.rb | 1 -
lib/fog/cloudsigma/requests/get_pricing.rb | 1 -
lib/fog/cloudsigma/requests/get_profile.rb | 1 -
lib/fog/cloudsigma/requests/get_server.rb | 1 -
lib/fog/cloudsigma/requests/get_subscription.rb | 1 -
lib/fog/cloudsigma/requests/get_vlan.rb | 1 -
lib/fog/cloudsigma/requests/get_volume.rb | 1 -
lib/fog/cloudsigma/requests/list_fwpolicies.rb | 1 -
lib/fog/cloudsigma/requests/list_ips.rb | 1 -
lib/fog/cloudsigma/requests/list_lib_volumes.rb | 1 -
lib/fog/cloudsigma/requests/list_servers.rb | 1 -
lib/fog/cloudsigma/requests/list_subscriptions.rb | 1 -
lib/fog/cloudsigma/requests/list_vlans.rb | 1 -
lib/fog/cloudsigma/requests/list_volumes.rb | 1 -
lib/fog/cloudsigma/requests/open_vnc.rb | 1 -
lib/fog/cloudsigma/requests/start_server.rb | 1 -
lib/fog/cloudsigma/requests/stop_server.rb | 2 -
lib/fog/cloudsigma/requests/update_profile.rb | 1 -
lib/fog/cloudsigma/requests/update_server.rb | 1 -
lib/fog/cloudsigma/requests/update_vlan.rb | 1 -
lib/fog/cloudsigma/requests/update_volume.rb | 1 -
lib/fog/cloudstack/compute.rb | 413 +++++++++-
lib/fog/cloudstack/core.rb | 4 +-
lib/fog/cloudstack/models/compute/disk_offering.rb | 2 -
.../cloudstack/models/compute/disk_offerings.rb | 3 -
lib/fog/cloudstack/models/compute/flavors.rb | 3 -
lib/fog/cloudstack/models/compute/images.rb | 2 -
lib/fog/cloudstack/models/compute/job.rb | 1 -
lib/fog/cloudstack/models/compute/jobs.rb | 3 -
.../models/compute/security_group_rule.rb | 2 -
.../models/compute/security_group_rules.rb | 2 -
.../cloudstack/models/compute/security_groups.rb | 2 -
lib/fog/cloudstack/models/compute/server.rb | 28 +-
lib/fog/cloudstack/models/compute/servers.rb | 3 -
lib/fog/cloudstack/models/compute/snapshots.rb | 3 -
lib/fog/cloudstack/models/compute/volume.rb | 3 +-
lib/fog/cloudstack/models/compute/volumes.rb | 3 -
lib/fog/cloudstack/models/compute/zone.rb | 1 -
lib/fog/cloudstack/models/compute/zones.rb | 4 -
.../requests/compute/acquire_ip_address.rb | 3 -
.../requests/compute/activate_project.rb | 25 +
.../requests/compute/add_account_to_project.rb | 25 +
.../requests/compute/add_baremetal_dhcp.rb | 29 +
.../requests/compute/add_baremetal_host.rb | 30 +
.../compute/add_baremetal_pxe_kick_start_server.rb | 30 +
.../compute/add_baremetal_pxe_ping_server.rb | 32 +
.../requests/compute/add_big_switch_vns_device.rb | 26 +
.../compute/add_cisco_asa1000v_resource.rb | 28 +
.../requests/compute/add_cisco_vnmc_resource.rb | 28 +
lib/fog/cloudstack/requests/compute/add_cluster.rb | 29 +
.../requests/compute/add_external_firewall.rb | 28 +
.../requests/compute/add_external_load_balancer.rb | 28 +
.../requests/compute/add_f5_load_balancer.rb | 29 +
.../cloudstack/requests/compute/add_guest_os.rb | 26 +
.../requests/compute/add_guest_os_mapping.rb | 27 +
lib/fog/cloudstack/requests/compute/add_host.rb | 30 +
.../cloudstack/requests/compute/add_image_store.rb | 25 +
.../cloudstack/requests/compute/add_ip_to_nic.rb | 25 +
.../requests/compute/add_ldap_configuration.rb | 26 +
.../compute/add_netscaler_load_balancer.rb | 29 +
.../requests/compute/add_network_device.rb | 24 +
.../compute/add_network_service_provider.rb | 26 +
.../requests/compute/add_nic_to_virtual_machine.rb | 26 +
.../requests/compute/add_nicira_nvp_device.rb | 29 +
.../compute/add_open_daylight_controller.rb | 28 +
.../requests/compute/add_palo_alto_firewall.rb | 29 +
lib/fog/cloudstack/requests/compute/add_region.rb | 27 +
.../requests/compute/add_resource_detail.rb | 27 +
lib/fog/cloudstack/requests/compute/add_s3.rb | 27 +
.../requests/compute/add_secondary_storage.rb | 25 +
.../requests/compute/add_srx_firewall.rb | 29 +
.../requests/compute/add_stratosphere_ssp.rb | 27 +
lib/fog/cloudstack/requests/compute/add_swift.rb | 25 +
.../requests/compute/add_traffic_monitor.rb | 26 +
.../requests/compute/add_traffic_type.rb | 26 +
.../cloudstack/requests/compute/add_ucs_manager.rb | 28 +
.../cloudstack/requests/compute/add_vmware_dc.rb | 27 +
.../cloudstack/requests/compute/add_vpn_user.rb | 26 +
.../cloudstack/requests/compute/archive_alerts.rb | 24 +
.../cloudstack/requests/compute/archive_events.rb | 24 +
.../compute/assign_cert_to_load_balancer.rb | 26 +
.../compute/assign_to_global_load_balancer_rule.rb | 26 +
.../compute/assign_to_load_balancer_rule.rb | 24 +-
.../requests/compute/assign_virtual_machine.rb | 25 +-
.../requests/compute/associate_ip_address.rb | 24 +
.../cloudstack/requests/compute/associate_lun.rb | 22 +
.../compute/associate_ucs_profile_to_blade.rb | 27 +
lib/fog/cloudstack/requests/compute/attach_iso.rb | 26 +
.../cloudstack/requests/compute/attach_volume.rb | 34 +-
.../compute/authorize_security_group_egress.rb | 24 +-
.../compute/authorize_security_group_ingress.rb | 27 +-
.../requests/compute/cancel_host_maintenance.rb | 25 +
.../requests/compute/cancel_storage_maintenance.rb | 25 +
.../requests/compute/change_service_for_router.rb | 26 +
.../compute/change_service_for_system_vm.rb | 26 +
.../compute/change_service_for_virtual_machine.rb | 22 +-
.../requests/compute/clean_vmreservations.rb | 24 +
.../requests/compute/configure_f5_load_balancer.rb | 25 +
.../configure_internal_load_balancer_element.rb | 26 +
.../compute/configure_netscaler_load_balancer.rb | 25 +
.../requests/compute/configure_ovs_element.rb | 26 +
.../compute/configure_palo_alto_firewall.rb | 25 +
.../requests/compute/configure_srx_firewall.rb | 25 +
.../compute/configure_virtual_router_element.rb | 26 +
lib/fog/cloudstack/requests/compute/copy_iso.rb | 26 +
.../cloudstack/requests/compute/copy_template.rb | 26 +
.../cloudstack/requests/compute/create_account.rb | 28 +-
.../requests/compute/create_affinity_group.rb | 26 +
.../requests/compute/create_auto_scale_policy.rb | 27 +
.../requests/compute/create_auto_scale_vm_group.rb | 30 +
.../compute/create_auto_scale_vm_profile.rb | 27 +
.../requests/compute/create_condition.rb | 27 +
.../cloudstack/requests/compute/create_counter.rb | 27 +
.../requests/compute/create_disk_offering.rb | 31 +-
.../cloudstack/requests/compute/create_domain.rb | 23 +-
.../compute/create_egress_firewall_rule.rb | 26 +
.../requests/compute/create_firewall_rule.rb | 26 +
.../compute/create_global_load_balancer_rule.rb | 28 +
.../requests/compute/create_instance_group.rb | 25 +
.../create_internal_load_balancer_element.rb | 25 +
.../requests/compute/create_ip_forwarding_rule.rb | 27 +
.../compute/create_lb_health_check_policy.rb | 25 +
.../compute/create_lb_stickiness_policy.rb | 27 +
.../requests/compute/create_load_balancer.rb | 31 +
.../requests/compute/create_load_balancer_rule.rb | 24 +-
.../requests/compute/create_lun_on_filer.rb | 22 +
.../cloudstack/requests/compute/create_network.rb | 26 +-
.../requests/compute/create_network_acl.rb | 25 +
.../requests/compute/create_network_acl_list.rb | 26 +
.../requests/compute/create_network_offering.rb | 29 +
.../requests/compute/create_physical_network.rb | 26 +
lib/fog/cloudstack/requests/compute/create_pod.rb | 29 +
lib/fog/cloudstack/requests/compute/create_pool.rb | 22 +
.../compute/create_port_forwarding_rule.rb | 27 +-
.../requests/compute/create_portable_ip_range.rb | 29 +
.../requests/compute/create_private_gateway.rb | 29 +
.../cloudstack/requests/compute/create_project.rb | 26 +
.../requests/compute/create_remote_access_vpn.rb | 25 +
.../compute/create_secondary_staging_store.rb | 25 +
.../requests/compute/create_security_group.rb | 25 +-
.../requests/compute/create_service_instance.rb | 30 +
.../requests/compute/create_service_offering.rb | 26 +
.../cloudstack/requests/compute/create_snapshot.rb | 26 +-
.../requests/compute/create_snapshot_policy.rb | 27 +-
.../requests/compute/create_ssh_key_pair.rb | 23 +-
.../requests/compute/create_static_route.rb | 26 +
.../compute/create_storage_network_ip_range.rb | 28 +
.../requests/compute/create_storage_pool.rb | 27 +
lib/fog/cloudstack/requests/compute/create_tags.rb | 27 +
.../cloudstack/requests/compute/create_template.rb | 27 +
lib/fog/cloudstack/requests/compute/create_user.rb | 28 +-
.../compute/create_virtual_router_element.rb | 25 +
.../requests/compute/create_vlan_ip_range.rb | 24 +
.../requests/compute/create_vm_snapshot.rb | 25 +
.../cloudstack/requests/compute/create_volume.rb | 28 +-
.../requests/compute/create_volume_on_filer.rb | 27 +
lib/fog/cloudstack/requests/compute/create_vpc.rb | 29 +
.../requests/compute/create_vpcoffering.rb | 27 +
.../requests/compute/create_vpn_connection.rb | 26 +
.../compute/create_vpn_customer_gateway.rb | 29 +
.../requests/compute/create_vpn_gateway.rb | 25 +
lib/fog/cloudstack/requests/compute/create_zone.rb | 32 +-
.../requests/compute/dedicate_cluster.rb | 26 +
.../requests/compute/dedicate_guest_vlan_range.rb | 28 +
.../cloudstack/requests/compute/dedicate_host.rb | 26 +
.../cloudstack/requests/compute/dedicate_pod.rb | 26 +
.../requests/compute/dedicate_public_ip_range.rb | 27 +
.../cloudstack/requests/compute/dedicate_zone.rb | 26 +
.../cloudstack/requests/compute/delete_account.rb | 23 +-
.../compute/delete_account_from_project.rb | 26 +
.../requests/compute/delete_affinity_group.rb | 24 +
.../cloudstack/requests/compute/delete_alerts.rb | 24 +
.../requests/compute/delete_auto_scale_policy.rb | 25 +
.../requests/compute/delete_auto_scale_vm_group.rb | 25 +
.../compute/delete_auto_scale_vm_profile.rb | 25 +
.../compute/delete_big_switch_vns_device.rb | 25 +
.../compute/delete_cisco_asa1000v_resource.rb | 25 +
.../requests/compute/delete_cisco_nexus_vsm.rb | 25 +
.../requests/compute/delete_cisco_vnmc_resource.rb | 25 +
.../cloudstack/requests/compute/delete_cluster.rb | 25 +
.../requests/compute/delete_condition.rb | 25 +
.../cloudstack/requests/compute/delete_counter.rb | 25 +
.../requests/compute/delete_disk_offering.rb | 32 +-
.../cloudstack/requests/compute/delete_domain.rb | 23 +-
.../compute/delete_egress_firewall_rule.rb | 25 +
.../cloudstack/requests/compute/delete_events.rb | 24 +
.../requests/compute/delete_external_firewall.rb | 25 +
.../compute/delete_external_load_balancer.rb | 25 +
.../requests/compute/delete_f5_load_balancer.rb | 25 +
.../requests/compute/delete_firewall_rule.rb | 25 +
.../compute/delete_global_load_balancer_rule.rb | 25 +
lib/fog/cloudstack/requests/compute/delete_host.rb | 25 +
.../requests/compute/delete_image_store.rb | 25 +
.../requests/compute/delete_instance_group.rb | 25 +
.../requests/compute/delete_ip_forwarding_rule.rb | 25 +
lib/fog/cloudstack/requests/compute/delete_iso.rb | 25 +
.../compute/delete_lb_health_check_policy.rb | 25 +
.../compute/delete_lb_stickiness_policy.rb | 25 +
.../requests/compute/delete_ldap_configuration.rb | 25 +
.../requests/compute/delete_load_balancer.rb | 25 +
.../requests/compute/delete_load_balancer_rule.rb | 23 +-
.../compute/delete_netscaler_load_balancer.rb | 25 +
.../cloudstack/requests/compute/delete_network.rb | 25 +
.../requests/compute/delete_network_acl.rb | 25 +
.../requests/compute/delete_network_acl_list.rb | 25 +
.../requests/compute/delete_network_device.rb | 25 +
.../requests/compute/delete_network_offering.rb | 25 +
.../compute/delete_network_service_provider.rb | 25 +
.../requests/compute/delete_nicira_nvp_device.rb | 25 +
.../compute/delete_open_daylight_controller.rb | 25 +
.../requests/compute/delete_palo_alto_firewall.rb | 25 +
.../requests/compute/delete_physical_network.rb | 25 +
lib/fog/cloudstack/requests/compute/delete_pod.rb | 25 +
lib/fog/cloudstack/requests/compute/delete_pool.rb | 21 +
.../compute/delete_port_forwarding_rule.rb | 23 +-
.../requests/compute/delete_portable_ip_range.rb | 25 +
.../requests/compute/delete_private_gateway.rb | 25 +
.../cloudstack/requests/compute/delete_project.rb | 25 +
.../requests/compute/delete_project_invitation.rb | 25 +
.../requests/compute/delete_remote_access_vpn.rb | 25 +
.../compute/delete_secondary_staging_store.rb | 25 +
.../requests/compute/delete_security_group.rb | 28 +-
.../requests/compute/delete_service_offering.rb | 25 +
.../cloudstack/requests/compute/delete_snapshot.rb | 33 +-
.../requests/compute/delete_snapshot_policies.rb | 22 +-
.../requests/compute/delete_srx_firewall.rb | 25 +
.../requests/compute/delete_ssh_key_pair.rb | 22 +-
.../cloudstack/requests/compute/delete_ssl_cert.rb | 25 +
.../requests/compute/delete_static_route.rb | 25 +
.../compute/delete_storage_network_ip_range.rb | 25 +
.../requests/compute/delete_storage_pool.rb | 25 +
lib/fog/cloudstack/requests/compute/delete_tags.rb | 26 +
.../cloudstack/requests/compute/delete_template.rb | 23 +-
.../requests/compute/delete_traffic_monitor.rb | 25 +
.../requests/compute/delete_traffic_type.rb | 25 +
.../requests/compute/delete_ucs_manager.rb | 21 +
lib/fog/cloudstack/requests/compute/delete_user.rb | 23 +-
.../requests/compute/delete_vlan_ip_range.rb | 25 +
.../requests/compute/delete_vm_snapshot.rb | 25 +
.../cloudstack/requests/compute/delete_volume.rb | 33 +-
lib/fog/cloudstack/requests/compute/delete_vpc.rb | 25 +
.../requests/compute/delete_vpcoffering.rb | 25 +
.../requests/compute/delete_vpn_connection.rb | 25 +
.../compute/delete_vpn_customer_gateway.rb | 25 +
.../requests/compute/delete_vpn_gateway.rb | 25 +
lib/fog/cloudstack/requests/compute/delete_zone.rb | 25 +
.../requests/compute/deploy_virtual_machine.rb | 44 +-
.../requests/compute/destroy_lun_on_filer.rb | 21 +
.../cloudstack/requests/compute/destroy_router.rb | 25 +
.../requests/compute/destroy_system_vm.rb | 25 +
.../requests/compute/destroy_virtual_machine.rb | 35 +-
.../requests/compute/destroy_volume_on_filer.rb | 23 +
lib/fog/cloudstack/requests/compute/detach_iso.rb | 25 +
.../cloudstack/requests/compute/detach_volume.rb | 28 +-
.../cloudstack/requests/compute/disable_account.rb | 23 +-
.../compute/disable_auto_scale_vm_group.rb | 25 +
.../requests/compute/disable_cisco_nexus_vsm.rb | 25 +
.../requests/compute/disable_static_nat.rb | 25 +
.../cloudstack/requests/compute/disable_user.rb | 23 +-
.../requests/compute/disassociate_ip_address.rb | 25 +
.../compute/disassociate_ucs_profile_from_blade.rb | 21 +
.../cloudstack/requests/compute/dissociate_lun.rb | 22 +
.../cloudstack/requests/compute/enable_account.rb | 22 +-
.../requests/compute/enable_auto_scale_vm_group.rb | 25 +
.../requests/compute/enable_cisco_nexus_vsm.rb | 25 +
.../requests/compute/enable_static_nat.rb | 26 +
.../requests/compute/enable_storage_maintenance.rb | 25 +
lib/fog/cloudstack/requests/compute/enable_user.rb | 23 +-
.../requests/compute/expunge_virtual_machine.rb | 25 +
lib/fog/cloudstack/requests/compute/extract_iso.rb | 26 +
.../requests/compute/extract_template.rb | 65 ++
.../cloudstack/requests/compute/extract_volume.rb | 27 +
.../requests/compute/find_hosts_for_migration.rb | 25 +
.../compute/find_storage_pools_for_migration.rb | 25 +
.../cloudstack/requests/compute/generate_alert.rb | 27 +
.../requests/compute/generate_usage_records.rb | 30 +-
.../cloudstack/requests/compute/get_api_limit.rb | 24 +
.../requests/compute/get_cloud_identifier.rb | 25 +
lib/fog/cloudstack/requests/compute/get_user.rb | 25 +
.../compute/get_virtual_machine_user_data.rb | 25 +
.../cloudstack/requests/compute/get_vm_password.rb | 22 +-
.../requests/compute/import_ldap_users.rb | 25 +
...ntiate_ucs_template_and_assocaciate_to_blade.rb | 23 +
lib/fog/cloudstack/requests/compute/ldap_config.rb | 20 +
.../requests/compute/ldap_create_account.rb | 26 +
lib/fog/cloudstack/requests/compute/ldap_remove.rb | 20 +
.../cloudstack/requests/compute/list_accounts.rb | 22 +-
.../requests/compute/list_affinity_group_types.rb | 24 +
.../requests/compute/list_affinity_groups.rb | 24 +
lib/fog/cloudstack/requests/compute/list_alerts.rb | 20 +-
lib/fog/cloudstack/requests/compute/list_apis.rb | 24 +
.../cloudstack/requests/compute/list_async_jobs.rb | 30 +-
.../requests/compute/list_auto_scale_policies.rb | 24 +
.../requests/compute/list_auto_scale_vm_groups.rb | 24 +
.../compute/list_auto_scale_vm_profiles.rb | 24 +
.../requests/compute/list_baremetal_dhcp.rb | 24 +
.../requests/compute/list_baremetal_pxe_servers.rb | 24 +
.../compute/list_big_switch_vns_devices.rb | 24 +
.../requests/compute/list_capabilities.rb | 22 +-
.../cloudstack/requests/compute/list_capacity.rb | 22 +-
.../compute/list_cisco_asa1000v_resources.rb | 24 +
.../requests/compute/list_cisco_nexus_vsms.rb | 24 +
.../requests/compute/list_cisco_vnmc_resources.rb | 24 +
.../cloudstack/requests/compute/list_clusters.rb | 22 +-
.../cloudstack/requests/compute/list_conditions.rb | 24 +
.../requests/compute/list_configurations.rb | 22 +-
.../cloudstack/requests/compute/list_counters.rb | 24 +
.../requests/compute/list_dedicated_clusters.rb | 24 +
.../compute/list_dedicated_guest_vlan_ranges.rb | 24 +
.../requests/compute/list_dedicated_hosts.rb | 24 +
.../requests/compute/list_dedicated_pods.rb | 24 +
.../requests/compute/list_dedicated_zones.rb | 24 +
.../requests/compute/list_deployment_planners.rb | 24 +
.../requests/compute/list_disk_offerings.rb | 23 +-
.../requests/compute/list_domain_children.rb | 22 +-
.../cloudstack/requests/compute/list_domains.rb | 22 +-
.../requests/compute/list_egress_firewall_rules.rb | 24 +
.../requests/compute/list_event_types.rb | 24 +
lib/fog/cloudstack/requests/compute/list_events.rb | 20 +-
.../requests/compute/list_external_firewalls.rb | 21 +-
.../compute/list_external_load_balancers.rb | 22 +-
.../compute/list_f5_load_balancer_networks.rb | 25 +
.../requests/compute/list_f5_load_balancers.rb | 24 +
.../requests/compute/list_firewall_rules.rb | 19 +-
.../compute/list_global_load_balancer_rules.rb | 24 +
.../requests/compute/list_guest_os_mapping.rb | 24 +
lib/fog/cloudstack/requests/compute/list_hosts.rb | 20 +-
.../compute/list_hypervisor_capabilities.rb | 24 +
.../requests/compute/list_hypervisors.rb | 22 +-
.../requests/compute/list_image_stores.rb | 24 +
.../requests/compute/list_instance_groups.rb | 22 +-
.../list_internal_load_balancer_elements.rb | 24 +
.../compute/list_internal_load_balancer_vms.rb | 24 +
.../requests/compute/list_ip_forwarding_rules.rb | 24 +
.../requests/compute/list_iso_permissions.rb | 25 +
lib/fog/cloudstack/requests/compute/list_isos.rb | 20 +-
.../compute/list_lb_health_check_policies.rb | 24 +
.../compute/list_lb_stickiness_policies.rb | 24 +
.../requests/compute/list_ldap_configurations.rb | 24 +
.../cloudstack/requests/compute/list_ldap_users.rb | 24 +
.../compute/list_load_balancer_rule_instances.rb | 24 +-
.../requests/compute/list_load_balancer_rules.rb | 22 +-
.../requests/compute/list_load_balancers.rb | 24 +
.../requests/compute/list_luns_on_filer.rb | 21 +
.../list_netscaler_load_balancer_networks.rb | 25 +
.../compute/list_netscaler_load_balancers.rb | 24 +
.../requests/compute/list_network_acl_lists.rb | 24 +
.../requests/compute/list_network_acls.rb | 24 +
.../requests/compute/list_network_device.rb | 24 +
.../compute/list_network_isolation_methods.rb | 24 +
.../requests/compute/list_network_offerings.rb | 20 +-
.../compute/list_network_service_providers.rb | 24 +
.../cloudstack/requests/compute/list_networks.rb | 20 +-
.../compute/list_nicira_nvp_device_networks.rb | 25 +
.../requests/compute/list_nicira_nvp_devices.rb | 24 +
lib/fog/cloudstack/requests/compute/list_nics.rb | 25 +
.../compute/list_open_daylight_controllers.rb | 24 +
.../requests/compute/list_os_categories.rb | 20 +-
.../cloudstack/requests/compute/list_os_types.rb | 23 +-
.../requests/compute/list_ovs_elements.rb | 24 +
.../compute/list_palo_alto_firewall_networks.rb | 25 +
.../requests/compute/list_palo_alto_firewalls.rb | 24 +
.../requests/compute/list_physical_networks.rb | 24 +
lib/fog/cloudstack/requests/compute/list_pods.rb | 20 +-
lib/fog/cloudstack/requests/compute/list_pools.rb | 20 +
.../requests/compute/list_port_forwarding_rules.rb | 22 +-
.../requests/compute/list_portable_ip_ranges.rb | 24 +
.../requests/compute/list_private_gateways.rb | 24 +
.../requests/compute/list_project_accounts.rb | 25 +
.../requests/compute/list_project_invitations.rb | 24 +
.../cloudstack/requests/compute/list_projects.rb | 24 +
.../requests/compute/list_public_ip_addresses.rb | 22 +-
.../cloudstack/requests/compute/list_regions.rb | 24 +
.../requests/compute/list_remote_access_vpns.rb | 24 +
.../requests/compute/list_resource_details.rb | 25 +
.../requests/compute/list_resource_limits.rb | 20 +-
.../cloudstack/requests/compute/list_routers.rb | 24 +
lib/fog/cloudstack/requests/compute/list_s3s.rb | 24 +
.../compute/list_secondary_staging_stores.rb | 24 +
.../requests/compute/list_security_groups.rb | 26 +-
.../requests/compute/list_service_offerings.rb | 31 +-
.../requests/compute/list_snapshot_policies.rb | 23 +-
.../cloudstack/requests/compute/list_snapshots.rb | 26 +-
.../requests/compute/list_srx_firewall_networks.rb | 25 +
.../requests/compute/list_srx_firewalls.rb | 24 +
.../requests/compute/list_ssh_key_pairs.rb | 22 +-
.../cloudstack/requests/compute/list_ssl_certs.rb | 24 +
.../requests/compute/list_static_routes.rb | 24 +
.../compute/list_storage_network_ip_range.rb | 24 +
.../requests/compute/list_storage_pools.rb | 20 +-
.../requests/compute/list_storage_providers.rb | 25 +
.../compute/list_supported_network_services.rb | 24 +
lib/fog/cloudstack/requests/compute/list_swifts.rb | 24 +
.../cloudstack/requests/compute/list_system_vms.rb | 24 +
lib/fog/cloudstack/requests/compute/list_tags.rb | 24 +
.../requests/compute/list_template_permissions.rb | 25 +
.../cloudstack/requests/compute/list_templates.rb | 33 +-
.../requests/compute/list_traffic_monitors.rb | 25 +
.../compute/list_traffic_type_implementors.rb | 24 +
.../requests/compute/list_traffic_types.rb | 25 +
.../cloudstack/requests/compute/list_ucs_blades.rb | 25 +
.../requests/compute/list_ucs_managers.rb | 24 +
.../requests/compute/list_ucs_profiles.rb | 25 +
.../requests/compute/list_ucs_templates.rb | 21 +
.../requests/compute/list_usage_records.rb | 30 +-
.../requests/compute/list_usage_types.rb | 24 +
lib/fog/cloudstack/requests/compute/list_users.rb | 22 +-
.../requests/compute/list_virtual_machines.rb | 30 +-
.../compute/list_virtual_router_elements.rb | 24 +
.../requests/compute/list_vlan_ip_ranges.rb | 24 +
.../requests/compute/list_vm_snapshot.rb | 24 +
.../cloudstack/requests/compute/list_vmware_dcs.rb | 25 +
.../cloudstack/requests/compute/list_volumes.rb | 31 +-
.../requests/compute/list_volumes_on_filer.rb | 21 +
.../requests/compute/list_vpc_offerings.rb | 24 +
lib/fog/cloudstack/requests/compute/list_vpcs.rb | 24 +
.../requests/compute/list_vpn_connections.rb | 24 +
.../requests/compute/list_vpn_customer_gateways.rb | 24 +
.../requests/compute/list_vpn_gateways.rb | 24 +
.../cloudstack/requests/compute/list_vpn_users.rb | 24 +
lib/fog/cloudstack/requests/compute/list_zones.rb | 33 +-
.../cloudstack/requests/compute/lock_account.rb | 26 +
lib/fog/cloudstack/requests/compute/lock_user.rb | 25 +
.../compute/mark_default_zone_for_account.rb | 27 +
.../requests/compute/migrate_system_vm.rb | 26 +
.../requests/compute/migrate_virtual_machine.rb | 23 +-
.../compute/migrate_virtual_machine_with_volume.rb | 26 +
.../cloudstack/requests/compute/migrate_volume.rb | 26 +
lib/fog/cloudstack/requests/compute/modify_pool.rb | 22 +
.../compute/prepare_host_for_maintenance.rb | 25 +
.../requests/compute/prepare_template.rb | 26 +
.../requests/compute/query_async_job_result.rb | 28 +-
.../cloudstack/requests/compute/reboot_router.rb | 25 +
.../requests/compute/reboot_system_vm.rb | 25 +
.../requests/compute/reboot_virtual_machine.rb | 26 +-
.../cloudstack/requests/compute/reconnect_host.rb | 25 +
.../requests/compute/recover_virtual_machine.rb | 21 +-
.../requests/compute/refresh_ucs_blades.rb | 21 +
.../cloudstack/requests/compute/register_iso.rb | 28 +
.../requests/compute/register_ssh_key_pair.rb | 22 +-
.../requests/compute/register_template.rb | 40 +-
.../requests/compute/register_user_keys.rb | 23 +-
.../requests/compute/release_dedicated_cluster.rb | 25 +
.../compute/release_dedicated_guest_vlan_range.rb | 25 +
.../requests/compute/release_dedicated_host.rb | 25 +
.../requests/compute/release_dedicated_pod.rb | 25 +
.../requests/compute/release_dedicated_zone.rb | 25 +
.../requests/compute/release_host_reservation.rb | 25 +
.../requests/compute/release_public_ip_range.rb | 25 +
.../compute/remove_cert_from_load_balancer.rb | 25 +
.../remove_from_global_load_balancer_rule.rb | 26 +
.../compute/remove_from_load_balancer_rule.rb | 24 +-
.../cloudstack/requests/compute/remove_guest_os.rb | 25 +
.../requests/compute/remove_guest_os_mapping.rb | 25 +
.../requests/compute/remove_ip_from_nic.rb | 25 +
.../compute/remove_nic_from_virtual_machine.rb | 26 +
.../cloudstack/requests/compute/remove_region.rb | 25 +
.../requests/compute/remove_resource_detail.rb | 26 +
.../requests/compute/remove_vmware_dc.rb | 25 +
.../cloudstack/requests/compute/remove_vpn_user.rb | 25 +
.../requests/compute/replace_network_acl_list.rb | 25 +
.../cloudstack/requests/compute/reset_api_limit.rb | 24 +
.../compute/reset_password_for_virtual_machine.rb | 24 +-
.../compute/reset_ssh_key_for_virtual_machine.rb | 26 +
.../requests/compute/reset_vpn_connection.rb | 25 +
.../cloudstack/requests/compute/resize_volume.rb | 25 +
.../cloudstack/requests/compute/restart_network.rb | 25 +
lib/fog/cloudstack/requests/compute/restart_vpc.rb | 25 +
.../requests/compute/restore_virtual_machine.rb | 25 +
.../cloudstack/requests/compute/revert_snapshot.rb | 25 +
.../requests/compute/revert_to_vm_snapshot.rb | 25 +
.../compute/revoke_security_group_egress.rb | 24 +-
.../compute/revoke_security_group_ingress.rb | 27 +-
.../cloudstack/requests/compute/scale_system_vm.rb | 26 +
.../requests/compute/scale_virtual_machine.rb | 26 +
.../compute/start_internal_load_balancer_vm.rb | 25 +
.../cloudstack/requests/compute/start_router.rb | 25 +
.../cloudstack/requests/compute/start_system_vm.rb | 25 +
.../requests/compute/start_virtual_machine.rb | 23 +-
.../compute/stop_internal_load_balancer_vm.rb | 25 +
lib/fog/cloudstack/requests/compute/stop_router.rb | 25 +
.../cloudstack/requests/compute/stop_system_vm.rb | 25 +
.../requests/compute/stop_virtual_machine.rb | 23 +-
.../cloudstack/requests/compute/suspend_project.rb | 25 +
.../cloudstack/requests/compute/update_account.rb | 23 +-
.../requests/compute/update_auto_scale_policy.rb | 25 +
.../requests/compute/update_auto_scale_vm_group.rb | 25 +
.../compute/update_auto_scale_vm_profile.rb | 25 +
.../compute/update_cloud_to_use_object_store.rb | 25 +
.../cloudstack/requests/compute/update_cluster.rb | 25 +
.../requests/compute/update_configuration.rb | 25 +
.../update_default_nic_for_virtual_machine.rb | 26 +
.../requests/compute/update_disk_offering.rb | 25 +
.../cloudstack/requests/compute/update_domain.rb | 23 +-
.../compute/update_egress_firewall_rule.rb | 25 +
.../requests/compute/update_firewall_rule.rb | 25 +
.../compute/update_global_load_balancer_rule.rb | 25 +
.../cloudstack/requests/compute/update_guest_os.rb | 26 +
.../requests/compute/update_guest_os_mapping.rb | 26 +
lib/fog/cloudstack/requests/compute/update_host.rb | 25 +
.../requests/compute/update_host_password.rb | 26 +
.../compute/update_hypervisor_capabilities.rb | 24 +
.../requests/compute/update_instance_group.rb | 25 +
.../requests/compute/update_ip_address.rb | 25 +
lib/fog/cloudstack/requests/compute/update_iso.rb | 25 +
.../requests/compute/update_iso_permissions.rb | 25 +
.../compute/update_lb_health_check_policy.rb | 25 +
.../compute/update_lb_stickiness_policy.rb | 25 +
.../requests/compute/update_load_balancer.rb | 25 +
.../requests/compute/update_load_balancer_rule.rb | 25 +
.../cloudstack/requests/compute/update_network.rb | 25 +
.../requests/compute/update_network_acl_item.rb | 25 +
.../requests/compute/update_network_acl_list.rb | 25 +
.../requests/compute/update_network_offering.rb | 24 +
.../compute/update_network_service_provider.rb | 25 +
.../requests/compute/update_physical_network.rb | 25 +
lib/fog/cloudstack/requests/compute/update_pod.rb | 25 +
.../compute/update_port_forwarding_rule.rb | 25 +
.../cloudstack/requests/compute/update_project.rb | 25 +
.../requests/compute/update_project_invitation.rb | 25 +
.../cloudstack/requests/compute/update_region.rb | 25 +
.../requests/compute/update_remote_access_vpn.rb | 25 +
.../requests/compute/update_resource_count.rb | 23 +-
.../requests/compute/update_resource_limit.rb | 25 +
.../requests/compute/update_service_offering.rb | 25 +
.../compute/update_storage_network_ip_range.rb | 25 +
.../requests/compute/update_storage_pool.rb | 25 +
.../cloudstack/requests/compute/update_template.rb | 25 +
.../compute/update_template_permissions.rb | 25 +
.../requests/compute/update_traffic_type.rb | 25 +
lib/fog/cloudstack/requests/compute/update_user.rb | 23 +-
.../requests/compute/update_virtual_machine.rb | 23 +-
.../requests/compute/update_vm_affinity_group.rb | 25 +
.../cloudstack/requests/compute/update_volume.rb | 24 +
lib/fog/cloudstack/requests/compute/update_vpc.rb | 25 +
.../requests/compute/update_vpcoffering.rb | 25 +
.../requests/compute/update_vpn_connection.rb | 25 +
.../compute/update_vpn_customer_gateway.rb | 30 +
.../requests/compute/update_vpn_gateway.rb | 25 +
lib/fog/cloudstack/requests/compute/update_zone.rb | 25 +
.../requests/compute/upgrade_router_template.rb | 24 +
.../requests/compute/upload_custom_certificate.rb | 26 +
.../cloudstack/requests/compute/upload_ssl_cert.rb | 26 +
.../cloudstack/requests/compute/upload_volume.rb | 28 +
lib/fog/core/deprecated/connection.rb | 1 -
lib/fog/core/deprecated_connection_accessors.rb | 41 -
lib/fog/core/parser.rb | 6 +-
lib/fog/digitalocean/compute.rb | 7 +-
lib/fog/digitalocean/core.rb | 1 -
lib/fog/digitalocean/models/compute/flavor.rb | 2 -
lib/fog/digitalocean/models/compute/flavors.rb | 3 -
lib/fog/digitalocean/models/compute/image.rb | 2 -
lib/fog/digitalocean/models/compute/images.rb | 3 -
lib/fog/digitalocean/models/compute/region.rb | 2 -
lib/fog/digitalocean/models/compute/regions.rb | 3 -
lib/fog/digitalocean/models/compute/server.rb | 4 -
lib/fog/digitalocean/models/compute/servers.rb | 6 +-
lib/fog/digitalocean/models/compute/ssh_key.rb | 2 -
lib/fog/digitalocean/models/compute/ssh_keys.rb | 1 -
.../digitalocean/requests/compute/create_server.rb | 10 +-
.../requests/compute/create_ssh_key.rb | 4 -
.../requests/compute/destroy_server.rb | 4 -
.../requests/compute/destroy_ssh_key.rb | 6 +-
.../requests/compute/get_server_details.rb | 4 -
.../digitalocean/requests/compute/get_ssh_key.rb | 8 +-
.../digitalocean/requests/compute/list_flavors.rb | 4 -
.../digitalocean/requests/compute/list_images.rb | 4 -
.../digitalocean/requests/compute/list_regions.rb | 12 +-
.../digitalocean/requests/compute/list_servers.rb | 4 -
.../digitalocean/requests/compute/list_ssh_keys.rb | 4 -
.../requests/compute/power_cycle_server.rb | 4 -
.../requests/compute/power_off_server.rb | 4 -
.../requests/compute/power_on_server.rb | 4 -
.../digitalocean/requests/compute/reboot_server.rb | 4 -
.../requests/compute/shutdown_server.rb | 4 -
lib/fog/dnsimple/core.rb | 2 -
lib/fog/dnsimple/dns.rb | 4 -
lib/fog/dnsimple/models/dns/record.rb | 3 -
lib/fog/dnsimple/models/dns/records.rb | 4 -
lib/fog/dnsimple/models/dns/zone.rb | 4 -
lib/fog/dnsimple/models/dns/zones.rb | 4 -
lib/fog/dnsimple/requests/dns/create_domain.rb | 5 -
lib/fog/dnsimple/requests/dns/create_record.rb | 5 -
lib/fog/dnsimple/requests/dns/delete_domain.rb | 4 -
lib/fog/dnsimple/requests/dns/delete_record.rb | 5 -
lib/fog/dnsimple/requests/dns/get_domain.rb | 6 +-
lib/fog/dnsimple/requests/dns/get_record.rb | 7 +-
lib/fog/dnsimple/requests/dns/list_domains.rb | 5 -
lib/fog/dnsimple/requests/dns/list_records.rb | 5 -
lib/fog/dnsimple/requests/dns/update_record.rb | 6 +-
lib/fog/dnsmadeeasy/core.rb | 2 -
lib/fog/dnsmadeeasy/dns.rb | 3 -
lib/fog/dnsmadeeasy/models/dns/record.rb | 3 -
lib/fog/dnsmadeeasy/models/dns/records.rb | 4 -
lib/fog/dnsmadeeasy/models/dns/zone.rb | 4 -
lib/fog/dnsmadeeasy/models/dns/zones.rb | 6 +-
lib/fog/dnsmadeeasy/requests/dns/create_domain.rb | 2 -
lib/fog/dnsmadeeasy/requests/dns/create_record.rb | 3 -
.../dnsmadeeasy/requests/dns/create_secondary.rb | 3 -
.../dnsmadeeasy/requests/dns/delete_all_domains.rb | 2 -
.../requests/dns/delete_all_secondary.rb | 2 -
lib/fog/dnsmadeeasy/requests/dns/delete_domain.rb | 2 -
lib/fog/dnsmadeeasy/requests/dns/delete_record.rb | 2 -
.../dnsmadeeasy/requests/dns/delete_secondary.rb | 2 -
lib/fog/dnsmadeeasy/requests/dns/get_domain.rb | 2 -
lib/fog/dnsmadeeasy/requests/dns/get_record.rb | 2 -
lib/fog/dnsmadeeasy/requests/dns/get_secondary.rb | 2 -
lib/fog/dnsmadeeasy/requests/dns/list_domains.rb | 2 -
lib/fog/dnsmadeeasy/requests/dns/list_records.rb | 2 -
lib/fog/dnsmadeeasy/requests/dns/list_secondary.rb | 2 -
lib/fog/dnsmadeeasy/requests/dns/update_record.rb | 2 -
.../dnsmadeeasy/requests/dns/update_secondary.rb | 3 -
lib/fog/dreamhost/core.rb | 2 -
lib/fog/dreamhost/dns.rb | 4 -
lib/fog/dreamhost/models/dns/record.rb | 4 -
lib/fog/dreamhost/models/dns/records.rb | 6 +-
lib/fog/dreamhost/models/dns/zone.rb | 4 -
lib/fog/dreamhost/models/dns/zones.rb | 4 -
lib/fog/dreamhost/requests/dns/create_record.rb | 5 -
lib/fog/dreamhost/requests/dns/delete_record.rb | 5 -
lib/fog/dreamhost/requests/dns/list_records.rb | 5 -
lib/fog/dynect/dns.rb | 41 +-
lib/fog/dynect/models/dns/record.rb | 13 +-
lib/fog/dynect/models/dns/records.rb | 48 +-
lib/fog/dynect/models/dns/zone.rb | 4 -
lib/fog/dynect/models/dns/zones.rb | 4 -
lib/fog/dynect/requests/dns/delete_record.rb | 1 -
lib/fog/dynect/requests/dns/delete_zone.rb | 1 -
lib/fog/dynect/requests/dns/get_all_records.rb | 8 +-
lib/fog/dynect/requests/dns/get_node_list.rb | 5 +-
lib/fog/dynect/requests/dns/get_record.rb | 3 +-
lib/fog/dynect/requests/dns/get_zone.rb | 3 +-
lib/fog/dynect/requests/dns/post_record.rb | 1 -
lib/fog/dynect/requests/dns/post_session.rb | 1 -
lib/fog/dynect/requests/dns/post_zone.rb | 1 -
lib/fog/dynect/requests/dns/put_record.rb | 1 -
lib/fog/dynect/requests/dns/put_zone.rb | 1 -
lib/fog/ecloud/collection.rb | 2 -
lib/fog/ecloud/compute.rb | 14 +-
lib/fog/ecloud/generate_collection.rb | 3 -
lib/fog/ecloud/mock_data_classes.rb | 18 +-
lib/fog/ecloud/model.rb | 2 -
.../ecloud/models/compute/admin_organizations.rb | 1 -
lib/fog/ecloud/models/compute/api_key.rb | 1 -
lib/fog/ecloud/models/compute/api_keys.rb | 1 -
lib/fog/ecloud/models/compute/associations.rb | 1 -
.../ecloud/models/compute/authentication_level.rb | 1 -
.../ecloud/models/compute/authentication_levels.rb | 1 -
.../models/compute/backup_internet_services.rb | 1 -
lib/fog/ecloud/models/compute/catalog.rb | 1 -
.../ecloud/models/compute/catalog_configuration.rb | 1 -
.../models/compute/catalog_configurations.rb | 1 -
lib/fog/ecloud/models/compute/compute_pool.rb | 1 -
lib/fog/ecloud/models/compute/compute_pools.rb | 1 -
lib/fog/ecloud/models/compute/cpu_usage_detail.rb | 1 -
.../models/compute/cpu_usage_detail_summary.rb | 1 -
lib/fog/ecloud/models/compute/detached_disks.rb | 1 -
lib/fog/ecloud/models/compute/environment.rb | 1 -
lib/fog/ecloud/models/compute/environments.rb | 3 -
lib/fog/ecloud/models/compute/firewall_acls.rb | 1 -
lib/fog/ecloud/models/compute/group.rb | 2 +-
lib/fog/ecloud/models/compute/groups.rb | 1 -
lib/fog/ecloud/models/compute/guest_processes.rb | 1 -
.../models/compute/hardware_configurations.rb | 1 -
lib/fog/ecloud/models/compute/internet_service.rb | 2 +-
lib/fog/ecloud/models/compute/internet_services.rb | 1 -
lib/fog/ecloud/models/compute/ip_address.rb | 2 +-
lib/fog/ecloud/models/compute/ip_addresses.rb | 1 -
lib/fog/ecloud/models/compute/layouts.rb | 1 -
lib/fog/ecloud/models/compute/location.rb | 1 -
lib/fog/ecloud/models/compute/locations.rb | 3 -
lib/fog/ecloud/models/compute/login_banners.rb | 1 -
.../models/compute/memory_usage_detail_summary.rb | 1 -
lib/fog/ecloud/models/compute/monitors.rb | 1 -
lib/fog/ecloud/models/compute/network.rb | 2 +-
lib/fog/ecloud/models/compute/networks.rb | 1 -
lib/fog/ecloud/models/compute/node.rb | 2 +-
lib/fog/ecloud/models/compute/nodes.rb | 1 -
lib/fog/ecloud/models/compute/operating_system.rb | 1 -
.../models/compute/operating_system_families.rb | 1 -
lib/fog/ecloud/models/compute/operating_systems.rb | 1 -
lib/fog/ecloud/models/compute/organization.rb | 3 +-
lib/fog/ecloud/models/compute/organizations.rb | 1 -
.../models/compute/password_complexity_rules.rb | 1 -
lib/fog/ecloud/models/compute/physical_device.rb | 1 -
lib/fog/ecloud/models/compute/physical_devices.rb | 1 -
lib/fog/ecloud/models/compute/public_ip.rb | 2 +-
lib/fog/ecloud/models/compute/public_ips.rb | 1 -
lib/fog/ecloud/models/compute/rnats.rb | 1 -
lib/fog/ecloud/models/compute/role.rb | 1 -
lib/fog/ecloud/models/compute/roles.rb | 1 -
lib/fog/ecloud/models/compute/row.rb | 2 +-
lib/fog/ecloud/models/compute/rows.rb | 1 -
lib/fog/ecloud/models/compute/server.rb | 14 +-
.../models/compute/server_configuration_option.rb | 1 -
.../models/compute/server_configuration_options.rb | 1 -
lib/fog/ecloud/models/compute/servers.rb | 5 +-
lib/fog/ecloud/models/compute/ssh_key.rb | 1 -
lib/fog/ecloud/models/compute/ssh_keys.rb | 1 -
.../models/compute/storage_usage_detail_summary.rb | 1 -
lib/fog/ecloud/models/compute/support_ticket.rb | 1 -
lib/fog/ecloud/models/compute/support_tickets.rb | 1 -
lib/fog/ecloud/models/compute/tags.rb | 1 -
lib/fog/ecloud/models/compute/tasks.rb | 2 -
lib/fog/ecloud/models/compute/templates.rb | 1 -
.../models/compute/trusted_network_groups.rb | 1 -
lib/fog/ecloud/models/compute/users.rb | 1 -
.../models/compute/virtual_machine_assigned_ips.rb | 1 -
.../compute/admin_edit_authentication_levels.rb | 1 -
.../requests/compute/admin_edit_login_banner.rb | 2 -
.../admin_edit_password_complexity_rules.rb | 2 -
.../compute/backup_internet_service_delete.rb | 2 -
.../ecloud/requests/compute/compute_pool_edit.rb | 4 +-
.../requests/compute/firewall_acls_create.rb | 1 -
.../requests/compute/firewall_acls_delete.rb | 2 -
.../requests/compute/get_admin_organization.rb | 2 -
lib/fog/ecloud/requests/compute/get_api_key.rb | 2 -
lib/fog/ecloud/requests/compute/get_api_keys.rb | 2 -
lib/fog/ecloud/requests/compute/get_association.rb | 2 -
.../ecloud/requests/compute/get_associations.rb | 2 -
.../requests/compute/get_authentication_level.rb | 2 -
.../requests/compute/get_authentication_levels.rb | 2 -
.../compute/get_backup_internet_service.rb | 2 -
.../compute/get_backup_internet_services.rb | 2 -
lib/fog/ecloud/requests/compute/get_catalog.rb | 2 -
.../requests/compute/get_catalog_configuration.rb | 2 -
.../requests/compute/get_catalog_configurations.rb | 2 -
.../ecloud/requests/compute/get_catalog_item.rb | 2 -
.../ecloud/requests/compute/get_compute_pool.rb | 1 -
.../ecloud/requests/compute/get_compute_pools.rb | 1 -
.../requests/compute/get_cpu_usage_detail.rb | 2 -
.../compute/get_cpu_usage_detail_summary.rb | 2 -
.../ecloud/requests/compute/get_detached_disks.rb | 2 -
lib/fog/ecloud/requests/compute/get_environment.rb | 1 -
.../ecloud/requests/compute/get_firewall_acl.rb | 2 -
.../ecloud/requests/compute/get_firewall_acls.rb | 2 -
.../ecloud/requests/compute/get_guest_process.rb | 2 -
.../ecloud/requests/compute/get_guest_processes.rb | 2 -
.../requests/compute/get_hardware_configuration.rb | 1 -
.../compute/get_hardware_configurations.rb | 1 -
.../requests/compute/get_internet_service.rb | 2 -
.../requests/compute/get_internet_services.rb | 1 -
lib/fog/ecloud/requests/compute/get_ip_address.rb | 4 +-
lib/fog/ecloud/requests/compute/get_location.rb | 3 -
lib/fog/ecloud/requests/compute/get_locations.rb | 3 -
.../ecloud/requests/compute/get_login_banner.rb | 2 -
.../ecloud/requests/compute/get_login_banners.rb | 2 -
.../requests/compute/get_memory_usage_detail.rb | 2 -
.../compute/get_memory_usage_detail_summary.rb | 2 -
lib/fog/ecloud/requests/compute/get_monitor.rb | 2 -
lib/fog/ecloud/requests/compute/get_monitors.rb | 2 -
lib/fog/ecloud/requests/compute/get_network.rb | 1 -
.../ecloud/requests/compute/get_network_summary.rb | 2 -
lib/fog/ecloud/requests/compute/get_networks.rb | 1 -
lib/fog/ecloud/requests/compute/get_node.rb | 1 -
lib/fog/ecloud/requests/compute/get_nodes.rb | 2 -
.../requests/compute/get_operating_system.rb | 1 -
.../compute/get_operating_system_families.rb | 1 -
.../ecloud/requests/compute/get_organization.rb | 1 -
.../compute/get_password_complexity_rule.rb | 2 -
.../compute/get_password_complexity_rules.rb | 2 -
.../ecloud/requests/compute/get_physical_device.rb | 2 -
.../requests/compute/get_physical_devices.rb | 2 -
lib/fog/ecloud/requests/compute/get_process.rb | 2 -
lib/fog/ecloud/requests/compute/get_processes.rb | 2 -
lib/fog/ecloud/requests/compute/get_public_ips.rb | 2 -
lib/fog/ecloud/requests/compute/get_rnat.rb | 2 -
lib/fog/ecloud/requests/compute/get_rnats.rb | 2 -
lib/fog/ecloud/requests/compute/get_role.rb | 2 -
lib/fog/ecloud/requests/compute/get_roles.rb | 2 -
lib/fog/ecloud/requests/compute/get_server.rb | 1 -
.../compute/get_server_configuration_option.rb | 2 -
.../compute/get_server_configuration_options.rb | 2 -
lib/fog/ecloud/requests/compute/get_ssh_key.rb | 1 -
lib/fog/ecloud/requests/compute/get_ssh_keys.rb | 1 -
.../requests/compute/get_storage_usage_detail.rb | 2 -
.../compute/get_storage_usage_detail_summary.rb | 2 -
.../ecloud/requests/compute/get_support_ticket.rb | 2 -
.../ecloud/requests/compute/get_support_tickets.rb | 2 -
lib/fog/ecloud/requests/compute/get_tag.rb | 2 -
lib/fog/ecloud/requests/compute/get_tags.rb | 2 -
lib/fog/ecloud/requests/compute/get_tasks.rb | 2 -
lib/fog/ecloud/requests/compute/get_template.rb | 1 -
lib/fog/ecloud/requests/compute/get_templates.rb | 1 -
.../requests/compute/get_trusted_network_group.rb | 2 -
.../requests/compute/get_trusted_network_groups.rb | 2 -
lib/fog/ecloud/requests/compute/get_user.rb | 2 -
lib/fog/ecloud/requests/compute/get_users.rb | 2 -
.../compute/get_virtual_machine_assigned_ips.rb | 2 -
lib/fog/ecloud/requests/compute/groups_movedown.rb | 2 -
lib/fog/ecloud/requests/compute/groups_moveup.rb | 2 -
.../requests/compute/internet_service_create.rb | 2 +-
.../requests/compute/internet_service_delete.rb | 1 -
.../requests/compute/internet_service_edit.rb | 4 +-
.../requests/compute/monitors_create_default.rb | 2 -
.../requests/compute/monitors_create_loopback.rb | 2 -
.../ecloud/requests/compute/monitors_disable.rb | 2 -
lib/fog/ecloud/requests/compute/monitors_enable.rb | 2 -
.../ecloud/requests/compute/node_service_create.rb | 4 +-
.../ecloud/requests/compute/node_service_delete.rb | 2 -
.../ecloud/requests/compute/node_service_edit.rb | 4 +-
lib/fog/ecloud/requests/compute/power_off.rb | 2 -
lib/fog/ecloud/requests/compute/power_on.rb | 2 -
lib/fog/ecloud/requests/compute/power_reset.rb | 2 -
lib/fog/ecloud/requests/compute/power_shutdown.rb | 2 -
.../ecloud/requests/compute/public_ip_activate.rb | 2 -
lib/fog/ecloud/requests/compute/rows_movedown.rb | 2 -
lib/fog/ecloud/requests/compute/rows_moveup.rb | 2 -
.../compute/trusted_network_groups_create.rb | 2 -
.../compute/trusted_network_groups_delete.rb | 2 -
.../compute/trusted_network_groups_edit.rb | 2 -
.../compute/virtual_machine_attach_disk.rb | 1 -
.../requests/compute/virtual_machine_copy.rb | 4 +-
.../compute/virtual_machine_copy_identical.rb | 4 +-
.../virtual_machine_create_from_template.rb | 5 +-
.../compute/virtual_machine_detach_disk.rb | 1 -
.../requests/compute/virtual_machine_edit.rb | 4 +-
.../compute/virtual_machine_edit_assigned_ips.rb | 4 +-
.../virtual_machine_edit_hardware_configuration.rb | 2 -
.../requests/compute/virtual_machine_import.rb | 4 +-
.../compute/virtual_machine_upload_file.rb | 5 +-
lib/fog/fogdocker.rb | 2 +-
lib/fog/fogdocker/compute.rb | 5 +-
lib/fog/fogdocker/core.rb | 4 +-
lib/fog/fogdocker/models/compute/image.rb | 4 -
lib/fog/fogdocker/models/compute/images.rb | 3 -
lib/fog/fogdocker/models/compute/server.rb | 3 -
lib/fog/fogdocker/models/compute/servers.rb | 3 -
lib/fog/fogdocker/requests/compute/api_version.rb | 2 +-
.../fogdocker/requests/compute/container_action.rb | 12 +-
.../fogdocker/requests/compute/container_all.rb | 1 -
.../fogdocker/requests/compute/container_commit.rb | 3 +-
.../fogdocker/requests/compute/container_create.rb | 1 -
.../fogdocker/requests/compute/container_delete.rb | 7 +-
.../fogdocker/requests/compute/container_get.rb | 1 -
lib/fog/fogdocker/requests/compute/image_create.rb | 2 -
lib/fog/fogdocker/requests/compute/image_delete.rb | 7 +-
lib/fog/fogdocker/requests/compute/image_get.rb | 3 +-
lib/fog/glesys/compute.rb | 10 +-
lib/fog/glesys/core.rb | 2 -
lib/fog/glesys/models/compute/ip.rb | 3 -
lib/fog/glesys/models/compute/ips.rb | 7 +-
lib/fog/glesys/models/compute/server.rb | 5 +-
lib/fog/glesys/models/compute/servers.rb | 4 -
lib/fog/glesys/models/compute/templates.rb | 4 +-
lib/fog/glesys/requests/compute/create.rb | 4 -
lib/fog/glesys/requests/compute/destroy.rb | 3 -
lib/fog/glesys/requests/compute/ip_add.rb | 3 -
lib/fog/glesys/requests/compute/ip_details.rb | 3 -
lib/fog/glesys/requests/compute/ip_list_free.rb | 3 -
lib/fog/glesys/requests/compute/ip_list_own.rb | 3 -
lib/fog/glesys/requests/compute/ip_release.rb | 3 -
lib/fog/glesys/requests/compute/ip_remove.rb | 3 -
lib/fog/glesys/requests/compute/ip_take.rb | 3 -
lib/fog/glesys/requests/compute/list_servers.rb | 4 -
lib/fog/glesys/requests/compute/reboot.rb | 3 -
lib/fog/glesys/requests/compute/server_details.rb | 3 -
lib/fog/glesys/requests/compute/server_status.rb | 3 -
lib/fog/glesys/requests/compute/start.rb | 3 -
lib/fog/glesys/requests/compute/stop.rb | 3 -
lib/fog/glesys/requests/compute/template_list.rb | 3 -
lib/fog/go_grid/compute.rb | 5 -
lib/fog/go_grid/core.rb | 2 -
lib/fog/go_grid/models/compute/image.rb | 5 -
lib/fog/go_grid/models/compute/images.rb | 4 -
lib/fog/go_grid/models/compute/password.rb | 5 -
lib/fog/go_grid/models/compute/passwords.rb | 4 -
lib/fog/go_grid/models/compute/server.rb | 4 -
lib/fog/go_grid/models/compute/servers.rb | 4 -
.../go_grid/requests/compute/common_lookup_list.rb | 2 -
lib/fog/go_grid/requests/compute/grid_image_get.rb | 4 -
.../go_grid/requests/compute/grid_image_list.rb | 4 -
lib/fog/go_grid/requests/compute/grid_ip_list.rb | 2 -
.../requests/compute/grid_loadbalancer_list.rb | 2 -
.../go_grid/requests/compute/grid_server_add.rb | 2 -
.../go_grid/requests/compute/grid_server_delete.rb | 2 -
.../go_grid/requests/compute/grid_server_get.rb | 2 -
.../go_grid/requests/compute/grid_server_list.rb | 2 -
.../go_grid/requests/compute/grid_server_power.rb | 2 -
.../requests/compute/support_password_get.rb | 2 -
.../requests/compute/support_password_list.rb | 2 -
lib/fog/google.rb | 3 +
lib/fog/google/compute.rb | 487 ++++++------
lib/fog/google/core.rb | 163 +++-
lib/fog/google/dns.rb | 63 ++
lib/fog/google/examples/backend_services.rb | 22 +
lib/fog/google/examples/create.rb | 2 +-
lib/fog/google/examples/eric-fail.rb | 2 +-
lib/fog/google/examples/get_list_images.rb | 2 +-
lib/fog/google/examples/get_list_snapshots.rb | 2 -
lib/fog/google/examples/image_create.rb | 2 +-
lib/fog/google/examples/l7_load_balance.rb | 73 ++
lib/fog/google/examples/load-balance.rb | 6 +-
.../examples/monitoring/metric_descriptors.rb | 11 +
.../examples/monitoring/timeseries_collection.rb | 15 +
.../examples/monitoring/timeseries_descriptors.rb | 15 +
lib/fog/google/examples/sql/flags.rb | 7 +
lib/fog/google/examples/sql/instances.rb | 38 +
lib/fog/google/examples/sql/operations.rb | 20 +
lib/fog/google/examples/sql/ssl_certs.rb | 28 +
lib/fog/google/examples/sql/tiers.rb | 7 +
lib/fog/google/models/compute/address.rb | 36 +-
lib/fog/google/models/compute/addresses.rb | 10 +-
lib/fog/google/models/compute/backend_service.rb | 92 +++
lib/fog/google/models/compute/backend_services.rb | 22 +
lib/fog/google/models/compute/disk.rb | 68 +-
lib/fog/google/models/compute/disk_type.rb | 28 +
lib/fog/google/models/compute/disk_types.rb | 40 +
lib/fog/google/models/compute/disks.rb | 34 +-
lib/fog/google/models/compute/firewall.rb | 2 -
lib/fog/google/models/compute/firewalls.rb | 2 -
lib/fog/google/models/compute/flavor.rb | 3 -
lib/fog/google/models/compute/flavors.rb | 4 -
lib/fog/google/models/compute/forwarding_rule.rb | 10 +-
lib/fog/google/models/compute/forwarding_rules.rb | 4 -
.../models/compute/global_forwarding_rule.rb | 86 ++
.../models/compute/global_forwarding_rules.rb | 23 +
lib/fog/google/models/compute/http_health_check.rb | 9 +-
.../google/models/compute/http_health_checks.rb | 10 +-
lib/fog/google/models/compute/image.rb | 46 +-
lib/fog/google/models/compute/images.rb | 17 +-
lib/fog/google/models/compute/network.rb | 2 -
lib/fog/google/models/compute/networks.rb | 2 -
lib/fog/google/models/compute/operation.rb | 3 -
lib/fog/google/models/compute/operations.rb | 4 -
lib/fog/google/models/compute/project.rb | 2 -
lib/fog/google/models/compute/projects.rb | 2 -
lib/fog/google/models/compute/region.rb | 2 -
lib/fog/google/models/compute/regions.rb | 2 -
lib/fog/google/models/compute/resource_view.rb | 116 +++
lib/fog/google/models/compute/resource_views.rb | 57 ++
lib/fog/google/models/compute/route.rb | 2 -
lib/fog/google/models/compute/routes.rb | 2 -
lib/fog/google/models/compute/server.rb | 125 ++-
lib/fog/google/models/compute/servers.rb | 34 +-
lib/fog/google/models/compute/snapshot.rb | 4 -
lib/fog/google/models/compute/snapshots.rb | 4 -
.../google/models/compute/target_http_proxies.rb | 22 +
lib/fog/google/models/compute/target_http_proxy.rb | 75 ++
lib/fog/google/models/compute/target_instance.rb | 74 ++
lib/fog/google/models/compute/target_instances.rb | 28 +
lib/fog/google/models/compute/target_pool.rb | 15 +-
lib/fog/google/models/compute/target_pools.rb | 8 +-
lib/fog/google/models/compute/url_map.rb | 95 +++
lib/fog/google/models/compute/url_maps.rb | 22 +
lib/fog/google/models/compute/zone.rb | 3 -
lib/fog/google/models/compute/zones.rb | 3 -
.../google/models/monitoring/metric_descriptor.rb | 20 +
.../google/models/monitoring/metric_descriptors.rb | 28 +
lib/fog/google/models/monitoring/timeseries.rb | 17 +
.../models/monitoring/timeseries_collection.rb | 31 +
.../models/monitoring/timeseries_descriptor.rb | 20 +
.../models/monitoring/timeseries_descriptors.rb | 31 +
lib/fog/google/models/sql/backup_run.rb | 34 +
lib/fog/google/models/sql/backup_runs.rb | 38 +
lib/fog/google/models/sql/flag.rb | 22 +
lib/fog/google/models/sql/flags.rb | 21 +
lib/fog/google/models/sql/instance.rb | 353 +++++++++
lib/fog/google/models/sql/instances.rb | 39 +
lib/fog/google/models/sql/operation.rb | 61 ++
lib/fog/google/models/sql/operations.rb | 49 ++
lib/fog/google/models/sql/ssl_cert.rb | 73 ++
lib/fog/google/models/sql/ssl_certs.rb | 49 ++
lib/fog/google/models/sql/tier.rb | 20 +
lib/fog/google/models/sql/tiers.rb | 21 +
lib/fog/google/models/storage/directories.rb | 4 -
lib/fog/google/models/storage/directory.rb | 6 +-
lib/fog/google/models/storage/file.rb | 6 +-
lib/fog/google/models/storage/files.rb | 11 +-
lib/fog/google/monitoring.rb | 89 +++
.../google/parsers/storage/access_control_list.rb | 4 -
lib/fog/google/parsers/storage/copy_object.rb | 4 -
lib/fog/google/parsers/storage/get_bucket.rb | 4 -
.../google/parsers/storage/get_bucket_logging.rb | 4 -
.../parsers/storage/get_bucket_object_versions.rb | 4 -
.../parsers/storage/get_bucket_versioning.rb | 4 -
.../google/parsers/storage/get_request_payment.rb | 4 -
lib/fog/google/parsers/storage/get_service.rb | 4 -
.../compute/add_backend_service_backends.rb | 29 +
.../requests/compute/add_region_view_resources.rb | 27 +
.../requests/compute/add_server_access_config.rb | 32 +
.../compute/add_target_pool_health_checks.rb | 11 +-
.../requests/compute/add_target_pool_instances.rb | 11 +-
.../requests/compute/add_url_map_host_rules.rb | 25 +
.../requests/compute/add_url_map_path_matchers.rb | 29 +
.../requests/compute/add_zone_view_resources.rb | 27 +
lib/fog/google/requests/compute/attach_disk.rb | 21 +-
lib/fog/google/requests/compute/delete_address.rb | 9 +-
.../requests/compute/delete_backend_service.rb | 43 +
lib/fog/google/requests/compute/delete_disk.rb | 11 +-
lib/fog/google/requests/compute/delete_firewall.rb | 9 +-
.../requests/compute/delete_forwarding_rule.rb | 29 +-
.../compute/delete_global_forwarding_rule.rb | 48 ++
.../requests/compute/delete_global_operation.rb | 6 +-
.../requests/compute/delete_http_health_check.rb | 29 +-
lib/fog/google/requests/compute/delete_image.rb | 30 +-
lib/fog/google/requests/compute/delete_network.rb | 9 +-
.../requests/compute/delete_region_operation.rb | 6 +-
.../google/requests/compute/delete_region_view.rb | 24 +
lib/fog/google/requests/compute/delete_route.rb | 5 +-
lib/fog/google/requests/compute/delete_server.rb | 9 +-
.../compute/delete_server_access_config.rb | 26 +
lib/fog/google/requests/compute/delete_snapshot.rb | 9 +-
.../requests/compute/delete_target_http_proxy.rb | 43 +
.../requests/compute/delete_target_instance.rb | 48 ++
.../google/requests/compute/delete_target_pool.rb | 29 +-
lib/fog/google/requests/compute/delete_url_map.rb | 43 +
.../requests/compute/delete_zone_operation.rb | 6 +-
.../google/requests/compute/delete_zone_view.rb | 24 +
lib/fog/google/requests/compute/detach_disk.rb | 12 +-
lib/fog/google/requests/compute/get_address.rb | 9 +-
.../google/requests/compute/get_backend_service.rb | 26 +
.../requests/compute/get_backend_service_health.rb | 27 +
.../requests/compute/get_backend_services.rb | 23 +
lib/fog/google/requests/compute/get_disk.rb | 13 +-
lib/fog/google/requests/compute/get_disk_type.rb | 42 +
lib/fog/google/requests/compute/get_firewall.rb | 9 +-
.../google/requests/compute/get_forwarding_rule.rb | 29 +-
.../requests/compute/get_global_forwarding_rule.rb | 32 +
.../requests/compute/get_global_operation.rb | 33 +-
.../requests/compute/get_http_health_check.rb | 27 +-
lib/fog/google/requests/compute/get_image.rb | 11 +-
.../google/requests/compute/get_machine_type.rb | 17 +-
lib/fog/google/requests/compute/get_network.rb | 9 +-
lib/fog/google/requests/compute/get_project.rb | 5 +-
lib/fog/google/requests/compute/get_region.rb | 21 +-
.../requests/compute/get_region_operation.rb | 35 +-
lib/fog/google/requests/compute/get_region_view.rb | 24 +
lib/fog/google/requests/compute/get_route.rb | 5 +-
lib/fog/google/requests/compute/get_server.rb | 13 +-
.../compute/get_server_serial_port_output.rb | 24 +
lib/fog/google/requests/compute/get_snapshot.rb | 9 +-
.../requests/compute/get_target_http_proxy.rb | 27 +
.../google/requests/compute/get_target_instance.rb | 32 +
lib/fog/google/requests/compute/get_target_pool.rb | 23 +-
.../requests/compute/get_target_pool_health.rb | 10 +-
lib/fog/google/requests/compute/get_url_map.rb | 27 +
lib/fog/google/requests/compute/get_zone.rb | 11 +-
.../google/requests/compute/get_zone_operation.rb | 9 +-
lib/fog/google/requests/compute/get_zone_view.rb | 24 +
lib/fog/google/requests/compute/insert_address.rb | 7 +-
.../requests/compute/insert_backend_service.rb | 63 ++
lib/fog/google/requests/compute/insert_disk.rb | 22 +-
lib/fog/google/requests/compute/insert_firewall.rb | 12 +-
.../requests/compute/insert_forwarding_rule.rb | 45 +-
.../compute/insert_global_forwarding_rule.rb | 56 ++
.../requests/compute/insert_http_health_check.rb | 45 +-
lib/fog/google/requests/compute/insert_image.rb | 49 +-
lib/fog/google/requests/compute/insert_network.rb | 9 +-
.../google/requests/compute/insert_region_view.rb | 25 +
lib/fog/google/requests/compute/insert_route.rb | 5 +-
lib/fog/google/requests/compute/insert_server.rb | 31 +-
lib/fog/google/requests/compute/insert_snapshot.rb | 13 +-
.../requests/compute/insert_target_http_proxy.rb | 52 ++
.../requests/compute/insert_target_instance.rb | 55 ++
.../google/requests/compute/insert_target_pool.rb | 43 +-
lib/fog/google/requests/compute/insert_url_map.rb | 55 ++
.../google/requests/compute/insert_zone_view.rb | 27 +
lib/fog/google/requests/compute/list_addresses.rb | 7 +-
.../requests/compute/list_aggregated_addresses.rb | 10 +-
.../requests/compute/list_aggregated_disk_types.rb | 40 +
.../requests/compute/list_aggregated_disks.rb | 40 +
.../compute/list_aggregated_machine_types.rb | 5 +-
.../requests/compute/list_aggregated_servers.rb | 40 +
.../requests/compute/list_backend_services.rb | 29 +
lib/fog/google/requests/compute/list_disk_types.rb | 46 ++
lib/fog/google/requests/compute/list_disks.rb | 11 +-
lib/fog/google/requests/compute/list_firewalls.rb | 9 +-
.../requests/compute/list_forwarding_rules.rb | 11 +-
.../compute/list_global_forwarding_rules.rb | 30 +
.../requests/compute/list_global_operations.rb | 6 +-
.../requests/compute/list_http_health_checks.rb | 18 +-
lib/fog/google/requests/compute/list_images.rb | 11 +-
.../google/requests/compute/list_machine_types.rb | 11 +-
lib/fog/google/requests/compute/list_networks.rb | 9 +-
.../requests/compute/list_region_operations.rb | 6 +-
.../requests/compute/list_region_view_resources.rb | 25 +
.../google/requests/compute/list_region_views.rb | 23 +
lib/fog/google/requests/compute/list_regions.rb | 74 +-
lib/fog/google/requests/compute/list_routes.rb | 5 +-
lib/fog/google/requests/compute/list_servers.rb | 11 +-
lib/fog/google/requests/compute/list_snapshots.rb | 9 +-
.../requests/compute/list_target_http_proxies.rb | 30 +
.../requests/compute/list_target_instances.rb | 30 +
.../google/requests/compute/list_target_pools.rb | 17 +-
lib/fog/google/requests/compute/list_url_maps.rb | 29 +
.../requests/compute/list_zone_operations.rb | 6 +-
.../requests/compute/list_zone_view_resources.rb | 25 +
lib/fog/google/requests/compute/list_zone_views.rb | 23 +
lib/fog/google/requests/compute/list_zones.rb | 11 +-
.../compute/remove_target_pool_health_checks.rb | 11 +-
.../compute/remove_target_pool_instance.rb | 11 +-
.../compute/remove_target_pool_instances.rb | 11 +-
lib/fog/google/requests/compute/reset_server.rb | 24 +
.../compute/set_common_instance_metadata.rb | 6 +-
.../requests/compute/set_forwarding_rule_target.rb | 7 +-
.../compute/set_global_forwarding_rule_target.rb | 27 +
lib/fog/google/requests/compute/set_metadata.rb | 11 +-
.../compute/set_server_disk_auto_delete.rb | 26 +
.../requests/compute/set_server_scheduling.rb | 29 +
lib/fog/google/requests/compute/set_tags.rb | 18 +-
.../compute/set_target_http_proxy_url_map.rb | 27 +
lib/fog/google/requests/compute/update_url_map.rb | 39 +
.../google/requests/compute/validate_url_map.rb | 24 +
lib/fog/google/requests/dns/create_managed_zone.rb | 49 ++
lib/fog/google/requests/dns/delete_managed_zone.rb | 39 +
lib/fog/google/requests/dns/get_managed_zone.rb | 31 +
lib/fog/google/requests/dns/list_managed_zones.rb | 26 +
.../requests/monitoring/list_metric_descriptors.rb | 191 +++++
.../google/requests/monitoring/list_timeseries.rb | 68 ++
.../monitoring/list_timeseries_descriptors.rb | 87 ++
lib/fog/google/requests/sql/clone_instance.rb | 84 ++
lib/fog/google/requests/sql/delete_instance.rb | 67 ++
lib/fog/google/requests/sql/delete_ssl_cert.rb | 68 ++
lib/fog/google/requests/sql/export_instance.rb | 56 ++
lib/fog/google/requests/sql/get_backup_run.rb | 30 +
lib/fog/google/requests/sql/get_instance.rb | 48 ++
lib/fog/google/requests/sql/get_operation.rb | 66 ++
lib/fog/google/requests/sql/get_ssl_cert.rb | 66 ++
lib/fog/google/requests/sql/import_instance.rb | 55 ++
lib/fog/google/requests/sql/insert_instance.rb | 165 ++++
lib/fog/google/requests/sql/insert_ssl_cert.rb | 80 ++
lib/fog/google/requests/sql/list_backup_runs.rb | 30 +
lib/fog/google/requests/sql/list_flags.rb | 143 ++++
lib/fog/google/requests/sql/list_instances.rb | 32 +
lib/fog/google/requests/sql/list_operations.rb | 52 ++
lib/fog/google/requests/sql/list_ssl_certs.rb | 51 ++
lib/fog/google/requests/sql/list_tiers.rb | 82 ++
.../requests/sql/reset_instance_ssl_config.rb | 49 ++
lib/fog/google/requests/sql/restart_instance.rb | 47 ++
.../google/requests/sql/restore_instance_backup.rb | 30 +
.../requests/sql/set_instance_root_password.rb | 54 ++
lib/fog/google/requests/sql/update_instance.rb | 132 ++++
lib/fog/google/requests/storage/copy_object.rb | 4 -
lib/fog/google/requests/storage/delete_bucket.rb | 5 -
lib/fog/google/requests/storage/delete_object.rb | 4 -
lib/fog/google/requests/storage/get_bucket.rb | 4 -
lib/fog/google/requests/storage/get_bucket_acl.rb | 4 -
lib/fog/google/requests/storage/get_object.rb | 4 -
lib/fog/google/requests/storage/get_object_acl.rb | 4 -
.../google/requests/storage/get_object_http_url.rb | 7 -
.../requests/storage/get_object_https_url.rb | 7 -
.../google/requests/storage/get_object_torrent.rb | 2 -
lib/fog/google/requests/storage/get_object_url.rb | 4 -
lib/fog/google/requests/storage/get_service.rb | 7 +-
lib/fog/google/requests/storage/head_object.rb | 4 -
lib/fog/google/requests/storage/put_bucket.rb | 4 -
lib/fog/google/requests/storage/put_bucket_acl.rb | 8 +-
lib/fog/google/requests/storage/put_object.rb | 4 -
lib/fog/google/requests/storage/put_object_acl.rb | 4 -
lib/fog/google/requests/storage/put_object_url.rb | 4 -
lib/fog/google/sql.rb | 132 ++++
lib/fog/google/storage.rb | 14 +-
lib/fog/hp/block_storage.rb | 5 -
lib/fog/hp/block_storage_v2.rb | 7 +-
lib/fog/hp/cdn.rb | 4 -
lib/fog/hp/compute.rb | 5 -
lib/fog/hp/compute_v2.rb | 7 +-
lib/fog/hp/core.rb | 17 +-
lib/fog/hp/dns.rb | 7 +-
lib/fog/hp/docs/connect.md | 4 +-
lib/fog/hp/lb.rb | 9 +-
.../hp/models/block_storage/bootable_volumes.rb | 4 -
lib/fog/hp/models/block_storage/snapshot.rb | 4 -
lib/fog/hp/models/block_storage/snapshots.rb | 4 -
lib/fog/hp/models/block_storage/volume.rb | 4 -
lib/fog/hp/models/block_storage/volumes.rb | 4 -
lib/fog/hp/models/block_storage_v2/snapshot.rb | 4 -
lib/fog/hp/models/block_storage_v2/snapshots.rb | 4 -
lib/fog/hp/models/block_storage_v2/volume.rb | 6 +-
.../hp/models/block_storage_v2/volume_backup.rb | 4 -
.../hp/models/block_storage_v2/volume_backups.rb | 4 -
lib/fog/hp/models/block_storage_v2/volumes.rb | 4 -
lib/fog/hp/models/compute/address.rb | 4 -
lib/fog/hp/models/compute/addresses.rb | 4 -
lib/fog/hp/models/compute/flavor.rb | 4 -
lib/fog/hp/models/compute/flavors.rb | 4 -
lib/fog/hp/models/compute/image.rb | 4 -
lib/fog/hp/models/compute/images.rb | 4 -
lib/fog/hp/models/compute/key_pair.rb | 5 +-
lib/fog/hp/models/compute/key_pairs.rb | 3 -
lib/fog/hp/models/compute/meta.rb | 2 -
lib/fog/hp/models/compute/metadata.rb | 5 -
lib/fog/hp/models/compute/security_group.rb | 2 -
lib/fog/hp/models/compute/security_groups.rb | 3 -
lib/fog/hp/models/compute/server.rb | 5 -
lib/fog/hp/models/compute/servers.rb | 4 -
lib/fog/hp/models/compute_v2/address.rb | 4 -
lib/fog/hp/models/compute_v2/addresses.rb | 4 -
lib/fog/hp/models/compute_v2/availability_zone.rb | 4 -
lib/fog/hp/models/compute_v2/availability_zones.rb | 4 -
lib/fog/hp/models/compute_v2/flavor.rb | 4 -
lib/fog/hp/models/compute_v2/flavors.rb | 4 -
lib/fog/hp/models/compute_v2/image.rb | 19 +-
lib/fog/hp/models/compute_v2/images.rb | 4 -
lib/fog/hp/models/compute_v2/key_pair.rb | 5 +-
lib/fog/hp/models/compute_v2/key_pairs.rb | 3 -
lib/fog/hp/models/compute_v2/meta.rb | 2 -
lib/fog/hp/models/compute_v2/meta_parent.rb | 2 -
lib/fog/hp/models/compute_v2/metadata.rb | 5 -
lib/fog/hp/models/compute_v2/server.rb | 5 -
lib/fog/hp/models/compute_v2/servers.rb | 4 -
lib/fog/hp/models/compute_v2/volume_attachment.rb | 5 +-
lib/fog/hp/models/compute_v2/volume_attachments.rb | 1 -
lib/fog/hp/models/dns/domain.rb | 2 -
lib/fog/hp/models/dns/domains.rb | 3 -
lib/fog/hp/models/dns/record.rb | 2 -
lib/fog/hp/models/dns/records.rb | 3 -
lib/fog/hp/models/lb/algorithm.rb | 1 -
lib/fog/hp/models/lb/algorithms.rb | 3 +-
lib/fog/hp/models/lb/load_balancer.rb | 3 +-
lib/fog/hp/models/lb/load_balancers.rb | 1 -
lib/fog/hp/models/lb/node.rb | 2 -
lib/fog/hp/models/lb/nodes.rb | 2 -
lib/fog/hp/models/lb/protocol.rb | 1 -
lib/fog/hp/models/lb/protocols.rb | 3 +-
lib/fog/hp/models/lb/virtual_ip.rb | 1 -
lib/fog/hp/models/lb/virtual_ips.rb | 4 +-
lib/fog/hp/models/meta_parent.rb | 2 -
lib/fog/hp/models/network/floating_ip.rb | 2 -
lib/fog/hp/models/network/floating_ips.rb | 3 -
lib/fog/hp/models/network/network.rb | 2 -
lib/fog/hp/models/network/networks.rb | 3 -
lib/fog/hp/models/network/port.rb | 3 -
lib/fog/hp/models/network/ports.rb | 3 -
lib/fog/hp/models/network/router.rb | 2 -
lib/fog/hp/models/network/routers.rb | 3 -
lib/fog/hp/models/network/security_group.rb | 2 -
lib/fog/hp/models/network/security_group_rule.rb | 2 -
lib/fog/hp/models/network/security_group_rules.rb | 3 -
lib/fog/hp/models/network/security_groups.rb | 3 -
lib/fog/hp/models/network/subnet.rb | 2 -
lib/fog/hp/models/network/subnets.rb | 3 -
lib/fog/hp/models/storage/directories.rb | 4 -
lib/fog/hp/models/storage/directory.rb | 4 -
lib/fog/hp/models/storage/file.rb | 4 -
lib/fog/hp/models/storage/files.rb | 6 +-
lib/fog/hp/models/storage/meta.rb | 2 -
lib/fog/hp/models/storage/meta_parent.rb | 2 -
lib/fog/hp/models/storage/metadata.rb | 5 -
lib/fog/hp/models/storage/shared_directories.rb | 4 -
lib/fog/hp/models/storage/shared_directory.rb | 3 -
lib/fog/hp/models/storage/shared_file.rb | 3 -
lib/fog/hp/models/storage/shared_files.rb | 4 -
lib/fog/hp/network.rb | 18 +-
.../hp/requests/block_storage/create_snapshot.rb | 4 -
lib/fog/hp/requests/block_storage/create_volume.rb | 4 -
.../hp/requests/block_storage/delete_snapshot.rb | 4 -
lib/fog/hp/requests/block_storage/delete_volume.rb | 4 -
.../block_storage/get_bootable_volume_details.rb | 5 -
.../requests/block_storage/get_snapshot_details.rb | 5 -
.../requests/block_storage/get_volume_details.rb | 5 -
.../block_storage/list_bootable_volumes.rb | 4 -
.../hp/requests/block_storage/list_snapshots.rb | 4 -
lib/fog/hp/requests/block_storage/list_volumes.rb | 4 -
.../requests/block_storage_v2/create_snapshot.rb | 4 -
.../hp/requests/block_storage_v2/create_volume.rb | 4 -
.../block_storage_v2/create_volume_backup.rb | 4 -
.../requests/block_storage_v2/delete_snapshot.rb | 4 -
.../hp/requests/block_storage_v2/delete_volume.rb | 4 -
.../block_storage_v2/delete_volume_backup.rb | 4 -
.../block_storage_v2/get_snapshot_details.rb | 5 -
.../block_storage_v2/get_volume_backup_details.rb | 5 -
.../block_storage_v2/get_volume_details.rb | 5 -
.../hp/requests/block_storage_v2/list_snapshots.rb | 4 -
.../block_storage_v2/list_snapshots_detail.rb | 4 -
.../block_storage_v2/list_volume_backups.rb | 4 -
.../block_storage_v2/list_volume_backups_detail.rb | 4 -
.../hp/requests/block_storage_v2/list_volumes.rb | 4 -
.../block_storage_v2/list_volumes_detail.rb | 4 -
.../block_storage_v2/restore_volume_backup.rb | 4 -
.../requests/block_storage_v2/update_snapshot.rb | 5 -
.../hp/requests/block_storage_v2/update_volume.rb | 4 -
lib/fog/hp/requests/cdn/delete_container.rb | 3 -
lib/fog/hp/requests/cdn/get_containers.rb | 5 -
lib/fog/hp/requests/cdn/head_container.rb | 3 -
lib/fog/hp/requests/cdn/post_container.rb | 3 -
lib/fog/hp/requests/cdn/put_container.rb | 3 -
lib/fog/hp/requests/compute/allocate_address.rb | 5 -
lib/fog/hp/requests/compute/associate_address.rb | 4 -
lib/fog/hp/requests/compute/attach_volume.rb | 4 -
.../hp/requests/compute/change_password_server.rb | 6 +-
.../hp/requests/compute/confirm_resized_server.rb | 4 -
lib/fog/hp/requests/compute/create_image.rb | 5 -
lib/fog/hp/requests/compute/create_key_pair.rb | 5 -
.../requests/compute/create_persistent_server.rb | 5 -
.../hp/requests/compute/create_security_group.rb | 7 +-
.../requests/compute/create_security_group_rule.rb | 5 -
lib/fog/hp/requests/compute/create_server.rb | 4 -
lib/fog/hp/requests/compute/delete_image.rb | 7 +-
lib/fog/hp/requests/compute/delete_key_pair.rb | 4 -
lib/fog/hp/requests/compute/delete_meta.rb | 5 -
.../hp/requests/compute/delete_security_group.rb | 4 -
.../requests/compute/delete_security_group_rule.rb | 5 -
lib/fog/hp/requests/compute/delete_server.rb | 6 +-
lib/fog/hp/requests/compute/detach_volume.rb | 4 -
.../hp/requests/compute/disassociate_address.rb | 4 -
lib/fog/hp/requests/compute/get_address.rb | 4 -
lib/fog/hp/requests/compute/get_console_output.rb | 6 +-
lib/fog/hp/requests/compute/get_flavor_details.rb | 4 -
lib/fog/hp/requests/compute/get_image_details.rb | 7 +-
lib/fog/hp/requests/compute/get_meta.rb | 5 -
lib/fog/hp/requests/compute/get_security_group.rb | 4 -
lib/fog/hp/requests/compute/get_server_details.rb | 6 +-
lib/fog/hp/requests/compute/get_vnc_console.rb | 6 +-
.../hp/requests/compute/get_windows_password.rb | 5 +-
lib/fog/hp/requests/compute/list_addresses.rb | 4 -
lib/fog/hp/requests/compute/list_flavors.rb | 4 -
lib/fog/hp/requests/compute/list_flavors_detail.rb | 4 -
lib/fog/hp/requests/compute/list_images.rb | 4 -
lib/fog/hp/requests/compute/list_images_detail.rb | 4 -
lib/fog/hp/requests/compute/list_key_pairs.rb | 4 -
lib/fog/hp/requests/compute/list_metadata.rb | 4 -
.../hp/requests/compute/list_security_groups.rb | 4 -
.../hp/requests/compute/list_server_addresses.rb | 6 +-
.../compute/list_server_private_addresses.rb | 6 +-
.../compute/list_server_public_addresses.rb | 6 +-
lib/fog/hp/requests/compute/list_server_volumes.rb | 4 -
lib/fog/hp/requests/compute/list_servers.rb | 4 -
lib/fog/hp/requests/compute/list_servers_detail.rb | 4 -
lib/fog/hp/requests/compute/reboot_server.rb | 6 +-
lib/fog/hp/requests/compute/rebuild_server.rb | 5 -
lib/fog/hp/requests/compute/release_address.rb | 4 -
lib/fog/hp/requests/compute/resize_server.rb | 4 -
.../hp/requests/compute/revert_resized_server.rb | 4 -
lib/fog/hp/requests/compute/server_action.rb | 2 -
lib/fog/hp/requests/compute/set_metadata.rb | 7 -
lib/fog/hp/requests/compute/update_meta.rb | 7 -
lib/fog/hp/requests/compute/update_metadata.rb | 7 -
lib/fog/hp/requests/compute/update_server.rb | 6 +-
.../hp/requests/compute_v2/add_security_group.rb | 4 -
lib/fog/hp/requests/compute_v2/allocate_address.rb | 5 -
.../hp/requests/compute_v2/associate_address.rb | 4 -
lib/fog/hp/requests/compute_v2/attach_volume.rb | 4 -
lib/fog/hp/requests/compute_v2/create_image.rb | 7 +-
lib/fog/hp/requests/compute_v2/create_key_pair.rb | 5 -
.../compute_v2/create_persistent_server.rb | 6 -
lib/fog/hp/requests/compute_v2/create_server.rb | 4 -
lib/fog/hp/requests/compute_v2/delete_image.rb | 7 +-
lib/fog/hp/requests/compute_v2/delete_key_pair.rb | 4 -
lib/fog/hp/requests/compute_v2/delete_meta.rb | 5 -
lib/fog/hp/requests/compute_v2/delete_server.rb | 6 +-
lib/fog/hp/requests/compute_v2/detach_volume.rb | 4 -
.../hp/requests/compute_v2/disassociate_address.rb | 4 -
lib/fog/hp/requests/compute_v2/get_address.rb | 4 -
.../hp/requests/compute_v2/get_console_output.rb | 6 +-
.../hp/requests/compute_v2/get_flavor_details.rb | 4 -
.../hp/requests/compute_v2/get_image_details.rb | 7 +-
lib/fog/hp/requests/compute_v2/get_key_pair.rb | 4 -
lib/fog/hp/requests/compute_v2/get_meta.rb | 5 -
.../hp/requests/compute_v2/get_server_details.rb | 6 +-
.../compute_v2/get_server_volume_details.rb | 4 -
lib/fog/hp/requests/compute_v2/get_vnc_console.rb | 6 +-
.../hp/requests/compute_v2/get_windows_password.rb | 5 +-
lib/fog/hp/requests/compute_v2/list_addresses.rb | 4 -
.../requests/compute_v2/list_availability_zones.rb | 4 -
lib/fog/hp/requests/compute_v2/list_flavors.rb | 4 -
.../hp/requests/compute_v2/list_flavors_detail.rb | 4 -
lib/fog/hp/requests/compute_v2/list_images.rb | 4 -
.../hp/requests/compute_v2/list_images_detail.rb | 4 -
lib/fog/hp/requests/compute_v2/list_key_pairs.rb | 4 -
lib/fog/hp/requests/compute_v2/list_limits.rb | 4 -
lib/fog/hp/requests/compute_v2/list_metadata.rb | 4 -
.../requests/compute_v2/list_server_addresses.rb | 6 +-
.../compute_v2/list_server_addresses_by_network.rb | 6 +-
.../hp/requests/compute_v2/list_server_volumes.rb | 4 -
lib/fog/hp/requests/compute_v2/list_servers.rb | 4 -
.../hp/requests/compute_v2/list_servers_detail.rb | 4 -
lib/fog/hp/requests/compute_v2/reboot_server.rb | 6 +-
lib/fog/hp/requests/compute_v2/rebuild_server.rb | 7 +-
lib/fog/hp/requests/compute_v2/release_address.rb | 4 -
.../requests/compute_v2/remove_security_group.rb | 4 -
lib/fog/hp/requests/compute_v2/server_action.rb | 2 -
lib/fog/hp/requests/compute_v2/set_metadata.rb | 7 -
lib/fog/hp/requests/compute_v2/update_meta.rb | 7 -
lib/fog/hp/requests/compute_v2/update_metadata.rb | 7 -
lib/fog/hp/requests/compute_v2/update_server.rb | 6 +-
lib/fog/hp/requests/dns/create_domain.rb | 1 -
lib/fog/hp/requests/dns/create_record.rb | 5 +-
lib/fog/hp/requests/dns/delete_domain.rb | 7 +-
lib/fog/hp/requests/dns/delete_record.rb | 4 +-
lib/fog/hp/requests/dns/get_domain.rb | 4 +-
lib/fog/hp/requests/dns/get_record.rb | 3 +-
.../hp/requests/dns/get_servers_hosting_domain.rb | 4 +-
lib/fog/hp/requests/dns/list_domains.rb | 2 -
.../hp/requests/dns/list_records_in_a_domain.rb | 4 +-
lib/fog/hp/requests/dns/update_domain.rb | 3 +-
lib/fog/hp/requests/dns/update_record.rb | 6 +-
lib/fog/hp/requests/lb/create_load_balancer.rb | 1 -
.../hp/requests/lb/create_load_balancer_node.rb | 4 -
lib/fog/hp/requests/lb/delete_load_balancer.rb | 6 +-
.../hp/requests/lb/delete_load_balancer_node.rb | 4 -
lib/fog/hp/requests/lb/get_load_balancer.rb | 5 +-
lib/fog/hp/requests/lb/get_load_balancer_node.rb | 5 +-
lib/fog/hp/requests/lb/list_algorithms.rb | 1 -
lib/fog/hp/requests/lb/list_limits.rb | 4 -
lib/fog/hp/requests/lb/list_load_balancer_nodes.rb | 2 -
.../requests/lb/list_load_balancer_virtual_ips.rb | 3 -
lib/fog/hp/requests/lb/list_load_balancers.rb | 2 -
lib/fog/hp/requests/lb/list_protocols.rb | 1 -
lib/fog/hp/requests/lb/list_versions.rb | 3 -
lib/fog/hp/requests/lb/update_load_balancer.rb | 4 +-
.../hp/requests/lb/update_load_balancer_node.rb | 4 -
.../hp/requests/network/add_router_interface.rb | 4 +-
.../hp/requests/network/associate_floating_ip.rb | 4 +-
lib/fog/hp/requests/network/create_floating_ip.rb | 2 -
lib/fog/hp/requests/network/create_network.rb | 3 -
lib/fog/hp/requests/network/create_port.rb | 4 +-
lib/fog/hp/requests/network/create_router.rb | 2 -
.../hp/requests/network/create_security_group.rb | 5 -
.../requests/network/create_security_group_rule.rb | 5 -
lib/fog/hp/requests/network/create_subnet.rb | 4 +-
lib/fog/hp/requests/network/delete_floating_ip.rb | 4 +-
lib/fog/hp/requests/network/delete_network.rb | 4 +-
lib/fog/hp/requests/network/delete_port.rb | 4 +-
lib/fog/hp/requests/network/delete_router.rb | 4 +-
.../hp/requests/network/delete_security_group.rb | 4 -
.../requests/network/delete_security_group_rule.rb | 4 -
lib/fog/hp/requests/network/delete_subnet.rb | 4 +-
.../requests/network/disassociate_floating_ip.rb | 4 +-
lib/fog/hp/requests/network/get_floating_ip.rb | 5 +-
lib/fog/hp/requests/network/get_network.rb | 5 +-
lib/fog/hp/requests/network/get_port.rb | 4 +-
lib/fog/hp/requests/network/get_router.rb | 4 +-
lib/fog/hp/requests/network/get_security_group.rb | 4 -
.../hp/requests/network/get_security_group_rule.rb | 4 -
lib/fog/hp/requests/network/get_subnet.rb | 4 +-
lib/fog/hp/requests/network/list_floating_ips.rb | 2 -
lib/fog/hp/requests/network/list_networks.rb | 28 +-
lib/fog/hp/requests/network/list_ports.rb | 2 -
lib/fog/hp/requests/network/list_routers.rb | 2 -
.../requests/network/list_security_group_rules.rb | 4 -
.../hp/requests/network/list_security_groups.rb | 4 -
lib/fog/hp/requests/network/list_subnets.rb | 2 -
.../hp/requests/network/remove_router_interface.rb | 4 +-
lib/fog/hp/requests/network/update_network.rb | 4 +-
lib/fog/hp/requests/network/update_port.rb | 4 +-
lib/fog/hp/requests/network/update_router.rb | 4 +-
lib/fog/hp/requests/network/update_subnet.rb | 4 +-
lib/fog/hp/requests/storage/delete_container.rb | 5 -
lib/fog/hp/requests/storage/delete_object.rb | 5 -
.../hp/requests/storage/delete_shared_object.rb | 5 -
lib/fog/hp/requests/storage/get_container.rb | 5 -
lib/fog/hp/requests/storage/get_containers.rb | 5 -
lib/fog/hp/requests/storage/get_object.rb | 5 -
lib/fog/hp/requests/storage/get_object_temp_url.rb | 5 -
.../hp/requests/storage/get_shared_container.rb | 6 -
lib/fog/hp/requests/storage/get_shared_object.rb | 5 -
lib/fog/hp/requests/storage/head_container.rb | 5 -
lib/fog/hp/requests/storage/head_containers.rb | 5 -
lib/fog/hp/requests/storage/head_object.rb | 5 -
.../hp/requests/storage/head_shared_container.rb | 5 -
lib/fog/hp/requests/storage/head_shared_object.rb | 5 -
lib/fog/hp/requests/storage/post_container.rb | 5 -
lib/fog/hp/requests/storage/post_object.rb | 5 -
lib/fog/hp/requests/storage/put_container.rb | 3 -
lib/fog/hp/requests/storage/put_object.rb | 7 +-
lib/fog/hp/requests/storage/put_shared_object.rb | 7 +-
lib/fog/hp/simple_http_instrumentor.rb | 7 +-
lib/fog/hp/storage.rb | 17 +-
lib/fog/ibm/compute.rb | 4 -
lib/fog/ibm/core.rb | 9 +-
lib/fog/ibm/models/compute/address.rb | 1 -
lib/fog/ibm/models/compute/addresses.rb | 3 -
lib/fog/ibm/models/compute/image.rb | 2 -
lib/fog/ibm/models/compute/images.rb | 3 -
lib/fog/ibm/models/compute/instance-types.rb | 3 -
lib/fog/ibm/models/compute/keys.rb | 3 -
lib/fog/ibm/models/compute/locations.rb | 3 -
lib/fog/ibm/models/compute/server.rb | 6 +-
lib/fog/ibm/models/compute/servers.rb | 3 -
lib/fog/ibm/models/compute/vlan.rb | 2 -
lib/fog/ibm/models/compute/vlans.rb | 3 -
lib/fog/ibm/models/storage/offerings.rb | 3 -
lib/fog/ibm/models/storage/volume.rb | 2 -
lib/fog/ibm/models/storage/volumes.rb | 3 -
lib/fog/ibm/requests/compute/clone_image.rb | 4 -
lib/fog/ibm/requests/compute/create_address.rb | 4 -
lib/fog/ibm/requests/compute/create_image.rb | 4 -
lib/fog/ibm/requests/compute/create_instance.rb | 4 -
lib/fog/ibm/requests/compute/create_key.rb | 4 -
lib/fog/ibm/requests/compute/delete_address.rb | 4 -
lib/fog/ibm/requests/compute/delete_image.rb | 4 -
lib/fog/ibm/requests/compute/delete_instance.rb | 4 -
lib/fog/ibm/requests/compute/delete_key.rb | 4 -
lib/fog/ibm/requests/compute/get_image.rb | 4 -
.../ibm/requests/compute/get_image_agreement.rb | 4 -
lib/fog/ibm/requests/compute/get_image_manifest.rb | 4 -
lib/fog/ibm/requests/compute/get_instance.rb | 4 -
lib/fog/ibm/requests/compute/get_instance_logs.rb | 2 -
lib/fog/ibm/requests/compute/get_key.rb | 4 -
lib/fog/ibm/requests/compute/get_location.rb | 4 -
lib/fog/ibm/requests/compute/get_request.rb | 4 -
.../ibm/requests/compute/list_address_offerings.rb | 4 -
lib/fog/ibm/requests/compute/list_addresses.rb | 4 -
lib/fog/ibm/requests/compute/list_images.rb | 4 -
lib/fog/ibm/requests/compute/list_instances.rb | 4 -
lib/fog/ibm/requests/compute/list_keys.rb | 4 -
lib/fog/ibm/requests/compute/list_locations.rb | 4 -
lib/fog/ibm/requests/compute/list_vlans.rb | 4 -
lib/fog/ibm/requests/compute/modify_instance.rb | 3 -
lib/fog/ibm/requests/compute/modify_key.rb | 4 -
lib/fog/ibm/requests/storage/create_volume.rb | 3 -
lib/fog/ibm/requests/storage/delete_volume.rb | 4 -
lib/fog/ibm/requests/storage/get_volume.rb | 4 -
lib/fog/ibm/requests/storage/list_offerings.rb | 4 -
lib/fog/ibm/requests/storage/list_volumes.rb | 4 -
lib/fog/ibm/storage.rb | 5 -
lib/fog/internet_archive/core.rb | 12 +-
.../internet_archive/models/storage/directories.rb | 4 -
.../internet_archive/models/storage/directory.rb | 4 -
lib/fog/internet_archive/models/storage/file.rb | 13 -
lib/fog/internet_archive/models/storage/files.rb | 5 +-
.../models/storage/ia_attributes.rb | 7 +-
.../parsers/storage/access_control_list.rb | 4 -
.../parsers/storage/complete_multipart_upload.rb | 4 -
.../parsers/storage/copy_object.rb | 4 -
.../parsers/storage/cors_configuration.rb | 3 -
.../parsers/storage/delete_multiple_objects.rb | 5 -
.../internet_archive/parsers/storage/get_bucket.rb | 4 -
.../parsers/storage/get_bucket_lifecycle.rb | 2 -
.../parsers/storage/get_bucket_location.rb | 4 -
.../parsers/storage/get_bucket_logging.rb | 4 -
.../parsers/storage/get_bucket_website.rb | 4 -
.../parsers/storage/get_request_payment.rb | 4 -
.../parsers/storage/get_service.rb | 4 -
.../parsers/storage/initiate_multipart_upload.rb | 4 -
.../parsers/storage/list_multipart_uploads.rb | 4 -
.../internet_archive/parsers/storage/list_parts.rb | 4 -
.../requests/storage/abort_multipart_upload.rb | 1 -
.../internet_archive/requests/storage/acl_utils.rb | 8 +-
.../requests/storage/complete_multipart_upload.rb | 2 -
.../requests/storage/copy_object.rb | 4 -
.../requests/storage/cors_utils.rb | 2 -
.../requests/storage/delete_bucket.rb | 5 -
.../requests/storage/delete_bucket_cors.rb | 3 -
.../requests/storage/delete_bucket_lifecycle.rb | 1 -
.../requests/storage/delete_bucket_policy.rb | 3 -
.../requests/storage/delete_bucket_website.rb | 3 -
.../requests/storage/delete_multiple_objects.rb | 5 -
.../requests/storage/delete_object.rb | 4 -
.../requests/storage/get_bucket.rb | 8 +-
.../requests/storage/get_bucket_acl.rb | 4 -
.../requests/storage/get_bucket_cors.rb | 4 -
.../requests/storage/get_bucket_lifecycle.rb | 3 -
.../requests/storage/get_bucket_location.rb | 4 -
.../requests/storage/get_bucket_logging.rb | 2 -
.../requests/storage/get_bucket_policy.rb | 3 -
.../requests/storage/get_bucket_website.rb | 2 -
.../requests/storage/get_object.rb | 6 +-
.../requests/storage/get_object_acl.rb | 4 -
.../requests/storage/get_object_http_url.rb | 7 -
.../requests/storage/get_object_https_url.rb | 7 -
.../requests/storage/get_object_torrent.rb | 2 -
.../requests/storage/get_object_url.rb | 6 -
.../requests/storage/get_request_payment.rb | 4 -
.../requests/storage/get_service.rb | 4 -
.../requests/storage/head_object.rb | 4 -
.../requests/storage/initiate_multipart_upload.rb | 2 -
.../requests/storage/list_multipart_uploads.rb | 2 -
.../requests/storage/list_parts.rb | 2 -
.../requests/storage/post_object_hidden_fields.rb | 2 -
.../requests/storage/put_bucket.rb | 4 -
.../requests/storage/put_bucket_acl.rb | 2 -
.../requests/storage/put_bucket_cors.rb | 2 -
.../requests/storage/put_bucket_lifecycle.rb | 1 -
.../requests/storage/put_bucket_logging.rb | 2 -
.../requests/storage/put_bucket_policy.rb | 3 -
.../requests/storage/put_bucket_website.rb | 5 -
.../requests/storage/put_object.rb | 4 -
.../requests/storage/put_object_acl.rb | 2 -
.../requests/storage/put_object_url.rb | 5 -
.../requests/storage/put_request_payment.rb | 4 -
.../requests/storage/sync_clock.rb | 4 -
.../requests/storage/upload_part.rb | 2 -
lib/fog/internet_archive/signaturev4.rb | 4 +-
lib/fog/internet_archive/storage.rb | 5 -
lib/fog/joyent.rb | 1 -
lib/fog/joyent/analytics.rb | 5 +-
lib/fog/joyent/compute.rb | 6 +-
lib/fog/joyent/core.rb | 1 -
lib/fog/joyent/errors.rb | 1 -
lib/fog/joyent/models/analytics/field.rb | 1 -
lib/fog/joyent/models/analytics/fields.rb | 2 -
lib/fog/joyent/models/analytics/instrumentation.rb | 1 -
.../joyent/models/analytics/instrumentations.rb | 3 -
lib/fog/joyent/models/analytics/joyent_module.rb | 2 -
lib/fog/joyent/models/analytics/joyent_modules.rb | 2 -
lib/fog/joyent/models/analytics/metric.rb | 1 -
lib/fog/joyent/models/analytics/metrics.rb | 2 -
lib/fog/joyent/models/analytics/transformations.rb | 2 -
lib/fog/joyent/models/analytics/types.rb | 2 -
lib/fog/joyent/models/compute/datacenter.rb | 1 -
lib/fog/joyent/models/compute/datacenters.rb | 4 -
lib/fog/joyent/models/compute/flavor.rb | 2 -
lib/fog/joyent/models/compute/flavors.rb | 4 -
lib/fog/joyent/models/compute/image.rb | 2 -
lib/fog/joyent/models/compute/images.rb | 4 -
lib/fog/joyent/models/compute/keys.rb | 2 -
lib/fog/joyent/models/compute/network.rb | 1 -
lib/fog/joyent/models/compute/networks.rb | 1 -
lib/fog/joyent/models/compute/server.rb | 2 -
lib/fog/joyent/models/compute/servers.rb | 3 -
lib/fog/joyent/models/compute/snapshot.rb | 1 -
lib/fog/joyent/models/compute/snapshots.rb | 2 -
.../joyent/requests/compute/add_machine_tags.rb | 1 -
lib/fog/joyent/requests/compute/create_key.rb | 2 -
.../requests/compute/create_machine_snapshot.rb | 2 -
lib/fog/joyent/requests/compute/delete_key.rb | 2 -
.../requests/compute/delete_machine_metadata.rb | 2 -
.../requests/compute/delete_machine_snapshot.rb | 3 -
lib/fog/joyent/requests/compute/get_dataset.rb | 2 -
lib/fog/joyent/requests/compute/get_image.rb | 2 -
lib/fog/joyent/requests/compute/get_key.rb | 1 -
lib/fog/joyent/requests/compute/get_machine.rb | 1 -
.../requests/compute/get_machine_metadata.rb | 2 -
lib/fog/joyent/requests/compute/get_machine_tag.rb | 2 -
lib/fog/joyent/requests/compute/get_package.rb | 2 -
.../joyent/requests/compute/list_datacenters.rb | 2 -
lib/fog/joyent/requests/compute/list_datasets.rb | 1 -
lib/fog/joyent/requests/compute/list_images.rb | 1 -
lib/fog/joyent/requests/compute/list_keys.rb | 1 -
.../joyent/requests/compute/list_machine_tags.rb | 1 -
lib/fog/joyent/requests/compute/list_machines.rb | 1 -
lib/fog/joyent/requests/compute/list_networks.rb | 1 -
lib/fog/joyent/requests/compute/list_packages.rb | 3 -
lib/fog/libvirt/compute.rb | 6 +-
lib/fog/libvirt/core.rb | 2 -
lib/fog/libvirt/models/compute/interface.rb | 3 -
lib/fog/libvirt/models/compute/interfaces.rb | 4 -
lib/fog/libvirt/models/compute/network.rb | 5 -
lib/fog/libvirt/models/compute/networks.rb | 4 -
lib/fog/libvirt/models/compute/nic.rb | 5 -
lib/fog/libvirt/models/compute/nics.rb | 4 -
lib/fog/libvirt/models/compute/node.rb | 5 -
lib/fog/libvirt/models/compute/nodes.rb | 3 -
lib/fog/libvirt/models/compute/pool.rb | 4 -
lib/fog/libvirt/models/compute/pools.rb | 4 -
lib/fog/libvirt/models/compute/server.rb | 14 +-
lib/fog/libvirt/models/compute/servers.rb | 3 -
lib/fog/libvirt/models/compute/util/uri.rb | 9 +-
lib/fog/libvirt/models/compute/util/util.rb | 1 -
lib/fog/libvirt/models/compute/volume.rb | 4 -
lib/fog/libvirt/models/compute/volumes.rb | 4 -
lib/fog/libvirt/requests/compute/create_volume.rb | 1 -
lib/fog/libvirt/requests/compute/define_pool.rb | 1 -
lib/fog/libvirt/requests/compute/get_node_info.rb | 2 -
lib/fog/libvirt/requests/compute/list_domains.rb | 5 +-
.../libvirt/requests/compute/list_interfaces.rb | 2 -
lib/fog/libvirt/requests/compute/list_networks.rb | 3 -
.../libvirt/requests/compute/list_pool_volumes.rb | 2 -
lib/fog/libvirt/requests/compute/list_pools.rb | 5 +-
lib/fog/libvirt/requests/compute/list_volumes.rb | 1 -
lib/fog/libvirt/requests/compute/update_display.rb | 4 +-
lib/fog/linode/compute.rb | 7 +-
lib/fog/linode/core.rb | 1 -
lib/fog/linode/dns.rb | 5 -
lib/fog/linode/models/compute/disks.rb | 2 +-
lib/fog/linode/models/compute/flavor.rb | 5 +-
lib/fog/linode/models/compute/flavors.rb | 2 +-
lib/fog/linode/models/compute/server.rb | 8 +-
lib/fog/linode/models/dns/record.rb | 3 -
lib/fog/linode/models/dns/records.rb | 4 -
lib/fog/linode/models/dns/zone.rb | 4 -
lib/fog/linode/models/dns/zones.rb | 4 -
.../linode/requests/compute/avail_datacenters.rb | 2 -
.../linode/requests/compute/avail_distributions.rb | 2 -
lib/fog/linode/requests/compute/avail_kernels.rb | 2 -
.../linode/requests/compute/avail_linodeplans.rb | 5 +-
.../linode/requests/compute/avail_stackscripts.rb | 2 -
lib/fog/linode/requests/compute/linode_boot.rb | 2 -
.../requests/compute/linode_config_create.rb | 2 -
.../requests/compute/linode_config_delete.rb | 32 +
.../linode/requests/compute/linode_config_list.rb | 2 -
.../requests/compute/linode_config_update.rb | 33 +
lib/fog/linode/requests/compute/linode_create.rb | 2 -
lib/fog/linode/requests/compute/linode_delete.rb | 2 -
.../linode/requests/compute/linode_disk_create.rb | 2 -
.../compute/linode_disk_createfromdistribution.rb | 2 -
.../compute/linode_disk_createfromstackscript.rb | 2 -
.../linode/requests/compute/linode_disk_delete.rb | 2 -
.../linode/requests/compute/linode_disk_list.rb | 2 -
.../requests/compute/linode_ip_addprivate.rb | 2 -
lib/fog/linode/requests/compute/linode_ip_list.rb | 2 -
lib/fog/linode/requests/compute/linode_list.rb | 2 -
lib/fog/linode/requests/compute/linode_reboot.rb | 2 -
lib/fog/linode/requests/compute/linode_shutdown.rb | 2 -
lib/fog/linode/requests/compute/linode_update.rb | 2 -
.../linode/requests/compute/stackscript_list.rb | 2 -
lib/fog/linode/requests/dns/domain_create.rb | 2 -
lib/fog/linode/requests/dns/domain_delete.rb | 2 -
lib/fog/linode/requests/dns/domain_list.rb | 2 -
.../linode/requests/dns/domain_resource_create.rb | 2 -
.../linode/requests/dns/domain_resource_delete.rb | 2 -
.../linode/requests/dns/domain_resource_list.rb | 2 -
.../linode/requests/dns/domain_resource_update.rb | 3 -
lib/fog/linode/requests/dns/domain_update.rb | 4 -
lib/fog/local/core.rb | 2 -
lib/fog/local/models/storage/directories.rb | 4 -
lib/fog/local/models/storage/directory.rb | 4 -
lib/fog/local/models/storage/file.rb | 14 +-
lib/fog/local/models/storage/files.rb | 7 +-
lib/fog/local/storage.rb | 4 -
lib/fog/ninefold/compute.rb | 9 +-
lib/fog/ninefold/core.rb | 2 -
lib/fog/ninefold/models/compute/address.rb | 3 -
lib/fog/ninefold/models/compute/addresses.rb | 4 -
lib/fog/ninefold/models/compute/flavor.rb | 5 -
lib/fog/ninefold/models/compute/flavors.rb | 4 -
lib/fog/ninefold/models/compute/image.rb | 4 -
lib/fog/ninefold/models/compute/images.rb | 4 -
.../ninefold/models/compute/ip_forwarding_rule.rb | 3 -
.../ninefold/models/compute/ip_forwarding_rules.rb | 4 -
lib/fog/ninefold/models/compute/server.rb | 3 -
lib/fog/ninefold/models/compute/servers.rb | 4 -
.../compute/assign_to_load_balancer_rule.rb | 2 -
.../requests/compute/associate_ip_address.rb | 2 -
.../compute/change_service_for_virtual_machine.rb | 2 -
.../requests/compute/create_ip_forwarding_rule.rb | 2 -
.../requests/compute/delete_ip_forwarding_rule.rb | 2 -
.../requests/compute/deploy_virtual_machine.rb | 2 -
.../requests/compute/destroy_virtual_machine.rb | 2 -
.../requests/compute/disable_static_nat.rb | 2 -
.../requests/compute/disassociate_ip_address.rb | 2 -
.../ninefold/requests/compute/enable_static_nat.rb | 2 -
lib/fog/ninefold/requests/compute/list_accounts.rb | 2 -
.../ninefold/requests/compute/list_async_jobs.rb | 2 -
.../ninefold/requests/compute/list_capabilities.rb | 2 -
.../requests/compute/list_disk_offerings.rb | 2 -
lib/fog/ninefold/requests/compute/list_events.rb | 2 -
.../ninefold/requests/compute/list_hypervisors.rb | 2 -
.../requests/compute/list_ip_forwarding_rules.rb | 2 -
.../compute/list_load_balancer_rule_instances.rb | 4 -
.../requests/compute/list_load_balancer_rules.rb | 3 -
.../requests/compute/list_network_offerings.rb | 2 -
lib/fog/ninefold/requests/compute/list_networks.rb | 2 -
.../requests/compute/list_public_ip_addresses.rb | 2 -
.../requests/compute/list_resource_limits.rb | 2 -
.../requests/compute/list_service_offerings.rb | 2 -
.../ninefold/requests/compute/list_templates.rb | 2 -
.../requests/compute/list_virtual_machines.rb | 2 -
lib/fog/ninefold/requests/compute/list_zones.rb | 2 -
.../requests/compute/query_async_job_result.rb | 2 -
.../requests/compute/reboot_virtual_machine.rb | 2 -
.../compute/remove_from_load_balancer_rule.rb | 1 -
.../compute/reset_password_for_virtual_machine.rb | 2 -
.../requests/compute/start_virtual_machine.rb | 2 -
.../requests/compute/stop_virtual_machine.rb | 2 -
.../requests/compute/update_load_balancer_rule.rb | 4 -
.../requests/compute/update_virtual_machine.rb | 2 -
lib/fog/ninefold/storage.rb | 1 -
lib/fog/opennebula.rb | 1 +
lib/fog/opennebula/README.md | 113 +++
lib/fog/opennebula/compute.rb | 57 ++
lib/fog/opennebula/core.rb | 8 +
lib/fog/opennebula/models/compute/flavor.rb | 133 ++++
lib/fog/opennebula/models/compute/flavors.rb | 35 +
lib/fog/opennebula/models/compute/group.rb | 22 +
lib/fog/opennebula/models/compute/groups.rb | 34 +
lib/fog/opennebula/models/compute/interface.rb | 33 +
lib/fog/opennebula/models/compute/interfaces.rb | 12 +
lib/fog/opennebula/models/compute/network.rb | 41 +
lib/fog/opennebula/models/compute/networks.rb | 21 +
lib/fog/opennebula/models/compute/server.rb | 92 +++
lib/fog/opennebula/models/compute/servers.rb | 26 +
.../opennebula/requests/compute/OpenNebulaVNC.rb | 336 ++++++++
.../opennebula/requests/compute/get_vnc_console.rb | 47 ++
lib/fog/opennebula/requests/compute/list_groups.rb | 79 ++
.../opennebula/requests/compute/list_networks.rb | 63 ++
lib/fog/opennebula/requests/compute/list_vms.rb | 87 ++
.../opennebula/requests/compute/template_pool.rb | 93 +++
lib/fog/opennebula/requests/compute/vm_allocate.rb | 90 +++
lib/fog/opennebula/requests/compute/vm_destroy.rb | 22 +
lib/fog/opennebula/requests/compute/vm_resume.rb | 37 +
lib/fog/opennebula/requests/compute/vm_stop.rb | 22 +
lib/fog/openstack/compute.rb | 5 +-
lib/fog/openstack/core.rb | 11 +-
lib/fog/openstack/examples/compute/basics.rb | 26 -
lib/fog/openstack/examples/identity/basics.rb | 1 -
.../examples/network/network_subnets_routers.rb | 1 -
lib/fog/openstack/identity.rb | 2 -
lib/fog/openstack/image.rb | 1 -
lib/fog/openstack/metering.rb | 5 -
lib/fog/openstack/models/compute/address.rb | 4 -
lib/fog/openstack/models/compute/addresses.rb | 5 -
lib/fog/openstack/models/compute/flavors.rb | 4 -
lib/fog/openstack/models/compute/host.rb | 5 -
lib/fog/openstack/models/compute/hosts.rb | 4 -
lib/fog/openstack/models/compute/image.rb | 4 -
lib/fog/openstack/models/compute/images.rb | 4 -
lib/fog/openstack/models/compute/key_pair.rb | 6 +-
lib/fog/openstack/models/compute/key_pairs.rb | 3 -
lib/fog/openstack/models/compute/metadata.rb | 4 -
lib/fog/openstack/models/compute/metadatum.rb | 2 -
lib/fog/openstack/models/compute/security_group.rb | 1 -
.../models/compute/security_group_rules.rb | 1 -
.../openstack/models/compute/security_groups.rb | 3 -
lib/fog/openstack/models/compute/server.rb | 43 +-
lib/fog/openstack/models/compute/servers.rb | 4 -
lib/fog/openstack/models/compute/snapshot.rb | 6 -
lib/fog/openstack/models/compute/snapshots.rb | 2 -
lib/fog/openstack/models/compute/tenants.rb | 4 +-
lib/fog/openstack/models/compute/volume.rb | 6 -
lib/fog/openstack/models/compute/volumes.rb | 2 -
lib/fog/openstack/models/identity/roles.rb | 1 -
lib/fog/openstack/models/identity/user.rb | 1 -
lib/fog/openstack/models/image/image.rb | 4 -
lib/fog/openstack/models/meta_parent.rb | 2 -
lib/fog/openstack/models/metering/resource.rb | 4 -
lib/fog/openstack/models/metering/resources.rb | 2 -
lib/fog/openstack/models/network/floating_ip.rb | 7 -
lib/fog/openstack/models/network/floating_ips.rb | 2 -
.../openstack/models/network/lb_health_monitor.rb | 1 -
.../openstack/models/network/lb_health_monitors.rb | 2 -
lib/fog/openstack/models/network/lb_member.rb | 1 -
lib/fog/openstack/models/network/lb_members.rb | 2 -
lib/fog/openstack/models/network/lb_pool.rb | 1 -
lib/fog/openstack/models/network/lb_pools.rb | 2 -
lib/fog/openstack/models/network/lb_vip.rb | 1 -
lib/fog/openstack/models/network/lb_vips.rb | 2 -
lib/fog/openstack/models/network/networks.rb | 2 -
lib/fog/openstack/models/network/port.rb | 1 -
lib/fog/openstack/models/network/ports.rb | 2 -
lib/fog/openstack/models/network/router.rb | 1 -
lib/fog/openstack/models/network/routers.rb | 2 -
.../models/network/security_group_rules.rb | 1 -
.../openstack/models/network/security_groups.rb | 2 -
lib/fog/openstack/models/network/subnet.rb | 1 -
lib/fog/openstack/models/network/subnets.rb | 2 -
lib/fog/openstack/models/storage/directories.rb | 4 -
lib/fog/openstack/models/storage/directory.rb | 12 +-
lib/fog/openstack/models/storage/file.rb | 4 -
lib/fog/openstack/models/storage/files.rb | 6 +-
lib/fog/openstack/models/volume/volume.rb | 7 -
lib/fog/openstack/models/volume/volumes.rb | 3 -
lib/fog/openstack/network.rb | 3 +-
lib/fog/openstack/orchestration.rb | 1 -
.../requests/compute/add_security_group.rb | 4 -
.../openstack/requests/compute/allocate_address.rb | 3 -
.../requests/compute/associate_address.rb | 3 -
.../openstack/requests/compute/attach_volume.rb | 5 -
.../requests/compute/change_server_password.rb | 4 -
.../requests/compute/confirm_resize_server.rb | 4 -
lib/fog/openstack/requests/compute/create_image.rb | 5 -
.../openstack/requests/compute/create_key_pair.rb | 3 -
.../requests/compute/create_security_group.rb | 2 -
.../requests/compute/create_security_group_rule.rb | 2 -
.../openstack/requests/compute/create_server.rb | 7 +-
.../openstack/requests/compute/create_volume.rb | 7 +-
.../requests/compute/create_volume_snapshot.rb | 3 -
lib/fog/openstack/requests/compute/delete_image.rb | 7 +-
.../openstack/requests/compute/delete_key_pair.rb | 2 -
lib/fog/openstack/requests/compute/delete_meta.rb | 12 +-
.../openstack/requests/compute/delete_metadata.rb | 5 -
.../requests/compute/delete_security_group.rb | 2 -
.../requests/compute/delete_security_group_rule.rb | 4 +-
.../openstack/requests/compute/delete_server.rb | 6 +-
.../openstack/requests/compute/delete_snapshot.rb | 3 -
.../openstack/requests/compute/delete_volume.rb | 5 -
.../openstack/requests/compute/detach_volume.rb | 4 -
.../requests/compute/disassociate_address.rb | 2 -
lib/fog/openstack/requests/compute/get_address.rb | 3 -
.../requests/compute/get_console_output.rb | 4 -
.../requests/compute/get_flavor_details.rb | 4 -
.../openstack/requests/compute/get_host_details.rb | 8 -
.../requests/compute/get_image_details.rb | 7 +-
lib/fog/openstack/requests/compute/get_limits.rb | 4 -
lib/fog/openstack/requests/compute/get_metadata.rb | 5 -
lib/fog/openstack/requests/compute/get_quota.rb | 5 -
.../requests/compute/get_quota_defaults.rb | 5 -
.../requests/compute/get_security_group.rb | 2 -
.../requests/compute/get_security_group_rule.rb | 2 +-
.../requests/compute/get_server_details.rb | 6 +-
.../requests/compute/get_server_volumes.rb | 10 +-
.../requests/compute/get_snapshot_details.rb | 5 -
lib/fog/openstack/requests/compute/get_usage.rb | 2 -
.../requests/compute/get_volume_details.rb | 5 -
.../requests/compute/list_address_pools.rb | 5 -
.../openstack/requests/compute/list_addresses.rb | 6 +-
.../requests/compute/list_all_addresses.rb | 3 -
lib/fog/openstack/requests/compute/list_flavors.rb | 4 -
.../requests/compute/list_flavors_detail.rb | 4 -
lib/fog/openstack/requests/compute/list_hosts.rb | 5 -
lib/fog/openstack/requests/compute/list_images.rb | 4 -
.../requests/compute/list_images_detail.rb | 4 -
.../openstack/requests/compute/list_key_pairs.rb | 2 -
.../openstack/requests/compute/list_metadata.rb | 4 -
.../requests/compute/list_private_addresses.rb | 6 +-
.../requests/compute/list_public_addresses.rb | 6 +-
.../requests/compute/list_security_groups.rb | 2 -
lib/fog/openstack/requests/compute/list_servers.rb | 4 -
.../requests/compute/list_servers_detail.rb | 4 -
.../openstack/requests/compute/list_snapshots.rb | 5 -
lib/fog/openstack/requests/compute/list_usages.rb | 2 -
lib/fog/openstack/requests/compute/list_volumes.rb | 4 -
.../requests/compute/live_migrate_server.rb | 5 -
.../openstack/requests/compute/migrate_server.rb | 4 -
.../openstack/requests/compute/reboot_server.rb | 4 -
.../openstack/requests/compute/rebuild_server.rb | 5 -
.../openstack/requests/compute/release_address.rb | 5 -
.../requests/compute/remove_security_group.rb | 4 -
.../requests/compute/reset_server_state.rb | 4 -
.../openstack/requests/compute/resize_server.rb | 4 -
.../requests/compute/revert_resize_server.rb | 4 -
.../openstack/requests/compute/server_action.rb | 2 -
lib/fog/openstack/requests/compute/set_metadata.rb | 12 +-
lib/fog/openstack/requests/compute/set_tenant.rb | 2 -
lib/fog/openstack/requests/compute/start_server.rb | 24 +
lib/fog/openstack/requests/compute/stop_server.rb | 24 +
lib/fog/openstack/requests/compute/update_meta.rb | 12 +-
.../openstack/requests/compute/update_metadata.rb | 12 +-
lib/fog/openstack/requests/compute/update_quota.rb | 4 -
.../openstack/requests/compute/update_server.rb | 6 +-
lib/fog/openstack/requests/identity/check_token.rb | 5 -
.../requests/identity/create_ec2_credential.rb | 1 -
lib/fog/openstack/requests/identity/create_role.rb | 1 -
lib/fog/openstack/requests/identity/create_user.rb | 4 -
.../requests/identity/create_user_role.rb | 2 -
.../requests/identity/delete_ec2_credential.rb | 2 -
lib/fog/openstack/requests/identity/delete_role.rb | 4 -
lib/fog/openstack/requests/identity/delete_user.rb | 4 -
.../requests/identity/delete_user_role.rb | 3 -
.../requests/identity/get_ec2_credential.rb | 1 -
.../requests/identity/get_tenants_by_id.rb | 5 -
.../requests/identity/get_tenants_by_name.rb | 5 -
.../openstack/requests/identity/get_user_by_id.rb | 2 -
.../requests/identity/get_user_by_name.rb | 4 -
.../requests/identity/list_ec2_credentials.rb | 1 -
.../requests/identity/list_endpoints_for_token.rb | 5 -
lib/fog/openstack/requests/identity/list_roles.rb | 5 -
.../requests/identity/list_user_global_roles.rb | 4 -
lib/fog/openstack/requests/identity/list_users.rb | 1 -
lib/fog/openstack/requests/identity/set_tenant.rb | 2 -
lib/fog/openstack/requests/identity/update_user.rb | 4 -
.../openstack/requests/identity/validate_token.rb | 5 -
lib/fog/openstack/requests/image/create_image.rb | 3 -
lib/fog/openstack/requests/image/delete_image.rb | 2 -
.../requests/image/list_public_images_detailed.rb | 1 -
lib/fog/openstack/requests/image/set_tenant.rb | 2 -
lib/fog/openstack/requests/image/update_image.rb | 4 -
.../openstack/requests/metering/get_resource.rb | 4 -
lib/fog/openstack/requests/metering/get_samples.rb | 5 -
.../openstack/requests/metering/get_statistics.rb | 5 -
lib/fog/openstack/requests/metering/list_meters.rb | 5 -
.../openstack/requests/metering/list_resources.rb | 4 -
.../requests/network/add_router_interface.rb | 2 -
.../requests/network/associate_floating_ip.rb | 2 -
.../network/associate_lb_health_monitor.rb | 4 +-
.../requests/network/create_floating_ip.rb | 2 -
.../requests/network/create_lb_health_monitor.rb | 2 -
.../openstack/requests/network/create_lb_member.rb | 2 -
.../openstack/requests/network/create_lb_pool.rb | 2 -
.../openstack/requests/network/create_lb_vip.rb | 2 -
.../openstack/requests/network/create_network.rb | 2 -
lib/fog/openstack/requests/network/create_port.rb | 2 -
.../openstack/requests/network/create_router.rb | 2 -
.../openstack/requests/network/create_subnet.rb | 2 -
.../requests/network/delete_floating_ip.rb | 2 -
.../requests/network/delete_lb_health_monitor.rb | 2 -
.../openstack/requests/network/delete_lb_member.rb | 2 -
.../openstack/requests/network/delete_lb_pool.rb | 2 -
.../openstack/requests/network/delete_lb_vip.rb | 2 -
.../openstack/requests/network/delete_network.rb | 2 -
lib/fog/openstack/requests/network/delete_port.rb | 2 -
lib/fog/openstack/requests/network/delete_quota.rb | 3 -
.../openstack/requests/network/delete_router.rb | 2 -
.../requests/network/delete_security_group_rule.rb | 4 -
.../openstack/requests/network/delete_subnet.rb | 2 -
.../requests/network/disassociate_floating_ip.rb | 2 -
.../network/disassociate_lb_health_monitor.rb | 4 +-
.../openstack/requests/network/get_floating_ip.rb | 3 -
.../requests/network/get_lb_health_monitor.rb | 2 -
.../openstack/requests/network/get_lb_member.rb | 2 -
lib/fog/openstack/requests/network/get_lb_pool.rb | 2 -
.../requests/network/get_lb_pool_stats.rb | 2 -
lib/fog/openstack/requests/network/get_lb_vip.rb | 2 -
lib/fog/openstack/requests/network/get_network.rb | 2 -
lib/fog/openstack/requests/network/get_port.rb | 2 -
lib/fog/openstack/requests/network/get_quota.rb | 5 -
lib/fog/openstack/requests/network/get_quotas.rb | 5 -
lib/fog/openstack/requests/network/get_router.rb | 2 -
lib/fog/openstack/requests/network/get_subnet.rb | 2 -
.../requests/network/list_floating_ips.rb | 2 -
.../requests/network/list_lb_health_monitors.rb | 2 -
.../openstack/requests/network/list_lb_members.rb | 2 -
.../openstack/requests/network/list_lb_pools.rb | 2 -
lib/fog/openstack/requests/network/list_lb_vips.rb | 2 -
.../openstack/requests/network/list_networks.rb | 1 -
lib/fog/openstack/requests/network/list_ports.rb | 2 -
lib/fog/openstack/requests/network/list_routers.rb | 2 -
.../requests/network/list_security_group_rules.rb | 4 -
.../requests/network/list_security_groups.rb | 4 -
lib/fog/openstack/requests/network/list_subnets.rb | 2 -
.../requests/network/remove_router_interface.rb | 2 -
lib/fog/openstack/requests/network/set_tenant.rb | 2 -
.../requests/network/update_lb_health_monitor.rb | 6 +-
.../openstack/requests/network/update_lb_member.rb | 6 +-
.../openstack/requests/network/update_lb_pool.rb | 6 +-
.../openstack/requests/network/update_lb_vip.rb | 6 +-
.../openstack/requests/network/update_network.rb | 6 +-
lib/fog/openstack/requests/network/update_port.rb | 6 +-
lib/fog/openstack/requests/network/update_quota.rb | 6 -
.../openstack/requests/network/update_router.rb | 3 -
.../openstack/requests/network/update_subnet.rb | 6 +-
.../requests/orchestration/create_stack.rb | 2 -
.../requests/orchestration/delete_stack.rb | 2 -
.../requests/orchestration/list_stacks.rb | 2 -
.../requests/orchestration/update_stack.rb | 2 -
lib/fog/openstack/requests/storage/copy_object.rb | 2 -
.../openstack/requests/storage/delete_container.rb | 2 -
.../requests/storage/delete_multiple_objects.rb | 2 -
.../openstack/requests/storage/delete_object.rb | 2 -
.../requests/storage/delete_static_large_object.rb | 2 -
.../openstack/requests/storage/get_container.rb | 2 -
.../openstack/requests/storage/get_containers.rb | 2 -
lib/fog/openstack/requests/storage/get_object.rb | 2 -
.../requests/storage/get_object_https_url.rb | 5 -
.../openstack/requests/storage/head_container.rb | 2 -
.../openstack/requests/storage/head_containers.rb | 2 -
lib/fog/openstack/requests/storage/head_object.rb | 2 -
.../requests/storage/post_set_meta_temp_url_key.rb | 4 -
.../openstack/requests/storage/put_container.rb | 9 +-
.../requests/storage/put_dynamic_obj_manifest.rb | 2 -
lib/fog/openstack/requests/storage/put_object.rb | 1 -
.../requests/storage/put_object_manifest.rb | 2 -
.../requests/storage/put_static_obj_manifest.rb | 2 -
lib/fog/openstack/requests/volume/create_volume.rb | 6 +-
.../requests/volume/create_volume_snapshot.rb | 3 -
.../openstack/requests/volume/delete_snapshot.rb | 3 -
lib/fog/openstack/requests/volume/delete_volume.rb | 3 -
lib/fog/openstack/requests/volume/get_quota.rb | 5 -
.../requests/volume/get_quota_defaults.rb | 5 -
.../requests/volume/get_snapshot_details.rb | 5 -
.../requests/volume/get_volume_details.rb | 5 -
.../openstack/requests/volume/list_snapshots.rb | 5 -
lib/fog/openstack/requests/volume/list_volumes.rb | 5 -
lib/fog/openstack/requests/volume/set_tenant.rb | 2 -
lib/fog/openstack/requests/volume/update_quota.rb | 4 -
lib/fog/openstack/storage.rb | 13 +-
lib/fog/openstack/volume.rb | 3 -
lib/fog/openvz/compute.rb | 7 -
lib/fog/openvz/core.rb | 1 -
lib/fog/openvz/models/compute/server.rb | 5 -
lib/fog/openvz/models/compute/servers.rb | 3 -
lib/fog/openvz/requests/compute/compact_server.rb | 4 -
lib/fog/openvz/requests/compute/convert_server.rb | 4 -
lib/fog/openvz/requests/compute/create_server.rb | 4 -
lib/fog/openvz/requests/compute/destroy_server.rb | 4 -
lib/fog/openvz/requests/compute/exec2_server.rb | 4 -
lib/fog/openvz/requests/compute/exec_server.rb | 4 -
.../openvz/requests/compute/get_server_details.rb | 4 -
lib/fog/openvz/requests/compute/list_servers.rb | 4 -
lib/fog/openvz/requests/compute/mount_server.rb | 4 -
.../openvz/requests/compute/quotainit_server.rb | 4 -
lib/fog/openvz/requests/compute/quotaoff_server.rb | 4 -
lib/fog/openvz/requests/compute/quotaon_server.rb | 4 -
lib/fog/openvz/requests/compute/restart_server.rb | 4 -
lib/fog/openvz/requests/compute/resume_server.rb | 4 -
.../openvz/requests/compute/runscript_server.rb | 4 -
lib/fog/openvz/requests/compute/set_server.rb | 5 -
.../requests/compute/snapshot_delete_server.rb | 4 -
.../requests/compute/snapshot_list_server.rb | 4 -
.../requests/compute/snapshot_mount_server.rb | 4 -
lib/fog/openvz/requests/compute/snapshot_server.rb | 4 -
.../requests/compute/snapshot_switch_server.rb | 4 -
.../requests/compute/snapshot_umount_server.rb | 4 -
lib/fog/openvz/requests/compute/start_server.rb | 4 -
lib/fog/openvz/requests/compute/status_server.rb | 4 -
lib/fog/openvz/requests/compute/stop_server.rb | 4 -
lib/fog/openvz/requests/compute/suspend_server.rb | 4 -
lib/fog/openvz/requests/compute/umount_server.rb | 4 -
lib/fog/ovirt/compute.rb | 2 -
lib/fog/ovirt/core.rb | 2 -
lib/fog/ovirt/models/compute/cluster.rb | 4 -
lib/fog/ovirt/models/compute/clusters.rb | 3 -
lib/fog/ovirt/models/compute/interface.rb | 3 -
lib/fog/ovirt/models/compute/interfaces.rb | 3 -
lib/fog/ovirt/models/compute/quota.rb | 5 -
lib/fog/ovirt/models/compute/quotas.rb | 4 -
lib/fog/ovirt/models/compute/server.rb | 6 +-
lib/fog/ovirt/models/compute/servers.rb | 3 -
lib/fog/ovirt/models/compute/template.rb | 4 -
lib/fog/ovirt/models/compute/templates.rb | 3 -
lib/fog/ovirt/models/compute/volume.rb | 3 -
lib/fog/ovirt/models/compute/volumes.rb | 3 -
lib/fog/ovirt/requests/compute/add_interface.rb | 3 -
lib/fog/ovirt/requests/compute/add_volume.rb | 2 -
lib/fog/ovirt/requests/compute/create_vm.rb | 2 -
lib/fog/ovirt/requests/compute/datacenters.rb | 4 +-
.../ovirt/requests/compute/destroy_interface.rb | 7 +-
lib/fog/ovirt/requests/compute/destroy_vm.rb | 7 +-
lib/fog/ovirt/requests/compute/destroy_volume.rb | 7 +-
lib/fog/ovirt/requests/compute/get_cluster.rb | 1 -
lib/fog/ovirt/requests/compute/get_quota.rb | 2 -
lib/fog/ovirt/requests/compute/get_template.rb | 1 -
.../ovirt/requests/compute/get_virtual_machine.rb | 1 -
lib/fog/ovirt/requests/compute/list_clusters.rb | 3 +-
lib/fog/ovirt/requests/compute/list_networks.rb | 1 -
lib/fog/ovirt/requests/compute/list_quotas.rb | 4 +-
.../requests/compute/list_template_interfaces.rb | 3 +-
.../requests/compute/list_template_volumes.rb | 3 +-
lib/fog/ovirt/requests/compute/list_templates.rb | 3 +-
.../requests/compute/list_virtual_machines.rb | 3 +-
.../ovirt/requests/compute/list_vm_interfaces.rb | 3 +-
lib/fog/ovirt/requests/compute/list_vm_volumes.rb | 3 +-
lib/fog/ovirt/requests/compute/storage_domains.rb | 4 +-
lib/fog/ovirt/requests/compute/update_interface.rb | 7 +-
lib/fog/ovirt/requests/compute/update_vm.rb | 2 -
lib/fog/ovirt/requests/compute/vm_action.rb | 12 +-
lib/fog/ovirt/requests/compute/vm_ticket.rb | 4 -
lib/fog/rackspace/auto_scale.rb | 2 -
lib/fog/rackspace/block_storage.rb | 9 +-
lib/fog/rackspace/cdn.rb | 4 +-
lib/fog/rackspace/compute.rb | 6 +-
lib/fog/rackspace/compute_v2.rb | 10 +-
lib/fog/rackspace/core.rb | 3 +-
lib/fog/rackspace/databases.rb | 12 +-
lib/fog/rackspace/dns.rb | 5 +-
lib/fog/rackspace/docs/auto_scale.md | 12 +-
lib/fog/rackspace/docs/storage.md | 8 +-
lib/fog/rackspace/errors.rb | 1 -
.../rackspace/examples/auto_scale/add_policy.rb | 2 -
.../examples/auto_scale/create_scaling_group.rb | 4 -
.../examples/auto_scale/delete_scaling_group.rb | 2 -
.../examples/auto_scale/delete_webhook.rb | 2 -
.../examples/block_storage/create_snapshot.rb | 2 -
.../examples/compute_v2/bootstrap_server.rb | 2 -
.../rackspace/examples/compute_v2/create_image.rb | 2 -
.../rackspace/examples/compute_v2/create_server.rb | 2 -
.../rackspace/examples/compute_v2/delete_image.rb | 1 -
.../rackspace/examples/compute_v2/delete_server.rb | 1 -
.../examples/compute_v2/server_attachments.rb | 1 -
.../examples/compute_v2/server_metadata.rb | 2 -
.../rackspace/examples/queues/delete_message.rb | 1 -
.../examples/storage/create_cdn_directory.rb | 1 -
.../examples/storage/create_private_directory.rb | 3 -
.../rackspace/examples/storage/storage_metadata.rb | 6 -
lib/fog/rackspace/examples/storage/upload_file.rb | 1 -
.../examples/storage/upload_large_files.rb | 2 -
lib/fog/rackspace/identity.rb | 1 -
lib/fog/rackspace/load_balancers.rb | 12 +-
lib/fog/rackspace/mock_data.rb | 1 -
lib/fog/rackspace/models/auto_scale/group.rb | 17 +-
.../rackspace/models/auto_scale/group_builder.rb | 7 +-
.../rackspace/models/auto_scale/group_config.rb | 3 -
lib/fog/rackspace/models/auto_scale/groups.rb | 1 -
.../rackspace/models/auto_scale/launch_config.rb | 7 +-
lib/fog/rackspace/models/auto_scale/policies.rb | 2 -
lib/fog/rackspace/models/auto_scale/policy.rb | 2 -
lib/fog/rackspace/models/auto_scale/webhook.rb | 2 -
lib/fog/rackspace/models/auto_scale/webhooks.rb | 1 -
.../rackspace/models/block_storage/snapshots.rb | 1 -
lib/fog/rackspace/models/block_storage/volume.rb | 8 +-
.../rackspace/models/block_storage/volume_type.rb | 1 -
.../rackspace/models/block_storage/volume_types.rb | 1 -
lib/fog/rackspace/models/block_storage/volumes.rb | 1 -
lib/fog/rackspace/models/compute/flavor.rb | 4 -
lib/fog/rackspace/models/compute/flavors.rb | 4 -
lib/fog/rackspace/models/compute/image.rb | 4 -
lib/fog/rackspace/models/compute/images.rb | 4 -
lib/fog/rackspace/models/compute/server.rb | 5 -
lib/fog/rackspace/models/compute/servers.rb | 4 -
lib/fog/rackspace/models/compute_v2/attachment.rb | 5 +-
lib/fog/rackspace/models/compute_v2/attachments.rb | 1 -
lib/fog/rackspace/models/compute_v2/flavor.rb | 2 -
lib/fog/rackspace/models/compute_v2/flavors.rb | 1 -
lib/fog/rackspace/models/compute_v2/image.rb | 1 -
lib/fog/rackspace/models/compute_v2/images.rb | 1 -
lib/fog/rackspace/models/compute_v2/key_pair.rb | 2 -
lib/fog/rackspace/models/compute_v2/key_pairs.rb | 3 -
lib/fog/rackspace/models/compute_v2/meta_parent.rb | 2 -
lib/fog/rackspace/models/compute_v2/metadata.rb | 3 -
lib/fog/rackspace/models/compute_v2/metadatum.rb | 2 -
lib/fog/rackspace/models/compute_v2/server.rb | 39 +-
lib/fog/rackspace/models/compute_v2/servers.rb | 2 -
.../models/compute_v2/virtual_interface.rb | 2 -
lib/fog/rackspace/models/databases/database.rb | 11 +
lib/fog/rackspace/models/databases/databases.rb | 1 -
lib/fog/rackspace/models/databases/flavors.rb | 1 -
lib/fog/rackspace/models/databases/instances.rb | 1 -
lib/fog/rackspace/models/databases/user.rb | 3 +-
lib/fog/rackspace/models/databases/users.rb | 1 -
lib/fog/rackspace/models/dns/callback.rb | 2 -
lib/fog/rackspace/models/dns/record.rb | 2 -
lib/fog/rackspace/models/dns/records.rb | 4 +-
lib/fog/rackspace/models/dns/zone.rb | 1 -
lib/fog/rackspace/models/dns/zones.rb | 4 +-
lib/fog/rackspace/models/identity/credentials.rb | 1 -
lib/fog/rackspace/models/identity/roles.rb | 1 -
.../rackspace/models/identity/service_catalog.rb | 6 +-
lib/fog/rackspace/models/identity/tenants.rb | 1 -
lib/fog/rackspace/models/identity/users.rb | 1 -
.../rackspace/models/load_balancers/access_rule.rb | 1 -
.../models/load_balancers/load_balancer.rb | 67 +-
.../models/load_balancers/load_balancers.rb | 2 -
lib/fog/rackspace/models/load_balancers/node.rb | 2 +-
.../rackspace/models/load_balancers/virtual_ip.rb | 1 -
lib/fog/rackspace/models/monitoring/agent_token.rb | 2 -
.../rackspace/models/monitoring/agent_tokens.rb | 3 +-
lib/fog/rackspace/models/monitoring/alarm.rb | 3 -
.../rackspace/models/monitoring/alarm_example.rb | 2 -
.../rackspace/models/monitoring/alarm_examples.rb | 2 -
lib/fog/rackspace/models/monitoring/alarms.rb | 11 +-
lib/fog/rackspace/models/monitoring/base.rb | 1 -
lib/fog/rackspace/models/monitoring/check.rb | 3 -
lib/fog/rackspace/models/monitoring/check_types.rb | 2 -
lib/fog/rackspace/models/monitoring/checks.rb | 11 +-
lib/fog/rackspace/models/monitoring/data_points.rb | 2 -
lib/fog/rackspace/models/monitoring/entities.rb | 3 +-
lib/fog/rackspace/models/monitoring/entity.rb | 2 -
lib/fog/rackspace/models/monitoring/metric.rb | 3 -
lib/fog/rackspace/models/monitoring/metrics.rb | 2 -
.../rackspace/models/monitoring/notification.rb | 2 -
.../rackspace/models/monitoring/notifications.rb | 2 -
lib/fog/rackspace/models/queues/claim.rb | 5 +-
lib/fog/rackspace/models/queues/claims.rb | 1 -
lib/fog/rackspace/models/queues/message.rb | 3 +-
lib/fog/rackspace/models/queues/messages.rb | 1 -
lib/fog/rackspace/models/queues/queue.rb | 1 -
lib/fog/rackspace/models/queues/queues.rb | 1 -
lib/fog/rackspace/models/storage/directories.rb | 4 -
lib/fog/rackspace/models/storage/directory.rb | 2 -
lib/fog/rackspace/models/storage/file.rb | 4 -
lib/fog/rackspace/models/storage/files.rb | 5 +-
lib/fog/rackspace/models/storage/metadata.rb | 34 +-
lib/fog/rackspace/monitoring.rb | 4 -
lib/fog/rackspace/queues.rb | 13 +-
.../rackspace/requests/auto_scale/create_group.rb | 3 -
.../rackspace/requests/auto_scale/create_policy.rb | 3 -
.../requests/auto_scale/create_webhook.rb | 5 +-
.../rackspace/requests/auto_scale/delete_group.rb | 1 -
.../rackspace/requests/auto_scale/delete_policy.rb | 2 -
.../requests/auto_scale/delete_webhook.rb | 3 +-
.../auto_scale/execute_anonymous_webhook.rb | 1 -
.../requests/auto_scale/execute_policy.rb | 1 -
lib/fog/rackspace/requests/auto_scale/get_group.rb | 3 -
.../requests/auto_scale/get_group_config.rb | 3 -
.../requests/auto_scale/get_group_state.rb | 4 -
.../requests/auto_scale/get_launch_config.rb | 3 -
.../rackspace/requests/auto_scale/get_policy.rb | 6 +-
.../rackspace/requests/auto_scale/get_webhook.rb | 7 +-
.../rackspace/requests/auto_scale/list_groups.rb | 1 -
.../rackspace/requests/auto_scale/list_policies.rb | 1 -
.../rackspace/requests/auto_scale/list_webhooks.rb | 4 +-
.../requests/auto_scale/pause_group_state.rb | 1 -
.../requests/auto_scale/resume_group_state.rb | 1 -
.../requests/auto_scale/update_group_config.rb | 2 -
.../requests/auto_scale/update_launch_config.rb | 2 -
.../rackspace/requests/auto_scale/update_policy.rb | 4 +-
.../requests/auto_scale/update_webhook.rb | 7 +-
.../requests/block_storage/create_snapshot.rb | 1 -
.../requests/block_storage/create_volume.rb | 5 +-
.../requests/block_storage/delete_snapshot.rb | 1 -
.../requests/block_storage/delete_volume.rb | 1 -
.../requests/block_storage/get_snapshot.rb | 1 -
.../rackspace/requests/block_storage/get_volume.rb | 1 -
.../requests/block_storage/get_volume_type.rb | 1 -
.../requests/block_storage/list_snapshots.rb | 1 -
.../requests/block_storage/list_volume_types.rb | 1 -
.../requests/block_storage/list_volumes.rb | 1 -
lib/fog/rackspace/requests/cdn/delete_object.rb | 2 -
lib/fog/rackspace/requests/cdn/get_containers.rb | 4 -
lib/fog/rackspace/requests/cdn/head_container.rb | 4 -
lib/fog/rackspace/requests/cdn/post_container.rb | 4 -
lib/fog/rackspace/requests/cdn/put_container.rb | 4 -
.../requests/compute/confirm_resized_server.rb | 4 -
lib/fog/rackspace/requests/compute/create_image.rb | 4 -
.../rackspace/requests/compute/create_server.rb | 4 -
lib/fog/rackspace/requests/compute/delete_image.rb | 7 +-
.../rackspace/requests/compute/delete_server.rb | 6 +-
.../requests/compute/get_flavor_details.rb | 4 -
.../requests/compute/get_image_details.rb | 2 -
.../requests/compute/get_server_details.rb | 6 +-
.../rackspace/requests/compute/list_addresses.rb | 6 +-
lib/fog/rackspace/requests/compute/list_flavors.rb | 4 -
.../requests/compute/list_flavors_detail.rb | 4 -
lib/fog/rackspace/requests/compute/list_images.rb | 4 -
.../requests/compute/list_images_detail.rb | 4 -
.../requests/compute/list_private_addresses.rb | 6 +-
.../requests/compute/list_public_addresses.rb | 6 +-
lib/fog/rackspace/requests/compute/list_servers.rb | 4 -
.../requests/compute/list_servers_detail.rb | 4 -
.../rackspace/requests/compute/reboot_server.rb | 4 -
.../rackspace/requests/compute/resize_server.rb | 4 -
.../requests/compute/revert_resized_server.rb | 4 -
.../rackspace/requests/compute/server_action.rb | 2 -
.../rackspace/requests/compute/update_server.rb | 6 +-
.../rackspace/requests/compute_v2/attach_volume.rb | 1 -
.../requests/compute_v2/change_server_password.rb | 1 -
.../requests/compute_v2/confirm_resize_server.rb | 1 -
.../rackspace/requests/compute_v2/create_image.rb | 1 -
.../requests/compute_v2/create_keypair.rb | 2 -
.../rackspace/requests/compute_v2/create_server.rb | 43 +
.../compute_v2/create_virtual_interface.rb | 4 +-
.../requests/compute_v2/delete_attachment.rb | 1 -
.../rackspace/requests/compute_v2/delete_image.rb | 3 -
.../requests/compute_v2/delete_keypair.rb | 2 -
.../requests/compute_v2/delete_metadata_item.rb | 3 +-
.../requests/compute_v2/delete_network.rb | 2 +-
.../rackspace/requests/compute_v2/delete_server.rb | 1 -
.../compute_v2/delete_virtual_interface.rb | 4 +-
.../requests/compute_v2/get_attachment.rb | 3 +-
.../rackspace/requests/compute_v2/get_flavor.rb | 3 +-
lib/fog/rackspace/requests/compute_v2/get_image.rb | 3 +-
.../rackspace/requests/compute_v2/get_keypair.rb | 2 -
.../requests/compute_v2/get_metadata_item.rb | 3 +-
.../rackspace/requests/compute_v2/get_network.rb | 2 +-
.../rackspace/requests/compute_v2/get_server.rb | 1 -
.../requests/compute_v2/list_addresses.rb | 4 -
.../compute_v2/list_addresses_by_network.rb | 4 -
.../requests/compute_v2/list_attachments.rb | 1 -
.../rackspace/requests/compute_v2/list_flavors.rb | 1 -
.../requests/compute_v2/list_flavors_detail.rb | 1 -
.../rackspace/requests/compute_v2/list_images.rb | 1 -
.../requests/compute_v2/list_images_detail.rb | 1 -
.../rackspace/requests/compute_v2/list_keypairs.rb | 4 +-
.../rackspace/requests/compute_v2/list_metadata.rb | 3 +-
.../rackspace/requests/compute_v2/list_servers.rb | 1 -
.../requests/compute_v2/list_virtual_interfaces.rb | 4 +-
.../rackspace/requests/compute_v2/reboot_server.rb | 1 -
.../requests/compute_v2/rebuild_server.rb | 1 -
.../rackspace/requests/compute_v2/resize_server.rb | 1 -
.../requests/compute_v2/revert_resize_server.rb | 1 -
.../rackspace/requests/compute_v2/set_metadata.rb | 4 +-
.../requests/compute_v2/set_metadata_item.rb | 3 +-
.../requests/compute_v2/update_metadata.rb | 3 +-
.../rackspace/requests/compute_v2/update_server.rb | 1 -
.../rackspace/requests/databases/create_user.rb | 3 +-
.../requests/databases/grant_user_access.rb | 32 +
.../requests/databases/revoke_user_access.rb | 26 +
lib/fog/rackspace/requests/dns/add_records.rb | 7 +-
lib/fog/rackspace/requests/dns/callback.rb | 1 -
lib/fog/rackspace/requests/dns/create_domains.rb | 6 +-
.../rackspace/requests/dns/list_domain_details.rb | 5 +-
lib/fog/rackspace/requests/dns/list_domains.rb | 1 -
.../rackspace/requests/dns/list_record_details.rb | 1 -
lib/fog/rackspace/requests/dns/list_records.rb | 1 -
lib/fog/rackspace/requests/dns/list_subdomains.rb | 1 -
lib/fog/rackspace/requests/dns/modify_domain.rb | 7 +-
lib/fog/rackspace/requests/dns/modify_record.rb | 7 +-
lib/fog/rackspace/requests/dns/remove_domain.rb | 3 +-
lib/fog/rackspace/requests/dns/remove_domains.rb | 5 +-
lib/fog/rackspace/requests/dns/remove_record.rb | 1 -
lib/fog/rackspace/requests/dns/remove_records.rb | 3 +-
.../load_balancers/create_load_balancer.rb | 101 ++-
.../requests/load_balancers/create_node.rb | 2 +-
.../load_balancers/delete_load_balancer.rb | 2 -
.../requests/load_balancers/delete_nodes.rb | 2 +-
.../requests/load_balancers/get_load_balancer.rb | 13 +-
.../load_balancers/get_load_balancer_usage.rb | 2 +-
.../rackspace/requests/load_balancers/get_stats.rb | 1 -
.../rackspace/requests/load_balancers/get_usage.rb | 2 +-
.../requests/load_balancers/list_load_balancers.rb | 2 +-
.../requests/load_balancers/set_monitor.rb | 6 +-
.../requests/load_balancers/set_ssl_termination.rb | 6 +-
.../load_balancers/update_load_balancer.rb | 3 +-
.../requests/load_balancers/update_node.rb | 4 +-
.../requests/monitoring/create_agent_token.rb | 3 -
.../rackspace/requests/monitoring/create_alarm.rb | 4 -
.../rackspace/requests/monitoring/create_check.rb | 3 -
.../rackspace/requests/monitoring/create_entity.rb | 4 -
.../requests/monitoring/create_notification.rb | 1 -
.../requests/monitoring/delete_agent_token.rb | 4 -
.../rackspace/requests/monitoring/delete_alarm.rb | 4 -
.../rackspace/requests/monitoring/delete_check.rb | 3 -
.../rackspace/requests/monitoring/delete_entity.rb | 4 -
.../requests/monitoring/delete_notification.rb | 1 -
.../requests/monitoring/evaluate_alarm_example.rb | 3 -
lib/fog/rackspace/requests/monitoring/get_agent.rb | 1 -
.../requests/monitoring/get_agent_token.rb | 5 -
lib/fog/rackspace/requests/monitoring/get_alarm.rb | 6 -
.../requests/monitoring/get_alarm_example.rb | 4 -
lib/fog/rackspace/requests/monitoring/get_check.rb | 4 -
.../rackspace/requests/monitoring/get_cpus_info.rb | 2 -
.../requests/monitoring/get_disks_info.rb | 2 -
.../rackspace/requests/monitoring/get_entity.rb | 6 -
.../requests/monitoring/get_filesystems_info.rb | 2 -
.../requests/monitoring/get_logged_in_user_info.rb | 2 -
.../requests/monitoring/get_memory_info.rb | 2 -
.../monitoring/get_network_interfaces_info.rb | 2 -
.../requests/monitoring/get_notification.rb | 4 -
.../requests/monitoring/get_processes_info.rb | 2 -
.../requests/monitoring/get_system_info.rb | 2 -
.../requests/monitoring/list_agent_tokens.rb | 3 -
.../rackspace/requests/monitoring/list_agents.rb | 1 -
.../requests/monitoring/list_alarm_examples.rb | 3 -
.../rackspace/requests/monitoring/list_alarms.rb | 10 +-
.../requests/monitoring/list_check_types.rb | 3 -
.../rackspace/requests/monitoring/list_checks.rb | 8 +-
.../requests/monitoring/list_data_points.rb | 4 -
.../rackspace/requests/monitoring/list_entities.rb | 2 -
.../rackspace/requests/monitoring/list_metrics.rb | 3 -
.../requests/monitoring/list_notification_plans.rb | 3 -
.../requests/monitoring/list_notifications.rb | 4 -
.../rackspace/requests/monitoring/list_overview.rb | 4 -
.../rackspace/requests/monitoring/update_alarm.rb | 4 -
.../rackspace/requests/monitoring/update_check.rb | 3 -
.../rackspace/requests/monitoring/update_entity.rb | 4 -
.../requests/monitoring/update_notification.rb | 1 -
lib/fog/rackspace/requests/queues/create_claim.rb | 6 +-
.../rackspace/requests/queues/create_message.rb | 3 -
lib/fog/rackspace/requests/queues/create_queue.rb | 2 -
lib/fog/rackspace/requests/queues/delete_claim.rb | 3 -
.../rackspace/requests/queues/delete_message.rb | 8 +-
lib/fog/rackspace/requests/queues/delete_queue.rb | 4 -
lib/fog/rackspace/requests/queues/get_claim.rb | 4 -
lib/fog/rackspace/requests/queues/get_message.rb | 4 -
lib/fog/rackspace/requests/queues/get_queue.rb | 2 -
.../rackspace/requests/queues/get_queue_stats.rb | 4 -
lib/fog/rackspace/requests/queues/list_messages.rb | 3 -
lib/fog/rackspace/requests/queues/list_queues.rb | 2 -
lib/fog/rackspace/requests/queues/update_claim.rb | 4 -
lib/fog/rackspace/requests/storage/copy_object.rb | 2 -
.../rackspace/requests/storage/delete_container.rb | 4 -
.../requests/storage/delete_multiple_objects.rb | 4 -
.../rackspace/requests/storage/delete_object.rb | 4 -
.../requests/storage/delete_static_large_object.rb | 5 -
.../rackspace/requests/storage/extract_archive.rb | 1 -
.../rackspace/requests/storage/get_container.rb | 4 -
.../rackspace/requests/storage/get_containers.rb | 3 -
lib/fog/rackspace/requests/storage/get_object.rb | 4 -
.../requests/storage/get_object_http_url.rb | 2 -
.../requests/storage/get_object_https_url.rb | 6 +-
.../rackspace/requests/storage/head_container.rb | 3 -
.../rackspace/requests/storage/head_containers.rb | 8 +-
lib/fog/rackspace/requests/storage/head_object.rb | 4 -
.../requests/storage/post_set_meta_temp_url_key.rb | 4 -
.../rackspace/requests/storage/put_container.rb | 4 -
.../requests/storage/put_dynamic_obj_manifest.rb | 4 -
lib/fog/rackspace/requests/storage/put_object.rb | 3 -
.../requests/storage/put_object_manifest.rb | 2 -
.../requests/storage/put_static_obj_manifest.rb | 6 -
lib/fog/rackspace/service.rb | 2 -
lib/fog/rackspace/storage.rb | 11 +-
lib/fog/rage4.rb | 1 -
lib/fog/rage4/core.rb | 2 -
lib/fog/rage4/dns.rb | 2 -
lib/fog/rage4/models/dns/record.rb | 6 -
lib/fog/rage4/models/dns/records.rb | 4 -
lib/fog/rage4/models/dns/zone.rb | 4 -
lib/fog/rage4/models/dns/zones.rb | 4 -
lib/fog/rage4/requests/dns/create_domain.rb | 4 -
lib/fog/rage4/requests/dns/create_domain_vanity.rb | 4 -
lib/fog/rage4/requests/dns/create_record.rb | 8 -
.../rage4/requests/dns/create_reverse_domain_4.rb | 4 -
lib/fog/rage4/requests/dns/delete_domain.rb | 4 -
lib/fog/rage4/requests/dns/delete_record.rb | 4 -
lib/fog/rage4/requests/dns/get_domain.rb | 4 -
lib/fog/rage4/requests/dns/get_domain_by_name.rb | 4 -
lib/fog/rage4/requests/dns/list_domains.rb | 5 -
lib/fog/rage4/requests/dns/list_geo_regions.rb | 2 -
lib/fog/rage4/requests/dns/list_record_types.rb | 2 -
lib/fog/rage4/requests/dns/list_records.rb | 3 -
lib/fog/rage4/requests/dns/set_record_failover.rb | 4 -
lib/fog/rage4/requests/dns/show_current_usage.rb | 4 -
lib/fog/rage4/requests/dns/show_global_usage.rb | 4 -
lib/fog/rage4/requests/dns/update_domain.rb | 4 -
lib/fog/rage4/requests/dns/update_record.rb | 7 -
lib/fog/riakcs/core.rb | 2 -
lib/fog/riakcs/provisioning.rb | 2 -
.../riakcs/requests/provisioning/create_user.rb | 2 +-
lib/fog/riakcs/usage.rb | 2 -
lib/fog/sakuracloud.rb | 16 -
lib/fog/sakuracloud/compute.rb | 67 --
lib/fog/sakuracloud/docs/getting_started.md | 450 -----------
lib/fog/sakuracloud/models/compute/plan.rb | 18 -
lib/fog/sakuracloud/models/compute/plans.rb | 25 -
lib/fog/sakuracloud/models/compute/server.rb | 42 -
lib/fog/sakuracloud/models/compute/servers.rb | 65 --
lib/fog/sakuracloud/models/compute/ssh_key.rb | 15 -
lib/fog/sakuracloud/models/compute/ssh_keys.rb | 25 -
lib/fog/sakuracloud/models/compute/zone.rb | 15 -
lib/fog/sakuracloud/models/compute/zones.rb | 25 -
lib/fog/sakuracloud/models/volume/archive.rb | 16 -
lib/fog/sakuracloud/models/volume/archives.rb | 25 -
lib/fog/sakuracloud/models/volume/disk.rb | 38 -
lib/fog/sakuracloud/models/volume/disks.rb | 30 -
lib/fog/sakuracloud/models/volume/plan.rb | 14 -
lib/fog/sakuracloud/models/volume/plans.rb | 25 -
.../sakuracloud/requests/compute/boot_server.rb | 32 -
.../sakuracloud/requests/compute/create_server.rb | 44 --
.../sakuracloud/requests/compute/delete_server.rb | 34 -
lib/fog/sakuracloud/requests/compute/list_plans.rb | 46 --
.../sakuracloud/requests/compute/list_servers.rb | 44 --
.../sakuracloud/requests/compute/list_ssh_keys.rb | 40 -
lib/fog/sakuracloud/requests/compute/list_zones.rb | 40 -
.../sakuracloud/requests/compute/stop_server.rb | 38 -
lib/fog/sakuracloud/requests/volume/attach_disk.rb | 32 -
.../sakuracloud/requests/volume/configure_disk.rb | 36 -
lib/fog/sakuracloud/requests/volume/create_disk.rb | 44 --
lib/fog/sakuracloud/requests/volume/delete_disk.rb | 31 -
.../sakuracloud/requests/volume/list_archives.rb | 46 --
lib/fog/sakuracloud/requests/volume/list_disks.rb | 50 --
lib/fog/sakuracloud/requests/volume/list_plans.rb | 40 -
lib/fog/sakuracloud/volume.rb | 92 ---
lib/fog/schema/data_validator.rb | 154 ----
lib/fog/serverlove/compute.rb | 8 +-
lib/fog/serverlove/core.rb | 1 -
lib/fog/serverlove/models/compute/image.rb | 3 -
lib/fog/serverlove/models/compute/images.rb | 4 -
lib/fog/serverlove/models/compute/server.rb | 2 -
lib/fog/serverlove/models/compute/servers.rb | 4 -
.../serverlove/requests/compute/create_image.rb | 4 -
.../serverlove/requests/compute/create_server.rb | 4 -
.../serverlove/requests/compute/destroy_image.rb | 2 -
.../serverlove/requests/compute/destroy_server.rb | 2 -
lib/fog/serverlove/requests/compute/get_image.rb | 2 -
lib/fog/serverlove/requests/compute/get_images.rb | 2 -
lib/fog/serverlove/requests/compute/get_server.rb | 2 -
lib/fog/serverlove/requests/compute/get_servers.rb | 2 -
.../requests/compute/load_standard_image.rb | 2 -
.../serverlove/requests/compute/reset_server.rb | 2 -
.../serverlove/requests/compute/shutdown_server.rb | 2 -
.../serverlove/requests/compute/start_server.rb | 2 -
lib/fog/serverlove/requests/compute/stop_server.rb | 2 -
.../serverlove/requests/compute/update_image.rb | 2 -
.../serverlove/requests/compute/update_server.rb | 2 -
lib/fog/storm_on_demand/account.rb | 6 -
lib/fog/storm_on_demand/billing.rb | 5 -
lib/fog/storm_on_demand/compute.rb | 5 -
lib/fog/storm_on_demand/core.rb | 3 -
lib/fog/storm_on_demand/dns.rb | 5 -
lib/fog/storm_on_demand/models/account/token.rb | 3 -
lib/fog/storm_on_demand/models/account/tokens.rb | 3 -
lib/fog/storm_on_demand/models/billing/invoice.rb | 3 -
lib/fog/storm_on_demand/models/billing/invoices.rb | 3 -
lib/fog/storm_on_demand/models/billing/payment.rb | 4 -
lib/fog/storm_on_demand/models/billing/payments.rb | 2 -
lib/fog/storm_on_demand/models/compute/config.rb | 2 -
lib/fog/storm_on_demand/models/compute/configs.rb | 4 -
lib/fog/storm_on_demand/models/compute/image.rb | 4 -
lib/fog/storm_on_demand/models/compute/images.rb | 4 -
.../storm_on_demand/models/compute/notification.rb | 3 -
.../models/compute/notifications.rb | 3 -
lib/fog/storm_on_demand/models/compute/product.rb | 3 -
lib/fog/storm_on_demand/models/compute/products.rb | 3 -
lib/fog/storm_on_demand/models/compute/server.rb | 3 -
lib/fog/storm_on_demand/models/compute/servers.rb | 4 -
lib/fog/storm_on_demand/models/compute/template.rb | 2 -
.../storm_on_demand/models/compute/templates.rb | 4 -
lib/fog/storm_on_demand/models/dns/domain.rb | 3 -
lib/fog/storm_on_demand/models/dns/domains.rb | 3 -
lib/fog/storm_on_demand/models/dns/record.rb | 3 -
lib/fog/storm_on_demand/models/dns/records.rb | 3 -
lib/fog/storm_on_demand/models/dns/reverse.rb | 2 -
lib/fog/storm_on_demand/models/dns/reverses.rb | 5 +-
lib/fog/storm_on_demand/models/dns/zone.rb | 2 -
lib/fog/storm_on_demand/models/dns/zones.rb | 3 -
.../storm_on_demand/models/monitoring/bandwidth.rb | 3 -
.../models/monitoring/bandwidths.rb | 2 -
lib/fog/storm_on_demand/models/monitoring/load.rb | 3 -
lib/fog/storm_on_demand/models/monitoring/loads.rb | 3 -
.../models/monitoring/monitor_service.rb | 3 -
.../models/monitoring/monitor_services.rb | 2 -
lib/fog/storm_on_demand/models/network/balancer.rb | 4 -
.../storm_on_demand/models/network/balancers.rb | 4 -
lib/fog/storm_on_demand/models/network/firewall.rb | 2 -
.../storm_on_demand/models/network/firewalls.rb | 1 -
.../storm_on_demand/models/network/network_ip.rb | 2 -
.../storm_on_demand/models/network/network_ips.rb | 2 -
lib/fog/storm_on_demand/models/network/pool.rb | 2 -
lib/fog/storm_on_demand/models/network/pools.rb | 2 -
.../storm_on_demand/models/network/private_ip.rb | 3 -
.../storm_on_demand/models/network/private_ips.rb | 4 -
lib/fog/storm_on_demand/models/network/ruleset.rb | 2 -
lib/fog/storm_on_demand/models/network/rulesets.rb | 1 -
lib/fog/storm_on_demand/models/network/zone.rb | 2 -
lib/fog/storm_on_demand/models/network/zones.rb | 2 -
lib/fog/storm_on_demand/models/storage/cluster.rb | 3 -
lib/fog/storm_on_demand/models/storage/clusters.rb | 3 -
lib/fog/storm_on_demand/models/storage/volume.rb | 3 -
lib/fog/storm_on_demand/models/storage/volumes.rb | 3 -
lib/fog/storm_on_demand/models/support/alert.rb | 3 -
lib/fog/storm_on_demand/models/support/alerts.rb | 3 -
lib/fog/storm_on_demand/models/support/ticket.rb | 4 -
lib/fog/storm_on_demand/models/support/tickets.rb | 3 -
lib/fog/storm_on_demand/models/vpn/vpn.rb | 2 -
lib/fog/storm_on_demand/models/vpn/vpns.rb | 1 -
lib/fog/storm_on_demand/monitoring.rb | 6 -
lib/fog/storm_on_demand/network.rb | 5 -
.../requests/account/create_token.rb | 2 -
.../requests/account/expire_token.rb | 2 -
.../requests/billing/get_invoice.rb | 2 -
.../requests/billing/list_invoices.rb | 2 -
.../requests/billing/make_payment.rb | 2 -
.../requests/billing/next_invoice.rb | 2 -
.../requests/compute/clone_server.rb | 2 -
.../requests/compute/create_image.rb | 2 -
.../requests/compute/create_server.rb | 2 -
.../requests/compute/current_notifications.rb | 2 -
.../requests/compute/delete_image.rb | 2 -
.../requests/compute/delete_server.rb | 2 -
.../requests/compute/get_config_details.rb | 2 -
.../requests/compute/get_image_details.rb | 2 -
.../requests/compute/get_notification.rb | 2 -
.../requests/compute/get_product.rb | 2 -
.../requests/compute/get_product_code.rb | 2 -
.../requests/compute/get_product_price.rb | 2 -
.../requests/compute/get_product_starting_price.rb | 2 -
.../storm_on_demand/requests/compute/get_server.rb | 2 -
.../requests/compute/get_template_details.rb | 2 -
.../requests/compute/list_configs.rb | 2 -
.../requests/compute/list_images.rb | 2 -
.../requests/compute/list_notifications.rb | 2 -
.../requests/compute/list_products.rb | 2 -
.../requests/compute/list_servers.rb | 2 -
.../requests/compute/list_templates.rb | 2 -
.../requests/compute/reboot_server.rb | 2 -
.../requests/compute/resize_server.rb | 2 -
.../requests/compute/resolve_notification.rb | 2 -
.../requests/compute/restore_image.rb | 2 -
.../requests/compute/restore_template.rb | 2 -
.../requests/compute/server_history.rb | 2 -
.../requests/compute/server_status.rb | 2 -
.../requests/compute/shutdown_server.rb | 2 -
.../requests/compute/start_server.rb | 2 -
.../requests/compute/update_image.rb | 2 -
.../requests/compute/update_server.rb | 2 -
.../requests/dns/check_zone_delegation.rb | 2 -
.../storm_on_demand/requests/dns/create_record.rb | 2 -
.../requests/dns/create_record_region.rb | 2 -
.../storm_on_demand/requests/dns/create_zone.rb | 2 -
.../storm_on_demand/requests/dns/delete_record.rb | 2 -
.../requests/dns/delete_record_region.rb | 2 -
.../storm_on_demand/requests/dns/delete_reverse.rb | 2 -
.../storm_on_demand/requests/dns/delete_zone.rb | 2 -
lib/fog/storm_on_demand/requests/dns/get_record.rb | 2 -
lib/fog/storm_on_demand/requests/dns/get_zone.rb | 2 -
.../storm_on_demand/requests/dns/list_domains.rb | 2 -
.../storm_on_demand/requests/dns/list_records.rb | 2 -
lib/fog/storm_on_demand/requests/dns/list_zones.rb | 2 -
.../storm_on_demand/requests/dns/renew_domain.rb | 2 -
.../storm_on_demand/requests/dns/update_record.rb | 2 -
.../requests/dns/update_record_region.rb | 2 -
.../storm_on_demand/requests/dns/update_reverse.rb | 2 -
.../storm_on_demand/requests/dns/update_zone.rb | 2 -
.../requests/monitoring/get_bandwidth_graph.rb | 2 -
.../requests/monitoring/get_bandwidth_stats.rb | 2 -
.../requests/monitoring/get_load_graph.rb | 2 -
.../requests/monitoring/get_load_stats.rb | 2 -
.../requests/monitoring/get_service.rb | 2 -
.../requests/monitoring/get_service_status.rb | 2 -
.../requests/monitoring/monitoring_ips.rb | 2 -
.../requests/monitoring/update_service.rb | 2 -
.../requests/network/add_balancer_node.rb | 2 -
.../requests/network/add_balancer_service.rb | 2 -
.../requests/network/add_ip_to_server.rb | 2 -
.../network/attach_server_to_private_ip.rb | 2 -
.../requests/network/check_balancer_available.rb | 2 -
.../requests/network/check_server_attached.rb | 2 -
.../requests/network/create_balancer.rb | 2 -
.../requests/network/create_pool.rb | 2 -
.../requests/network/create_ruleset.rb | 2 -
.../requests/network/delete_balancer.rb | 2 -
.../requests/network/delete_pool.rb | 2 -
.../network/detach_server_from_private_ip.rb | 2 -
.../requests/network/get_assignments.rb | 2 -
.../requests/network/get_balancer_details.rb | 2 -
.../network/get_balancer_possible_nodes.rb | 2 -
.../requests/network/get_balancer_strategies.rb | 2 -
.../requests/network/get_firewall.rb | 2 -
.../requests/network/get_firewall_basic_options.rb | 2 -
.../requests/network/get_firewall_rules.rb | 2 -
.../requests/network/get_ip_details.rb | 2 -
.../storm_on_demand/requests/network/get_pool.rb | 2 -
.../requests/network/get_private_ip.rb | 2 -
.../requests/network/get_ruleset.rb | 2 -
.../storm_on_demand/requests/network/get_zone.rb | 2 -
.../requests/network/list_balancers.rb | 2 -
.../requests/network/list_ip_public_accounts.rb | 2 -
.../requests/network/list_network_ips.rb | 2 -
.../requests/network/list_network_public_ips.rb | 2 -
.../requests/network/list_private_ips.rb | 2 -
.../requests/network/list_rulesets.rb | 2 -
.../storm_on_demand/requests/network/list_zones.rb | 2 -
.../requests/network/remove_balancer_node.rb | 2 -
.../requests/network/remove_balancer_service.rb | 2 -
.../requests/network/remove_ip_from_server.rb | 2 -
.../requests/network/request_new_ips.rb | 2 -
.../requests/network/set_default_zone.rb | 2 -
.../requests/network/update_balancer.rb | 2 -
.../requests/network/update_firewall.rb | 2 -
.../requests/network/update_pool.rb | 2 -
.../requests/network/update_ruleset.rb | 2 -
.../requests/storage/attach_volume_to_server.rb | 2 -
.../requests/storage/create_volume.rb | 2 -
.../requests/storage/delete_volume.rb | 2 -
.../requests/storage/detach_volume_from_server.rb | 2 -
.../storm_on_demand/requests/storage/get_volume.rb | 2 -
.../requests/storage/list_clusters.rb | 2 -
.../requests/storage/list_volumes.rb | 2 -
.../requests/storage/resize_volume.rb | 2 -
.../requests/storage/update_volume.rb | 2 -
.../requests/support/add_feedback.rb | 2 -
.../requests/support/add_transaction_feedback.rb | 2 -
.../requests/support/authenticate.rb | 2 -
.../requests/support/close_ticket.rb | 2 -
.../requests/support/create_ticket.rb | 2 -
.../requests/support/get_active_alert.rb | 2 -
.../requests/support/get_ticket_details.rb | 2 -
.../requests/support/list_ticket_types.rb | 2 -
.../requests/support/list_tickets.rb | 2 -
.../requests/support/reopen_ticket.rb | 2 -
.../requests/support/reply_ticket.rb | 2 -
lib/fog/storm_on_demand/requests/vpn/create_vpn.rb | 2 -
lib/fog/storm_on_demand/requests/vpn/get_vpn.rb | 2 -
.../storm_on_demand/requests/vpn/list_vpn_users.rb | 2 -
lib/fog/storm_on_demand/requests/vpn/update_vpn.rb | 2 -
lib/fog/storm_on_demand/shared.rb | 3 +-
lib/fog/storm_on_demand/storage.rb | 5 -
lib/fog/storm_on_demand/support.rb | 6 -
lib/fog/storm_on_demand/vpn.rb | 4 -
lib/fog/terremark/models/shared/address.rb | 4 -
lib/fog/terremark/models/shared/addresses.rb | 4 -
lib/fog/terremark/models/shared/image.rb | 3 -
lib/fog/terremark/models/shared/images.rb | 7 -
lib/fog/terremark/models/shared/internetservice.rb | 5 +-
.../terremark/models/shared/internetservices.rb | 3 -
lib/fog/terremark/models/shared/network.rb | 4 -
lib/fog/terremark/models/shared/networks.rb | 4 -
lib/fog/terremark/models/shared/nodeservice.rb | 6 +-
lib/fog/terremark/models/shared/nodeservices.rb | 3 -
lib/fog/terremark/models/shared/server.rb | 7 +-
lib/fog/terremark/models/shared/servers.rb | 4 -
lib/fog/terremark/models/shared/task.rb | 4 -
lib/fog/terremark/models/shared/tasks.rb | 6 +-
lib/fog/terremark/models/shared/vdc.rb | 4 -
lib/fog/terremark/models/shared/vdcs.rb | 4 -
lib/fog/terremark/parser.rb | 2 -
lib/fog/terremark/parsers/shared/get_catalog.rb | 4 -
.../terremark/parsers/shared/get_catalog_item.rb | 4 -
.../parsers/shared/get_internet_services.rb | 3 -
lib/fog/terremark/parsers/shared/get_keys_list.rb | 3 -
.../terremark/parsers/shared/get_network_ips.rb | 5 -
.../terremark/parsers/shared/get_node_services.rb | 4 -
.../terremark/parsers/shared/get_organization.rb | 3 -
.../terremark/parsers/shared/get_organizations.rb | 2 -
lib/fog/terremark/parsers/shared/get_public_ips.rb | 4 -
lib/fog/terremark/parsers/shared/get_tasks_list.rb | 4 -
.../terremark/parsers/shared/get_vapp_template.rb | 4 -
lib/fog/terremark/parsers/shared/get_vdc.rb | 4 -
.../parsers/shared/instantiate_vapp_template.rb | 4 -
.../terremark/parsers/shared/internet_service.rb | 4 -
lib/fog/terremark/parsers/shared/network.rb | 8 +-
lib/fog/terremark/parsers/shared/node_service.rb | 4 -
lib/fog/terremark/parsers/shared/public_ip.rb | 4 -
lib/fog/terremark/parsers/shared/task.rb | 4 -
lib/fog/terremark/parsers/shared/vapp.rb | 5 -
.../requests/shared/add_internet_service.rb | 4 +-
.../terremark/requests/shared/add_node_service.rb | 4 +-
.../terremark/requests/shared/configure_vapp.rb | 2 -
.../requests/shared/create_internet_service.rb | 3 +-
.../requests/shared/delete_internet_service.rb | 2 -
.../requests/shared/delete_node_service.rb | 2 -
.../terremark/requests/shared/delete_public_ip.rb | 2 -
lib/fog/terremark/requests/shared/delete_vapp.rb | 2 -
lib/fog/terremark/requests/shared/deploy_vapp.rb | 2 -
lib/fog/terremark/requests/shared/get_catalog.rb | 2 -
.../terremark/requests/shared/get_catalog_item.rb | 2 -
.../requests/shared/get_internet_services.rb | 2 -
lib/fog/terremark/requests/shared/get_keys_list.rb | 2 -
lib/fog/terremark/requests/shared/get_network.rb | 6 +-
.../terremark/requests/shared/get_network_ips.rb | 3 -
.../terremark/requests/shared/get_node_services.rb | 2 -
.../terremark/requests/shared/get_organization.rb | 6 +-
.../terremark/requests/shared/get_organizations.rb | 4 -
lib/fog/terremark/requests/shared/get_public_ip.rb | 2 -
.../terremark/requests/shared/get_public_ips.rb | 6 +-
lib/fog/terremark/requests/shared/get_task.rb | 2 -
.../terremark/requests/shared/get_tasks_list.rb | 3 -
lib/fog/terremark/requests/shared/get_vapp.rb | 2 -
.../terremark/requests/shared/get_vapp_template.rb | 2 -
lib/fog/terremark/requests/shared/get_vdc.rb | 6 +-
.../requests/shared/instantiate_vapp_template.rb | 2 -
lib/fog/terremark/requests/shared/power_off.rb | 2 -
lib/fog/terremark/requests/shared/power_on.rb | 2 -
lib/fog/terremark/requests/shared/power_reset.rb | 2 -
.../terremark/requests/shared/power_shutdown.rb | 2 -
lib/fog/terremark/shared.rb | 7 -
lib/fog/terremark/vcloud.rb | 6 -
lib/fog/vcloud/compute.rb | 11 -
lib/fog/vcloud/core.rb | 2 -
lib/fog/vcloud/examples/README.md | 2 +-
lib/fog/vcloud/models/compute/catalog.rb | 2 -
lib/fog/vcloud/models/compute/catalog_item.rb | 1 -
lib/fog/vcloud/models/compute/catalog_items.rb | 2 -
lib/fog/vcloud/models/compute/catalogs.rb | 6 +-
lib/fog/vcloud/models/compute/ip.rb | 2 -
lib/fog/vcloud/models/compute/ips.rb | 2 -
lib/fog/vcloud/models/compute/network.rb | 1 -
lib/fog/vcloud/models/compute/networks.rb | 4 +-
lib/fog/vcloud/models/compute/organization.rb | 2 -
lib/fog/vcloud/models/compute/organizations.rb | 2 -
lib/fog/vcloud/models/compute/server.rb | 14 +-
lib/fog/vcloud/models/compute/servers.rb | 3 -
lib/fog/vcloud/models/compute/tags.rb | 2 -
lib/fog/vcloud/models/compute/task.rb | 2 -
lib/fog/vcloud/models/compute/tasks.rb | 3 -
lib/fog/vcloud/models/compute/vapp.rb | 1 -
lib/fog/vcloud/models/compute/vapps.rb | 3 -
lib/fog/vcloud/models/compute/vdc.rb | 2 -
lib/fog/vcloud/models/compute/vdcs.rb | 2 -
lib/fog/vcloud/requests/compute/clone_vapp.rb | 5 +-
.../vcloud/requests/compute/configure_metadata.rb | 4 +-
.../vcloud/requests/compute/configure_network.rb | 4 +-
.../requests/compute/configure_network_ip.rb | 2 +-
lib/fog/vcloud/requests/compute/configure_node.rb | 2 -
.../requests/compute/configure_org_network.rb | 4 +-
lib/fog/vcloud/requests/compute/configure_vapp.rb | 5 +-
lib/fog/vcloud/requests/compute/configure_vm.rb | 5 +-
.../vcloud/requests/compute/configure_vm_cpus.rb | 3 -
.../compute/configure_vm_customization_script.rb | 3 -
.../vcloud/requests/compute/configure_vm_disks.rb | 9 +-
.../vcloud/requests/compute/configure_vm_memory.rb | 3 -
.../compute/configure_vm_name_description.rb | 4 -
.../requests/compute/configure_vm_network.rb | 3 -
.../requests/compute/configure_vm_password.rb | 3 -
lib/fog/vcloud/requests/compute/delete_metadata.rb | 1 -
lib/fog/vcloud/requests/compute/delete_node.rb | 1 -
lib/fog/vcloud/requests/compute/delete_vapp.rb | 1 -
lib/fog/vcloud/requests/compute/get_catalog.rb | 1 -
.../vcloud/requests/compute/get_catalog_item.rb | 1 -
.../requests/compute/get_customization_options.rb | 1 -
lib/fog/vcloud/requests/compute/get_metadata.rb | 1 -
lib/fog/vcloud/requests/compute/get_network.rb | 1 -
.../requests/compute/get_network_extensions.rb | 2 -
lib/fog/vcloud/requests/compute/get_network_ip.rb | 2 -
lib/fog/vcloud/requests/compute/get_network_ips.rb | 2 -
.../vcloud/requests/compute/get_organization.rb | 2 -
lib/fog/vcloud/requests/compute/get_server.rb | 1 -
lib/fog/vcloud/requests/compute/get_task.rb | 2 -
lib/fog/vcloud/requests/compute/get_task_list.rb | 2 -
lib/fog/vcloud/requests/compute/get_vapp.rb | 1 -
.../vcloud/requests/compute/get_vapp_template.rb | 2 -
lib/fog/vcloud/requests/compute/get_vdc.rb | 1 -
lib/fog/vcloud/requests/compute/get_vm_disks.rb | 1 -
lib/fog/vcloud/requests/compute/get_vm_memory.rb | 1 -
.../requests/compute/instantiate_vapp_template.rb | 4 +-
lib/fog/vcloud/requests/compute/login.rb | 4 -
lib/fog/vcloud/requests/compute/power_off.rb | 1 -
lib/fog/vcloud/requests/compute/power_on.rb | 2 -
lib/fog/vcloud/requests/compute/power_reset.rb | 2 -
lib/fog/vcloud/requests/compute/power_shutdown.rb | 2 -
lib/fog/vcloud_director/README.md | 1 +
lib/fog/vcloud_director/compute.rb | 109 ++-
lib/fog/vcloud_director/core.rb | 2 +-
.../vcloud_director/generators/compute/disks.rb | 2 +-
.../compute/edge_gateway_service_configuration.rb | 84 +-
.../generators/compute/org_vdc_network.rb | 3 -
lib/fog/vcloud_director/generators/compute/vapp.rb | 2 -
lib/fog/vcloud_director/generators/compute/vm.rb | 1 -
lib/fog/vcloud_director/models/compute/catalog.rb | 3 -
.../vcloud_director/models/compute/catalog_item.rb | 3 -
.../models/compute/catalog_items.rb | 1 -
lib/fog/vcloud_director/models/compute/catalogs.rb | 2 -
.../vcloud_director/models/compute/custom_field.rb | 18 +
.../models/compute/custom_fields.rb | 67 ++
lib/fog/vcloud_director/models/compute/disk.rb | 3 -
lib/fog/vcloud_director/models/compute/disks.rb | 4 +-
lib/fog/vcloud_director/models/compute/media.rb | 3 -
lib/fog/vcloud_director/models/compute/medias.rb | 4 +-
lib/fog/vcloud_director/models/compute/network.rb | 3 -
lib/fog/vcloud_director/models/compute/networks.rb | 9 +-
.../vcloud_director/models/compute/organization.rb | 4 -
.../models/compute/organizations.rb | 2 -
lib/fog/vcloud_director/models/compute/tag.rb | 3 -
lib/fog/vcloud_director/models/compute/tags.rb | 4 +-
lib/fog/vcloud_director/models/compute/task.rb | 4 -
lib/fog/vcloud_director/models/compute/tasks.rb | 9 +-
lib/fog/vcloud_director/models/compute/vapp.rb | 8 +-
lib/fog/vcloud_director/models/compute/vapps.rb | 10 +-
lib/fog/vcloud_director/models/compute/vdc.rb | 3 -
lib/fog/vcloud_director/models/compute/vdcs.rb | 9 +-
lib/fog/vcloud_director/models/compute/vm.rb | 3 -
.../models/compute/vm_customization.rb | 3 -
.../models/compute/vm_customizations.rb | 2 -
.../vcloud_director/models/compute/vm_network.rb | 3 -
.../vcloud_director/models/compute/vm_networks.rb | 2 -
lib/fog/vcloud_director/models/compute/vms.rb | 11 +-
lib/fog/vcloud_director/parsers/compute/disks.rb | 4 -
.../vcloud_director/parsers/compute/metadata.rb | 2 -
lib/fog/vcloud_director/parsers/compute/network.rb | 2 -
lib/fog/vcloud_director/parsers/compute/vm.rb | 5 -
.../parsers/compute/vm_customization.rb | 4 -
.../vcloud_director/parsers/compute/vm_network.rb | 2 -
lib/fog/vcloud_director/parsers/compute/vms.rb | 5 -
.../parsers/compute/vms_by_metadata.rb | 4 -
lib/fog/vcloud_director/query.rb | 59 ++
.../requests/compute/delete_network.rb | 2 -
.../requests/compute/get_catalogs_from_query.rb | 2 +-
.../requests/compute/get_cpu_rasd_item.rb | 37 +
.../requests/compute/get_disks_from_query.rb | 2 +-
.../requests/compute/get_disks_rasd_items_list.rb | 64 ++
.../requests/compute/get_execute_query.rb | 183 ++++-
.../requests/compute/get_groups_from_query.rb | 2 +-
.../get_guest_customization_system_section_vapp.rb | 44 ++
.../compute/get_lease_settings_section_vapp.rb | 34 +
.../compute/get_media_drives_rasd_items_list.rb | 66 ++
.../requests/compute/get_medias_from_query.rb | 2 +-
.../requests/compute/get_memory_rasd_item.rb | 36 +
.../compute/get_network_cards_items_list.rb | 45 ++
.../requests/compute/get_network_complete.rb | 2 -
.../compute/get_network_config_section_vapp.rb | 36 +
.../get_network_connection_system_section_vapp.rb | 43 +
.../compute/get_operating_system_section.rb | 34 +
.../compute/get_organizations_from_query.rb | 2 +-
.../compute/get_runtime_info_section_type.rb | 32 +
.../requests/compute/get_snapshot_section.rb | 30 +
.../requests/compute/get_startup_section.rb | 39 +
.../requests/compute/get_users_from_query.rb | 2 +-
.../vcloud_director/requests/compute/get_vapp.rb | 148 ++++
.../requests/compute/get_vapp_metadata.rb | 57 ++
.../requests/compute/get_vapp_owner.rb | 33 +
.../compute/get_vapp_templates_from_query.rb | 2 +-
.../compute/get_vapps_in_lease_from_query.rb | 2 +-
.../vcloud_director/requests/compute/get_vdc.rb | 18 +-
.../requests/compute/get_vdcs_from_query.rb | 2 +-
.../requests/compute/get_vm_capabilities.rb | 31 +
.../requests/compute/get_vms_by_metadata.rb | 1 -
.../compute/get_vms_in_lease_from_query.rb | 57 +-
.../requests/compute/instantiate_vapp_template.rb | 4 +-
.../requests/compute/post_capture_vapp.rb | 24 +
.../post_configure_edge_gateway_services.rb | 13 +-
.../requests/compute/post_create_catalog_item.rb | 56 ++
.../compute/post_create_org_vdc_network.rb | 5 -
.../requests/compute/post_deploy_vapp.rb | 6 +-
.../compute/post_instantiate_vapp_template.rb | 63 ++
.../requests/compute/post_upload_disk.rb | 2 +-
.../requests/compute/post_upload_media.rb | 2 +-
.../requests/compute/post_upload_vapp_template.rb | 2 +-
.../vcloud_director/requests/compute/put_cpu.rb | 43 +-
.../vcloud_director/requests/compute/put_memory.rb | 44 +-
.../requests/compute/put_network.rb | 162 ++++
.../requests/compute/put_product_sections.rb | 43 +
.../compute/put_vapp_metadata_item_metadata.rb | 35 +
.../compute/put_vapp_name_and_description.rb | 1 -
lib/fog/vcloud_director/requests/compute/put_vm.rb | 35 +-
lib/fog/version.rb | 2 +-
lib/fog/vmfusion/compute.rb | 5 -
lib/fog/vmfusion/core.rb | 2 -
lib/fog/vmfusion/models/compute/server.rb | 2 -
lib/fog/vmfusion/models/compute/servers.rb | 7 +-
lib/fog/voxel/compute.rb | 2 -
lib/fog/voxel/core.rb | 1 -
lib/fog/voxel/models/compute/image.rb | 2 -
lib/fog/voxel/models/compute/images.rb | 3 -
lib/fog/voxel/models/compute/server.rb | 5 -
lib/fog/voxel/models/compute/servers.rb | 3 -
lib/fog/voxel/parsers/compute/basic.rb | 4 -
lib/fog/voxel/parsers/compute/devices_list.rb | 4 -
lib/fog/voxel/parsers/compute/images_list.rb | 4 -
lib/fog/voxel/parsers/compute/voxcloud_create.rb | 4 -
lib/fog/voxel/parsers/compute/voxcloud_delete.rb | 4 -
lib/fog/voxel/requests/compute/devices_list.rb | 2 -
lib/fog/voxel/requests/compute/devices_power.rb | 2 -
lib/fog/voxel/requests/compute/images_list.rb | 2 -
lib/fog/voxel/requests/compute/voxcloud_create.rb | 4 +-
lib/fog/voxel/requests/compute/voxcloud_delete.rb | 2 -
lib/fog/voxel/requests/compute/voxcloud_status.rb | 2 -
lib/fog/vsphere/compute.rb | 9 +-
lib/fog/vsphere/core.rb | 1 -
lib/fog/vsphere/models/compute/cluster.rb | 4 -
lib/fog/vsphere/models/compute/clusters.rb | 3 -
lib/fog/vsphere/models/compute/customfield.rb | 3 -
lib/fog/vsphere/models/compute/customfields.rb | 3 -
lib/fog/vsphere/models/compute/customvalue.rb | 3 -
lib/fog/vsphere/models/compute/customvalues.rb | 3 -
lib/fog/vsphere/models/compute/datacenter.rb | 4 -
lib/fog/vsphere/models/compute/datacenters.rb | 3 -
lib/fog/vsphere/models/compute/datastore.rb | 4 -
lib/fog/vsphere/models/compute/datastores.rb | 3 -
lib/fog/vsphere/models/compute/folder.rb | 4 -
lib/fog/vsphere/models/compute/folders.rb | 3 -
lib/fog/vsphere/models/compute/interface.rb | 8 +-
lib/fog/vsphere/models/compute/interfaces.rb | 23 +-
lib/fog/vsphere/models/compute/interfacetype.rb | 4 -
lib/fog/vsphere/models/compute/interfacetypes.rb | 5 -
lib/fog/vsphere/models/compute/network.rb | 4 -
lib/fog/vsphere/models/compute/networks.rb | 2 -
lib/fog/vsphere/models/compute/resource_pool.rb | 4 -
lib/fog/vsphere/models/compute/resource_pools.rb | 3 -
lib/fog/vsphere/models/compute/scsicontroller.rb | 3 -
lib/fog/vsphere/models/compute/server.rb | 20 +-
lib/fog/vsphere/models/compute/servers.rb | 2 -
lib/fog/vsphere/models/compute/servertype.rb | 3 -
lib/fog/vsphere/models/compute/servertypes.rb | 5 -
lib/fog/vsphere/models/compute/template.rb | 4 -
lib/fog/vsphere/models/compute/templates.rb | 3 -
lib/fog/vsphere/models/compute/volume.rb | 3 +-
lib/fog/vsphere/models/compute/volumes.rb | 22 +-
lib/fog/vsphere/requests/compute/create_folder.rb | 2 +-
lib/fog/vsphere/requests/compute/create_vm.rb | 5 +-
lib/fog/vsphere/requests/compute/current_time.rb | 4 -
lib/fog/vsphere/requests/compute/get_folder.rb | 3 +-
.../requests/compute/get_virtual_machine.rb | 2 -
.../compute/get_vm_first_scsi_controller.rb | 2 +-
lib/fog/vsphere/requests/compute/list_clusters.rb | 1 -
.../vsphere/requests/compute/list_customfields.rb | 1 -
.../vsphere/requests/compute/list_datacenters.rb | 1 -
.../vsphere/requests/compute/list_datastores.rb | 1 -
lib/fog/vsphere/requests/compute/list_folders.rb | 1 -
.../requests/compute/list_interface_types.rb | 3 +-
lib/fog/vsphere/requests/compute/list_networks.rb | 1 -
.../requests/compute/list_resource_pools.rb | 1 -
.../vsphere/requests/compute/list_server_types.rb | 1 -
lib/fog/vsphere/requests/compute/list_templates.rb | 1 -
.../requests/compute/list_virtual_machines.rb | 1 -
.../requests/compute/list_vm_customvalues.rb | 2 -
.../vsphere/requests/compute/list_vm_interfaces.rb | 6 +-
.../vsphere/requests/compute/list_vm_volumes.rb | 1 -
.../requests/compute/modify_vm_interface.rb | 2 -
.../vsphere/requests/compute/modify_vm_volume.rb | 1 -
.../vsphere/requests/compute/set_vm_customvalue.rb | 2 -
lib/fog/vsphere/requests/compute/vm_clone.rb | 45 +-
lib/fog/vsphere/requests/compute/vm_config_vnc.rb | 6 +-
lib/fog/vsphere/requests/compute/vm_destroy.rb | 8 +-
lib/fog/vsphere/requests/compute/vm_migrate.rb | 8 +-
lib/fog/vsphere/requests/compute/vm_power_off.rb | 8 +-
lib/fog/vsphere/requests/compute/vm_power_on.rb | 8 +-
lib/fog/vsphere/requests/compute/vm_reboot.rb | 8 +-
.../vsphere/requests/compute/vm_reconfig_cpus.rb | 8 +-
.../requests/compute/vm_reconfig_hardware.rb | 8 +-
.../vsphere/requests/compute/vm_reconfig_memory.rb | 8 +-
lib/fog/xenserver/compute.rb | 8 +-
lib/fog/xenserver/core.rb | 8 +-
lib/fog/xenserver/examples/networks-and-vlans.rb | 1 -
lib/fog/xenserver/models/compute/guest_metrics.rb | 3 -
lib/fog/xenserver/models/compute/host.rb | 9 +-
lib/fog/xenserver/models/compute/host_cpu.rb | 4 -
lib/fog/xenserver/models/compute/host_metrics.rb | 3 -
lib/fog/xenserver/models/compute/hosts.rb | 4 -
lib/fog/xenserver/models/compute/network.rb | 2 -
lib/fog/xenserver/models/compute/networks.rb | 4 -
lib/fog/xenserver/models/compute/pbd.rb | 3 -
lib/fog/xenserver/models/compute/pbds.rb | 4 -
lib/fog/xenserver/models/compute/pif.rb | 3 -
lib/fog/xenserver/models/compute/pifs.rb | 4 -
lib/fog/xenserver/models/compute/pool.rb | 6 +-
lib/fog/xenserver/models/compute/pools.rb | 4 -
lib/fog/xenserver/models/compute/server.rb | 10 +-
lib/fog/xenserver/models/compute/servers.rb | 4 -
.../models/compute/storage_repositories.rb | 4 -
.../xenserver/models/compute/storage_repository.rb | 7 +-
lib/fog/xenserver/models/compute/vbd.rb | 3 -
lib/fog/xenserver/models/compute/vbd_metrics.rb | 2 -
lib/fog/xenserver/models/compute/vbds.rb | 4 -
lib/fog/xenserver/models/compute/vdi.rb | 7 +-
lib/fog/xenserver/models/compute/vdis.rb | 4 -
lib/fog/xenserver/models/compute/vif.rb | 4 -
lib/fog/xenserver/models/compute/vifs.rb | 4 -
lib/fog/xenserver/models/compute/vlan.rb | 3 -
lib/fog/xenserver/models/compute/vlans.rb | 4 -
lib/fog/xenserver/parser.rb | 2 -
lib/fog/xenserver/parsers/get_hosts.rb | 3 -
lib/fog/xenserver/parsers/get_networks.rb | 3 -
lib/fog/xenserver/parsers/get_pools.rb | 3 -
lib/fog/xenserver/parsers/get_records.rb | 3 -
.../xenserver/parsers/get_storage_repositories.rb | 3 -
lib/fog/xenserver/parsers/get_vbds.rb | 3 -
lib/fog/xenserver/parsers/get_vifs.rb | 3 -
lib/fog/xenserver/parsers/get_vms.rb | 4 -
lib/fog/xenserver/requests/compute/clone_server.rb | 4 -
.../xenserver/requests/compute/create_network.rb | 5 -
.../xenserver/requests/compute/create_server.rb | 10 +-
lib/fog/xenserver/requests/compute/create_sr.rb | 6 -
lib/fog/xenserver/requests/compute/create_vbd.rb | 5 -
lib/fog/xenserver/requests/compute/create_vdi.rb | 5 -
lib/fog/xenserver/requests/compute/create_vif.rb | 5 -
lib/fog/xenserver/requests/compute/create_vlan.rb | 5 -
.../xenserver/requests/compute/destroy_network.rb | 5 -
.../xenserver/requests/compute/destroy_server.rb | 5 -
lib/fog/xenserver/requests/compute/destroy_sr.rb | 5 -
lib/fog/xenserver/requests/compute/destroy_vdi.rb | 5 -
lib/fog/xenserver/requests/compute/destroy_vif.rb | 5 -
lib/fog/xenserver/requests/compute/destroy_vlan.rb | 5 -
lib/fog/xenserver/requests/compute/disable_host.rb | 6 -
lib/fog/xenserver/requests/compute/eject_vbd.rb | 5 -
lib/fog/xenserver/requests/compute/enable_host.rb | 6 -
lib/fog/xenserver/requests/compute/get_record.rb | 6 -
lib/fog/xenserver/requests/compute/get_records.rb | 6 -
lib/fog/xenserver/requests/compute/insert_vbd.rb | 5 -
.../xenserver/requests/compute/provision_server.rb | 4 -
lib/fog/xenserver/requests/compute/reboot_host.rb | 6 -
.../xenserver/requests/compute/reboot_server.rb | 6 -
lib/fog/xenserver/requests/compute/scan_sr.rb | 5 -
lib/fog/xenserver/requests/compute/set_affinity.rb | 6 -
.../xenserver/requests/compute/set_attribute.rb | 6 -
.../xenserver/requests/compute/shutdown_host.rb | 6 -
.../xenserver/requests/compute/shutdown_server.rb | 6 -
.../xenserver/requests/compute/snapshot_revert.rb | 5 -
.../xenserver/requests/compute/snapshot_server.rb | 5 -
lib/fog/xenserver/requests/compute/start_server.rb | 6 -
lib/fog/xenserver/requests/compute/start_vm.rb | 6 -
lib/fog/xenserver/requests/compute/unplug_pbd.rb | 5 -
lib/fog/xenserver/requests/compute/unplug_vbd.rb | 5 -
lib/fog/xml.rb | 27 +-
lib/fog/xml/connection.rb | 13 +-
lib/fog/xml/sax_parser_connection.rb | 1 -
lib/fog/zerigo/core.rb | 2 -
lib/fog/zerigo/dns.rb | 8 +-
lib/fog/zerigo/models/dns/record.rb | 3 -
lib/fog/zerigo/models/dns/records.rb | 4 -
lib/fog/zerigo/models/dns/zone.rb | 4 -
lib/fog/zerigo/models/dns/zones.rb | 4 -
lib/fog/zerigo/parsers/dns/count_hosts.rb | 4 -
lib/fog/zerigo/parsers/dns/count_zones.rb | 4 -
lib/fog/zerigo/parsers/dns/create_host.rb | 4 -
lib/fog/zerigo/parsers/dns/create_zone.rb | 4 -
lib/fog/zerigo/parsers/dns/find_hosts.rb | 4 -
lib/fog/zerigo/parsers/dns/get_host.rb | 4 -
lib/fog/zerigo/parsers/dns/get_zone.rb | 5 -
lib/fog/zerigo/parsers/dns/get_zone_stats.rb | 4 -
lib/fog/zerigo/parsers/dns/list_hosts.rb | 4 -
lib/fog/zerigo/parsers/dns/list_zones.rb | 4 -
lib/fog/zerigo/requests/dns/count_hosts.rb | 2 -
lib/fog/zerigo/requests/dns/count_zones.rb | 2 -
lib/fog/zerigo/requests/dns/create_host.rb | 3 -
lib/fog/zerigo/requests/dns/create_zone.rb | 4 -
lib/fog/zerigo/requests/dns/delete_host.rb | 2 -
lib/fog/zerigo/requests/dns/delete_zone.rb | 2 -
lib/fog/zerigo/requests/dns/find_hosts.rb | 4 +-
lib/fog/zerigo/requests/dns/get_host.rb | 2 -
lib/fog/zerigo/requests/dns/get_zone.rb | 2 -
lib/fog/zerigo/requests/dns/get_zone_stats.rb | 2 -
lib/fog/zerigo/requests/dns/list_hosts.rb | 34 +-
lib/fog/zerigo/requests/dns/list_zones.rb | 4 -
lib/fog/zerigo/requests/dns/update_host.rb | 3 -
lib/fog/zerigo/requests/dns/update_zone.rb | 3 -
lib/tasks/changelog_task.rb | 6 +-
lib/tasks/github_release_task.rb | 5 +-
metadata.yml | 872 +++++++++++++++++++--
tests/aws/credentials_tests.rb | 8 +-
tests/aws/models/auto_scaling/groups_test.rb | 4 +-
tests/aws/models/auto_scaling/instance_tests.rb | 15 +
tests/aws/models/beanstalk/application_tests.rb | 1 -
tests/aws/models/beanstalk/environment_tests.rb | 1 -
tests/aws/models/beanstalk/environments_tests.rb | 2 +-
tests/aws/models/beanstalk/templates_tests.rb | 2 +-
tests/aws/models/beanstalk/versions_tests.rb | 3 +-
tests/aws/models/cdn/invalidation_tests.rb | 1 -
tests/aws/models/cdn/invalidations_tests.rb | 1 -
.../models/cloud_watch/metric_statistics_tests.rb | 14 +-
tests/aws/models/cloud_watch/metrics_tests.rb | 4 +-
tests/aws/models/compute/addresses_tests.rb | 2 +-
tests/aws/models/compute/dhcp_option_tests.rb | 1 -
tests/aws/models/compute/dhcp_options_tests.rb | 1 -
.../aws/models/compute/internet_gateways_tests.rb | 1 -
tests/aws/models/compute/key_pair_tests.rb | 1 -
tests/aws/models/compute/key_pairs_tests.rb | 2 +-
tests/aws/models/compute/network_acl_tests.rb | 8 +-
tests/aws/models/compute/network_acls_tests.rb | 15 +-
.../aws/models/compute/network_interfaces_test.rb | 2 +-
tests/aws/models/compute/security_group_tests.rb | 6 +-
tests/aws/models/compute/server_tests.rb | 2 +-
tests/aws/models/compute/snapshots_tests.rb | 2 +-
tests/aws/models/compute/subnets_tests.rb | 1 -
tests/aws/models/compute/volumes_tests.rb | 2 +-
tests/aws/models/compute/vpcs_tests.rb | 15 +-
tests/aws/models/dns/record_tests.rb | 1 -
tests/aws/models/dns/records_tests.rb | 1 -
.../models/elasticache/security_groups_tests.rb | 4 +-
.../aws/models/elasticache/subnet_groups_tests.rb | 2 +-
tests/aws/models/elb/model_tests.rb | 48 +-
tests/aws/models/glacier/model_tests.rb | 4 +-
tests/aws/models/iam/access_keys_tests.rb | 24 +-
tests/aws/models/iam/policies_tests.rb | 28 +-
tests/aws/models/iam/roles_tests.rb | 16 +-
tests/aws/models/iam/users_tests.rb | 18 +-
tests/aws/models/rds/parameter_group_tests.rb | 2 +-
tests/aws/models/rds/security_group_tests.rb | 8 +-
tests/aws/models/rds/snapshot_tests.rb | 1 -
tests/aws/models/rds/snapshots_tests.rb | 1 -
tests/aws/models/storage/file_tests.rb | 11 +-
tests/aws/models/storage/url_tests.rb | 2 +-
tests/aws/models/storage/version_tests.rb | 2 +-
tests/aws/models/storage/versions_tests.rb | 8 +-
tests/aws/requests/auto_scaling/helper.rb | 2 -
tests/aws/requests/auto_scaling/tag_tests.rb | 2 +-
.../cloud_watch/get_metric_statistics_tests.rb | 2 +-
.../requests/cloud_watch/put_metric_data_tests.rb | 2 +-
.../requests/compute/assign_private_ip_tests.rb | 5 +-
tests/aws/requests/compute/client_tests.rb | 6 +-
tests/aws/requests/compute/dhcp_options_tests.rb | 1 -
tests/aws/requests/compute/helper.rb | 6 -
tests/aws/requests/compute/image_tests.rb | 8 +-
tests/aws/requests/compute/instance_tests.rb | 15 +-
.../aws/requests/compute/internet_gateway_tests.rb | 4 +-
tests/aws/requests/compute/network_acl_tests.rb | 26 +
.../requests/compute/network_interface_tests.rb | 52 +-
tests/aws/requests/compute/region_tests.rb | 26 +-
tests/aws/requests/compute/route_tests.rb | 1 +
tests/aws/requests/compute/security_group_tests.rb | 3 +
tests/aws/requests/compute/snapshot_tests.rb | 1 +
tests/aws/requests/compute/subnet_tests.rb | 52 +-
tests/aws/requests/compute/tag_tests.rb | 21 +
tests/aws/requests/compute/volume_tests.rb | 18 +-
tests/aws/requests/compute/vpc_tests.rb | 67 +-
tests/aws/requests/data_pipeline/helper.rb | 2 -
tests/aws/requests/data_pipeline/pipeline_tests.rb | 2 +-
tests/aws/requests/dns/dns_tests.rb | 9 +-
tests/aws/requests/dns/health_check_tests.rb | 159 ++++
tests/aws/requests/dynamodb/item_tests.rb | 4 +-
tests/aws/requests/elasticache/helper.rb | 5 +-
tests/aws/requests/elb/helper.rb | 2 -
tests/aws/requests/elb/load_balancer_tests.rb | 20 +-
tests/aws/requests/elb/policy_tests.rb | 11 +-
tests/aws/requests/emr/helper.rb | 12 +-
tests/aws/requests/glacier/archive_tests.rb | 2 +-
.../aws/requests/glacier/multipart_upload_tests.rb | 9 +-
tests/aws/requests/glacier/tree_hash_tests.rb | 3 +-
tests/aws/requests/glacier/vault_tests.rb | 2 +-
tests/aws/requests/iam/account_policy_tests.rb | 20 +
tests/aws/requests/iam/helper.rb | 5 -
tests/aws/requests/iam/login_profile_tests.rb | 6 +-
tests/aws/requests/iam/role_tests.rb | 17 +-
tests/aws/requests/iam/user_tests.rb | 1 -
tests/aws/requests/rds/describe_events.rb | 2 +-
tests/aws/requests/rds/helper.rb | 40 +-
tests/aws/requests/rds/instance_tests.rb | 51 +-
tests/aws/requests/rds/parameter_group_tests.rb | 26 +-
tests/aws/requests/rds/parameter_request_tests.rb | 15 +-
tests/aws/requests/rds/security_group_tests.rb | 60 +-
.../redshift/cluster_parameter_group_tests.rb | 9 +-
.../redshift/cluster_security_group_tests.rb | 10 +-
.../requests/redshift/cluster_snapshot_tests.rb | 22 +-
tests/aws/requests/redshift/cluster_tests.rb | 14 +-
tests/aws/requests/ses/helper.rb | 6 -
tests/aws/requests/simpledb/helper.rb | 6 -
tests/aws/requests/sqs/helper.rb | 6 -
tests/aws/requests/sqs/message_tests.rb | 2 +-
tests/aws/requests/sqs/queue_tests.rb | 2 +-
tests/aws/requests/storage/bucket_tests.rb | 6 +-
tests/aws/requests/storage/versioning_tests.rb | 14 +-
tests/aws/requests/sts/assume_role_tests.rb | 2 +-
.../aws/requests/sts/get_federation_token_tests.rb | 2 +-
tests/aws/requests/sts/session_token_tests.rb | 2 +-
tests/aws/signaturev4_tests.rb | 2 +-
tests/bluebox/requests/blb/lb_tests.rb | 2 +-
tests/bluebox/requests/compute/helper.rb | 8 +-
tests/bluebox/requests/compute/location_tests.rb | 6 +-
tests/bluebox/requests/dns/dns_tests.rb | 1 -
tests/brightbox/compute/schema.rb | 1 -
tests/brightbox/requests/compute/cloud_ip_tests.rb | 1 -
.../requests/compute/collaboration_tests.rb | 2 -
tests/brightbox/requests/compute/helper.rb | 2 +-
tests/clodo/requests/compute/server_tests.rb | 2 +-
tests/cloudsigma/models/server_tests.rb | 2 +-
tests/cloudsigma/models/volume_tests.rb | 2 +-
tests/cloudsigma/models/volumes_tests.rb | 2 +-
tests/cloudsigma/requests/server_tests.rb | 4 -
tests/cloudsigma/requests/volumes_tests.rb | 2 +-
.../compute/models/security_group_rule_tests.rb | 1 -
.../compute/models/security_groups_tests.rb | 1 -
tests/cloudstack/compute/models/volumes_tests.rb | 2 -
tests/cloudstack/requests/disk_offering_tests.rb | 2 +-
tests/cloudstack/requests/os_type_tests.rb | 4 +-
tests/cloudstack/requests/security_group_tests.rb | 2 +-
.../cloudstack/requests/service_offering_tests.rb | 2 +-
tests/cloudstack/requests/snapshot_tests.rb | 2 +-
tests/cloudstack/requests/ssh_key_pair_tests.rb | 2 +-
tests/cloudstack/requests/template_tests.rb | 4 +-
tests/core/attribute_tests.rb | 4 +-
tests/core/mocking_tests.rb | 2 +-
tests/core/parser_tests.rb | 1 -
tests/core/service_tests.rb | 2 +-
tests/core/uuid_tests.rb | 2 +-
tests/core/wait_for_tests.rb | 2 +-
tests/digitalocean/models/compute/flavor_tests.rb | 3 +-
tests/digitalocean/models/compute/image_tests.rb | 3 +-
tests/digitalocean/models/compute/region_tests.rb | 3 +-
tests/digitalocean/models/compute/server_tests.rb | 1 -
tests/digitalocean/models/compute/ssh_key_tests.rb | 1 -
.../requests/compute/create_ssh_key_tests.rb | 2 +-
.../requests/compute/destroy_ssh_key_tests.rb | 4 +-
.../requests/compute/list_servers_tests.rb | 2 +-
.../requests/compute/power_cycle_server_tests.rb | 4 +-
.../requests/compute/power_state_tests.rb | 6 +-
.../requests/compute/reboot_server_tests.rb | 4 +-
tests/dreamhost/dns_tests.rb | 3 +-
tests/dreamhost/helper.rb | 2 +-
tests/dreamhost/models/dns/record_tests.rb | 9 +-
tests/dreamhost/models/dns/records_tests.rb | 5 +-
tests/dreamhost/models/dns/zone_tests.rb | 7 +-
tests/dreamhost/models/dns/zones_tests.rb | 7 +-
.../dreamhost/requests/dns/create_record_tests.rb | 8 +-
.../dreamhost/requests/dns/delete_record_tests.rb | 2 +-
tests/dreamhost/requests/dns/list_records_tests.rb | 4 +-
.../compute/models/internet_service_tests.rb | 4 +-
tests/ecloud/compute/models/server_tests.rb | 18 +-
tests/fogdocker/models/compute/image_tests.rb | 2 +-
tests/fogdocker/models/compute/server_tests.rb | 2 +-
.../requests/compute/container_action_tests.rb | 1 -
.../requests/compute/container_commit_tests.rb | 1 -
tests/glesys/requests/compute/helper.rb | 10 +-
tests/glesys/requests/compute/ip_tests.rb | 1 -
tests/glesys/requests/compute/server_tests.rb | 11 +-
tests/google/helpers/disk_helper.rb | 12 -
tests/google/helpers/google_tests_helper.rb | 89 +++
.../google/models/compute/backend_service_tests.rb | 6 +
.../models/compute/backend_services_tests.rb | 8 +
tests/google/models/compute/disk_tests.rb | 6 +-
tests/google/models/compute/disk_types_tests.rb | 22 +
tests/google/models/compute/disks_tests.rb | 6 +-
.../google/models/compute/forwarding_rule_tests.rb | 8 +
.../models/compute/forwarding_rules_tests.rb | 8 +
.../models/compute/global_forwarding_rule_tests.rb | 7 +
.../compute/global_forwarding_rules_tests.rb | 7 +
.../models/compute/http_health_check_tests.rb | 5 +
.../models/compute/http_health_checks_tests.rb | 5 +
tests/google/models/compute/image_tests.rb | 6 +
tests/google/models/compute/images_tests.rb | 6 +
tests/google/models/compute/region_tests.rb | 10 +
tests/google/models/compute/regions_tests.rb | 19 +
tests/google/models/compute/server_tests.rb | 12 +-
tests/google/models/compute/servers_tests.rb | 8 +-
.../models/compute/target_http_proxies_tests.rb | 7 +
.../models/compute/target_http_proxy_test.rb | 6 +
.../google/models/compute/target_instance_tests.rb | 7 +
.../models/compute/target_instances_tests.rb | 7 +
tests/google/models/compute/target_pool_tests.rb | 12 +
tests/google/models/compute/target_pools_tests.rb | 11 +
tests/google/models/compute/url_map_tests.rb | 6 +
tests/google/models/compute/url_maps_tests.rb | 7 +
.../models/monitoring/metric_descriptors_tests.rb | 12 +
.../monitoring/timeseries_collection_tests.rb | 12 +
.../monitoring/timeseries_descriptors_tests.rb | 13 +
tests/google/models/sql/flags_tests.rb | 12 +
tests/google/models/sql/instance_tests.rb | 56 ++
tests/google/models/sql/instances_tests.rb | 32 +
tests/google/models/sql/operation_tests.rb | 25 +
tests/google/models/sql/operations_tests.rb | 38 +
tests/google/models/sql/ssl_cert_tests.rb | 24 +
tests/google/models/sql/ssl_certs_tests.rb | 39 +
tests/google/models/sql/tiers_tests.rb | 12 +
.../requests/compute/backend_service_tests.rb | 83 ++
tests/google/requests/compute/disk_tests.rb | 7 +-
tests/google/requests/compute/disk_type_tests.rb | 45 ++
tests/google/requests/compute/firewall_tests.rb | 6 +-
.../requests/compute/forwarding_rules_tests.rb | 83 ++
.../compute/global_forwarding_rules_tests.rb | 83 ++
.../requests/compute/http_health_checks_tests.rb | 83 ++
tests/google/requests/compute/image_tests.rb | 9 +-
tests/google/requests/compute/region_tests.rb | 39 +
.../requests/compute/target_http_proxies_test.rb | 79 ++
.../requests/compute/target_instances_tests.rb | 83 ++
.../google/requests/compute/target_pools_tests.rb | 82 ++
tests/google/requests/compute/url_maps_tests.rb | 82 ++
tests/google/requests/compute/zone_tests.rb | 8 +-
tests/google/requests/dns/managed_zone_tests.rb | 66 ++
.../requests/monitoring/metric_descriptor_tests.rb | 25 +
.../monitoring/timeseries_collection_tests.rb | 25 +
.../monitoring/timeseries_descriptor_tests.rb | 26 +
tests/google/requests/sql/flag_tests.rb | 27 +
tests/google/requests/sql/instance_tests.rb | 129 +++
tests/google/requests/sql/operation_tests.rb | 42 +
tests/google/requests/sql/ssl_cert_tests.rb | 61 ++
tests/google/requests/sql/tier_tests.rb | 25 +
tests/google/requests/storage/object_tests.rb | 7 +-
tests/helper.rb | 15 +-
tests/helpers/collection_helper.rb | 9 +-
tests/helpers/compute/flavors_helper.rb | 2 -
tests/helpers/compute/server_helper.rb | 2 -
tests/helpers/compute/servers_helper.rb | 2 -
tests/helpers/formats_helper.rb | 1 -
tests/helpers/formats_helper_tests.rb | 1 -
tests/helpers/mock_helper.rb | 4 +
tests/helpers/model_helper.rb | 6 +-
tests/helpers/responds_to_helper.rb | 2 -
tests/helpers/succeeds_helper.rb | 2 -
.../block_storage_v2/volume_backups_tests.rb | 2 +-
tests/hp/models/compute/addresses_tests.rb | 2 +-
tests/hp/models/compute/key_pair_tests.rb | 1 -
tests/hp/models/compute/key_pairs_tests.rb | 2 +-
tests/hp/models/compute_v2/addresses_tests.rb | 2 +-
.../models/compute_v2/availability_zone_tests.rb | 2 -
.../models/compute_v2/availability_zones_tests.rb | 2 +-
tests/hp/models/compute_v2/key_pair_tests.rb | 3 +-
tests/hp/models/compute_v2/key_pairs_tests.rb | 2 +-
tests/hp/models/compute_v2/servers_tests.rb | 2 +-
.../models/compute_v2/volume_attachments_tests.rb | 2 +-
tests/hp/models/dns/domains_tests.rb | 2 +-
tests/hp/models/dns/records_tests.rb | 2 +-
tests/hp/models/lb/algorithms_tests.rb | 2 +-
tests/hp/models/lb/load_balancer_node_tests.rb | 2 +-
tests/hp/models/lb/load_balancer_nodes_tests.rb | 2 +-
tests/hp/models/lb/load_balancer_tests.rb | 2 +-
.../models/lb/load_balancer_virtual_ips_tests.rb | 2 +-
tests/hp/models/lb/load_balancers_tests.rb | 2 +-
tests/hp/models/lb/protocols_tests.rb | 2 +-
tests/hp/models/network/floating_ips_tests.rb | 2 +-
tests/hp/models/network/networks_tests.rb | 2 +-
tests/hp/models/network/ports_tests.rb | 2 +-
tests/hp/models/network/routers_tests.rb | 2 +-
.../models/network/security_group_rules_tests.rb | 2 +-
tests/hp/models/network/security_groups_tests.rb | 2 +-
tests/hp/models/network/subnets_tests.rb | 2 +-
tests/hp/models/storage/directories_tests.rb | 2 +-
tests/hp/models/storage/directory_tests.rb | 1 -
tests/hp/models/storage/file_tests.rb | 2 +-
tests/hp/models/storage/files_tests.rb | 2 +-
tests/hp/requests/compute/metadata_tests.rb | 2 +-
tests/hp/requests/compute/security_group_tests.rb | 1 -
tests/hp/requests/compute/server_volume_tests.rb | 1 -
.../requests/compute_v2/availability_zone_tests.rb | 2 +-
tests/hp/requests/compute_v2/metadata_tests.rb | 2 +-
.../compute_v2/server_security_group_tests.rb | 1 -
.../hp/requests/compute_v2/server_volume_tests.rb | 1 -
tests/hp/requests/dns/domain_tests.rb | 2 +-
tests/hp/requests/dns/records_tests.rb | 3 +-
tests/hp/requests/lb/algorithms_tests.rb | 3 +-
tests/hp/requests/lb/limits_tests.rb | 4 +-
tests/hp/requests/lb/load_balancer_nodes_tests.rb | 3 +-
tests/hp/requests/lb/load_balancer_tests.rb | 2 +-
tests/hp/requests/lb/protocols_tests.rb | 3 +-
tests/hp/requests/lb/versions_tests.rb | 3 +-
tests/hp/requests/lb/virtual_ips_tests.rb | 2 +-
tests/hp/requests/network/floating_ip_tests.rb | 2 +-
tests/hp/requests/network/network_tests.rb | 2 +-
tests/hp/requests/network/port_tests.rb | 2 +-
tests/hp/requests/network/router_tests.rb | 2 +-
tests/hp/requests/network/subnet_tests.rb | 2 +-
tests/hp/requests/storage/object_tests.rb | 4 +-
tests/hp/storage_tests.rb | 49 +-
tests/hp/user_agent_tests.rb | 2 +-
.../models/storage/directory_tests.rb | 1 -
tests/internet_archive/models/storage/url_tests.rb | 2 +-
.../requests/storage/bucket_tests.rb | 6 +-
tests/internet_archive/signaturev4_tests.rb | 2 +-
tests/joyent/requests/compute/machines_tests.rb | 1 -
tests/libvirt/models/compute/interface_tests.rb | 2 +-
tests/libvirt/models/compute/network_tests.rb | 2 +-
tests/libvirt/models/compute/nic_tests.rb | 2 +-
tests/libvirt/models/compute/pool_tests.rb | 2 +-
tests/libvirt/models/compute/server_tests.rb | 2 +-
tests/libvirt/models/compute/volume_tests.rb | 2 +-
tests/linode/requests/compute/datacenter_tests.rb | 2 +-
.../linode/requests/compute/distribution_tests.rb | 2 +-
tests/linode/requests/compute/helper.rb | 6 -
tests/linode/requests/compute/kernel_tests.rb | 2 +-
tests/linode/requests/compute/linode_tests.rb | 8 +-
tests/linode/requests/compute/linodeplans_tests.rb | 5 +-
.../linode/requests/compute/stackscripts_tests.rb | 8 +-
tests/linode/requests/dns/dns_tests.rb | 54 +-
tests/ninefold/models/storage/file_update_tests.rb | 2 +-
.../models/storage/nested_directories_tests.rb | 2 +-
tests/ninefold/requests/compute/helper.rb | 1 -
tests/ninefold/requests/compute/nat_tests.rb | 1 -
.../requests/compute/virtual_machine_tests.rb | 1 -
tests/opennebula/compute_tests.rb | 16 +
tests/opennebula/models/compute/group_tests.rb | 27 +
tests/opennebula/models/compute/groups_tests.rb | 16 +
tests/opennebula/models/compute/network_tests.rb | 27 +
tests/opennebula/models/compute/networks_tests.rb | 13 +
.../requests/compute/vm_allocate_tests.rb | 59 ++
tests/openstack/authenticate_tests.rb | 23 +-
tests/openstack/models/compute/images_tests.rb | 1 -
.../models/compute/security_group_tests.rb | 10 +-
tests/openstack/models/compute/server_tests.rb | 5 +-
tests/openstack/models/identity/role_tests.rb | 1 -
tests/openstack/models/image/images_tests.rb | 2 +-
.../openstack/models/network/floating_ip_tests.rb | 8 -
.../openstack/models/network/floating_ips_tests.rb | 8 -
.../models/network/lb_health_monitor_tests.rb | 2 +-
.../models/network/lb_health_monitors_tests.rb | 2 +-
tests/openstack/models/network/lb_member_tests.rb | 2 +-
tests/openstack/models/network/lb_members_tests.rb | 2 +-
tests/openstack/models/network/lb_pool_tests.rb | 2 +-
tests/openstack/models/network/lb_pools_tests.rb | 2 +-
tests/openstack/models/network/lb_vip_tests.rb | 2 +-
tests/openstack/models/network/lb_vips_tests.rb | 2 +-
tests/openstack/models/network/network_tests.rb | 8 +-
tests/openstack/models/network/networks_tests.rb | 2 +-
tests/openstack/models/network/port_tests.rb | 2 +-
tests/openstack/models/network/ports_tests.rb | 2 +-
tests/openstack/models/network/subnet_tests.rb | 2 +-
tests/openstack/models/network/subnets_tests.rb | 2 +-
tests/openstack/models/storage/file_tests.rb | 31 +-
tests/openstack/requests/compute/address_tests.rb | 4 +-
tests/openstack/requests/compute/helper.rb | 6 -
tests/openstack/requests/compute/limit_tests.rb | 1 -
tests/openstack/requests/compute/quota_tests.rb | 1 -
tests/openstack/requests/compute/server_tests.rb | 31 +-
tests/openstack/requests/identity/helper.rb | 4 -
tests/openstack/requests/identity/role_tests.rb | 1 -
.../requests/network/lb_health_monitor_tests.rb | 2 +-
.../openstack/requests/network/lb_member_tests.rb | 2 +-
tests/openstack/requests/network/lb_pool_tests.rb | 2 +-
tests/openstack/requests/network/lb_vip_tests.rb | 2 +-
tests/openstack/requests/network/port_tests.rb | 2 +-
tests/openstack/requests/network/router_tests.rb | 8 +-
tests/openstack/requests/network/subnet_tests.rb | 2 +-
tests/openstack/requests/volume/quota_tests.rb | 1 -
tests/openstack/storage_tests.rb | 1 -
tests/openstack/version_tests.rb | 2 +-
tests/openstack/volume_tests.rb | 1 -
tests/openvz/models/compute/server_tests.rb | 1 -
tests/ovirt/models/compute/cluster_tests.rb | 2 +-
tests/ovirt/models/compute/interface_tests.rb | 2 +-
tests/ovirt/models/compute/server_tests.rb | 2 +-
tests/ovirt/models/compute/template_tests.rb | 2 +-
tests/rackspace/auto_scale_tests.rb | 5 +-
tests/rackspace/block_storage_tests.rb | 4 +-
tests/rackspace/cdn_tests.rb | 69 +-
tests/rackspace/compute_tests.rb | 2 +-
tests/rackspace/compute_v2_tests.rb | 2 +-
tests/rackspace/databases_tests.rb | 3 +-
tests/rackspace/dns_tests.rb | 4 +-
tests/rackspace/helper.rb | 13 +
tests/rackspace/identity_tests.rb | 2 +-
tests/rackspace/load_balancer_tests.rb | 3 +-
tests/rackspace/models/auto_scale/group_tests.rb | 3 +-
tests/rackspace/models/auto_scale/groups_tests.rb | 2 +-
.../rackspace/models/auto_scale/policies_tests.rb | 3 +-
tests/rackspace/models/auto_scale/policy_tests.rb | 2 +-
tests/rackspace/models/auto_scale/webhook_tests.rb | 2 +-
.../rackspace/models/auto_scale/webhooks_tests.rb | 2 +-
tests/rackspace/models/compute_v2/image_tests.rb | 1 -
.../rackspace/models/compute_v2/keypairs_tests.rb | 2 +-
.../rackspace/models/compute_v2/metadata_tests.rb | 18 +-
tests/rackspace/models/compute_v2/server_tests.rb | 14 +-
tests/rackspace/models/databases/database_tests.rb | 12 +
.../models/identity/service_catalog_tests.rb | 18 +-
.../models/load_balancers/load_balancer_tests.rb | 62 +-
.../models/monitoring/alarm_examples_tests.rb | 2 +-
tests/rackspace/models/monitoring/alarm_tests.rb | 2 +-
tests/rackspace/models/monitoring/check_tests.rb | 1 -
.../models/monitoring/check_types_tests.rb | 4 +-
.../models/monitoring/data_points_tests.rb | 4 +-
tests/rackspace/models/monitoring/metric_tests.rb | 4 +-
tests/rackspace/models/monitoring/metrics_tests.rb | 2 +-
.../models/monitoring/notification_tests.rb | 2 +-
tests/rackspace/models/storage/account_tests.rb | 4 +-
.../rackspace/models/storage/directories_tests.rb | 8 +-
tests/rackspace/models/storage/directory_tests.rb | 46 +-
tests/rackspace/models/storage/file_tests.rb | 71 +-
tests/rackspace/models/storage/files_tests.rb | 4 +-
tests/rackspace/models/storage/metadata_tests.rb | 96 ++-
tests/rackspace/monitoring_tests.rb | 5 +-
tests/rackspace/queues_tests.rb | 2 +-
tests/rackspace/rackspace_tests.rb | 2 +-
.../rackspace/requests/auto_scale/config_tests.rb | 4 +-
tests/rackspace/requests/auto_scale/group_tests.rb | 8 +-
tests/rackspace/requests/auto_scale/helper.rb | 34 +-
.../rackspace/requests/auto_scale/policy_tests.rb | 8 +-
.../rackspace/requests/auto_scale/webhook_tests.rb | 2 +-
.../requests/block_storage/volume_tests.rb | 28 +-
tests/rackspace/requests/cdn/cdn_tests.rb | 17 +-
tests/rackspace/requests/compute/address_tests.rb | 6 +-
tests/rackspace/requests/compute/flavor_tests.rb | 2 +-
tests/rackspace/requests/compute/helper.rb | 6 -
tests/rackspace/requests/compute/image_tests.rb | 2 +-
tests/rackspace/requests/compute/server_tests.rb | 4 +-
.../rackspace/requests/compute_v2/address_tests.rb | 12 +-
.../requests/compute_v2/attachment_tests.rb | 1 -
tests/rackspace/requests/compute_v2/image_tests.rb | 6 +-
.../requests/compute_v2/metadata_tests.rb | 30 +-
.../rackspace/requests/compute_v2/server_tests.rb | 41 +-
tests/rackspace/requests/dns/dns_tests.rb | 2 +-
tests/rackspace/requests/dns/helper.rb | 4 +-
tests/rackspace/requests/dns/records_tests.rb | 2 +-
tests/rackspace/requests/identity/token_tests.rb | 2 +-
.../requests/load_balancers/get_stats_tests.rb | 2 +-
tests/rackspace/requests/load_balancers/helper.rb | 4 +-
.../requests/load_balancers/load_balancer_tests.rb | 22 +-
tests/rackspace/requests/monitoring/agent_tests.rb | 11 +-
.../requests/monitoring/alarm_example_tests.rb | 2 +-
tests/rackspace/requests/monitoring/alarm_tests.rb | 2 +-
tests/rackspace/requests/monitoring/helper.rb | 7 +-
tests/rackspace/requests/monitoring/list_tests.rb | 9 +-
.../requests/monitoring/notification_tests.rb | 2 +-
tests/rackspace/requests/queues/helper.rb | 2 +-
tests/rackspace/requests/storage/account_tests.rb | 1 -
.../rackspace/requests/storage/container_tests.rb | 2 +-
tests/rackspace/storage_tests.rb | 3 +-
tests/rage4/requests/dns/dns_tests.rb | 3 -
tests/riakcs/requests/usage/usage_tests.rb | 10 +-
tests/sakuracloud/helper.rb | 7 -
tests/sakuracloud/requests/compute/plans_tests.rb | 32 -
.../sakuracloud/requests/compute/servers_tests.rb | 46 --
.../sakuracloud/requests/compute/ssh_keys_tests.rb | 30 -
tests/sakuracloud/requests/compute/zones_tests.rb | 30 -
.../sakuracloud/requests/volume/archives_tests.rb | 31 -
tests/sakuracloud/requests/volume/disks_tests.rb | 47 --
tests/sakuracloud/requests/volume/plans_tests.rb | 30 -
tests/serverlove/requests/compute/image_tests.rb | 12 +-
tests/serverlove/requests/compute/server_tests.rb | 22 +-
.../util/compute/password_generator_tests.rb | 8 +-
tests/storage/models/directories_tests.rb | 2 +-
.../requests/compute/server_tests.rb | 4 +-
tests/vcloud/data/api_+_vdc_+_1 | 1 +
tests/vcloud/models/compute/helper.rb | 3 -
tests/vcloud/models/compute/network_tests.rb | 16 +-
tests/vcloud/models/compute/networks_tests.rb | 10 +-
tests/vcloud/models/compute/organization_tests.rb | 2 +-
tests/vcloud/models/compute/organizations_tests.rb | 2 +-
tests/vcloud/models/compute/server_tests.rb | 18 +-
tests/vcloud/models/compute/servers_tests.rb | 2 +-
tests/vcloud/models/compute/vapp_tests.rb | 6 +-
tests/vcloud/models/compute/vapps_tests.rb | 2 +-
tests/vcloud/models/compute/vdc_tests.rb | 10 +-
tests/vcloud/models/compute/vdcs_tests.rb | 2 +-
.../requests/compute/disk_configure_tests.rb | 2 +-
tests/vcloud_director/models/compute/helper.rb | 2 +-
.../models/compute/network_tests.rb | 21 +-
.../vcloud_director/models/compute/tasks_tests.rb | 36 +-
tests/vcloud_director/models/compute/vapp_tests.rb | 22 +-
tests/vcloud_director/models/compute/vdcs_tests.rb | 15 +-
tests/vcloud_director/models/compute/vms_tests.rb | 15 +-
.../requests/compute/catalog_tests.rb | 2 +-
.../vcloud_director/requests/compute/disk_tests.rb | 16 +-
.../requests/compute/edge_gateway_tests.rb | 115 ++-
tests/vcloud_director/requests/compute/helper.rb | 6 +-
.../requests/compute/media_tests.rb | 16 +-
.../requests/compute/network_tests.rb | 98 ++-
.../requests/compute/organization_tests.rb | 2 +-
.../requests/compute/ovf_descriptor_tests.rb | 6 +-
.../requests/compute/query_tests.rb | 6 +-
.../requests/compute/schema_helper.rb | 9 +-
.../vcloud_director/requests/compute/task_tests.rb | 2 +-
.../vcloud_director/requests/compute/vapp_tests.rb | 46 +-
.../vcloud_director/requests/compute/vdc_tests.rb | 2 +-
.../requests/compute/versions_tests.rb | 2 +-
tests/vcloud_director/requests/compute/vm_tests.rb | 84 +-
tests/vsphere/compute_tests.rb | 2 -
tests/vsphere/models/compute/server_tests.rb | 2 +-
.../vsphere/requests/compute/current_time_tests.rb | 2 +-
.../requests/compute/set_vm_customvalue_tests.rb | 1 -
tests/vsphere/requests/compute/vm_clone_tests.rb | 6 +-
.../requests/compute/vm_config_vnc_tests.rb | 4 +-
tests/vsphere/requests/compute/vm_destroy_tests.rb | 2 +-
tests/vsphere/requests/compute/vm_migrate_tests.rb | 4 +-
.../vsphere/requests/compute/vm_power_off_tests.rb | 4 +-
.../vsphere/requests/compute/vm_power_on_tests.rb | 2 +-
tests/vsphere/requests/compute/vm_reboot_tests.rb | 4 +-
.../requests/compute/vm_reconfig_cpus_tests.rb | 2 +-
.../requests/compute/vm_reconfig_hardware_tests.rb | 2 +-
.../requests/compute/vm_reconfig_memory_tests.rb | 2 +-
tests/xenserver/compute_tests.rb | 1 -
tests/xenserver/helper.rb | 4 +-
tests/xenserver/models/compute/console_test.rb | 2 +-
tests/xenserver/models/compute/host_cpu_tests.rb | 10 +-
.../xenserver/models/compute/host_metrics_tests.rb | 16 +-
tests/xenserver/models/compute/host_tests.rb | 23 +-
tests/xenserver/models/compute/hosts_tests.rb | 4 +-
tests/xenserver/models/compute/network_tests.rb | 14 +-
tests/xenserver/models/compute/networks_tests.rb | 4 +-
tests/xenserver/models/compute/pbd_tests.rb | 4 +-
tests/xenserver/models/compute/pbds_tests.rb | 4 +-
tests/xenserver/models/compute/pif_tests.rb | 4 +-
tests/xenserver/models/compute/pifs_tests.rb | 4 +-
tests/xenserver/models/compute/pool_tests.rb | 4 +-
tests/xenserver/models/compute/pools_tests.rb | 8 +-
tests/xenserver/models/compute/server_tests.rb | 4 +-
tests/xenserver/models/compute/servers_tests.rb | 14 +-
.../models/compute/storage_repositories_tests.rb | 8 +-
.../models/compute/storage_repository_tests.rb | 10 +-
tests/xenserver/models/compute/vbd_tests.rb | 12 +-
tests/xenserver/models/compute/vbds_tests.rb | 4 +-
tests/xenserver/models/compute/vif_tests.rb | 4 +-
tests/xenserver/models/compute/vifs_tests.rb | 4 +-
tests/xenserver/models/compute/vlan_tests.rb | 6 +-
tests/xenserver/models/compute/vlans_tests.rb | 6 +-
.../requests/compute/clone_server_tests.rb | 2 +-
.../requests/compute/create_network_tests.rb | 2 +-
.../requests/compute/create_server_tests.rb | 14 +-
.../xenserver/requests/compute/create_sr_tests.rb | 2 +-
.../xenserver/requests/compute/create_vdi_tests.rb | 38 +-
.../xenserver/requests/compute/create_vif_tests.rb | 6 +-
.../requests/compute/create_vlan_tests.rb | 4 +-
.../requests/compute/destroy_network_tests.rb | 2 +-
.../xenserver/requests/compute/destroy_sr_tests.rb | 4 +-
.../requests/compute/destroy_vdi_tests.rb | 8 +-
.../requests/compute/destroy_vlan_tests.rb | 4 +-
.../requests/compute/disable_host_tests.rb | 4 +-
.../requests/compute/enable_host_tests.rb | 4 +-
.../xenserver/requests/compute/get_record_tests.rb | 2 +-
.../requests/compute/set_attribute_tests.rb | 6 +-
.../xenserver/requests/compute/unplug_pbd_tests.rb | 4 +-
tests/xenserver/xenserver_tests.rb | 1 -
tests/zerigo/requests/dns/dns_tests.rb | 131 ++--
4882 files changed, 32603 insertions(+), 17045 deletions(-)
diff --git a/.rubocop.yml b/.rubocop.yml
new file mode 100644
index 0000000..0bd1c9c
--- /dev/null
+++ b/.rubocop.yml
@@ -0,0 +1,20 @@
+inherit_from: .rubocop_todo.yml
+
+HashSyntax:
+ EnforcedStyle: hash_rockets
+
+LineLength:
+ Max: 100
+ Enabled: false
+
+StringLiterals:
+ EnforcedStyle: double_quotes
+
+Encoding:
+ Description: 'Use UTF-8 as the source file encoding.'
+ Enabled: false
+
+SignalException:
+ Description: 'Do not enforce use of fail when raising exceptions.'
+ # Valid values are: semantic, only_raise and only_fail
+ EnforcedStyle: only_raise
diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml
new file mode 100644
index 0000000..9f2b1c9
--- /dev/null
+++ b/.rubocop_todo.yml
@@ -0,0 +1,606 @@
+# This configuration was generated by `rubocop --auto-gen-config`
+# on 2014-05-26 15:23:01 +0100 using RuboCop version 0.22.0.
+# The point is for the user to remove these configuration records
+# one by one as the offenses are removed from the code base.
+# Note that changes in the inspected code, or installation of new
+# versions of RuboCop, may require this file to be generated again.
+
+# Offense count: 85
+AccessorMethodName:
+ Enabled: false
+
+# Offense count: 139
+# Cop supports --auto-correct.
+AlignArray:
+ Enabled: false
+
+# Offense count: 449
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle, SupportedLastArgumentHashStyles.
+AlignHash:
+ Enabled: false
+
+# Offense count: 104
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+AlignParameters:
+ Enabled: false
+
+# Offense count: 3
+AmbiguousOperator:
+ Enabled: false
+
+# Offense count: 4
+AmbiguousRegexpLiteral:
+ Enabled: false
+
+# Offense count: 221
+# Cop supports --auto-correct.
+AndOr:
+ Enabled: false
+
+# Offense count: 1
+ArrayJoin:
+ Enabled: false
+
+# Offense count: 9
+AsciiComments:
+ Enabled: false
+
+# Offense count: 594
+# Configuration parameters: AllowSafeAssignment.
+AssignmentInCondition:
+ Enabled: false
+
+# Offense count: 3
+# Cop supports --auto-correct.
+Attr:
+ Enabled: false
+
+# Offense count: 35
+BlockAlignment:
+ Enabled: false
+
+# Offense count: 56
+BlockNesting:
+ Max: 7
+
+# Offense count: 230
+# Cop supports --auto-correct.
+Blocks:
+ Enabled: false
+
+# Offense count: 1366
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+BracesAroundHashParameters:
+ Enabled: false
+
+# Offense count: 9
+CaseEquality:
+ Enabled: false
+
+# Offense count: 291
+# Configuration parameters: IndentWhenRelativeTo, SupportedStyles, IndentOneStep.
+CaseIndentation:
+ Enabled: false
+
+# Offense count: 2
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+ClassAndModuleChildren:
+ Enabled: false
+
+# Offense count: 99
+# Configuration parameters: CountComments.
+ClassLength:
+ Max: 1131
+
+# Offense count: 46
+ClassVars:
+ Enabled: false
+
+# Offense count: 41
+# Cop supports --auto-correct.
+ColonMethodCall:
+ Enabled: false
+
+# Offense count: 33
+# Configuration parameters: Keywords.
+CommentAnnotation:
+ Enabled: false
+
+# Offense count: 82
+# Cop supports --auto-correct.
+CommentIndentation:
+ Enabled: false
+
+# Offense count: 1
+ConstantName:
+ Enabled: false
+
+# Offense count: 450
+CyclomaticComplexity:
+ Max: 46
+
+# Offense count: 29
+# Cop supports --auto-correct.
+DefWithParentheses:
+ Enabled: false
+
+# Offense count: 6310
+Documentation:
+ Enabled: false
+
+# Offense count: 42
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+DotPosition:
+ Enabled: false
+
+# Offense count: 34
+DoubleNegation:
+ Enabled: false
+
+# Offense count: 16
+EachWithObject:
+ Enabled: false
+
+# Offense count: 2
+ElseLayout:
+ Enabled: false
+
+# Offense count: 13
+# Cop supports --auto-correct.
+EmptyLines:
+ Enabled: false
+
+# Offense count: 64
+EmptyLinesAroundAccessModifier:
+ Enabled: false
+
+# Offense count: 4
+# Cop supports --auto-correct.
+EmptyLinesAroundBody:
+ Enabled: false
+
+# Offense count: 40
+# Cop supports --auto-correct.
+EmptyLiteral:
+ Enabled: false
+
+# Offense count: 101
+# Configuration parameters: AlignWith, SupportedStyles.
+EndAlignment:
+ Enabled: false
+
+# Offense count: 8
+Eval:
+ Enabled: false
+
+# Offense count: 1
+EvenOdd:
+ Enabled: false
+
+# Offense count: 7
+# Configuration parameters: Exclude.
+FileName:
+ Enabled: false
+
+# Offense count: 175
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+For:
+ Enabled: false
+
+# Offense count: 16
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+FormatString:
+ Enabled: false
+
+# Offense count: 143
+# Configuration parameters: MinBodyLength.
+GuardClause:
+ Enabled: false
+
+# Offense count: 27
+HandleExceptions:
+ Enabled: false
+
+# Offense count: 21
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+HashSyntax:
+ Enabled: false
+
+# Offense count: 486
+# Configuration parameters: MaxLineLength.
+IfUnlessModifier:
+ Enabled: false
+
+# Offense count: 54
+# Cop supports --auto-correct.
+IndentArray:
+ Enabled: false
+
+# Offense count: 990
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+IndentHash:
+ Enabled: false
+
+# Offense count: 285
+# Cop supports --auto-correct.
+IndentationConsistency:
+ Enabled: false
+
+# Offense count: 310
+# Cop supports --auto-correct.
+IndentationWidth:
+ Enabled: false
+
+# Offense count: 7
+Lambda:
+ Enabled: false
+
+# Offense count: 655
+# Cop supports --auto-correct.
+LeadingCommentSpace:
+ Enabled: false
+
+# Offense count: 10
+# Cop supports --auto-correct.
+LineEndConcatenation:
+ Enabled: false
+
+# Offense count: 6
+Loop:
+ Enabled: false
+
+# Offense count: 66
+# Cop supports --auto-correct.
+MethodCallParentheses:
+ Enabled: false
+
+# Offense count: 87
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+MethodDefParentheses:
+ Enabled: false
+
+# Offense count: 2036
+# Configuration parameters: CountComments.
+MethodLength:
+ Max: 1129
+
+# Offense count: 13
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+MethodName:
+ Enabled: false
+
+# Offense count: 21
+MultilineBlockChain:
+ Enabled: false
+
+# Offense count: 66
+MultilineIfThen:
+ Enabled: false
+
+# Offense count: 13
+MultilineTernaryOperator:
+ Enabled: false
+
+# Offense count: 85
+# Cop supports --auto-correct.
+NegatedIf:
+ Enabled: false
+
+# Offense count: 2
+# Cop supports --auto-correct.
+NegatedWhile:
+ Enabled: false
+
+# Offense count: 121
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+Next:
+ Enabled: false
+
+# Offense count: 28
+# Cop supports --auto-correct.
+NilComparison:
+ Enabled: false
+
+# Offense count: 89
+# Cop supports --auto-correct.
+# Configuration parameters: IncludeSemanticChanges.
+NonNilCheck:
+ Enabled: false
+
+# Offense count: 56
+# Cop supports --auto-correct.
+Not:
+ Enabled: false
+
+# Offense count: 220
+# Cop supports --auto-correct.
+NumericLiterals:
+ MinDigits: 14
+
+# Offense count: 3
+OneLineConditional:
+ Enabled: false
+
+# Offense count: 33
+# Configuration parameters: CountKeywordArgs.
+ParameterLists:
+ Max: 9
+
+# Offense count: 63
+# Cop supports --auto-correct.
+# Configuration parameters: AllowSafeAssignment.
+ParenthesesAroundCondition:
+ Enabled: false
+
+# Offense count: 17
+ParenthesesAsGroupedExpression:
+ Enabled: false
+
+# Offense count: 189
+# Cop supports --auto-correct.
+# Configuration parameters: PreferredDelimiters.
+PercentLiteralDelimiters:
+ Enabled: false
+
+# Offense count: 24
+# Cop supports --auto-correct.
+PerlBackrefs:
+ Enabled: false
+
+# Offense count: 8
+# Configuration parameters: NamePrefixBlacklist.
+PredicateName:
+ Enabled: false
+
+# Offense count: 7
+# Cop supports --auto-correct.
+Proc:
+ Enabled: false
+
+# Offense count: 640
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+RaiseArgs:
+ Enabled: false
+
+# Offense count: 25
+# Cop supports --auto-correct.
+RedundantBegin:
+ Enabled: false
+
+# Offense count: 4
+RedundantException:
+ Enabled: false
+
+# Offense count: 32
+# Cop supports --auto-correct.
+# Configuration parameters: AllowMultipleReturnValues.
+RedundantReturn:
+ Enabled: false
+
+# Offense count: 1939
+# Cop supports --auto-correct.
+RedundantSelf:
+ Enabled: false
+
+# Offense count: 66
+# Configuration parameters: MaxSlashes.
+RegexpLiteral:
+ Enabled: false
+
+# Offense count: 1
+RequireParentheses:
+ Enabled: false
+
+# Offense count: 5
+# Cop supports --auto-correct.
+RescueException:
+ Enabled: false
+
+# Offense count: 52
+RescueModifier:
+ Enabled: false
+
+# Offense count: 29
+SelfAssignment:
+ Enabled: false
+
+# Offense count: 62
+# Cop supports --auto-correct.
+# Configuration parameters: AllowAsExpressionSeparator.
+Semicolon:
+ Enabled: false
+
+# Offense count: 78
+ShadowingOuterLocalVariable:
+ Enabled: false
+
+# Offense count: 2
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+SignalException:
+ Enabled: false
+
+# Offense count: 10
+# Configuration parameters: Methods.
+SingleLineBlockParams:
+ Enabled: false
+
+# Offense count: 9
+# Cop supports --auto-correct.
+# Configuration parameters: AllowIfMethodIsEmpty.
+SingleLineMethods:
+ Enabled: false
+
+# Offense count: 909
+# Cop supports --auto-correct.
+SingleSpaceBeforeFirstArg:
+ Enabled: false
+
+# Offense count: 4
+# Cop supports --auto-correct.
+SpaceAfterColon:
+ Enabled: false
+
+# Offense count: 581
+# Cop supports --auto-correct.
+SpaceAfterComma:
+ Enabled: false
+
+# Offense count: 15
+# Cop supports --auto-correct.
+SpaceAfterControlKeyword:
+ Enabled: false
+
+# Offense count: 1
+# Cop supports --auto-correct.
+SpaceAfterMethodName:
+ Enabled: false
+
+# Offense count: 19
+# Cop supports --auto-correct.
+SpaceAfterNot:
+ Enabled: false
+
+# Offense count: 1332
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+SpaceAroundEqualsInParameterDefault:
+ Enabled: false
+
+# Offense count: 4362
+# Cop supports --auto-correct.
+SpaceAroundOperators:
+ Enabled: false
+
+# Offense count: 441
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+SpaceBeforeBlockBraces:
+ Enabled: false
+
+# Offense count: 11
+# Cop supports --auto-correct.
+SpaceBeforeComment:
+ Enabled: false
+
+# Offense count: 19
+SpaceBeforeFirstArg:
+ Enabled: false
+
+# Offense count: 1946
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles, EnforcedStyleForEmptyBraces, SpaceBeforeBlockParameters.
+SpaceInsideBlockBraces:
+ Enabled: false
+
+# Offense count: 146
+# Cop supports --auto-correct.
+SpaceInsideBrackets:
+ Enabled: false
+
+# Offense count: 6159
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces, SupportedStyles.
+SpaceInsideHashLiteralBraces:
+ Enabled: false
+
+# Offense count: 720
+# Cop supports --auto-correct.
+SpaceInsideParens:
+ Enabled: false
+
+# Offense count: 3
+# Cop supports --auto-correct.
+SpecialGlobalVars:
+ Enabled: false
+
+# Offense count: 91
+# Cop supports --auto-correct.
+StringConversionInInterpolation:
+ Enabled: false
+
+# Offense count: 45608
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+StringLiterals:
+ Enabled: false
+
+# Offense count: 197
+Tab:
+ Enabled: false
+
+# Offense count: 592
+# Configuration parameters: EnforcedStyleForMultiline, SupportedStyles.
+TrailingComma:
+ Enabled: false
+
+# Offense count: 125
+# Cop supports --auto-correct.
+# Configuration parameters: ExactNameMatch, AllowPredicates, AllowDSLWriters, Whitelist.
+TrivialAccessors:
+ Enabled: false
+
+# Offense count: 94
+UnderscorePrefixedVariableName:
+ Enabled: false
+
+# Offense count: 42
+UnlessElse:
+ Enabled: false
+
+# Offense count: 278
+# Cop supports --auto-correct.
+UnusedBlockArgument:
+ Enabled: false
+
+# Offense count: 1010
+# Cop supports --auto-correct.
+UnusedMethodArgument:
+ Enabled: false
+
+# Offense count: 6
+UselessAccessModifier:
+ Enabled: false
+
+# Offense count: 405
+UselessAssignment:
+ Enabled: false
+
+# Offense count: 3
+UselessSetterCall:
+ Enabled: false
+
+# Offense count: 13
+# Cop supports --auto-correct.
+VariableInterpolation:
+ Enabled: false
+
+# Offense count: 29
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+VariableName:
+ Enabled: false
+
+# Offense count: 23
+Void:
+ Enabled: false
+
+# Offense count: 6
+# Cop supports --auto-correct.
+WhileUntilDo:
+ Enabled: false
+
+# Offense count: 1
+# Configuration parameters: MaxLineLength.
+WhileUntilModifier:
+ Enabled: false
+
+# Offense count: 521
+# Cop supports --auto-correct.
+WordArray:
+ MinSize: 29
diff --git a/.travis.yml b/.travis.yml
index c4eb308..620ec9e 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -15,7 +15,6 @@ matrix:
gemfile: Gemfile
- rvm: 2.1.1
gemfile: Gemfile
- env: COVERAGE=true
- rvm: 2.1.1
gemfile: gemfiles/Gemfile-edge
- rvm: jruby-18mode
diff --git a/CHANGELOG.md b/CHANGELOG.md
index add1c53..8e1968f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,654 @@
+## 1.24.0 10/09/2014
+*Hash* 1bc78346c02294a0aa3e114f02e89143e0f25a4f
+
+Statistic | Value
+------------- | --------:
+Collaborators | 30
+Downloads | 6923953
+Forks | 1302
+Open Issues | 220
+Watchers | 3232
+
+**MVP!** Michael Hale
+
+#### [AWS]
+* Setup a fog keypair only if not supplied. thanks Timur Alperovich
+
+#### [AWS|Beanstalk]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|CDN]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|CloudFormation]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|DNS]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|DataPipeline]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|DynamoDB]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|EMR]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|Elasticache]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|Glacier]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|RDS]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|Redshift]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|SES]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|SNS]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|SQS]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|STS]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|SimpleDB]
+* Add instrumentor. thanks Michael Hale
+
+#### [AWS|Storage]
+* Add instrumentor. thanks Michael Hale
+
+#### [GH-3156]
+* Fix fog binary dependencies. thanks Paul Thornthwaite
+
+#### [GH-3157]
+* Replace 1.9 hashes with Hash rockets. thanks Paul Thornthwaite
+* Fixed additional 1.9 hash. thanks Paul Thornthwaite
+
+#### [aws|compute]
+* fix mock az filtering. thanks geemus
+
+#### [aws|dns]
+* Fix some syntax errors. thanks Nat Welch
+* mark mocked tests as pending. thanks geemus
+* 1.8 compat fix. thanks geemus
+
+#### [aws|iam]
+* mock fixes. thanks geemus
+
+#### [dynect|dns]
+* Let job_poll_timeout be specified. thanks Dan Peterson
+
+#### [google|compute]
+* added centos, opensuse images. thanks Eric Johnson
+* Refactor Compute to use the new Shared module. thanks Ferran Rodenas
+* Change how get_region works for mocks. thanks Nat Welch
+* Make get_region look the same for real and mock. thanks Nat Welch
+* Change target pool code to be correct and consistent with fog. thanks Nat Welch
+* mark target pool tests as pending to fix travis. thanks geemus
+
+#### [google|dns]
+* Add initial support for Google Cloud DNS. thanks Marcin Owsiany
+* Let non-mocked tests run by setting an env variable. thanks Marcin Owsiany
+* Add support for get_managed_zone, with tests. thanks Marcin Owsiany
+
+#### [google|monitoring]
+* Add support for Google Cloud Monitoring. thanks Ferran Rodenas
+
+#### [google|sql]
+* Initial support for Google Cloud SQL. thanks Ferran Rodenas
+* Add support for Flags. thanks Ferran Rodenas
+* Add support for Operations. thanks Ferran Rodenas
+* Add support for Instances. thanks Ferran Rodenas
+* Add support for SslCerts. thanks Ferran Rodenas
+* Add support for BackupRuns. thanks Ferran Rodenas
+* Add examples. thanks Ferran Rodenas
+* Use the correct directory for Google Cloud SQL examples. thanks Ferran Rodenas
+
+#### [google|storage]
+* workaround excon headers issue. thanks geemus
+* fix for failing mocked object tests. thanks geemus
+
+#### [hp|storage]
+* workaround excon headers issue. thanks geemus
+* fix storage tests to use new excon headers stuff. thanks geemus
+
+#### [linode|compute]
+* Get number of CPU cores from the API. thanks Keefe
+
+#### [misc]
+* openstack storage: add possibility to set publicity to containers. thanks Lomoff
+* make public option of container attr_reader. thanks Lomoff
+* fix mistyping in openstack storage directory model. thanks Lomoff
+* Adding dnsSuffixList support. thanks Ahmed Elsabbahy
+* Reworded dnsSuffixList comment. thanks Ahmed Elsabbahy
+* warning: mismatched indentations at 'end' with 'def'. thanks Akira Matsuda
+* warning: assigned but unused variable - reponse. thanks Akira Matsuda
+* Remove region defaults from Rackspace services. thanks Ash Wilson
+* Remove the deprecation notices. thanks Ash Wilson
+* :lipstick: Whitespace. thanks Ash Wilson
+* Test different means of creating load balancers. thanks Ash Wilson
+* Yard docs and optional parameters for lbs. thanks Ash Wilson
+* Add deprecation notices to storage and queues. thanks Ash Wilson
+* Consistently use :rackspace_queues_url. thanks Ash Wilson
+* The "nodes" element is actually nullable. thanks Ash Wilson
+* Whitespace touchups. thanks Ash Wilson
+* Reorganize clb fixtures, add a minimal case. thanks Ash Wilson
+* Port and nodes are *not* required for LB creation. thanks Ash Wilson
+* Formatting stick!. thanks Ash Wilson
+* Test for creating a bootable volume. thanks Ash Wilson
+* Accept `:image_id` to create bootable volumes. thanks Ash Wilson
+* Wait for volumes to become available. thanks Ash Wilson
+* create_server request and test. thanks Ash Wilson
+* Allow manual specification of :block_device_mapping. thanks Ash Wilson
+* :block_device_mapping_v2 needs to be an Array. thanks Ash Wilson
+* Give the BFV servers different names. thanks Ash Wilson
+* Create bootable volumes from the Volume model. thanks Ash Wilson
+* Boot-from-volume doesn't work from standard flavors. thanks Ash Wilson
+* servers.create(:boot_volume_id or :boot_image_id). thanks Ash Wilson
+* Missed an accessor there. thanks Ash Wilson
+* Warn if you specify both boot_volume_id and boot_image_id. thanks Ash Wilson
+* Add an image id to mock volumes when appropriate. thanks Ash Wilson
+* All flavors are bootable if you're mocking. thanks Ash Wilson
+* add ebs optimization. thanks Ben Chadwick
+* remove leading slash from Rackspace compute_v2 request paths. thanks Ben Sandberg
+* catch invalid uri. thanks Chris Thompson
+* Require docker-api in Gemfile. thanks Daniel Lobato
+* added ready? for sshable. thanks Denis Barishev
+* Add support for granting and revoking DB access to Cloud Databases. thanks Evan Light
+* Handle host specification on database users. thanks Evan Light
+* create_user, grant_user_access, and revoke_user_access now support host access restrictions. thanks Evan Light
+* Oops. Added that initializer just so I could pry inside of it. Don't need it now!. thanks Evan Light
+* Oops another pry call to remove... thanks Evan Light
+* Check region against static list, only if host is a subdomain of amazonaws.com. thanks Fabian Wiesel
+* removing the depreciation warning when calling key_pair from an aws server. thanks Graeme Wilson
+* adding the get and put methods for the aws amazon password policy commands. thanks Graeme Wilson
+* rename put_account_password_policy to update_account_password_policy. thanks Graeme Wilson
+* cleaning up extra spaces. thanks Graeme Wilson
+* updating to the correct url for reference. thanks Graeme Wilson
+* adding the delete method for the aws account_password_policy. thanks Graeme Wilson
+* Show failure for Openstack Storate service_type. thanks Greg Blomquist
+* Update the Openstack Storage service type. thanks Greg Blomquist
+* Fix parsing of SpotInstanceRequests responce when we also specify NetworkInterface. thanks Igor Rodionov
+* Fix to follow ruby code style. thanks Igor Rodionov
+* Updating the HP connect docs. thanks JJ Asghar
+* Updated to CloudStack 4.3 and re-added historical function behavior. thanks Jeff Moody
+* Revert "Updated to CloudStack 4.4 API and re-added historical function behavior.". thanks Jeff Moody
+* Redux of update to CloudStack 4.4 API and supporting "overloaded" methods to support old and new styles of calling CloudStack API functions. This should allow all options to be passed as a single hash or as an ordered list of parameters. thanks Jeff Moody
+* Depend on fog-radosgw. thanks Jon K Hellan
+* Fix AWS::AutoScaling::Instance#healthy?. thanks Jordan Running
+* Allow get_object_https_url to accept a method. thanks Kieran Pilkington
+* Adjust get_object_https_url method documentation. thanks Kieran Pilkington
+* Local storage: Always try to create directories, handle already existing. thanks Mark Yen
+* remove hack for linode not filtering avail.linodeplans by planid. thanks Marques Johansson
+* rescue with correct Linode::NotFound namespace. thanks Marques Johansson
+* Error if FOG_CREDENTIAL doesn't match session. thanks Matt Bostock
+* Add vertical spacing for readability. thanks Matt Bostock
+* Clean up Excon::Errors::SocketError::EOFError warning in vcloud_directory. thanks Matt Ray
+* Correct typos. thanks Riordan
+* Support for core Route53 HealthChecks API calls. thanks Riordan
+* Add missing fields from DNS server requests. thanks Riordan
+* Add missing fields to DNS record model. thanks Riordan
+* change service catalog lookup to be type based. thanks Mike Hagedorn
+* change to OS type request on failure. thanks Mike Hagedorn
+* make default lookup key in ServiceCatalog type and not name. thanks Mike Hagedorn
+* dont run a real test if the mocks are enabled. thanks Mike Hagedorn
+* vaguely working Query mixin. thanks Mike Pountney
+* Solid query API mixin, with tests. thanks Mike Pountney
+* Mock vdc model tests are passing. thanks Mike Pountney
+* find_by_query support for vdcs collection. thanks Mike Pountney
+* Fix failing test -- Description is optional. thanks Mike Pountney
+* Add Query support to Vms. thanks Mike Pountney
+* Enable model vapp_tests in Mock mode. thanks Mike Pountney
+* Enable Mock support for Model task tests. thanks Mike Pountney
+* Add query support to tasks model, inc Mock. thanks Mike Pountney
+* Fix up tasks_tests; add missing data from Mock. thanks Mike Pountney
+* no mock for custom_fields. thanks Mike Pountney
+* vApp get_execute_query 'get by name' mock. thanks Mike Pountney
+* Fix error in assumption about TaskRecord queries. thanks Mike Pountney
+* Replace Fog::Time with Time. thanks Mike Pountney
+* Make task record translation more robust. thanks Mike Pountney
+* TaskRecord ObjectName is optional. thanks Mike Pountney
+* Empty commit to prompt Travis run. thanks Mike Pountney
+* Not specifying Owner details caused issue in Query Mock. thanks Mike Pountney
+* Whitespace cleanup of #3069. thanks Nat Welch
+* add missing HEAD Bucket request, with a basic test in there. thanks Nathan Sullivan
+* adding support for network interfaces and public IP association (non-default VPCs) for EC2 spot instances. thanks Nathan Sullivan
+* Revert "adding support for network interfaces and public IP association (non-default VPCs) for EC2 spot instances". thanks Nathan Sullivan
+* added public? and acl method to s3 file and minor refactoring. thanks Nico
+* adding tests for aws file acl and public? method. thanks Nico
+* Move chunk_size parameter to the connection_options table. thanks Pierre Massat
+* Vcloud director: Add static routing support to Edge Gateway. thanks Simas Cepaitis
+* Improve test a bit. thanks Simas Cepaitis
+* Fix typo. thanks Simas Cepaitis
+* :GatewayInterface is located 1 level deeper. thanks Simas Cepaitis
+* allow userdata to be passed to Rackspace AutoScale. thanks Thom May
+* Accept Block For Get Requests. thanks Tim
+* resolve conflicts. thanks Tim
+* remove Git Markup. thanks Tim
+* Revert "S3 invalid signature generation". thanks Wesley Beary
+* Make possible to get credentials value, since it's needed to start a console connection. thanks com
+* fixes around MVP. thanks geemus
+* update contributors. thanks geemus
+* remove files duplicated from fog-core. thanks geemus
+* fix signature to properly escape. thanks lawrence
+* Update signaturev4.rb. thanks lawrence
+* remove sakuracloud libs and add fog sakura-cloud to gem depends. thanks sawanoboly
+* remove fog/bin/sakuracloud and copy it to fog_sakuracloud. thanks sawanoboly
+* Added backend services resource to gce compute. thanks snyquist2
+* Added backend services example and model classes. thanks snyquist2
+* added 'add backend services backend', global forwarding rules, target http proxies, and url maps. thanks snyquist2
+* ]fixed bug in global forwarding rules get. thanks snyquist2
+* fixed whitespace issues. thanks snyquist2
+* fixed whitespace issues. thanks snyquist2
+* correct files changes accidentally. thanks snyquist2
+* correct issues in previous commit. thanks snyquist2
+* fixed previous commit. thanks snyquist2
+* remove excess file. thanks snyquist2
+* added tests for list requests. thanks snyquist2
+* corrected naming on tests. thanks snyquist2
+* fixed image create. thanks snyquist2
+* added tests for http health checks, images, target pools, and forwarding rules. thanks snyquist2
+* modified l7 load balancing example. thanks snyquist2
+
+#### [oVirt]
+* expose ips attribute. thanks Erik van Pienbroek
+
+#### [openstack]
+* should allow endpoint_type on storage for authentication. thanks Guilherme Souza
+* fix network.rb. thanks Naoto TAKAHASHI
+
+#### [rackspace]
+* Add support for httpsRedirect flag. thanks Mike Dillon
+* Fetch https_redirect on demand if it is nil. thanks Mike Dillon
+* set default region in mock helper for tests. thanks geemus
+
+
+## 1.23.0 07/17/2014
+*Hash* 19c712a0b0d449c0e0cceaf94e3ee8703814db32
+
+Statistic | Value
+------------- | --------:
+Collaborators | 30
+Downloads | 6050760
+Forks | 1243
+Open Issues | 192
+Watchers | 3129
+
+**MVP!** Achim Ledermüller
+
+#### [#3048]
+* Lock down rest-client version. thanks Paul Thornthwaite
+* Don't drop 1.8.7 checking yet. thanks Paul Thornthwaite
+
+#### [AWS]
+* add describe_vpc_attribute. thanks Konstantinos Natsakis
+
+#### [AWS|Compute]
+* support for modify_subnet_attribute. thanks Frederick Cheung
+
+#### [GH-2932]
+* Disable brittle test. thanks Paul Thornthwaite
+
+#### [aws]
+* add mock tagging for acls and vpcs, refactor types. thanks Ben House
+* support `xvd` based devices (HVM). thanks Jason Hansen
+* update refs to ec2_compatibility_mode. thanks Michael Hale
+
+#### [aws/security_group]
+* Support mock of group from another account. thanks Greg Burek
+
+#### [aws|compute]
+* adding support for t2 instance class. thanks Yousef Ourabi
+
+#### [aws|elb]
+* add support for ELB connection draining. thanks Blake Gentry
+* Fix tests so that they work with FOG_MOCK=false for both EC2-Classic and VPC style AWS accounts. thanks Michael Hale
+
+#### [cloudsigma]
+* remove meaningless 'related' attribute type. thanks geemus
+
+#### [dynect|dns]
+* Fixes exception behavior for 307's. thanks Nick Janus
+
+#### [glesys]
+* API change, new attribute :bandwidth added. thanks and Tomas Skogberg
+
+#### [google | compute]
+* add google-containers project for images. thanks Eric Johnson
+
+#### [google|compute]
+* remove hard-coded references to /projects/google/. thanks Eric Johnson
+* Some fixes for Images. thanks Ferran Rodenas
+* Improve Server support. thanks Ferran Rodenas
+* Enable passing the google key as a String. thanks Ferran Rodenas
+* Add disk_size_gb to 'Image' model. thanks Ferran Rodenas
+* Add DiskType resource. thanks Ferran Rodenas
+* Add support for DiskTypes in Disks. thanks Ferran Rodenas
+* Fix operations scopes for compute engine. thanks ashmrtnz
+
+#### [misc]
+* remove :url param from get_service request for google storage. thanks Lomoff
+* fix disks and servers live tests. thanks Lomoff
+* remove some test output, add size_gb as a required field for disk creation. thanks Lomoff
+* rewrite the way model is waited in live tests. thanks Lomoff
+* fix asynchronious disks collection tests. thanks Lomoff
+* fix object test (it already was shared object with such name somewhere). thanks Lomoff
+* fix live tests for google engine. thanks Lomoff
+* add new line to the end of google_tests_helper.rb. thanks Lomoff
+* refactor to remove backoff-if-unfound function from google compute service. thanks Lomoff
+* fix 1.8.7 compatibility. thanks Lomoff
+* merge with master. thanks Lomoff
+* one: changed name nic to interface. thanks ller
+* one server: added interfaces_attributes. thanks ller
+* one: added nil defaults for interfaces. thanks ller
+* one: added to_label to flavor. thanks ller
+* one: added vlan and to_label for network. thanks ller
+* one: added groupid for servers. thanks ller
+* one: raise one errors if vm allocation fails. thanks ller
+* Revert "[opennebula] ruby 1.8.7: add gem require_relativ". thanks ller
+* Move PrivateIpAddress to the NetworkInterface structure. thanks Andrew Hodges
+* Link catalog item to a catalog in Mock. thanks Anna Shipman
+* Add Mock for a vAppTemplate. thanks Anna Shipman
+* Add a Mock for post_instantiate_vapp_template. thanks Anna Shipman
+* Do not return a network from sample config. thanks Anna Shipman
+* Add Mock for put_memory. thanks Anna Shipman
+* Add Mock for put_vm. thanks Anna Shipman
+* Add Mock for put_cpu. thanks Anna Shipman
+* Add Mock for get_vapp_metadata. thanks Anna Shipman
+* Add Mock for put metadata. thanks Anna Shipman
+* Add Mock for get_vms_in_lease_from_query. thanks Anna Shipman
+* Add Mock for edgeGateway query. thanks Anna Shipman
+* Make name of network less generic. thanks Anna Shipman
+* Add Mock for orgVdc in get_execute_query. thanks Anna Shipman
+* Add support for tags for Data Pipeline. thanks Anthony Accardi
+* allow to instantiate template without network_id. thanks Barrett Jones
+* promote read replica test (pending), style cleanup. thanks Ben Chadwick
+* fix EngineVersion for PendingModifiedValues (plus minor cleanup). thanks Ben Chadwick
+* add tagSet to describe_network_acls. thanks Ben House
+* pass tags when creating network acl. thanks Ben House
+* remove tag setting from describe_network_acls. thanks Ben House
+* apply tag filters to network acls. thanks Ben House
+* add tests for acl tag filtering. thanks Ben House
+* clean up acl test tag. thanks Ben House
+* update delete_tags request to match create_tags. thanks Ben House
+* add tagging for vpcs. thanks Ben House
+* move tagged_resources method to compute. thanks Ben House
+* tag vpc after it is created. thanks Ben House
+* tag acl after it is created. thanks Ben House
+* merge tags if present, reset mocks after acl/vpc tests. thanks Ben House
+* promote read replicas. thanks Benjamin Chadwick
+* fix. thanks Benjamin Chadwick
+* fix parser. thanks Benjamin Chadwick
+* update to mocking code. thanks Benjamin Chadwick
+* rename Fog::Compute::OpenStack::Tenants#find_by_id to #get for consistency. thanks Brett Lentz
+* add ability to replace existing Dyn records. thanks Brett Lentz
+* Typo in fog.io link. thanks ltje
+* Content type to upload vAppTemplates is application/vnd.vmware.vcloud.uploadVAppTemplateParams+xml'. thanks Daniel Aragao
+* Fixes attributes when generating xml body for post deploy vapps. thanks Daniel Aragao
+* Adds VPN section to edge gateway service configuration. thanks Daniel Aragao
+* Adds DHCP to edge gateway service configuration. thanks Daniel Aragao
+* Using end_point rather than static IP 10.194.1.65 on xsi. thanks Daniel Aragao
+* mock wasn't being set with FOG_MOCK env variable. thanks Daniel Aragao
+* updated regions list. thanks Dave Benvenuti
+* Behave more like DO when private_networking flag is passed in. Include a private_ip_address in the response only if the region supports private networking. thanks Dave Benvenuti
+* fixed whitespace. thanks Dave Benvenuti
+* Fixing uniq_id issue with create_load_balancer mock. thanks Dejan Menges
+* Forgot to commit uniq_id. thanks Dejan Menges
+* Fixing uniq_id issue with create_load_balancer mock. thanks Dejan Menges
+* Forgot to commit uniq_id. thanks Dejan Menges
+* Deduplicating, using Fog::Mock.random_numbers(). thanks Dejan Menges
+* Add pretend networking and interface association to the network interface mocking. thanks Eric Herot
+* sub double for single quotes. thanks Eric Herot
+* Treat device index as string instead of int. thanks Eric Herot
+* Set instance vpcId based on subnet vpcId. thanks Eric Herot
+* More aggressively reset the mocking environment. thanks Eric Herot
+* Add ipaddress gem requirement. thanks Eric Herot
+* Add some line breaks to duplicate interface failure test. thanks Eric Herot
+* Reset mocking environment before acl test. thanks Eric Herot
+* Reset mocking environment in ELB model tests. thanks Eric Herot
+* Reset mocking environment in internet gateway tests. thanks Eric Herot
+* Reset mocking environment in route tests. thanks Eric Herot
+* Reset mock environment in assign private ip tests. thanks Eric Herot
+* Allow subnets with same CIDR but different IP (and test for it). thanks Eric Herot
+* support r3 instances & expose virtualization type. thanks Eugene Howe
+* properly initialize compute object inside elb methods. thanks Eugene Howe
+* fix for 1.8.7. thanks Eugene Howe
+* allow files in personality to have symbol keys. thanks Gabe Conradi
+* Use latest AWS EC2 API version. thanks Greg Burek
+* Adds encrypted EBS snapshots. thanks Greg Burek
+* Adds encrypted EBS volumes. thanks Greg Burek
+* Adds parsing for encrypted block devices to create_image. thanks Greg Burek
+* Adds comment about using encrypted flag with block device mapping on run_instances. thanks Greg Burek
+* Updates volume mocks to reflect new IOPs to size ratio of 30:1. thanks Greg Burek
+* Get to green. thanks Greg Burek
+* Correct AWS API version to one in the past. thanks Greg Burek
+* Full API coverage of the CloudStack 4.2.X API. thanks Jeff Moody
+* Updated to no longer change historical method signatures. thanks Jeff Moody
+* Add Fog::Compute.create_many and bootstrap_many. thanks John Keiser
+* Move save_many to servers, reuse save_many in save. thanks John Keiser
+* Fix describe_internet_gateways calls for >1 igw. thanks Jon Topper
+* AWS Ensure NetworkInterface model exposes private ip addresses. thanks Jonathan Serafini
+* AWS Ensure allocation_id is set on private ip address. thanks Jonathan Serafini
+* Add the DisableApiTermination flag to the AWS Server model, so it can be sent on instance creation. thanks Jordan Day
+* hardcoded linode flavor cores until they add it to their api. thanks Josh Blancett
+* update for new linode flavor ids. thanks Josh Blancett
+* add request for linode.config.delete. thanks Josh Blancett
+* add request for linode.config.update. thanks Josh Blancett
+* Denser code style. thanks Konstantinos Natsakis
+* Updated setup method to retry once on disconnect to try to address issues with Ubuntu 12.04 images. thanks Kyle Rames
+* rebasing with master. thanks Kyle Rames
+* Fix #2892: "rake travis" fails with can't modify frozen String. thanks Marcin Owsiany
+* Added ip_address methods consistent with openstack. thanks Marcus Nilsson
+* Add fog-softlayer module . thanks Matt Eldridge
+* Update links to DigitalOcean SSH-key docs. thanks Matthew Breeden
+* remove www subdomain from digital ocean ssh-key links. thanks Matthew Breeden
+* Support for required EvaluateTargetHealth for ALIAS records. thanks Matthew O'Riordan
+* took out os_account_meta_temp_url_key as a required parameter and marked it as deprecated. this code does not belong in the hp provider. thanks Mike Hagedorn
+* added exception for using temp urls with no key. thanks Mike Hagedorn
+* Add basic mock data for vapp/vm. thanks Mike Pountney
+* add Mock for get_vapp. thanks Mike Pountney
+* extend get_vdc mock to return contained vApps. thanks Mike Pountney
+* add vApps-in-vDC support in Mock. thanks Mike Pountney
+* Add LeaseSettingSection Mocks for vApps. thanks Mike Pountney
+* Add Owner Mocks for vApps. thanks Mike Pountney
+* Add Mocks for VM VirtualHardwareSection GET methods. thanks Mike Pountney
+* Mock for get_snapshot_section. thanks Mike Pountney
+* Mock for get_network_connection_system_section_vapp. thanks Mike Pountney
+* Mock for get_operating_system_section. thanks Mike Pountney
+* Add Mock for get_startup_section. thanks Mike Pountney
+* Add (crap) Mock for get_network_config_section_vapp. thanks Mike Pountney
+* Add Mock for get_runtime_info_section_type. thanks Mike Pountney
+* Add Mock support in get_vm_capabilities. thanks Mike Pountney
+* Fix 1.8.7 bug - trailing comma in arg list. thanks Mike Pountney
+* Fix 1.8.7 bug - trailing comma in arg list. thanks Mike Pountney
+* Workaround for Hash.select in Ruby 1.8. thanks Mike Pountney
+* Remove coveralls. thanks Nat Welch
+* Remove coveralls from test helper. thanks Nat Welch
+* second attempt to fix issue# 2748, plus fix the same problem for the volume/s and spot request/s models as well. thanks Nathan Sullivan
+* Change signature of stop method. thanks Olle Lundberg
+* Add support for expunging node in cloudstack. thanks Olle Lundberg
+* Remove COVERAGE env setup on Travis. thanks Paul Thornthwaite
+* Add Rubocop and checklist. thanks Paul Thornthwaite
+* Guard Ruby 1.8.7 against Rubocop in short term. thanks Paul Thornthwaite
+* Standardise empty lines throughout codebase. thanks Paul Thornthwaite
+* Standardise indentation of access modifiers. thanks Paul Thornthwaite
+* Remove trailing blank lines. thanks Paul Thornthwaite
+* Remove trailing whitespace. thanks Paul Thornthwaite
+* Update rubocop todo list. thanks Paul Thornthwaite
+* Replace `alias` with `alias_method`. thanks Paul Thornthwaite
+* Standardise on collection methods. thanks Paul Thornthwaite
+* Replace deprecated File.exists? method. thanks Paul Thornthwaite
+* Replace deprecated Hash methods. thanks Paul Thornthwaite
+* Update rubocop todo list. thanks Paul Thornthwaite
+* Remove providers directory. thanks Paul Thornthwaite
+* Remove edge check for fog-brightbox. thanks Paul Thornthwaite
+* Make job polling requests for Dyn retryable within exconn by passing the idempotent option. thanks Peter Drake
+* initial opennebula fog class and directories. thanks Sebastian Saemann
+* dynect: dns: dramatically improve speed of 'get_all_records' request and 'records.all' method. thanks Shawn Catanzarite
+* Add custom_fields support to vcloud_director. thanks Simas Cepaitis
+* Fix typo. thanks Simas Cepaitis
+* Add custom_fields to vapp, remove debug info. thanks Simas Cepaitis
+* Add couple of functions and tests. thanks Simas Cepaitis
+* Rename method to put_product_sections and update it's documentation. thanks Simas Cepaitis
+* Add custom_fields support to vcloud_director. thanks Simas Cepaitis
+* Fix typo. thanks Simas Cepaitis
+* Add custom_fields to vapp, remove debug info. thanks Simas Cepaitis
+* Add couple of functions and tests. thanks Simas Cepaitis
+* Rename method to put_product_sections and update it's documentation. thanks Simas Cepaitis
+* remove :host from request parameters, stopping excon errors. thanks Tom Armitage
+* Add options support. thanks Tom Noonan II
+* Add options argument to all() method. thanks Tom Noonan II
+* Add pagination markers (#2908). thanks Tom Noonan II
+* Fix variable name error. thanks Tom Noonan II
+* Resolve copypasta error. thanks Tom Noonan II
+* Resolve issue where metadata was being discarded too early. thanks Tom Noonan II
+* Create volume in specific availability zone. thanks sig
+* remove jekyll dependency. thanks geemus
+* allow 1.8.7 failures. thanks geemus
+* remove duplication in fog/xml connection stuff. thanks geemus
+* fix 2.1.1 syntax error with updated attributes. thanks geemus
+* bump fog-core dep. thanks geemus
+* remove explicit call for 'type' hash, fallback to default. thanks geemus
+* fix erroneous date_time type. thanks geemus
+* Update create_server.rb. thanks georgyous
+* pass options to zerigo list_hosts. thanks joe morgan
+* Add options for listing hosts Options include - Per_page - Page - FQDN. thanks joe morgan
+* update styling per rubocop. thanks joe morgan
+* update indentation. thanks joe morgan
+
+#### [opennebula]
+* adapted the new require structure and added uuid for server model. thanks ller
+* removed debug infos. thanks ller
+* raise an ArgumentError if VM name is empty/nil. thanks ller
+* add gem dependencies and require. thanks ller
+* add vm_allocate and network tests. thanks ller
+* make one provider available to fog. thanks ller
+* added README and some examples for opennebula provider. thanks ller
+* Added several mocks for fit live testing. thanks ller
+* fixed indentation and changed string interpolation. thanks ller
+* typo in raise. thanks ller
+* interface model: attributes are nil by default; added persisted?. thanks ller
+* network model: removed default definition of attribute description. thanks ller
+* fixed indentation. thanks ller
+* VNC console cleanup. thanks ller
+* fixed indentation. thanks ller
+* interface model: added method persisted?. thanks ller
+* server model: comments and rename of methods (for compability to foreman). thanks ller
+* removed opennebula dependecies. thanks ller
+* gemspec: moved opennebula to development_dependency. thanks ller
+* fixed indentation. thanks ller
+* add credentials to mock_helper. thanks ller
+* ruby 1.8.7: add gem require_relativ. thanks ller
+* fix link in readme. thanks ller
+* VNC: require local file compatible to ruby 1.8.7. thanks ller
+* flavor model: minor simplifications. thanks ller
+* fixed indentations. thanks ller
+* model flavor: lowercase attributes. thanks ller
+* added groups.get and groups.get_by_name filters. thanks ller
+* added flavors.get_by_name. thanks ller
+* code cleanup, indentations. thanks ller
+* use flavors.get_by_name for live tests. thanks ller
+* clean up and code simplification. thanks ller
+* use id instead of uid for groups. thanks ller
+* interface: use persisted? instead of new?; remove constructor. thanks ller
+* use id instead of uuid for network. thanks ller
+* network tests: use id not uuid. thanks ller
+* Added live/mock tests for group/s. thanks ller
+* network: removed unnecessary constructor. thanks ller
+* fix for #3003 - soft load the opennebula gem. thanks ller
+
+#### [openstack | server]
+* start/stop/pause/suspend actions. thanks Marek Kasztelnik
+
+#### [openstack|compute]
+* added descriptions to returns blocks in the security_groups tests in hopes of trying to track down the cause of issue #2874. thanks Kyle Rames
+
+#### [openstack|storage]
+* fixing bug metadata indifferent access implementation. thanks Kyle Rames
+
+#### [ovirt]
+* force volumes reload on volume locked? check. thanks Amos Benari
+
+#### [rackspace]
+* updating authentication endpoints. thanks Kyle Rames
+
+#### [rackspace|autoscale]
+* fixing typo in docs. thanks Kyle Rames
+* call clear on collection if group has not been persisted in order to prevent fog from lazy loading non-existent collections. thanks Kyle Rames
+* updating getting started docs. thanks Kyle Rames
+* fixing broken tests. thanks Kyle Rames
+
+#### [rackspace|compute_v2]
+* escaping flavor_id and image_id in get operations. thanks Kyle Rames
+
+#### [rackspace|load balancers]
+* updating node handling so it is similar to PR#3010. thanks Kyle Rames
+
+#### [rackspace|loadbalancers]
+* updated code so that you did not need to pass nodes in during load balancer creation. thanks Kyle Rames
+* updated to only call clear on newly created nodes and access rule collections for unpersisted load balancers. thanks Kyle Rames
+* The id, and ipVersion were not being populated when making a create load balancer call. Fixes #3008. thanks Kyle Rames
+
+#### [rackspace|storage]
+* made the index operator use indifferent access in order to fix issue #2881. thanks Kyle Rames
+
+#### [stormondemand|dns]
+* fixing typo in require statement. thanks Kyle Rames
+
+#### [vcloud_director]
+* Add :put_network request. thanks Mike Pountney
+* missing post_capture_vapp functionality. thanks Nick Osborn
+* Implement post_create_catalog_item. thanks Nick Osborn
+* gateway should be nullable in network. thanks geemus
+* allow nullable FenceMode. thanks geemus
+
+#### [vsphere]
+* Fixed bug in which clients are forced to wait for instance. The 'wait' option was being forced to true in clone_vm. thanks Cyrus Team
+* Fixed bug in which clients are forced to wait for instance. The 'wait' option was being forced to true in clone_vm. thanks Cyrus Team
+* expose VM virtual hardware version. thanks Michael Moll
+* Remove the relative_path attribute. thanks Timur Alperovich
+* Use the server_id in interfaces. thanks Timur Alperovich
+* Use server_id in the Volumes collection. thanks Timur Alperovich
+
+#### [zerigo]
+* Fix Invalid Excon request warning. thanks Phil Kates
+
+
+## 1.22.1 05/29/2014
+*Hash* ca603769c940481885d60cda68288eb124c49cd6
+
+Statistic | Value
+------------- | --------:
+Collaborators | 30
+Downloads | 5483958
+Forks | 1181
+Open Issues | 180
+Watchers | 3056
+
+**MVP!** Ferran Rodenas
+
+#### [GH-2873]
+* Ensure fog is using fog-core 1.22+. thanks Paul Thornthwaite
+
+#### [google|compute]
+* Add Region tests. thanks Ferran Rodenas
+* Update Images support. thanks Ferran Rodenas
+* Update Servers support. thanks Ferran Rodenas
+* Improve Disks support. thanks Ferran Rodenas
+* Update Addresses suport. thanks Ferran Rodenas
+
+#### [misc]
+* Enabled :path_style for Google Cloud Storage for allowing CNAME buckets. thanks Romain Haenni
+
+
## 1.22.0 04/17/2014
*Hash* 6d2c2d0575f9f7337bd01d17428dc12b7105329a
diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md
index 6a94974..58ceab6 100644
--- a/CONTRIBUTORS.md
+++ b/CONTRIBUTORS.md
@@ -1,6 +1,8 @@
+* A.S. Lomoff <lomov.as at gmail.com>
* Aaron Bell <aarontbell at gmail.com>
* Aaron Suggs <aaron at ktheory.com>
* Abhishek Chanda <abhishek.becs at gmail.com>
+* Achim Ledermüller <achim.ledermueller at netways.de>
* Adam Bozanich <adam.boz at gmail.com>
* Adam Greene <adam at sweetspotdiabetes.com>
* Adam Heinz <amh at metricwise.net>
@@ -9,6 +11,7 @@
* Adam Tucker <adam.j.tucker at gmail.com>
* Adan Saenz <asaenz at momentumsi.com>
* Ahmed Al Hafoudh <alhafoudh at freevision.sk>
+* Ahmed Elsabbahy <aelsabbahy at promnetwork.com>
* Akira Matsuda <ronnie at dio.jp>
* Akshay Joshi <me at akshayjoshi.com>
* Akshay Moghe <amoghe at maginatics.com>
@@ -43,6 +46,7 @@
* Andrei Serdeliuc <andrei at serdeliuc.ro>
* Andrew Bruce <andrew at camelpunch.com>
* Andrew Donald Kennedy <andrew.kennedy at cloudsoftcorp.com>
+* Andrew Hodges <betawaffle at gmail.com>
* Andrew Kuklewicz <andrew at beginsinwonder.com>
* Andrew Leonard <andy at hurricane-ridge.com>
* Andrew Newman <andrew.newman at sdx.com.au>
@@ -52,7 +56,9 @@
* Andy Delcambre <adelcambre at engineyard.com>
* Andy Lindeman <andy at andylindeman.com>
* Angelo Marletta <angelo.marletta at gmail.com>
+* Anna Shipman <anna at annashipman.co.uk>
* Anshul Khandelwal <anshul at anshulkhandelwal.com>
+* Anthony Accardi <anthony at swipely.com>
* Anthony Eden <anthonyeden at gmail.com>
* Anton Lindstrom <anton at glesys.se>
* Anton Lindström <lindztr at gmail.com>
@@ -68,13 +74,17 @@
* Athir Nuaimi <anuaimi at devfoundry.com>
* Avrohom Katz <iambpentameter at gmail.com>
* BK Box <bk at theboxes.org>
+* Barrett Jones <barretthjones at gmail.com>
* Bart Vercammen <bart.vercammen at portico.io>
* Ben Bleything <ben at bleything.net>
* Ben Burkert <ben at benburkert.com>
* Ben Butler-Cole <ben at bridesmere.com>
* Ben Chadwick <bchadwick at mdsol.com>
+* Ben House <ben at benhouse.io>
* Ben Hundley <ben.hundley at gmail.com>
+* Ben Sandberg <ben at pdxfixit.com>
* Ben Turley <ben at scan.me>
+* Benjamin Chadwick <bchadwick at mdsol.com>
* Benjamin Manns <benmanns at gmail.com>
* Benson Kalahar <bensonk42 at gmail.com>
* Benton Roberts <benton at bentonroberts.com>
@@ -91,12 +101,14 @@
* Bradley Schaefer <bradley.schaefer at gmail.com>
* Brandon Dunne <bdunne at redhat.com>
* Brendan Fosberry <brendan.fosberry at rackspace.com>
+* Brett Lentz <blentz at redhat.com>
* Brett Porter <brett at apache.org>
* Brian D. Burns <iosctr at gmail.com>
* Brian Dorry <bdorry at Brian-Dorrys-MacBook-Pro.local>
* Brian Hartsock <brian.hartsock at gmail.com>
* Brian Hartsock <brian.hartsock at rackspace.com>
* Brian Nelson <bnelson at sugarcrm.com>
+* Brian O'Keefe <brianok at linode.com>
* Brian Palmer <brianp at instructure.com>
* Brice Figureau <brice-puppet at daysofwonder.com>
* Bruno Enten <bruno at enten-itc.ch>
@@ -125,9 +137,11 @@
* Chris Kershaw <ckershaw at 6fusion.com>
* Chris Mague <github at mague.com>
* Chris Roberts <chrisroberts.code at gmail.com>
+* Chris Thompson <chris.thompson at govdelivery.com>
* Chris Wuest <chris.wuest at rackspace.com>
* Chris Wuest <chris at chriswuest.com>
* Christian Berendt <berendt at b1-systems.de>
+* Christian Höltje <docwhat at gerf.org>
* Christian Paredes <cp at redbluemagenta.com>
* Christoph Schiessl <chs at proactive.cc>
* Christoph Witzany <christoph at web.crofting.com>
@@ -141,6 +155,7 @@
* Cody Herriges <c.a.herriges at gmail.com>
* Curtis Stewart <cstewart at momentumsi.com>
* Curtis Stewart <cstewart at transcendcomputing.com>
+* Cyrus Team <cyrusteam at cyruslists.com>
* Dan Abel <dan.abel at digital.cabinet-office.gov.uk>
* Dan Bode <dan at puppetlabs.com>
* Dan Carley <dan.carley at gmail.com>
@@ -149,12 +164,14 @@
* Dan Prince <dprince at redhat.com>
* Dan Prince <princepd at alumni.jmu.edu>
* Dan Simpson <dan.simpson at gmail.com>
+* Daniel Aragao <daragao at thoughtworks.com>
* Daniel Libanori <daniellibanori at gmail.com>
* Daniel Lobato <elobatocs at gmail.com>
* Daniel Reichert <Daniel.Reichert at rackspace.com>
* Daniel Schweighoefer <daniel at netsteward.net>
* Danny Garcia <dannygarcia.me at gmail.com>
* Darrin Eden <darrin.eden at gmail.com>
+* Dave Benvenuti <davebenvenuti at gmail.com>
* Dave Donahue <dave at 12spokes.com>
* Dave Myron <therealdave.myron at gmail.com>
* Dave Ungerer <daveungerer at gmail.com>
@@ -168,6 +185,8 @@
* David Prater <dprater at cisco.com>
* David Wittman <david at wittman.com>
* Decklin Foster <decklin at red-bean.com>
+* Dejan Menges <dejan.menges at 9cookies.com>
+* Denis Barishev <denz at twiket.com>
* Diego Desani <diego at newservers.com>
* Dmitry Dedov <dmitry.dedov at tut.by>
* Dmitry Gutov <dgutov at yandex.ru>
@@ -203,6 +222,7 @@
* Erik Mackdanz <erik at infochimps.com>
* Erik Michaels-Ober <sferik at gmail.com>
* Erik Terpstra <erterpstra at gmail.com>
+* Erik van Pienbroek <erik.vanpienbroek at prorail.nl>
* Eugene Howe & Josh Lane <ehowe at engineyard.com>
* Eugene Howe <ehowe at engineyard.com>
* Eugene Howe <eugene at xtreme-computers.net>
@@ -211,12 +231,14 @@
* Evan Petrie <ep873k at att.com>
* Evan Smith <evans at n2uitive.com>
* Ewoud Kohl van Wijngaarden <ewoud at kohlvanwijngaarden.nl>
+* Fabian Wiesel <fabian.wiesel at gmx.net>
* Fabio Lessa <flessa at gmail.com>
* Ferran Rodenas <frodenas at gmail.com>
* Fletcher Nichol <fnichol at nichol.ca>
* Frederic Jean <fred at fredjean.net>
* Frederick Cheung <frederick.cheung at gmail.com>
* Fujimura Daisuke <ffujimurah at gmail.com>
+* Gabe Conradi <gabe at tumblr.com>
* Gabriel Horner <gabriel.horner at gmail.com>
* Gabriel Rosendorf <gabriel.rosendorf at weather.com>
* Garima Singh <igarimasingh at gmail.com>
@@ -229,11 +251,14 @@
* Geraud <geraud at cardspring.net>
* Gerred Dillon <gerred at quickleft.com>
* Glenn Tweedie <glenn.tweedie at agworld.com.au>
+* Graeme Wilson <graeme.wilson at whitelabelled.com>
* Greg Blomquist <gblomqui at redhat.com>
+* Greg Burek <greg.burek at gmail.com>
* Greg Sutcliffe <greg.Sutcliffe at gmail.com>
* Greg Sutcliffe <gsutclif at redhat.com>
* Grégory Karékinian <greg at karekinian.com>
* Grzesiek Kolodziejczyk <gkolodziejczyk at gmail.com>
+* Guilherme Souza <guivideojob at gmail.com>
* Gustavo Villalta <gvillalta99 at gmail.com>
* H. Wade Minter <minter at lunenburg.org>
* H. Wade Minter <minter at teamsnap.com>
@@ -247,10 +272,13 @@
* Hunter Nield <hunternield at gmail.com>
* Ian Downes <ian at ubalo.com>
* Igor Bolotin <i at x.com>
+* Igor Rodionov <goruha at gmail.com>
+* Igor Rodionov <rodionov.ig at gmail.com>
* Ijonas Kisselbach <ijonas.kisselbach at gmail.com>
* Irio Irineu Musskopf Junior <irio.musskopf at caixadeideias.com.br>
* Istvan Hoka <istvan.hoka at gmail.com>
* JD Huntington & Jason Hansen <jdhuntington at engineyard.com>
+* JJ Asghar <jj at getchef.com>
* Jacob Burkhart & Shai Rosenfeld <jburkhart at engineyard.com>
* Jacob Mattingley <jem at ubalo.com>
* Jade Tucker <jadeatucker at gmail.com>
@@ -268,12 +296,14 @@
* Jamie Paton <jamiep at activestate.com>
* Jason Faulkner <jay at jvf.cc>
* Jason Hansen & Josh Lane <jhansen at engineyard.com>
+* Jason Hansen <jason at slack.io>
* Jason Montleon <jmontleo at redhat.com>
* Jason Roelofs <jameskilton at gmail.com>
* Jason Smith <jsmith at gold-sonata.com>
* Jay Faulkner <jay.faulkner at rackspace.com>
* Jay Perry <jperry at brightcove.com>
* Jeff McCune <jeff at puppetlabs.com>
+* Jeff Moody <fifthecho at gmail.com>
* Jeffrey C. Ollie <jeff at ocjtech.us>
* Jens Braeuer <jens at numberfour.eu>
* Jeremy Deininger <jeremy at rightscale.com>
@@ -285,6 +315,7 @@
* Jim Berlage <jberlage at mdsol.com>
* Jim Salinas <jim.salinas at rackspace.com>
* Joachim Nolten <joachim at viewbook.com>
+* Joakim Kolsjö and Tomas Skogberg <all+jocke+tomas at barsoom.se>
* Joe Kinsella <joe.kinsella at gmail.com>
* Joe Topjian <joe at topjian.net>
* Joe Yates <joe.g.yates at gmail.com>
@@ -294,6 +325,7 @@
* John Feminella <johnf at fluxcrux.com>
* John Ferlito <johnf at inodes.org>
* John Hawthorn <john.hawthorn at gmail.com>
+* John Keiser <jkeiser at opscode.com>
* John Nishinaga <jingoro at casa-z.org>
* John Parker <jparker at urgetopunt.com>
* John Wang <john at johntwang.com>
@@ -301,14 +333,18 @@
* Jon Crosby <jon at joncrosby.me>
* Jon Frisby <jfrisby at mrjoy.com>
* Jon Holt <jonmholt at gmail.com>
+* Jon K Hellan <jon.kare.hellan at uninett.no>
* Jon Palmer <jmpalme4 at gmail.com>
* Jon Palmer <jmpalmer at mitre.org>
* Jon Topper <jon at scalefactory.com>
* Jon-Erik Schneiderhan <jschneiderhan at gmail.com>
* Jonas Pfenniger <jonas at pfenniger.name>
* Jonas Pfenniger <zimbatm at zimbatm.com>
+* Jonathan Serafini <jonathan.serafini at lightspeedretail.com>
* Jonathon Scanes <me at jscanes.com>
* Joonas Reynders <joonas.reynders at iki.fi>
+* Jordan Day <jordan.day at perceptivesoftware.com>
+* Jordan Running <jr at getchef.com>
* Jose Diaz-Gonzalez <josegonzalez at users.noreply.github.com>
* Jose Luis Salas <josacar at gmail.com>
* Josef Stribny <jstribny at redhat.com>
@@ -350,9 +386,11 @@
* Kenny Johnston <kjohnston.ca at gmail.com>
* Kevin Chan <kevin at yinkei.com>
* Kevin McFadden <kmcfadden at gmail.com>
+* Kevin Menard <kevin at nirvdrum.com>
* Kevin Menard <nirvdrum at gmail.com>
* Kevin Moore <kevin at thinkpixellab.com>
* Kevin Olbrich <kolbrich at 6fusion.com>
+* Kieran Pilkington <kieran776 at gmail.com>
* Konstantin Haase <konstantin.mailinglists at googlemail.com>
* Konstantinos Natsakis <k.natsakis at xe.gr>
* Kunal Parikh <kunal at techthumb.in>
@@ -386,6 +424,9 @@
* Marc Grimme <marc.grimme at googlemail.com>
* Marc Seeger <mail at marc-seeger.de>
* Marc Seeger <marc.seeger at caperwhite.com>
+* Marcin Owsiany <porridge at google.com>
+* Marcus Nilsson <marcus.nilsson at klarna.com>
+* Marek Kasztelnik <mkasztelnik at gmail.com>
* Mariusz Pietrzyk <wijet at wijet.pl>
* Marjun Pagalan <mpagalan at gmail.com>
* Mark A. Miller <mmiller at homeaway.com>
@@ -394,7 +435,9 @@
* Mark Phillips <mark.phillips2 at bskyb.com>
* Mark Rushakoff <mark.rushakoff at gmail.com>
* Mark Turner <mark at amerine.net>
+* Mark Yen <marky at activestate.com>
* Markus Schwed <maschwed at anynines.com>
+* Marques Johansson <marques at linode.com>
* Marshall Yount <marshall at yountlabs.com>
* Martin Emde <martin.emde at gmail.com>
* Martin Englund <martin at englund.nu>
@@ -403,6 +446,8 @@
* Mateusz Juraszek <meceo00 at gmail.com>
* Matheus Mina <mfbmina at gmail.com>
* Mathias Meyer <meyer at paperplanes.de>
+* Matt Bostock <matt at mattbostock.com>
+* Matt Eldridge <matt.eldridge at us.ibm.com>
* Matt Gillooly <matt at swipely.com>
* Matt Griffin <matt at griffinonline.org>
* Matt Pokress <matt.pokress at imagefortress.com>
@@ -413,6 +458,8 @@
* Matt Todd <chiology at gmail.com>
* Matthew Black <matthew.black at sap.com>
* Matthew Black <matthewblack at successfactors.com>
+* Matthew Breeden <matt at integrallis.com>
+* Matthew O'Riordan <matthew.oriordan at gmail.com>
* Matthias Gröbner <m.groebner at me.com>
* Matthieu Huin <mhu at enovance.com>
* Max Lincoln <max at devopsy.com>
@@ -428,12 +475,14 @@
* Michael Jackson <michael.jackson at rackspace.com>
* Michael Keirnan <mgk at noteflight.com>
* Michael Linderman <mlinderm at stanford.edu>
+* Michael Moll <kvedulv at kvedulv.de>
* Michael Rykov <mrykov at gmail.com>
* Michael Sprauer <Sprauer at Inline.de>
* Michael Zeng <michaelzeng at swipely.com>
* Michał Krzyżanowski <michal.krzyzanowski+github at gmail.com>
* Michiel Sikkes <michiel.sikkes at gmail.com>
* Mick Pollard <aussielunix at gmail.com>
+* Mike Dillon <mike.dillon at synctree.com>
* Mike Fiedler <miketheman at gmail.com>
* Mike Gehard <mgehard at pivotallabs.com>
* Mike Hagedorn <mike at silverchairsolutions.com>
@@ -443,6 +492,7 @@
* Mike Pountney <Mike.Pountney at gmail.com>
* Ming Jin <skyairmj at gmail.com>
* Mitchell Hashimoto <mitchell.hashimoto at gmail.com>
+* Naoto TAKAHASHI <tnaoto at gmail.com>
* Nassos Antoniou <nassos.antoniou at gimiscale.com>
* Nat Welch <nat at natwelch.com>
* Nathan Sullivan <nsullivan at kixeye.com>
@@ -456,12 +506,14 @@
* Nicholas Ricketts <nightshade427 at gmail.com>
* Nick Huanca <nhuanca at pingidentity.com>
* Nick Huanuca <nhuanca at pingidentity.com>
+* Nick Janus <nickjanus at gmail.com>
* Nick Merwin <nick at lemurheavy.com>
* Nick Osborn <nick.osborn at digital.cabinet-office.gov.uk>
* Nick Osborn <nick at osborn.io>
* Nick Osborn <nick at osborn.ws>
* Nick Osborn <nickosborn at redzebraconsulting.com>
* Nick Osborn <nosborn at users.noreply.github.com>
+* Nico <nico.ritsche at gmail.com>
* Nik Wakelin <nik at codetocustomer.com>
* Nikita Pomyashchiy <pomnikita at gmail.com>
* Niko Felger <niko.felger at gmail.com>
@@ -472,6 +524,7 @@
* Ohad Levy <ohadlevy at gmail.com>
* Ohad Levy <ohadlevy at redhat.com>
* Oleg <shtepsel_duhast at mail.ru>
+* Olle Lundberg <olle.lundberg at klarna.com>
* Omar Reiss <omar.reiss at innovationfactory.eu>
* Ozgur Akan <ozgurakan at gmail.com>
* Pablo Baños López <pablo at besol.es>
@@ -498,12 +551,14 @@
* Peter Weldon <peter.weldon at null.net>
* Peter Weldon <peter at lautus.net>
* Phil Cohen <github at phlippers.net>
+* Phil Kates <me at philkates.com>
* Phil Kates <phil.kates at cloudkick.com>
* Philip Mark Deazeta <pdeazeta at morphlabs.com>
* Philip Mark Deazeta <pmdeazeta at gmail.com>
* Philip Mark M. Deazeta <pdeazeta at morphlabs.com>
* Philip Potter <philip.potter at digital.cabinet-office.gov.uk>
* Pierre Carrier <pierre at gcarrier.fr>
+* Pierre Massat <pierre at dakis.com>
* Pieter van de Bruggen <pieter at puppetlabs.com>
* Pieter van de Bruggen <pvande at gmail.com>
* Piotr Kedziora <piotr.kedziora27 at gmail.com>
@@ -522,6 +577,7 @@
* Robert Bousquet <rbousquet at newleaders.com>
* Robert Clark <rbclark at mitre.org>
* Rodrigo Estebanez <restebanez at mdsol.com>
+* Romain Haenni <admin at zlabs.ch>
* Romain Vrignaud <romain at yakaz.com>
* Romain Vrignaud <rvrignaud at gmail.com>
* Ruben Koster <ruben.koster at innovationfactory.eu>
@@ -550,6 +606,7 @@
* Sean Hart <boardnutz at blacklight.net>
* Sean Hart <sean.hart at gree.co.jp>
* Sean Porter <portertech at gmail.com>
+* Sebastian Saemann <ssaemann at netways.de>
* Sergio Rubio <rubiojr at frameos.org>
* Sergio Rubio <sergio.rubio at github.com>
* Seth Chisamore <schisamo at opscode.com>
@@ -559,6 +616,8 @@
* Shaun Davis <davissp14 at gmail.com>
* Shawn Catanzarite <me at shawncatz.com>
* Shay Bergmann <shayb at panaya.com>
+* Simas Cepaitis <simas.cepaitis at pearson.com>
+* Simas Cepaitis <simas.cepaitis at snc.lt>
* Simon Gate <simon at smgt.me>
* Simon Josi <me at yokto.net>
* Simon Rozet <simon at rozet.name>
@@ -588,10 +647,12 @@
* Thom Mahoney & Eugene Howe <tmahoney at engineyard.com>
* Thom Mahoney <tmahoney at engineyard.com>
* Thom May <thom at digital-science.com>
+* Thom May <thom_may at external.mckinsey.com>
* Thomas Cate <tcate at workstation.rackspace>
* Thomas Cate <thomascate at gmail.com>
* Thomas Kadauke <thomas.kadauke at googlemail.com>
* Thomas Wright <tfwright at gmail.com>
+* Tim <tim.lawrence1984 at gmail.com>
* Tim Carey-Smith <tim at spork.in>
* Tim Carey-Smith and Andy Delcambre <tcareysmith at engineyard.com>
* Timothy Klim <klimtimothy at gmail.com>
@@ -600,8 +661,10 @@
* Toby Hede <tobyhede at info-architects.net>
* Todd Willey <todd at rubidine.com>
* Todd Willey <xtoddx at gmail.com>
+* Tom Armitage <tom at infovore.org>
* Tom Hulihan <hulihan.tom159 at gmail.com>
* Tom Mornini <tmornini at engineyard.com>
+* Tom Noonan II <thomas.noonan at rackspace.com>
* Tom Stuart <tom at experthuman.com>
* Tomasz Bak <tomasz.bak at nsn.com>
* Tomokazu Hirai <tomokazu.hirai at kddi-web.com>
@@ -636,6 +699,7 @@
* Yann Hamon <Yann at trailburning.com>
* Yauheni Kryudziuk <yauheni.kryudziuk at xing.com>
* Your Name <seanhart at funzio.com>
+* Yousef Ourabi <yourabi at gmail.com>
* Zachary Danger Campbell <zacharydangercampbell at gmail.com>
* Ziyad Mir <ziyadm at google.com>
* Ziyad Mir <ziyadmir at gmail.com>
@@ -649,6 +713,7 @@
* angus <ags at sdx.com.au>
* anomalousthought <joseph at anomalousthought.com>
* arnab <arnab.deka at gmail.com>
+* ashmrtnz <ashmrtnz at google.com>
* atlantacs <bc at atlantacs.com>
* avic85 <avi.cohen.20 at gmail.com>
* bdorry <bdorry at bdorry-thinkpad.(none)>
@@ -667,15 +732,18 @@
* dJason <jasonwalp at yahoo.com>
* dblock <dblock at dblock.org>
* deepj <deepjungle.maca at gmail.com>
+* dennis-sig <d.bijlsma at sig.eu>
* dm1try <dmitry.dedov at tut.by>
* endzyme <nick.huanca at gmail.com>
* epdejager <eliza.dejager at statpro.com>
+* fbiete at gmail.com <fbiete at gmail.com>
* fred-secludit <fred at secludit.com>
* freeformz <emuller at engineyard.com>
* gavin <gavin at gavin02.(none)>
* geemus (Wesley Beary) <geemus at gmail.com>
* geemus (Wesley Beary) <wbeary at engineyard.com>
* geemus <geemus at gmail.com>
+* georgyous <boss_geo2005 at yahoo.com>
* ggoodale <ggoodale at gmail.com>
* ggoodale <grant at moreblinktag.com>
* gilles <gilles at peerpong.com>
@@ -684,6 +752,7 @@
* heyryanw <ryanw at ryanws-MacBook-Pro.local>
* howete <thowe at hp.com>
* irdan <daniel.reichert at rackspace.com>
+* james-lawrence <james-lawrence at users.noreply.github.com>
* jamiehannaford <jamie at limetree.org>
* jblancett <josh at firma8.com>
* jc00ke <jesse at jc00ke.com>
@@ -720,6 +789,7 @@
* sawanoboly <sawanoboriyu at higanworks.com>
* seanhandley <seanhandley at hackmanchester.com>
* seeingidog <ian at ruby-code.com>
+* snyquist2 <snyquist at google.com>
* thattommyhall <thattommyhall at gmail.com>
* tipt0e <topo-2 at charter.net>
* torake.fransson <torake.fransson at klarna.com>
diff --git a/Gemfile b/Gemfile
index 01bcb0c..23db6d7 100644
--- a/Gemfile
+++ b/Gemfile
@@ -2,7 +2,6 @@ source "https://rubygems.org"
group :development, :test do
# This is here because gemspec doesn't support require: false
- gem 'coveralls', :require => false
gem "netrc", :require => false
gem "octokit", :require => false
end
diff --git a/README.md b/README.md
index cdf6d0a..b008061 100644
--- a/README.md
+++ b/README.md
@@ -9,7 +9,6 @@ fog is the Ruby cloud services library, top to bottom:
[![Build Status](https://secure.travis-ci.org/fog/fog.png?branch=master)](http://travis-ci.org/fog/fog)
[![Dependency Status](https://gemnasium.com/fog/fog.png)](https://gemnasium.com/fog/fog)
[![Code Climate](https://codeclimate.com/github/fog/fog.png)](https://codeclimate.com/github/fog/fog)
-[![Coverage Status](https://coveralls.io/repos/fog/fog/badge.png?branch=master)](https://coveralls.io/r/fog/fog?branch=master)
[![Gem Version](https://fury-badge.herokuapp.com/rb/fog.png)](http://badge.fury.io/rb/fog)
[![Gittip](http://img.shields.io/gittip/geemus.png)](https://www.gittip.com/geemus/)
diff --git a/Rakefile b/Rakefile
index e954d16..ef5058a 100644
--- a/Rakefile
+++ b/Rakefile
@@ -48,17 +48,15 @@ end
GEM_NAME = "#{name}"
task :default => :test
-task :travis => ['test', 'test:travis', 'coveralls_push_workaround']
+task :travis => ['test', 'test:travis']
Rake::TestTask.new do |t|
- t.pattern = File.join("**", "spec", "**", "*_spec.rb")
+ t.pattern = File.join("spec", "**", "*_spec.rb")
end
namespace :test do
- mock = 'true' || ENV['FOG_MOCK']
+ mock = ENV['FOG_MOCK'] || 'true'
task :travis do
- # jruby coveralls causes an OOM in travis
- ENV['COVERAGE'] = 'false' if RUBY_PLATFORM == 'java'
sh("export FOG_MOCK=#{mock} && bundle exec shindont")
end
task :vsphere do
@@ -212,12 +210,3 @@ Fog::Rake::ChangelogTask.new
require "tasks/github_release_task"
Fog::Rake::GithubReleaseTask.new
-
-task :coveralls_push_workaround do
- use_coveralls = (Gem::Version.new(RUBY_VERSION) > Gem::Version.new('1.9.2'))
- if (ENV['COVERAGE'] != 'false') && use_coveralls
- require 'coveralls/rake/task'
- Coveralls::RakeTask.new
- Rake::Task["coveralls:push"].invoke
- end
-end
diff --git a/benchs/parse_vs_push.rb b/benchs/parse_vs_push.rb
index 01bd998..b700a31 100644
--- a/benchs/parse_vs_push.rb
+++ b/benchs/parse_vs_push.rb
@@ -3,7 +3,6 @@ require 'rubygems'
require 'nokogiri'
class Parser < Nokogiri::XML::SAX::Document
-
attr_reader :response
def initialize
@@ -37,7 +36,6 @@ class Parser < Nokogiri::XML::SAX::Document
def value
@value.dup
end
-
end
data = <<-DATA
diff --git a/checksums.yaml.gz b/checksums.yaml.gz
deleted file mode 100644
index 41eaa09..0000000
Binary files a/checksums.yaml.gz and /dev/null differ
diff --git a/fog.gemspec b/fog.gemspec
index 703f007..e1f1844 100644
--- a/fog.gemspec
+++ b/fog.gemspec
@@ -6,8 +6,8 @@ Gem::Specification.new do |s|
## If your rubyforge_project name is different, then edit it and comment out
## the sub! line in the Rakefile
s.name = 'fog'
- s.version = '1.22.0'
- s.date = '2014-04-17'
+ s.version = '1.24.0'
+ s.date = '2014-10-09'
s.rubyforge_project = 'fog'
## Make sure your summary is short. The description may be as long
@@ -41,18 +41,21 @@ Gem::Specification.new do |s|
## List your runtime dependencies here. Runtime dependencies are those
## that are needed for an end user to actually USE your code.
- s.add_dependency("fog-core", "~> 1.21", ">= 1.21.1")
+ s.add_dependency("fog-core", "~> 1.23")
s.add_dependency("fog-json")
s.add_dependency('nokogiri', '~> 1.5', '>= 1.5.11')
+ s.add_dependency('ipaddress', '~>0.5')
# Modular providers
s.add_dependency("fog-brightbox")
+ s.add_dependency("fog-softlayer")
+ s.add_dependency("fog-sakuracloud", ">= 0.0.4")
+ s.add_dependency("fog-radosgw", ">=0.0.2")
## List your development dependencies here. Development dependencies are
## those that are only needed during development
s.add_development_dependency('minitest')
- s.add_development_dependency('jekyll') unless RUBY_PLATFORM == 'java'
s.add_development_dependency('rake')
s.add_development_dependency('rbvmomi')
s.add_development_dependency('yard')
@@ -61,12 +64,15 @@ Gem::Specification.new do |s|
s.add_development_dependency('shindo', '~> 0.3.4')
s.add_development_dependency('fission')
s.add_development_dependency('pry')
+ s.add_development_dependency('opennebula', '>=4.4.0')
s.add_development_dependency('google-api-client', '~> 0.6', '>= 0.6.2')
+ s.add_development_dependency('docker-api', '>= 1.8.0')
+ s.add_development_dependency('rubocop') if RUBY_VERSION > "1.9"
if ENV["FOG_USE_LIBVIRT"]
s.add_development_dependency('ruby-libvirt','~> 0.5.0')
end
- s.files = `git ls-files`.split("\n") - `git ls-files -- providers/`.split("\n")
+ s.files = `git ls-files`.split("\n")
s.test_files = `git ls-files -- {spec,tests}/*`.split("\n")
end
diff --git a/gemfiles/Gemfile-edge b/gemfiles/Gemfile-edge
index 26c4f00..bd5433c 100644
--- a/gemfiles/Gemfile-edge
+++ b/gemfiles/Gemfile-edge
@@ -1,8 +1,5 @@
source "https://rubygems.org"
-# Embedded provider gems
-gem "fog-brightbox", :path => "../providers/brightbox"
-
# Shared components
gem "fog-core", :github => "fog/fog-core"
gem "fog-json", :github => "fog/fog-json"
diff --git a/gemfiles/Gemfile-ruby-1.8.7 b/gemfiles/Gemfile-ruby-1.8.7
index 7e98322..199b2fd 100644
--- a/gemfiles/Gemfile-ruby-1.8.7
+++ b/gemfiles/Gemfile-ruby-1.8.7
@@ -2,6 +2,7 @@ source "https://rubygems.org"
gem 'nokogiri', '~>1.5.11'
gem 'mime-types', '~>1.16'
+gem 'rest-client', '~> 1.6.7'
group :development, :test do
# This is here because gemspec doesn't support require: false
diff --git a/lib/fog.rb b/lib/fog.rb
index 87b869c..47db4b8 100644
--- a/lib/fog.rb
+++ b/lib/fog.rb
@@ -50,6 +50,7 @@ require 'fog/openstack'
require 'fog/ovirt'
require 'fog/sakuracloud'
require 'fog/serverlove'
+require 'fog/softlayer'
require 'fog/storm_on_demand'
require 'fog/terremark'
require 'fog/vcloud'
@@ -61,4 +62,4 @@ require 'fog/xenserver'
require 'fog/zerigo'
require 'fog/cloudsigma'
require 'fog/openvz'
-
+require 'fog/opennebula'
diff --git a/lib/fog/atmos/core.rb b/lib/fog/atmos/core.rb
index cd98333..aff4700 100644
--- a/lib/fog/atmos/core.rb
+++ b/lib/fog/atmos/core.rb
@@ -2,10 +2,8 @@ require 'fog/core'
module Fog
module Atmos
-
extend Fog::Provider
service(:storage, 'Storage')
-
end
end
diff --git a/lib/fog/atmos/models/storage/directories.rb b/lib/fog/atmos/models/storage/directories.rb
index a7f22d1..28b984d 100644
--- a/lib/fog/atmos/models/storage/directories.rb
+++ b/lib/fog/atmos/models/storage/directories.rb
@@ -4,9 +4,7 @@ require 'fog/atmos/models/storage/directory'
module Fog
module Storage
class Atmos
-
class Directories < Fog::Collection
-
attribute :directory
model Fog::Storage::Atmos::Directory
@@ -40,9 +38,7 @@ module Fog
attributes = {:directory => directory}.merge(attributes) if directory
super(attributes)
end
-
end
-
end
end
end
diff --git a/lib/fog/atmos/models/storage/directory.rb b/lib/fog/atmos/models/storage/directory.rb
index e26a5ba..f212b90 100644
--- a/lib/fog/atmos/models/storage/directory.rb
+++ b/lib/fog/atmos/models/storage/directory.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Storage
class Atmos
-
class Directory < Fog::Model
-
identity :key, :aliases => :Filename
attribute :objectid, :aliases => :ObjectID
@@ -44,10 +42,7 @@ module Fog
end
service.delete_namespace key
end
-
-
end
-
end
end
end
diff --git a/lib/fog/atmos/models/storage/file.rb b/lib/fog/atmos/models/storage/file.rb
index 782746e..7507b64 100644
--- a/lib/fog/atmos/models/storage/file.rb
+++ b/lib/fog/atmos/models/storage/file.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Storage
class Atmos
-
class File < Fog::Model
-
identity :key, :aliases => :Filename
attribute :content_length, :aliases => ['bytes', 'Content-Length'], :type => :integer
@@ -104,9 +102,7 @@ module Fog
def directory=(new_directory)
@directory = new_directory
end
-
end
-
end
end
end
diff --git a/lib/fog/atmos/models/storage/files.rb b/lib/fog/atmos/models/storage/files.rb
index 7b800b9..c44d599 100644
--- a/lib/fog/atmos/models/storage/files.rb
+++ b/lib/fog/atmos/models/storage/files.rb
@@ -4,9 +4,7 @@ require 'fog/atmos/models/storage/file'
module Fog
module Storage
class Atmos
-
class Files < Fog::Collection
-
attribute :directory
attribute :limit
attribute :marker
@@ -25,7 +23,7 @@ module Fog
files = data[:DirectoryEntry].select {|de| de[:FileType] == 'regular'}
files.each do |s|
data = service.head_namespace(directory.key + s[:Filename], :parse => false)
- headers = Hash[data.headers["x-emc-meta"].split(", ").collect{|s|s.split("=")}]
+ headers = Hash[data.headers["x-emc-meta"].split(", ").map{|s|s.split("=")}]
s[:content_length] = data.headers["Content-Length"]
s[:content_type] = data.headers["Content-Type"]
s[:created_at] = headers["ctime"]
@@ -37,7 +35,7 @@ module Fog
def get(key, &block)
requires :directory
- data = service.get_namespace(directory.key + key, :parse => false)#, &block)
+ data = service.get_namespace(directory.key + key, :parse => false, &block)
file_data = data.headers.merge({
:body => data.body,
:key => key
@@ -70,9 +68,7 @@ module Fog
requires :directory
super({ :directory => directory }.merge!(attributes))
end
-
end
-
end
end
end
diff --git a/lib/fog/atmos/requests/storage/delete_namespace.rb b/lib/fog/atmos/requests/storage/delete_namespace.rb
index 6235380..b977388 100644
--- a/lib/fog/atmos/requests/storage/delete_namespace.rb
+++ b/lib/fog/atmos/requests/storage/delete_namespace.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Atmos
class Real
-
def delete_namespace(namespace = '', options = {})
options = options.reject {|key, value| value.nil?}
request({
@@ -12,7 +11,6 @@ module Fog
:query => options
}.merge(options))
end
-
end
end
end
diff --git a/lib/fog/atmos/requests/storage/get_namespace.rb b/lib/fog/atmos/requests/storage/get_namespace.rb
index e133963..8c3200d 100644
--- a/lib/fog/atmos/requests/storage/get_namespace.rb
+++ b/lib/fog/atmos/requests/storage/get_namespace.rb
@@ -2,9 +2,13 @@ module Fog
module Storage
class Atmos
class Real
-
- def get_namespace(namespace = '', options = {})
+ def get_namespace(namespace = '', options = {}, &block)
options = options.reject {|key, value| value.nil?}
+
+ if block_given?
+ options[:response_block] = Proc.new
+ end
+
request({
:expects => 200,
:method => 'GET',
@@ -13,7 +17,6 @@ module Fog
:parse => true
}.merge(options))
end
-
end
end
end
diff --git a/lib/fog/atmos/requests/storage/head_namespace.rb b/lib/fog/atmos/requests/storage/head_namespace.rb
index 82b7b9c..b797cbf 100644
--- a/lib/fog/atmos/requests/storage/head_namespace.rb
+++ b/lib/fog/atmos/requests/storage/head_namespace.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Atmos
class Real
-
def head_namespace(namespace = '', options = {})
options = options.reject {|key, value| value.nil?}
request({
@@ -13,7 +12,6 @@ module Fog
:parse => true
}.merge(options))
end
-
end
end
end
diff --git a/lib/fog/atmos/requests/storage/post_namespace.rb b/lib/fog/atmos/requests/storage/post_namespace.rb
index f8d6117..97aba5d 100644
--- a/lib/fog/atmos/requests/storage/post_namespace.rb
+++ b/lib/fog/atmos/requests/storage/post_namespace.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Atmos
class Real
-
def post_namespace(namespace = '', options = {})
options = options.reject {|key, value| value.nil?}
request({
@@ -13,7 +12,6 @@ module Fog
:parse => true
}.merge(options))
end
-
end
end
end
diff --git a/lib/fog/atmos/requests/storage/put_namespace.rb b/lib/fog/atmos/requests/storage/put_namespace.rb
index cc7a42e..8509856 100644
--- a/lib/fog/atmos/requests/storage/put_namespace.rb
+++ b/lib/fog/atmos/requests/storage/put_namespace.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Atmos
class Real
-
def put_namespace(namespace = '', options = {})
options = options.reject {|key, value| value.nil?}
request({
@@ -13,7 +12,6 @@ module Fog
:parse => true
}.merge(options))
end
-
end
end
end
diff --git a/lib/fog/atmos/storage.rb b/lib/fog/atmos/storage.rb
index 3ef9150..b00327e 100644
--- a/lib/fog/atmos/storage.rb
+++ b/lib/fog/atmos/storage.rb
@@ -71,7 +71,6 @@ module Fog
def request(options)
raise "Atmos Storage mocks not implemented"
end
-
end
class Real
@@ -156,8 +155,8 @@ module Fog
params.delete(:host) #invalid excon request parameter
- parse = params.delete(:parse)
-
+ parse = params.delete(:parse)
+
begin
response = @connection.request(params, &block)
rescue Excon::Errors::HTTPStatusError => error
@@ -179,7 +178,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/auto_scaling.rb b/lib/fog/aws/auto_scaling.rb
index 2ec273c..85b4567 100644
--- a/lib/fog/aws/auto_scaling.rb
+++ b/lib/fog/aws/auto_scaling.rb
@@ -177,7 +177,6 @@ module Fog
end
end
-
class Mock
include Fog::AWS::CredentialFetcher::ConnectionMethods
@@ -274,9 +273,7 @@ module Fog
def setup_credentials(options)
@aws_access_key_id = options[:aws_access_key_id]
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/beanstalk.rb b/lib/fog/aws/beanstalk.rb
index eb7ca48..ac89e15 100644
--- a/lib/fog/aws/beanstalk.rb
+++ b/lib/fog/aws/beanstalk.rb
@@ -4,11 +4,11 @@ module Fog
module AWS
class ElasticBeanstalk < Fog::Service
extend Fog::AWS::CredentialFetcher::ServiceMethods
-
+
class InvalidParameterError < Fog::Errors::Error; end
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at
+ recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
request_path 'fog/aws/requests/beanstalk'
@@ -56,11 +56,9 @@ module Fog
collection :versions
class Mock
-
def initialize(options={})
Fog::Mock.not_implemented
end
-
end
class Real
@@ -79,6 +77,8 @@ module Fog
@port = options[:port] || 443
@scheme = options[:scheme] || 'https'
@connection = Fog::XML::Connection.new("#{@scheme}://#{@host}:#{@port}#{@path}", @persistent, @connection_options)
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.beanstalk'
end
def reload
@@ -120,31 +120,35 @@ module Fog
}
)
- begin
- @connection.request({
- :body => body,
- :expects => 200,
- :headers => { 'Content-Type' => 'application/x-www-form-urlencoded' },
- :idempotent => idempotent,
- :host => @host,
- :method => 'POST',
- :parser => parser
- })
- rescue Excon::Errors::HTTPStatusError => error
- match = Fog::AWS::Errors.match_error(error)
- raise if match.empty?
- raise case match[:code]
- when 'InvalidParameterValue'
- Fog::AWS::ElasticBeanstalk::InvalidParameterError.slurp(error, match[:message])
- else
- Fog::AWS::ElasticBeanstalk::Error.slurp(error, "#{match[:code]} => #{match[:message]}")
- end
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(body, idempotent, parser)
+ end
+ else
+ _request(body, idempotent, parser)
end
+ end
+ def _request(body, idempotent, parser)
+ @connection.request({
+ :body => body,
+ :expects => 200,
+ :headers => { 'Content-Type' => 'application/x-www-form-urlencoded' },
+ :idempotent => idempotent,
+ :method => 'POST',
+ :parser => parser
+ })
+ rescue Excon::Errors::HTTPStatusError => error
+ match = Fog::AWS::Errors.match_error(error)
+ raise if match.empty?
+ raise case match[:code]
+ when 'InvalidParameterValue'
+ Fog::AWS::ElasticBeanstalk::InvalidParameterError.slurp(error, match[:message])
+ else
+ Fog::AWS::ElasticBeanstalk::Error.slurp(error, "#{match[:code]} => #{match[:message]}")
+ end
end
end
-
-
end
end
end
diff --git a/lib/fog/aws/cdn.rb b/lib/fog/aws/cdn.rb
index 911f3cb..dd9c620 100644
--- a/lib/fog/aws/cdn.rb
+++ b/lib/fog/aws/cdn.rb
@@ -6,7 +6,7 @@ module Fog
extend Fog::AWS::CredentialFetcher::ServiceMethods
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :host, :path, :port, :scheme, :version, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at
+ recognizes :host, :path, :port, :scheme, :version, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
model_path 'fog/aws/models/cdn'
model :distribution
@@ -30,7 +30,6 @@ module Fog
request 'put_streaming_distribution_config'
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {
@@ -147,6 +146,8 @@ EOF
@use_iam_profile = options[:use_iam_profile]
setup_credentials(options)
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.cdn'
@connection_options = options[:connection_options] || {}
@host = options[:host] || 'cloudfront.amazonaws.com'
@path = options[:path] || '/'
@@ -180,6 +181,17 @@ EOF
params[:headers]['x-amz-security-token'] = @aws_session_token if @aws_session_token
params[:headers]['Authorization'] = "AWS #{@aws_access_key_id}:#{signature(params)}"
params[:path] = "/#{@version}/#{params[:path]}"
+
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(params, &block)
+ end
+ else
+ _request(params, &block)
+ end
+ end
+
+ def _request(params, &block)
@connection.request(params, &block)
end
diff --git a/lib/fog/aws/cloud_formation.rb b/lib/fog/aws/cloud_formation.rb
index 35c6fad..0133425 100644
--- a/lib/fog/aws/cloud_formation.rb
+++ b/lib/fog/aws/cloud_formation.rb
@@ -6,7 +6,7 @@ module Fog
extend Fog::AWS::CredentialFetcher::ServiceMethods
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :host, :path, :port, :scheme, :persistent, :region, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at
+ recognizes :host, :path, :port, :scheme, :persistent, :region, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
request_path 'fog/aws/requests/cloud_formation'
request :create_stack
@@ -21,11 +21,9 @@ module Fog
request :list_stack_resources
class Mock
-
def initialize(options={})
Fog::Mock.not_implemented
end
-
end
class Real
@@ -53,6 +51,8 @@ module Fog
@use_iam_profile = options[:use_iam_profile]
setup_credentials(options)
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.cloud_formation'
@connection_options = options[:connection_options] || {}
options[:region] ||= 'us-east-1'
@host = options[:host] || "cloudformation.#{options[:region]}.amazonaws.com"
@@ -97,28 +97,34 @@ module Fog
}
)
- begin
- @connection.request({
- :body => body,
- :expects => 200,
- :idempotent => idempotent,
- :headers => { 'Content-Type' => 'application/x-www-form-urlencoded' },
- :method => 'POST',
- :parser => parser
- })
- rescue Excon::Errors::HTTPStatusError => error
- match = Fog::AWS::Errors.match_error(error)
- raise if match.empty?
- raise case match[:code]
- when 'NotFound', 'ValidationError'
- Fog::AWS::CloudFormation::NotFound.slurp(error, match[:message])
- else
- Fog::AWS::CloudFormation::Error.slurp(error, "#{match[:code]} => #{match[:message]}")
- end
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(body, idempotent, parser)
+ end
+ else
+ _request(body, idempotent, parser)
end
-
end
+ def _request(body, idempotent, parser)
+ @connection.request({
+ :body => body,
+ :expects => 200,
+ :idempotent => idempotent,
+ :headers => { 'Content-Type' => 'application/x-www-form-urlencoded' },
+ :method => 'POST',
+ :parser => parser
+ })
+ rescue Excon::Errors::HTTPStatusError => error
+ match = Fog::AWS::Errors.match_error(error)
+ raise if match.empty?
+ raise case match[:code]
+ when 'NotFound', 'ValidationError'
+ Fog::AWS::CloudFormation::NotFound.slurp(error, match[:message])
+ else
+ Fog::AWS::CloudFormation::Error.slurp(error, "#{match[:code]} => #{match[:message]}")
+ end
+ end
end
end
end
diff --git a/lib/fog/aws/cloud_watch.rb b/lib/fog/aws/cloud_watch.rb
index 17c4c7d..06692af 100644
--- a/lib/fog/aws/cloud_watch.rb
+++ b/lib/fog/aws/cloud_watch.rb
@@ -35,7 +35,6 @@ module Fog
collection :alarms
class Mock
-
def self.data
@data ||= Hash.new do |hash, region|
hash[region] = Hash.new do |region_hash, key|
@@ -159,7 +158,6 @@ module Fog
:parser => parser
})
end
-
end
end
end
diff --git a/lib/fog/aws/compute.rb b/lib/fog/aws/compute.rb
index 900d998..5e5b5a2 100644
--- a/lib/fog/aws/compute.rb
+++ b/lib/fog/aws/compute.rb
@@ -120,6 +120,7 @@ module Fog
request :describe_volumes
request :describe_volume_status
request :describe_vpcs
+ request :describe_vpc_attribute
request :detach_network_interface
request :detach_internet_gateway
request :detach_volume
@@ -132,6 +133,7 @@ module Fog
request :modify_instance_attribute
request :modify_network_interface_attribute
request :modify_snapshot_attribute
+ request :modify_subnet_attribute
request :modify_volume_attribute
request :modify_vpc_attribute
request :purchase_reserved_instances_offering
@@ -151,17 +153,32 @@ module Fog
request :monitor_instances
request :unmonitor_instances
+ class InvalidURIError < Exception; end
+
# deprecation
class Real
-
def modify_image_attributes(*params)
Fog::Logger.deprecation("modify_image_attributes is deprecated, use modify_image_attribute instead [light_black](#{caller.first})[/]")
modify_image_attribute(*params)
end
+ # http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html
+ def supported_platforms
+ describe_account_attributes.body["accountAttributeSet"].find{ |h| h["attributeName"] == "supported-platforms" }["values"]
+ end
end
class Mock
+ MOCKED_TAG_TYPES = {
+ 'ami' => 'image',
+ 'i' => 'instance',
+ 'snap' => 'snapshot',
+ 'vol' => 'volume',
+ 'igw' => 'internet_gateway',
+ 'acl' => 'network_acl',
+ 'vpc' => 'vpc'
+ }
+
include Fog::AWS::CredentialFetcher::ConnectionMethods
include Fog::AWS::RegionMethods
@@ -279,7 +296,21 @@ module Fog
@aws_credentials_expire_at = Time::now + 20
setup_credentials(options)
@region = options[:region] || 'us-east-1'
- validate_aws_region @region
+
+ if @endpoint = options[:endpoint]
+ endpoint = URI.parse(@endpoint)
+ @host = endpoint.host or raise InvalidURIError.new("could not parse endpoint: #{@endpoint}")
+ @path = endpoint.path
+ @port = endpoint.port
+ @scheme = endpoint.scheme
+ else
+ @host = options[:host] || "ec2.#{options[:region]}.amazonaws.com"
+ @path = options[:path] || '/'
+ @persistent = options[:persistent] || false
+ @port = options[:port] || 443
+ @scheme = options[:scheme] || 'https'
+ end
+ validate_aws_region(@host, @region)
end
def region_data
@@ -295,7 +326,7 @@ module Fog
end
def visible_images
- images = self.data[:images].values.inject({}) do |h, image|
+ images = self.data[:images].values.reduce({}) do |h, image|
h.update(image['imageId'] => image)
end
@@ -310,22 +341,66 @@ module Fog
images
end
- def ec2_compatibility_mode(enabled=true)
- values = enabled ? ["EC2", "VPC"] : ["VPC"]
- self.data[:account_attributes].detect { |h| h["attributeName"] == "supported-platforms" }["values"] = values
+ def supported_platforms
+ describe_account_attributes.body["accountAttributeSet"].find{ |h| h["attributeName"] == "supported-platforms" }["values"]
+ end
+
+ def enable_ec2_classic
+ set_supported_platforms(%w[EC2 VPC])
end
+ def disable_ec2_classic
+ set_supported_platforms(%w[VPC])
+ end
+
+ def set_supported_platforms(values)
+ self.data[:account_attributes].find { |h| h["attributeName"] == "supported-platforms" }["values"] = values
+ end
+
+ def tagged_resources(resources)
+ Array(resources).map do |resource_id|
+ if match = resource_id.match(/^(\w+)-[a-z0-9]{8}/i)
+ id = match.captures.first
+ else
+ raise(Fog::Service::NotFound.new("Unknown resource id #{resource_id}"))
+ end
+
+ if MOCKED_TAG_TYPES.has_key? id
+ type = MOCKED_TAG_TYPES[id]
+ else
+ raise(Fog::Service::NotFound.new("Mocking tags of resource #{resource_id} has not been implemented"))
+ end
+
+ case type
+ when 'image'
+ unless visible_images.has_key? resource_id
+ raise(Fog::Service::NotFound.new("Cannot tag #{resource_id}, the image does not exist"))
+ end
+ when 'vpc'
+ if self.data[:vpcs].select {|v| v['vpcId'] == resource_id }.empty?
+ raise(Fog::Service::NotFound.new("Cannot tag #{resource_id}, the vpc does not exist"))
+ end
+ else
+ unless self.data[:"#{type}s"][resource_id]
+ raise(Fog::Service::NotFound.new("Cannot tag #{resource_id}, the #{type} does not exist"))
+ end
+ end
+ { 'resourceId' => resource_id, 'resourceType' => type }
+ end
+ end
+
+
def apply_tag_filters(resources, filters, resource_id_key)
tag_set_fetcher = lambda {|resource| self.data[:tag_sets][resource[resource_id_key]] }
# tag-key: match resources tagged with this key (any value)
- if filters.has_key?('tag-key')
+ if filters.key?('tag-key')
value = filters.delete('tag-key')
- resources = resources.select{|r| tag_set_fetcher[r].has_key?(value)}
+ resources = resources.select{|r| tag_set_fetcher[r].key?(value)}
end
# tag-value: match resources tagged with this value (any key)
- if filters.has_key?('tag-value')
+ if filters.key?('tag-value')
value = filters.delete('tag-value')
resources = resources.select{|r| tag_set_fetcher[r].values.include?(value)}
end
@@ -336,7 +411,7 @@ module Fog
tag_filters[key.gsub('tag:', '')] = filters.delete(key) if /^tag:/ =~ key
end
for tag_key, tag_value in tag_filters
- resources = resources.select{|r| tag_value.include?(tag_set_fetcher[r][tag_key])}
+ resources = resources.select{|r| tag_value == tag_set_fetcher[r][tag_key]}
end
resources
@@ -382,13 +457,11 @@ module Fog
@region = options[:region] ||= 'us-east-1'
@instrumentor = options[:instrumentor]
@instrumentor_name = options[:instrumentor_name] || 'fog.aws.compute'
- @version = options[:version] || '2013-10-01'
-
- validate_aws_region @region
+ @version = options[:version] || '2014-06-15'
if @endpoint = options[:endpoint]
endpoint = URI.parse(@endpoint)
- @host = endpoint.host
+ @host = endpoint.host or raise InvalidURIError.new("could not parse endpoint: #{@endpoint}")
@path = endpoint.path
@port = endpoint.port
@scheme = endpoint.scheme
@@ -399,6 +472,8 @@ module Fog
@port = options[:port] || 443
@scheme = options[:scheme] || 'https'
end
+
+ validate_aws_region(@host, @region)
@connection = Fog::XML::Connection.new("#{@scheme}://#{@host}:#{@port}#{@path}", @persistent, @connection_options)
end
@@ -462,7 +537,6 @@ module Fog
Fog::Compute::AWS::Error.slurp(error, "#{match[:code]} => #{match[:message]}")
end
end
-
end
end
end
diff --git a/lib/fog/aws/core.rb b/lib/fog/aws/core.rb
index 635fcba..4018f02 100644
--- a/lib/fog/aws/core.rb
+++ b/lib/fog/aws/core.rb
@@ -69,7 +69,7 @@ module Fog
def self.indexed_request_param(name, values)
idx = -1
- Array(values).inject({}) do |params, value|
+ Array(values).reduce({}) do |params, value|
params["#{name}.#{idx += 1}"] = value
params
end
@@ -121,7 +121,6 @@ module Fog
end
class Mock
-
def self.arn(vendor, account_id, path, region = nil)
"arn:aws:#{vendor}:#{region}:#{account_id}:#{path}"
end
@@ -219,10 +218,10 @@ module Fog
request_id.join('-')
end
class << self
- alias :reserved_instances_id :request_id
- alias :reserved_instances_offering_id :request_id
- alias :sqs_message_id :request_id
- alias :sqs_sender_id :request_id
+ alias_method :reserved_instances_id, :request_id
+ alias_method :reserved_instances_offering_id, :request_id
+ alias_method :sqs_message_id, :request_id
+ alias_method :sqs_sender_id, :request_id
end
def self.reservation_id
diff --git a/lib/fog/aws/credential_fetcher.rb b/lib/fog/aws/credential_fetcher.rb
index 1fb6dda..fe23625 100644
--- a/lib/fog/aws/credential_fetcher.rb
+++ b/lib/fog/aws/credential_fetcher.rb
@@ -32,7 +32,6 @@ module Fog
end
module ConnectionMethods
-
def refresh_credentials_if_expired
refresh_credentials if credentials_expired?
end
diff --git a/lib/fog/aws/data_pipeline.rb b/lib/fog/aws/data_pipeline.rb
index c1ddab0..d898167 100644
--- a/lib/fog/aws/data_pipeline.rb
+++ b/lib/fog/aws/data_pipeline.rb
@@ -6,7 +6,7 @@ module Fog
extend Fog::AWS::CredentialFetcher::ServiceMethods
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at
+ recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
request_path 'fog/aws/requests/data_pipeline'
request :activate_pipeline
@@ -53,8 +53,9 @@ module Fog
# * DataPipeline object with connection to AWS.
def initialize(options={})
@use_iam_profile = options[:use_iam_profile]
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.data_pipeline'
@connection_options = options[:connection_options] || {}
-
@version = '2012-10-29'
@region = options[:region] || 'us-east-1'
@host = options[:host] || "datapipeline.#{@region}.amazonaws.com"
@@ -107,8 +108,17 @@ module Fog
params[:headers]['x-amz-security-token'] = @aws_session_token if @aws_session_token
params[:headers]['Authorization'] = @signer.sign(params, date)
- response = @connection.request(params)
- response
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(params)
+ end
+ else
+ _request(params)
+ end
+ end
+
+ def _request(params)
+ @connection.request(params)
end
end
end
diff --git a/lib/fog/aws/dns.rb b/lib/fog/aws/dns.rb
index 5af807f..bc25ff4 100644
--- a/lib/fog/aws/dns.rb
+++ b/lib/fog/aws/dns.rb
@@ -6,7 +6,7 @@ module Fog
extend Fog::AWS::CredentialFetcher::ServiceMethods
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :host, :path, :port, :scheme, :version, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at
+ recognizes :host, :path, :port, :scheme, :version, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
model_path 'fog/aws/models/dns'
model :record
@@ -15,16 +15,19 @@ module Fog
collection :zones
request_path 'fog/aws/requests/dns'
+ request :create_health_check
request :create_hosted_zone
+ request :delete_health_check
+ request :get_health_check
request :get_hosted_zone
request :delete_hosted_zone
+ request :list_health_checks
request :list_hosted_zones
request :change_resource_record_sets
request :list_resource_record_sets
request :get_change
class Mock
-
def self.data
@data ||= Hash.new do |hash, region|
hash[region] = Hash.new do |region_hash, key|
@@ -91,13 +94,15 @@ module Fog
@use_iam_profile = options[:use_iam_profile]
setup_credentials(options)
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.dns'
@connection_options = options[:connection_options] || {}
@host = options[:host] || 'route53.amazonaws.com'
@path = options[:path] || '/'
@persistent = options.fetch(:persistent, true)
@port = options[:port] || 443
@scheme = options[:scheme] || 'https'
- @version = options[:version] || '2012-02-29'
+ @version = options[:version] || '2013-04-01'
@connection = Fog::XML::Connection.new("#{@scheme}://#{@host}:#{@port}#{@path}", @persistent, @connection_options)
end
@@ -119,11 +124,23 @@ module Fog
def request(params, &block)
refresh_credentials_if_expired
+
params[:headers] ||= {}
params[:headers]['Date'] = Fog::Time.now.to_date_header
params[:headers]['x-amz-security-token'] = @aws_session_token if @aws_session_token
params[:headers]['X-Amzn-Authorization'] = "AWS3-HTTPS AWSAccessKeyId=#{@aws_access_key_id},Algorithm=HmacSHA1,Signature=#{signature(params)}"
params[:path] = "/#{@version}/#{params[:path]}"
+
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(params, &block)
+ end
+ else
+ _request(params, &block)
+ end
+ end
+
+ def _request(params, &block)
@connection.request(params, &block)
end
diff --git a/lib/fog/aws/dynamodb.rb b/lib/fog/aws/dynamodb.rb
index 2812b06..eb9ffd1 100644
--- a/lib/fog/aws/dynamodb.rb
+++ b/lib/fog/aws/dynamodb.rb
@@ -6,7 +6,7 @@ module Fog
extend Fog::AWS::CredentialFetcher::ServiceMethods
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :aws_session_token, :host, :path, :port, :scheme, :persistent, :region, :use_iam_profile, :aws_credentials_expire_at
+ recognizes :aws_session_token, :host, :path, :port, :scheme, :persistent, :region, :use_iam_profile, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
request_path 'fog/aws/requests/dynamodb'
request :batch_get_item
@@ -24,7 +24,6 @@ module Fog
request :update_table
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {
@@ -81,6 +80,8 @@ module Fog
setup_credentials(options)
@connection_options = options[:connection_options] || {}
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.dynamodb'
@host = options[:host] || "dynamodb.#{@region}.amazonaws.com"
@path = options[:path] || '/'
@@ -126,6 +127,16 @@ module Fog
params[:headers]['x-amz-security-token'] = @aws_session_token if @aws_session_token
params[:headers]['Authorization'] = @signer.sign(params, date)
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(params)
+ end
+ else
+ _request(params)
+ end
+ end
+
+ def _request(params)
response = @connection.request(params)
unless response.body.empty?
diff --git a/lib/fog/aws/elasticache.rb b/lib/fog/aws/elasticache.rb
index 45dd598..f9d2feb 100644
--- a/lib/fog/aws/elasticache.rb
+++ b/lib/fog/aws/elasticache.rb
@@ -10,7 +10,7 @@ module Fog
class AuthorizationAlreadyExists < Fog::Errors::Error; end
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at
+ recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
request_path 'fog/aws/requests/elasticache'
@@ -57,6 +57,8 @@ module Fog
@use_iam_profile = options[:use_iam_profile]
setup_credentials(options)
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.elasticache'
options[:region] ||= 'us-east-1'
@host = options[:host] || "elasticache.#{options[:region]}.amazonaws.com"
@path = options[:path] || '/'
@@ -101,32 +103,38 @@ module Fog
}
)
- begin
- @connection.request({
- :body => body,
- :expects => 200,
- :headers => { 'Content-Type' => 'application/x-www-form-urlencoded' },
- :idempotent => idempotent,
- :method => 'POST',
- :parser => parser
- })
- rescue Excon::Errors::HTTPStatusError => error
- match = Fog::AWS::Errors.match_error(error)
- raise if match.empty?
- raise case match[:code]
- when 'CacheSecurityGroupNotFound', 'CacheParameterGroupNotFound', 'CacheClusterNotFound'
- Fog::AWS::Elasticache::NotFound.slurp(error, match[:message])
- when 'CacheSecurityGroupAlreadyExists'
- Fog::AWS::Elasticache::IdentifierTaken.slurp(error, match[:message])
- when 'InvalidParameterValue'
- Fog::AWS::Elasticache::InvalidInstance.slurp(error, match[:message])
- else
- Fog::AWS::Elasticache::Error.slurp(error, "#{match[:code]} => #{match[:message]}")
- end
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(body, idempotent, parser)
+ end
+ else
+ _request(body, idempotent, parser)
end
-
end
+ def _request(body, idempotent, parser)
+ @connection.request({
+ :body => body,
+ :expects => 200,
+ :headers => { 'Content-Type' => 'application/x-www-form-urlencoded' },
+ :idempotent => idempotent,
+ :method => 'POST',
+ :parser => parser
+ })
+ rescue Excon::Errors::HTTPStatusError => error
+ match = Fog::AWS::Errors.match_error(error)
+ raise if match.empty?
+ raise case match[:code]
+ when 'CacheSecurityGroupNotFound', 'CacheParameterGroupNotFound', 'CacheClusterNotFound'
+ Fog::AWS::Elasticache::NotFound.slurp(error, match[:message])
+ when 'CacheSecurityGroupAlreadyExists'
+ Fog::AWS::Elasticache::IdentifierTaken.slurp(error, match[:message])
+ when 'InvalidParameterValue'
+ Fog::AWS::Elasticache::InvalidInstance.slurp(error, match[:message])
+ else
+ Fog::AWS::Elasticache::Error.slurp(error, "#{match[:code]} => #{match[:message]}")
+ end
+ end
end
class Mock
@@ -199,8 +207,6 @@ module Fog
end
end
end
-
-
end
end
end
diff --git a/lib/fog/aws/elb.rb b/lib/fog/aws/elb.rb
index 3004d7b..bd409b8 100644
--- a/lib/fog/aws/elb.rb
+++ b/lib/fog/aws/elb.rb
@@ -56,7 +56,6 @@ module Fog
collection :backend_server_descriptions
class Mock
-
require 'fog/aws/elb/policy_types'
def self.data
@@ -92,7 +91,8 @@ module Fog
end
def setup_credentials(options)
- @aws_access_key_id = options[:aws_access_key_id]
+ @aws_access_key_id = options[:aws_access_key_id]
+ @aws_secret_access_key = options[:aws_secret_access_key]
end
def data
diff --git a/lib/fog/aws/emr.rb b/lib/fog/aws/emr.rb
index ea06bf5..9867c7e 100644
--- a/lib/fog/aws/emr.rb
+++ b/lib/fog/aws/emr.rb
@@ -8,7 +8,7 @@ module Fog
class IdentifierTaken < Fog::Errors::Error; end
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at
+ recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
request_path 'fog/aws/requests/emr'
@@ -35,11 +35,9 @@ module Fog
# collection :security_groups
class Mock
-
def initialize(options={})
Fog::Mock.not_implemented
end
-
end
class Real
@@ -66,6 +64,8 @@ module Fog
@use_iam_profile = options[:use_iam_profile]
setup_credentials(options)
@connection_options = options[:connection_options] || {}
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.emr'
options[:region] ||= 'us-east-1'
@host = options[:host] || "elasticmapreduce.#{options[:region]}.amazonaws.com"
@@ -111,20 +111,24 @@ module Fog
}
)
- begin
- response = @connection.request({
- :body => body,
- :expects => 200,
- :headers => { 'Content-Type' => 'application/x-www-form-urlencoded' },
- :idempotent => idempotent,
- :method => 'POST',
- :parser => parser
- })
- rescue Excon::Errors::HTTPStatusError
- raise
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(body, idempotent, parser)
+ end
+ else
+ _request(body, idempotent, parser)
end
+ end
- response
+ def _request(body, idempotent, parser)
+ @connection.request({
+ :body => body,
+ :expects => 200,
+ :headers => { 'Content-Type' => 'application/x-www-form-urlencoded' },
+ :idempotent => idempotent,
+ :method => 'POST',
+ :parser => parser
+ })
end
end
diff --git a/lib/fog/aws/glacier.rb b/lib/fog/aws/glacier.rb
index 93b2d2d..c1ecb91 100644
--- a/lib/fog/aws/glacier.rb
+++ b/lib/fog/aws/glacier.rb
@@ -4,9 +4,9 @@ module Fog
module AWS
class Glacier < Fog::Service
extend Fog::AWS::CredentialFetcher::ServiceMethods
-
+
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at
+ recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
request_path 'fog/aws/requests/glacier'
@@ -37,14 +37,13 @@ module Fog
MEGABYTE = 1024*1024
class TreeHash
-
def self.digest(body)
new.add_part(body)
end
def reduce_digests(digests)
while digests.length > 1
- digests = digests.each_slice(2).collect do |pair|
+ digests = digests.each_slice(2).map do |pair|
if pair.length == 2
Digest::SHA256.digest(pair[0]+pair[1])
else
@@ -68,13 +67,13 @@ module Fog
def digest_for_part(body)
chunk_count = [body.bytesize / MEGABYTE + (body.bytesize % MEGABYTE > 0 ? 1 : 0), 1].max
if body.respond_to? :byteslice
- digests_for_part = chunk_count.times.collect {|chunk_index| Digest::SHA256.digest(body.byteslice(chunk_index * MEGABYTE, MEGABYTE))}
+ digests_for_part = chunk_count.times.map {|chunk_index| Digest::SHA256.digest(body.byteslice(chunk_index * MEGABYTE, MEGABYTE))}
else
if body.respond_to? :encoding
old_encoding = body.encoding
body.force_encoding('BINARY')
end
- digests_for_part = chunk_count.times.collect {|chunk_index| Digest::SHA256.digest(body.slice(chunk_index * MEGABYTE, MEGABYTE))}
+ digests_for_part = chunk_count.times.map {|chunk_index| Digest::SHA256.digest(body.slice(chunk_index * MEGABYTE, MEGABYTE))}
if body.respond_to? :encoding
body.force_encoding(old_encoding)
end
@@ -92,11 +91,9 @@ module Fog
end
class Mock
-
def initialize(options={})
Fog::Mock.not_implemented
end
-
end
class Real
@@ -120,12 +117,13 @@ module Fog
# ==== Returns
# * Glacier object with connection to AWS.
def initialize(options={})
-
@use_iam_profile = options[:use_iam_profile]
@region = options[:region] || 'us-east-1'
setup_credentials(options)
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.glacier'
@connection_options = options[:connection_options] || {}
@host = options[:host] || "glacier.#{@region}.amazonaws.com"
@version = '2012-06-01'
@@ -137,7 +135,6 @@ module Fog
@connection = Fog::XML::Connection.new("#{@scheme}://#{@host}:#{@port}#{@path}", @persistent, @connection_options)
end
-
private
def setup_credentials(options)
@aws_access_key_id = options[:aws_access_key_id]
@@ -160,6 +157,16 @@ module Fog
params[:headers]['x-amz-security-token'] = @aws_session_token if @aws_session_token
params[:headers]['Authorization'] = @signer.sign params, date
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(params, &block)
+ end
+ else
+ _request(params, &block)
+ end
+ end
+
+ def _request(params, &block)
response = @connection.request(params, &block)
if response.headers['Content-Type'] == 'application/json' && response.body.size > 0 #body will be empty if the streaming form has been used
response.body = Fog::JSON.decode(response.body)
diff --git a/lib/fog/aws/iam.rb b/lib/fog/aws/iam.rb
index 2cb8a6a..e5b11c6 100644
--- a/lib/fog/aws/iam.rb
+++ b/lib/fog/aws/iam.rb
@@ -25,6 +25,7 @@ module Fog
request :create_role
request :create_user
request :delete_access_key
+ request :delete_account_password_policy
request :delete_account_alias
request :delete_group
request :delete_group_policy
@@ -37,6 +38,7 @@ module Fog
request :delete_user
request :delete_user_policy
request :get_account_summary
+ request :get_account_password_policy
request :get_group
request :get_group_policy
request :get_instance_profile
@@ -68,6 +70,7 @@ module Fog
request :update_access_key
request :update_group
request :update_login_profile
+ request :update_account_password_policy
request :update_server_certificate
request :update_signing_certificate
request :update_user
@@ -84,7 +87,6 @@ module Fog
model :role
collection :roles
-
class Mock
def self.data
@data ||= Hash.new do |hash, key|
@@ -249,7 +251,6 @@ module Fog
Fog::AWS::IAM::Error.slurp(error, "#{match[:code]} => #{match[:message]}")
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/auto_scaling/activities.rb b/lib/fog/aws/models/auto_scaling/activities.rb
index 6dfc4f7..32c548f 100644
--- a/lib/fog/aws/models/auto_scaling/activities.rb
+++ b/lib/fog/aws/models/auto_scaling/activities.rb
@@ -31,7 +31,6 @@ module Fog
data = service.describe_scaling_activities('ActivityId' => identity).body['DescribeScalingActivitiesResult']['Activities'].first
new(data) unless data.nil?
end
-
end
end
end
diff --git a/lib/fog/aws/models/auto_scaling/activity.rb b/lib/fog/aws/models/auto_scaling/activity.rb
index 1316475..032f4e6 100644
--- a/lib/fog/aws/models/auto_scaling/activity.rb
+++ b/lib/fog/aws/models/auto_scaling/activity.rb
@@ -4,7 +4,6 @@ module Fog
module AWS
class AutoScaling
class Activity < Fog::Model
-
identity :id, :aliases => 'ActivityId'
attribute :auto_scaling_group_name, :aliases => 'AutoScalingGroupName'
attribute :cause, :aliases => 'Cause'
@@ -22,7 +21,6 @@ module Fog
def save
raise "Operation not supported"
end
-
end
end
end
diff --git a/lib/fog/aws/models/auto_scaling/configuration.rb b/lib/fog/aws/models/auto_scaling/configuration.rb
index 5a8246e..bfde298 100644
--- a/lib/fog/aws/models/auto_scaling/configuration.rb
+++ b/lib/fog/aws/models/auto_scaling/configuration.rb
@@ -4,12 +4,12 @@ module Fog
module AWS
class AutoScaling
class Configuration < Fog::Model
-
identity :id, :aliases => 'LaunchConfigurationName'
attribute :arn, :aliases => 'LaunchConfigurationARN'
attribute :associate_public_ip, :aliases => 'AssociatePublicIpAddress'
attribute :block_device_mappings, :aliases => 'BlockDeviceMappings'
attribute :created_at, :aliases => 'CreatedTime'
+ attribute :ebs_optimized, :aliases => 'EbsOptimized'
attribute :iam_instance_profile, :aliases => 'IamInstanceProfile'
attribute :image_id, :aliases => 'ImageId'
#attribute :instance_monitoring, :aliases => 'InstanceMonitoring'
@@ -21,7 +21,7 @@ module Fog
attribute :security_groups, :aliases => 'SecurityGroups'
attribute :user_data, :aliases => 'UserData'
attribute :spot_price, :aliases => 'SpotPrice'
-
+
def initialize(attributes={})
#attributes[:availability_zones] ||= %w(us-east-1a us-east-1b us-east-1c us-east-1d)
@@ -62,7 +62,6 @@ module Fog
requires :id
service.delete_launch_configuration(id)
end
-
end
end
end
diff --git a/lib/fog/aws/models/auto_scaling/configurations.rb b/lib/fog/aws/models/auto_scaling/configurations.rb
index 2f95669..a62c6e9 100644
--- a/lib/fog/aws/models/auto_scaling/configurations.rb
+++ b/lib/fog/aws/models/auto_scaling/configurations.rb
@@ -4,7 +4,6 @@ module Fog
module AWS
class AutoScaling
class Configurations < Fog::Collection
-
model Fog::AWS::AutoScaling::Configuration
# Creates a new launch configuration
@@ -28,7 +27,6 @@ module Fog
data = service.describe_launch_configurations('LaunchConfigurationNames' => identity).body['DescribeLaunchConfigurationsResult']['LaunchConfigurations'].first
new(data) unless data.nil?
end
-
end
end
end
diff --git a/lib/fog/aws/models/auto_scaling/groups.rb b/lib/fog/aws/models/auto_scaling/groups.rb
index 9b1a419..49cbf3e 100644
--- a/lib/fog/aws/models/auto_scaling/groups.rb
+++ b/lib/fog/aws/models/auto_scaling/groups.rb
@@ -31,7 +31,6 @@ module Fog
data = service.describe_auto_scaling_groups('AutoScalingGroupNames' => identity).body['DescribeAutoScalingGroupsResult']['AutoScalingGroups'].first
new(data) unless data.nil?
end
-
end
end
end
diff --git a/lib/fog/aws/models/auto_scaling/instance.rb b/lib/fog/aws/models/auto_scaling/instance.rb
index d2f9894..8e05ac8 100644
--- a/lib/fog/aws/models/auto_scaling/instance.rb
+++ b/lib/fog/aws/models/auto_scaling/instance.rb
@@ -4,7 +4,6 @@ module Fog
module AWS
class AutoScaling
class Instance < Fog::Model
-
identity :id, :aliases => 'InstanceId'
attribute :auto_scaling_group_name, :aliases => 'AutoScalingGroupName'
attribute :availability_zone, :aliases => 'AvailabilityZone'
@@ -37,7 +36,7 @@ module Fog
end
def healthy?
- health_status == 'HEALTHY'
+ health_status == 'Healthy'
end
def ready?
@@ -53,7 +52,6 @@ module Fog
# requires :id
# service.delete_auto_scaling_group(id)
#end
-
end
end
end
diff --git a/lib/fog/aws/models/auto_scaling/instances.rb b/lib/fog/aws/models/auto_scaling/instances.rb
index b19485b..c04765e 100644
--- a/lib/fog/aws/models/auto_scaling/instances.rb
+++ b/lib/fog/aws/models/auto_scaling/instances.rb
@@ -4,7 +4,6 @@ module Fog
module AWS
class AutoScaling
class Instances < Fog::Collection
-
model Fog::AWS::AutoScaling::Instance
def all
@@ -23,7 +22,6 @@ module Fog
data = service.describe_auto_scaling_instances('InstanceIds' => identity).body['DescribeAutoScalingInstancesResult']['AutoScalingInstances'].first
new(data) unless data.nil?
end
-
end
end
end
diff --git a/lib/fog/aws/models/beanstalk/application.rb b/lib/fog/aws/models/beanstalk/application.rb
index 296603b..a59db50 100644
--- a/lib/fog/aws/models/beanstalk/application.rb
+++ b/lib/fog/aws/models/beanstalk/application.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module AWS
class ElasticBeanstalk
-
class Application < Fog::Model
identity :name, :aliases => 'ApplicationName'
attribute :template_names, :aliases => 'ConfigurationTemplates'
@@ -54,9 +53,7 @@ module Fog
merge_attributes(data)
true
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/beanstalk/applications.rb b/lib/fog/aws/models/beanstalk/applications.rb
index e465ab4..f37fe6a 100644
--- a/lib/fog/aws/models/beanstalk/applications.rb
+++ b/lib/fog/aws/models/beanstalk/applications.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/beanstalk/application'
module Fog
module AWS
class ElasticBeanstalk
-
class Applications < Fog::Collection
model Fog::AWS::ElasticBeanstalk::Application
@@ -18,7 +17,6 @@ module Fog
new(data)
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/beanstalk/environment.rb b/lib/fog/aws/models/beanstalk/environment.rb
index 82400a2..7865799 100644
--- a/lib/fog/aws/models/beanstalk/environment.rb
+++ b/lib/fog/aws/models/beanstalk/environment.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module AWS
class ElasticBeanstalk
-
class Environment < Fog::Model
identity :name, :aliases => 'EnvironmentName'
attribute :id, :aliases => 'EnvironmentId'
@@ -47,7 +46,6 @@ module Fog
# Returns the load balancer object associated with the environment.
def load_balancer(elb_connection = Fog::AWS[:elb])
-
if resources.nil?
elb_connection.load_balancers.get(live_resources['LoadBalancers'].first['Name'])
else
@@ -141,9 +139,7 @@ module Fog
merge_attributes(data)
true
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/beanstalk/environments.rb b/lib/fog/aws/models/beanstalk/environments.rb
index 5bac15e..9f3a3dc 100644
--- a/lib/fog/aws/models/beanstalk/environments.rb
+++ b/lib/fog/aws/models/beanstalk/environments.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/beanstalk/environment'
module Fog
module AWS
class ElasticBeanstalk
-
class Environments < Fog::Collection
model Fog::AWS::ElasticBeanstalk::Environment
@@ -22,7 +21,6 @@ module Fog
new(data)
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/beanstalk/event.rb b/lib/fog/aws/models/beanstalk/event.rb
index 4280df4..9952d29 100644
--- a/lib/fog/aws/models/beanstalk/event.rb
+++ b/lib/fog/aws/models/beanstalk/event.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module AWS
class ElasticBeanstalk
-
class Event < Fog::Model
attribute :application_name, :aliases => 'ApplicationName'
attribute :environment_name, :aliases => 'EnvironmentName'
@@ -14,7 +13,6 @@ module Fog
attribute :template_name, :aliases => 'TemplateName'
attribute :version_label, :aliases => 'VersionLabel'
end
-
end
end
-end
\ No newline at end of file
+end
diff --git a/lib/fog/aws/models/beanstalk/events.rb b/lib/fog/aws/models/beanstalk/events.rb
index a1a4dfa..0eb77ee 100644
--- a/lib/fog/aws/models/beanstalk/events.rb
+++ b/lib/fog/aws/models/beanstalk/events.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/beanstalk/event'
module Fog
module AWS
class ElasticBeanstalk
-
class Events < Fog::Collection
model Fog::AWS::ElasticBeanstalk::Event
@@ -12,7 +11,6 @@ module Fog
data = service.describe_events(options).body['DescribeEventsResult']['Events']
load(data) # data is an array of attribute hashes
end
-
end
end
end
diff --git a/lib/fog/aws/models/beanstalk/template.rb b/lib/fog/aws/models/beanstalk/template.rb
index 0d56b89..eee306b 100644
--- a/lib/fog/aws/models/beanstalk/template.rb
+++ b/lib/fog/aws/models/beanstalk/template.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module AWS
class ElasticBeanstalk
-
class Template < Fog::Model
attribute :name, :aliases => 'TemplateName'
attribute :application_name, :aliases => 'ApplicationName'
@@ -72,7 +71,6 @@ module Fog
true
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/beanstalk/templates.rb b/lib/fog/aws/models/beanstalk/templates.rb
index 8e26e7d..b94e176 100644
--- a/lib/fog/aws/models/beanstalk/templates.rb
+++ b/lib/fog/aws/models/beanstalk/templates.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/beanstalk/template'
module Fog
module AWS
class ElasticBeanstalk
-
class Templates < Fog::Collection
model Fog::AWS::ElasticBeanstalk::Template
@@ -14,7 +13,7 @@ module Fog
# a describe configuration templates call in the AWS API.
def all(options={})
application_filter = []
- if options.has_key?('ApplicationName')
+ if options.key?('ApplicationName')
application_filter << options['ApplicationName']
end
@@ -63,7 +62,6 @@ module Fog
end
result
end
-
end
end
end
diff --git a/lib/fog/aws/models/beanstalk/version.rb b/lib/fog/aws/models/beanstalk/version.rb
index c67cf5a..98c5708 100644
--- a/lib/fog/aws/models/beanstalk/version.rb
+++ b/lib/fog/aws/models/beanstalk/version.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module AWS
class ElasticBeanstalk
-
class Version < Fog::Model
attribute :label, :aliases => 'VersionLabel'
attribute :application_name, :aliases => 'ApplicationName'
@@ -73,7 +72,6 @@ module Fog
merge_attributes(data)
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/beanstalk/versions.rb b/lib/fog/aws/models/beanstalk/versions.rb
index c13daf7..be56a05 100644
--- a/lib/fog/aws/models/beanstalk/versions.rb
+++ b/lib/fog/aws/models/beanstalk/versions.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/beanstalk/version'
module Fog
module AWS
class ElasticBeanstalk
-
class Versions < Fog::Collection
model Fog::AWS::ElasticBeanstalk::Version
@@ -24,7 +23,6 @@ module Fog
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/cdn/distribution.rb b/lib/fog/aws/models/cdn/distribution.rb
index 76e8218..1c99bfd 100644
--- a/lib/fog/aws/models/cdn/distribution.rb
+++ b/lib/fog/aws/models/cdn/distribution.rb
@@ -5,7 +5,6 @@ require 'fog/aws/models/cdn/distribution_helper'
module Fog
module CDN
class AWS
-
class Distribution < Fog::Model
include Fog::CDN::AWS::DistributionHelper
@@ -85,9 +84,7 @@ module Fog
def distribution_config_to_attributes(new_attributes = {})
new_attributes.merge(new_attributes.delete('DistributionConfig') || {})
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/cdn/distribution_helper.rb b/lib/fog/aws/models/cdn/distribution_helper.rb
index 10f21bc..5217da2 100644
--- a/lib/fog/aws/models/cdn/distribution_helper.rb
+++ b/lib/fog/aws/models/cdn/distribution_helper.rb
@@ -3,9 +3,7 @@ require 'fog/core/collection'
module Fog
module CDN
class AWS
-
module DistributionHelper
-
def destroy
requires :identity, :etag, :caller_reference
raise "Distribution must be disabled to be deleted" unless disabled?
@@ -56,9 +54,7 @@ module Fog
end
true
end
-
end
-
end
end
-end
\ No newline at end of file
+end
diff --git a/lib/fog/aws/models/cdn/distributions.rb b/lib/fog/aws/models/cdn/distributions.rb
index dd76c57..458a3b6 100644
--- a/lib/fog/aws/models/cdn/distributions.rb
+++ b/lib/fog/aws/models/cdn/distributions.rb
@@ -5,7 +5,6 @@ require 'fog/aws/models/cdn/distributions_helper'
module Fog
module CDN
class AWS
-
class Distributions < Fog::Collection
include Fog::CDN::AWS::DistributionsHelper
@@ -25,9 +24,7 @@ module Fog
alias_method :each_distribution_this_page, :each
alias_method :each, :each_distribution
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/cdn/distributions_helper.rb b/lib/fog/aws/models/cdn/distributions_helper.rb
index 76bb9a1..7895df0 100644
--- a/lib/fog/aws/models/cdn/distributions_helper.rb
+++ b/lib/fog/aws/models/cdn/distributions_helper.rb
@@ -3,9 +3,8 @@ require 'fog/core/collection'
module Fog
module CDN
class AWS
-
module DistributionsHelper
-
+
def all(options = {})
merge_attributes(options)
data = list_distributions(options).body
@@ -40,9 +39,7 @@ module Fog
self
end
end
-
end
-
end
end
-end
\ No newline at end of file
+end
diff --git a/lib/fog/aws/models/cdn/invalidation.rb b/lib/fog/aws/models/cdn/invalidation.rb
index faa65e0..1b1d4d5 100644
--- a/lib/fog/aws/models/cdn/invalidation.rb
+++ b/lib/fog/aws/models/cdn/invalidation.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module CDN
class AWS
-
class Invalidation < Fog::Model
-
identity :id, :aliases => 'Id'
attribute :status, :aliases => 'Status'
@@ -56,9 +54,7 @@ module Fog
end
new_attributes
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/cdn/invalidations.rb b/lib/fog/aws/models/cdn/invalidations.rb
index 050b8dc..2d9be24 100644
--- a/lib/fog/aws/models/cdn/invalidations.rb
+++ b/lib/fog/aws/models/cdn/invalidations.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/cdn/invalidation'
module Fog
module CDN
class AWS
-
class Invalidations < Fog::Collection
-
attribute :is_truncated, :aliases => ['IsTruncated']
attribute :max_items, :aliases => ['MaxItems']
attribute :next_marker, :aliases => ['NextMarker']
@@ -46,9 +44,7 @@ module Fog
requires :distribution
super({ :distribution => distribution }.merge!(attributes))
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/cdn/streaming_distribution.rb b/lib/fog/aws/models/cdn/streaming_distribution.rb
index 7008d64..15f4e0f 100644
--- a/lib/fog/aws/models/cdn/streaming_distribution.rb
+++ b/lib/fog/aws/models/cdn/streaming_distribution.rb
@@ -5,7 +5,6 @@ require 'fog/aws/models/cdn/distribution_helper'
module Fog
module CDN
class AWS
-
class StreamingDistribution < Fog::Model
include Fog::CDN::AWS::DistributionHelper
@@ -69,9 +68,7 @@ module Fog
def distribution_config_to_attributes(new_attributes = {})
new_attributes.merge(new_attributes.delete('StreamingDistributionConfig') || {})
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/cdn/streaming_distributions.rb b/lib/fog/aws/models/cdn/streaming_distributions.rb
index cc307f1..1c2e270 100644
--- a/lib/fog/aws/models/cdn/streaming_distributions.rb
+++ b/lib/fog/aws/models/cdn/streaming_distributions.rb
@@ -5,7 +5,6 @@ require 'fog/aws/models/cdn/distributions_helper'
module Fog
module CDN
class AWS
-
class StreamingDistributions < Fog::Collection
include Fog::CDN::AWS::DistributionsHelper
@@ -25,9 +24,7 @@ module Fog
alias_method :each_distribution_this_page, :each
alias_method :each, :each_distribution
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/cloud_watch/alarm_data.rb b/lib/fog/aws/models/cloud_watch/alarm_data.rb
index add59bf..772e6b3 100644
--- a/lib/fog/aws/models/cloud_watch/alarm_data.rb
+++ b/lib/fog/aws/models/cloud_watch/alarm_data.rb
@@ -15,7 +15,7 @@ module Fog
def get(namespace, metric_name, dimensions=nil, period=nil, statistic=nil, unit=nil)
list_opts = {'Namespace' => namespace, 'MetricName' => metric_name}
if dimensions
- dimensions_array = dimensions.collect do |name, value|
+ dimensions_array = dimensions.map do |name, value|
{'Name' => name, 'Value' => value}
end
list_opts.merge!('Dimensions' => dimensions_array)
@@ -32,7 +32,6 @@ module Fog
data = service.describe_alarms_for_metric(list_opts).body['DescribeAlarmsForMetricResult']['MetricAlarms']
load(data)
end
-
end
end
end
diff --git a/lib/fog/aws/models/cloud_watch/alarm_datum.rb b/lib/fog/aws/models/cloud_watch/alarm_datum.rb
index 76ca09f..ae20e81 100644
--- a/lib/fog/aws/models/cloud_watch/alarm_datum.rb
+++ b/lib/fog/aws/models/cloud_watch/alarm_datum.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module AWS
class CloudWatch
-
class AlarmDatum < Fog::Model
attribute :alarm_name, :aliases => 'AlarmName'
attribute :metric_name, :aliases => 'MetricName'
diff --git a/lib/fog/aws/models/cloud_watch/alarm_histories.rb b/lib/fog/aws/models/cloud_watch/alarm_histories.rb
index 93d357d..7a00d01 100644
--- a/lib/fog/aws/models/cloud_watch/alarm_histories.rb
+++ b/lib/fog/aws/models/cloud_watch/alarm_histories.rb
@@ -11,7 +11,6 @@ module Fog
data = service.describe_alarm_history(conditions).body['DescribeAlarmHistoryResult']['AlarmHistoryItems']
load(data) # data is an array of attribute hashes
end
-
end
end
end
diff --git a/lib/fog/aws/models/cloud_watch/alarm_history.rb b/lib/fog/aws/models/cloud_watch/alarm_history.rb
index 5fb4c6b..4c16db3 100644
--- a/lib/fog/aws/models/cloud_watch/alarm_history.rb
+++ b/lib/fog/aws/models/cloud_watch/alarm_history.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module AWS
class CloudWatch
-
class AlarmHistory < Fog::Model
attribute :alarm_name, :aliases => 'AlarmName'
attribute :end_date, :aliases => 'EndDate'
diff --git a/lib/fog/aws/models/cloud_watch/alarms.rb b/lib/fog/aws/models/cloud_watch/alarms.rb
index 7b1ac19..47bb162 100644
--- a/lib/fog/aws/models/cloud_watch/alarms.rb
+++ b/lib/fog/aws/models/cloud_watch/alarms.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/cloud_watch/alarm'
module Fog
module AWS
class CloudWatch
-
class Alarms < Fog::Collection
model Fog::AWS::CloudWatch::Alarm
@@ -40,7 +39,6 @@ module Fog
service.enable_alarm_actions(alarm_names)
true
end
-
end
end
end
diff --git a/lib/fog/aws/models/cloud_watch/metric.rb b/lib/fog/aws/models/cloud_watch/metric.rb
index d15ae84..f923e67 100644
--- a/lib/fog/aws/models/cloud_watch/metric.rb
+++ b/lib/fog/aws/models/cloud_watch/metric.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module AWS
class CloudWatch
-
class Metric < Fog::Model
attribute :name, :aliases => 'MetricName'
attribute :namespace, :aliases => 'Namespace'
@@ -11,4 +10,4 @@ module Fog
end
end
end
-end
\ No newline at end of file
+end
diff --git a/lib/fog/aws/models/cloud_watch/metric_statistic.rb b/lib/fog/aws/models/cloud_watch/metric_statistic.rb
index 5e30456..eddd6d7 100644
--- a/lib/fog/aws/models/cloud_watch/metric_statistic.rb
+++ b/lib/fog/aws/models/cloud_watch/metric_statistic.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module AWS
class CloudWatch
-
class MetricStatistic < Fog::Model
attribute :label, :aliases => 'Label'
attribute :minimum, :aliases => 'Minimum'
diff --git a/lib/fog/aws/models/cloud_watch/metric_statistics.rb b/lib/fog/aws/models/cloud_watch/metric_statistics.rb
index fc0bc95..76fe477 100644
--- a/lib/fog/aws/models/cloud_watch/metric_statistics.rb
+++ b/lib/fog/aws/models/cloud_watch/metric_statistics.rb
@@ -13,10 +13,9 @@ module Fog
dimensions = conditions['Dimensions']
get_metric_opts = {"StartTime" => (Time.now-3600).iso8601, "EndTime" => Time.now.iso8601, "Period" => 300}.merge(conditions)
data = service.get_metric_statistics(get_metric_opts).body['GetMetricStatisticsResult']['Datapoints']
- data.collect! { |datum| datum.merge('MetricName' => metricName, 'Namespace' => namespace, 'Dimensions' => dimensions) }
+ data.map! { |datum| datum.merge('MetricName' => metricName, 'Namespace' => namespace, 'Dimensions' => dimensions) }
load(data) # data is an array of attribute hashes
end
-
end
end
end
diff --git a/lib/fog/aws/models/cloud_watch/metrics.rb b/lib/fog/aws/models/cloud_watch/metrics.rb
index 9df9780..0c0e627 100644
--- a/lib/fog/aws/models/cloud_watch/metrics.rb
+++ b/lib/fog/aws/models/cloud_watch/metrics.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/cloud_watch/metric'
module Fog
module AWS
class CloudWatch
-
class Metrics < Fog::Collection
attribute :next_token, :aliases => 'NextToken'
@@ -16,7 +15,7 @@ module Fog
load(result['Metrics']) # an array of attribute hashes
end
- alias :each_metric_this_page :each
+ alias_method :each_metric_this_page, :each
def each
if !block_given?
self
@@ -36,7 +35,7 @@ module Fog
def get(namespace, metric_name, dimensions=nil)
list_opts = {'Namespace' => namespace, 'MetricName' => metric_name}
if dimensions
- dimensions_array = dimensions.collect do |name, value|
+ dimensions_array = dimensions.map do |name, value|
{'Name' => name, 'Value' => value}
end
# list_opts.merge!('Dimensions' => dimensions_array)
@@ -45,7 +44,6 @@ module Fog
new(data)
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/address.rb b/lib/fog/aws/models/compute/address.rb
index 0ba1391..c35b872 100644
--- a/lib/fog/aws/models/compute/address.rb
+++ b/lib/fog/aws/models/compute/address.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class AWS
-
class Address < Fog::Model
-
identity :public_ip, :aliases => 'publicIp'
attribute :allocation_id, :aliases => 'allocationId'
@@ -70,9 +68,7 @@ module Fog
service.disassociate_address(public_ip)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/addresses.rb b/lib/fog/aws/models/compute/addresses.rb
index 5563aa9..e54622d 100644
--- a/lib/fog/aws/models/compute/addresses.rb
+++ b/lib/fog/aws/models/compute/addresses.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/compute/address'
module Fog
module Compute
class AWS
-
class Addresses < Fog::Collection
-
attribute :filters
attribute :server
@@ -92,9 +90,7 @@ module Fog
super(attributes)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/dhcp_option.rb b/lib/fog/aws/models/compute/dhcp_option.rb
index 1969f38..fb5e39b 100644
--- a/lib/fog/aws/models/compute/dhcp_option.rb
+++ b/lib/fog/aws/models/compute/dhcp_option.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class AWS
-
class DhcpOption < Fog::Model
-
identity :id, :aliases => 'dhcpOptionsId'
attribute :dhcp_configuration_set, :aliases => 'dhcpConfigurationSet'
attribute :tag_set, :aliases => 'tagSet'
diff --git a/lib/fog/aws/models/compute/dhcp_options.rb b/lib/fog/aws/models/compute/dhcp_options.rb
index 5e67f8b..8ed4e7e 100644
--- a/lib/fog/aws/models/compute/dhcp_options.rb
+++ b/lib/fog/aws/models/compute/dhcp_options.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/compute/dhcp_option'
module Fog
module Compute
class AWS
-
class DhcpOptions < Fog::Collection
-
attribute :filters
model Fog::Compute::AWS::DhcpOption
@@ -83,9 +81,7 @@ module Fog
self.class.new(:service => service).all('dhcp-options-id' => dhcp_options_id).first
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/flavor.rb b/lib/fog/aws/models/compute/flavor.rb
index 1c25116..e305e18 100644
--- a/lib/fog/aws/models/compute/flavor.rb
+++ b/lib/fog/aws/models/compute/flavor.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class AWS
-
class Flavor < Fog::Model
-
identity :id
attribute :bits
@@ -15,9 +13,7 @@ module Fog
attribute :ram
attribute :ebs_optimized_available
attribute :instance_store_volumes
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/flavors.rb b/lib/fog/aws/models/compute/flavors.rb
index 2937b2f..d0824a9 100644
--- a/lib/fog/aws/models/compute/flavors.rb
+++ b/lib/fog/aws/models/compute/flavors.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/compute/flavor'
module Fog
module Compute
class AWS
-
FLAVORS = [
{
:id => 't1.micro',
@@ -17,6 +16,36 @@ module Fog
:instance_store_volumes => 0
},
{
+ :id => 't2.micro',
+ :name => 'Micro Instance',
+ :bits => 64,
+ :cores => 1,
+ :disk => 0,
+ :ram => 1024,
+ :ebs_optimized_available => false,
+ :instance_store_volumes => 0
+ },
+ {
+ :id => 't2.small',
+ :name => 'Micro Instance',
+ :bits => 64,
+ :cores => 1,
+ :disk => 0,
+ :ram => 2048,
+ :ebs_optimized_available => false,
+ :instance_store_volumes => 0
+ },
+ {
+ :id => 't2.medium',
+ :name => 'Micro Instance',
+ :bits => 64,
+ :cores => 2,
+ :disk => 0,
+ :ram => 4096,
+ :ebs_optimized_available => false,
+ :instance_store_volumes => 0
+ },
+ {
:id => 'm1.small',
:name => 'Small Instance',
:bits => 32,
@@ -305,11 +334,60 @@ module Fog
:ram => 249856,
:ebs_optimized_available => false,
:instance_store_volumes => 8
+ },
+ {
+ :id => "r3.large",
+ :name => "R3 Large",
+ :bits => 64,
+ :cores => 2,
+ :ram => 15360,
+ :disk => 32,
+ :ebs_optimized_available => true,
+ :instance_store_volumes => 1
+ },
+ {
+ :id => "r3.xlarge",
+ :name => "R3 Extra Large",
+ :bits => 64,
+ :cores => 4,
+ :ram => 31232,
+ :disk => 80,
+ :ebs_optimized_available => true,
+ :instance_store_volumes => 1
+ },
+ {
+ :id => "r3.2xlarge",
+ :name => "R3 Double Extra Large",
+ :bits => 64,
+ :cores => 8,
+ :ram => 62464,
+ :disk => 160,
+ :ebs_optimized_available => true,
+ :instance_store_volumes => 1
+ },
+ {
+ :id => "r3.4xlarge",
+ :name => "R3 Quadruple Extra Large",
+ :bits => 64,
+ :cores => 16,
+ :ram => 124928,
+ :disk => 320,
+ :ebs_optimized_available => true,
+ :instance_store_volumes => 1
+ },
+ {
+ :id => "r3.8xlarge",
+ :name => "R3 Eight Extra Large",
+ :bits => 64,
+ :cores => 32,
+ :ram => 249856,
+ :disk => 640,
+ :ebs_optimized_available => true,
+ :instance_store_volumes => 2
}
]
class Flavors < Fog::Collection
-
model Fog::Compute::AWS::Flavor
# Returns an array of all flavors that have been created
@@ -520,11 +598,9 @@ module Fog
#
def get(flavor_id)
- self.class.new(:service => service).all.detect {|flavor| flavor.id == flavor_id}
+ self.class.new(:service => service).all.find {|flavor| flavor.id == flavor_id}
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/image.rb b/lib/fog/aws/models/compute/image.rb
index 783a4d7..7255644 100644
--- a/lib/fog/aws/models/compute/image.rb
+++ b/lib/fog/aws/models/compute/image.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class AWS
-
class Image < Fog::Model
-
identity :id, :aliases => 'imageId'
attribute :architecture
@@ -25,12 +23,13 @@ module Fog
attribute :root_device_name, :aliases => 'rootDeviceName'
attribute :tags, :aliases => 'tagSet'
attribute :name
+ attribute :virtualization_type, :aliases => 'virtualizationType'
def deregister(delete_snapshot = false)
service.deregister_image(id)
if(delete_snapshot && root_device_type == "ebs")
- block_device = block_device_mapping.detect {|block_device| block_device['deviceName'] == root_device_name}
+ block_device = block_device_mapping.find {|block_device| block_device['deviceName'] == root_device_name}
service.snapshots.new(:id => block_device['snapshotId']).destroy
else
true
@@ -40,9 +39,7 @@ module Fog
def ready?
state == 'available'
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/images.rb b/lib/fog/aws/models/compute/images.rb
index ece512e..8a3d16a 100644
--- a/lib/fog/aws/models/compute/images.rb
+++ b/lib/fog/aws/models/compute/images.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/compute/image'
module Fog
module Compute
class AWS
-
class Images < Fog::Collection
-
attribute :filters
model Fog::Compute::AWS::Image
@@ -56,7 +54,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/internet_gateway.rb b/lib/fog/aws/models/compute/internet_gateway.rb
index 3dc416d..0c923d3 100644
--- a/lib/fog/aws/models/compute/internet_gateway.rb
+++ b/lib/fog/aws/models/compute/internet_gateway.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class AWS
-
class InternetGateway < Fog::Model
-
identity :id, :aliases => 'internetGatewayId'
attribute :attachment_set, :aliases => 'attachmentSet'
attribute :tag_set, :aliases => 'tagSet'
@@ -42,7 +40,6 @@ module Fog
reload
end
-
# Removes an existing internet gateway
#
# internet_gateway.destroy
diff --git a/lib/fog/aws/models/compute/internet_gateways.rb b/lib/fog/aws/models/compute/internet_gateways.rb
index cc687f3..1f2d2ca 100644
--- a/lib/fog/aws/models/compute/internet_gateways.rb
+++ b/lib/fog/aws/models/compute/internet_gateways.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/compute/internet_gateway'
module Fog
module Compute
class AWS
-
class InternetGateways < Fog::Collection
-
attribute :filters
model Fog::Compute::AWS::InternetGateway
@@ -83,9 +81,7 @@ module Fog
self.class.new(:service => service).all('internet-gateway-id' => internet_gateway_id).first
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/key_pair.rb b/lib/fog/aws/models/compute/key_pair.rb
index 3cc35d3..1ba3d6e 100644
--- a/lib/fog/aws/models/compute/key_pair.rb
+++ b/lib/fog/aws/models/compute/key_pair.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class AWS
-
class KeyPair < Fog::Model
-
identity :name, :aliases => 'keyName'
attribute :fingerprint, :aliases => 'keyFingerprint'
@@ -31,11 +29,9 @@ module Fog
new_attributes = data.reject {|key,value| !['keyFingerprint', 'keyMaterial', 'keyName'].include?(key)}
merge_attributes(new_attributes)
true
-
end
def write(path="#{ENV['HOME']}/.ssh/fog_#{Fog.credential.to_s}_#{name}.pem")
-
if writable?
split_private_key = private_key.split(/\n/)
File.open(path, "w") do |f|
@@ -49,11 +45,9 @@ module Fog
end
def writable?
- !!(private_key && ENV.has_key?('HOME'))
+ !!(private_key && ENV.key?('HOME'))
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/key_pairs.rb b/lib/fog/aws/models/compute/key_pairs.rb
index 2e32660..b189b4f 100644
--- a/lib/fog/aws/models/compute/key_pairs.rb
+++ b/lib/fog/aws/models/compute/key_pairs.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/compute/key_pair'
module Fog
module Compute
class AWS
-
class KeyPairs < Fog::Collection
-
attribute :filters
attribute :key_name
@@ -80,9 +78,7 @@ module Fog
self.class.new(:service => service).all('key-name' => key_name).first
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/network_acl.rb b/lib/fog/aws/models/compute/network_acl.rb
index 16cf735..afe12f6 100644
--- a/lib/fog/aws/models/compute/network_acl.rb
+++ b/lib/fog/aws/models/compute/network_acl.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class AWS
-
class NetworkAcl < Fog::Model
ICMP = 1
TCP = 6
@@ -134,7 +133,7 @@ module Fog
requires :network_acl_id
# We have to manually find out the network ACL the subnet is currently associated with
- old_id = service.network_acls.all('association.subnet-id' => subnet.subnet_id).first.associations.detect { |a| a['subnetId'] == subnet.subnet_id }['networkAclAssociationId']
+ old_id = service.network_acls.all('association.subnet-id' => subnet.subnet_id).first.associations.find { |a| a['subnetId'] == subnet.subnet_id }['networkAclAssociationId']
service.replace_network_acl_association(old_id, network_acl_id)
true
end
@@ -161,7 +160,18 @@ module Fog
def save
requires :vpc_id
data = service.create_network_acl(vpc_id).body['networkAcl']
- merge_attributes(data)
+ new_attributes = data.reject { |key,value| key == 'tagSet' }
+ merge_attributes(new_attributes)
+
+ if tags = self.tags
+ # expect eventual consistency
+ Fog.wait_for { self.reload rescue nil }
+ service.create_tags(
+ self.identity,
+ tags
+ )
+ end
+
true
end
end
diff --git a/lib/fog/aws/models/compute/network_acls.rb b/lib/fog/aws/models/compute/network_acls.rb
index 8d743a5..7176680 100644
--- a/lib/fog/aws/models/compute/network_acls.rb
+++ b/lib/fog/aws/models/compute/network_acls.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/compute/network_acl'
module Fog
module Compute
class AWS
-
class NetworkAcls < Fog::Collection
-
attribute :filters
model Fog::Compute::AWS::NetworkAcl
diff --git a/lib/fog/aws/models/compute/network_interface.rb b/lib/fog/aws/models/compute/network_interface.rb
index 0f3c649..098a6aa 100644
--- a/lib/fog/aws/models/compute/network_interface.rb
+++ b/lib/fog/aws/models/compute/network_interface.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class AWS
-
class NetworkInterface < Fog::Model
-
identity :network_interface_id, :aliases => 'networkInterfaceId'
attribute :state
attribute :request_id, :aliases => 'requestId'
@@ -20,6 +18,7 @@ module Fog
attribute :status, :aliases => 'status'
attribute :mac_address, :aliases => 'macAddress'
attribute :private_ip_address, :aliases => 'privateIpAddress'
+ attribute :private_ip_addresses, :aliases => 'privateIpAddresses'
attribute :private_dns_name, :aliases => 'privateDnsName'
attribute :source_dest_check, :aliases => 'sourceDestCheck'
attribute :group_set, :aliases => 'groupSet'
@@ -27,7 +26,6 @@ module Fog
attribute :association, :aliases => 'association'
attribute :tag_set, :aliases => 'tagSet'
-
# Removes an existing network interface
#
# network_interface.destroy
@@ -69,7 +67,6 @@ module Fog
merge_attributes(new_attributes)
true
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/network_interfaces.rb b/lib/fog/aws/models/compute/network_interfaces.rb
index 8e022dc..f998bc9 100644
--- a/lib/fog/aws/models/compute/network_interfaces.rb
+++ b/lib/fog/aws/models/compute/network_interfaces.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/compute/network_interface'
module Fog
module Compute
class AWS
-
class NetworkInterfaces < Fog::Collection
-
attribute :filters
model Fog::Compute::AWS::NetworkInterface
@@ -130,7 +128,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/route_table.rb b/lib/fog/aws/models/compute/route_table.rb
index bd70096..0d48e14 100755
--- a/lib/fog/aws/models/compute/route_table.rb
+++ b/lib/fog/aws/models/compute/route_table.rb
@@ -3,16 +3,14 @@ require 'fog/core/model'
module Fog
module Compute
class AWS
-
class RouteTable < Fog::Model
-
identity :id, :aliases => 'routeTableId'
attribute :vpc_id, :aliases => 'vpcId'
attribute :routes, :aliases => 'routeSet'
attribute :associations, :aliases => 'associationSet'
attribute :tags, :aliases => 'tagSet'
-
+
def initialize(attributes={})
super
@@ -52,7 +50,7 @@ module Fog
merge_attributes(new_attributes)
true
end
-
+
private
def associationSet=(new_association_set)
@@ -62,7 +60,6 @@ module Fog
def routeSet=(new_route_set)
merge_attributes(new_route_set || {})
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/route_tables.rb b/lib/fog/aws/models/compute/route_tables.rb
index b5fe400..a792d0e 100755
--- a/lib/fog/aws/models/compute/route_tables.rb
+++ b/lib/fog/aws/models/compute/route_tables.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/compute/route_table'
module Fog
module Compute
class AWS
-
class RouteTables < Fog::Collection
-
attribute :filters
model Fog::Compute::AWS::RouteTable
@@ -84,9 +82,7 @@ module Fog
self.class.new(:service => service).all('route-table-id' => route_table_id).first
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/security_group.rb b/lib/fog/aws/models/compute/security_group.rb
index 94043dd..5bf95f4 100644
--- a/lib/fog/aws/models/compute/security_group.rb
+++ b/lib/fog/aws/models/compute/security_group.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class AWS
-
class SecurityGroup < Fog::Model
-
identity :name, :aliases => 'groupName'
attribute :description, :aliases => 'groupDescription'
attribute :group_id, :aliases => 'groupId'
@@ -277,9 +275,7 @@ module Fog
info
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/security_groups.rb b/lib/fog/aws/models/compute/security_groups.rb
index 263ecc8..36dfd98 100644
--- a/lib/fog/aws/models/compute/security_groups.rb
+++ b/lib/fog/aws/models/compute/security_groups.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/compute/security_group'
module Fog
module Compute
class AWS
-
class SecurityGroups < Fog::Collection
-
attribute :filters
model Fog::Compute::AWS::SecurityGroup
@@ -114,7 +112,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/server.rb b/lib/fog/aws/models/compute/server.rb
index b6ef076..e05d532 100644
--- a/lib/fog/aws/models/compute/server.rb
+++ b/lib/fog/aws/models/compute/server.rb
@@ -3,7 +3,6 @@ require 'fog/compute/models/server'
module Fog
module Compute
class AWS
-
class Server < Fog::Compute::Server
extend Fog::Deprecation
deprecate :ip_address, :public_ip_address
@@ -17,18 +16,19 @@ module Fog
attribute :block_device_mapping, :aliases => 'blockDeviceMapping'
attribute :network_interfaces, :aliases => 'networkInterfaces'
attribute :client_token, :aliases => 'clientToken'
+ attribute :disable_api_termination, :aliases => 'disableApiTermination'
attribute :dns_name, :aliases => 'dnsName'
attribute :ebs_optimized, :aliases => 'ebsOptimized'
attribute :groups
attribute :flavor_id, :aliases => 'instanceType'
- attribute :hypervisor
+ attribute :hypervisor
attribute :iam_instance_profile, :aliases => 'iamInstanceProfile'
attribute :image_id, :aliases => 'imageId'
attr_accessor :instance_initiated_shutdown_behavior
attribute :kernel_id, :aliases => 'kernelId'
attribute :key_name, :aliases => 'keyName'
attribute :created_at, :aliases => 'launchTime'
- attribute :lifecycle, :aliases => 'instanceLifecycle'
+ attribute :lifecycle, :aliases => 'instanceLifecycle'
attribute :monitoring, :squash => 'state'
attribute :placement_group, :aliases => 'groupName'
attribute :platform, :aliases => 'platform'
@@ -56,7 +56,6 @@ module Fog
attr_accessor :password
attr_writer :iam_instance_profile_name, :iam_instance_profile_arn
-
def initialize(attributes={})
self.groups ||= ["default"] unless (attributes[:subnet_id] || attributes[:security_group_ids] || attributes[:network_interfaces])
self.flavor_id ||= 't1.micro'
@@ -117,13 +116,12 @@ module Fog
end
def flavor
- @flavor ||= service.flavors.all.detect {|flavor| flavor.id == flavor_id}
+ @flavor ||= service.flavors.all.find {|flavor| flavor.id == flavor_id}
end
def key_pair
requires :key_name
-
- service.key_pairs.all(key_name).first
+ service.key_pairs.all({'key-name' => key_name}).first
end
def key_pair=(new_keypair)
@@ -140,7 +138,7 @@ module Fog
true
end
- def save
+ def run_instance_options
raise Fog::Errors::Error.new('Resaving an existing object may create a duplicate') if persisted?
requires :image_id
@@ -148,6 +146,7 @@ module Fog
'BlockDeviceMapping' => block_device_mapping,
'NetworkInterfaces' => network_interfaces,
'ClientToken' => client_token,
+ 'DisableApiTermination' => disable_api_termination,
'EbsOptimized' => ebs_optimized,
'IamInstanceProfile.Arn' => @iam_instance_profile_arn,
'IamInstanceProfile.Name' => @iam_instance_profile_name,
@@ -186,27 +185,21 @@ module Fog
else
options["NetworkInterface.0.SecurityGroupId.0"] = options['SecurityGroupId']
end
- options.delete('SecurityGroupId')
+ options.delete('SecurityGroupId')
+ if private_ip_address
+ options.delete('PrivateIpAddress')
+ options['NetworkInterface.0.PrivateIpAddress'] = private_ip_address
+ end
end
else
options.delete('SubnetId')
end
+ options
+ end
- data = service.run_instances(image_id, 1, 1, options)
- merge_attributes(data.body['instancesSet'].first)
-
- if tags = self.tags
- # expect eventual consistency
- Fog.wait_for { self.reload rescue nil }
- for key, value in (self.tags = tags)
- service.tags.create(
- :key => key,
- :resource_id => self.identity,
- :value => value
- )
- end
- end
-
+ def save
+ servers = service.servers.save_many(self, 1, 1)
+ merge_attributes(servers.first.attributes)
true
end
@@ -272,9 +265,7 @@ module Fog
self.attributes[:placement] = new_placement
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/servers.rb b/lib/fog/aws/models/compute/servers.rb
index 107761c..aa71a94 100644
--- a/lib/fog/aws/models/compute/servers.rb
+++ b/lib/fog/aws/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/compute/server'
module Fog
module Compute
class AWS
-
class Servers < Fog::Collection
-
attribute :filters
model Fog::Compute::AWS::Server
@@ -72,41 +70,39 @@ module Fog
)
end
- def bootstrap(new_attributes = {})
- server = service.servers.new(new_attributes)
+ # Create between m and n servers with the server options specified in
+ # new_attributes. Equivalent to this loop, but happens in 1 request:
+ #
+ # 1.upto(n).map { create(new_attributes) }
+ #
+ # See the AWS RunInstances API.
+ def create_many(min_servers = 1, max_servers = nil, new_attributes = {})
+ max_servers ||= min_servers
+ template = new(new_attributes)
+ save_many(template, min_servers, max_servers)
+ end
- unless new_attributes[:key_name]
- # first or create fog_#{credential} keypair
- name = Fog.respond_to?(:credential) && Fog.credential || :default
- unless server.key_pair = service.key_pairs.get("fog_#{name}")
- server.key_pair = service.key_pairs.create(
- :name => "fog_#{name}",
- :public_key => server.public_key
- )
- end
- end
-
- security_group = service.security_groups.get(server.groups.first)
- if security_group.nil?
- raise Fog::Compute::AWS::Error, "The security group" \
- " #{server.groups.first} doesn't exist."
- end
-
- # make sure port 22 is open in the first security group
- authorized = security_group.ip_permissions.detect do |ip_permission|
- ip_permission['ipRanges'].first && ip_permission['ipRanges'].first['cidrIp'] == '0.0.0.0/0' &&
- ip_permission['fromPort'] == 22 &&
- ip_permission['ipProtocol'] == 'tcp' &&
- ip_permission['toPort'] == 22
- end
- unless authorized
- security_group.authorize_port_range(22..22)
+ # Bootstrap between m and n servers with the server options specified in
+ # new_attributes. Equivalent to this loop, but happens in 1 AWS request
+ # and the machines' spinup will happen in parallel:
+ #
+ # 1.upto(n).map { bootstrap(new_attributes) }
+ #
+ # See the AWS RunInstances API.
+ def bootstrap_many(min_servers = 1, max_servers = nil, new_attributes = {})
+ template = service.servers.new(new_attributes)
+ _setup_bootstrap(template)
+
+ servers = save_many(template, min_servers, max_servers)
+ servers.each do |server|
+ server.wait_for { ready? }
+ server.setup(:key_data => [server.private_key])
end
+ servers
+ end
- server.save
- server.wait_for { ready? }
- server.setup(:key_data => [server.private_key])
- server
+ def bootstrap(new_attributes = {})
+ bootstrap_many(1, 1, new_attributes).first
end
# Used to retrieve a server
@@ -157,8 +153,59 @@ module Fog
nil
end
- end
+ # From a template, create between m-n servers (see the AWS RunInstances API)
+ def save_many(template, min_servers = 1, max_servers = nil)
+ max_servers ||= min_servers
+ data = service.run_instances(template.image_id, min_servers, max_servers, template.run_instance_options)
+ # For some reason, AWS sometimes returns empty results alongside the real ones. Thus the select
+ data.body['instancesSet'].select { |instance_set| instance_set['instanceId'] }.map do |instance_set|
+ server = template.dup
+ server.merge_attributes(instance_set)
+ # expect eventual consistency
+ if (tags = server.tags) && tags.size > 0
+ Fog.wait_for { server.reload rescue nil }
+ service.create_tags(
+ server.identity,
+ tags
+ )
+ end
+ server
+ end
+ end
+
+ private
+ def _setup_bootstrap(server)
+ unless server.key_name
+ # first or create fog_#{credential} keypair
+ name = Fog.respond_to?(:credential) && Fog.credential || :default
+ unless server.key_pair = service.key_pairs.get("fog_#{name}")
+ server.key_pair = service.key_pairs.create(
+ :name => "fog_#{name}",
+ :public_key => server.public_key
+ )
+ end
+ end
+
+ security_group = service.security_groups.get(server.groups.first)
+ if security_group.nil?
+ raise Fog::Compute::AWS::Error, "The security group" \
+ " #{server.groups.first} doesn't exist."
+ end
+
+ # make sure port 22 is open in the first security group
+ authorized = security_group.ip_permissions.find do |ip_permission|
+ ip_permission['ipRanges'].first && ip_permission['ipRanges'].first['cidrIp'] == '0.0.0.0/0' &&
+ ip_permission['fromPort'] == 22 &&
+ ip_permission['ipProtocol'] == 'tcp' &&
+ ip_permission['toPort'] == 22
+ end
+
+ unless authorized
+ security_group.authorize_port_range(22..22)
+ end
+ end
+ end
end
end
end
diff --git a/lib/fog/aws/models/compute/snapshot.rb b/lib/fog/aws/models/compute/snapshot.rb
index be0a45a..7b512f1 100644
--- a/lib/fog/aws/models/compute/snapshot.rb
+++ b/lib/fog/aws/models/compute/snapshot.rb
@@ -3,12 +3,11 @@ require 'fog/core/model'
module Fog
module Compute
class AWS
-
class Snapshot < Fog::Model
-
identity :id, :aliases => 'snapshotId'
attribute :description
+ attribute :encrypted
attribute :progress
attribute :created_at, :aliases => 'startTime'
attribute :owner_id, :aliases => 'ownerId'
@@ -48,9 +47,7 @@ module Fog
def volume=(new_volume)
self.volume_id = new_volume.volume_id
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/snapshots.rb b/lib/fog/aws/models/compute/snapshots.rb
index 0b97dbb..e3d3e7e 100644
--- a/lib/fog/aws/models/compute/snapshots.rb
+++ b/lib/fog/aws/models/compute/snapshots.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/compute/snapshot'
module Fog
module Compute
class AWS
-
class Snapshots < Fog::Collection
-
attribute :filters
attribute :volume
@@ -44,9 +42,7 @@ module Fog
super
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/spot_request.rb b/lib/fog/aws/models/compute/spot_request.rb
index cfa46d8..cd7879d 100644
--- a/lib/fog/aws/models/compute/spot_request.rb
+++ b/lib/fog/aws/models/compute/spot_request.rb
@@ -3,9 +3,7 @@ require 'fog/compute/models/server'
module Fog
module Compute
class AWS
-
class SpotRequest < Fog::Compute::Server
-
identity :id, :aliases => 'spotInstanceRequestId'
attribute :price, :aliases => 'spotPrice'
@@ -115,7 +113,6 @@ module Fog
spot_instance_request.merge(options)
merge_attributes( spot_instance_request )
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/spot_requests.rb b/lib/fog/aws/models/compute/spot_requests.rb
index ff9d07e..21fe0a1 100644
--- a/lib/fog/aws/models/compute/spot_requests.rb
+++ b/lib/fog/aws/models/compute/spot_requests.rb
@@ -5,7 +5,6 @@ module Fog
module Compute
class AWS
class SpotRequests < Fog::Collection
-
attribute :filters
model Fog::Compute::AWS::SpotRequest
@@ -50,7 +49,7 @@ module Fog
# make sure port 22 is open in the first security group
security_group = service.security_groups.get(spot_request.groups.first)
- authorized = security_group.ip_permissions.detect do |ip_permission|
+ authorized = security_group.ip_permissions.find do |ip_permission|
ip_permission['ipRanges'].first && ip_permission['ipRanges'].first['cidrIp'] == '0.0.0.0/0' &&
ip_permission['fromPort'] == 22 &&
ip_permission['ipProtocol'] == 'tcp' &&
@@ -64,13 +63,10 @@ module Fog
Fog.wait_for { spot_request.reload.ready? rescue nil }
server = service.servers.get(spot_request.instance_id)
if spot_request.tags
- for key, value in spot_request.tags
- service.tags.create(
- :key => key,
- :resource_id => spot_request.instance_id,
- :value => value
- )
- end
+ service.create_tags(
+ spot_request.instance_id,
+ spot_request.tags
+ )
end
server.wait_for { ready? }
server.setup(:key_data => [spot_request.private_key])
@@ -84,7 +80,6 @@ module Fog
rescue Fog::Errors::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/subnet.rb b/lib/fog/aws/models/compute/subnet.rb
index 9e5ab43..d515fab 100644
--- a/lib/fog/aws/models/compute/subnet.rb
+++ b/lib/fog/aws/models/compute/subnet.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class AWS
-
class Subnet < Fog::Model
-
identity :subnet_id, :aliases => 'subnetId'
attribute :state
attribute :vpc_id, :aliases => 'vpcId'
@@ -13,6 +11,7 @@ module Fog
attribute :available_ip_address_count, :aliases => 'availableIpAddressCount'
attribute :availability_zone, :aliases => 'availabilityZone'
attribute :tag_set, :aliases => 'tagSet'
+ attribute :map_public_ip_on_launch, :aliases => 'mapPublicIpOnLaunch'
def ready?
requires :state
@@ -56,7 +55,6 @@ module Fog
true
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/subnets.rb b/lib/fog/aws/models/compute/subnets.rb
index 0b74d98..cc7fb74 100644
--- a/lib/fog/aws/models/compute/subnets.rb
+++ b/lib/fog/aws/models/compute/subnets.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/compute/subnet'
module Fog
module Compute
class AWS
-
class Subnets < Fog::Collection
-
attribute :filters
model Fog::Compute::AWS::Subnet
@@ -91,9 +89,7 @@ module Fog
self.class.new(:service => service).all('subnet-id' => subnet_id).first
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/tag.rb b/lib/fog/aws/models/compute/tag.rb
index c41423c..e9eae78 100644
--- a/lib/fog/aws/models/compute/tag.rb
+++ b/lib/fog/aws/models/compute/tag.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class AWS
-
class Tag < Fog::Model
-
identity :key
attribute :value
@@ -27,7 +25,6 @@ module Fog
service.create_tags(resource_id, key => value)
true
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/tags.rb b/lib/fog/aws/models/compute/tags.rb
index 632e40c..4574da5 100644
--- a/lib/fog/aws/models/compute/tags.rb
+++ b/lib/fog/aws/models/compute/tags.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/compute/tag'
module Fog
module Compute
class AWS
-
class Tags < Fog::Collection
-
attribute :filters
model Fog::Compute::AWS::Tag
@@ -28,7 +26,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/volume.rb b/lib/fog/aws/models/compute/volume.rb
index 944a5d0..5b58737 100644
--- a/lib/fog/aws/models/compute/volume.rb
+++ b/lib/fog/aws/models/compute/volume.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class AWS
-
class Volume < Fog::Model
-
identity :id, :aliases => 'volumeId'
attribute :attached_at, :aliases => 'attachTime'
@@ -16,6 +14,7 @@ module Fog
attribute :iops
attribute :server_id, :aliases => 'instanceId'
attribute :size
+ attribute :encrypted
attribute :snapshot_id, :aliases => 'snapshotId'
attribute :state, :aliases => 'status'
attribute :tags, :aliases => 'tagSet'
@@ -47,20 +46,17 @@ module Fog
requires :iops
end
- data = service.create_volume(availability_zone, size, 'SnapshotId' => snapshot_id, 'VolumeType' => type, 'Iops' => iops).body
+ data = service.create_volume(availability_zone, size, 'SnapshotId' => snapshot_id, 'VolumeType' => type, 'Iops' => iops, 'Encrypted' => encrypted).body
new_attributes = data.reject {|key,value| key == 'requestId'}
merge_attributes(new_attributes)
if tags = self.tags
# expect eventual consistency
Fog.wait_for { self.reload rescue nil }
- for key, value in (self.tags = tags)
- service.tags.create(
- :key => key,
- :resource_id => self.identity,
- :value => value
- )
- end
+ service.create_tags(
+ self.identity,
+ tags
+ )
end
if @server
@@ -124,7 +120,6 @@ module Fog
reload
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/volumes.rb b/lib/fog/aws/models/compute/volumes.rb
index 15e87b4..bb47b4a 100644
--- a/lib/fog/aws/models/compute/volumes.rb
+++ b/lib/fog/aws/models/compute/volumes.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/compute/volume'
module Fog
module Compute
class AWS
-
class Volumes < Fog::Collection
-
attribute :filters
attribute :server
@@ -113,9 +111,7 @@ module Fog
super
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/vpc.rb b/lib/fog/aws/models/compute/vpc.rb
index aa484eb..ebf2350 100644
--- a/lib/fog/aws/models/compute/vpc.rb
+++ b/lib/fog/aws/models/compute/vpc.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class AWS
-
class VPC < Fog::Model
-
identity :id, :aliases => 'vpcId'
attribute :state
@@ -57,12 +55,21 @@ module Fog
data = service.create_vpc(cidr_block).body['vpcSet'].first
new_attributes = data.reject {|key,value| key == 'requestId'}
+ new_attributes = data.reject {|key,value| key == 'requestId' || key == 'tagSet' }
merge_attributes(new_attributes)
+
+ if tags = self.tags
+ # expect eventual consistency
+ Fog.wait_for { self.reload rescue nil }
+ service.create_tags(
+ self.identity,
+ tags
+ )
+ end
+
true
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/compute/vpcs.rb b/lib/fog/aws/models/compute/vpcs.rb
index 612a90c..da17710 100644
--- a/lib/fog/aws/models/compute/vpcs.rb
+++ b/lib/fog/aws/models/compute/vpcs.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/compute/vpc'
module Fog
module Compute
class AWS
-
class Vpcs < Fog::Collection
-
attribute :filters
model Fog::Compute::AWS::VPC
@@ -85,9 +83,7 @@ module Fog
self.class.new(:service => service).all('vpc-id' => vpc_id).first
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/data_pipeline/pipeline.rb b/lib/fog/aws/models/data_pipeline/pipeline.rb
index 03931d1..54f516d 100644
--- a/lib/fog/aws/models/data_pipeline/pipeline.rb
+++ b/lib/fog/aws/models/data_pipeline/pipeline.rb
@@ -3,19 +3,17 @@ require 'fog/core/model'
module Fog
module AWS
class DataPipeline
-
class Pipeline < Fog::Model
-
identity :id, :aliases => 'pipelineId'
attribute :name
attribute :description
+ attribute :tags
attribute :user_id, :aliases => 'userId'
attribute :account_id, :aliases => 'accountId'
attribute :state, :aliases => 'pipelineState'
attribute :unique_id, :aliases => 'uniqueId'
def initialize(attributes={})
-
# Extract the 'fields' portion of a response to attributes
if attributes.include?('fields')
string_fields = attributes['fields'].select { |f| f.include?('stringValue') }
@@ -30,7 +28,7 @@ module Fog
requires :name
requires :unique_id
- data = service.create_pipeline(unique_id, name)
+ data = service.create_pipeline(unique_id, name, nil, tags)
merge_attributes(data)
true
@@ -59,9 +57,7 @@ module Fog
true
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/data_pipeline/pipelines.rb b/lib/fog/aws/models/data_pipeline/pipelines.rb
index 332380a..5ef0420 100644
--- a/lib/fog/aws/models/data_pipeline/pipelines.rb
+++ b/lib/fog/aws/models/data_pipeline/pipelines.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/data_pipeline/pipeline'
module Fog
module AWS
class DataPipeline
-
class Pipelines < Fog::Collection
-
model Fog::AWS::DataPipeline::Pipeline
def all
@@ -29,7 +27,6 @@ module Fog
nil
end
-
end
end
end
diff --git a/lib/fog/aws/models/dns/record.rb b/lib/fog/aws/models/dns/record.rb
index f2398e9..f1ee6b5 100644
--- a/lib/fog/aws/models/dns/record.rb
+++ b/lib/fog/aws/models/dns/record.rb
@@ -3,24 +3,26 @@ require 'fog/core/model'
module Fog
module DNS
class AWS
-
class Record < Fog::Model
extend Fog::Deprecation
deprecate :ip, :value
deprecate :ip=, :value=
- identity :name, :aliases => ['Name']
-
- attribute :value, :aliases => ['ResourceRecords']
- attribute :ttl, :aliases => ['TTL']
- attribute :type, :aliases => ['Type']
- attribute :status, :aliases => ['Status']
- attribute :created_at, :aliases => ['SubmittedAt']
- attribute :alias_target, :aliases => ['AliasTarget']
- attribute :change_id, :aliases => ['Id']
- attribute :region, :aliases => ['Region']
- attribute :weight, :aliases => ['Weight']
- attribute :set_identifier,:aliases => ['SetIdentifier']
+ identity :name, :aliases => ['Name']
+
+ attribute :value, :aliases => ['ResourceRecords']
+ attribute :ttl, :aliases => ['TTL']
+ attribute :type, :aliases => ['Type']
+ attribute :status, :aliases => ['Status']
+ attribute :created_at, :aliases => ['SubmittedAt']
+ attribute :alias_target, :aliases => ['AliasTarget']
+ attribute :change_id, :aliases => ['Id']
+ attribute :region, :aliases => ['Region']
+ attribute :weight, :aliases => ['Weight']
+ attribute :set_identifier, :aliases => ['SetIdentifier']
+ attribute :failover, :aliases => ['Failover']
+ attribute :geo_location, :aliases => ['GeoLocation']
+ attribute :health_check_id, :aliases => ['HealthCheckId']
def initialize(attributes={})
super
@@ -97,7 +99,10 @@ module Fog
:type => type,
:weight => weight,
:set_identifier => set_identifier,
- :region => region
+ :region => region,
+ :failover => failover,
+ :geo_location => geo_location,
+ :health_check_id => health_check_id
}
unless self.alias_target
requires :ttl
@@ -105,9 +110,7 @@ module Fog
end
options
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/dns/records.rb b/lib/fog/aws/models/dns/records.rb
index f0cffb8..13a0818 100644
--- a/lib/fog/aws/models/dns/records.rb
+++ b/lib/fog/aws/models/dns/records.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/dns/record'
module Fog
module DNS
class AWS
-
class Records < Fog::Collection
-
attribute :is_truncated, :aliases => ['IsTruncated']
attribute :max_items, :aliases => ['MaxItems']
attribute :name
@@ -30,7 +28,7 @@ module Fog
data = service.list_resource_record_sets(zone.id, options).body
# NextRecordIdentifier is completely absent instead of nil, so set to nil, or iteration breaks.
- data['NextRecordIdentifier'] = nil unless data.has_key?('NextRecordIdentifier')
+ data['NextRecordIdentifier'] = nil unless data.key?('NextRecordIdentifier')
merge_attributes(data.reject {|key, value| !['IsTruncated', 'MaxItems', 'NextRecordName', 'NextRecordType', 'NextRecordIdentifier'].include?(key)})
load(data['ResourceRecordSets'])
@@ -57,7 +55,7 @@ module Fog
batch = service.list_resource_record_sets(zone.id, options).body
# NextRecordIdentifier is completely absent instead of nil, so set to nil, or iteration breaks.
- batch['NextRecordIdentifier'] = nil unless batch.has_key?('NextRecordIdentifier')
+ batch['NextRecordIdentifier'] = nil unless batch.key?('NextRecordIdentifier')
merge_attributes(batch.reject {|key, value| !['IsTruncated', 'MaxItems', 'NextRecordName', 'NextRecordType', 'NextRecordIdentifier'].include?(key)})
@@ -116,9 +114,7 @@ module Fog
requires :zone
super({ :zone => zone }.merge!(attributes))
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/dns/zone.rb b/lib/fog/aws/models/dns/zone.rb
index 31508d5..aee0ede 100644
--- a/lib/fog/aws/models/dns/zone.rb
+++ b/lib/fog/aws/models/dns/zone.rb
@@ -4,9 +4,7 @@ require 'fog/core/model'
module Fog
module DNS
class AWS
-
class Zone < Fog::Model
-
identity :id, :aliases => 'Id'
attribute :caller_reference, :aliases => 'CallerReference'
@@ -45,9 +43,7 @@ module Fog
define_method(:HostedZone=) do |new_hosted_zone|
merge_attributes(new_hosted_zone)
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/dns/zones.rb b/lib/fog/aws/models/dns/zones.rb
index 29a2216..cffccbc 100644
--- a/lib/fog/aws/models/dns/zones.rb
+++ b/lib/fog/aws/models/dns/zones.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/dns/zone'
module Fog
module DNS
class AWS
-
class Zones < Fog::Collection
-
attribute :marker, :aliases => 'Marker'
attribute :max_items, :aliases => 'MaxItems'
@@ -25,9 +23,7 @@ module Fog
rescue Excon::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/elasticache/cluster.rb b/lib/fog/aws/models/elasticache/cluster.rb
index 1d12440..37254e6 100644
--- a/lib/fog/aws/models/elasticache/cluster.rb
+++ b/lib/fog/aws/models/elasticache/cluster.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module AWS
class Elasticache
-
class Cluster < Fog::Model
# simple attributes
identity :id, :aliases => 'CacheClusterId'
@@ -18,22 +17,14 @@ module Fog
attribute :maintenance_window, :aliases => 'PreferredMaintenanceWindow'
# complex attributes
attribute :nodes, :aliases => 'CacheNodes', :type => :array
- attribute :parameter_group,
- :aliases => 'CacheParameterGroup', :type => :hash
- attribute :pending_values,
- :aliases => 'PendingModifiedValues', :type => :hash
- attribute :create_time,
- :aliases => 'CacheClusterCreateTime', :type => :date_time
- attribute :security_groups,
- :aliases => 'CacheSecurityGroups', :type => :array
- attribute :notification_config,
- :aliases => 'NotificationConfiguration', :type => :hash
- attribute :cache_subnet_group_name,
- :aliases => 'CacheSubnetGroupName'
- attribute :vpc_security_groups,
- :aliases => 'VpcSecurityGroups', :type => :array
- attribute :s3_snapshot_location,
- :aliases => 'SnapshotArns', :type => :array
+ attribute :parameter_group, :aliases => 'CacheParameterGroup'
+ attribute :pending_values, :aliases => 'PendingModifiedValues'
+ attribute :create_time, :aliases => 'CacheClusterCreateTime', :type => :timestamp
+ attribute :security_groups, :aliases => 'CacheSecurityGroups', :type => :array
+ attribute :notification_config, :aliases => 'NotificationConfiguration'
+ attribute :cache_subnet_group_name, :aliases => 'CacheSubnetGroupName'
+ attribute :vpc_security_groups, :aliases => 'VpcSecurityGroups', :type => :array
+ attribute :s3_snapshot_location, :aliases => 'SnapshotArns', :type => :array
attr_accessor :parameter_group_name
@@ -72,9 +63,7 @@ module Fog
}
)
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/elasticache/clusters.rb b/lib/fog/aws/models/elasticache/clusters.rb
index 0ef7490..41f8dcd 100644
--- a/lib/fog/aws/models/elasticache/clusters.rb
+++ b/lib/fog/aws/models/elasticache/clusters.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/elasticache/cluster'
module Fog
module AWS
class Elasticache
-
class Clusters < Fog::Collection
model Fog::AWS::Elasticache::Cluster
@@ -25,7 +24,6 @@ module Fog
rescue Fog::AWS::Elasticache::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/elasticache/parameter_group.rb b/lib/fog/aws/models/elasticache/parameter_group.rb
index 93c44a3..2d31c01 100644
--- a/lib/fog/aws/models/elasticache/parameter_group.rb
+++ b/lib/fog/aws/models/elasticache/parameter_group.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module AWS
class Elasticache
-
class ParameterGroup < Fog::Model
-
identity :id, :aliases => 'CacheParameterGroupName'
attribute :description, :aliases => 'Description'
attribute :family, :aliases => 'CacheParameterGroupFamily'
@@ -24,9 +22,7 @@ module Fog
family = 'memcached1.4'
)
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/elasticache/parameter_groups.rb b/lib/fog/aws/models/elasticache/parameter_groups.rb
index 3b9848c..caa8c1f 100644
--- a/lib/fog/aws/models/elasticache/parameter_groups.rb
+++ b/lib/fog/aws/models/elasticache/parameter_groups.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/elasticache/parameter_group'
module Fog
module AWS
class Elasticache
-
class ParameterGroups < Fog::Collection
model Fog::AWS::Elasticache::ParameterGroup
@@ -24,7 +23,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/elasticache/security_group.rb b/lib/fog/aws/models/elasticache/security_group.rb
index d216625..45623b8 100644
--- a/lib/fog/aws/models/elasticache/security_group.rb
+++ b/lib/fog/aws/models/elasticache/security_group.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module AWS
class Elasticache
-
class SecurityGroup < Fog::Model
-
identity :id, :aliases => 'CacheSecurityGroupName'
attribute :description, :aliases => 'Description'
attribute :ec2_groups, :aliases => 'EC2SecurityGroups', :type => :array
@@ -44,9 +42,7 @@ module Fog
)
merge_attributes(data.body['CacheSecurityGroup'])
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/elasticache/security_groups.rb b/lib/fog/aws/models/elasticache/security_groups.rb
index 6a76db5..e2d81f1 100644
--- a/lib/fog/aws/models/elasticache/security_groups.rb
+++ b/lib/fog/aws/models/elasticache/security_groups.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/elasticache/security_group'
module Fog
module AWS
class Elasticache
-
class SecurityGroups < Fog::Collection
model Fog::AWS::Elasticache::SecurityGroup
@@ -24,7 +23,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/elasticache/subnet_group.rb b/lib/fog/aws/models/elasticache/subnet_group.rb
index fc354a6..589a31f 100644
--- a/lib/fog/aws/models/elasticache/subnet_group.rb
+++ b/lib/fog/aws/models/elasticache/subnet_group.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module AWS
class Elasticache
-
class SubnetGroup < Fog::Model
-
identity :id, :aliases => ['CacheSubnetGroupName', :name]
attribute :description, :aliases => 'CacheSubnetGroupDescription'
attribute :vpc_id, :aliases => 'VpcId'
@@ -28,7 +26,6 @@ module Fog
service.delete_cache_subnet_group(id)
true
end
-
end
end
end
diff --git a/lib/fog/aws/models/elasticache/subnet_groups.rb b/lib/fog/aws/models/elasticache/subnet_groups.rb
index bd07838..e457a0f 100644
--- a/lib/fog/aws/models/elasticache/subnet_groups.rb
+++ b/lib/fog/aws/models/elasticache/subnet_groups.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/elasticache/subnet_group'
module Fog
module AWS
class Elasticache
-
class SubnetGroups < Fog::Collection
-
model Fog::AWS::Elasticache::SubnetGroup
def all
@@ -20,7 +18,6 @@ module Fog
rescue Fog::AWS::Elasticache::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/aws/models/elb/backend_server_descriptions.rb b/lib/fog/aws/models/elb/backend_server_descriptions.rb
index 2f8ffd7..1463ce2 100644
--- a/lib/fog/aws/models/elb/backend_server_descriptions.rb
+++ b/lib/fog/aws/models/elb/backend_server_descriptions.rb
@@ -3,7 +3,6 @@ module Fog
module AWS
class ELB
class BackendServerDescriptions < Fog::Collection
-
model Fog::AWS::ELB::BackendServerDescription
attr_accessor :data, :load_balancer
@@ -13,9 +12,8 @@ module Fog
end
def get(instance_port)
- all.detect{|e| e.instance_port == instance_port}
+ all.find{|e| e.instance_port == instance_port}
end
-
end
end
end
diff --git a/lib/fog/aws/models/elb/listener.rb b/lib/fog/aws/models/elb/listener.rb
index fced397..d999509 100644
--- a/lib/fog/aws/models/elb/listener.rb
+++ b/lib/fog/aws/models/elb/listener.rb
@@ -3,7 +3,6 @@ module Fog
module AWS
class ELB
class Listener < Fog::Model
-
attribute :policy_names, :aliases => 'PolicyNames'
attribute :instance_port, :aliases => 'InstancePort'
attribute :instance_protocol, :aliases => 'InstanceProtocol'
@@ -51,9 +50,7 @@ module Fog
'SSLCertificateId' => ssl_id
}
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/elb/listeners.rb b/lib/fog/aws/models/elb/listeners.rb
index 4da392d..98b0201 100644
--- a/lib/fog/aws/models/elb/listeners.rb
+++ b/lib/fog/aws/models/elb/listeners.rb
@@ -3,7 +3,6 @@ module Fog
module AWS
class ELB
class Listeners < Fog::Collection
-
model Fog::AWS::ELB::Listener
attr_accessor :data, :load_balancer
@@ -13,7 +12,7 @@ module Fog
end
def get(lb_port)
- all.detect{|listener| listener.lb_port == lb_port}
+ all.find{|listener| listener.lb_port == lb_port}
end
private
@@ -25,7 +24,6 @@ module Fog
description['Listener'].merge('PolicyNames' => description['PolicyNames'])
}
end
-
end
end
end
diff --git a/lib/fog/aws/models/elb/load_balancer.rb b/lib/fog/aws/models/elb/load_balancer.rb
index b42aef2..36c5474 100644
--- a/lib/fog/aws/models/elb/load_balancer.rb
+++ b/lib/fog/aws/models/elb/load_balancer.rb
@@ -2,9 +2,7 @@ require 'fog/core/model'
module Fog
module AWS
class ELB
-
class LoadBalancer < Fog::Model
-
identity :id, :aliases => 'LoadBalancerName'
attribute :availability_zones, :aliases => 'AvailabilityZones'
attribute :created_at, :aliases => 'CreatedTime'
@@ -35,6 +33,23 @@ module Fog
super
end
+ def connection_draining?
+ requires :id
+ service.describe_load_balancer_attributes(id).body['DescribeLoadBalancerAttributesResult']['LoadBalancerAttributes']['ConnectionDraining']['Enabled']
+ end
+
+ def connection_draining_timeout
+ requires :id
+ service.describe_load_balancer_attributes(id).body['DescribeLoadBalancerAttributesResult']['LoadBalancerAttributes']['ConnectionDraining']['Timeout']
+ end
+
+ def set_connection_draining(enabled, timeout=nil)
+ requires :id
+ attrs = {'Enabled' => enabled}
+ attrs['Timeout'] = timeout if timeout
+ service.modify_load_balancer_attributes(id, 'ConnectionDraining' => attrs)
+ end
+
def cross_zone_load_balancing?
requires :id
service.describe_load_balancer_attributes(id).body['DescribeLoadBalancerAttributesResult']['LoadBalancerAttributes']['CrossZoneLoadBalancing']['Enabled']
@@ -189,7 +204,6 @@ module Fog
requires :id
service.delete_load_balancer(id)
end
-
end
end
end
diff --git a/lib/fog/aws/models/elb/load_balancers.rb b/lib/fog/aws/models/elb/load_balancers.rb
index ec63543..889e44a 100644
--- a/lib/fog/aws/models/elb/load_balancers.rb
+++ b/lib/fog/aws/models/elb/load_balancers.rb
@@ -31,7 +31,6 @@ module Fog
rescue Fog::AWS::ELB::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/aws/models/elb/policies.rb b/lib/fog/aws/models/elb/policies.rb
index d8de70d..fa613c1 100644
--- a/lib/fog/aws/models/elb/policies.rb
+++ b/lib/fog/aws/models/elb/policies.rb
@@ -3,7 +3,6 @@ module Fog
module AWS
class ELB
class Policies < Fog::Collection
-
model Fog::AWS::ELB::Policy
attr_accessor :data, :load_balancer
@@ -13,12 +12,12 @@ module Fog
end
def get(id)
- all.detect{|policy| id == policy.id}
+ all.find{|policy| id == policy.id}
end
private
def munged_data
- data.inject([]){|m,e|
+ data.reduce([]){|m,e|
policy_attribute_descriptions = e["PolicyAttributeDescriptions"]
policy = {
@@ -29,10 +28,10 @@ module Fog
case e["PolicyTypeName"]
when 'AppCookieStickinessPolicyType'
- cookie_name = policy_attribute_descriptions.detect{|h| h['AttributeName'] == 'CookieName'}['AttributeValue']
+ cookie_name = policy_attribute_descriptions.find{|h| h['AttributeName'] == 'CookieName'}['AttributeValue']
policy['CookieName'] = cookie_name if cookie_name
when 'LBCookieStickinessPolicyType'
- cookie_expiration_period = policy_attribute_descriptions.detect{|h| h['AttributeName'] == 'CookieExpirationPeriod'}['AttributeValue'].to_i
+ cookie_expiration_period = policy_attribute_descriptions.find{|h| h['AttributeName'] == 'CookieExpirationPeriod'}['AttributeValue'].to_i
policy['CookieExpirationPeriod'] = cookie_expiration_period if cookie_expiration_period > 0
end
@@ -42,14 +41,12 @@ module Fog
end
def policy_attributes(policy_attribute_descriptions)
- policy_attribute_descriptions.inject({}){|m,e|
+ policy_attribute_descriptions.reduce({}){|m,e|
m[e["AttributeName"]] = e["AttributeValue"]
m
}
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/elb/policy.rb b/lib/fog/aws/models/elb/policy.rb
index a38fde2..5a289dc 100644
--- a/lib/fog/aws/models/elb/policy.rb
+++ b/lib/fog/aws/models/elb/policy.rb
@@ -2,7 +2,6 @@ require 'fog/core/model'
module Fog
module AWS
class ELB
-
class Policy < Fog::Model
identity :id, :aliases => 'PolicyName'
@@ -54,9 +53,7 @@ module Fog
def load_balancer
collection.load_balancer
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/glacier/archive.rb b/lib/fog/aws/models/glacier/archive.rb
index 06505e0..3a8946a 100644
--- a/lib/fog/aws/models/glacier/archive.rb
+++ b/lib/fog/aws/models/glacier/archive.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module AWS
class Glacier
-
class Archive < Fog::Model
-
identity :id
attribute :description
attribute :body
@@ -62,9 +60,7 @@ module Fog
# Complete the upload
service.complete_multipart_upload(vault.id, upload_id, offset, hash.hexdigest).headers['x-amz-archive-id']
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/glacier/archives.rb b/lib/fog/aws/models/glacier/archives.rb
index 5ac9105..59c058e 100644
--- a/lib/fog/aws/models/glacier/archives.rb
+++ b/lib/fog/aws/models/glacier/archives.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/glacier/archive'
module Fog
module AWS
class Glacier
-
class Archives < Fog::Collection
-
model Fog::AWS::Glacier::Archive
attribute :vault
#you can't list a vault's archives
@@ -22,9 +20,7 @@ module Fog
requires :vault
super({ :vault => vault }.merge!(attributes))
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/glacier/job.rb b/lib/fog/aws/models/glacier/job.rb
index df29e2b..54caa51 100644
--- a/lib/fog/aws/models/glacier/job.rb
+++ b/lib/fog/aws/models/glacier/job.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module AWS
class Glacier
-
class Job < Fog::Model
-
ARCHIVE = 'archive-retrieval'
INVENTORY = 'inventory-retrieval'
@@ -26,7 +24,6 @@ module Fog
attribute :format
attribute :type
-
def ready?
completed
end
@@ -58,7 +55,6 @@ module Fog
def vault=(new_vault)
@vault = new_vault
end
-
end
end
end
diff --git a/lib/fog/aws/models/glacier/jobs.rb b/lib/fog/aws/models/glacier/jobs.rb
index b40586d..724b8a3 100644
--- a/lib/fog/aws/models/glacier/jobs.rb
+++ b/lib/fog/aws/models/glacier/jobs.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/glacier/job'
module Fog
module AWS
class Glacier
-
class Jobs < Fog::Collection
-
model Fog::AWS::Glacier::Job
attribute :vault
attribute :filters
@@ -36,10 +34,7 @@ module Fog
requires :vault
super({ :vault => vault }.merge!(attributes))
end
-
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/glacier/vault.rb b/lib/fog/aws/models/glacier/vault.rb
index 0349350..1209668 100644
--- a/lib/fog/aws/models/glacier/vault.rb
+++ b/lib/fog/aws/models/glacier/vault.rb
@@ -5,9 +5,7 @@ require 'fog/aws/models/glacier/jobs'
module Fog
module AWS
class Glacier
-
class Vault < Fog::Model
-
identity :id, :aliases => 'VaultName'
attribute :created_at, :aliases => 'CreationDate', :type => :time
attribute :last_inventory_at, :aliases => 'LastInventoryDate', :type => :time
@@ -46,7 +44,6 @@ module Fog
requires :id
service.delete_vault(id)
end
-
end
end
end
diff --git a/lib/fog/aws/models/glacier/vaults.rb b/lib/fog/aws/models/glacier/vaults.rb
index 186f15e..de7629b 100644
--- a/lib/fog/aws/models/glacier/vaults.rb
+++ b/lib/fog/aws/models/glacier/vaults.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/glacier/vault'
module Fog
module AWS
class Glacier
-
class Vaults < Fog::Collection
-
model Fog::AWS::Glacier::Vault
def all
@@ -20,9 +18,7 @@ module Fog
rescue Excon::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/iam/access_key.rb b/lib/fog/aws/models/iam/access_key.rb
index 1ced5dd..d3928ef 100644
--- a/lib/fog/aws/models/iam/access_key.rb
+++ b/lib/fog/aws/models/iam/access_key.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module AWS
class IAM
-
class AccessKey < Fog::Model
-
identity :id, :aliases => 'AccessKeyId'
attribute :username, :aliases => 'UserName'
attribute :secret_access_key, :aliases => 'SecretAccessKey'
@@ -35,7 +33,6 @@ module Fog
requires :username
service.users.get(username)
end
-
end
end
end
diff --git a/lib/fog/aws/models/iam/access_keys.rb b/lib/fog/aws/models/iam/access_keys.rb
index 4b5181c..8031f08 100644
--- a/lib/fog/aws/models/iam/access_keys.rb
+++ b/lib/fog/aws/models/iam/access_keys.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/iam/access_key'
module Fog
module AWS
class IAM
-
class AccessKeys < Fog::Collection
-
model Fog::AWS::IAM::AccessKey
def initialize(attributes = {})
@@ -28,7 +26,6 @@ module Fog
def new(attributes = {})
super({ :username => @username }.merge!(attributes))
end
-
end
end
end
diff --git a/lib/fog/aws/models/iam/policies.rb b/lib/fog/aws/models/iam/policies.rb
index 87d05be..8c80e7e 100644
--- a/lib/fog/aws/models/iam/policies.rb
+++ b/lib/fog/aws/models/iam/policies.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/iam/policy'
module Fog
module AWS
class IAM
-
class Policies < Fog::Collection
-
model Fog::AWS::IAM::Policy
def initialize(attributes = {})
@@ -15,7 +13,6 @@ module Fog
super
end
-
def all
# AWS method get_user_policy only returns an array of policy names, this is kind of useless,
# that's why it has to loop through the list to get the details of each element. I don't like it because it makes this method slow
@@ -37,7 +34,6 @@ module Fog
def new(attributes = {})
super({ :username => @username }.merge!(attributes))
end
-
end
end
end
diff --git a/lib/fog/aws/models/iam/policy.rb b/lib/fog/aws/models/iam/policy.rb
index 11b4d69..652b691 100644
--- a/lib/fog/aws/models/iam/policy.rb
+++ b/lib/fog/aws/models/iam/policy.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module AWS
class IAM
-
class Policy < Fog::Model
-
identity :id, :aliases => 'PolicyName'
attribute :username, :aliases => 'UserName'
attribute :document, :aliases => 'PolicyDocument'
@@ -32,7 +30,6 @@ module Fog
requires :username
service.users.get(username)
end
-
end
end
end
diff --git a/lib/fog/aws/models/iam/role.rb b/lib/fog/aws/models/iam/role.rb
index d0abea2..458613e 100644
--- a/lib/fog/aws/models/iam/role.rb
+++ b/lib/fog/aws/models/iam/role.rb
@@ -3,21 +3,20 @@ require 'fog/core/model'
module Fog
module AWS
class IAM
-
class Role < Fog::Model
-
+
identity :id, :aliases => 'RoleId'
attribute :rolename, :aliases => 'RoleName'
attribute :create_date, :aliases => 'CreateDate', :type => :time
attribute :assume_role_policy_document, :aliases => 'AssumeRolePolicyDocument'
attribute :arn, :aliases => 'Arn'
attribute :path, :aliases => 'Path'
-
+
def save
raise Fog::Errors::Error.new('Resaving an existing object may create a duplicate') if persisted?
requires :rolename
requires :assume_role_policy_document
-
+
data = service.create_role(rolename, assume_role_policy_document).body["Role"]
merge_attributes(data)
true
@@ -25,12 +24,11 @@ module Fog
def destroy
requires :rolename
-
+
service.delete_role(rolename)
true
end
-
end
end
end
-end
\ No newline at end of file
+end
diff --git a/lib/fog/aws/models/iam/roles.rb b/lib/fog/aws/models/iam/roles.rb
index 906d528..db7c6e1 100644
--- a/lib/fog/aws/models/iam/roles.rb
+++ b/lib/fog/aws/models/iam/roles.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/iam/role'
module Fog
module AWS
class IAM
-
class Roles < Fog::Collection
-
model Fog::AWS::IAM::Role
def initialize(attributes = {})
@@ -28,12 +26,11 @@ module Fog
end
def new(attributes = {})
- if not attributes.has_key?(:assume_role_policy_document)
+ if not attributes.key?(:assume_role_policy_document)
attributes[:assume_role_policy_document] = Fog::AWS::IAM::EC2_ASSUME_ROLE_POLICY.to_s
end
super
end
-
end
end
end
diff --git a/lib/fog/aws/models/iam/user.rb b/lib/fog/aws/models/iam/user.rb
index 3a2011f..04695ab 100644
--- a/lib/fog/aws/models/iam/user.rb
+++ b/lib/fog/aws/models/iam/user.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module AWS
class IAM
-
class User < Fog::Model
-
identity :id, :aliases => 'UserName'
attribute :path, :aliases => 'Path'
attribute :arn, :aliases => 'Arn'
@@ -34,7 +32,6 @@ module Fog
requires :id
service.access_keys(:username => id)
end
-
end
end
end
diff --git a/lib/fog/aws/models/iam/users.rb b/lib/fog/aws/models/iam/users.rb
index 343ded0..cfbc625 100644
--- a/lib/fog/aws/models/iam/users.rb
+++ b/lib/fog/aws/models/iam/users.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/iam/user'
module Fog
module AWS
class IAM
-
class Users < Fog::Collection
-
attribute :is_truncated, :aliases => 'IsTruncated'
attribute :marker, :aliases => 'Marker'
@@ -26,7 +24,7 @@ module Fog
nil
end
- alias :each_user_this_page :each
+ alias_method :each_user_this_page, :each
def each
if !block_given?
diff --git a/lib/fog/aws/models/rds/instance_option.rb b/lib/fog/aws/models/rds/instance_option.rb
index 4db63e7..e38abde 100644
--- a/lib/fog/aws/models/rds/instance_option.rb
+++ b/lib/fog/aws/models/rds/instance_option.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module AWS
class RDS
-
class InstanceOption < Fog::Model
-
attribute :multi_az_capable, :aliases => 'MultiAZCapable', :type => :boolean
attribute :engine, :aliases => 'Engine'
attribute :license_model, :aliases => 'LicenseModel'
@@ -14,7 +12,6 @@ module Fog
attribute :availability_zones, :aliases => 'AvailabilityZones', :type => :array
attribute :db_instance_class, :aliases => 'DBInstanceClass'
attribute :vpc, :aliases => 'Vpc', :type => :boolean
-
end
end
end
diff --git a/lib/fog/aws/models/rds/instance_options.rb b/lib/fog/aws/models/rds/instance_options.rb
index ededf65..12b3a32 100644
--- a/lib/fog/aws/models/rds/instance_options.rb
+++ b/lib/fog/aws/models/rds/instance_options.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/rds/instance_option'
module Fog
module AWS
class RDS
-
class InstanceOptions < Fog::PagedCollection
attribute :filters
attribute :engine
@@ -23,7 +22,6 @@ module Fog
self.filters[:marker] = result['Marker']
load(result['OrderableDBInstanceOptions'])
end
-
end
end
end
diff --git a/lib/fog/aws/models/rds/log_file.rb b/lib/fog/aws/models/rds/log_file.rb
index 2b9e0aa..58a66ec 100644
--- a/lib/fog/aws/models/rds/log_file.rb
+++ b/lib/fog/aws/models/rds/log_file.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module AWS
class RDS
-
class LogFile < Fog::Model
-
attribute :rds_id, :aliases => 'DBInstanceIdentifier'
attribute :name, :aliases => 'LogFileName'
attribute :size, :aliases => 'Size', :type => :integer
@@ -18,9 +16,7 @@ module Fog
result = service.download_db_logfile_portion(self.rds_id, self.name, {:marker => marker})
merge_attributes(result.body['DownloadDBLogFilePortionResult'])
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/rds/log_files.rb b/lib/fog/aws/models/rds/log_files.rb
index ea0c884..7d5bbb2 100644
--- a/lib/fog/aws/models/rds/log_files.rb
+++ b/lib/fog/aws/models/rds/log_files.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/rds/log_file'
module Fog
module AWS
class RDS
-
class LogFiles < Fog::Collection
attribute :filters
attribute :rds_id
@@ -43,7 +42,6 @@ module Fog
end
rescue Fog::AWS::RDS::NotFound
end
-
end
end
end
diff --git a/lib/fog/aws/models/rds/parameter.rb b/lib/fog/aws/models/rds/parameter.rb
index f7bb3af..23b539f 100644
--- a/lib/fog/aws/models/rds/parameter.rb
+++ b/lib/fog/aws/models/rds/parameter.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module AWS
class RDS
-
class Parameter < Fog::Model
-
attribute :name, :aliases => ['ParameterName']
attribute :data_type, :aliases => 'DataType'
attribute :description, :aliases => 'Description'
@@ -14,7 +12,6 @@ module Fog
attribute :modifiable, :aliases => 'IsModifiable'
attribute :apply_type, :aliases => 'ApplyType'
attribute :value, :aliases => 'ParameterValue'
-
end
end
end
diff --git a/lib/fog/aws/models/rds/parameter_group.rb b/lib/fog/aws/models/rds/parameter_group.rb
index e96c8ac..cbceb93 100644
--- a/lib/fog/aws/models/rds/parameter_group.rb
+++ b/lib/fog/aws/models/rds/parameter_group.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module AWS
class RDS
-
class ParameterGroup < Fog::Model
-
identity :id, :aliases => ['DBParameterGroupName', :name]
attribute :family, :aliases => 'DBParameterGroupFamily'
attribute :description, :aliases => 'Description'
@@ -18,7 +16,7 @@ module Fog
end
def modify(changes)
- service.modify_db_parameter_group id, changes.collect {|c| {'ParameterName' => c[:name], 'ParameterValue' => c[:value], 'ApplyMethod' => c[:apply_method]}}
+ service.modify_db_parameter_group id, changes.map {|c| {'ParameterName' => c[:name], 'ParameterValue' => c[:value], 'ApplyMethod' => c[:apply_method]}}
end
def destroy
diff --git a/lib/fog/aws/models/rds/parameter_groups.rb b/lib/fog/aws/models/rds/parameter_groups.rb
index d1c002c..8e74d9d 100644
--- a/lib/fog/aws/models/rds/parameter_groups.rb
+++ b/lib/fog/aws/models/rds/parameter_groups.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/rds/parameter_group'
module Fog
module AWS
class RDS
-
class ParameterGroups < Fog::Collection
-
model Fog::AWS::RDS::ParameterGroup
def all
@@ -20,7 +18,6 @@ module Fog
rescue Fog::AWS::RDS::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/aws/models/rds/parameters.rb b/lib/fog/aws/models/rds/parameters.rb
index 7af8447..c6a5e35 100644
--- a/lib/fog/aws/models/rds/parameters.rb
+++ b/lib/fog/aws/models/rds/parameters.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/rds/parameter'
module Fog
module AWS
class RDS
-
class Parameters < Fog::Collection
attribute :group
attribute :filters
diff --git a/lib/fog/aws/models/rds/security_group.rb b/lib/fog/aws/models/rds/security_group.rb
index 47d9946..4ab35b0 100644
--- a/lib/fog/aws/models/rds/security_group.rb
+++ b/lib/fog/aws/models/rds/security_group.rb
@@ -4,9 +4,7 @@ require 'fog/core/current_machine'
module Fog
module AWS
class RDS
-
class SecurityGroup < Fog::Model
-
identity :id, :aliases => ['DBSecurityGroupName']
attribute :description, :aliases => 'DBSecurityGroupDescription'
attribute :ec2_security_groups, :aliases => 'EC2SecurityGroups', :type => :array
@@ -75,7 +73,6 @@ module Fog
data = service.revoke_db_security_group_ingress(id, opts).body['RevokeDBSecurityGroupIngressResult']['DBSecurityGroup']
merge_attributes(data)
end
-
end
end
end
diff --git a/lib/fog/aws/models/rds/security_groups.rb b/lib/fog/aws/models/rds/security_groups.rb
index 0000a22..1992356 100644
--- a/lib/fog/aws/models/rds/security_groups.rb
+++ b/lib/fog/aws/models/rds/security_groups.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/rds/security_group'
module Fog
module AWS
class RDS
-
class SecurityGroups < Fog::Collection
attribute :server
attribute :filters
@@ -36,7 +35,6 @@ module Fog
def new(attributes = {})
super
end
-
end
end
end
diff --git a/lib/fog/aws/models/rds/server.rb b/lib/fog/aws/models/rds/server.rb
index 770eb5a..8d3bd1d 100644
--- a/lib/fog/aws/models/rds/server.rb
+++ b/lib/fog/aws/models/rds/server.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module AWS
class RDS
-
class Server < Fog::Model
-
identity :id, :aliases => 'DBInstanceIdentifier'
attribute :engine, :aliases => 'Engine'
attribute :engine_version, :aliases => 'EngineVersion'
@@ -81,6 +79,11 @@ module Fog
tags
end
+ def promote_read_replica
+ requires :id
+ service.promote_read_replica(id)
+ end
+
def modify(immediately, options)
options[:security_group_names] ||= options['DBSecurityGroups']
params = self.class.new(options).attributes_to_params
diff --git a/lib/fog/aws/models/rds/servers.rb b/lib/fog/aws/models/rds/servers.rb
index 59cb9d4..d2925dd 100644
--- a/lib/fog/aws/models/rds/servers.rb
+++ b/lib/fog/aws/models/rds/servers.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/rds/server'
module Fog
module AWS
class RDS
-
class Servers < Fog::Collection
-
model Fog::AWS::RDS::Server
def all
@@ -20,7 +18,6 @@ module Fog
rescue Fog::AWS::RDS::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/aws/models/rds/snapshot.rb b/lib/fog/aws/models/rds/snapshot.rb
index 50b980b..0b809a7 100644
--- a/lib/fog/aws/models/rds/snapshot.rb
+++ b/lib/fog/aws/models/rds/snapshot.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module AWS
class RDS
-
class Snapshot < Fog::Model
-
identity :id, :aliases => ['DBSnapshotIdentifier', :name]
attribute :instance_id, :aliases => 'DBInstanceIdentifier'
attribute :created_at, :aliases => 'SnapshotCreateTime', :type => :time
@@ -45,7 +43,6 @@ module Fog
requires :instance_id
service.servers.get(instance_id)
end
-
end
end
end
diff --git a/lib/fog/aws/models/rds/snapshots.rb b/lib/fog/aws/models/rds/snapshots.rb
index 2a1d5ed..3d6a187 100644
--- a/lib/fog/aws/models/rds/snapshots.rb
+++ b/lib/fog/aws/models/rds/snapshots.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/rds/snapshot'
module Fog
module AWS
class RDS
-
class Snapshots < Fog::Collection
attribute :server
attribute :filters
@@ -64,7 +63,6 @@ module Fog
super
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/rds/subnet_group.rb b/lib/fog/aws/models/rds/subnet_group.rb
index b8a48eb..37735f3 100644
--- a/lib/fog/aws/models/rds/subnet_group.rb
+++ b/lib/fog/aws/models/rds/subnet_group.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module AWS
class RDS
-
class SubnetGroup < Fog::Model
-
identity :id, :aliases => ['DBSubnetGroupName', :name]
attribute :description, :aliases => 'DBSubnetGroupDescription'
attribute :status, :aliases => 'SubnetGroupStatus'
@@ -27,7 +25,6 @@ module Fog
requires :id
service.delete_db_subnet_group(id)
end
-
end
end
end
diff --git a/lib/fog/aws/models/rds/subnet_groups.rb b/lib/fog/aws/models/rds/subnet_groups.rb
index 6b5ad6e..b1c76e1 100644
--- a/lib/fog/aws/models/rds/subnet_groups.rb
+++ b/lib/fog/aws/models/rds/subnet_groups.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/rds/subnet_group'
module Fog
module AWS
class RDS
-
class SubnetGroups < Fog::Collection
-
model Fog::AWS::RDS::SubnetGroup
def all
@@ -20,7 +18,6 @@ module Fog
rescue Fog::AWS::RDS::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/aws/models/storage/directories.rb b/lib/fog/aws/models/storage/directories.rb
index 5485d2d..cf1c0f0 100644
--- a/lib/fog/aws/models/storage/directories.rb
+++ b/lib/fog/aws/models/storage/directories.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/storage/directory'
module Fog
module Storage
class AWS
-
class Directories < Fog::Collection
-
model Fog::Storage::AWS::Directory
def all
@@ -35,9 +33,7 @@ module Fog
rescue Excon::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/storage/directory.rb b/lib/fog/aws/models/storage/directory.rb
index cd8b564..814902a 100644
--- a/lib/fog/aws/models/storage/directory.rb
+++ b/lib/fog/aws/models/storage/directory.rb
@@ -5,7 +5,6 @@ require 'fog/aws/models/storage/versions'
module Fog
module Storage
class AWS
-
class Directory < Fog::Model
VALID_ACLS = ['private', 'public-read', 'public-read-write', 'authenticated-read']
@@ -79,7 +78,7 @@ module Fog
def public_url
requires :key
- if service.get_bucket_acl(key).body['AccessControlList'].detect {|grant| grant['Grantee']['URI'] == 'http://acs.amazonaws.com/groups/global/AllUsers' && grant['Permission'] == 'READ'}
+ if service.get_bucket_acl(key).body['AccessControlList'].find {|grant| grant['Grantee']['URI'] == 'http://acs.amazonaws.com/groups/global/AllUsers' && grant['Permission'] == 'READ'}
service.request_url(
:bucket_name => key
)
@@ -121,9 +120,7 @@ module Fog
data = service.get_bucket_location(key)
data.body['LocationConstraint']
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/storage/file.rb b/lib/fog/aws/models/storage/file.rb
index d5396f9..52954a8 100644
--- a/lib/fog/aws/models/storage/file.rb
+++ b/lib/fog/aws/models/storage/file.rb
@@ -4,9 +4,8 @@ require 'fog/aws/models/storage/versions'
module Fog
module Storage
class AWS
-
class File < Fog::Model
- # @see AWS Object docs http://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectOps.html
+ # @see AWS Object docs http://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectOps.html
identity :key, :aliases => 'Key'
@@ -30,14 +29,18 @@ module Fog
# Use small chunk sizes to minimize memory. E.g. 5242880 = 5mb
attr_accessor :multipart_chunk_size
+ def acl
+ requires :directory, :key
+ service.get_object_acl(directory.key, key).body['AccessControlList']
+ end
# Set file's access control list (ACL).
- #
+ #
# valid acls: private, public-read, public-read-write, authenticated-read, bucket-owner-read, bucket-owner-full-control
- #
+ #
# @param [String] new_acl one of valid options
# @return [String] @acl
- #
+ #
def acl=(new_acl)
valid_acls = ['private', 'public-read', 'public-read-write', 'authenticated-read', 'bucket-owner-read', 'bucket-owner-full-control']
unless valid_acls.include?(new_acl)
@@ -46,11 +49,10 @@ module Fog
@acl = new_acl
end
-
# Get file's body if exists, else ' '.
- #
+ #
# @return [File]
- #
+ #
def body
attributes[:body] ||= if last_modified && (file = collection.get(identity))
file.body
@@ -59,35 +61,32 @@ module Fog
end
end
-
# Set body attribute.
- #
+ #
# @param [File] new_body
# @return [File] attributes[:body]
- #
+ #
def body=(new_body)
attributes[:body] = new_body
end
-
# Get the file instance's directory.
- #
+ #
# @return [Fog::AWS::Storage::Directory]
- #
+ #
def directory
@directory
end
-
# Copy object from one bucket to other bucket.
- #
+ #
# required attributes: directory, key
- #
+ #
# @param target_directory_key [String]
# @param target_file_key [String]
# @param options [Hash] options for copy_object method
# @return [String] Fog::AWS::Files#head status of directory contents
- #
+ #
def copy(target_directory_key, target_file_key, options = {})
requires :directory, :key
service.copy_object(directory.key, key, target_directory_key, target_file_key, options)
@@ -95,15 +94,14 @@ module Fog
target_directory.files.head(target_file_key)
end
-
# Destroy file via http DELETE.
- #
+ #
# required attributes: directory, key
- #
+ #
# @param options [Hash]
# @option options versionId []
# @return [Boolean] true if successful
- #
+ #
def destroy(options = {})
requires :directory, :key
attributes[:body] = nil if options['versionId'] == version
@@ -111,19 +109,16 @@ module Fog
true
end
-
remove_method :metadata
def metadata
attributes.reject {|key, value| !(key.to_s =~ /^x-amz-/)}
end
-
remove_method :metadata=
def metadata=(new_metadata)
merge_attributes(new_metadata)
end
-
remove_method :owner=
def owner=(new_owner)
if new_owner
@@ -134,14 +129,17 @@ module Fog
end
end
+ def public?
+ acl.any? {|grant| grant['Grantee']['URI'] == 'http://acs.amazonaws.com/groups/global/AllUsers' && grant['Permission'] == 'READ'}
+ end
# Set Access-Control-List permissions.
- #
+ #
# valid new_publics: public_read, private
- #
+ #
# @param [String] new_public
- # @return [String] new_public
- #
+ # @return [String] new_public
+ #
def public=(new_public)
if new_public
@acl = 'public-read'
@@ -151,18 +149,17 @@ module Fog
new_public
end
-
# Get pubically acessible url via http GET.
- # Checks persmissions before creating.
+ # Checks permissions before creating.
# Defaults to s3 subdomain or compliant bucket name
- #
+ #
# required attributes: directory, key
- #
+ #
# @return [String] public url
- #
+ #
def public_url
requires :directory, :key
- if service.get_object_acl(directory.key, key).body['AccessControlList'].detect {|grant| grant['Grantee']['URI'] == 'http://acs.amazonaws.com/groups/global/AllUsers' && grant['Permission'] == 'READ'}
+ if public?
service.request_url(
:bucket_name => directory.key,
:object_name => key
@@ -173,10 +170,10 @@ module Fog
end
# Save file with body as contents to directory.key with name key via http PUT
- #
+ #
# required attributes: body, directory, key
- #
- # @param [Hash] options
+ #
+ # @param [Hash] options
# @option options [String] acl sets x-amz-acl HTTP header. Valid values include, private | public-read | public-read-write | authenticated-read | bucket-owner-read | bucket-owner-full-control
# @option options [String] cache_control sets Cache-Control header. For example, 'No-cache'
# @option options [String] content_disposition sets Content-Disposition HTTP header. For exampple, 'attachment; filename=testing.txt'
@@ -187,7 +184,7 @@ module Fog
# @option options [String] storage_class sets x-amz-storage-class HTTP header. Defaults to 'STANDARD'. Or, 'REDUCED_REDUNDANCY'
# @option options [String] encryption sets HTTP encryption header. Set to 'AES256' to encrypt files at rest on S3
# @return [Boolean] true if no errors
- #
+ #
def save(options = {})
requires :body, :directory, :key
if options != {}
@@ -217,24 +214,22 @@ module Fog
true
end
-
# Get a url for file.
- #
+ #
# required attributes: key
- #
+ #
# @param expires [String] number of seconds (since 1970-01-01 00:00) before url expires
# @param options [Hash]
# @return [String] url
- #
+ #
def url(expires, options = {})
requires :key
collection.get_url(key, expires, options)
end
-
# File version if exists or creates new version.
- # @return [Fog::Storage::AWS::Version]
- #
+ # @return [Fog::Storage::AWS::Version]
+ #
def versions
@versions ||= begin
Fog::Storage::AWS::Versions.new(
@@ -277,9 +272,7 @@ module Fog
# Complete the upload
service.complete_multipart_upload(directory.key, key, upload_id, part_tags)
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/storage/files.rb b/lib/fog/aws/models/storage/files.rb
index c23cbf8..3498485 100644
--- a/lib/fog/aws/models/storage/files.rb
+++ b/lib/fog/aws/models/storage/files.rb
@@ -4,7 +4,6 @@ require 'fog/aws/models/storage/file'
module Fog
module Storage
class AWS
-
class Files < Fog::Collection
extend Fog::Deprecation
deprecate :get_url, :get_https_url
@@ -41,7 +40,7 @@ module Fog
end
end
- alias :each_file_this_page :each
+ alias_method :each_file_this_page, :each
def each
if !block_given?
self
@@ -114,9 +113,7 @@ module Fog
data.headers['Last-Modified'] = Time.parse(data.get_header('Last-Modified'))
data.headers['ETag'] = data.get_header('ETag').gsub('"','')
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/models/storage/version.rb b/lib/fog/aws/models/storage/version.rb
index 38b355c..9186394 100644
--- a/lib/fog/aws/models/storage/version.rb
+++ b/lib/fog/aws/models/storage/version.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Storage
class AWS
-
class Version < Fog::Model
-
identity :version, :aliases => 'VersionId'
attribute :key, :aliases => 'Key'
@@ -30,7 +28,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/models/storage/versions.rb b/lib/fog/aws/models/storage/versions.rb
index 0d3e59f..2a400d8 100644
--- a/lib/fog/aws/models/storage/versions.rb
+++ b/lib/fog/aws/models/storage/versions.rb
@@ -4,9 +4,7 @@ require 'fog/aws/models/storage/version'
module Fog
module Storage
class AWS
-
class Versions < Fog::Collection
-
attribute :file
attribute :directory
@@ -30,9 +28,7 @@ module Fog
model
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/basic.rb b/lib/fog/aws/parsers/auto_scaling/basic.rb
index df99c54..0f15187 100644
--- a/lib/fog/aws/parsers/auto_scaling/basic.rb
+++ b/lib/fog/aws/parsers/auto_scaling/basic.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class Basic < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -19,9 +17,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/describe_adjustment_types.rb b/lib/fog/aws/parsers/auto_scaling/describe_adjustment_types.rb
index 32bce7f..e50e79a 100644
--- a/lib/fog/aws/parsers/auto_scaling/describe_adjustment_types.rb
+++ b/lib/fog/aws/parsers/auto_scaling/describe_adjustment_types.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class DescribeAdjustmentTypes < Fog::Parsers::Base
-
def reset
reset_adjustment_type
@results = { 'AdjustmentTypes' => [] }
@@ -44,7 +42,6 @@ module Fog
@response['DescribeAdjustmentTypesResult'] = @results
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_groups.rb b/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_groups.rb
index 25435e4..79c48ce 100644
--- a/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_groups.rb
+++ b/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_groups.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class DescribeAutoScalingGroups < Fog::Parsers::Base
-
def reset
reset_auto_scaling_group
reset_enabled_metric
@@ -151,7 +149,6 @@ module Fog
@response['DescribeAutoScalingGroupsResult'] = @results
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_instances.rb b/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_instances.rb
index 905576a..8866bba 100644
--- a/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_instances.rb
+++ b/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_instances.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class DescribeAutoScalingInstances < Fog::Parsers::Base
-
def reset
reset_auto_scaling_instance
@results = { 'AutoScalingInstances' => [] }
@@ -35,7 +33,6 @@ module Fog
@response['DescribeAutoScalingInstancesResult'] = @results
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_notification_types.rb b/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_notification_types.rb
index 739b297..2b2b6df 100644
--- a/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_notification_types.rb
+++ b/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_notification_types.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class DescribeAutoScalingNotificationTypes < Fog::Parsers::Base
-
def reset
@results = { 'AutoScalingNotificationTypes' => [] }
@response = { 'DescribeAutoScalingNotificationTypesResult' => {}, 'ResponseMetadata' => {} }
@@ -35,7 +33,6 @@ module Fog
@response['DescribeAutoScalingNotificationTypesResult'] = @results
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/describe_launch_configurations.rb b/lib/fog/aws/parsers/auto_scaling/describe_launch_configurations.rb
index b01daa9..ab14f7c 100644
--- a/lib/fog/aws/parsers/auto_scaling/describe_launch_configurations.rb
+++ b/lib/fog/aws/parsers/auto_scaling/describe_launch_configurations.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class DescribeLaunchConfigurations < Fog::Parsers::Base
-
def reset
reset_launch_configuration
reset_block_device_mapping
@@ -92,7 +90,6 @@ module Fog
@response['DescribeLaunchConfigurationsResult'] = @results
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/describe_metric_collection_types.rb b/lib/fog/aws/parsers/auto_scaling/describe_metric_collection_types.rb
index d6bc4fc..6e55815 100644
--- a/lib/fog/aws/parsers/auto_scaling/describe_metric_collection_types.rb
+++ b/lib/fog/aws/parsers/auto_scaling/describe_metric_collection_types.rb
@@ -2,15 +2,14 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class DescribeMetricCollectionTypes < Fog::Parsers::Base
-
def reset
reset_granularity
reset_metric
@results = { 'Granularities' => [], 'Metrics' => [] }
@response = { 'DescribeMetricCollectionTypesResult' => {}, 'ResponseMetadata' => {} }
end
+
def reset_granularity
@granularity = {}
end
@@ -58,7 +57,6 @@ module Fog
@response[name] = @results
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/describe_notification_configurations.rb b/lib/fog/aws/parsers/auto_scaling/describe_notification_configurations.rb
index 09aab36..9792aeb 100644
--- a/lib/fog/aws/parsers/auto_scaling/describe_notification_configurations.rb
+++ b/lib/fog/aws/parsers/auto_scaling/describe_notification_configurations.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class DescribeNotificationConfigurations < Fog::Parsers::Base
-
def reset
reset_notification_configuration
@results = { 'NotificationConfigurations' => [] }
@@ -34,7 +32,6 @@ module Fog
@response['DescribeNotificationConfigurationsResult'] = @results
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/describe_policies.rb b/lib/fog/aws/parsers/auto_scaling/describe_policies.rb
index d27b868..a8357c5 100644
--- a/lib/fog/aws/parsers/auto_scaling/describe_policies.rb
+++ b/lib/fog/aws/parsers/auto_scaling/describe_policies.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class DescribePolicies < Fog::Parsers::Base
-
def reset
reset_scaling_policy
reset_alarm
@@ -60,7 +58,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/describe_scaling_activities.rb b/lib/fog/aws/parsers/auto_scaling/describe_scaling_activities.rb
index 14a67db..0c52abb 100644
--- a/lib/fog/aws/parsers/auto_scaling/describe_scaling_activities.rb
+++ b/lib/fog/aws/parsers/auto_scaling/describe_scaling_activities.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class DescribeScalingActivities < Fog::Parsers::Base
-
def reset
reset_activity
@results = { 'Activities' => [] }
@@ -39,7 +37,6 @@ module Fog
@response['DescribeScalingActivitiesResult'] = @results
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/describe_scaling_process_types.rb b/lib/fog/aws/parsers/auto_scaling/describe_scaling_process_types.rb
index 4c9dc6b..0d3feaf 100644
--- a/lib/fog/aws/parsers/auto_scaling/describe_scaling_process_types.rb
+++ b/lib/fog/aws/parsers/auto_scaling/describe_scaling_process_types.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class DescribeScalingProcessTypes < Fog::Parsers::Base
-
def reset
reset_process_type
@results = { 'Processes' => [] }
@@ -44,7 +42,6 @@ module Fog
@response['DescribeScalingProcessTypesResult'] = @results
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/describe_scheduled_actions.rb b/lib/fog/aws/parsers/auto_scaling/describe_scheduled_actions.rb
index f783ad6..ed92657 100644
--- a/lib/fog/aws/parsers/auto_scaling/describe_scheduled_actions.rb
+++ b/lib/fog/aws/parsers/auto_scaling/describe_scheduled_actions.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class DescribeScheduledActions < Fog::Parsers::Base
-
def reset
reset_scheduled_update_group_action
@results = { 'ScheduledUpdateGroupActions' => [] }
@@ -38,7 +36,6 @@ module Fog
@response['DescribeScheduledActionsResult'] = @results
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/describe_tags.rb b/lib/fog/aws/parsers/auto_scaling/describe_tags.rb
index eaf6ed3..27a5500 100644
--- a/lib/fog/aws/parsers/auto_scaling/describe_tags.rb
+++ b/lib/fog/aws/parsers/auto_scaling/describe_tags.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class DescribeTags < Fog::Parsers::Base
-
def reset
reset_tag
@results = { 'Tags' => [] }
@@ -37,9 +35,7 @@ module Fog
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/describe_termination_policy_types.rb b/lib/fog/aws/parsers/auto_scaling/describe_termination_policy_types.rb
index 4bd572d..9b2cc2c 100644
--- a/lib/fog/aws/parsers/auto_scaling/describe_termination_policy_types.rb
+++ b/lib/fog/aws/parsers/auto_scaling/describe_termination_policy_types.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class DescribeTerminationPolicyTypes < Fog::Parsers::Base
-
def reset
@results = { 'TerminationPolicyTypes' => [] }
@response = { 'DescribeTerminationPolicyTypesResult' => {}, 'ResponseMetadata' => {} }
@@ -35,9 +33,7 @@ module Fog
@response['DescribeTerminationPolicyTypesResult'] = @results
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/put_notification_configuration.rb b/lib/fog/aws/parsers/auto_scaling/put_notification_configuration.rb
index 605a99e..eef6a95 100644
--- a/lib/fog/aws/parsers/auto_scaling/put_notification_configuration.rb
+++ b/lib/fog/aws/parsers/auto_scaling/put_notification_configuration.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class PutNotificationConfiguration < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -12,14 +10,13 @@ module Fog
def start_element(name, attrs = [])
super
end
-
+
def end_element(name)
case name
when 'RequestId'
@response['ResponseMetadata'][name] = value
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/put_scaling_policy.rb b/lib/fog/aws/parsers/auto_scaling/put_scaling_policy.rb
index c9ca0cb..4a0b531 100644
--- a/lib/fog/aws/parsers/auto_scaling/put_scaling_policy.rb
+++ b/lib/fog/aws/parsers/auto_scaling/put_scaling_policy.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class PutScalingPolicy < Fog::Parsers::Base
-
def reset
@results = {}
@response = { 'PutScalingPolicyResult' => {}, 'ResponseMetadata' => {} }
@@ -22,7 +20,6 @@ module Fog
@response['PutScalingPolicyResult'] = @results
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/auto_scaling/terminate_instance_in_auto_scaling_group.rb b/lib/fog/aws/parsers/auto_scaling/terminate_instance_in_auto_scaling_group.rb
index 9c4b918..ebc63aa 100644
--- a/lib/fog/aws/parsers/auto_scaling/terminate_instance_in_auto_scaling_group.rb
+++ b/lib/fog/aws/parsers/auto_scaling/terminate_instance_in_auto_scaling_group.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module AutoScaling
-
class TerminateInstanceInAutoScalingGroup < Fog::Parsers::Base
-
def reset
@results = { 'Activity' => {} }
@response = { 'TerminateInstanceInAutoScalingGroupResult' => {}, 'ResponseMetadata' => {} }
@@ -27,7 +25,6 @@ module Fog
@response['TerminateInstanceInAutoScalingGroupResult'] = @results
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/check_dns_availability.rb b/lib/fog/aws/parsers/beanstalk/check_dns_availability.rb
index a996c8f..06192e9 100644
--- a/lib/fog/aws/parsers/beanstalk/check_dns_availability.rb
+++ b/lib/fog/aws/parsers/beanstalk/check_dns_availability.rb
@@ -2,18 +2,15 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class CheckDNSAvailability < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("CheckDNSAvailabilityResult")
tag 'FullyQualifiedCNAME', :string
tag 'Available', :boolean
end
end
-
end
end
end
-end
\ No newline at end of file
+end
diff --git a/lib/fog/aws/parsers/beanstalk/create_application.rb b/lib/fog/aws/parsers/beanstalk/create_application.rb
index 0eee645..81bdd6d 100644
--- a/lib/fog/aws/parsers/beanstalk/create_application.rb
+++ b/lib/fog/aws/parsers/beanstalk/create_application.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class CreateApplication < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("CreateApplicationResult")
tag 'Application', :object
@@ -16,7 +14,6 @@ module Fog
tag 'DateCreated', :datetime
tag 'DateUpdated', :datetime
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/create_application_version.rb b/lib/fog/aws/parsers/beanstalk/create_application_version.rb
index 968fe3c..d1001f5 100644
--- a/lib/fog/aws/parsers/beanstalk/create_application_version.rb
+++ b/lib/fog/aws/parsers/beanstalk/create_application_version.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class CreateApplicationVersion < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("CreateApplicationVersionResult")
tag 'ApplicationVersion', :object
@@ -18,7 +16,6 @@ module Fog
tag 'S3Key', :string
tag 'VersionLabel', :string
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/create_configuration_template.rb b/lib/fog/aws/parsers/beanstalk/create_configuration_template.rb
index 6518784..563768b 100644
--- a/lib/fog/aws/parsers/beanstalk/create_configuration_template.rb
+++ b/lib/fog/aws/parsers/beanstalk/create_configuration_template.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class CreateConfigurationTemplate < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("CreateConfigurationTemplateResult")
tag 'ApplicationName', :string
@@ -21,7 +19,6 @@ module Fog
tag 'SolutionStackName', :string
tag 'TemplateName', :string
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/create_environment.rb b/lib/fog/aws/parsers/beanstalk/create_environment.rb
index a2dd2f4..3ff53f7 100644
--- a/lib/fog/aws/parsers/beanstalk/create_environment.rb
+++ b/lib/fog/aws/parsers/beanstalk/create_environment.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class CreateEnvironment < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("CreateEnvironmentResult")
tag 'ApplicationName', :string
@@ -29,7 +27,6 @@ module Fog
tag 'TemplateName', :string
tag 'VersionLabel', :string
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/create_storage_location.rb b/lib/fog/aws/parsers/beanstalk/create_storage_location.rb
index 47475cf..9530a88 100644
--- a/lib/fog/aws/parsers/beanstalk/create_storage_location.rb
+++ b/lib/fog/aws/parsers/beanstalk/create_storage_location.rb
@@ -2,15 +2,12 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class CreateStorageLocation < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("CreateStorageLocationResult")
tag 'S3Bucket', :string
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/describe_application_versions.rb b/lib/fog/aws/parsers/beanstalk/describe_application_versions.rb
index 0f6ae5c..6da6f5b 100644
--- a/lib/fog/aws/parsers/beanstalk/describe_application_versions.rb
+++ b/lib/fog/aws/parsers/beanstalk/describe_application_versions.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class DescribeApplicationVersions < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("DescribeApplicationVersionsResult")
tag 'ApplicationVersions', :object, :list
@@ -18,7 +16,6 @@ module Fog
tag 'S3Key', :string
tag 'VersionLabel', :string
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/describe_applications.rb b/lib/fog/aws/parsers/beanstalk/describe_applications.rb
index c6849f3..55a6efb 100644
--- a/lib/fog/aws/parsers/beanstalk/describe_applications.rb
+++ b/lib/fog/aws/parsers/beanstalk/describe_applications.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class DescribeApplications < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("DescribeApplicationsResult")
tag 'Applications', :object, :list
@@ -16,7 +14,6 @@ module Fog
tag 'DateCreated', :datetime
tag 'DateUpdated', :datetime
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/describe_configuration_options.rb b/lib/fog/aws/parsers/beanstalk/describe_configuration_options.rb
index 2c71153..5400a09 100644
--- a/lib/fog/aws/parsers/beanstalk/describe_configuration_options.rb
+++ b/lib/fog/aws/parsers/beanstalk/describe_configuration_options.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class DescribeConfigurationOptions < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("DescribeConfigurationOptionsResult")
tag 'SolutionStackName', :string
@@ -24,7 +22,6 @@ module Fog
tag 'ValueOptions', :string, :list
tag 'ValueType', :string
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/describe_configuration_settings.rb b/lib/fog/aws/parsers/beanstalk/describe_configuration_settings.rb
index ff38b62..78fc145 100644
--- a/lib/fog/aws/parsers/beanstalk/describe_configuration_settings.rb
+++ b/lib/fog/aws/parsers/beanstalk/describe_configuration_settings.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class DescribeConfigurationSettings < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("DescribeConfigurationSettingsResult")
tag 'ConfigurationSettings', :object, :list
@@ -22,7 +20,6 @@ module Fog
tag 'SolutionStackName', :string
tag 'TemplateName', :string
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/describe_environment_resources.rb b/lib/fog/aws/parsers/beanstalk/describe_environment_resources.rb
index 92a5ddf..e3b1bec 100644
--- a/lib/fog/aws/parsers/beanstalk/describe_environment_resources.rb
+++ b/lib/fog/aws/parsers/beanstalk/describe_environment_resources.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class DescribeEnvironmentResources < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("DescribeEnvironmentResourcesResult")
tag 'EnvironmentResources', :object
@@ -29,7 +27,6 @@ module Fog
tag 'VersionLabel', :string
tag 'Triggers', :object, :list
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/describe_environments.rb b/lib/fog/aws/parsers/beanstalk/describe_environments.rb
index 168e984..f690825 100644
--- a/lib/fog/aws/parsers/beanstalk/describe_environments.rb
+++ b/lib/fog/aws/parsers/beanstalk/describe_environments.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class DescribeEnvironments < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("DescribeEnvironmentsResult")
tag 'Environments', :object, :list
@@ -30,7 +28,6 @@ module Fog
tag 'TemplateName', :string
tag 'VersionLabel', :string
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/describe_events.rb b/lib/fog/aws/parsers/beanstalk/describe_events.rb
index 8055a43..6c60d4f 100644
--- a/lib/fog/aws/parsers/beanstalk/describe_events.rb
+++ b/lib/fog/aws/parsers/beanstalk/describe_events.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class DescribeEvents < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("DescribeEventsResult")
tag 'Events', :object, :list
@@ -19,7 +17,6 @@ module Fog
tag 'VersionLabel', :string
tag 'NextToken', :string
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/empty.rb b/lib/fog/aws/parsers/beanstalk/empty.rb
index 19cd7ac..614a8e4 100644
--- a/lib/fog/aws/parsers/beanstalk/empty.rb
+++ b/lib/fog/aws/parsers/beanstalk/empty.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
class Empty < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -15,13 +13,8 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
-
end
end
end
end
end
-
-
-
diff --git a/lib/fog/aws/parsers/beanstalk/list_available_solution_stacks.rb b/lib/fog/aws/parsers/beanstalk/list_available_solution_stacks.rb
index 1faa510..1b45341 100644
--- a/lib/fog/aws/parsers/beanstalk/list_available_solution_stacks.rb
+++ b/lib/fog/aws/parsers/beanstalk/list_available_solution_stacks.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class ListAvailableSolutionStacks < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("ListAvailableSolutionStacksResult")
tag 'SolutionStackDetails', :object, :list
@@ -13,7 +11,6 @@ module Fog
tag 'SolutionStackName', :string
tag 'SolutionStacks', :string, :list
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/parser.rb b/lib/fog/aws/parsers/beanstalk/parser.rb
index 60a2142..aac9e26 100644
--- a/lib/fog/aws/parsers/beanstalk/parser.rb
+++ b/lib/fog/aws/parsers/beanstalk/parser.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
class BaseParser < Fog::Parsers::Base
-
def initialize(result_name)
@result_name = result_name # Set before super, since super calls reset
super()
@@ -18,7 +16,6 @@ module Fog
@parse_stack = [ { :type => :object, :value => @response[@result_name]} ]
end
-
def tag name, *traits
if traits.delete(:list)
@list_tags[name] = true
@@ -29,7 +26,6 @@ module Fog
else
raise "Too many traits specified, only specify :list or a type"
end
-
end
def start_element(name, attrs = [])
@@ -38,7 +34,7 @@ module Fog
if @parse_stack.last[:type] == :object
@parse_stack.last[:value] << {} # Push any empty object
end
- elsif @list_tags.has_key?(name)
+ elsif @list_tags.key?(name)
set_value(name, [], :array) # Set an empty array
@parse_stack.push({ :type => @tags[name], :value => get_parent[name] })
elsif @tags[name] == :object
@@ -56,13 +52,12 @@ module Fog
when 'RequestId'
@response['ResponseMetadata'][name] = value
else
- if @list_tags.has_key?(name) || @tags[name] == :object
+ if @list_tags.key?(name) || @tags[name] == :object
@parse_stack.pop()
- elsif @tags.has_key?(name)
+ elsif @tags.key?(name)
set_value(name, value, @tags[name])
end
end
-
end
def get_parent
@@ -82,12 +77,8 @@ module Fog
get_parent[name] = value
end
end
-
end
end
end
end
end
-
-
-
diff --git a/lib/fog/aws/parsers/beanstalk/retrieve_environment_info.rb b/lib/fog/aws/parsers/beanstalk/retrieve_environment_info.rb
index 7dadf20..0a28683 100644
--- a/lib/fog/aws/parsers/beanstalk/retrieve_environment_info.rb
+++ b/lib/fog/aws/parsers/beanstalk/retrieve_environment_info.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class RetrieveEnvironmentInfo < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("RetrieveEnvironmentInfoResult")
tag 'EnvironmentInfo', :object, :list
@@ -14,7 +12,6 @@ module Fog
tag 'Message', :string
tag 'SampleTimestamp', :datetime
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/terminate_environment.rb b/lib/fog/aws/parsers/beanstalk/terminate_environment.rb
index 73efc09..cf0be2b 100644
--- a/lib/fog/aws/parsers/beanstalk/terminate_environment.rb
+++ b/lib/fog/aws/parsers/beanstalk/terminate_environment.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class TerminateEnvironment < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("TerminateEnvironmentResult")
tag 'ApplicationName', :string
@@ -29,7 +27,6 @@ module Fog
tag 'TemplateName', :string
tag 'VersionLabel', :string
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/update_application.rb b/lib/fog/aws/parsers/beanstalk/update_application.rb
index 98e1055..bc63aa5 100644
--- a/lib/fog/aws/parsers/beanstalk/update_application.rb
+++ b/lib/fog/aws/parsers/beanstalk/update_application.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class UpdateApplication < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("UpdateApplicationResult")
tag 'Application', :object
@@ -16,7 +14,6 @@ module Fog
tag 'DateCreated', :datetime
tag 'DateUpdated', :datetime
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/update_application_version.rb b/lib/fog/aws/parsers/beanstalk/update_application_version.rb
index 16843ea..212cca4 100644
--- a/lib/fog/aws/parsers/beanstalk/update_application_version.rb
+++ b/lib/fog/aws/parsers/beanstalk/update_application_version.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class UpdateApplicationVersion < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("UpdateApplicationVersionResult")
tag 'ApplicationVersion', :object
@@ -18,7 +16,6 @@ module Fog
tag 'S3Key', :string
tag 'VersionLabel', :string
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/update_configuration_template.rb b/lib/fog/aws/parsers/beanstalk/update_configuration_template.rb
index fa97f73..a0bad2b 100644
--- a/lib/fog/aws/parsers/beanstalk/update_configuration_template.rb
+++ b/lib/fog/aws/parsers/beanstalk/update_configuration_template.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class UpdateConfigurationTemplate < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("UpdateConfigurationTemplateResult")
tag 'ApplicationName', :string
@@ -21,7 +19,6 @@ module Fog
tag 'SolutionStackName', :string
tag 'TemplateName', :string
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/update_environment.rb b/lib/fog/aws/parsers/beanstalk/update_environment.rb
index a81bb61..df6259b 100644
--- a/lib/fog/aws/parsers/beanstalk/update_environment.rb
+++ b/lib/fog/aws/parsers/beanstalk/update_environment.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class UpdateEnvironment < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("UpdateEnvironmentResult")
tag 'ApplicationName', :string
@@ -29,7 +27,6 @@ module Fog
tag 'TemplateName', :string
tag 'VersionLabel', :string
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/beanstalk/validate_configuration_settings.rb b/lib/fog/aws/parsers/beanstalk/validate_configuration_settings.rb
index d11d191..a279eac 100644
--- a/lib/fog/aws/parsers/beanstalk/validate_configuration_settings.rb
+++ b/lib/fog/aws/parsers/beanstalk/validate_configuration_settings.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module ElasticBeanstalk
-
require 'fog/aws/parsers/beanstalk/parser'
class ValidateConfigurationSettings < Fog::Parsers::AWS::ElasticBeanstalk::BaseParser
-
def initialize
super("ValidateConfigurationSettingsResult")
tag 'Messages', :object, :list
@@ -14,7 +12,6 @@ module Fog
tag 'OptionName', :string
tag 'Severity', :string
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/cdn/distribution.rb b/lib/fog/aws/parsers/cdn/distribution.rb
index c733d86..e9caa98 100644
--- a/lib/fog/aws/parsers/cdn/distribution.rb
+++ b/lib/fog/aws/parsers/cdn/distribution.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module CDN
module AWS
-
class Distribution < Fog::Parsers::Base
-
def reset
@response = { 'DistributionConfig' => { 'CNAME' => [], 'Logging' => {}, 'TrustedSigners' => [] } }
end
@@ -50,9 +48,7 @@ module Fog
@response['DistributionConfig']['TrustedSigners'] << 'Self'
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/cdn/get_distribution_list.rb b/lib/fog/aws/parsers/cdn/get_distribution_list.rb
index c98c0c0..fdd3df6 100644
--- a/lib/fog/aws/parsers/cdn/get_distribution_list.rb
+++ b/lib/fog/aws/parsers/cdn/get_distribution_list.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module CDN
module AWS
-
class GetDistributionList < Fog::Parsers::Base
-
def reset
@distribution_summary = { 'CNAME' => [], 'TrustedSigners' => [] }
@response = { 'DistributionSummary' => [] }
@@ -52,9 +50,7 @@ module Fog
@response[name] = value.to_i
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/cdn/get_invalidation.rb b/lib/fog/aws/parsers/cdn/get_invalidation.rb
index 1ac738f..54d4181 100644
--- a/lib/fog/aws/parsers/cdn/get_invalidation.rb
+++ b/lib/fog/aws/parsers/cdn/get_invalidation.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module CDN
module AWS
-
class GetInvalidation < Fog::Parsers::Base
-
def reset
@response = { 'InvalidationBatch' => { 'Path' => [] } }
end
@@ -23,9 +21,7 @@ module Fog
@response['InvalidationBatch'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/cdn/get_invalidation_list.rb b/lib/fog/aws/parsers/cdn/get_invalidation_list.rb
index 3706211..44e425e 100644
--- a/lib/fog/aws/parsers/cdn/get_invalidation_list.rb
+++ b/lib/fog/aws/parsers/cdn/get_invalidation_list.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module CDN
module AWS
-
class GetInvalidationList < Fog::Parsers::Base
-
def reset
@invalidation_summary = { }
@response = { 'InvalidationSummary' => [] }
@@ -33,9 +31,7 @@ module Fog
@response[name] = @value.to_i
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/cdn/get_streaming_distribution_list.rb b/lib/fog/aws/parsers/cdn/get_streaming_distribution_list.rb
index 5a3537d..6b51c1b 100644
--- a/lib/fog/aws/parsers/cdn/get_streaming_distribution_list.rb
+++ b/lib/fog/aws/parsers/cdn/get_streaming_distribution_list.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module CDN
module AWS
-
class GetStreamingDistributionList < Fog::Parsers::Base
-
def reset
@distribution_summary = { 'CNAME' => [], 'TrustedSigners' => [] }
@response = { 'StreamingDistributionSummary' => [] }
@@ -50,9 +48,7 @@ module Fog
@response[name] = @value.to_i
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/cdn/post_invalidation.rb b/lib/fog/aws/parsers/cdn/post_invalidation.rb
index 567daba..1ad0efe 100644
--- a/lib/fog/aws/parsers/cdn/post_invalidation.rb
+++ b/lib/fog/aws/parsers/cdn/post_invalidation.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module CDN
module AWS
-
class PostInvalidation < Fog::Parsers::Base
-
def reset
@response = { 'InvalidationBatch' => { 'Path' => [] } }
end
@@ -19,9 +17,7 @@ module Fog
@response['InvalidationBatch'][name] << value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/cdn/streaming_distribution.rb b/lib/fog/aws/parsers/cdn/streaming_distribution.rb
index fb6cd5b..709d5a6 100644
--- a/lib/fog/aws/parsers/cdn/streaming_distribution.rb
+++ b/lib/fog/aws/parsers/cdn/streaming_distribution.rb
@@ -2,9 +2,8 @@ module Fog
module Parsers
module CDN
module AWS
-
- class StreamingDistribution < Fog::Parsers::Base
+ class StreamingDistribution < Fog::Parsers::Base
def reset
@response = { 'StreamingDistributionConfig' => { 'CNAME' => [], 'Logging' => {}, 'TrustedSigners' => [] } }
end
@@ -50,9 +49,7 @@ module Fog
@response['StreamingDistributionConfig']['TrustedSigners'] << 'Self'
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/cloud_formation/basic.rb b/lib/fog/aws/parsers/cloud_formation/basic.rb
index b73b5d4..92761e5 100644
--- a/lib/fog/aws/parsers/cloud_formation/basic.rb
+++ b/lib/fog/aws/parsers/cloud_formation/basic.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudFormation
-
class Basic < Fog::Parsers::Base
-
end
end
end
diff --git a/lib/fog/aws/parsers/cloud_formation/create_stack.rb b/lib/fog/aws/parsers/cloud_formation/create_stack.rb
index 0023214..9535938 100644
--- a/lib/fog/aws/parsers/cloud_formation/create_stack.rb
+++ b/lib/fog/aws/parsers/cloud_formation/create_stack.rb
@@ -2,16 +2,13 @@ module Fog
module Parsers
module AWS
module CloudFormation
-
class CreateStack < Fog::Parsers::Base
-
def end_element(name)
case name
when 'RequestId', 'StackId'
@response[name] = value
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/cloud_formation/describe_stack_events.rb b/lib/fog/aws/parsers/cloud_formation/describe_stack_events.rb
index 0348f6f..018f47d 100644
--- a/lib/fog/aws/parsers/cloud_formation/describe_stack_events.rb
+++ b/lib/fog/aws/parsers/cloud_formation/describe_stack_events.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudFormation
-
class DescribeStackEvents < Fog::Parsers::Base
-
def reset
@event = {}
@response = { 'StackEvents' => [] }
@@ -23,7 +21,6 @@ module Fog
@event[name] = Time.parse(value)
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/cloud_formation/describe_stack_resources.rb b/lib/fog/aws/parsers/cloud_formation/describe_stack_resources.rb
index 8b91366..b8a697e 100644
--- a/lib/fog/aws/parsers/cloud_formation/describe_stack_resources.rb
+++ b/lib/fog/aws/parsers/cloud_formation/describe_stack_resources.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudFormation
-
class DescribeStackResources < Fog::Parsers::Base
-
def reset
@resource = {}
@response = { 'StackResources' => [] }
@@ -23,7 +21,6 @@ module Fog
@resource[name] = Time.parse(value)
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/cloud_formation/describe_stacks.rb b/lib/fog/aws/parsers/cloud_formation/describe_stacks.rb
index 0e79890..fe25cf5 100644
--- a/lib/fog/aws/parsers/cloud_formation/describe_stacks.rb
+++ b/lib/fog/aws/parsers/cloud_formation/describe_stacks.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudFormation
-
class DescribeStacks < Fog::Parsers::Base
-
def reset
@stack = { 'Outputs' => [], 'Parameters' => [], 'Capabilities' => [] }
@output = {}
@@ -21,7 +19,7 @@ module Fog
@in_parameters = true
when 'Capabilities'
@in_capabilities = true
- end
+ end
end
def end_element(name)
@@ -46,12 +44,12 @@ module Fog
@in_parameters = false
end
elsif @in_capabilities
- case name
+ case name
when 'member'
- @stack['Capabilities'] << value
+ @stack['Capabilities'] << value
when 'Capabilities'
@in_capabilities = false
- end
+ end
else
case name
when 'member'
@@ -73,7 +71,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/cloud_formation/get_template.rb b/lib/fog/aws/parsers/cloud_formation/get_template.rb
index 55830ed..80acd6e 100644
--- a/lib/fog/aws/parsers/cloud_formation/get_template.rb
+++ b/lib/fog/aws/parsers/cloud_formation/get_template.rb
@@ -2,16 +2,13 @@ module Fog
module Parsers
module AWS
module CloudFormation
-
class GetTemplate < Fog::Parsers::Base
-
def end_element(name)
case name
when 'RequestId', 'TemplateBody'
@response[name] = value
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/cloud_formation/list_stack_resources.rb b/lib/fog/aws/parsers/cloud_formation/list_stack_resources.rb
index 4f72c73..a1d5080 100644
--- a/lib/fog/aws/parsers/cloud_formation/list_stack_resources.rb
+++ b/lib/fog/aws/parsers/cloud_formation/list_stack_resources.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudFormation
-
class ListStackResources < Fog::Parsers::Base
-
def reset
@resource = {}
@response = { 'StackResourceSummaries' => [] }
diff --git a/lib/fog/aws/parsers/cloud_formation/list_stacks.rb b/lib/fog/aws/parsers/cloud_formation/list_stacks.rb
index 5e41b4c..47ec995 100644
--- a/lib/fog/aws/parsers/cloud_formation/list_stacks.rb
+++ b/lib/fog/aws/parsers/cloud_formation/list_stacks.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudFormation
-
class ListStacks < Fog::Parsers::Base
-
def reset
@stack = {}
@response = { 'StackSummaries' => [] }
diff --git a/lib/fog/aws/parsers/cloud_formation/update_stack.rb b/lib/fog/aws/parsers/cloud_formation/update_stack.rb
index 3e3f528..0e3c311 100644
--- a/lib/fog/aws/parsers/cloud_formation/update_stack.rb
+++ b/lib/fog/aws/parsers/cloud_formation/update_stack.rb
@@ -2,16 +2,13 @@ module Fog
module Parsers
module AWS
module CloudFormation
-
class UpdateStack < Fog::Parsers::Base
-
def end_element(name)
case name
when 'RequestId', 'StackId'
@response[name] = value
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/cloud_formation/validate_template.rb b/lib/fog/aws/parsers/cloud_formation/validate_template.rb
index 0db4722..fa16430 100644
--- a/lib/fog/aws/parsers/cloud_formation/validate_template.rb
+++ b/lib/fog/aws/parsers/cloud_formation/validate_template.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudFormation
-
class ValidateTemplate < Fog::Parsers::Base
-
def reset
@parameter = {}
@response = { 'Parameters' => [] }
@@ -44,7 +42,6 @@ module Fog
@in_parameters = false
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/cloud_watch/delete_alarms.rb b/lib/fog/aws/parsers/cloud_watch/delete_alarms.rb
index 8a0999b..ba76119 100644
--- a/lib/fog/aws/parsers/cloud_watch/delete_alarms.rb
+++ b/lib/fog/aws/parsers/cloud_watch/delete_alarms.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudWatch
-
class DeleteAlarms < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
diff --git a/lib/fog/aws/parsers/cloud_watch/describe_alarm_history.rb b/lib/fog/aws/parsers/cloud_watch/describe_alarm_history.rb
index 35aa113..6d0329c 100644
--- a/lib/fog/aws/parsers/cloud_watch/describe_alarm_history.rb
+++ b/lib/fog/aws/parsers/cloud_watch/describe_alarm_history.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudWatch
-
class DescribeAlarmHistory < Fog::Parsers::Base
-
def reset
@response = { 'DescribeAlarmHistoryResult' => {'AlarmHistoryItems' => []}, 'ResponseMetadata' => {} }
reset_alarm_history_item
@@ -23,7 +21,7 @@ module Fog
when 'AlarmName', 'HistoryItemType', 'HistorySummary'
@alarm_history_item[name] = value
when 'Timestamp'
- @alarm_history_item[name] = Time.parse value
+ @alarm_history_item[name] = Time.parse value
when 'RequestId'
@response['ResponseMetadata'][name] = value
when 'NextToken'
diff --git a/lib/fog/aws/parsers/cloud_watch/describe_alarms.rb b/lib/fog/aws/parsers/cloud_watch/describe_alarms.rb
index 99ad477..ecf7096 100644
--- a/lib/fog/aws/parsers/cloud_watch/describe_alarms.rb
+++ b/lib/fog/aws/parsers/cloud_watch/describe_alarms.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudWatch
-
class DescribeAlarms < Fog::Parsers::Base
-
def reset
@response = { 'DescribeAlarmsResult' => {'MetricAlarms' => []}, 'ResponseMetadata' => {} }
reset_metric_alarms
@@ -20,7 +18,7 @@ module Fog
def start_element(name, attrs = [])
super
- case name
+ case name
when 'Dimensions'
@in_dimensions = true
when 'member'
@@ -55,7 +53,7 @@ module Fog
@response['ResponseMetadata'][name] = value
when 'member'
if !@in_dimensions
- if @metric_alarms.has_key?('AlarmName')
+ if @metric_alarms.key?('AlarmName')
@response['DescribeAlarmsResult']['MetricAlarms'] << @metric_alarms
reset_metric_alarms
elsif @response['DescribeAlarmsResult']['MetricAlarms'].last != nil
diff --git a/lib/fog/aws/parsers/cloud_watch/describe_alarms_for_metric.rb b/lib/fog/aws/parsers/cloud_watch/describe_alarms_for_metric.rb
index a8358c4..457d910 100644
--- a/lib/fog/aws/parsers/cloud_watch/describe_alarms_for_metric.rb
+++ b/lib/fog/aws/parsers/cloud_watch/describe_alarms_for_metric.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudWatch
-
class DescribeAlarmsForMetric < Fog::Parsers::Base
-
def reset
@response = { 'DescribeAlarmsForMetricResult' => {'MetricAlarms' => []}, 'ResponseMetadata' => {} }
reset_metric_alarms
@@ -20,7 +18,7 @@ module Fog
def start_element(name, attrs = [])
super
- case name
+ case name
when 'Dimensions'
@in_dimensions = true
when 'member'
@@ -46,14 +44,14 @@ module Fog
when 'StateUpdatedTimestamp', 'AlarmConfigurationUpdatedTimestamp'
@metric_alarms[name] = Time.parse value
when 'Dimensions'
- @in_dimensions = false
+ @in_dimensions = false
when 'NextToken'
@response['ResponseMetadata'][name] = value
when 'RequestId'
@response['ResponseMetadata'][name] = value
when 'member'
if !@in_dimensions
- if @metric_alarms.has_key?('AlarmName')
+ if @metric_alarms.key?('AlarmName')
@response['DescribeAlarmsForMetricResult']['MetricAlarms'] << @metric_alarms
reset_metric_alarms
elsif @response['DescribeAlarmsForMetricResult']['MetricAlarms'].last != nil
diff --git a/lib/fog/aws/parsers/cloud_watch/disable_alarm_actions.rb b/lib/fog/aws/parsers/cloud_watch/disable_alarm_actions.rb
index 7700e06..d7c2d91 100644
--- a/lib/fog/aws/parsers/cloud_watch/disable_alarm_actions.rb
+++ b/lib/fog/aws/parsers/cloud_watch/disable_alarm_actions.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudWatch
-
class DisableAlarmActions < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -19,7 +17,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
- end
+ end
end
end
end
diff --git a/lib/fog/aws/parsers/cloud_watch/enable_alarm_actions.rb b/lib/fog/aws/parsers/cloud_watch/enable_alarm_actions.rb
index f14dc36..a9049f1 100644
--- a/lib/fog/aws/parsers/cloud_watch/enable_alarm_actions.rb
+++ b/lib/fog/aws/parsers/cloud_watch/enable_alarm_actions.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudWatch
-
class EnableAlarmActions < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -19,7 +17,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
- end
+ end
end
end
end
diff --git a/lib/fog/aws/parsers/cloud_watch/get_metric_statistics.rb b/lib/fog/aws/parsers/cloud_watch/get_metric_statistics.rb
index 167303d..c9a4408 100644
--- a/lib/fog/aws/parsers/cloud_watch/get_metric_statistics.rb
+++ b/lib/fog/aws/parsers/cloud_watch/get_metric_statistics.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudWatch
-
class GetMetricStatistics < Fog::Parsers::Base
-
def reset
@response = { 'GetMetricStatisticsResult' => {'Datapoints' => []}, 'ResponseMetadata' => {} }
reset_datapoint
@@ -40,4 +38,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/aws/parsers/cloud_watch/list_metrics.rb b/lib/fog/aws/parsers/cloud_watch/list_metrics.rb
index 0a6167b..fd701e5 100644
--- a/lib/fog/aws/parsers/cloud_watch/list_metrics.rb
+++ b/lib/fog/aws/parsers/cloud_watch/list_metrics.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudWatch
-
class ListMetrics < Fog::Parsers::Base
-
def reset
@response = { 'ListMetricsResult' => {'Metrics' => []}, 'ResponseMetadata' => {} }
reset_metric
diff --git a/lib/fog/aws/parsers/cloud_watch/put_metric_alarm.rb b/lib/fog/aws/parsers/cloud_watch/put_metric_alarm.rb
index f5c3d2c..075b5aa 100644
--- a/lib/fog/aws/parsers/cloud_watch/put_metric_alarm.rb
+++ b/lib/fog/aws/parsers/cloud_watch/put_metric_alarm.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudWatch
-
class PutMetricAlarm < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
diff --git a/lib/fog/aws/parsers/cloud_watch/put_metric_data.rb b/lib/fog/aws/parsers/cloud_watch/put_metric_data.rb
index b8b7b0d..97707dd 100644
--- a/lib/fog/aws/parsers/cloud_watch/put_metric_data.rb
+++ b/lib/fog/aws/parsers/cloud_watch/put_metric_data.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudWatch
-
class PutMetricData < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
diff --git a/lib/fog/aws/parsers/cloud_watch/set_alarm_state.rb b/lib/fog/aws/parsers/cloud_watch/set_alarm_state.rb
index 3b35643..ca308ec 100644
--- a/lib/fog/aws/parsers/cloud_watch/set_alarm_state.rb
+++ b/lib/fog/aws/parsers/cloud_watch/set_alarm_state.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module CloudWatch
-
class SetAlarmState < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -19,7 +17,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
- end
+ end
end
end
end
diff --git a/lib/fog/aws/parsers/compute/allocate_address.rb b/lib/fog/aws/parsers/compute/allocate_address.rb
index af690d6..0216f18 100644
--- a/lib/fog/aws/parsers/compute/allocate_address.rb
+++ b/lib/fog/aws/parsers/compute/allocate_address.rb
@@ -2,16 +2,13 @@ module Fog
module Parsers
module Compute
module AWS
-
class AllocateAddress < Fog::Parsers::Base
-
def end_element(name)
case name
when 'publicIp', 'requestId', 'domain', 'allocationId'
@response[name] = value
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/assign_private_ip_addresses.rb b/lib/fog/aws/parsers/compute/assign_private_ip_addresses.rb
index 714b29b..122f8dd 100644
--- a/lib/fog/aws/parsers/compute/assign_private_ip_addresses.rb
+++ b/lib/fog/aws/parsers/compute/assign_private_ip_addresses.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class AssignPrivateIpAddresses < Fog::Parsers::Base
-
def end_element(name)
case name
when 'requestId'
@@ -17,7 +15,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/associate_address.rb b/lib/fog/aws/parsers/compute/associate_address.rb
index 5a21eb1..236a281 100644
--- a/lib/fog/aws/parsers/compute/associate_address.rb
+++ b/lib/fog/aws/parsers/compute/associate_address.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class AssociateAddress < Fog::Parsers::Base
-
def end_element(name)
case name
when 'requestId', 'associationId'
@@ -17,7 +15,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/associate_route_table.rb b/lib/fog/aws/parsers/compute/associate_route_table.rb
index 1e559d6..5a2143f 100755
--- a/lib/fog/aws/parsers/compute/associate_route_table.rb
+++ b/lib/fog/aws/parsers/compute/associate_route_table.rb
@@ -2,18 +2,14 @@ module Fog
module Parsers
module Compute
module AWS
-
class AssociateRouteTable < Fog::Parsers::Base
-
def end_element(name)
case name
when 'requestId', 'associationId'
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/attach_network_interface.rb b/lib/fog/aws/parsers/compute/attach_network_interface.rb
index 11cfce0..8dee1f7 100644
--- a/lib/fog/aws/parsers/compute/attach_network_interface.rb
+++ b/lib/fog/aws/parsers/compute/attach_network_interface.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class AttachNetworkInterface < Fog::Parsers::Base
-
def end_element(name)
case name
when 'requestId', 'attachmentId'
diff --git a/lib/fog/aws/parsers/compute/attach_volume.rb b/lib/fog/aws/parsers/compute/attach_volume.rb
index f6a1186..dcb5d69 100644
--- a/lib/fog/aws/parsers/compute/attach_volume.rb
+++ b/lib/fog/aws/parsers/compute/attach_volume.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class AttachVolume < Fog::Parsers::Base
-
def end_element(name)
case name
when 'attachTime'
@@ -13,9 +11,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/basic.rb b/lib/fog/aws/parsers/compute/basic.rb
index 0201a82..d8e638e 100644
--- a/lib/fog/aws/parsers/compute/basic.rb
+++ b/lib/fog/aws/parsers/compute/basic.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class Basic < Fog::Parsers::Base
-
def end_element(name)
case name
when 'requestId'
@@ -17,7 +15,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/cancel_spot_instance_requests.rb b/lib/fog/aws/parsers/compute/cancel_spot_instance_requests.rb
index 2e50181..f03e730 100644
--- a/lib/fog/aws/parsers/compute/cancel_spot_instance_requests.rb
+++ b/lib/fog/aws/parsers/compute/cancel_spot_instance_requests.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class CancelSpotInstanceRequests < Fog::Parsers::Base
-
def reset
@spot_instance_request = {}
@response = { 'spotInstanceRequestSet' => [] }
@@ -21,9 +19,7 @@ module Fog
@spot_instance_request[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/copy_image.rb b/lib/fog/aws/parsers/compute/copy_image.rb
index 1d854e8..96e21ea 100644
--- a/lib/fog/aws/parsers/compute/copy_image.rb
+++ b/lib/fog/aws/parsers/compute/copy_image.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class CopyImage < Fog::Parsers::Base
-
def end_element(name)
case name
when 'imageId'
@@ -13,9 +11,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/copy_snapshot.rb b/lib/fog/aws/parsers/compute/copy_snapshot.rb
index 25f1d40..f57be2d 100644
--- a/lib/fog/aws/parsers/compute/copy_snapshot.rb
+++ b/lib/fog/aws/parsers/compute/copy_snapshot.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class CopySnapshot < Fog::Parsers::Base
-
def end_element(name)
case name
when 'snapshotId'
@@ -13,9 +11,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/create_dhcp_options.rb b/lib/fog/aws/parsers/compute/create_dhcp_options.rb
index b4e0df1..4dadd93 100644
--- a/lib/fog/aws/parsers/compute/create_dhcp_options.rb
+++ b/lib/fog/aws/parsers/compute/create_dhcp_options.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class CreateDhcpOptions < Fog::Parsers::Base
-
def reset
@dhcp_options = { 'dhcpConfigurationSet' => {}, 'tagSet' => {} }
@response = { 'dhcpOptionsSet' => [] }
@@ -40,14 +38,14 @@ module Fog
case name
when 'item'
unless @in_value_set
- @dhcp_options['dhcpConfigurationSet'][@dhcp_configuration['key']] = @value_set
+ @dhcp_options['dhcpConfigurationSet'][@dhcp_configuration['key']] = @value_set
@value_set=[]
@dhcp_configuration = {}
end
when 'key', 'value'
if !@in_value_set
- @dhcp_configuration[name] = value
- else
+ @dhcp_configuration[name] = value
+ else
@value_set << value
end
when 'valueSet'
diff --git a/lib/fog/aws/parsers/compute/create_image.rb b/lib/fog/aws/parsers/compute/create_image.rb
index 3629854..880f1bc 100644
--- a/lib/fog/aws/parsers/compute/create_image.rb
+++ b/lib/fog/aws/parsers/compute/create_image.rb
@@ -2,18 +2,14 @@ module Fog
module Parsers
module Compute
module AWS
-
class CreateImage < Fog::Parsers::Base
-
def end_element(name)
case name
when 'instanceId', 'requestId', 'name', 'description', 'noReboot', 'imageId'
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/create_internet_gateway.rb b/lib/fog/aws/parsers/compute/create_internet_gateway.rb
index 452b5c6..856264a 100644
--- a/lib/fog/aws/parsers/compute/create_internet_gateway.rb
+++ b/lib/fog/aws/parsers/compute/create_internet_gateway.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class CreateInternetGateway < Fog::Parsers::Base
-
def reset
@internet_gateway = { 'attachmentSet' => {}, 'tagSet' => {} }
@response = { 'internetGatewaySet' => [] }
@@ -61,5 +59,3 @@ module Fog
end
end
end
-
-
diff --git a/lib/fog/aws/parsers/compute/create_key_pair.rb b/lib/fog/aws/parsers/compute/create_key_pair.rb
index 475392c..678e375 100644
--- a/lib/fog/aws/parsers/compute/create_key_pair.rb
+++ b/lib/fog/aws/parsers/compute/create_key_pair.rb
@@ -2,18 +2,14 @@ module Fog
module Parsers
module Compute
module AWS
-
class CreateKeyPair < Fog::Parsers::Base
-
def end_element(name)
case name
when 'keyFingerprint', 'keyMaterial', 'keyName', 'requestId'
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/create_route_table.rb b/lib/fog/aws/parsers/compute/create_route_table.rb
index 2d33872..19e42ba 100755
--- a/lib/fog/aws/parsers/compute/create_route_table.rb
+++ b/lib/fog/aws/parsers/compute/create_route_table.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class CreateRouteTable < Fog::Parsers::Base
-
def reset
@in_route_set = false
@in_association_set = false
@@ -71,5 +69,3 @@ module Fog
end
end
end
-
-
diff --git a/lib/fog/aws/parsers/compute/create_security_group.rb b/lib/fog/aws/parsers/compute/create_security_group.rb
index 22f8873..c64dd8d 100644
--- a/lib/fog/aws/parsers/compute/create_security_group.rb
+++ b/lib/fog/aws/parsers/compute/create_security_group.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class CreateSecurityGroup < Fog::Parsers::Base
-
def end_element(name)
case name
when 'return'
diff --git a/lib/fog/aws/parsers/compute/create_snapshot.rb b/lib/fog/aws/parsers/compute/create_snapshot.rb
index bd4af11..4535b23 100644
--- a/lib/fog/aws/parsers/compute/create_snapshot.rb
+++ b/lib/fog/aws/parsers/compute/create_snapshot.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class CreateSnapshot < Fog::Parsers::Base
-
def end_element(name)
case name
when 'description', 'ownerId', 'progress', 'snapshotId', 'status', 'volumeId'
@@ -17,9 +15,7 @@ module Fog
@response[name] = value.to_i
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/create_subnet.rb b/lib/fog/aws/parsers/compute/create_subnet.rb
index b01dd75..226ba06 100644
--- a/lib/fog/aws/parsers/compute/create_subnet.rb
+++ b/lib/fog/aws/parsers/compute/create_subnet.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class CreateSubnet < Fog::Parsers::Base
-
def reset
@subnet = { 'tagSet' => {} }
@response = { 'subnet' => [] }
@@ -46,5 +44,3 @@ module Fog
end
end
end
-
-
diff --git a/lib/fog/aws/parsers/compute/create_volume.rb b/lib/fog/aws/parsers/compute/create_volume.rb
index bb4e40d..f1d8aea 100644
--- a/lib/fog/aws/parsers/compute/create_volume.rb
+++ b/lib/fog/aws/parsers/compute/create_volume.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class CreateVolume < Fog::Parsers::Base
-
def end_element(name)
case name
when 'availabilityZone', 'requestId', 'snapshotId', 'status', 'volumeId', 'volumeType'
@@ -13,11 +11,11 @@ module Fog
@response[name] = Time.parse(value)
when 'size', 'iops'
@response[name] = value.to_i
+ when 'encrypted'
+ @response[name] = (value == 'true')
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/create_vpc.rb b/lib/fog/aws/parsers/compute/create_vpc.rb
index 20e6641..e20e5a3 100644
--- a/lib/fog/aws/parsers/compute/create_vpc.rb
+++ b/lib/fog/aws/parsers/compute/create_vpc.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class CreateVpc < Fog::Parsers::Base
-
def reset
@vpc = { 'tagSet' => {} }
@response = { 'vpcSet' => [] }
@@ -47,5 +45,3 @@ module Fog
end
end
end
-
-
diff --git a/lib/fog/aws/parsers/compute/deregister_image.rb b/lib/fog/aws/parsers/compute/deregister_image.rb
index 8ed6cc1..176f3eb 100644
--- a/lib/fog/aws/parsers/compute/deregister_image.rb
+++ b/lib/fog/aws/parsers/compute/deregister_image.rb
@@ -2,18 +2,14 @@ module Fog
module Parsers
module Compute
module AWS
-
class DeregisterImage < Fog::Parsers::Base
-
def end_element(name)
case name
when 'return', 'requestId', 'imageId'
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/describe_account_attributes.rb b/lib/fog/aws/parsers/compute/describe_account_attributes.rb
index 119f6a8..29ca5ec 100644
--- a/lib/fog/aws/parsers/compute/describe_account_attributes.rb
+++ b/lib/fog/aws/parsers/compute/describe_account_attributes.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeAccountAttributes < Fog::Parsers::Base
def reset
@attribute = { 'values' => []}
diff --git a/lib/fog/aws/parsers/compute/describe_addresses.rb b/lib/fog/aws/parsers/compute/describe_addresses.rb
index 686ec41..9b9515e 100644
--- a/lib/fog/aws/parsers/compute/describe_addresses.rb
+++ b/lib/fog/aws/parsers/compute/describe_addresses.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeAddresses < Fog::Parsers::Base
-
def reset
@address = {}
@response = { 'addressesSet' => [] }
@@ -21,9 +19,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/describe_availability_zones.rb b/lib/fog/aws/parsers/compute/describe_availability_zones.rb
index e856124..16484e8 100644
--- a/lib/fog/aws/parsers/compute/describe_availability_zones.rb
+++ b/lib/fog/aws/parsers/compute/describe_availability_zones.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeAvailabilityZones < Fog::Parsers::Base
def start_element(name, attrs = [])
case name
@@ -34,9 +33,7 @@ module Fog
@in_message_set = false
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/describe_dhcp_options.rb b/lib/fog/aws/parsers/compute/describe_dhcp_options.rb
index ee20002..061c04f 100644
--- a/lib/fog/aws/parsers/compute/describe_dhcp_options.rb
+++ b/lib/fog/aws/parsers/compute/describe_dhcp_options.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeDhcpOptions < Fog::Parsers::Base
-
def reset
@dhcp_options = { 'dhcpConfigurationSet' => {}, 'tagSet' => {} }
@response = { 'dhcpOptionsSet' => [] }
@@ -40,14 +38,14 @@ module Fog
case name
when 'item'
unless @in_value_set
- @dhcp_options['dhcpConfigurationSet'][@dhcp_configuration['key']] = @value_set
+ @dhcp_options['dhcpConfigurationSet'][@dhcp_configuration['key']] = @value_set
@value_set=[]
@dhcp_configuration = {}
end
when 'key', 'value'
if !@in_value_set
- @dhcp_configuration[name] = value
- else
+ @dhcp_configuration[name] = value
+ else
@value_set << value
end
when 'valueSet'
diff --git a/lib/fog/aws/parsers/compute/describe_images.rb b/lib/fog/aws/parsers/compute/describe_images.rb
index d17c9df..bcd9fd8 100644
--- a/lib/fog/aws/parsers/compute/describe_images.rb
+++ b/lib/fog/aws/parsers/compute/describe_images.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeImages < Fog::Parsers::Base
-
def reset
@block_device_mapping = {}
@image = { 'blockDeviceMapping' => [], 'productCodes' => [], 'stateReason' => {}, 'tagSet' => {} }
diff --git a/lib/fog/aws/parsers/compute/describe_instance_status.rb b/lib/fog/aws/parsers/compute/describe_instance_status.rb
index f5606f5..502d6a1 100644
--- a/lib/fog/aws/parsers/compute/describe_instance_status.rb
+++ b/lib/fog/aws/parsers/compute/describe_instance_status.rb
@@ -3,7 +3,6 @@ module Fog
module Compute
module AWS
class DescribeInstanceStatus < Fog::Parsers::Base
-
def new_instance!
@instance = { 'instanceState' => {}, 'systemStatus' => { 'details' => [] }, 'instanceStatus' => { 'details' => [] }, 'eventsSet' => [] }
end
diff --git a/lib/fog/aws/parsers/compute/describe_instances.rb b/lib/fog/aws/parsers/compute/describe_instances.rb
index a1fb88d..c9f1b12 100644
--- a/lib/fog/aws/parsers/compute/describe_instances.rb
+++ b/lib/fog/aws/parsers/compute/describe_instances.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeInstances < Fog::Parsers::Base
-
def reset
@block_device_mapping = {}
@network_interface = {}
@@ -34,7 +32,7 @@ module Fog
when 'architecture', 'clientToken', 'dnsName', 'hypervisor', 'imageId',
'instanceId', 'instanceType', 'ipAddress', 'kernelId', 'keyName',
'instanceLifecycle', 'platform', 'privateDnsName', 'privateIpAddress', 'ramdiskId',
- 'reason', 'requesterId', 'rootDeviceType',
+ 'reason', 'requesterId', 'rootDeviceName', 'rootDeviceType',
'spotInstanceRequestId', 'virtualizationType'
@instance[name] = value
when 'attachTime'
@@ -117,9 +115,7 @@ module Fog
@instance['instanceState']['name'] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/describe_internet_gateways.rb b/lib/fog/aws/parsers/compute/describe_internet_gateways.rb
index 28169c3..093b713 100644
--- a/lib/fog/aws/parsers/compute/describe_internet_gateways.rb
+++ b/lib/fog/aws/parsers/compute/describe_internet_gateways.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeInternetGateways < Fog::Parsers::Base
-
def reset
@internet_gateway = { 'attachmentSet' => {}, 'tagSet' => {} }
@response = { 'internetGatewaySet' => [] }
@@ -49,8 +47,7 @@ module Fog
@internet_gateway[name] = value
when 'item'
@response['internetGatewaySet'] << @internet_gateway
- @internet_gateway = { 'tagSet' => {} }
- @internet_gateway = { 'attachmentSet' => {} }
+ @internet_gateway = { 'attachmentSet' => {}, 'tagSet' => {} }
when 'requestId'
@response[name] = value
end
@@ -61,5 +58,3 @@ module Fog
end
end
end
-
-
diff --git a/lib/fog/aws/parsers/compute/describe_key_pairs.rb b/lib/fog/aws/parsers/compute/describe_key_pairs.rb
index 01e7583..21be7ab 100644
--- a/lib/fog/aws/parsers/compute/describe_key_pairs.rb
+++ b/lib/fog/aws/parsers/compute/describe_key_pairs.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeKeyPairs < Fog::Parsers::Base
-
def reset
@key = {}
@response = { 'keySet' => [] }
@@ -21,9 +19,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/describe_network_interface_attribute.rb b/lib/fog/aws/parsers/compute/describe_network_interface_attribute.rb
index bbb0116..d42193a 100644
--- a/lib/fog/aws/parsers/compute/describe_network_interface_attribute.rb
+++ b/lib/fog/aws/parsers/compute/describe_network_interface_attribute.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeNetworkInterfaceAttribute < NetworkInterfaceParser
def reset
@response = { }
@@ -76,4 +75,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/aws/parsers/compute/describe_network_interfaces.rb b/lib/fog/aws/parsers/compute/describe_network_interfaces.rb
index 09c519c..28d4db1 100644
--- a/lib/fog/aws/parsers/compute/describe_network_interfaces.rb
+++ b/lib/fog/aws/parsers/compute/describe_network_interfaces.rb
@@ -40,4 +40,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/aws/parsers/compute/describe_placement_groups.rb b/lib/fog/aws/parsers/compute/describe_placement_groups.rb
index 8d94f6c..7901081 100644
--- a/lib/fog/aws/parsers/compute/describe_placement_groups.rb
+++ b/lib/fog/aws/parsers/compute/describe_placement_groups.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribePlacementGroups < Fog::Parsers::Base
-
def reset
@placement_group = {}
@response = { 'placementGroupSet' => [] }
@@ -21,9 +19,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/describe_regions.rb b/lib/fog/aws/parsers/compute/describe_regions.rb
index efb0c99..f014726 100644
--- a/lib/fog/aws/parsers/compute/describe_regions.rb
+++ b/lib/fog/aws/parsers/compute/describe_regions.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeRegions < Fog::Parsers::Base
-
def reset
@region = {}
@response = { 'regionInfo' => [] }
@@ -21,9 +19,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/describe_reserved_instances.rb b/lib/fog/aws/parsers/compute/describe_reserved_instances.rb
index 26038dd..3546abf 100644
--- a/lib/fog/aws/parsers/compute/describe_reserved_instances.rb
+++ b/lib/fog/aws/parsers/compute/describe_reserved_instances.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeReservedInstances < Fog::Parsers::Base
-
def get_default_item
{'tagSet' => {}, 'recurringCharges' => {}}
end
@@ -52,11 +50,8 @@ module Fog
when 'start','end'
@reserved_instance[name] = Time.parse(value)
end
-
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/describe_reserved_instances_offerings.rb b/lib/fog/aws/parsers/compute/describe_reserved_instances_offerings.rb
index 3cfac71..3f9e6c8 100644
--- a/lib/fog/aws/parsers/compute/describe_reserved_instances_offerings.rb
+++ b/lib/fog/aws/parsers/compute/describe_reserved_instances_offerings.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeReservedInstancesOfferings < Fog::Parsers::Base
-
def reset
@reserved_instances_offering = {}
@response = { 'reservedInstancesOfferingsSet' => [] }
@@ -25,9 +23,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/describe_route_tables.rb b/lib/fog/aws/parsers/compute/describe_route_tables.rb
index c32ee37..924a51f 100755
--- a/lib/fog/aws/parsers/compute/describe_route_tables.rb
+++ b/lib/fog/aws/parsers/compute/describe_route_tables.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeRouteTables < Fog::Parsers::Base
-
def reset
@association = { 'routeTableAssociationId' => nil, 'routeTableId' => nil, 'subnetId' => nil, 'main' => false }
@in_association_set = false
@@ -76,9 +74,7 @@ module Fog
end
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/describe_security_groups.rb b/lib/fog/aws/parsers/compute/describe_security_groups.rb
index 059e396..b253ad5 100644
--- a/lib/fog/aws/parsers/compute/describe_security_groups.rb
+++ b/lib/fog/aws/parsers/compute/describe_security_groups.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeSecurityGroups < Fog::Parsers::Base
-
def reset
@group = {}
@ip_permission = { 'groups' => [], 'ipRanges' => []}
@@ -91,9 +89,7 @@ module Fog
@group[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/describe_snapshots.rb b/lib/fog/aws/parsers/compute/describe_snapshots.rb
index 9aaabf8..7057d59 100644
--- a/lib/fog/aws/parsers/compute/describe_snapshots.rb
+++ b/lib/fog/aws/parsers/compute/describe_snapshots.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeSnapshots < Fog::Parsers::Base
-
def reset
@response = { 'snapshotSet' => [] }
@snapshot = { 'tagSet' => {} }
@@ -42,12 +40,12 @@ module Fog
@snapshot[name] = Time.parse(value)
when 'volumeSize'
@snapshot[name] = value.to_i
+ when 'encrypted'
+ @snapshot[name] = (value == 'true')
end
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/describe_spot_price_history.rb b/lib/fog/aws/parsers/compute/describe_spot_price_history.rb
index 3cb7af5..53ab50d 100644
--- a/lib/fog/aws/parsers/compute/describe_spot_price_history.rb
+++ b/lib/fog/aws/parsers/compute/describe_spot_price_history.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeSpotPriceHistory < Fog::Parsers::Base
-
def reset
@spot_price = {}
@response = { 'spotPriceHistorySet' => [] }
@@ -25,9 +23,7 @@ module Fog
@spot_price[name] = Time.parse(value)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/describe_subnets.rb b/lib/fog/aws/parsers/compute/describe_subnets.rb
index 55057e0..4447aa6 100644
--- a/lib/fog/aws/parsers/compute/describe_subnets.rb
+++ b/lib/fog/aws/parsers/compute/describe_subnets.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeSubnets < Fog::Parsers::Base
-
def reset
@subnet = { 'tagSet' => {} }
@response = { 'subnetSet' => [] }
@@ -34,6 +32,8 @@ module Fog
case name
when 'subnetId', 'state', 'vpcId', 'cidrBlock', 'availableIpAddressCount', 'availabilityZone'
@subnet[name] = value
+ when 'mapPublicIpOnLaunch'
+ @subnet[name] = value == 'true' ? true : false
when 'item'
@response['subnetSet'] << @subnet
@subnet = { 'tagSet' => {} }
diff --git a/lib/fog/aws/parsers/compute/describe_tags.rb b/lib/fog/aws/parsers/compute/describe_tags.rb
index c071076..7859f88 100644
--- a/lib/fog/aws/parsers/compute/describe_tags.rb
+++ b/lib/fog/aws/parsers/compute/describe_tags.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeTags < Fog::Parsers::Base
-
def reset
@tag = {}
@response = { 'tagSet' => [] }
@@ -21,9 +19,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/describe_volumes.rb b/lib/fog/aws/parsers/compute/describe_volumes.rb
index 178be42..266e759 100644
--- a/lib/fog/aws/parsers/compute/describe_volumes.rb
+++ b/lib/fog/aws/parsers/compute/describe_volumes.rb
@@ -59,12 +59,12 @@ module Fog
@response[name] = value
when 'size', 'iops'
@volume[name] = value.to_i
+ when 'encrypted'
+ @volume[name] = (value == 'true')
end
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/describe_vpc_attribute.rb b/lib/fog/aws/parsers/compute/describe_vpc_attribute.rb
new file mode 100644
index 0000000..7834219
--- /dev/null
+++ b/lib/fog/aws/parsers/compute/describe_vpc_attribute.rb
@@ -0,0 +1,48 @@
+module Fog
+ module Parsers
+ module Compute
+ module AWS
+ class DescribeVpcAttribute < Fog::Parsers::Base
+ def reset
+ @response = { }
+ @in_enable_dns_support = false
+ @in_enable_dns_hostnames = false
+ end
+
+ def start_element(name, attrs = [])
+ super
+ case name
+ when 'enableDnsSupport'
+ @in_enable_dns_support = true
+ when 'enableDnsHostnames'
+ @in_enable_dns_hostnames = true
+ end
+ end
+
+ def end_element(name)
+ if @in_enable_dns_support
+ case name
+ when 'value'
+ @response['enableDnsSupport'] = (value == 'true')
+ when 'enableDnsSupport'
+ @in_enable_dns_support = false
+ end
+ elsif @in_enable_dns_hostnames
+ case name
+ when 'value'
+ @response['enableDnsHostnames'] = (value == 'true')
+ when 'enableDnsHostnames'
+ @in_enable_dns_hostnames = false
+ end
+ else
+ case name
+ when 'requestId', 'vpcId'
+ @response[name] = value
+ end
+ end
+ end
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/parsers/compute/describe_vpcs.rb b/lib/fog/aws/parsers/compute/describe_vpcs.rb
index 387f40f..3e5f464 100644
--- a/lib/fog/aws/parsers/compute/describe_vpcs.rb
+++ b/lib/fog/aws/parsers/compute/describe_vpcs.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DescribeVpcs < Fog::Parsers::Base
-
def reset
@vpc = { 'tagSet' => {} }
@response = { 'vpcSet' => [] }
diff --git a/lib/fog/aws/parsers/compute/detach_volume.rb b/lib/fog/aws/parsers/compute/detach_volume.rb
index 920f845..5def462 100644
--- a/lib/fog/aws/parsers/compute/detach_volume.rb
+++ b/lib/fog/aws/parsers/compute/detach_volume.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class DetachVolume < Fog::Parsers::Base
-
def end_element(name)
case name
when 'attachTime'
@@ -13,9 +11,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/get_console_output.rb b/lib/fog/aws/parsers/compute/get_console_output.rb
index 43a22b7..e7533de 100644
--- a/lib/fog/aws/parsers/compute/get_console_output.rb
+++ b/lib/fog/aws/parsers/compute/get_console_output.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class GetConsoleOutput < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -19,9 +17,7 @@ module Fog
@response[name] = Time.parse(value)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/get_password_data.rb b/lib/fog/aws/parsers/compute/get_password_data.rb
index 981c994..688ba5c 100644
--- a/lib/fog/aws/parsers/compute/get_password_data.rb
+++ b/lib/fog/aws/parsers/compute/get_password_data.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class GetPasswordData < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -17,9 +15,7 @@ module Fog
@response[name] = Time.parse(@value)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/import_key_pair.rb b/lib/fog/aws/parsers/compute/import_key_pair.rb
index 2c0d850..9d8a687 100644
--- a/lib/fog/aws/parsers/compute/import_key_pair.rb
+++ b/lib/fog/aws/parsers/compute/import_key_pair.rb
@@ -2,18 +2,14 @@ module Fog
module Parsers
module Compute
module AWS
-
class ImportKeyPair < Fog::Parsers::Base
-
def end_element(name)
case name
when 'keyFingerprint', 'keyName', 'requestId'
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/modify_subnet_attribute.rb b/lib/fog/aws/parsers/compute/modify_subnet_attribute.rb
new file mode 100644
index 0000000..398b160
--- /dev/null
+++ b/lib/fog/aws/parsers/compute/modify_subnet_attribute.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Parsers
+ module Compute
+ module AWS
+ class ModifySubnetAttribute < Fog::Parsers::Base
+ def reset
+ @response = { }
+ end
+
+
+ def end_element(name)
+ case name
+ when 'return'
+ @response[name] = value == 'true' ? true : false
+ when 'requestId'
+ @response[name] = value
+ end
+
+ end
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/parsers/compute/monitor_unmonitor_instances.rb b/lib/fog/aws/parsers/compute/monitor_unmonitor_instances.rb
index f6964b2..3065401 100644
--- a/lib/fog/aws/parsers/compute/monitor_unmonitor_instances.rb
+++ b/lib/fog/aws/parsers/compute/monitor_unmonitor_instances.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class MonitorUnmonitorInstances < Fog::Parsers::Base
-
def reset
@response = {}
@instance_set = []
@@ -26,9 +24,7 @@ module Fog
@response['instancesSet'] = @instance_set
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/network_acl_parser.rb b/lib/fog/aws/parsers/compute/network_acl_parser.rb
index fda3ea8..884354c 100644
--- a/lib/fog/aws/parsers/compute/network_acl_parser.rb
+++ b/lib/fog/aws/parsers/compute/network_acl_parser.rb
@@ -2,14 +2,13 @@ module Fog
module Parsers
module Compute
module AWS
-
class NetworkAclParser < Fog::Parsers::Base
def reset_nacl
@network_acl = { 'associationSet' => [], 'entrySet' => [], 'tagSet' => {} }
@association = {}
@entry = { 'icmpTypeCode' => {}, 'portRange' => {} }
@tag = {}
-
+
@in_entry_set = false
@in_association_set = false
@in_tag_set = false
@@ -97,7 +96,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/network_interface_parser.rb b/lib/fog/aws/parsers/compute/network_interface_parser.rb
index 96c8950..a1bfeb4 100644
--- a/lib/fog/aws/parsers/compute/network_interface_parser.rb
+++ b/lib/fog/aws/parsers/compute/network_interface_parser.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module Compute
module AWS
-
class NetworkInterfaceParser < Fog::Parsers::Base
-
def reset_nic
- @nic = { 'groupSet' => {}, 'attachment' => {}, 'association' => {}, 'tagSet' => {} }
+ @nic = { 'groupSet' => {}, 'attachment' => {}, 'association' => {}, 'tagSet' => {}, 'privateIpAddressesSet' => [] }
@in_tag_set = false
@in_group_set = false
@in_attachment = false
@@ -80,6 +78,11 @@ module Fog
elsif @in_private_ip_addresses
case name
when 'item'
+ if value
+ @private_ip_address['item'] = value.strip
+ else
+ @private_ip_address['item'] = value
+ end
@private_ip_addresses << @private_ip_address
@private_ip_address = {}
when 'privateIpAddress', 'privateDnsName', 'primary'
diff --git a/lib/fog/aws/parsers/compute/purchase_reserved_instances_offering.rb b/lib/fog/aws/parsers/compute/purchase_reserved_instances_offering.rb
index 09c42a1..7f42ff4 100644
--- a/lib/fog/aws/parsers/compute/purchase_reserved_instances_offering.rb
+++ b/lib/fog/aws/parsers/compute/purchase_reserved_instances_offering.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class PurchaseReservedInstancesOffering < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/register_image.rb b/lib/fog/aws/parsers/compute/register_image.rb
index 1c8eb9a..efdf1ab 100644
--- a/lib/fog/aws/parsers/compute/register_image.rb
+++ b/lib/fog/aws/parsers/compute/register_image.rb
@@ -2,18 +2,14 @@ module Fog
module Parsers
module Compute
module AWS
-
class RegisterImage < Fog::Parsers::Base
-
def end_element(name)
case name
when 'requestId', 'imageId'
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/run_instances.rb b/lib/fog/aws/parsers/compute/run_instances.rb
index 7bce583..5e18805 100644
--- a/lib/fog/aws/parsers/compute/run_instances.rb
+++ b/lib/fog/aws/parsers/compute/run_instances.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class RunInstances < Fog::Parsers::Base
-
def reset
@block_device_mapping = {}
@network_interfaces = {}
@@ -85,9 +83,7 @@ module Fog
@instance['associatePublicIP'] = (value == 'true')
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/spot_datafeed_subscription.rb b/lib/fog/aws/parsers/compute/spot_datafeed_subscription.rb
index e5154ae..314c6f3 100644
--- a/lib/fog/aws/parsers/compute/spot_datafeed_subscription.rb
+++ b/lib/fog/aws/parsers/compute/spot_datafeed_subscription.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class SpotDatafeedSubscription < Fog::Parsers::Base
-
def reset
@response = { 'spotDatafeedSubscription' => {} }
end
@@ -20,9 +18,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/spot_instance_requests.rb b/lib/fog/aws/parsers/compute/spot_instance_requests.rb
index 53454a0..d8a481b 100644
--- a/lib/fog/aws/parsers/compute/spot_instance_requests.rb
+++ b/lib/fog/aws/parsers/compute/spot_instance_requests.rb
@@ -2,13 +2,11 @@ module Fog
module Parsers
module Compute
module AWS
-
class SpotInstanceRequests < Fog::Parsers::Base
-
def reset
@block_device_mapping = {}
@context = []
- @contexts = ['blockDeviceMapping', 'groupSet', 'iamInstanceProfile']
+ @contexts = ['blockDeviceMapping', 'groupSet', 'iamInstanceProfile', 'networkInterfaceSet']
@spot_instance_request = { 'launchSpecification' => { 'iamInstanceProfile' => {}, 'blockDeviceMapping' => [], 'groupSet' => [] } }
@response = { 'spotInstanceRequestSet' => [] }
end
@@ -36,7 +34,9 @@ module Fog
when 'deviceName', 'status', 'volumeId'
@block_device_mapping[name] = value
when 'groupId'
- @spot_instance_request['launchSpecification']['groupSet'] << value
+ if !@context.include?('networkInterfaceSet')
+ @spot_instance_request['launchSpecification']['groupSet'] << value
+ end
when 'arn', 'name'
@spot_instance_request['launchSpecification']['iamInstanceProfile'][name] = value
when 'instanceId', 'launchedAvailabilityZone', 'productDescription', 'spotInstanceRequestId', 'state', 'type'
@@ -62,9 +62,7 @@ module Fog
@spot_instance_request[name] = value.to_f
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/start_stop_instances.rb b/lib/fog/aws/parsers/compute/start_stop_instances.rb
index 1d050c3..70d1a2d 100644
--- a/lib/fog/aws/parsers/compute/start_stop_instances.rb
+++ b/lib/fog/aws/parsers/compute/start_stop_instances.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class StartStopInstances < Fog::Parsers::Base
-
def reset
@instance = { 'currentState' => {}, 'previousState' => {} }
@response = { 'instancesSet' => [] }
@@ -32,9 +30,7 @@ module Fog
@instance[@state][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/compute/terminate_instances.rb b/lib/fog/aws/parsers/compute/terminate_instances.rb
index d8ce22b..dfdbb52 100644
--- a/lib/fog/aws/parsers/compute/terminate_instances.rb
+++ b/lib/fog/aws/parsers/compute/terminate_instances.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module AWS
-
class TerminateInstances < Fog::Parsers::Base
-
def reset
@instance = { 'previousState' => {}, 'currentState' => {} }
@response = { 'instancesSet' => [] }
@@ -46,9 +44,7 @@ module Fog
@in_current_state = false
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/dns/change_resource_record_sets.rb b/lib/fog/aws/parsers/dns/change_resource_record_sets.rb
index c02a862..6f86324 100644
--- a/lib/fog/aws/parsers/dns/change_resource_record_sets.rb
+++ b/lib/fog/aws/parsers/dns/change_resource_record_sets.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module AWS
-
class ChangeResourceRecordSets < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -17,9 +15,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/dns/create_health_check.rb b/lib/fog/aws/parsers/dns/create_health_check.rb
new file mode 100644
index 0000000..e69de29
diff --git a/lib/fog/aws/parsers/dns/create_hosted_zone.rb b/lib/fog/aws/parsers/dns/create_hosted_zone.rb
index 290b09c..a835e63 100644
--- a/lib/fog/aws/parsers/dns/create_hosted_zone.rb
+++ b/lib/fog/aws/parsers/dns/create_hosted_zone.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module AWS
-
class CreateHostedZone < Fog::Parsers::Base
-
def reset
@hosted_zone = {}
@change_info = {}
@@ -46,9 +44,7 @@ module Fog
end
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/dns/delete_hosted_zone.rb b/lib/fog/aws/parsers/dns/delete_hosted_zone.rb
index 9c65d85..0ed53e9 100644
--- a/lib/fog/aws/parsers/dns/delete_hosted_zone.rb
+++ b/lib/fog/aws/parsers/dns/delete_hosted_zone.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module AWS
-
class DeleteHostedZone < Fog::Parsers::Base
-
def reset
@response = {}
@response['ChangeInfo'] = {}
@@ -16,9 +14,7 @@ module Fog
@response['ChangeInfo'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/dns/get_change.rb b/lib/fog/aws/parsers/dns/get_change.rb
index 7de06f3..3e46d6a 100644
--- a/lib/fog/aws/parsers/dns/get_change.rb
+++ b/lib/fog/aws/parsers/dns/get_change.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module AWS
-
class GetChange < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -17,9 +15,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/dns/get_hosted_zone.rb b/lib/fog/aws/parsers/dns/get_hosted_zone.rb
index 1651675..f97f45c 100644
--- a/lib/fog/aws/parsers/dns/get_hosted_zone.rb
+++ b/lib/fog/aws/parsers/dns/get_hosted_zone.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module AWS
-
class GetHostedZone < Fog::Parsers::Base
-
def reset
@hosted_zone = {}
@name_servers = []
@@ -36,9 +34,7 @@ module Fog
end
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/dns/health_check.rb b/lib/fog/aws/parsers/dns/health_check.rb
new file mode 100644
index 0000000..3b3ccb4
--- /dev/null
+++ b/lib/fog/aws/parsers/dns/health_check.rb
@@ -0,0 +1,33 @@
+module Fog
+ module Parsers
+ module DNS
+ module AWS
+ class HealthCheck < Fog::Parsers::Base
+ def reset
+ @health_check = {}
+ @health_check_config = {}
+ @response = {}
+ end
+
+ def end_element(name)
+ case name
+ when 'HealthCheck'
+ @response[name] = @health_check
+ when 'HealthCheckConfig'
+ @health_check[name] = @health_check_config
+ @health_check_config = {}
+ when 'Id', 'CallerReference'
+ @health_check[name] = value
+ when 'HealthCheckVersion'
+ @health_check[name] = value.to_i
+ when 'IPAddress', 'Port', 'Type', 'ResourcePath', 'FullyQualifiedDomainName', 'SearchString', 'FailureThreshold'
+ @health_check_config[name] = value
+ when 'RequestInterval'
+ @health_check_config[name] = value.to_i
+ end
+ end
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/parsers/dns/list_health_checks.rb b/lib/fog/aws/parsers/dns/list_health_checks.rb
new file mode 100644
index 0000000..a775ada
--- /dev/null
+++ b/lib/fog/aws/parsers/dns/list_health_checks.rb
@@ -0,0 +1,41 @@
+module Fog
+ module Parsers
+ module DNS
+ module AWS
+ class ListHealthChecks < Fog::Parsers::Base
+ def reset
+ @health_checks = []
+ @health_check = {}
+ @health_check_config = {}
+ @response = {}
+ end
+
+ def end_element(name)
+ case name
+ when 'HealthChecks'
+ @response['HealthChecks'] = @health_checks
+ when 'HealthCheck'
+ @health_checks << @health_check
+ @health_check = {}
+ when 'HealthCheckConfig'
+ @health_check[name] = @health_check_config
+ @health_check_config = {}
+ when 'Id', 'CallerReference'
+ @health_check[name] = value
+ when 'HealthCheckVersion'
+ @health_check[name] = value.to_i
+ when 'IPAddress', 'Port', 'Type', 'ResourcePath', 'FullyQualifiedDomainName', 'SearchString', 'FailureThreshold'
+ @health_check_config[name] = value
+ when 'RequestInterval'
+ @health_check_config[name] = value.to_i
+ when 'MaxItems'
+ @response[name] = value.to_i
+ when 'IsTruncated', 'Marker', 'NextMarker'
+ @response[name] = value
+ end
+ end
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/parsers/dns/list_hosted_zones.rb b/lib/fog/aws/parsers/dns/list_hosted_zones.rb
index 67a5a8b..fd709b5 100644
--- a/lib/fog/aws/parsers/dns/list_hosted_zones.rb
+++ b/lib/fog/aws/parsers/dns/list_hosted_zones.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module AWS
-
class ListHostedZones < Fog::Parsers::Base
-
def reset
@hosted_zones = []
@zone = {}
@@ -28,9 +26,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/dns/list_resource_record_sets.rb b/lib/fog/aws/parsers/dns/list_resource_record_sets.rb
index ac80ba5..98385e5 100644
--- a/lib/fog/aws/parsers/dns/list_resource_record_sets.rb
+++ b/lib/fog/aws/parsers/dns/list_resource_record_sets.rb
@@ -2,14 +2,13 @@ module Fog
module Parsers
module DNS
module AWS
-
class ListResourceRecordSets < Fog::Parsers::Base
-
def reset
@resource_record = []
@resource_record_set = {}
@resource_record_set['ResourceRecords'] = []
@alias_target = {}
+ @geo_location = {}
@response = {}
@response['ResourceRecordSets'] = []
@section = :resource_record_set
@@ -18,7 +17,7 @@ module Fog
def end_element(name)
if @section == :resource_record_set
case name
- when 'Type', 'TTL', 'SetIdentifier', 'Weight', 'Region'
+ when 'Type', 'TTL', 'SetIdentifier', 'Weight', 'Region', 'HealthCheckId', 'Failover'
@resource_record_set[name] = value
when 'Name'
@resource_record_set[name] = value.gsub('\\052', '*')
@@ -27,8 +26,13 @@ module Fog
when 'AliasTarget'
@resource_record_set[name] = @alias_target
@alias_target = {}
- when 'HostedZoneId', 'DNSName'
+ when 'HostedZoneId', 'DNSName', 'EvaluateTargetHealth'
@alias_target[name] = value
+ when 'GeoLocation'
+ @resource_record_set[name] = @geo_location
+ @geo_location = {}
+ when 'ContinentCode', 'CountryCode', 'SubdivisionCode'
+ @geo_location[name] = value
when 'ResourceRecordSet'
@response['ResourceRecordSets'] << @resource_record_set
@resource_record_set = {}
@@ -47,9 +51,7 @@ module Fog
end
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elasticache/authorize_cache_security_group_ingress.rb b/lib/fog/aws/parsers/elasticache/authorize_cache_security_group_ingress.rb
index c3aaf99..c4f19d2 100644
--- a/lib/fog/aws/parsers/elasticache/authorize_cache_security_group_ingress.rb
+++ b/lib/fog/aws/parsers/elasticache/authorize_cache_security_group_ingress.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module Elasticache
-
require 'fog/aws/parsers/elasticache/security_group_parser'
class AuthorizeCacheSecurityGroupIngress < Fog::Parsers::AWS::Elasticache::SecurityGroupParser
-
def end_element(name)
case name
when 'CacheSecurityGroup' then
@@ -15,11 +13,8 @@ module Fog
else
super
end
-
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elasticache/base.rb b/lib/fog/aws/parsers/elasticache/base.rb
index 9cac146..af49f53 100644
--- a/lib/fog/aws/parsers/elasticache/base.rb
+++ b/lib/fog/aws/parsers/elasticache/base.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module Elasticache
-
# Base parser for ResponseMetadata, RequestId
class Base < Fog::Parsers::Base
-
def reset
super
@response = { 'ResponseMetadata' => {} }
@@ -23,9 +21,7 @@ module Fog
super
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elasticache/cache_cluster_parser.rb b/lib/fog/aws/parsers/elasticache/cache_cluster_parser.rb
index 72d72e9..cfc4c68 100644
--- a/lib/fog/aws/parsers/elasticache/cache_cluster_parser.rb
+++ b/lib/fog/aws/parsers/elasticache/cache_cluster_parser.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/elasticache/base'
class CacheClusterParser < Base
-
def reset
super
reset_cache_cluster
@@ -26,7 +25,6 @@ module Fog
when 'CacheNode'; then @cache_node = {}
when 'PendingModifiedValues'; then @pending_values = {}
end
-
end
def end_element(name)
diff --git a/lib/fog/aws/parsers/elasticache/create_cache_subnet_group.rb b/lib/fog/aws/parsers/elasticache/create_cache_subnet_group.rb
index 86887d7..765191b 100644
--- a/lib/fog/aws/parsers/elasticache/create_cache_subnet_group.rb
+++ b/lib/fog/aws/parsers/elasticache/create_cache_subnet_group.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module Elasticache
-
require 'fog/aws/parsers/elasticache/subnet_group_parser'
class CreateCacheSubnetGroup < Fog::Parsers::AWS::Elasticache::SubnetGroupParser
-
def reset
@response = { 'CreateCacheSubnetGroupResult' => {}, 'ResponseMetadata' => {} }
super
@@ -26,13 +24,9 @@ module Fog
else
super
end
-
end
-
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/parsers/elasticache/describe_cache_clusters.rb b/lib/fog/aws/parsers/elasticache/describe_cache_clusters.rb
index 56a57ba..9c4facd 100644
--- a/lib/fog/aws/parsers/elasticache/describe_cache_clusters.rb
+++ b/lib/fog/aws/parsers/elasticache/describe_cache_clusters.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/elasticache/cache_cluster_parser'
class DescribeCacheClusters < CacheClusterParser
-
def reset
super
@response['CacheClusters'] = []
diff --git a/lib/fog/aws/parsers/elasticache/describe_cache_parameters.rb b/lib/fog/aws/parsers/elasticache/describe_cache_parameters.rb
index 28131ff..f651f0f 100644
--- a/lib/fog/aws/parsers/elasticache/describe_cache_parameters.rb
+++ b/lib/fog/aws/parsers/elasticache/describe_cache_parameters.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/elasticache/engine_defaults_parser'
class DescribeCacheParameters < EngineDefaultsParser
-
def end_element(name)
case name
when 'DescribeCacheParametersResult'
diff --git a/lib/fog/aws/parsers/elasticache/describe_cache_subnet_groups.rb b/lib/fog/aws/parsers/elasticache/describe_cache_subnet_groups.rb
index ab37333..f2368ba 100644
--- a/lib/fog/aws/parsers/elasticache/describe_cache_subnet_groups.rb
+++ b/lib/fog/aws/parsers/elasticache/describe_cache_subnet_groups.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module Elasticache
-
require 'fog/aws/parsers/elasticache/subnet_group_parser'
class DescribeCacheSubnetGroups < Fog::Parsers::AWS::Elasticache::SubnetGroupParser
-
def reset
@response = { 'DescribeCacheSubnetGroupsResult' => {'CacheSubnetGroups' => []}, 'ResponseMetadata' => {} }
super
@@ -28,9 +26,7 @@ module Fog
else
super
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elasticache/describe_engine_default_parameters.rb b/lib/fog/aws/parsers/elasticache/describe_engine_default_parameters.rb
index 9039367..9773140 100644
--- a/lib/fog/aws/parsers/elasticache/describe_engine_default_parameters.rb
+++ b/lib/fog/aws/parsers/elasticache/describe_engine_default_parameters.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/elasticache/engine_defaults_parser'
class DescribeEngineDefaultParameters < EngineDefaultsParser
-
def end_element(name)
case name
when 'EngineDefaults'
diff --git a/lib/fog/aws/parsers/elasticache/describe_parameter_groups.rb b/lib/fog/aws/parsers/elasticache/describe_parameter_groups.rb
index 81040b7..b4fa476 100644
--- a/lib/fog/aws/parsers/elasticache/describe_parameter_groups.rb
+++ b/lib/fog/aws/parsers/elasticache/describe_parameter_groups.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/elasticache/parameter_group_parser'
class DescribeParameterGroups < ParameterGroupParser
-
def reset
super
@response['CacheParameterGroups'] = []
diff --git a/lib/fog/aws/parsers/elasticache/describe_reserved_cache_nodes.rb b/lib/fog/aws/parsers/elasticache/describe_reserved_cache_nodes.rb
index 3de15b7..dc942da 100644
--- a/lib/fog/aws/parsers/elasticache/describe_reserved_cache_nodes.rb
+++ b/lib/fog/aws/parsers/elasticache/describe_reserved_cache_nodes.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module Elasticache
-
class DescribeReservedCacheNodes < Fog::Parsers::Base
-
def reset
@reserved_node = {}
@response = { 'ReservedCacheNodes' => [] }
@@ -27,11 +25,8 @@ module Fog
@reserved_node[name] = Time.parse(@value)
end
end
-
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/parsers/elasticache/describe_security_groups.rb b/lib/fog/aws/parsers/elasticache/describe_security_groups.rb
index 70942a4..6651eaf 100644
--- a/lib/fog/aws/parsers/elasticache/describe_security_groups.rb
+++ b/lib/fog/aws/parsers/elasticache/describe_security_groups.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/elasticache/security_group_parser'
class DescribeSecurityGroups < SecurityGroupParser
-
def reset
super
@response['CacheSecurityGroups'] = []
diff --git a/lib/fog/aws/parsers/elasticache/engine_defaults_parser.rb b/lib/fog/aws/parsers/elasticache/engine_defaults_parser.rb
index 085723e..7d742a5 100644
--- a/lib/fog/aws/parsers/elasticache/engine_defaults_parser.rb
+++ b/lib/fog/aws/parsers/elasticache/engine_defaults_parser.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/elasticache/base'
class EngineDefaultsParser < Base
-
def reset
super
reset_engine_defaults
diff --git a/lib/fog/aws/parsers/elasticache/event_list.rb b/lib/fog/aws/parsers/elasticache/event_list.rb
index 0ba3bcf..1a30c11 100644
--- a/lib/fog/aws/parsers/elasticache/event_list.rb
+++ b/lib/fog/aws/parsers/elasticache/event_list.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/elasticache/base'
class EventListParser < Base
-
def reset
super
@response['Events'] = []
@@ -16,7 +15,6 @@ module Fog
case name
when 'Event'; then @event = {}
end
-
end
def end_element(name)
diff --git a/lib/fog/aws/parsers/elasticache/modify_parameter_group.rb b/lib/fog/aws/parsers/elasticache/modify_parameter_group.rb
index b15aa05..4853264 100644
--- a/lib/fog/aws/parsers/elasticache/modify_parameter_group.rb
+++ b/lib/fog/aws/parsers/elasticache/modify_parameter_group.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/elasticache/parameter_group_parser'
class ModifyParameterGroup < ParameterGroupParser
-
def reset
super
@response['ModifyCacheParameterGroupResult'] = []
diff --git a/lib/fog/aws/parsers/elasticache/parameter_group_parser.rb b/lib/fog/aws/parsers/elasticache/parameter_group_parser.rb
index d53f5e0..0b8e8ac 100644
--- a/lib/fog/aws/parsers/elasticache/parameter_group_parser.rb
+++ b/lib/fog/aws/parsers/elasticache/parameter_group_parser.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/elasticache/base'
class ParameterGroupParser < Base
-
def reset
super
reset_parameter_group
diff --git a/lib/fog/aws/parsers/elasticache/reset_parameter_group.rb b/lib/fog/aws/parsers/elasticache/reset_parameter_group.rb
index 9090e9b..ff49e00 100644
--- a/lib/fog/aws/parsers/elasticache/reset_parameter_group.rb
+++ b/lib/fog/aws/parsers/elasticache/reset_parameter_group.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/elasticache/parameter_group_parser'
class ResetParameterGroup < ParameterGroupParser
-
def reset
super
@response['ResetCacheParameterGroupResult'] = []
diff --git a/lib/fog/aws/parsers/elasticache/security_group_parser.rb b/lib/fog/aws/parsers/elasticache/security_group_parser.rb
index b33ec87..b9b9f3e 100644
--- a/lib/fog/aws/parsers/elasticache/security_group_parser.rb
+++ b/lib/fog/aws/parsers/elasticache/security_group_parser.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/elasticache/base'
class SecurityGroupParser < Fog::Parsers::Base
-
def reset
super
reset_security_group
@@ -20,7 +19,6 @@ module Fog
case name
when 'EC2SecurityGroup'; then @ec2_group = {}
end
-
end
def end_element(name)
diff --git a/lib/fog/aws/parsers/elasticache/single_cache_cluster.rb b/lib/fog/aws/parsers/elasticache/single_cache_cluster.rb
index 49673c7..01abd28 100644
--- a/lib/fog/aws/parsers/elasticache/single_cache_cluster.rb
+++ b/lib/fog/aws/parsers/elasticache/single_cache_cluster.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/elasticache/cache_cluster_parser'
class SingleCacheCluster < CacheClusterParser
-
def end_element(name)
case name
when 'CacheCluster'
diff --git a/lib/fog/aws/parsers/elasticache/single_parameter_group.rb b/lib/fog/aws/parsers/elasticache/single_parameter_group.rb
index ad92002..36b0403 100644
--- a/lib/fog/aws/parsers/elasticache/single_parameter_group.rb
+++ b/lib/fog/aws/parsers/elasticache/single_parameter_group.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/elasticache/parameter_group_parser'
class SingleParameterGroup < ParameterGroupParser
-
def end_element(name)
case name
when 'CacheParameterGroup'
diff --git a/lib/fog/aws/parsers/elasticache/single_security_group.rb b/lib/fog/aws/parsers/elasticache/single_security_group.rb
index 5d80778..8c03d30 100644
--- a/lib/fog/aws/parsers/elasticache/single_security_group.rb
+++ b/lib/fog/aws/parsers/elasticache/single_security_group.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/elasticache/security_group_parser'
class SingleSecurityGroup < SecurityGroupParser
-
def reset
super
@response = { 'ResponseMetadata' => {} }
diff --git a/lib/fog/aws/parsers/elasticache/subnet_group_parser.rb b/lib/fog/aws/parsers/elasticache/subnet_group_parser.rb
index 304ca8e..c2c220c 100644
--- a/lib/fog/aws/parsers/elasticache/subnet_group_parser.rb
+++ b/lib/fog/aws/parsers/elasticache/subnet_group_parser.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module Elasticache
-
class SubnetGroupParser < Fog::Parsers::Base
-
def reset
@cache_subnet_group = fresh_subnet_group
end
@@ -30,7 +28,6 @@ module Fog
def fresh_subnet_group
{'Subnets' => []}
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/apply_security_groups_to_load_balancer.rb b/lib/fog/aws/parsers/elb/apply_security_groups_to_load_balancer.rb
index 79d470e..4d2124f 100644
--- a/lib/fog/aws/parsers/elb/apply_security_groups_to_load_balancer.rb
+++ b/lib/fog/aws/parsers/elb/apply_security_groups_to_load_balancer.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class ApplySecurityGroupsToLoadBalancer < Fog::Parsers::Base
-
def reset
@response = { 'ApplySecurityGroupsToLoadBalancerResult' => { 'SecurityGroups' => [] }, 'ResponseMetadata' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/attach_load_balancer_to_subnets.rb b/lib/fog/aws/parsers/elb/attach_load_balancer_to_subnets.rb
index 22245c8..f2450ff 100644
--- a/lib/fog/aws/parsers/elb/attach_load_balancer_to_subnets.rb
+++ b/lib/fog/aws/parsers/elb/attach_load_balancer_to_subnets.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class AttachLoadBalancerToSubnets < Fog::Parsers::Base
-
def reset
@response = { 'AttachLoadBalancerToSubnetsResult' => { 'Subnets' => [] }, 'ResponseMetadata' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/configure_health_check.rb b/lib/fog/aws/parsers/elb/configure_health_check.rb
index b2934fd..ef3b045 100644
--- a/lib/fog/aws/parsers/elb/configure_health_check.rb
+++ b/lib/fog/aws/parsers/elb/configure_health_check.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class ConfigureHealthCheck < Fog::Parsers::Base
-
def reset
@health_check = {}
@response = { 'ConfigureHealthCheckResult' => {}, 'ResponseMetadata' => {} }
@@ -28,9 +26,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/create_load_balancer.rb b/lib/fog/aws/parsers/elb/create_load_balancer.rb
index 27aa211..0b38943 100644
--- a/lib/fog/aws/parsers/elb/create_load_balancer.rb
+++ b/lib/fog/aws/parsers/elb/create_load_balancer.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class CreateLoadBalancer < Fog::Parsers::Base
-
def reset
@response = { 'CreateLoadBalancerResult' => {}, 'ResponseMetadata' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/delete_load_balancer.rb b/lib/fog/aws/parsers/elb/delete_load_balancer.rb
index a7aa650..ab0fe04 100644
--- a/lib/fog/aws/parsers/elb/delete_load_balancer.rb
+++ b/lib/fog/aws/parsers/elb/delete_load_balancer.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class DeleteLoadBalancer < Fog::Parsers::Base
-
def reset
@response = { 'DeleteLoadBalancerResult' => nil, 'ResponseMetadata' => {} }
end
@@ -15,9 +13,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/deregister_instances_from_load_balancer.rb b/lib/fog/aws/parsers/elb/deregister_instances_from_load_balancer.rb
index 170ca53..7ae4171 100644
--- a/lib/fog/aws/parsers/elb/deregister_instances_from_load_balancer.rb
+++ b/lib/fog/aws/parsers/elb/deregister_instances_from_load_balancer.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class DeregisterInstancesFromLoadBalancer < Fog::Parsers::Base
-
def reset
@response = { 'DeregisterInstancesFromLoadBalancerResult' => { 'Instances' => [] }, 'ResponseMetadata' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/describe_instance_health.rb b/lib/fog/aws/parsers/elb/describe_instance_health.rb
index 4c01831..4e0f9b8 100644
--- a/lib/fog/aws/parsers/elb/describe_instance_health.rb
+++ b/lib/fog/aws/parsers/elb/describe_instance_health.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class DescribeInstanceHealth < Fog::Parsers::Base
-
def reset
@response = { 'DescribeInstanceHealthResult' => { 'InstanceStates' => [] }, 'ResponseMetadata' => {} }
@instance_state = {}
@@ -21,9 +19,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/describe_load_balancer_attributes.rb b/lib/fog/aws/parsers/elb/describe_load_balancer_attributes.rb
index 05b4d91..e3569c3 100644
--- a/lib/fog/aws/parsers/elb/describe_load_balancer_attributes.rb
+++ b/lib/fog/aws/parsers/elb/describe_load_balancer_attributes.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class DescribeLoadBalancerAttributes < Fog::Parsers::Base
-
def reset
@response = { 'DescribeLoadBalancerAttributesResult' => { 'LoadBalancerAttributes' => {} }, 'ResponseMetadata' => {} }
@stack = []
@@ -13,6 +11,8 @@ module Fog
def start_element(name, attrs = [])
super
case name
+ when 'ConnectionDraining'
+ @connection_draining = {}
when 'CrossZoneLoadBalancing'
@cross_zone_load_balancing = {}
end
@@ -23,7 +23,16 @@ module Fog
when 'Enabled'
if @cross_zone_load_balancing
@cross_zone_load_balancing['Enabled'] = value == 'true' ? true : false
+ elsif @connection_draining
+ @connection_draining['Enabled'] = value == 'true' ? true : false
+ end
+ when 'Timeout'
+ if @connection_draining
+ @connection_draining['Timeout'] = value.to_i
end
+ when 'ConnectionDraining'
+ @response['DescribeLoadBalancerAttributesResult']['LoadBalancerAttributes']['ConnectionDraining'] = @connection_draining
+ @connection_draining = nil
when 'CrossZoneLoadBalancing'
@response['DescribeLoadBalancerAttributesResult']['LoadBalancerAttributes']['CrossZoneLoadBalancing'] = @cross_zone_load_balancing
@cross_zone_load_balancing = nil
@@ -31,9 +40,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/describe_load_balancer_policies.rb b/lib/fog/aws/parsers/elb/describe_load_balancer_policies.rb
index 2317827..ecdbd68 100644
--- a/lib/fog/aws/parsers/elb/describe_load_balancer_policies.rb
+++ b/lib/fog/aws/parsers/elb/describe_load_balancer_policies.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class DescribeLoadBalancerPolicies < Fog::Parsers::Base
-
def reset
reset_policy
reset_policy_attribute_description
@@ -55,9 +53,7 @@ module Fog
@response['DescribeLoadBalancerPoliciesResult'] = @results
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/describe_load_balancer_policy_types.rb b/lib/fog/aws/parsers/elb/describe_load_balancer_policy_types.rb
index e1184bc..11170c5 100644
--- a/lib/fog/aws/parsers/elb/describe_load_balancer_policy_types.rb
+++ b/lib/fog/aws/parsers/elb/describe_load_balancer_policy_types.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class DescribeLoadBalancerPolicyTypes < Fog::Parsers::Base
-
def reset
reset_policy_type
reset_policy_attribute_type_description
@@ -61,9 +59,7 @@ module Fog
@response['DescribeLoadBalancerPolicyTypesResult'] = @results
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/describe_load_balancers.rb b/lib/fog/aws/parsers/elb/describe_load_balancers.rb
index 4144cf5..7e539e5 100644
--- a/lib/fog/aws/parsers/elb/describe_load_balancers.rb
+++ b/lib/fog/aws/parsers/elb/describe_load_balancers.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class DescribeLoadBalancers < Fog::Parsers::Base
-
def reset
reset_load_balancer
reset_listener_description
@@ -162,9 +160,7 @@ module Fog
@response['DescribeLoadBalancersResult'] = @results
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/detach_load_balancer_from_subnets.rb b/lib/fog/aws/parsers/elb/detach_load_balancer_from_subnets.rb
index fdea5ba..a687dc1 100644
--- a/lib/fog/aws/parsers/elb/detach_load_balancer_from_subnets.rb
+++ b/lib/fog/aws/parsers/elb/detach_load_balancer_from_subnets.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class DetachLoadBalancerFromSubnets < Fog::Parsers::Base
-
def reset
@response = { 'DetachLoadBalancerFromSubnetsResult' => { 'Subnets' => [] }, 'ResponseMetadata' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/disable_availability_zones_for_load_balancer.rb b/lib/fog/aws/parsers/elb/disable_availability_zones_for_load_balancer.rb
index a50f697..223ee39 100644
--- a/lib/fog/aws/parsers/elb/disable_availability_zones_for_load_balancer.rb
+++ b/lib/fog/aws/parsers/elb/disable_availability_zones_for_load_balancer.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class DisableAvailabilityZonesForLoadBalancer < Fog::Parsers::Base
-
def reset
@response = { 'DisableAvailabilityZonesForLoadBalancerResult' => { 'AvailabilityZones' => [] }, 'ResponseMetadata' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/empty.rb b/lib/fog/aws/parsers/elb/empty.rb
index 7f344b2..7699b48 100644
--- a/lib/fog/aws/parsers/elb/empty.rb
+++ b/lib/fog/aws/parsers/elb/empty.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class Empty < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -19,9 +17,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/enable_availability_zones_for_load_balancer.rb b/lib/fog/aws/parsers/elb/enable_availability_zones_for_load_balancer.rb
index 17e2ff9..c2d74a9 100644
--- a/lib/fog/aws/parsers/elb/enable_availability_zones_for_load_balancer.rb
+++ b/lib/fog/aws/parsers/elb/enable_availability_zones_for_load_balancer.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class EnableAvailabilityZonesForLoadBalancer < Fog::Parsers::Base
-
def reset
@response = { 'EnableAvailabilityZonesForLoadBalancerResult' => { 'AvailabilityZones' => [] }, 'ResponseMetadata' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/elb/register_instances_with_load_balancer.rb b/lib/fog/aws/parsers/elb/register_instances_with_load_balancer.rb
index 083e539..00e3c72 100644
--- a/lib/fog/aws/parsers/elb/register_instances_with_load_balancer.rb
+++ b/lib/fog/aws/parsers/elb/register_instances_with_load_balancer.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module ELB
-
class RegisterInstancesWithLoadBalancer < Fog::Parsers::Base
-
def reset
@response = { 'RegisterInstancesWithLoadBalancerResult' => { 'Instances' => [] }, 'ResponseMetadata' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/emr/add_instance_groups.rb b/lib/fog/aws/parsers/emr/add_instance_groups.rb
index c643779..2c8a507 100644
--- a/lib/fog/aws/parsers/emr/add_instance_groups.rb
+++ b/lib/fog/aws/parsers/emr/add_instance_groups.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module EMR
-
class AddInstanceGroups < Fog::Parsers::Base
-
def start_element(name, attrs = [])
super
case name
diff --git a/lib/fog/aws/parsers/emr/add_job_flow_steps.rb b/lib/fog/aws/parsers/emr/add_job_flow_steps.rb
index 2a93b70..6ca6042 100644
--- a/lib/fog/aws/parsers/emr/add_job_flow_steps.rb
+++ b/lib/fog/aws/parsers/emr/add_job_flow_steps.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module AWS
module EMR
-
class AddJobFlowSteps < Fog::Parsers::Base
def end_element(name)
case name
diff --git a/lib/fog/aws/parsers/emr/describe_job_flows.rb b/lib/fog/aws/parsers/emr/describe_job_flows.rb
index e2df707..20cf57a 100644
--- a/lib/fog/aws/parsers/emr/describe_job_flows.rb
+++ b/lib/fog/aws/parsers/emr/describe_job_flows.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module EMR
-
class DescribeJobFlows < Fog::Parsers::Base
-
def reset
@context = []
@contexts = ['BootstrapActions', 'ExecutionStatusDetail', 'Instances', 'Steps', 'InstanceGroups', 'Args']
@@ -133,7 +131,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/emr/modify_instance_groups.rb b/lib/fog/aws/parsers/emr/modify_instance_groups.rb
index f4daf43..af84e51 100644
--- a/lib/fog/aws/parsers/emr/modify_instance_groups.rb
+++ b/lib/fog/aws/parsers/emr/modify_instance_groups.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module AWS
module EMR
-
class ModifyInstanceGroups < Fog::Parsers::Base
def end_element(name)
case name
diff --git a/lib/fog/aws/parsers/emr/run_job_flow.rb b/lib/fog/aws/parsers/emr/run_job_flow.rb
index 4ef3a37..e088eb6 100644
--- a/lib/fog/aws/parsers/emr/run_job_flow.rb
+++ b/lib/fog/aws/parsers/emr/run_job_flow.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module AWS
module EMR
-
class RunJobFlow < Fog::Parsers::Base
def end_element(name)
case name
diff --git a/lib/fog/aws/parsers/emr/set_termination_protection.rb b/lib/fog/aws/parsers/emr/set_termination_protection.rb
index fc303bc..cc4374f 100644
--- a/lib/fog/aws/parsers/emr/set_termination_protection.rb
+++ b/lib/fog/aws/parsers/emr/set_termination_protection.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module AWS
module EMR
-
class SetTerminationProtection < Fog::Parsers::Base
def end_element(name)
case name
diff --git a/lib/fog/aws/parsers/emr/terminate_job_flows.rb b/lib/fog/aws/parsers/emr/terminate_job_flows.rb
index e555ff8..20c533e 100644
--- a/lib/fog/aws/parsers/emr/terminate_job_flows.rb
+++ b/lib/fog/aws/parsers/emr/terminate_job_flows.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module AWS
module EMR
-
class TerminateJobFlows < Fog::Parsers::Base
def end_element(name)
case name
diff --git a/lib/fog/aws/parsers/iam/base_instance_profile.rb b/lib/fog/aws/parsers/iam/base_instance_profile.rb
index 94b981e..cb79aa2 100644
--- a/lib/fog/aws/parsers/iam/base_instance_profile.rb
+++ b/lib/fog/aws/parsers/iam/base_instance_profile.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class BaseInstanceProfile < Fog::Parsers::Base
-
def reset
super
@stack = []
@@ -70,9 +68,7 @@ module Fog
end
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/basic.rb b/lib/fog/aws/parsers/iam/basic.rb
index 28049bd..43abee3 100644
--- a/lib/fog/aws/parsers/iam/basic.rb
+++ b/lib/fog/aws/parsers/iam/basic.rb
@@ -2,16 +2,13 @@ module Fog
module Parsers
module AWS
module IAM
-
class Basic < Fog::Parsers::Base
-
def end_element(name)
case name
when 'RequestId'
@response[name] = value
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/create_access_key.rb b/lib/fog/aws/parsers/iam/create_access_key.rb
index d23ac1e..d25b1a9 100644
--- a/lib/fog/aws/parsers/iam/create_access_key.rb
+++ b/lib/fog/aws/parsers/iam/create_access_key.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class CreateAccessKey < Fog::Parsers::Base
-
def reset
@response = { 'AccessKey' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/create_group.rb b/lib/fog/aws/parsers/iam/create_group.rb
index a75172d..93c0bc7 100644
--- a/lib/fog/aws/parsers/iam/create_group.rb
+++ b/lib/fog/aws/parsers/iam/create_group.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class CreateGroup < Fog::Parsers::Base
-
def reset
@response = { 'Group' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/create_user.rb b/lib/fog/aws/parsers/iam/create_user.rb
index 8afa024..8a3200c 100644
--- a/lib/fog/aws/parsers/iam/create_user.rb
+++ b/lib/fog/aws/parsers/iam/create_user.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class CreateUser < Fog::Parsers::Base
-
def reset
@response = { 'User' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/get_account_password_policy.rb b/lib/fog/aws/parsers/iam/get_account_password_policy.rb
new file mode 100644
index 0000000..d2267bb
--- /dev/null
+++ b/lib/fog/aws/parsers/iam/get_account_password_policy.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Parsers
+ module AWS
+ module IAM
+ class GetAccountPolicyPolicy < Fog::Parsers::Base
+ def reset
+ @response = {'AccountPasswordPolicy' => {}}
+ end
+
+ def end_element(name)
+ case name
+ when 'MinimumPasswordLength', 'MaxPasswordAge','PasswordReusePrevention'
+ #boolean values
+ @response['AccountPasswordPolicy'][name] = !!value
+ when 'RequireSymbols','RequireNumbers','RequireUppercaseCharacters','RequireLowercaseCharacters','AllowUsersToChangePassword','HardExpiry','ExpirePasswords'
+ #integer values
+ @response['AccountPasswordPolicy'][name] = value.to_i
+ when 'RequestId'
+ @response[name] = value
+ end
+ end
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/parsers/iam/get_account_summary.rb b/lib/fog/aws/parsers/iam/get_account_summary.rb
index 2d10fd9..dcaf021 100644
--- a/lib/fog/aws/parsers/iam/get_account_summary.rb
+++ b/lib/fog/aws/parsers/iam/get_account_summary.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class GetAccountSummary < Fog::Parsers::Base
-
def reset
super
@stack = []
@@ -37,9 +35,7 @@ module Fog
end
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/get_group.rb b/lib/fog/aws/parsers/iam/get_group.rb
index d359602..f6f6990 100644
--- a/lib/fog/aws/parsers/iam/get_group.rb
+++ b/lib/fog/aws/parsers/iam/get_group.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module AWS
module IAM
-
class GetGroup < Fog::Parsers::Base
# http://docs.amazonwebservices.com/IAM/latest/APIReference/index.html?API_GetGroup.html
@@ -40,15 +39,13 @@ module Fog
when 'member'
@response['Users'] << @user
@user = {}
- when 'IsTruncated'
+ when 'IsTruncated'
response[name] = (value == 'true')
when 'Marker', 'RequestId'
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/get_group_policy.rb b/lib/fog/aws/parsers/iam/get_group_policy.rb
index 8bb0b14..5c8ca99 100644
--- a/lib/fog/aws/parsers/iam/get_group_policy.rb
+++ b/lib/fog/aws/parsers/iam/get_group_policy.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module AWS
module IAM
-
class GetGroupPolicy < Fog::Parsers::Base
# http://docs.amazonwebservices.com/IAM/latest/APIReference/API_GetGroupPolicy.html
@@ -24,9 +23,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/get_role_policy.rb b/lib/fog/aws/parsers/iam/get_role_policy.rb
index 5971788..124cc46 100644
--- a/lib/fog/aws/parsers/iam/get_role_policy.rb
+++ b/lib/fog/aws/parsers/iam/get_role_policy.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class GetRolePolicy < Fog::Parsers::Base
-
def reset
@response = {'Policy' => {}}
end
@@ -23,9 +21,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/get_user.rb b/lib/fog/aws/parsers/iam/get_user.rb
index 1ab68e3..ec737d9 100644
--- a/lib/fog/aws/parsers/iam/get_user.rb
+++ b/lib/fog/aws/parsers/iam/get_user.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module AWS
module IAM
-
class GetUser < Fog::Parsers::Base
# http://docs.amazonwebservices.com/IAM/latest/APIReference/API_GetUser.html
@@ -20,9 +19,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/get_user_policy.rb b/lib/fog/aws/parsers/iam/get_user_policy.rb
index 5610cf1..af26e7b 100644
--- a/lib/fog/aws/parsers/iam/get_user_policy.rb
+++ b/lib/fog/aws/parsers/iam/get_user_policy.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module AWS
module IAM
-
class GetUserPolicy < Fog::Parsers::Base
# http://docs.amazonwebservices.com/IAM/latest/APIReference/API_GetUserPolicy.html
@@ -24,9 +23,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/instance_profile.rb b/lib/fog/aws/parsers/iam/instance_profile.rb
index 1bbdb94..4b9b4a6 100644
--- a/lib/fog/aws/parsers/iam/instance_profile.rb
+++ b/lib/fog/aws/parsers/iam/instance_profile.rb
@@ -2,32 +2,26 @@ module Fog
module Parsers
module AWS
module IAM
-
require 'fog/aws/parsers/iam/base_instance_profile'
class InstanceProfile < Fog::Parsers::AWS::IAM::BaseInstanceProfile
-
def reset
super
@response = {}
end
-
def finished_instance_profile(profile)
@response['InstanceProfile'] = profile
end
def end_element(name)
-
case name
when 'RequestId'
@response[name] = value
end
super
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/list_access_keys.rb b/lib/fog/aws/parsers/iam/list_access_keys.rb
index 2d56449..fb141b3 100644
--- a/lib/fog/aws/parsers/iam/list_access_keys.rb
+++ b/lib/fog/aws/parsers/iam/list_access_keys.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class ListAccessKeys < Fog::Parsers::Base
-
def reset
@access_key = {}
@response = { 'AccessKeys' => [] }
@@ -23,9 +21,7 @@ module Fog
response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/list_account_aliases.rb b/lib/fog/aws/parsers/iam/list_account_aliases.rb
index c179332..55a8058 100644
--- a/lib/fog/aws/parsers/iam/list_account_aliases.rb
+++ b/lib/fog/aws/parsers/iam/list_account_aliases.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class ListAccountAliases < Fog::Parsers::Base
-
def reset
@response = { 'AccountAliases' => [] }
end
@@ -19,9 +17,7 @@ module Fog
response[name] = @value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/list_groups.rb b/lib/fog/aws/parsers/iam/list_groups.rb
index b98d11b..b44bde9 100644
--- a/lib/fog/aws/parsers/iam/list_groups.rb
+++ b/lib/fog/aws/parsers/iam/list_groups.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class ListGroups < Fog::Parsers::Base
-
def reset
@group = {}
@response = { 'Groups' => [] }
@@ -23,9 +21,7 @@ module Fog
response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/list_groups_for_user.rb b/lib/fog/aws/parsers/iam/list_groups_for_user.rb
index 6a0e15b..645083a 100644
--- a/lib/fog/aws/parsers/iam/list_groups_for_user.rb
+++ b/lib/fog/aws/parsers/iam/list_groups_for_user.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class ListGroupsForUser < Fog::Parsers::Base
-
def reset
@group_for_user = {}
@response = { 'GroupsForUser' => [] }
@@ -23,9 +21,7 @@ module Fog
response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/list_instance_profiles.rb b/lib/fog/aws/parsers/iam/list_instance_profiles.rb
index feaeb48..4d0f24d 100644
--- a/lib/fog/aws/parsers/iam/list_instance_profiles.rb
+++ b/lib/fog/aws/parsers/iam/list_instance_profiles.rb
@@ -2,16 +2,13 @@ module Fog
module Parsers
module AWS
module IAM
-
require 'fog/aws/parsers/iam/base_instance_profile'
class ListInstanceProfiles < Fog::Parsers::AWS::IAM::BaseInstanceProfile
-
def reset
super
@response = {'InstanceProfiles' => []}
end
-
def finished_instance_profile(profile)
@response['InstanceProfiles'] << profile
end
@@ -25,9 +22,7 @@ module Fog
end
super
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/list_mfa_devices.rb b/lib/fog/aws/parsers/iam/list_mfa_devices.rb
index 2ae74dd..08c3592 100644
--- a/lib/fog/aws/parsers/iam/list_mfa_devices.rb
+++ b/lib/fog/aws/parsers/iam/list_mfa_devices.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class ListMFADevices < Fog::Parsers::Base
-
def reset
@mfa_device = {}
@response = { 'MFADevices' => [] }
@@ -25,9 +23,7 @@ module Fog
response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/list_policies.rb b/lib/fog/aws/parsers/iam/list_policies.rb
index b59d6d6..13976a1 100644
--- a/lib/fog/aws/parsers/iam/list_policies.rb
+++ b/lib/fog/aws/parsers/iam/list_policies.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class ListPolicies < Fog::Parsers::Base
-
def reset
@response = { 'PolicyNames' => [] }
end
@@ -19,9 +17,7 @@ module Fog
response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/list_roles.rb b/lib/fog/aws/parsers/iam/list_roles.rb
index 1093e17..4a8733a 100644
--- a/lib/fog/aws/parsers/iam/list_roles.rb
+++ b/lib/fog/aws/parsers/iam/list_roles.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module IAM
-
require 'fog/aws/parsers/iam/role_parser'
class ListRoles < Fog::Parsers::AWS::IAM::RoleParser
-
def reset
super
@response = { 'Roles' => [] }
diff --git a/lib/fog/aws/parsers/iam/list_server_certificates.rb b/lib/fog/aws/parsers/iam/list_server_certificates.rb
index a9c899e..1810a78 100644
--- a/lib/fog/aws/parsers/iam/list_server_certificates.rb
+++ b/lib/fog/aws/parsers/iam/list_server_certificates.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class ListServerCertificates < Fog::Parsers::Base
-
def reset
@response = { 'Certificates' => [] }
reset_certificate
@@ -29,9 +27,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/list_signing_certificates.rb b/lib/fog/aws/parsers/iam/list_signing_certificates.rb
index 3c0d376..2d3e80d 100644
--- a/lib/fog/aws/parsers/iam/list_signing_certificates.rb
+++ b/lib/fog/aws/parsers/iam/list_signing_certificates.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class ListSigningCertificates < Fog::Parsers::Base
-
def reset
@signing_certificate = {}
@response = { 'SigningCertificates' => [] }
@@ -23,10 +21,8 @@ module Fog
response[name] = value
end
end
-
end
end
end
end
end
-
diff --git a/lib/fog/aws/parsers/iam/list_users.rb b/lib/fog/aws/parsers/iam/list_users.rb
index dc69e60..ee51ade 100644
--- a/lib/fog/aws/parsers/iam/list_users.rb
+++ b/lib/fog/aws/parsers/iam/list_users.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class ListUsers < Fog::Parsers::Base
-
def reset
@user = {}
@response = { 'Users' => [] }
@@ -25,9 +23,7 @@ module Fog
response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/login_profile.rb b/lib/fog/aws/parsers/iam/login_profile.rb
index dddf89c..210bda3 100644
--- a/lib/fog/aws/parsers/iam/login_profile.rb
+++ b/lib/fog/aws/parsers/iam/login_profile.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class LoginProfile < Fog::Parsers::Base
-
def reset
@response = { 'LoginProfile' => {} }
end
@@ -19,7 +17,6 @@ module Fog
@response[name] = value
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/role_parser.rb b/lib/fog/aws/parsers/iam/role_parser.rb
index 6100309..3660ec2 100644
--- a/lib/fog/aws/parsers/iam/role_parser.rb
+++ b/lib/fog/aws/parsers/iam/role_parser.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class RoleParser < Fog::Parsers::Base
-
def reset
@role = {}
@stack = []
@@ -44,9 +42,7 @@ module Fog
end
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/single_role.rb b/lib/fog/aws/parsers/iam/single_role.rb
index a686f74..4ea4ca0 100644
--- a/lib/fog/aws/parsers/iam/single_role.rb
+++ b/lib/fog/aws/parsers/iam/single_role.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module IAM
-
require 'fog/aws/parsers/iam/role_parser'
class SingleRole < Fog::Parsers::AWS::IAM::RoleParser
-
def reset
super
@response = { 'Role' => {} }
diff --git a/lib/fog/aws/parsers/iam/update_group.rb b/lib/fog/aws/parsers/iam/update_group.rb
index 3232db3..fa84f57 100644
--- a/lib/fog/aws/parsers/iam/update_group.rb
+++ b/lib/fog/aws/parsers/iam/update_group.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module AWS
module IAM
-
class UpdateGroup < Fog::Parsers::Base
# http://docs.amazonwebservices.com/IAM/latest/APIReference/index.html?API_UpdateGroup.html
def reset
@@ -17,9 +16,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/update_user.rb b/lib/fog/aws/parsers/iam/update_user.rb
index 35a169f..bbe889c 100644
--- a/lib/fog/aws/parsers/iam/update_user.rb
+++ b/lib/fog/aws/parsers/iam/update_user.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module AWS
module IAM
-
class UpdateUser < Fog::Parsers::Base
# http://docs.amazonwebservices.com/IAM/latest/APIReference/index.html?API_UpdateUser.html
@@ -18,9 +17,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/upload_server_certificate.rb b/lib/fog/aws/parsers/iam/upload_server_certificate.rb
index 80ddc29..8c77159 100644
--- a/lib/fog/aws/parsers/iam/upload_server_certificate.rb
+++ b/lib/fog/aws/parsers/iam/upload_server_certificate.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class UploadServerCertificate < Fog::Parsers::Base
-
def reset
@response = { 'Certificate' => {} }
end
@@ -19,9 +17,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/iam/upload_signing_certificate.rb b/lib/fog/aws/parsers/iam/upload_signing_certificate.rb
index 4f473f7..2bc5684 100644
--- a/lib/fog/aws/parsers/iam/upload_signing_certificate.rb
+++ b/lib/fog/aws/parsers/iam/upload_signing_certificate.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module IAM
-
class UploadSigningCertificate < Fog::Parsers::Base
-
def reset
@response = { 'Certificate' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/rds/authorize_db_security_group_ingress.rb b/lib/fog/aws/parsers/rds/authorize_db_security_group_ingress.rb
index 7b2d2ff..8248051 100644
--- a/lib/fog/aws/parsers/rds/authorize_db_security_group_ingress.rb
+++ b/lib/fog/aws/parsers/rds/authorize_db_security_group_ingress.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/security_group_parser'
class AuthorizeDBSecurityGroupIngress < Fog::Parsers::AWS::RDS::SecurityGroupParser
-
def reset
@response = { 'AuthorizeDBSecurityGroupIngressResult' => {}, 'ResponseMetadata' => {} }
super
@@ -26,13 +24,9 @@ module Fog
else
super
end
-
end
-
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/parsers/rds/base.rb b/lib/fog/aws/parsers/rds/base.rb
index cc3cad5..de9ad65 100644
--- a/lib/fog/aws/parsers/rds/base.rb
+++ b/lib/fog/aws/parsers/rds/base.rb
@@ -2,10 +2,8 @@ module Fog
module Parsers
module AWS
module RDS
-
# Base parser for ResponseMetadata, RequestId
class Base < Fog::Parsers::Base
-
def reset
super
@response = { 'ResponseMetadata' => {} }
@@ -23,9 +21,7 @@ module Fog
super
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/rds/create_db_instance.rb b/lib/fog/aws/parsers/rds/create_db_instance.rb
index 6a8d0d6..7bdfa72 100644
--- a/lib/fog/aws/parsers/rds/create_db_instance.rb
+++ b/lib/fog/aws/parsers/rds/create_db_instance.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/db_parser'
class CreateDBInstance < Fog::Parsers::AWS::RDS::DbParser
-
def reset
@response = { 'CreateDBInstanceResult' => {}, 'ResponseMetadata' => {} }
super
diff --git a/lib/fog/aws/parsers/rds/create_db_instance_read_replica.rb b/lib/fog/aws/parsers/rds/create_db_instance_read_replica.rb
index a7ee488..b19b3a7 100644
--- a/lib/fog/aws/parsers/rds/create_db_instance_read_replica.rb
+++ b/lib/fog/aws/parsers/rds/create_db_instance_read_replica.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/db_parser'
class CreateDBInstanceReadReplica < Fog::Parsers::AWS::RDS::DbParser
-
def reset
@response = { 'CreateDBInstanceReadReplicaResult' => {}, 'ResponseMetadata' => {} }
super
diff --git a/lib/fog/aws/parsers/rds/create_db_parameter_group.rb b/lib/fog/aws/parsers/rds/create_db_parameter_group.rb
index 12cdba5..0b05708 100644
--- a/lib/fog/aws/parsers/rds/create_db_parameter_group.rb
+++ b/lib/fog/aws/parsers/rds/create_db_parameter_group.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module RDS
-
class CreateDbParameterGroup < Fog::Parsers::Base
-
def reset
@response = { 'CreateDBParameterGroupResult' => {}, 'ResponseMetadata' => {} }
@db_parameter_group = {}
diff --git a/lib/fog/aws/parsers/rds/create_db_security_group.rb b/lib/fog/aws/parsers/rds/create_db_security_group.rb
index 5933896..f35c1f2 100644
--- a/lib/fog/aws/parsers/rds/create_db_security_group.rb
+++ b/lib/fog/aws/parsers/rds/create_db_security_group.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/security_group_parser'
class CreateDBSecurityGroup < Fog::Parsers::AWS::RDS::SecurityGroupParser
-
def reset
@response = { 'CreateDBSecurityGroupResult' => {}, 'ResponseMetadata' => {} }
super
@@ -26,13 +24,9 @@ module Fog
else
super
end
-
end
-
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/parsers/rds/create_db_snapshot.rb b/lib/fog/aws/parsers/rds/create_db_snapshot.rb
index a89b9f0..d24fc17 100644
--- a/lib/fog/aws/parsers/rds/create_db_snapshot.rb
+++ b/lib/fog/aws/parsers/rds/create_db_snapshot.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/rds/snapshot_parser'
class CreateDBSnapshot < Fog::Parsers::AWS::RDS::SnapshotParser
-
def reset
@response = { 'CreateDBSnapshotResult' => {}, 'ResponseMetadata' => {} }
super
@@ -26,9 +25,7 @@ module Fog
super
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/rds/create_db_subnet_group.rb b/lib/fog/aws/parsers/rds/create_db_subnet_group.rb
index 50c0abd..6cce888 100644
--- a/lib/fog/aws/parsers/rds/create_db_subnet_group.rb
+++ b/lib/fog/aws/parsers/rds/create_db_subnet_group.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/subnet_group_parser'
class CreateDBSubnetGroup < Fog::Parsers::AWS::RDS::SubnetGroupParser
-
def reset
@response = { 'CreateDBSubnetGroupResult' => {}, 'ResponseMetadata' => {} }
super
@@ -26,13 +24,9 @@ module Fog
else
super
end
-
end
-
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/parsers/rds/db_engine_version_parser.rb b/lib/fog/aws/parsers/rds/db_engine_version_parser.rb
index f26dc16..1826b80 100644
--- a/lib/fog/aws/parsers/rds/db_engine_version_parser.rb
+++ b/lib/fog/aws/parsers/rds/db_engine_version_parser.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module RDS
-
class DBEngineVersionParser < Fog::Parsers::Base
-
def reset
@db_engine_version = fresh_engine_version
end
@@ -15,7 +13,6 @@ module Fog
def start_element(name, attrs = [])
super
-
end
def end_element(name)
diff --git a/lib/fog/aws/parsers/rds/db_parser.rb b/lib/fog/aws/parsers/rds/db_parser.rb
index 23d91c9..01fcac9 100644
--- a/lib/fog/aws/parsers/rds/db_parser.rb
+++ b/lib/fog/aws/parsers/rds/db_parser.rb
@@ -2,12 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
class DbParser < Fog::Parsers::Base
-
def reset
@db_instance = fresh_instance
-
end
def fresh_instance
@@ -39,17 +36,14 @@ module Fog
@in_vpc_security_groups = true
@vpc_security_groups = []
end
-
end
def end_element(name)
-
case name
when 'LatestRestorableTime', 'InstanceCreateTime'
@db_instance[name] = Time.parse value
- when 'Engine',
- 'DBInstanceStatus', 'DBInstanceIdentifier', 'EngineVersion',
+ when 'Engine', 'DBInstanceStatus', 'DBInstanceIdentifier',
'PreferredBackupWindow', 'PreferredMaintenanceWindow',
'AvailabilityZone', 'MasterUsername', 'DBName', 'LicenseModel',
'DBSubnetGroupName'
@@ -77,7 +71,8 @@ module Fog
else
@db_instance[name] = value.to_i
end
- when 'DBInstanceClass', 'EngineVersion', 'MasterUserPassword', 'MultiAZ'
+ when 'DBInstanceClass', 'EngineVersion', 'MasterUserPassword',
+ 'MultiAZ', 'Iops', 'AllocatedStorage'
if @in_pending_modified_values
@pending_modified_values[name] = value
else
@@ -100,18 +95,6 @@ module Fog
@vpc_security_group = {}
when 'VpcSecurityGroupId'
@vpc_security_group[name] = value
- when 'Iops'
- if @in_pending_modified_values
- @pending_modified_values[name] = value.to_i
- else
- @db_instance[name] = value.to_i
- end
- when 'AllocatedStorage'
- if @in_pending_modified_values
- @pending_modified_values[name] = value.to_i
- else
- @db_instance[name] = value.to_i
- end
when 'Status'
# Unfortunately, status is used in VpcSecurityGroupMemebership and
diff --git a/lib/fog/aws/parsers/rds/delete_db_instance.rb b/lib/fog/aws/parsers/rds/delete_db_instance.rb
index 738d714..98b9989 100644
--- a/lib/fog/aws/parsers/rds/delete_db_instance.rb
+++ b/lib/fog/aws/parsers/rds/delete_db_instance.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/db_parser'
class DeleteDBInstance < Fog::Parsers::AWS::RDS::DbParser
-
def reset
@response = { 'DeleteDBInstanceResult' => {}, 'ResponseMetadata' => {} }
super
diff --git a/lib/fog/aws/parsers/rds/delete_db_parameter_group.rb b/lib/fog/aws/parsers/rds/delete_db_parameter_group.rb
index 98cf233..8056bbc 100644
--- a/lib/fog/aws/parsers/rds/delete_db_parameter_group.rb
+++ b/lib/fog/aws/parsers/rds/delete_db_parameter_group.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module RDS
-
class DeleteDbParameterGroup < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
@db_parameter_group = {}
diff --git a/lib/fog/aws/parsers/rds/delete_db_security_group.rb b/lib/fog/aws/parsers/rds/delete_db_security_group.rb
index 282c7d6..7928265 100644
--- a/lib/fog/aws/parsers/rds/delete_db_security_group.rb
+++ b/lib/fog/aws/parsers/rds/delete_db_security_group.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/rds/snapshot_parser'
class DeleteDBSecurityGroup < Fog::Parsers::AWS::RDS::SnapshotParser
-
def reset
@response = { 'ResponseMetadata' => {} }
super
@@ -23,11 +22,8 @@ module Fog
super
end
end
-
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/parsers/rds/delete_db_snapshot.rb b/lib/fog/aws/parsers/rds/delete_db_snapshot.rb
index 4d733de..6250daa 100644
--- a/lib/fog/aws/parsers/rds/delete_db_snapshot.rb
+++ b/lib/fog/aws/parsers/rds/delete_db_snapshot.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/snapshot_parser'
class DeleteDBSnapshot < Fog::Parsers::AWS::RDS::SnapshotParser
-
def reset
@response = { 'DeleteDBSnapshotResult' => {}, 'ResponseMetadata' => {} }
super
diff --git a/lib/fog/aws/parsers/rds/delete_db_subnet_group.rb b/lib/fog/aws/parsers/rds/delete_db_subnet_group.rb
index 3052516..923c65e 100644
--- a/lib/fog/aws/parsers/rds/delete_db_subnet_group.rb
+++ b/lib/fog/aws/parsers/rds/delete_db_subnet_group.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/subnet_group_parser'
class DeleteDBSubnetGroup < Fog::Parsers::AWS::RDS::SubnetGroupParser
-
def reset
@response = { 'DeleteDBSubnetGroupResponse' => {}, 'ResponseMetadata' => {} }
super
@@ -23,13 +21,9 @@ module Fog
else
super
end
-
end
-
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/parsers/rds/describe_db_engine_versions.rb b/lib/fog/aws/parsers/rds/describe_db_engine_versions.rb
index a8d8853..452d1b5 100644
--- a/lib/fog/aws/parsers/rds/describe_db_engine_versions.rb
+++ b/lib/fog/aws/parsers/rds/describe_db_engine_versions.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/db_engine_version_parser'
class DescribeDBEngineVersions < Fog::Parsers::AWS::RDS::DBEngineVersionParser
-
def reset
@response = { 'DescribeDBEngineVersionsResult' => {'DBEngineVersions' => []}, 'ResponseMetadata' => {} }
super
@@ -28,11 +26,8 @@ module Fog
else
super
end
-
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/rds/describe_db_instances.rb b/lib/fog/aws/parsers/rds/describe_db_instances.rb
index 9bd8d8b..d20c08a 100644
--- a/lib/fog/aws/parsers/rds/describe_db_instances.rb
+++ b/lib/fog/aws/parsers/rds/describe_db_instances.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/db_parser'
class DescribeDBInstances < Fog::Parsers::AWS::RDS::DbParser
-
def reset
@response = { 'DescribeDBInstancesResult' => {'DBInstances' => []}, 'ResponseMetadata' => {} }
super
diff --git a/lib/fog/aws/parsers/rds/describe_db_log_files.rb b/lib/fog/aws/parsers/rds/describe_db_log_files.rb
index da8998b..bdbcadc 100644
--- a/lib/fog/aws/parsers/rds/describe_db_log_files.rb
+++ b/lib/fog/aws/parsers/rds/describe_db_log_files.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module RDS
-
class DescribeDBLogFiles < Fog::Parsers::Base
-
attr_reader :rds_id
def initialize(rds_id)
diff --git a/lib/fog/aws/parsers/rds/describe_db_parameter_groups.rb b/lib/fog/aws/parsers/rds/describe_db_parameter_groups.rb
index 576fb13..f724cb7 100644
--- a/lib/fog/aws/parsers/rds/describe_db_parameter_groups.rb
+++ b/lib/fog/aws/parsers/rds/describe_db_parameter_groups.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module RDS
-
class DescribeDBParameterGroups < Fog::Parsers::Base
-
def reset
@response = { 'DescribeDBParameterGroupsResult' => {'DBParameterGroups' => []}, 'ResponseMetadata' => {} }
@db_parameter_group = {}
@@ -27,11 +25,8 @@ module Fog
when 'RequestId'
@response['ResponseMetadata'][name] = value
end
-
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/rds/describe_db_parameters.rb b/lib/fog/aws/parsers/rds/describe_db_parameters.rb
index 60e32ae..c74b179 100644
--- a/lib/fog/aws/parsers/rds/describe_db_parameters.rb
+++ b/lib/fog/aws/parsers/rds/describe_db_parameters.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module RDS
-
class DescribeDBParameters < Fog::Parsers::Base
-
def reset
@response = { 'DescribeDBParametersResult' =>{}, 'ResponseMetadata' => {} }
@parameter = {}
diff --git a/lib/fog/aws/parsers/rds/describe_db_reserved_instances.rb b/lib/fog/aws/parsers/rds/describe_db_reserved_instances.rb
index fad7954..9cf07cc 100644
--- a/lib/fog/aws/parsers/rds/describe_db_reserved_instances.rb
+++ b/lib/fog/aws/parsers/rds/describe_db_reserved_instances.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module RDS
-
class DescribeDBReservedInstances < Fog::Parsers::Base
-
def reset
@reserved_instance = {}
@response = { 'ReservedDBInstances' => [] }
@@ -33,11 +31,8 @@ module Fog
@reserved_instance[name] = Time.parse(@value)
end
end
-
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/parsers/rds/describe_db_security_groups.rb b/lib/fog/aws/parsers/rds/describe_db_security_groups.rb
index acb0dd5..3e2acba 100644
--- a/lib/fog/aws/parsers/rds/describe_db_security_groups.rb
+++ b/lib/fog/aws/parsers/rds/describe_db_security_groups.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/security_group_parser'
class DescribeDBSecurityGroups < Fog::Parsers::AWS::RDS::SecurityGroupParser
-
def reset
@response = { 'DescribeDBSecurityGroupsResult' => {'DBSecurityGroups' => []}, 'ResponseMetadata' => {} }
super
@@ -28,11 +26,8 @@ module Fog
else
super
end
-
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/rds/describe_db_snapshots.rb b/lib/fog/aws/parsers/rds/describe_db_snapshots.rb
index 45f62fa..fe89f61 100644
--- a/lib/fog/aws/parsers/rds/describe_db_snapshots.rb
+++ b/lib/fog/aws/parsers/rds/describe_db_snapshots.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/snapshot_parser'
class DescribeDBSnapshots < Fog::Parsers::AWS::RDS::SnapshotParser
-
def reset
@response = { 'DescribeDBSnapshotsResult' => {'DBSnapshots' => []}, 'ResponseMetadata' => {} }
super
@@ -28,11 +26,8 @@ module Fog
else
super
end
-
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/rds/describe_db_subnet_groups.rb b/lib/fog/aws/parsers/rds/describe_db_subnet_groups.rb
index 959de18..57c048f 100644
--- a/lib/fog/aws/parsers/rds/describe_db_subnet_groups.rb
+++ b/lib/fog/aws/parsers/rds/describe_db_subnet_groups.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/subnet_group_parser'
class DescribeDBSubnetGroups < Fog::Parsers::AWS::RDS::SubnetGroupParser
-
def reset
@response = { 'DescribeDBSubnetGroupsResult' => {'DBSubnetGroups' => []}, 'ResponseMetadata' => {} }
super
@@ -28,9 +26,7 @@ module Fog
else
super
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/rds/describe_orderable_db_instance_options.rb b/lib/fog/aws/parsers/rds/describe_orderable_db_instance_options.rb
index 8535c93..cb0f78a 100644
--- a/lib/fog/aws/parsers/rds/describe_orderable_db_instance_options.rb
+++ b/lib/fog/aws/parsers/rds/describe_orderable_db_instance_options.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module RDS
-
class DescribeOrderableDBInstanceOptions < Fog::Parsers::Base
-
def reset
@response = { 'DescribeOrderableDBInstanceOptionsResult' => {'OrderableDBInstanceOptions' => []}, 'ResponseMetadata' => {} }
@db_instance_option = {}
diff --git a/lib/fog/aws/parsers/rds/download_db_logfile_portion.rb b/lib/fog/aws/parsers/rds/download_db_logfile_portion.rb
index 7ded798..8b1d97f 100644
--- a/lib/fog/aws/parsers/rds/download_db_logfile_portion.rb
+++ b/lib/fog/aws/parsers/rds/download_db_logfile_portion.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module RDS
-
class DownloadDBLogFilePortion < Fog::Parsers::Base
-
def reset
@response = { 'DownloadDBLogFilePortionResult' => {}, 'ResponseMetadata' => {} }
end
@@ -17,9 +15,7 @@ module Fog
key = (name == 'RequestId') ? 'ResponseMetadata' : 'DownloadDBLogFilePortionResult'
@response[key][name] = value
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/rds/event_list.rb b/lib/fog/aws/parsers/rds/event_list.rb
index 77a8874..35753e9 100644
--- a/lib/fog/aws/parsers/rds/event_list.rb
+++ b/lib/fog/aws/parsers/rds/event_list.rb
@@ -5,7 +5,6 @@ module Fog
require 'fog/aws/parsers/rds/base'
class EventListParser < Base
-
def reset
super
@response['Events'] = []
@@ -16,7 +15,6 @@ module Fog
case name
when 'Event'; then @event = {}
end
-
end
def end_element(name)
diff --git a/lib/fog/aws/parsers/rds/modify_db_instance.rb b/lib/fog/aws/parsers/rds/modify_db_instance.rb
index 6dea9dd..e1232cb 100644
--- a/lib/fog/aws/parsers/rds/modify_db_instance.rb
+++ b/lib/fog/aws/parsers/rds/modify_db_instance.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/db_parser'
class ModifyDBInstance < Fog::Parsers::AWS::RDS::DbParser
-
def reset
@response = { 'ModifyDBInstanceResult' => {}, 'ResponseMetadata' => {} }
super
diff --git a/lib/fog/aws/parsers/rds/modify_db_parameter_group.rb b/lib/fog/aws/parsers/rds/modify_db_parameter_group.rb
index fd922cb..60c63f4 100644
--- a/lib/fog/aws/parsers/rds/modify_db_parameter_group.rb
+++ b/lib/fog/aws/parsers/rds/modify_db_parameter_group.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module RDS
-
class ModifyDbParameterGroup < Fog::Parsers::Base
-
def reset
@response = { 'ModifyDBParameterGroupResult' => {}, 'ResponseMetadata' => {} }
end
diff --git a/lib/fog/aws/parsers/rds/promote_read_replica.rb b/lib/fog/aws/parsers/rds/promote_read_replica.rb
new file mode 100644
index 0000000..80fbc0e
--- /dev/null
+++ b/lib/fog/aws/parsers/rds/promote_read_replica.rb
@@ -0,0 +1,32 @@
+module Fog
+ module Parsers
+ module AWS
+ module RDS
+ require 'fog/aws/parsers/rds/db_parser'
+
+ class PromoteReadReplica < Fog::Parsers::AWS::RDS::DbParser
+ def reset
+ @response = { 'PromoteReadReplicaResult' => {}, 'ResponseMetadata' => {} }
+ super
+ end
+
+ def start_element(name, attrs = [])
+ super
+ end
+
+ def end_element(name)
+ case name
+ when 'DBInstance'
+ @response['PromoteReadReplicaResult']['DBInstance'] = @db_instance
+ @db_instance = fresh_instance
+ when 'RequestId'
+ @response['ResponseMetadata'][name] = value
+ else
+ super
+ end
+ end
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/parsers/rds/reboot_db_instance.rb b/lib/fog/aws/parsers/rds/reboot_db_instance.rb
index 4cc32fb..334d3db 100644
--- a/lib/fog/aws/parsers/rds/reboot_db_instance.rb
+++ b/lib/fog/aws/parsers/rds/reboot_db_instance.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/db_parser'
class RebootDBInstance < Fog::Parsers::AWS::RDS::DbParser
-
def reset
@response = { 'RebootDBInstanceResult' => {}, 'ResponseMetadata' => {} }
super
diff --git a/lib/fog/aws/parsers/rds/restore_db_instance_from_db_snapshot.rb b/lib/fog/aws/parsers/rds/restore_db_instance_from_db_snapshot.rb
index d022e5d..db12ec8 100644
--- a/lib/fog/aws/parsers/rds/restore_db_instance_from_db_snapshot.rb
+++ b/lib/fog/aws/parsers/rds/restore_db_instance_from_db_snapshot.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/db_parser'
class RestoreDBInstanceFromDBSnapshot < Fog::Parsers::AWS::RDS::DbParser
-
def reset
@response = { 'RestoreDBInstanceFromDBSnapshot' => {}, 'ResponseMetadata' => {} }
super
diff --git a/lib/fog/aws/parsers/rds/restore_db_instance_to_point_in_time.rb b/lib/fog/aws/parsers/rds/restore_db_instance_to_point_in_time.rb
index b8482f0..d9b3da0 100644
--- a/lib/fog/aws/parsers/rds/restore_db_instance_to_point_in_time.rb
+++ b/lib/fog/aws/parsers/rds/restore_db_instance_to_point_in_time.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/db_parser'
class RestoreDBInstanceToPointInTime < Fog::Parsers::AWS::RDS::DbParser
-
def reset
@response = { 'RestoreDBInstanceToPointInTime' => {}, 'ResponseMetadata' => {} }
super
@@ -32,4 +30,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/aws/parsers/rds/revoke_db_security_group_ingress.rb b/lib/fog/aws/parsers/rds/revoke_db_security_group_ingress.rb
index e846ba3..84d6bd8 100644
--- a/lib/fog/aws/parsers/rds/revoke_db_security_group_ingress.rb
+++ b/lib/fog/aws/parsers/rds/revoke_db_security_group_ingress.rb
@@ -2,11 +2,9 @@ module Fog
module Parsers
module AWS
module RDS
-
require 'fog/aws/parsers/rds/security_group_parser'
class RevokeDBSecurityGroupIngress < Fog::Parsers::AWS::RDS::SecurityGroupParser
-
def reset
@response = { 'RevokeDBSecurityGroupIngressResult' => {}, 'ResponseMetadata' => {} }
super
@@ -26,14 +24,9 @@ module Fog
else
super
end
-
end
-
end
-
end
end
end
end
-
-
diff --git a/lib/fog/aws/parsers/rds/security_group_parser.rb b/lib/fog/aws/parsers/rds/security_group_parser.rb
index 37317f5..e3e8be0 100644
--- a/lib/fog/aws/parsers/rds/security_group_parser.rb
+++ b/lib/fog/aws/parsers/rds/security_group_parser.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module RDS
-
class SecurityGroupParser < Fog::Parsers::Base
-
def reset
@security_group = fresh_security_group
end
@@ -18,7 +16,6 @@ module Fog
case name
when 'EC2SecurityGroup', 'IPRange'; then @ingress = {}
end
-
end
def end_element(name)
diff --git a/lib/fog/aws/parsers/rds/snapshot_parser.rb b/lib/fog/aws/parsers/rds/snapshot_parser.rb
index 16c2df1..f41534e 100644
--- a/lib/fog/aws/parsers/rds/snapshot_parser.rb
+++ b/lib/fog/aws/parsers/rds/snapshot_parser.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module RDS
-
class SnapshotParser < Fog::Parsers::Base
-
def reset
@db_snapshot = fresh_snapshot
end
@@ -15,7 +13,6 @@ module Fog
def start_element(name, attrs = [])
super
-
end
def end_element(name)
diff --git a/lib/fog/aws/parsers/rds/subnet_group_parser.rb b/lib/fog/aws/parsers/rds/subnet_group_parser.rb
index b94e9f5..03aea7b 100644
--- a/lib/fog/aws/parsers/rds/subnet_group_parser.rb
+++ b/lib/fog/aws/parsers/rds/subnet_group_parser.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module RDS
-
class SubnetGroupParser < Fog::Parsers::Base
-
def reset
@db_subnet_group = fresh_subnet_group
end
@@ -30,7 +28,6 @@ module Fog
def fresh_subnet_group
{'Subnets' => []}
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/rds/tag_list_parser.rb b/lib/fog/aws/parsers/rds/tag_list_parser.rb
index 2441f46..a453dad 100644
--- a/lib/fog/aws/parsers/rds/tag_list_parser.rb
+++ b/lib/fog/aws/parsers/rds/tag_list_parser.rb
@@ -4,7 +4,6 @@ module Fog
module RDS
# parses an XML-formatted list of resource tags from AWS
class TagListParser < Fog::Parsers::Base
-
# each tag is modeled as a String pair (2-element Array)
def reset
@this_key = nil
@@ -27,7 +26,6 @@ module Fog
@response['ListTagsForResourceResult']['TagList'] = @tags
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/redshift/cluster.rb b/lib/fog/aws/parsers/redshift/cluster.rb
index 8278720..5fdb57a 100644
--- a/lib/fog/aws/parsers/redshift/cluster.rb
+++ b/lib/fog/aws/parsers/redshift/cluster.rb
@@ -26,4 +26,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/aws/parsers/redshift/cluster_parser.rb b/lib/fog/aws/parsers/redshift/cluster_parser.rb
index 5d5d6b0..b0a4bb9 100644
--- a/lib/fog/aws/parsers/redshift/cluster_parser.rb
+++ b/lib/fog/aws/parsers/redshift/cluster_parser.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class ClusterParser < Fog::Parsers::Base
# :cluster_identifier - (String)
# :node_type - (String)
diff --git a/lib/fog/aws/parsers/redshift/cluster_security_group_parser.rb b/lib/fog/aws/parsers/redshift/cluster_security_group_parser.rb
index 7c659ad..9c1d639 100644
--- a/lib/fog/aws/parsers/redshift/cluster_security_group_parser.rb
+++ b/lib/fog/aws/parsers/redshift/cluster_security_group_parser.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class ClusterSecurityGroupParser < Fog::Parsers::Base
# :cluster_security_group_name - (String)
# :description - (String)
diff --git a/lib/fog/aws/parsers/redshift/cluster_snapshot.rb b/lib/fog/aws/parsers/redshift/cluster_snapshot.rb
index 6d4dd5a..c74e514 100644
--- a/lib/fog/aws/parsers/redshift/cluster_snapshot.rb
+++ b/lib/fog/aws/parsers/redshift/cluster_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
require 'fog/aws/parsers/redshift/cluster_snapshot_parser'
class ClusterSnapshot < ClusterSnapshotParser
diff --git a/lib/fog/aws/parsers/redshift/cluster_snapshot_parser.rb b/lib/fog/aws/parsers/redshift/cluster_snapshot_parser.rb
index 4c7c2d9..2aa62c7 100644
--- a/lib/fog/aws/parsers/redshift/cluster_snapshot_parser.rb
+++ b/lib/fog/aws/parsers/redshift/cluster_snapshot_parser.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class ClusterSnapshotParser < Fog::Parsers::Base
# :snapshot_identifier - (String)
# :cluster_identifier - (String)
diff --git a/lib/fog/aws/parsers/redshift/cluster_subnet_group_parser.rb b/lib/fog/aws/parsers/redshift/cluster_subnet_group_parser.rb
index cf6678c..7374013 100644
--- a/lib/fog/aws/parsers/redshift/cluster_subnet_group_parser.rb
+++ b/lib/fog/aws/parsers/redshift/cluster_subnet_group_parser.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class ClusterSubnetGroupParser < Fog::Parsers::Base
# :cluster_subnet_group_name - (String)
# :description - (String)
diff --git a/lib/fog/aws/parsers/redshift/create_cluster_parameter_group.rb b/lib/fog/aws/parsers/redshift/create_cluster_parameter_group.rb
index ad7d70b..50b85dc 100644
--- a/lib/fog/aws/parsers/redshift/create_cluster_parameter_group.rb
+++ b/lib/fog/aws/parsers/redshift/create_cluster_parameter_group.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class CreateClusterParameterGroup < Fog::Parsers::Base
# :parameter_group_name - (String)
# :parameter_group_family - (String)
diff --git a/lib/fog/aws/parsers/redshift/create_cluster_security_group.rb b/lib/fog/aws/parsers/redshift/create_cluster_security_group.rb
index 59a936e..2e542ac 100644
--- a/lib/fog/aws/parsers/redshift/create_cluster_security_group.rb
+++ b/lib/fog/aws/parsers/redshift/create_cluster_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
require 'fog/aws/parsers/redshift/cluster_security_group_parser'
class CreateClusterSecurityGroup < ClusterSecurityGroupParser
diff --git a/lib/fog/aws/parsers/redshift/describe_cluster_parameter_groups.rb b/lib/fog/aws/parsers/redshift/describe_cluster_parameter_groups.rb
index ad6c366..3b680e1 100644
--- a/lib/fog/aws/parsers/redshift/describe_cluster_parameter_groups.rb
+++ b/lib/fog/aws/parsers/redshift/describe_cluster_parameter_groups.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class DescribeClusterParameterGroups < Fog::Parsers::Base
# :marker - (String)
# :parameter_groups - (Array)
diff --git a/lib/fog/aws/parsers/redshift/describe_cluster_parameters.rb b/lib/fog/aws/parsers/redshift/describe_cluster_parameters.rb
index f9a5780..ef6507d 100644
--- a/lib/fog/aws/parsers/redshift/describe_cluster_parameters.rb
+++ b/lib/fog/aws/parsers/redshift/describe_cluster_parameters.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class DescribeClusterParameters < Fog::Parsers::Base
# :marker - (String)
# :parameters - (Array)
diff --git a/lib/fog/aws/parsers/redshift/describe_cluster_security_groups.rb b/lib/fog/aws/parsers/redshift/describe_cluster_security_groups.rb
index f3508a9..50d492b 100644
--- a/lib/fog/aws/parsers/redshift/describe_cluster_security_groups.rb
+++ b/lib/fog/aws/parsers/redshift/describe_cluster_security_groups.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
require 'fog/aws/parsers/redshift/cluster_security_group_parser'
class DescribeClusterSecurityGroups < ClusterSecurityGroupParser
diff --git a/lib/fog/aws/parsers/redshift/describe_cluster_snapshots.rb b/lib/fog/aws/parsers/redshift/describe_cluster_snapshots.rb
index 5f46526..20f22d6 100644
--- a/lib/fog/aws/parsers/redshift/describe_cluster_snapshots.rb
+++ b/lib/fog/aws/parsers/redshift/describe_cluster_snapshots.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
require 'fog/aws/parsers/redshift/cluster_snapshot_parser'
class DescribeClusterSnapshots < ClusterSnapshotParser
diff --git a/lib/fog/aws/parsers/redshift/describe_cluster_subnet_groups.rb b/lib/fog/aws/parsers/redshift/describe_cluster_subnet_groups.rb
index 2a5c8f4..53981a8 100644
--- a/lib/fog/aws/parsers/redshift/describe_cluster_subnet_groups.rb
+++ b/lib/fog/aws/parsers/redshift/describe_cluster_subnet_groups.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class DescribeClusterSubnetGroups < Fog::Parsers::Base
# :marker - (String)
# :cluster_subnet_groups - (Array<Hash>)
@@ -54,5 +53,3 @@ module Fog
end
end
end
-
-
diff --git a/lib/fog/aws/parsers/redshift/describe_cluster_versions.rb b/lib/fog/aws/parsers/redshift/describe_cluster_versions.rb
index 2feb4b2..d6a2f39 100644
--- a/lib/fog/aws/parsers/redshift/describe_cluster_versions.rb
+++ b/lib/fog/aws/parsers/redshift/describe_cluster_versions.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class DescribeClusterVersions < Fog::Parsers::Base
# :marker - (String)
# :cluster_versions - (Array<Hash>)
@@ -49,5 +48,3 @@ module Fog
end
end
end
-
-
diff --git a/lib/fog/aws/parsers/redshift/describe_clusters.rb b/lib/fog/aws/parsers/redshift/describe_clusters.rb
index 9b23080..2307673 100644
--- a/lib/fog/aws/parsers/redshift/describe_clusters.rb
+++ b/lib/fog/aws/parsers/redshift/describe_clusters.rb
@@ -27,4 +27,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/aws/parsers/redshift/describe_default_cluster_parameters.rb b/lib/fog/aws/parsers/redshift/describe_default_cluster_parameters.rb
index 7f935f3..8a7bca7 100644
--- a/lib/fog/aws/parsers/redshift/describe_default_cluster_parameters.rb
+++ b/lib/fog/aws/parsers/redshift/describe_default_cluster_parameters.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class DescribeDefaultClusterParameters < Fog::Parsers::Base
# :marker - (String)
# :parameter_group_family - (String)
diff --git a/lib/fog/aws/parsers/redshift/describe_events.rb b/lib/fog/aws/parsers/redshift/describe_events.rb
index d0d8cff..e224f9a 100644
--- a/lib/fog/aws/parsers/redshift/describe_events.rb
+++ b/lib/fog/aws/parsers/redshift/describe_events.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class DescribeEvents < Fog::Parsers::Base
# :marker - (String)
# :events - (Array)
diff --git a/lib/fog/aws/parsers/redshift/describe_orderable_cluster_options.rb b/lib/fog/aws/parsers/redshift/describe_orderable_cluster_options.rb
index 206810a..b99a1d7 100644
--- a/lib/fog/aws/parsers/redshift/describe_orderable_cluster_options.rb
+++ b/lib/fog/aws/parsers/redshift/describe_orderable_cluster_options.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class DescribeOrderableClusterOptions < Fog::Parsers::Base
# :marker - (String)
# :orderable_cluster_options - (Array)
diff --git a/lib/fog/aws/parsers/redshift/describe_reserved_node_offerings.rb b/lib/fog/aws/parsers/redshift/describe_reserved_node_offerings.rb
index 4fbaede..b43effe 100644
--- a/lib/fog/aws/parsers/redshift/describe_reserved_node_offerings.rb
+++ b/lib/fog/aws/parsers/redshift/describe_reserved_node_offerings.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class DescribeReservedNodeOfferings < Fog::Parsers::Base
# :marker - (String)
# :reserved_node_offerings - (Array)
diff --git a/lib/fog/aws/parsers/redshift/describe_reserved_nodes.rb b/lib/fog/aws/parsers/redshift/describe_reserved_nodes.rb
index 2a86942..23a3989 100644
--- a/lib/fog/aws/parsers/redshift/describe_reserved_nodes.rb
+++ b/lib/fog/aws/parsers/redshift/describe_reserved_nodes.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class DescribeReservedNodes < Fog::Parsers::Base
# :marker - (String)
# :reserved_nodes - (Array)
diff --git a/lib/fog/aws/parsers/redshift/describe_resize.rb b/lib/fog/aws/parsers/redshift/describe_resize.rb
index 8e47fec..9211139 100644
--- a/lib/fog/aws/parsers/redshift/describe_resize.rb
+++ b/lib/fog/aws/parsers/redshift/describe_resize.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class DescribeResize < Fog::Parsers::Base
# :target_node_type - (String)
# :target_number_of_nodes - (Integer)
@@ -15,7 +14,6 @@ module Fog
@response = { 'ImportTablesCompleted' => [], 'ImportTablesInProgress' => [], 'ImportTablesNotStarted' => []}
end
-
def start_element(name, attrs = [])
super
case name
diff --git a/lib/fog/aws/parsers/redshift/purchase_reserved_node_offering.rb b/lib/fog/aws/parsers/redshift/purchase_reserved_node_offering.rb
index b787436..441d44d 100644
--- a/lib/fog/aws/parsers/redshift/purchase_reserved_node_offering.rb
+++ b/lib/fog/aws/parsers/redshift/purchase_reserved_node_offering.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Redshift
module AWS
-
class PurchaseReservedNodeOffering < Fog::Parsers::Base
-
# :reserved_node_id - (String)
# :reserved_node_offering_id - (String)
# :node_type - (String)
diff --git a/lib/fog/aws/parsers/redshift/revoke_cluster_security_group_ingress.rb b/lib/fog/aws/parsers/redshift/revoke_cluster_security_group_ingress.rb
index 129d536..70f4452 100644
--- a/lib/fog/aws/parsers/redshift/revoke_cluster_security_group_ingress.rb
+++ b/lib/fog/aws/parsers/redshift/revoke_cluster_security_group_ingress.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
require 'fog/aws/parsers/redshift/cluster_security_group_parser'
class RevokeClusterSecurityGroupIngress < ClusterSecurityGroupParser
diff --git a/lib/fog/aws/parsers/redshift/update_cluster_parameter_group_parser.rb b/lib/fog/aws/parsers/redshift/update_cluster_parameter_group_parser.rb
index d477c40..4d0a029 100644
--- a/lib/fog/aws/parsers/redshift/update_cluster_parameter_group_parser.rb
+++ b/lib/fog/aws/parsers/redshift/update_cluster_parameter_group_parser.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Redshift
module AWS
-
class UpdateClusterParameterGroupParser < Fog::Parsers::Base
# :parameter_group_name - (String)
# :parameter_group_status - (String)
diff --git a/lib/fog/aws/parsers/ses/delete_verified_email_address.rb b/lib/fog/aws/parsers/ses/delete_verified_email_address.rb
index 1472b92..9d357f0 100644
--- a/lib/fog/aws/parsers/ses/delete_verified_email_address.rb
+++ b/lib/fog/aws/parsers/ses/delete_verified_email_address.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SES
-
class DeleteVerifiedEmailAddress < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -15,9 +13,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/ses/get_send_quota.rb b/lib/fog/aws/parsers/ses/get_send_quota.rb
index ffff267..9430d4b 100644
--- a/lib/fog/aws/parsers/ses/get_send_quota.rb
+++ b/lib/fog/aws/parsers/ses/get_send_quota.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SES
-
class GetSendQuota < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/ses/get_send_statistics.rb b/lib/fog/aws/parsers/ses/get_send_statistics.rb
index 76821e4..263848e 100644
--- a/lib/fog/aws/parsers/ses/get_send_statistics.rb
+++ b/lib/fog/aws/parsers/ses/get_send_statistics.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SES
-
class GetSendStatistics < Fog::Parsers::Base
-
def reset
@response = { 'SendDataPoints' => [], 'ResponseMetadata' => {} }
@send_data_point = {}
@@ -22,7 +20,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/ses/list_verified_email_addresses.rb b/lib/fog/aws/parsers/ses/list_verified_email_addresses.rb
index 3ce65d9..32fdf71 100644
--- a/lib/fog/aws/parsers/ses/list_verified_email_addresses.rb
+++ b/lib/fog/aws/parsers/ses/list_verified_email_addresses.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SES
-
class ListVerifiedEmailAddresses < Fog::Parsers::Base
-
def reset
@response = { 'VerifiedEmailAddresses' => [], 'ResponseMetadata' => {} }
end
@@ -18,7 +16,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/ses/send_email.rb b/lib/fog/aws/parsers/ses/send_email.rb
index 5d2ec10..c98378e 100644
--- a/lib/fog/aws/parsers/ses/send_email.rb
+++ b/lib/fog/aws/parsers/ses/send_email.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SES
-
class SendEmail < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/ses/send_raw_email.rb b/lib/fog/aws/parsers/ses/send_raw_email.rb
index e48a875..1229dbd 100644
--- a/lib/fog/aws/parsers/ses/send_raw_email.rb
+++ b/lib/fog/aws/parsers/ses/send_raw_email.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SES
-
class SendRawEmail < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/ses/verify_domain_identity.rb b/lib/fog/aws/parsers/ses/verify_domain_identity.rb
index 63ba4e2..63a5b99 100644
--- a/lib/fog/aws/parsers/ses/verify_domain_identity.rb
+++ b/lib/fog/aws/parsers/ses/verify_domain_identity.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SES
-
class VerifyDomainIdentity < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/ses/verify_email_address.rb b/lib/fog/aws/parsers/ses/verify_email_address.rb
index 983a8b4..f557f04 100644
--- a/lib/fog/aws/parsers/ses/verify_email_address.rb
+++ b/lib/fog/aws/parsers/ses/verify_email_address.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SES
-
class VerifyEmailAddress < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -15,9 +13,7 @@ module Fog
@response['ResponseMetadata'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/simpledb/basic.rb b/lib/fog/aws/parsers/simpledb/basic.rb
index 9560148..7550ce8 100644
--- a/lib/fog/aws/parsers/simpledb/basic.rb
+++ b/lib/fog/aws/parsers/simpledb/basic.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SimpleDB
-
class Basic < Fog::Parsers::Base
-
def initialize(nil_string)
@nil_string = nil_string
reset
@@ -22,9 +20,7 @@ module Fog
def sdb_decode(value)
value.eql?(@nil_string) ? nil : value
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/simpledb/domain_metadata.rb b/lib/fog/aws/parsers/simpledb/domain_metadata.rb
index aed3ff1..df5acc3 100644
--- a/lib/fog/aws/parsers/simpledb/domain_metadata.rb
+++ b/lib/fog/aws/parsers/simpledb/domain_metadata.rb
@@ -4,9 +4,7 @@ module Fog
module Parsers
module AWS
module SimpleDB
-
class DomainMetadata < Fog::Parsers::AWS::SimpleDB::Basic
-
def reset
@response = {}
end
@@ -23,9 +21,7 @@ module Fog
response[name] = Time.at(value.to_i)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/simpledb/get_attributes.rb b/lib/fog/aws/parsers/simpledb/get_attributes.rb
index ea00b6f..7757d1b 100644
--- a/lib/fog/aws/parsers/simpledb/get_attributes.rb
+++ b/lib/fog/aws/parsers/simpledb/get_attributes.rb
@@ -4,9 +4,7 @@ module Fog
module Parsers
module AWS
module SimpleDB
-
class GetAttributes < Fog::Parsers::AWS::SimpleDB::Basic
-
def reset
@attribute = nil
@response = { 'Attributes' => {} }
@@ -27,9 +25,7 @@ module Fog
response['Attributes'][@attribute] << sdb_decode(value)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/simpledb/list_domains.rb b/lib/fog/aws/parsers/simpledb/list_domains.rb
index 12a70db..998f4ba 100644
--- a/lib/fog/aws/parsers/simpledb/list_domains.rb
+++ b/lib/fog/aws/parsers/simpledb/list_domains.rb
@@ -4,9 +4,7 @@ module Fog
module Parsers
module AWS
module SimpleDB
-
class ListDomains < Fog::Parsers::AWS::SimpleDB::Basic
-
def reset
@response = { 'Domains' => [] }
end
@@ -21,9 +19,7 @@ module Fog
response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/simpledb/select.rb b/lib/fog/aws/parsers/simpledb/select.rb
index ce39786..cb616af 100644
--- a/lib/fog/aws/parsers/simpledb/select.rb
+++ b/lib/fog/aws/parsers/simpledb/select.rb
@@ -4,9 +4,7 @@ module Fog
module Parsers
module AWS
module SimpleDB
-
class Select < Fog::Parsers::AWS::SimpleDB::Basic
-
def reset
@item_name = @attribute_name = nil
@response = { 'Items' => {} }
@@ -32,9 +30,7 @@ module Fog
response['Items'][@item_name][@attribute_name] << sdb_decode(value)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sns/add_permission.rb b/lib/fog/aws/parsers/sns/add_permission.rb
index 8da7226..04cdd6e 100644
--- a/lib/fog/aws/parsers/sns/add_permission.rb
+++ b/lib/fog/aws/parsers/sns/add_permission.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SNS
-
class AddPermission < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = @value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sns/confirm_subscription.rb b/lib/fog/aws/parsers/sns/confirm_subscription.rb
index dc9c95b..bd69223 100644
--- a/lib/fog/aws/parsers/sns/confirm_subscription.rb
+++ b/lib/fog/aws/parsers/sns/confirm_subscription.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SNS
-
class ConfirmSubscription < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = @value.strip
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sns/create_topic.rb b/lib/fog/aws/parsers/sns/create_topic.rb
index a037cec..311d8ae 100644
--- a/lib/fog/aws/parsers/sns/create_topic.rb
+++ b/lib/fog/aws/parsers/sns/create_topic.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SNS
-
class CreateTopic < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = @value.strip
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sns/delete_topic.rb b/lib/fog/aws/parsers/sns/delete_topic.rb
index 0a0a27f..7739a0e 100644
--- a/lib/fog/aws/parsers/sns/delete_topic.rb
+++ b/lib/fog/aws/parsers/sns/delete_topic.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SNS
-
class DeleteTopic < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = @value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sns/get_topic_attributes.rb b/lib/fog/aws/parsers/sns/get_topic_attributes.rb
index ea974f5..c1e9df3 100644
--- a/lib/fog/aws/parsers/sns/get_topic_attributes.rb
+++ b/lib/fog/aws/parsers/sns/get_topic_attributes.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SNS
-
class GetTopicAttributes < Fog::Parsers::Base
-
def reset
@response = { 'Attributes' => {} }
end
@@ -25,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sns/list_subscriptions.rb b/lib/fog/aws/parsers/sns/list_subscriptions.rb
index b19c9c9..02533d9 100644
--- a/lib/fog/aws/parsers/sns/list_subscriptions.rb
+++ b/lib/fog/aws/parsers/sns/list_subscriptions.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SNS
-
class ListSubscriptions < Fog::Parsers::Base
-
def reset
@response = { 'Subscriptions' => [] }
@subscription = {}
@@ -22,7 +20,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sns/list_topics.rb b/lib/fog/aws/parsers/sns/list_topics.rb
index b3df3fb..40df34d 100644
--- a/lib/fog/aws/parsers/sns/list_topics.rb
+++ b/lib/fog/aws/parsers/sns/list_topics.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SNS
-
class ListTopics < Fog::Parsers::Base
-
def reset
@response = { 'Topics' => [] }
end
@@ -17,9 +15,7 @@ module Fog
response[name] = @value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sns/publish.rb b/lib/fog/aws/parsers/sns/publish.rb
index 91b2a62..68f69b3 100644
--- a/lib/fog/aws/parsers/sns/publish.rb
+++ b/lib/fog/aws/parsers/sns/publish.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SNS
-
class Publish < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = @value.rstrip
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sns/remove_permission.rb b/lib/fog/aws/parsers/sns/remove_permission.rb
index e4e43a1..345c1f1 100644
--- a/lib/fog/aws/parsers/sns/remove_permission.rb
+++ b/lib/fog/aws/parsers/sns/remove_permission.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SNS
-
class RemovePermission < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = @value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sns/set_topic_attributes.rb b/lib/fog/aws/parsers/sns/set_topic_attributes.rb
index 19639b7..e652e57 100644
--- a/lib/fog/aws/parsers/sns/set_topic_attributes.rb
+++ b/lib/fog/aws/parsers/sns/set_topic_attributes.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SNS
-
class SetTopicAttributes < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = @value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sns/subscribe.rb b/lib/fog/aws/parsers/sns/subscribe.rb
index c0b77a7..9385404 100644
--- a/lib/fog/aws/parsers/sns/subscribe.rb
+++ b/lib/fog/aws/parsers/sns/subscribe.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SNS
-
class Subscribe < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = @value.strip
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sns/unsubscribe.rb b/lib/fog/aws/parsers/sns/unsubscribe.rb
index dcab5e4..5efd437 100644
--- a/lib/fog/aws/parsers/sns/unsubscribe.rb
+++ b/lib/fog/aws/parsers/sns/unsubscribe.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SNS
-
class Unsubscribe < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = @value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sqs/basic.rb b/lib/fog/aws/parsers/sqs/basic.rb
index f997631..2ea4e20 100644
--- a/lib/fog/aws/parsers/sqs/basic.rb
+++ b/lib/fog/aws/parsers/sqs/basic.rb
@@ -3,7 +3,6 @@ module Fog
module AWS
module SQS
class Basic < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -14,9 +13,7 @@ module Fog
@response['ResponseMetadata'][name] = @value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sqs/create_queue.rb b/lib/fog/aws/parsers/sqs/create_queue.rb
index 516feae..59614e1 100644
--- a/lib/fog/aws/parsers/sqs/create_queue.rb
+++ b/lib/fog/aws/parsers/sqs/create_queue.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SQS
-
class CreateQueue < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response['QueueUrl'] = @value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sqs/get_queue_attributes.rb b/lib/fog/aws/parsers/sqs/get_queue_attributes.rb
index dbbd655..50f0786 100644
--- a/lib/fog/aws/parsers/sqs/get_queue_attributes.rb
+++ b/lib/fog/aws/parsers/sqs/get_queue_attributes.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SQS
-
class GetQueueAttributes < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {}, 'Attributes' => {}}
end
@@ -26,9 +24,7 @@ module Fog
end
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sqs/list_queues.rb b/lib/fog/aws/parsers/sqs/list_queues.rb
index 8f3664b..0e47f37 100644
--- a/lib/fog/aws/parsers/sqs/list_queues.rb
+++ b/lib/fog/aws/parsers/sqs/list_queues.rb
@@ -3,7 +3,6 @@ module Fog
module AWS
module SQS
class ListQueues < Fog::Parsers::Base
-
def reset
@response = { 'QueueUrls' => [], 'ResponseMetadata' => {} }
end
@@ -16,9 +15,7 @@ module Fog
@response['QueueUrls'] << @value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sqs/receive_message.rb b/lib/fog/aws/parsers/sqs/receive_message.rb
index 75a56ba..d39b693 100644
--- a/lib/fog/aws/parsers/sqs/receive_message.rb
+++ b/lib/fog/aws/parsers/sqs/receive_message.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SQS
-
class ReceiveMessage < Fog::Parsers::Base
-
def reset
@message = { 'Attributes' => {} }
@response = { 'ResponseMetadata' => {}, 'Message' => []}
@@ -32,9 +30,7 @@ module Fog
end
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sqs/send_message.rb b/lib/fog/aws/parsers/sqs/send_message.rb
index 00374bf..e2ba085 100644
--- a/lib/fog/aws/parsers/sqs/send_message.rb
+++ b/lib/fog/aws/parsers/sqs/send_message.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module SQS
-
class SendMessage < Fog::Parsers::Base
-
def reset
@response = { 'ResponseMetadata' => {} }
end
@@ -19,9 +17,7 @@ module Fog
@response['MD5OfMessageBody'] = @value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/access_control_list.rb b/lib/fog/aws/parsers/storage/access_control_list.rb
index 7f65acf..53247e1 100644
--- a/lib/fog/aws/parsers/storage/access_control_list.rb
+++ b/lib/fog/aws/parsers/storage/access_control_list.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module AWS
-
class AccessControlList < Fog::Parsers::Base
-
def reset
@in_access_control_list = false
@grant = { 'Grantee' => {} }
@@ -37,9 +35,7 @@ module Fog
@grant['Grantee'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/complete_multipart_upload.rb b/lib/fog/aws/parsers/storage/complete_multipart_upload.rb
index b12cc72..6c02c71 100644
--- a/lib/fog/aws/parsers/storage/complete_multipart_upload.rb
+++ b/lib/fog/aws/parsers/storage/complete_multipart_upload.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module AWS
-
class CompleteMultipartUpload < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/copy_object.rb b/lib/fog/aws/parsers/storage/copy_object.rb
index bf7df5f..7223f4a 100644
--- a/lib/fog/aws/parsers/storage/copy_object.rb
+++ b/lib/fog/aws/parsers/storage/copy_object.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module AWS
-
class CopyObject < Fog::Parsers::Base
-
def end_element(name)
case name
when 'ETag'
@@ -13,9 +11,7 @@ module Fog
@response[name] = Time.parse(value)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/cors_configuration.rb b/lib/fog/aws/parsers/storage/cors_configuration.rb
index 654f34f..f969feb 100644
--- a/lib/fog/aws/parsers/storage/cors_configuration.rb
+++ b/lib/fog/aws/parsers/storage/cors_configuration.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Storage
module AWS
-
class CorsConfiguration < Fog::Parsers::Base
def reset
@in_cors_configuration_list = false
@@ -32,9 +31,7 @@ module Fog
(@cors_rule[name] ||= []) << value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/delete_multiple_objects.rb b/lib/fog/aws/parsers/storage/delete_multiple_objects.rb
index 82679d1..6d6198d 100644
--- a/lib/fog/aws/parsers/storage/delete_multiple_objects.rb
+++ b/lib/fog/aws/parsers/storage/delete_multiple_objects.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module AWS
-
class DeleteMultipleObjects < Fog::Parsers::Base
-
def reset
@deleted = { 'Deleted' => {} }
@error = { 'Error' => {} }
@@ -40,11 +38,8 @@ module Fog
@error['Error'][name] = value
end
end
-
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/parsers/storage/get_bucket.rb b/lib/fog/aws/parsers/storage/get_bucket.rb
index a2d55f7..0a98d30 100644
--- a/lib/fog/aws/parsers/storage/get_bucket.rb
+++ b/lib/fog/aws/parsers/storage/get_bucket.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module AWS
-
class GetBucket < Fog::Parsers::Base
-
def reset
@object = { 'Owner' => {} }
@response = { 'Contents' => [], 'CommonPrefixes' => [] }
@@ -53,9 +51,7 @@ module Fog
@object[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/get_bucket_lifecycle.rb b/lib/fog/aws/parsers/storage/get_bucket_lifecycle.rb
index 54f8983..ef9bc79 100644
--- a/lib/fog/aws/parsers/storage/get_bucket_lifecycle.rb
+++ b/lib/fog/aws/parsers/storage/get_bucket_lifecycle.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module AWS
-
class GetBucketLifecycle < Fog::Parsers::Base
-
def reset
@expiration = {}
@transition = {}
diff --git a/lib/fog/aws/parsers/storage/get_bucket_location.rb b/lib/fog/aws/parsers/storage/get_bucket_location.rb
index d176387..920f697 100644
--- a/lib/fog/aws/parsers/storage/get_bucket_location.rb
+++ b/lib/fog/aws/parsers/storage/get_bucket_location.rb
@@ -2,18 +2,14 @@ module Fog
module Parsers
module Storage
module AWS
-
class GetBucketLocation < Fog::Parsers::Base
-
def end_element(name)
case name
when 'LocationConstraint'
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/get_bucket_logging.rb b/lib/fog/aws/parsers/storage/get_bucket_logging.rb
index 2c1d470..931aeaa 100644
--- a/lib/fog/aws/parsers/storage/get_bucket_logging.rb
+++ b/lib/fog/aws/parsers/storage/get_bucket_logging.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module AWS
-
class GetBucketLogging < Fog::Parsers::Base
-
def reset
@grant = { 'Grantee' => {} }
@response = { 'BucketLoggingStatus' => {} }
@@ -31,9 +29,7 @@ module Fog
@grant['Grantee'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/get_bucket_object_versions.rb b/lib/fog/aws/parsers/storage/get_bucket_object_versions.rb
index dcd210d..dae2f2d 100644
--- a/lib/fog/aws/parsers/storage/get_bucket_object_versions.rb
+++ b/lib/fog/aws/parsers/storage/get_bucket_object_versions.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module AWS
-
class GetBucketObjectVersions < Fog::Parsers::Base
-
def reset
@delete_marker = { 'Owner' => {} }
@version = { 'Owner' => {} }
@@ -79,9 +77,7 @@ module Fog
end[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/get_bucket_tagging.rb b/lib/fog/aws/parsers/storage/get_bucket_tagging.rb
index 3f5319c..3b26b89 100644
--- a/lib/fog/aws/parsers/storage/get_bucket_tagging.rb
+++ b/lib/fog/aws/parsers/storage/get_bucket_tagging.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module AWS
-
class GetBucketTagging < Fog::Parsers::Base
-
def reset
@in_tag = {}
@response = {'BucketTagging' => {}}
@@ -28,9 +26,7 @@ module Fog
@in_tag = {@in_tag.keys.first => value}
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/get_bucket_versioning.rb b/lib/fog/aws/parsers/storage/get_bucket_versioning.rb
index cabb52d..549c6eb 100644
--- a/lib/fog/aws/parsers/storage/get_bucket_versioning.rb
+++ b/lib/fog/aws/parsers/storage/get_bucket_versioning.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module AWS
-
class GetBucketVersioning < Fog::Parsers::Base
-
def reset
@response = { 'VersioningConfiguration' => {} }
end
@@ -15,9 +13,7 @@ module Fog
@response['VersioningConfiguration'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/get_bucket_website.rb b/lib/fog/aws/parsers/storage/get_bucket_website.rb
index e4f3bdc..794489b 100644
--- a/lib/fog/aws/parsers/storage/get_bucket_website.rb
+++ b/lib/fog/aws/parsers/storage/get_bucket_website.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module AWS
-
class GetBucketWebsite < Fog::Parsers::Base
-
def reset
@response = { 'ErrorDocument' => {}, 'IndexDocument' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response['IndexDocument'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/get_request_payment.rb b/lib/fog/aws/parsers/storage/get_request_payment.rb
index 1d94e2f..91edb28 100644
--- a/lib/fog/aws/parsers/storage/get_request_payment.rb
+++ b/lib/fog/aws/parsers/storage/get_request_payment.rb
@@ -2,18 +2,14 @@ module Fog
module Parsers
module Storage
module AWS
-
class GetRequestPayment < Fog::Parsers::Base
-
def end_element(name)
case name
when 'Payer'
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/get_service.rb b/lib/fog/aws/parsers/storage/get_service.rb
index 7642818..403cb81 100644
--- a/lib/fog/aws/parsers/storage/get_service.rb
+++ b/lib/fog/aws/parsers/storage/get_service.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module AWS
-
class GetService < Fog::Parsers::Base
-
def reset
@bucket = {}
@response = { 'Owner' => {}, 'Buckets' => [] }
@@ -23,9 +21,7 @@ module Fog
@bucket[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/initiate_multipart_upload.rb b/lib/fog/aws/parsers/storage/initiate_multipart_upload.rb
index ec51f86..df5d663 100644
--- a/lib/fog/aws/parsers/storage/initiate_multipart_upload.rb
+++ b/lib/fog/aws/parsers/storage/initiate_multipart_upload.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module AWS
-
class InitiateMultipartUpload < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/list_multipart_uploads.rb b/lib/fog/aws/parsers/storage/list_multipart_uploads.rb
index bd53757..0692f00 100644
--- a/lib/fog/aws/parsers/storage/list_multipart_uploads.rb
+++ b/lib/fog/aws/parsers/storage/list_multipart_uploads.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module AWS
-
class ListMultipartUploads < Fog::Parsers::Base
-
def reset
@upload = { 'Initiator' => {}, 'Owner' => {} }
@response = { 'Upload' => [] }
@@ -47,9 +45,7 @@ module Fog
@upload = { 'Initiator' => {}, 'Owner' => {} }
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/storage/list_parts.rb b/lib/fog/aws/parsers/storage/list_parts.rb
index 0a774e4..4cb6916 100644
--- a/lib/fog/aws/parsers/storage/list_parts.rb
+++ b/lib/fog/aws/parsers/storage/list_parts.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module AWS
-
class ListParts < Fog::Parsers::Base
-
def reset
@part = {}
@response = { 'Initiator' => {}, 'Part' => [] }
@@ -31,9 +29,7 @@ module Fog
@part[name] = value.to_i
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sts/assume_role.rb b/lib/fog/aws/parsers/sts/assume_role.rb
index 2c28fce..f29a725 100644
--- a/lib/fog/aws/parsers/sts/assume_role.rb
+++ b/lib/fog/aws/parsers/sts/assume_role.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module AWS
module STS
-
class AssumeRole < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -21,9 +19,7 @@ module Fog
@response[name] = @value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/parsers/sts/get_session_token.rb b/lib/fog/aws/parsers/sts/get_session_token.rb
index 9eed371..cb57d20 100644
--- a/lib/fog/aws/parsers/sts/get_session_token.rb
+++ b/lib/fog/aws/parsers/sts/get_session_token.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module AWS
module STS
-
class GetSessionToken < Fog::Parsers::Base
# http://docs.amazonwebservices.com/IAM/latest/UserGuide/index.html?CreatingFedTokens.html
@@ -20,9 +19,7 @@ module Fog
@response[name] = @value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/rds.rb b/lib/fog/aws/rds.rb
index 233dc6f..0759391 100644
--- a/lib/fog/aws/rds.rb
+++ b/lib/fog/aws/rds.rb
@@ -10,7 +10,7 @@ module Fog
class AuthorizationAlreadyExists < Fog::Errors::Error; end
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :version
+ recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :version, :instrumentor, :instrumentor_name
request_path 'fog/aws/requests/rds'
request :describe_events
@@ -57,6 +57,8 @@ module Fog
request :describe_db_log_files
request :download_db_logfile_portion
+ request :promote_read_replica
+
model_path 'fog/aws/models/rds'
model :server
collection :servers
@@ -83,7 +85,6 @@ module Fog
collection :log_files
class Mock
-
def self.data
@data ||= Hash.new do |hash, region|
hash[region] = Hash.new do |region_hash, key|
@@ -111,14 +112,12 @@ module Fog
end
def initialize(options={})
-
@use_iam_profile = options[:use_iam_profile]
@region = options[:region] || 'us-east-1'
unless ['ap-northeast-1', 'ap-southeast-1', 'ap-southeast-2', 'eu-west-1', 'us-east-1', 'us-west-1', 'us-west-2', 'sa-east-1'].include?(@region)
raise ArgumentError, "Unknown region: #{@region.inspect}"
end
-
end
def data
@@ -132,7 +131,6 @@ module Fog
def setup_credentials(options)
@aws_access_key_id = options[:aws_access_key_id]
end
-
end
class Real
@@ -160,6 +158,8 @@ module Fog
def initialize(options={})
@use_iam_profile = options[:use_iam_profile]
setup_credentials(options)
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.rds'
@connection_options = options[:connection_options] || {}
@region = options[:region] || 'us-east-1'
@@ -210,39 +210,46 @@ module Fog
}
)
- begin
- @connection.request({
- :body => body,
- :expects => 200,
- :headers => { 'Content-Type' => 'application/x-www-form-urlencoded' },
- :idempotent => idempotent,
- :method => 'POST',
- :parser => parser
- })
- rescue Excon::Errors::HTTPStatusError => error
- match = Fog::AWS::Errors.match_error(error)
- if match.empty?
- case error.message
- when 'Not Found'
- raise Fog::AWS::RDS::NotFound.slurp(error, 'RDS Instance not found')
- else
- raise
- end
- else
- raise case match[:code]
- when 'DBInstanceNotFound', 'DBParameterGroupNotFound', 'DBSnapshotNotFound', 'DBSecurityGroupNotFound'
- Fog::AWS::RDS::NotFound.slurp(error, match[:message])
- when 'DBParameterGroupAlreadyExists'
- Fog::AWS::RDS::IdentifierTaken.slurp(error, match[:message])
- when 'AuthorizationAlreadyExists'
- Fog::AWS::RDS::AuthorizationAlreadyExists.slurp(error, match[:message])
- else
- Fog::AWS::RDS::Error.slurp(error, "#{match[:code]} => #{match[:message]}")
- end
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(body, idempotent, parser)
end
+ else
+ _request(body, idempotent, parser)
end
end
+ def _request(body, idempotent, parser)
+ @connection.request({
+ :body => body,
+ :expects => 200,
+ :headers => { 'Content-Type' => 'application/x-www-form-urlencoded' },
+ :idempotent => idempotent,
+ :method => 'POST',
+ :parser => parser
+ })
+ rescue Excon::Errors::HTTPStatusError => error
+ match = Fog::AWS::Errors.match_error(error)
+ if match.empty?
+ case error.message
+ when 'Not Found'
+ raise Fog::AWS::RDS::NotFound.slurp(error, 'RDS Instance not found')
+ else
+ raise
+ end
+ else
+ raise case match[:code]
+ when 'DBInstanceNotFound', 'DBParameterGroupNotFound', 'DBSnapshotNotFound', 'DBSecurityGroupNotFound'
+ Fog::AWS::RDS::NotFound.slurp(error, match[:message])
+ when 'DBParameterGroupAlreadyExists'
+ Fog::AWS::RDS::IdentifierTaken.slurp(error, match[:message])
+ when 'AuthorizationAlreadyExists'
+ Fog::AWS::RDS::AuthorizationAlreadyExists.slurp(error, match[:message])
+ else
+ Fog::AWS::RDS::Error.slurp(error, "#{match[:code]} => #{match[:message]}")
+ end
+ end
+ end
end
end
end
diff --git a/lib/fog/aws/redshift.rb b/lib/fog/aws/redshift.rb
index 66e0a53..7914260 100644
--- a/lib/fog/aws/redshift.rb
+++ b/lib/fog/aws/redshift.rb
@@ -6,7 +6,7 @@ module Fog
extend Fog::AWS::CredentialFetcher::ServiceMethods
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at
+ recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
request_path 'fog/aws/requests/redshift'
@@ -47,11 +47,9 @@ module Fog
request :revoke_snapshot_access
class Mock
-
def initialize(options={})
Fog::Mock.not_implemented
end
-
end
class Real
@@ -75,13 +73,13 @@ module Fog
# ==== Returns
# * Redshift object with connection to AWS.
-
def initialize(options={})
-
@use_iam_profile = options[:use_iam_profile]
@region = options[:region] || 'us-east-1'
setup_credentials(options)
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.redshift'
@connection_options = options[:connection_options] || {}
@host = options[:host] || "redshift.#{@region}.amazonaws.com"
@version = '2012-12-01'
@@ -91,8 +89,7 @@ module Fog
@scheme = options[:scheme] || 'https'
@connection = Fog::XML::Connection.new("#{@scheme}://#{@host}:#{@port}#{@path}", @persistent, @connection_options)
- end
-
+ end
private
def setup_credentials(options)
@@ -116,9 +113,19 @@ module Fog
params[:headers]['x-amz-redshift-version'] = @version
params[:headers]['x-amz-security-token'] = @aws_session_token if @aws_session_token
params[:headers]['Authorization'] = @signer.sign params, date
+ params[:parser] = parser
+
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(params, &block)
+ end
+ else
+ _request(params, &block)
+ end
+ end
- response = @connection.request(params.merge(:parser => parser), &block)
- response
+ def _request(params, &block)
+ @connection.request(params, &block)
end
end
end
diff --git a/lib/fog/aws/region_methods.rb b/lib/fog/aws/region_methods.rb
index 80f56d6..57eacdc 100644
--- a/lib/fog/aws/region_methods.rb
+++ b/lib/fog/aws/region_methods.rb
@@ -1,13 +1,11 @@
module Fog
module AWS
module RegionMethods
-
- def validate_aws_region region
- unless ['ap-northeast-1', 'ap-southeast-1', 'ap-southeast-2', 'eu-west-1', 'us-east-1', 'us-west-1', 'us-west-2', 'sa-east-1'].include?(region)
+ def validate_aws_region host, region
+ if host.end_with?('.amazonaws.com') and not ['ap-northeast-1', 'ap-southeast-1', 'ap-southeast-2', 'eu-west-1', 'us-east-1', 'us-west-1', 'us-west-2', 'sa-east-1'].include?(region)
raise ArgumentError, "Unknown region: #{region.inspect}"
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/create_auto_scaling_group.rb b/lib/fog/aws/requests/auto_scaling/create_auto_scaling_group.rb
index 9b986ab..3b110bb 100644
--- a/lib/fog/aws/requests/auto_scaling/create_auto_scaling_group.rb
+++ b/lib/fog/aws/requests/auto_scaling/create_auto_scaling_group.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Creates a new Auto Scaling group with the specified name. Once the
@@ -92,21 +90,19 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
}.merge!(options))
end
-
end
class Mock
-
def create_auto_scaling_group(auto_scaling_group_name, availability_zones, launch_configuration_name, max_size, min_size, options = {})
unexpected_options = options.keys - ExpectedOptions[:create_auto_scaling_group]
unless unexpected_options.empty?
raise Fog::AWS::AutoScaling::ValidationError.new("Options #{unexpected_options.join(',')} should not be included in request")
end
- if self.data[:auto_scaling_groups].has_key?(auto_scaling_group_name)
+ if self.data[:auto_scaling_groups].key?(auto_scaling_group_name)
raise Fog::AWS::AutoScaling::IdentifierTaken.new("AutoScalingGroup by this name already exists - A group with the name #{auto_scaling_group_name} already exists")
end
- unless self.data[:launch_configurations].has_key?(launch_configuration_name)
+ unless self.data[:launch_configurations].key?(launch_configuration_name)
raise Fog::AWS::AutoScaling::ValidationError.new('Launch configuration name not found - null')
end
self.data[:auto_scaling_groups][auto_scaling_group_name] = {
@@ -138,9 +134,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/create_launch_configuration.rb b/lib/fog/aws/requests/auto_scaling/create_launch_configuration.rb
index c0ba191..67a86bb 100644
--- a/lib/fog/aws/requests/auto_scaling/create_launch_configuration.rb
+++ b/lib/fog/aws/requests/auto_scaling/create_launch_configuration.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Creates a new launch configuration. When created, the new launch
@@ -41,6 +39,8 @@ module Fog
# market price.
# * 'UserData'<~String> - The user data available to the launched
# Amazon EC2 instances.
+ # * 'EbsOptimized'<~Boolean> - Whether the instance is optimized for
+ # EBS I/O. Not required, default false.
#
# ==== Returns
# * response<~Excon::Response>:
@@ -73,19 +73,18 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
}.merge!(options))
end
-
end
class Mock
-
def create_launch_configuration(image_id, instance_type, launch_configuration_name, options = {})
- if self.data[:launch_configurations].has_key?(launch_configuration_name)
+ if self.data[:launch_configurations].key?(launch_configuration_name)
raise Fog::AWS::AutoScaling::IdentifierTaken.new("Launch Configuration by this name already exists - A launch configuration already exists with the name #{launch_configuration_name}")
end
self.data[:launch_configurations][launch_configuration_name] = {
'AssociatePublicIpAddress' => nil,
'BlockDeviceMappings' => [],
'CreatedTime' => Time.now.utc,
+ 'EbsOptimized' => false,
'IamInstanceProfile' => nil,
'ImageId' => image_id,
'InstanceMonitoring' => {'Enabled' => true},
@@ -106,9 +105,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/create_or_update_tags.rb b/lib/fog/aws/requests/auto_scaling/create_or_update_tags.rb
index 7cb2aef..d102a8b 100644
--- a/lib/fog/aws/requests/auto_scaling/create_or_update_tags.rb
+++ b/lib/fog/aws/requests/auto_scaling/create_or_update_tags.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Creates new tags or updates existing tags for an Auto Scaling group.
@@ -44,20 +42,16 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
}.merge!(params))
end
-
end
class Mock
-
def create_or_update_tags(tags)
if tags.to_a.empty?
raise Fog::AWS::AutoScaling::ValidationError.new("1 validation error detected: Value null at 'tags' failed to satisfy constraint: Member must not be null")
end
raise Fog::Mock::NotImplementedError
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/delete_auto_scaling_group.rb b/lib/fog/aws/requests/auto_scaling/delete_auto_scaling_group.rb
index cf149c0..d0493a8 100644
--- a/lib/fog/aws/requests/auto_scaling/delete_auto_scaling_group.rb
+++ b/lib/fog/aws/requests/auto_scaling/delete_auto_scaling_group.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Deletes the specified auto scaling group if the group has no
@@ -34,11 +32,9 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
}.merge!(options))
end
-
end
class Mock
-
def delete_auto_scaling_group(auto_scaling_group_name, options = {})
unless self.data[:auto_scaling_groups].delete(auto_scaling_group_name)
raise Fog::AWS::AutoScaling::ValidationError, "The auto scaling group '#{auto_scaling_group_name}' does not exist."
@@ -54,7 +50,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/delete_launch_configuration.rb b/lib/fog/aws/requests/auto_scaling/delete_launch_configuration.rb
index d4b092d..753c537 100644
--- a/lib/fog/aws/requests/auto_scaling/delete_launch_configuration.rb
+++ b/lib/fog/aws/requests/auto_scaling/delete_launch_configuration.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Deletes the specified launch configuration.
@@ -32,11 +30,9 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
})
end
-
end
class Mock
-
def delete_launch_configuration(launch_configuration_name)
unless self.data[:launch_configurations].delete(launch_configuration_name)
raise Fog::AWS::AutoScaling::NotFound, "The launch configuration '#{launch_configuration_name}' does not exist."
@@ -49,9 +45,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/delete_notification_configuration.rb b/lib/fog/aws/requests/auto_scaling/delete_notification_configuration.rb
index 6a10707..2c37343 100644
--- a/lib/fog/aws/requests/auto_scaling/delete_notification_configuration.rb
+++ b/lib/fog/aws/requests/auto_scaling/delete_notification_configuration.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Deletes notifications created by put_notification_configuration.
@@ -31,16 +29,14 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
})
end
-
end
class Mock
-
def delete_notification_configuration(auto_scaling_group_name, topic_arn)
- unless self.data[:notification_configurations].has_key?(auto_scaling_group_name)
+ unless self.data[:notification_configurations].key?(auto_scaling_group_name)
raise Fog::AWS::AutoScaling::ValidationError.new('AutoScalingGroup name not found - %s' % auto_scaling_group_name)
end
- unless self.data[:notification_configurations][auto_scaling_group_name].has_key?(topic_arn)
+ unless self.data[:notification_configurations][auto_scaling_group_name].key?(topic_arn)
raise Fog::AWS::AutoScaling::ValidationError.new("Notification Topic '#{topic_arn}' doesn't exist for '#{self.data[:owner_id]}'")
end
@@ -57,7 +53,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/delete_policy.rb b/lib/fog/aws/requests/auto_scaling/delete_policy.rb
index 31e1afa..307a05c 100644
--- a/lib/fog/aws/requests/auto_scaling/delete_policy.rb
+++ b/lib/fog/aws/requests/auto_scaling/delete_policy.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Deletes a policy created by put_scaling_policy
@@ -31,11 +29,9 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
})
end
-
end
class Mock
-
def delete_policy(auto_scaling_group_name, policy_name)
unless self.data[:scaling_policies].delete(policy_name)
raise Fog::AWS::AutoScaling::NotFound, "The scaling policy '#{policy_name}' does not exist."
@@ -48,9 +44,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/delete_scheduled_action.rb b/lib/fog/aws/requests/auto_scaling/delete_scheduled_action.rb
index 8f23322..5e2b948 100644
--- a/lib/fog/aws/requests/auto_scaling/delete_scheduled_action.rb
+++ b/lib/fog/aws/requests/auto_scaling/delete_scheduled_action.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Deletes a scheduled action previously created using the
@@ -32,17 +30,13 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
})
end
-
end
class Mock
-
def delete_scheduled_action(auto_scaling_group_name, scheduled_action_name)
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/delete_tags.rb b/lib/fog/aws/requests/auto_scaling/delete_tags.rb
index e447feb..cfe6dcf 100644
--- a/lib/fog/aws/requests/auto_scaling/delete_tags.rb
+++ b/lib/fog/aws/requests/auto_scaling/delete_tags.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Removes the specified tags or a set of tags from a set of resources.
@@ -44,20 +42,16 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
}.merge!(params))
end
-
end
class Mock
-
def delete_tags(tags)
if tags.to_a.empty?
raise Fog::AWS::AutoScaling::ValidationError.new("1 validation error detected: Value null at 'tags' failed to satisfy constraint: Member must not be null")
end
raise Fog::Mock::NotImplementedError
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/describe_adjustment_types.rb b/lib/fog/aws/requests/auto_scaling/describe_adjustment_types.rb
index e26f2ae..602abad 100644
--- a/lib/fog/aws/requests/auto_scaling/describe_adjustment_types.rb
+++ b/lib/fog/aws/requests/auto_scaling/describe_adjustment_types.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/describe_adjustment_types'
# Returns policy adjustment types for use in the put_scaling_policy
@@ -28,11 +26,9 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::DescribeAdjustmentTypes.new
})
end
-
end
class Mock
-
def describe_adjustment_types()
results = { 'AdjustmentTypes' => [] }
self.data[:adjustment_types].each do |adjustment_type|
@@ -46,7 +42,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_groups.rb b/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_groups.rb
index 5d987af..6c27e3e 100644
--- a/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_groups.rb
+++ b/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_groups.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/describe_auto_scaling_groups'
# Returns a full description of each Auto Scaling group in the given
@@ -104,11 +102,9 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::DescribeAutoScalingGroups.new
}.merge!(options))
end
-
end
class Mock
-
def describe_auto_scaling_groups(options = {})
results = { 'AutoScalingGroups' => [] }
asg_set = self.data[:auto_scaling_groups]
@@ -132,9 +128,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_instances.rb b/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_instances.rb
index 1de1448..18f215e 100644
--- a/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_instances.rb
+++ b/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_instances.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/describe_auto_scaling_instances'
# Returns a description of each Auto Scaling instance in the
@@ -65,11 +63,9 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::DescribeAutoScalingInstances.new
}.merge!(options))
end
-
end
class Mock
-
def describe_auto_scaling_instances(options = {})
results = { 'AutoScalingInstances' => [] }
self.data[:auto_scaling_groups].each do |asg_name, asg_data|
@@ -87,9 +83,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_notification_types.rb b/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_notification_types.rb
index 269ed03..8764e71 100644
--- a/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_notification_types.rb
+++ b/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_notification_types.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/describe_auto_scaling_notification_types'
# Returns a list of all notification types that are supported by Auto
@@ -28,11 +26,9 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::DescribeAutoScalingNotificationTypes.new
})
end
-
end
class Mock
-
def describe_auto_scaling_notification_types()
results = {
'AutoScalingNotificationTypes' => [],
@@ -48,7 +44,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/describe_launch_configurations.rb b/lib/fog/aws/requests/auto_scaling/describe_launch_configurations.rb
index 33ff84b..3e85b0c 100644
--- a/lib/fog/aws/requests/auto_scaling/describe_launch_configurations.rb
+++ b/lib/fog/aws/requests/auto_scaling/describe_launch_configurations.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/describe_launch_configurations'
# Returns a full description of the launch configurations given the
@@ -80,11 +78,9 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::DescribeLaunchConfigurations.new
}.merge!(options))
end
-
end
class Mock
-
def describe_launch_configurations(options = {})
launch_configuration_names = options.delete('LaunchConfigurationNames')
# even a nil object will turn into an empty array
@@ -109,9 +105,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/describe_metric_collection_types.rb b/lib/fog/aws/requests/auto_scaling/describe_metric_collection_types.rb
index cd21705..dd10085 100644
--- a/lib/fog/aws/requests/auto_scaling/describe_metric_collection_types.rb
+++ b/lib/fog/aws/requests/auto_scaling/describe_metric_collection_types.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/describe_metric_collection_types'
# Returns a list of metrics and a corresponding list of granularities
@@ -30,11 +28,9 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::DescribeMetricCollectionTypes.new
})
end
-
end
class Mock
-
def describe_metric_collection_types()
results = {
'Granularities' => [],
@@ -54,7 +50,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/describe_notification_configurations.rb b/lib/fog/aws/requests/auto_scaling/describe_notification_configurations.rb
index bc701fb..247ae54 100644
--- a/lib/fog/aws/requests/auto_scaling/describe_notification_configurations.rb
+++ b/lib/fog/aws/requests/auto_scaling/describe_notification_configurations.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/describe_notification_configurations'
# Returns a list of notification actions associated with Auto Scaling
@@ -44,11 +42,9 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::DescribeNotificationConfigurations.new
}.merge!(options))
end
-
end
class Mock
-
def describe_notification_configurations(options = {})
results = { 'NotificationConfigurations' => [] }
(options['AutoScalingGroupNames']||self.data[:notification_configurations].keys).each do |asg_name|
@@ -71,9 +67,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/describe_policies.rb b/lib/fog/aws/requests/auto_scaling/describe_policies.rb
index d88a3fa..c8fa282 100644
--- a/lib/fog/aws/requests/auto_scaling/describe_policies.rb
+++ b/lib/fog/aws/requests/auto_scaling/describe_policies.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/describe_policies'
# Returns descriptions of what each policy does. This action supports
@@ -69,11 +67,9 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::DescribePolicies.new
}.merge!(options))
end
-
end
class Mock
-
def describe_policies(options = {})
results = { 'ScalingPolicies' => [] }
policy_set = self.data[:scaling_policies]
@@ -103,9 +99,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/describe_scaling_activities.rb b/lib/fog/aws/requests/auto_scaling/describe_scaling_activities.rb
index de0e993..1673dd2 100644
--- a/lib/fog/aws/requests/auto_scaling/describe_scaling_activities.rb
+++ b/lib/fog/aws/requests/auto_scaling/describe_scaling_activities.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/describe_scaling_activities'
# Returns the scaling activities for the specified Auto Scaling group.
@@ -72,17 +70,13 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::DescribeScalingActivities.new
}.merge!(options))
end
-
end
class Mock
-
def describe_scaling_activities(options = {})
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/describe_scaling_process_types.rb b/lib/fog/aws/requests/auto_scaling/describe_scaling_process_types.rb
index b6b8cf7..63170a7 100644
--- a/lib/fog/aws/requests/auto_scaling/describe_scaling_process_types.rb
+++ b/lib/fog/aws/requests/auto_scaling/describe_scaling_process_types.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/describe_scaling_process_types'
# Returns scaling process types for use in the resume_processes and
@@ -29,11 +27,9 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::DescribeScalingProcessTypes.new
})
end
-
end
class Mock
-
def describe_scaling_process_types()
results = { 'Processes' => [] }
self.data[:process_types].each do |process_type|
@@ -47,9 +43,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/describe_scheduled_actions.rb b/lib/fog/aws/requests/auto_scaling/describe_scheduled_actions.rb
index ed6d3d4..23b3504 100644
--- a/lib/fog/aws/requests/auto_scaling/describe_scheduled_actions.rb
+++ b/lib/fog/aws/requests/auto_scaling/describe_scheduled_actions.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/describe_scheduled_actions'
# List all the actions scheduled for your Auto Scaling group that
@@ -72,17 +70,13 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::DescribeScheduledActions.new
}.merge!(options))
end
-
end
class Mock
-
def describe_scheduled_actions(options = {})
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/describe_tags.rb b/lib/fog/aws/requests/auto_scaling/describe_tags.rb
index 847e612..e20bdc4 100644
--- a/lib/fog/aws/requests/auto_scaling/describe_tags.rb
+++ b/lib/fog/aws/requests/auto_scaling/describe_tags.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/describe_tags'
# Lists the Auto Scaling group tags.
@@ -58,17 +56,13 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::DescribeTags.new
}.merge!(options))
end
-
end
class Mock
-
def describe_tags(options={})
raise Fog::Mock::NotImplementedError
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/describe_termination_policy_types.rb b/lib/fog/aws/requests/auto_scaling/describe_termination_policy_types.rb
index 00ba4ba..96e39c0 100644
--- a/lib/fog/aws/requests/auto_scaling/describe_termination_policy_types.rb
+++ b/lib/fog/aws/requests/auto_scaling/describe_termination_policy_types.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/describe_termination_policy_types'
# Returns a list of all termination policies supported by Auto Scaling.
@@ -27,11 +25,9 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::DescribeTerminationPolicyTypes.new
})
end
-
end
class Mock
-
def describe_termination_policy_types()
results = { 'TerminationPolicyTypes' => [] }
self.data[:termination_policy_types].each do |termination_policy_type|
@@ -45,9 +41,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/disable_metrics_collection.rb b/lib/fog/aws/requests/auto_scaling/disable_metrics_collection.rb
index 7b8f7f6..cdee756 100644
--- a/lib/fog/aws/requests/auto_scaling/disable_metrics_collection.rb
+++ b/lib/fog/aws/requests/auto_scaling/disable_metrics_collection.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Disables monitoring of group metrics for the Auto Scaling group
@@ -36,21 +34,17 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
}.merge!(options))
end
-
end
class Mock
-
def disable_metrics_collection(auto_scaling_group_name, options = {})
- unless self.data[:auto_scaling_groups].has_key?(auto_scaling_group_name)
+ unless self.data[:auto_scaling_groups].key?(auto_scaling_group_name)
Fog::AWS::AutoScaling::ValidationError.new("Group #{auto_scaling_group_name} not found")
end
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/enable_metrics_collection.rb b/lib/fog/aws/requests/auto_scaling/enable_metrics_collection.rb
index 594decc..5fc414e 100644
--- a/lib/fog/aws/requests/auto_scaling/enable_metrics_collection.rb
+++ b/lib/fog/aws/requests/auto_scaling/enable_metrics_collection.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Enables monitoring of group metrics for the Auto Scaling group
@@ -43,13 +41,11 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
}.merge!(options))
end
-
end
class Mock
-
def enable_metrics_collection(auto_scaling_group_name, granularity, options = {})
- unless self.data[:auto_scaling_groups].has_key?(auto_scaling_group_name)
+ unless self.data[:auto_scaling_groups].key?(auto_scaling_group_name)
Fog::AWS::AutoScaling::ValidationError.new("Group #{auto_scaling_group_name} not found")
end
unless self.data[:metric_collection_types][:granularities].include?(granularity)
@@ -58,9 +54,7 @@ module Fog
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/execute_policy.rb b/lib/fog/aws/requests/auto_scaling/execute_policy.rb
index 30e980f..e6cd519 100644
--- a/lib/fog/aws/requests/auto_scaling/execute_policy.rb
+++ b/lib/fog/aws/requests/auto_scaling/execute_policy.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Runs the policy you create for your Auto Scaling group in
@@ -34,17 +32,13 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
}.merge!(options))
end
-
end
class Mock
-
def execute_policy(policy_name, options = {})
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/put_notification_configuration.rb b/lib/fog/aws/requests/auto_scaling/put_notification_configuration.rb
index fb0e3ef..0ba8c01 100644
--- a/lib/fog/aws/requests/auto_scaling/put_notification_configuration.rb
+++ b/lib/fog/aws/requests/auto_scaling/put_notification_configuration.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/put_notification_configuration'
# Creates a notification configuration for an Auto Scaling group. To
@@ -35,13 +33,11 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::PutNotificationConfiguration.new
}.merge!(params))
end
-
end
class Mock
-
def put_notification_configuration(auto_scaling_group_name, notification_types, topic_arn)
- unless self.data[:auto_scaling_groups].has_key?(auto_scaling_group_name)
+ unless self.data[:auto_scaling_groups].key?(auto_scaling_group_name)
raise Fog::AWS::AutoScaling::ValidationError.new("AutoScalingGroup name not found - #{auto_scaling_group_name}")
end
if notification_types.to_a.empty?
@@ -62,9 +58,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/put_scaling_policy.rb b/lib/fog/aws/requests/auto_scaling/put_scaling_policy.rb
index 51552d8..f73c1b4 100644
--- a/lib/fog/aws/requests/auto_scaling/put_scaling_policy.rb
+++ b/lib/fog/aws/requests/auto_scaling/put_scaling_policy.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/put_scaling_policy'
# Creates or updates a policy for an Auto Scaling group. To update an
@@ -50,13 +48,11 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::PutScalingPolicy.new
}.merge!(options))
end
-
end
class Mock
-
def put_scaling_policy(adjustment_type, auto_scaling_group_name, policy_name, scaling_adjustment, options = {})
- unless self.data[:auto_scaling_groups].has_key?(auto_scaling_group_name)
+ unless self.data[:auto_scaling_groups].key?(auto_scaling_group_name)
raise Fog::AWS::AutoScaling::ValidationError.new('Auto Scaling Group name not found - null')
end
self.data[:scaling_policies][policy_name] = {
@@ -77,9 +73,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/put_scheduled_update_group_action.rb b/lib/fog/aws/requests/auto_scaling/put_scheduled_update_group_action.rb
index bcd9932..b9be811 100644
--- a/lib/fog/aws/requests/auto_scaling/put_scheduled_update_group_action.rb
+++ b/lib/fog/aws/requests/auto_scaling/put_scheduled_update_group_action.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Creates a scheduled scaling action for a Auto Scaling group. If you
@@ -54,17 +52,13 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
}.merge!(options))
end
-
end
class Mock
-
def put_scheduled_update_group_action(auto_scaling_group_name, scheduled_policy_name, time, options = {})
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/resume_processes.rb b/lib/fog/aws/requests/auto_scaling/resume_processes.rb
index bd653fc..0356221 100644
--- a/lib/fog/aws/requests/auto_scaling/resume_processes.rb
+++ b/lib/fog/aws/requests/auto_scaling/resume_processes.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Resumes Auto Scaling processes for an Auto Scaling group.
@@ -34,13 +32,11 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
}.merge!(options))
end
-
end
class Mock
-
def resume_processes(auto_scaling_group_name, options = {})
- unless self.data[:auto_scaling_groups].has_key?(auto_scaling_group_name)
+ unless self.data[:auto_scaling_groups].key?(auto_scaling_group_name)
raise Fog::AWS::AutoScaling::ValidationError.new("AutoScalingGroup name not found - no such group: #{auto_scaling_group_name}")
end
@@ -51,9 +47,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/set_desired_capacity.rb b/lib/fog/aws/requests/auto_scaling/set_desired_capacity.rb
index 5b173a6..b7c11be 100644
--- a/lib/fog/aws/requests/auto_scaling/set_desired_capacity.rb
+++ b/lib/fog/aws/requests/auto_scaling/set_desired_capacity.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Adjusts the desired size of the AutoScalingGroup by initiating
@@ -61,13 +59,11 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
}.merge!(options))
end
-
end
class Mock
-
def set_desired_capacity(auto_scaling_group_name, desired_capacity, options = {})
- unless self.data[:auto_scaling_groups].has_key?(auto_scaling_group_name)
+ unless self.data[:auto_scaling_groups].key?(auto_scaling_group_name)
Fog::AWS::AutoScaling::ValidationError.new('AutoScalingGroup name not found - null')
end
self.data[:auto_scaling_groups][auto_scaling_group_name]['DesiredCapacity'] = desired_capacity
@@ -79,9 +75,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/set_instance_health.rb b/lib/fog/aws/requests/auto_scaling/set_instance_health.rb
index 68d07f5..775806e 100644
--- a/lib/fog/aws/requests/auto_scaling/set_instance_health.rb
+++ b/lib/fog/aws/requests/auto_scaling/set_instance_health.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Sets the health status of an instance.
@@ -35,11 +33,9 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
}.merge!(options))
end
-
end
class Mock
-
def set_instance_health(health_status, instance_id, options = {})
unless self.data[:health_states].include?(health_status)
raise Fog::AWS::AutoScaling::ValidationError.new('Valid instance health states are: [#{self.data[:health_states].join(", ")}].')
@@ -47,9 +43,7 @@ module Fog
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/suspend_processes.rb b/lib/fog/aws/requests/auto_scaling/suspend_processes.rb
index 68edf0f..7dcd419 100644
--- a/lib/fog/aws/requests/auto_scaling/suspend_processes.rb
+++ b/lib/fog/aws/requests/auto_scaling/suspend_processes.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Suspends Auto Scaling processes for an Auto Scaling group. To suspend
@@ -37,13 +35,11 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
}.merge!(options))
end
-
end
class Mock
-
def suspend_processes(auto_scaling_group_name, options = {})
- unless self.data[:auto_scaling_groups].has_key?(auto_scaling_group_name)
+ unless self.data[:auto_scaling_groups].key?(auto_scaling_group_name)
raise Fog::AWS::AutoScaling::ValidationError.new("AutoScalingGroup name not found - no such group: #{auto_scaling_group_name}")
end
@@ -54,9 +50,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/terminate_instance_in_auto_scaling_group.rb b/lib/fog/aws/requests/auto_scaling/terminate_instance_in_auto_scaling_group.rb
index 2e42743..4242543 100644
--- a/lib/fog/aws/requests/auto_scaling/terminate_instance_in_auto_scaling_group.rb
+++ b/lib/fog/aws/requests/auto_scaling/terminate_instance_in_auto_scaling_group.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class AutoScaling
-
class Real
-
require 'fog/aws/parsers/auto_scaling/terminate_instance_in_auto_scaling_group'
# Terminates the specified instance. Optionally, the desired group size
@@ -49,17 +47,13 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::TerminateInstanceInAutoScalingGroup.new
})
end
-
end
class Mock
-
def terminate_instance_in_auto_scaling_group(instance_id, should_decrement_desired_capacity)
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/auto_scaling/update_auto_scaling_group.rb b/lib/fog/aws/requests/auto_scaling/update_auto_scaling_group.rb
index f65fde0..5a53fc8 100644
--- a/lib/fog/aws/requests/auto_scaling/update_auto_scaling_group.rb
+++ b/lib/fog/aws/requests/auto_scaling/update_auto_scaling_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class AutoScaling
class Real
-
require 'fog/aws/parsers/auto_scaling/basic'
# Updates the configuration for the specified AutoScalingGroup.
@@ -67,18 +66,16 @@ module Fog
:parser => Fog::Parsers::AWS::AutoScaling::Basic.new
}.merge!(options))
end
-
end
class Mock
-
def update_auto_scaling_group(auto_scaling_group_name, options = {})
unexpected_options = options.keys - ExpectedOptions[:update_auto_scaling_group]
unless unexpected_options.empty?
raise Fog::AWS::AutoScaling::ValidationError.new("Options #{unexpected_options.join(',')} should not be included in request")
end
- unless self.data[:auto_scaling_groups].has_key?(auto_scaling_group_name)
+ unless self.data[:auto_scaling_groups].key?(auto_scaling_group_name)
raise Fog::AWS::AutoScaling::ValidationError.new('AutoScalingGroup name not found - null')
end
self.data[:auto_scaling_groups][auto_scaling_group_name].merge!(options)
@@ -90,9 +87,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/beanstalk/check_dns_availability.rb b/lib/fog/aws/requests/beanstalk/check_dns_availability.rb
index 8bfbd38..afebeb5 100644
--- a/lib/fog/aws/requests/beanstalk/check_dns_availability.rb
+++ b/lib/fog/aws/requests/beanstalk/check_dns_availability.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/check_dns_availability'
# Checks if the specified CNAME is available.
diff --git a/lib/fog/aws/requests/beanstalk/create_application.rb b/lib/fog/aws/requests/beanstalk/create_application.rb
index 3d4fabb..7e1ee4b 100644
--- a/lib/fog/aws/requests/beanstalk/create_application.rb
+++ b/lib/fog/aws/requests/beanstalk/create_application.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/create_application'
# Creates an application that has one configuration template named default and no application versions.
diff --git a/lib/fog/aws/requests/beanstalk/create_application_version.rb b/lib/fog/aws/requests/beanstalk/create_application_version.rb
index eb31810..d4a48a3 100644
--- a/lib/fog/aws/requests/beanstalk/create_application_version.rb
+++ b/lib/fog/aws/requests/beanstalk/create_application_version.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/create_application_version'
# Creates an application version for the specified application.
diff --git a/lib/fog/aws/requests/beanstalk/create_configuration_template.rb b/lib/fog/aws/requests/beanstalk/create_configuration_template.rb
index 7eb6ba3..d4adc4f 100644
--- a/lib/fog/aws/requests/beanstalk/create_configuration_template.rb
+++ b/lib/fog/aws/requests/beanstalk/create_configuration_template.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/create_configuration_template'
# Creates a configuration template. Templates are associated with a specific application and are used to
diff --git a/lib/fog/aws/requests/beanstalk/create_environment.rb b/lib/fog/aws/requests/beanstalk/create_environment.rb
index f0f718d..cbf3e94 100644
--- a/lib/fog/aws/requests/beanstalk/create_environment.rb
+++ b/lib/fog/aws/requests/beanstalk/create_environment.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/create_environment'
# Launches an environment for the specified application using the specified configuration.
diff --git a/lib/fog/aws/requests/beanstalk/create_storage_location.rb b/lib/fog/aws/requests/beanstalk/create_storage_location.rb
index 8ae384b..6b67e0a 100644
--- a/lib/fog/aws/requests/beanstalk/create_storage_location.rb
+++ b/lib/fog/aws/requests/beanstalk/create_storage_location.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/create_storage_location'
# Creates the Amazon S3 storage location for the account.
diff --git a/lib/fog/aws/requests/beanstalk/delete_application.rb b/lib/fog/aws/requests/beanstalk/delete_application.rb
index cc436a3..b0b4510 100644
--- a/lib/fog/aws/requests/beanstalk/delete_application.rb
+++ b/lib/fog/aws/requests/beanstalk/delete_application.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/empty'
# Deletes the specified application along with all associated versions and configurations.
diff --git a/lib/fog/aws/requests/beanstalk/delete_application_version.rb b/lib/fog/aws/requests/beanstalk/delete_application_version.rb
index 9cfa16a..7e48a64 100644
--- a/lib/fog/aws/requests/beanstalk/delete_application_version.rb
+++ b/lib/fog/aws/requests/beanstalk/delete_application_version.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/empty'
# Deletes the specified version from the specified application.
diff --git a/lib/fog/aws/requests/beanstalk/delete_configuration_template.rb b/lib/fog/aws/requests/beanstalk/delete_configuration_template.rb
index 0d6ba30..0102158 100644
--- a/lib/fog/aws/requests/beanstalk/delete_configuration_template.rb
+++ b/lib/fog/aws/requests/beanstalk/delete_configuration_template.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/empty'
# Deletes the specified configuration template.
diff --git a/lib/fog/aws/requests/beanstalk/delete_environment_configuration.rb b/lib/fog/aws/requests/beanstalk/delete_environment_configuration.rb
index 0294a45..bcaee5e 100644
--- a/lib/fog/aws/requests/beanstalk/delete_environment_configuration.rb
+++ b/lib/fog/aws/requests/beanstalk/delete_environment_configuration.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/empty'
# Deletes the draft configuration associated with the running environment.
diff --git a/lib/fog/aws/requests/beanstalk/describe_application_versions.rb b/lib/fog/aws/requests/beanstalk/describe_application_versions.rb
index 66d7d18..b23fa74 100644
--- a/lib/fog/aws/requests/beanstalk/describe_application_versions.rb
+++ b/lib/fog/aws/requests/beanstalk/describe_application_versions.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/describe_application_versions'
# Returns descriptions for existing application versions.
diff --git a/lib/fog/aws/requests/beanstalk/describe_applications.rb b/lib/fog/aws/requests/beanstalk/describe_applications.rb
index c0af5db..28f6e85 100644
--- a/lib/fog/aws/requests/beanstalk/describe_applications.rb
+++ b/lib/fog/aws/requests/beanstalk/describe_applications.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/describe_applications'
# Returns the descriptions of existing applications.
diff --git a/lib/fog/aws/requests/beanstalk/describe_configuration_options.rb b/lib/fog/aws/requests/beanstalk/describe_configuration_options.rb
index 60c83ba..61b942d 100644
--- a/lib/fog/aws/requests/beanstalk/describe_configuration_options.rb
+++ b/lib/fog/aws/requests/beanstalk/describe_configuration_options.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/describe_configuration_options'
# Describes the configuration options that are used in a particular configuration template or environment,
diff --git a/lib/fog/aws/requests/beanstalk/describe_configuration_settings.rb b/lib/fog/aws/requests/beanstalk/describe_configuration_settings.rb
index 15810fa..6c3e261 100644
--- a/lib/fog/aws/requests/beanstalk/describe_configuration_settings.rb
+++ b/lib/fog/aws/requests/beanstalk/describe_configuration_settings.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/describe_configuration_settings'
# Returns a description of the settings for the specified configuration set, that is, either a configuration
diff --git a/lib/fog/aws/requests/beanstalk/describe_environment_resources.rb b/lib/fog/aws/requests/beanstalk/describe_environment_resources.rb
index 0f16500..3ee6852 100644
--- a/lib/fog/aws/requests/beanstalk/describe_environment_resources.rb
+++ b/lib/fog/aws/requests/beanstalk/describe_environment_resources.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/describe_environment_resources'
# Returns AWS resources for this environment.
diff --git a/lib/fog/aws/requests/beanstalk/describe_environments.rb b/lib/fog/aws/requests/beanstalk/describe_environments.rb
index 653e45a..e0c5733 100644
--- a/lib/fog/aws/requests/beanstalk/describe_environments.rb
+++ b/lib/fog/aws/requests/beanstalk/describe_environments.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/describe_environments'
# Returns descriptions for existing environments.
diff --git a/lib/fog/aws/requests/beanstalk/describe_events.rb b/lib/fog/aws/requests/beanstalk/describe_events.rb
index cb52728..ebbe772 100644
--- a/lib/fog/aws/requests/beanstalk/describe_events.rb
+++ b/lib/fog/aws/requests/beanstalk/describe_events.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/describe_events'
# Returns list of event descriptions matching criteria up to the last 6 weeks.
diff --git a/lib/fog/aws/requests/beanstalk/list_available_solution_stacks.rb b/lib/fog/aws/requests/beanstalk/list_available_solution_stacks.rb
index f2be253..d478af6 100644
--- a/lib/fog/aws/requests/beanstalk/list_available_solution_stacks.rb
+++ b/lib/fog/aws/requests/beanstalk/list_available_solution_stacks.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/list_available_solution_stacks'
# Checks if the specified CNAME is available.
diff --git a/lib/fog/aws/requests/beanstalk/rebuild_environment.rb b/lib/fog/aws/requests/beanstalk/rebuild_environment.rb
index 1cbd8a2..e722900 100644
--- a/lib/fog/aws/requests/beanstalk/rebuild_environment.rb
+++ b/lib/fog/aws/requests/beanstalk/rebuild_environment.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/empty'
# Deletes and recreates all of the AWS resources (for example: the Auto Scaling group, load balancer, etc.)
diff --git a/lib/fog/aws/requests/beanstalk/request_environment_info.rb b/lib/fog/aws/requests/beanstalk/request_environment_info.rb
index 42f6014..ea48d2e 100644
--- a/lib/fog/aws/requests/beanstalk/request_environment_info.rb
+++ b/lib/fog/aws/requests/beanstalk/request_environment_info.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/empty'
# Returns AWS resources for this environment.
diff --git a/lib/fog/aws/requests/beanstalk/restart_app_server.rb b/lib/fog/aws/requests/beanstalk/restart_app_server.rb
index f01e6b1..e5180a2 100644
--- a/lib/fog/aws/requests/beanstalk/restart_app_server.rb
+++ b/lib/fog/aws/requests/beanstalk/restart_app_server.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/empty'
# Returns AWS resources for this environment.
diff --git a/lib/fog/aws/requests/beanstalk/retrieve_environment_info.rb b/lib/fog/aws/requests/beanstalk/retrieve_environment_info.rb
index 5507c1f..f139042 100644
--- a/lib/fog/aws/requests/beanstalk/retrieve_environment_info.rb
+++ b/lib/fog/aws/requests/beanstalk/retrieve_environment_info.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/retrieve_environment_info'
# Returns AWS resources for this environment.
diff --git a/lib/fog/aws/requests/beanstalk/swap_environment_cnames.rb b/lib/fog/aws/requests/beanstalk/swap_environment_cnames.rb
index 88e848e..aad9f42 100644
--- a/lib/fog/aws/requests/beanstalk/swap_environment_cnames.rb
+++ b/lib/fog/aws/requests/beanstalk/swap_environment_cnames.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/empty'
# Swaps the CNAMEs of two environments.
diff --git a/lib/fog/aws/requests/beanstalk/terminate_environment.rb b/lib/fog/aws/requests/beanstalk/terminate_environment.rb
index ab8619b..ebf2507 100644
--- a/lib/fog/aws/requests/beanstalk/terminate_environment.rb
+++ b/lib/fog/aws/requests/beanstalk/terminate_environment.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/terminate_environment'
# Terminates the specified environment.
diff --git a/lib/fog/aws/requests/beanstalk/update_application.rb b/lib/fog/aws/requests/beanstalk/update_application.rb
index f3c1941..c8055c3 100644
--- a/lib/fog/aws/requests/beanstalk/update_application.rb
+++ b/lib/fog/aws/requests/beanstalk/update_application.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/update_application'
# Updates the specified application to have the specified properties.
diff --git a/lib/fog/aws/requests/beanstalk/update_application_version.rb b/lib/fog/aws/requests/beanstalk/update_application_version.rb
index 02f200b..ef1f392 100644
--- a/lib/fog/aws/requests/beanstalk/update_application_version.rb
+++ b/lib/fog/aws/requests/beanstalk/update_application_version.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/update_application_version'
# Updates the specified application version to have the specified properties.
diff --git a/lib/fog/aws/requests/beanstalk/update_configuration_template.rb b/lib/fog/aws/requests/beanstalk/update_configuration_template.rb
index 485a75f..6cca4d1 100644
--- a/lib/fog/aws/requests/beanstalk/update_configuration_template.rb
+++ b/lib/fog/aws/requests/beanstalk/update_configuration_template.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/update_configuration_template'
# Updates the specified configuration template to have the specified properties or configuration option values.
diff --git a/lib/fog/aws/requests/beanstalk/update_environment.rb b/lib/fog/aws/requests/beanstalk/update_environment.rb
index 69c2130..f9f80fa 100644
--- a/lib/fog/aws/requests/beanstalk/update_environment.rb
+++ b/lib/fog/aws/requests/beanstalk/update_environment.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/update_environment'
# Updates the environment description, deploys a new application version, updates the configuration settings
diff --git a/lib/fog/aws/requests/beanstalk/validate_configuration_settings.rb b/lib/fog/aws/requests/beanstalk/validate_configuration_settings.rb
index 6783470..466ba0b 100644
--- a/lib/fog/aws/requests/beanstalk/validate_configuration_settings.rb
+++ b/lib/fog/aws/requests/beanstalk/validate_configuration_settings.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ElasticBeanstalk
class Real
-
require 'fog/aws/parsers/beanstalk/validate_configuration_settings'
# Updates the specified configuration template to have the specified properties or configuration option values.
diff --git a/lib/fog/aws/requests/cdn/delete_distribution.rb b/lib/fog/aws/requests/cdn/delete_distribution.rb
index 8b9d779..01b9647 100644
--- a/lib/fog/aws/requests/cdn/delete_distribution.rb
+++ b/lib/fog/aws/requests/cdn/delete_distribution.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class AWS
class Real
-
# Delete a distribution from CloudFront.
#
# @param distribution_id [String] Id of distribution to delete.
@@ -19,11 +18,9 @@ module Fog
:path => "/distribution/#{distribution_id}"
})
end
-
end
class Mock
-
def delete_distribution(distribution_id, etag)
distribution = self.data[:distributions][distribution_id]
@@ -49,9 +46,7 @@ module Fog
Fog::CDN::AWS::Mock.error(:no_such_distribution)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cdn/delete_streaming_distribution.rb b/lib/fog/aws/requests/cdn/delete_streaming_distribution.rb
index 2473dff..1437055 100644
--- a/lib/fog/aws/requests/cdn/delete_streaming_distribution.rb
+++ b/lib/fog/aws/requests/cdn/delete_streaming_distribution.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class AWS
class Real
-
# Delete a streaming distribution from CloudFront.
#
# @param [String] distribution_id Id of distribution to delete.
@@ -19,11 +18,9 @@ module Fog
:path => "/streaming-distribution/#{distribution_id}"
})
end
-
end
class Mock
-
def delete_streaming_distribution(distribution_id, etag)
distribution = self.data[:streaming_distributions][distribution_id]
@@ -48,9 +45,7 @@ module Fog
Fog::CDN::AWS::Mock.error(:no_such_streaming_distribution)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cdn/get_distribution.rb b/lib/fog/aws/requests/cdn/get_distribution.rb
index ea01f31..5061cb7 100644
--- a/lib/fog/aws/requests/cdn/get_distribution.rb
+++ b/lib/fog/aws/requests/cdn/get_distribution.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class AWS
class Real
-
require 'fog/aws/parsers/cdn/distribution'
# Get information about a distribution from CloudFront.
@@ -47,11 +46,9 @@ module Fog
:path => "/distribution/#{distribution_id}"
})
end
-
end
class Mock
-
def get_distribution(distribution_id)
response = Excon::Response.new
@@ -76,7 +73,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cdn/get_distribution_list.rb b/lib/fog/aws/requests/cdn/get_distribution_list.rb
index bbd09c6..80e28e0 100644
--- a/lib/fog/aws/requests/cdn/get_distribution_list.rb
+++ b/lib/fog/aws/requests/cdn/get_distribution_list.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class AWS
class Real
-
require 'fog/aws/parsers/cdn/get_distribution_list'
# List information about distributions in CloudFront.
@@ -48,11 +47,9 @@ module Fog
:query => options
})
end
-
end
class Mock
-
def get_distribution_list(options = {})
response = Excon::Response.new
response.status = 200
diff --git a/lib/fog/aws/requests/cdn/get_invalidation.rb b/lib/fog/aws/requests/cdn/get_invalidation.rb
index 1fc5f10..f1ec500 100644
--- a/lib/fog/aws/requests/cdn/get_invalidation.rb
+++ b/lib/fog/aws/requests/cdn/get_invalidation.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class AWS
class Real
-
require 'fog/aws/parsers/cdn/get_invalidation'
# Get invalidation.
@@ -29,11 +28,9 @@ module Fog
:path => "/distribution/#{distribution_id}/invalidation/#{invalidation_id}"
})
end
-
end
class Mock
-
def get_invalidation(distribution_id, invalidation_id)
distribution = self.data[:distributions][distribution_id]
unless distribution
@@ -55,7 +52,6 @@ module Fog
response.body = invalidation
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cdn/get_invalidation_list.rb b/lib/fog/aws/requests/cdn/get_invalidation_list.rb
index 6ef2d05..f0f4eb2 100644
--- a/lib/fog/aws/requests/cdn/get_invalidation_list.rb
+++ b/lib/fog/aws/requests/cdn/get_invalidation_list.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class AWS
class Real
-
require 'fog/aws/parsers/cdn/get_invalidation_list'
# Get invalidation list.
@@ -33,11 +32,9 @@ module Fog
:query => options
})
end
-
end
class Mock
-
def get_invalidation_list(distribution_id, options = {})
distribution = self.data[:distributions][distribution_id]
unless distribution
@@ -73,9 +70,7 @@ module Fog
'Status' => d['Status']
}
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cdn/get_streaming_distribution.rb b/lib/fog/aws/requests/cdn/get_streaming_distribution.rb
index dc43cae..b212af1 100644
--- a/lib/fog/aws/requests/cdn/get_streaming_distribution.rb
+++ b/lib/fog/aws/requests/cdn/get_streaming_distribution.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class AWS
class Real
-
require 'fog/aws/parsers/cdn/streaming_distribution'
# Get information about a streaming distribution from CloudFront.
@@ -40,11 +39,9 @@ module Fog
:path => "/streaming-distribution/#{distribution_id}"
})
end
-
end
class Mock
-
def get_streaming_distribution(distribution_id)
response = Excon::Response.new
@@ -67,7 +64,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cdn/get_streaming_distribution_list.rb b/lib/fog/aws/requests/cdn/get_streaming_distribution_list.rb
index b7be3eb..806de70 100644
--- a/lib/fog/aws/requests/cdn/get_streaming_distribution_list.rb
+++ b/lib/fog/aws/requests/cdn/get_streaming_distribution_list.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class AWS
class Real
-
require 'fog/aws/parsers/cdn/get_streaming_distribution_list'
# List information about distributions in CloudFront.
@@ -48,11 +47,9 @@ module Fog
:query => options
})
end
-
end
class Mock
-
def get_streaming_distribution_list(options = {})
response = Excon::Response.new
response.status = 200
@@ -79,7 +76,6 @@ module Fog
}.merge(d['StreamingDistributionConfig'])
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cdn/post_distribution.rb b/lib/fog/aws/requests/cdn/post_distribution.rb
index 09a3640..98b8efd 100644
--- a/lib/fog/aws/requests/cdn/post_distribution.rb
+++ b/lib/fog/aws/requests/cdn/post_distribution.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class AWS
class Real
-
require 'fog/aws/parsers/cdn/distribution'
# Create a new distribution in CloudFront.
@@ -82,11 +81,9 @@ module Fog
:path => "/distribution"
})
end
-
end
class Mock
-
require 'time'
def post_distribution(options = {})
diff --git a/lib/fog/aws/requests/cdn/post_invalidation.rb b/lib/fog/aws/requests/cdn/post_invalidation.rb
index 892f5f5..36bef96 100644
--- a/lib/fog/aws/requests/cdn/post_invalidation.rb
+++ b/lib/fog/aws/requests/cdn/post_invalidation.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class AWS
class Real
-
require 'fog/aws/parsers/cdn/post_invalidation'
# List information about distributions in CloudFront.
@@ -40,11 +39,9 @@ module Fog
:path => "/distribution/#{distribution_id}/invalidation"
})
end
-
end
class Mock
-
def post_invalidation(distribution_id, paths, caller_reference = Time.now.to_i.to_s)
distribution = self.data[:distributions][distribution_id]
if distribution
@@ -72,9 +69,7 @@ module Fog
Fog::CDN::AWS::Mock.error(:no_such_distribution)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cdn/post_streaming_distribution.rb b/lib/fog/aws/requests/cdn/post_streaming_distribution.rb
index 330cd38..4477a2a 100644
--- a/lib/fog/aws/requests/cdn/post_streaming_distribution.rb
+++ b/lib/fog/aws/requests/cdn/post_streaming_distribution.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class AWS
class Real
-
require 'fog/aws/parsers/cdn/streaming_distribution'
# Create a new streaming distribution in CloudFront.
@@ -69,12 +68,9 @@ module Fog
:path => "/streaming-distribution"
})
end
-
end
-
class Mock
-
require 'time'
def post_streaming_distribution(options = {})
@@ -114,7 +110,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cdn/put_distribution_config.rb b/lib/fog/aws/requests/cdn/put_distribution_config.rb
index 81d9769..71d8286 100644
--- a/lib/fog/aws/requests/cdn/put_distribution_config.rb
+++ b/lib/fog/aws/requests/cdn/put_distribution_config.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class AWS
class Real
-
require 'fog/aws/parsers/cdn/distribution'
# Update a distribution in CloudFront.
@@ -85,11 +84,9 @@ module Fog
:path => "/distribution/#{distribution_id}/config"
})
end
-
end
class Mock
-
def put_distribution_config(distribution_id, etag, options = {})
distribution = self.data[:distributions][distribution_id]
@@ -114,7 +111,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cdn/put_streaming_distribution_config.rb b/lib/fog/aws/requests/cdn/put_streaming_distribution_config.rb
index 32d3ef2..bb6d2a5 100644
--- a/lib/fog/aws/requests/cdn/put_streaming_distribution_config.rb
+++ b/lib/fog/aws/requests/cdn/put_streaming_distribution_config.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class AWS
class Real
-
require 'fog/aws/parsers/cdn/streaming_distribution'
# Update a streaming distribution in CloudFront.
@@ -74,11 +73,9 @@ module Fog
:path => "/streaming-distribution/#{distribution_id}/config"
})
end
-
end
class Mock
-
def put_streaming_distribution_config(distribution_id, etag, options = {})
distribution = self.data[:streaming_distributions][distribution_id]
@@ -103,7 +100,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cloud_formation/create_stack.rb b/lib/fog/aws/requests/cloud_formation/create_stack.rb
index 39cff78..fd7dea1 100644
--- a/lib/fog/aws/requests/cloud_formation/create_stack.rb
+++ b/lib/fog/aws/requests/cloud_formation/create_stack.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudFormation
class Real
-
require 'fog/aws/parsers/cloud_formation/create_stack'
# Create a stack.
@@ -83,7 +82,6 @@ module Fog
:parser => Fog::Parsers::AWS::CloudFormation::CreateStack.new
}.merge!(params))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cloud_formation/delete_stack.rb b/lib/fog/aws/requests/cloud_formation/delete_stack.rb
index cab9e6b..6fd9824 100644
--- a/lib/fog/aws/requests/cloud_formation/delete_stack.rb
+++ b/lib/fog/aws/requests/cloud_formation/delete_stack.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudFormation
class Real
-
require 'fog/aws/parsers/cloud_formation/basic'
# Delete a stack.
@@ -20,7 +19,6 @@ module Fog
:parser => Fog::Parsers::AWS::CloudFormation::Basic.new
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cloud_formation/describe_stack_events.rb b/lib/fog/aws/requests/cloud_formation/describe_stack_events.rb
index 167c444..32ce57c 100644
--- a/lib/fog/aws/requests/cloud_formation/describe_stack_events.rb
+++ b/lib/fog/aws/requests/cloud_formation/describe_stack_events.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudFormation
class Real
-
require 'fog/aws/parsers/cloud_formation/describe_stack_events'
# Describe stack events.
@@ -34,7 +33,6 @@ module Fog
:parser => Fog::Parsers::AWS::CloudFormation::DescribeStackEvents.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cloud_formation/describe_stack_resources.rb b/lib/fog/aws/requests/cloud_formation/describe_stack_resources.rb
index 72e2ce6..73ca748 100644
--- a/lib/fog/aws/requests/cloud_formation/describe_stack_resources.rb
+++ b/lib/fog/aws/requests/cloud_formation/describe_stack_resources.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudFormation
class Real
-
require 'fog/aws/parsers/cloud_formation/describe_stack_resources'
# Describe stack resources.
@@ -33,7 +32,6 @@ module Fog
:parser => Fog::Parsers::AWS::CloudFormation::DescribeStackResources.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cloud_formation/describe_stacks.rb b/lib/fog/aws/requests/cloud_formation/describe_stacks.rb
index e814cb4..d5d3066 100644
--- a/lib/fog/aws/requests/cloud_formation/describe_stacks.rb
+++ b/lib/fog/aws/requests/cloud_formation/describe_stacks.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudFormation
class Real
-
require 'fog/aws/parsers/cloud_formation/describe_stacks'
# Describe stacks.
@@ -32,7 +31,6 @@ module Fog
:parser => Fog::Parsers::AWS::CloudFormation::DescribeStacks.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cloud_formation/get_template.rb b/lib/fog/aws/requests/cloud_formation/get_template.rb
index 9ebf1b6..918203f 100644
--- a/lib/fog/aws/requests/cloud_formation/get_template.rb
+++ b/lib/fog/aws/requests/cloud_formation/get_template.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudFormation
class Real
-
require 'fog/aws/parsers/cloud_formation/get_template'
# Describe stacks.
@@ -22,7 +21,6 @@ module Fog
:parser => Fog::Parsers::AWS::CloudFormation::GetTemplate.new
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cloud_formation/list_stack_resources.rb b/lib/fog/aws/requests/cloud_formation/list_stack_resources.rb
index 4425355..ba8d0b1 100644
--- a/lib/fog/aws/requests/cloud_formation/list_stack_resources.rb
+++ b/lib/fog/aws/requests/cloud_formation/list_stack_resources.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudFormation
class Real
-
require 'fog/aws/parsers/cloud_formation/list_stack_resources'
# List stack resources.
@@ -29,7 +28,6 @@ module Fog
:parser => Fog::Parsers::AWS::CloudFormation::ListStackResources.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cloud_formation/list_stacks.rb b/lib/fog/aws/requests/cloud_formation/list_stacks.rb
index 7e7d4b9..1587f2a 100644
--- a/lib/fog/aws/requests/cloud_formation/list_stacks.rb
+++ b/lib/fog/aws/requests/cloud_formation/list_stacks.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudFormation
class Real
-
require 'fog/aws/parsers/cloud_formation/list_stacks'
# List stacks.
@@ -30,7 +29,6 @@ module Fog
:parser => Fog::Parsers::AWS::CloudFormation::ListStacks.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cloud_formation/update_stack.rb b/lib/fog/aws/requests/cloud_formation/update_stack.rb
index 521d457..d372249 100644
--- a/lib/fog/aws/requests/cloud_formation/update_stack.rb
+++ b/lib/fog/aws/requests/cloud_formation/update_stack.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudFormation
class Real
-
require 'fog/aws/parsers/cloud_formation/update_stack'
# Update a stack.
@@ -51,7 +50,6 @@ module Fog
:parser => Fog::Parsers::AWS::CloudFormation::UpdateStack.new
}.merge!(params))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cloud_formation/validate_template.rb b/lib/fog/aws/requests/cloud_formation/validate_template.rb
index 2ef5ed5..b16911c 100644
--- a/lib/fog/aws/requests/cloud_formation/validate_template.rb
+++ b/lib/fog/aws/requests/cloud_formation/validate_template.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudFormation
class Real
-
require 'fog/aws/parsers/cloud_formation/validate_template'
# Describe stacks.
@@ -24,7 +23,6 @@ module Fog
:parser => Fog::Parsers::AWS::CloudFormation::ValidateTemplate.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cloud_watch/delete_alarms.rb b/lib/fog/aws/requests/cloud_watch/delete_alarms.rb
index f0eca83..3784e1e 100644
--- a/lib/fog/aws/requests/cloud_watch/delete_alarms.rb
+++ b/lib/fog/aws/requests/cloud_watch/delete_alarms.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudWatch
class Real
-
require 'fog/aws/parsers/cloud_watch/delete_alarms'
# Delete a list of alarms
@@ -29,7 +28,7 @@ module Fog
class Mock
def delete_alarms(alarm_names)
[*alarm_names].each do |alarm_name|
- unless data[:metric_alarms].has_key?(alarm_name)
+ unless data[:metric_alarms].key?(alarm_name)
raise Fog::AWS::AutoScaling::NotFound, "The alarm '#{alarm_name}' does not exist."
end
end
diff --git a/lib/fog/aws/requests/cloud_watch/describe_alarm_history.rb b/lib/fog/aws/requests/cloud_watch/describe_alarm_history.rb
index ef16b65..ccb1e7a 100644
--- a/lib/fog/aws/requests/cloud_watch/describe_alarm_history.rb
+++ b/lib/fog/aws/requests/cloud_watch/describe_alarm_history.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudWatch
class Real
-
require 'fog/aws/parsers/cloud_watch/describe_alarm_history'
# Retrieves history for the specified alarm
diff --git a/lib/fog/aws/requests/cloud_watch/describe_alarms.rb b/lib/fog/aws/requests/cloud_watch/describe_alarms.rb
index 7b53097..ecd7884 100644
--- a/lib/fog/aws/requests/cloud_watch/describe_alarms.rb
+++ b/lib/fog/aws/requests/cloud_watch/describe_alarms.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudWatch
class Real
-
require 'fog/aws/parsers/cloud_watch/describe_alarms'
# Retrieves alarms with the specified names
diff --git a/lib/fog/aws/requests/cloud_watch/describe_alarms_for_metric.rb b/lib/fog/aws/requests/cloud_watch/describe_alarms_for_metric.rb
index eaa1ef4..e8c4179 100644
--- a/lib/fog/aws/requests/cloud_watch/describe_alarms_for_metric.rb
+++ b/lib/fog/aws/requests/cloud_watch/describe_alarms_for_metric.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudWatch
class Real
-
require 'fog/aws/parsers/cloud_watch/describe_alarms_for_metric'
# Retrieves all alarms for a single metric
@@ -25,8 +24,8 @@ module Fog
def describe_alarms_for_metric(options)
if dimensions = options.delete('Dimensions')
- options.merge!(AWS.indexed_param('Dimensions.member.%d.Name', dimensions.collect {|dimension| dimension['Name']}))
- options.merge!(AWS.indexed_param('Dimensions.member.%d.Value', dimensions.collect {|dimension| dimension['Value']}))
+ options.merge!(AWS.indexed_param('Dimensions.member.%d.Name', dimensions.map {|dimension| dimension['Name']}))
+ options.merge!(AWS.indexed_param('Dimensions.member.%d.Value', dimensions.map {|dimension| dimension['Value']}))
end
request({
'Action' => 'DescribeAlarmsForMetric',
diff --git a/lib/fog/aws/requests/cloud_watch/disable_alarm_actions.rb b/lib/fog/aws/requests/cloud_watch/disable_alarm_actions.rb
index b14f91e..26ea6d0 100644
--- a/lib/fog/aws/requests/cloud_watch/disable_alarm_actions.rb
+++ b/lib/fog/aws/requests/cloud_watch/disable_alarm_actions.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudWatch
class Real
-
require 'fog/aws/parsers/cloud_watch/disable_alarm_actions'
# Disables actions for the specified alarms
diff --git a/lib/fog/aws/requests/cloud_watch/enable_alarm_actions.rb b/lib/fog/aws/requests/cloud_watch/enable_alarm_actions.rb
index 4329610..1d229cc 100644
--- a/lib/fog/aws/requests/cloud_watch/enable_alarm_actions.rb
+++ b/lib/fog/aws/requests/cloud_watch/enable_alarm_actions.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudWatch
class Real
-
require 'fog/aws/parsers/cloud_watch/enable_alarm_actions'
# Enables actions for the specified alarms
diff --git a/lib/fog/aws/requests/cloud_watch/get_metric_statistics.rb b/lib/fog/aws/requests/cloud_watch/get_metric_statistics.rb
index a237016..dbfcfef 100644
--- a/lib/fog/aws/requests/cloud_watch/get_metric_statistics.rb
+++ b/lib/fog/aws/requests/cloud_watch/get_metric_statistics.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudWatch
class Real
-
require 'fog/aws/parsers/cloud_watch/get_metric_statistics'
# Fetch datapoints for a metric. At most 1440 datapoints will be returned, the most datapoints that can be queried is 50850
@@ -26,14 +25,14 @@ module Fog
#
def get_metric_statistics(options={})
%w{Statistics StartTime EndTime Period MetricName Namespace}.each do |required_parameter|
- raise ArgumentError, "Must provide #{required_parameter}" unless options.has_key?(required_parameter)
+ raise ArgumentError, "Must provide #{required_parameter}" unless options.key?(required_parameter)
end
statistics = options.delete 'Statistics'
options.merge!(AWS.indexed_param('Statistics.member.%d', [*statistics]))
if dimensions = options.delete('Dimensions')
- options.merge!(AWS.indexed_param('Dimensions.member.%d.Name', dimensions.collect {|dimension| dimension['Name']}))
- options.merge!(AWS.indexed_param('Dimensions.member.%d.Value', dimensions.collect {|dimension| dimension['Value']}))
+ options.merge!(AWS.indexed_param('Dimensions.member.%d.Name', dimensions.map {|dimension| dimension['Name']}))
+ options.merge!(AWS.indexed_param('Dimensions.member.%d.Value', dimensions.map {|dimension| dimension['Value']}))
end
request({
@@ -41,7 +40,6 @@ module Fog
:parser => Fog::Parsers::AWS::CloudWatch::GetMetricStatistics.new
}.merge(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cloud_watch/list_metrics.rb b/lib/fog/aws/requests/cloud_watch/list_metrics.rb
index cf8456a..de78214 100644
--- a/lib/fog/aws/requests/cloud_watch/list_metrics.rb
+++ b/lib/fog/aws/requests/cloud_watch/list_metrics.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudWatch
class Real
-
require 'fog/aws/parsers/cloud_watch/list_metrics'
# List availabe metrics
@@ -22,8 +21,8 @@ module Fog
#
def list_metrics(options={})
if dimensions = options.delete('Dimensions')
- options.merge!(AWS.indexed_param('Dimensions.member.%d.Name', dimensions.collect {|dimension| dimension['Name']}))
- options.merge!(AWS.indexed_param('Dimensions.member.%d.Value', dimensions.collect {|dimension| dimension['Value']}))
+ options.merge!(AWS.indexed_param('Dimensions.member.%d.Name', dimensions.map {|dimension| dimension['Name']}))
+ options.merge!(AWS.indexed_param('Dimensions.member.%d.Value', dimensions.map {|dimension| dimension['Value']}))
end
request({
@@ -31,7 +30,6 @@ module Fog
:parser => Fog::Parsers::AWS::CloudWatch::ListMetrics.new
}.merge(options))
end
-
end
class Mock
@@ -59,7 +57,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/cloud_watch/put_metric_alarm.rb b/lib/fog/aws/requests/cloud_watch/put_metric_alarm.rb
index bfba4a6..f159790 100644
--- a/lib/fog/aws/requests/cloud_watch/put_metric_alarm.rb
+++ b/lib/fog/aws/requests/cloud_watch/put_metric_alarm.rb
@@ -32,8 +32,8 @@ module Fog
#
def put_metric_alarm(options)
if dimensions = options.delete('Dimensions')
- options.merge!(AWS.indexed_param('Dimensions.member.%d.Name', dimensions.collect {|dimension| dimension['Name']}))
- options.merge!(AWS.indexed_param('Dimensions.member.%d.Value', dimensions.collect {|dimension| dimension['Value']}))
+ options.merge!(AWS.indexed_param('Dimensions.member.%d.Name', dimensions.map {|dimension| dimension['Name']}))
+ options.merge!(AWS.indexed_param('Dimensions.member.%d.Value', dimensions.map {|dimension| dimension['Value']}))
end
if alarm_actions = options.delete('AlarmActions')
options.merge!(AWS.indexed_param('AlarmActions.member.%d', [*alarm_actions]))
@@ -66,7 +66,7 @@ module Fog
requirements = [ "AlarmName", "ComparisonOperator", "EvaluationPeriods", "Namespace", "Period", "Statistic", "Threshold" ]
requirements.each do |req|
- unless options.has_key?(req)
+ unless options.key?(req)
raise Fog::Compute::AWS::Error.new("The request must contain a the parameter '%s'" % req)
end
end
diff --git a/lib/fog/aws/requests/cloud_watch/put_metric_data.rb b/lib/fog/aws/requests/cloud_watch/put_metric_data.rb
index 6a713b7..9996e14 100644
--- a/lib/fog/aws/requests/cloud_watch/put_metric_data.rb
+++ b/lib/fog/aws/requests/cloud_watch/put_metric_data.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudWatch
class Real
-
require 'fog/aws/parsers/cloud_watch/put_metric_data'
# Publishes one or more data points to CloudWatch. A new metric is created if necessary
@@ -32,15 +31,15 @@ module Fog
options = {'Namespace' => namespace}
#first index the dimensions for any of the datums that have dimensions
- metric_data.collect! do |metric_datum|
+ metric_data.map! do |metric_datum|
if dimensions = metric_datum.delete('Dimensions')
- metric_datum.merge!(AWS.indexed_param('Dimensions.member.%d.Name', dimensions.collect {|dimension| dimension['Name']}))
- metric_datum.merge!(AWS.indexed_param('Dimensions.member.%d.Value', dimensions.collect {|dimension| dimension['Value']}))
+ metric_datum.merge!(AWS.indexed_param('Dimensions.member.%d.Name', dimensions.map {|dimension| dimension['Name']}))
+ metric_datum.merge!(AWS.indexed_param('Dimensions.member.%d.Value', dimensions.map {|dimension| dimension['Value']}))
end
metric_datum
end
#then flatten out an hashes in the metric_data array
- metric_data.collect! { |metric_datum| flatten_hash(metric_datum) }
+ metric_data.map! { |metric_datum| flatten_hash(metric_datum) }
#then index the metric_data array
options.merge!(AWS.indexed_param('MetricData.member.%d', [*metric_data]))
#then finally flatten out an hashes in the overall options array
diff --git a/lib/fog/aws/requests/cloud_watch/set_alarm_state.rb b/lib/fog/aws/requests/cloud_watch/set_alarm_state.rb
index 722af26..f16d876 100644
--- a/lib/fog/aws/requests/cloud_watch/set_alarm_state.rb
+++ b/lib/fog/aws/requests/cloud_watch/set_alarm_state.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class CloudWatch
class Real
-
require 'fog/aws/parsers/cloud_watch/set_alarm_state'
# Temporarily sets the state of an alarm
diff --git a/lib/fog/aws/requests/compute/allocate_address.rb b/lib/fog/aws/requests/compute/allocate_address.rb
index 9efb02f..e57a9af 100644
--- a/lib/fog/aws/requests/compute/allocate_address.rb
+++ b/lib/fog/aws/requests/compute/allocate_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/allocate_address'
# Acquire an elastic IP address.
@@ -24,11 +23,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::AllocateAddress.new
)
end
-
end
class Mock
-
def allocate_address(domain = 'standard')
domain = domain == 'vpc' ? 'vpc' : 'standard'
response = Excon::Response.new
@@ -52,7 +49,6 @@ module Fog
raise(Excon::Errors.status_error({:expects => 200}, response))
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/assign_private_ip_addresses.rb b/lib/fog/aws/requests/compute/assign_private_ip_addresses.rb
index 048059b..a1dde0e 100644
--- a/lib/fog/aws/requests/compute/assign_private_ip_addresses.rb
+++ b/lib/fog/aws/requests/compute/assign_private_ip_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/assign_private_ip_addresses'
# Assigns one or more secondary private IP addresses to the specified network interface.
@@ -20,7 +19,6 @@ module Fog
#
# {Amazon API Reference}[http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-AssignPrivateIpAddresses.html]
def assign_private_ip_addresses(network_interface_id, options={})
-
if options['PrivateIpAddresses'] && options['SecondaryPrivateIpAddressCount']
raise Fog::Compute::AWS::Error.new("You may specify secondaryPrivateIpAddressCount or specific secondary private IP addresses, but not both.")
end
@@ -35,11 +33,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::AssignPrivateIpAddresses.new
}.merge(options))
end
-
end
class Mock
-
def assign_private_ip_addresses(network_interface_id, options={})
if options['PrivateIpAddresses'] && options['SecondaryPrivateIpAddressCount']
raise Fog::Compute::AWS::Error.new("You may specify secondaryPrivateIpAddressCount or specific secondary private IP addresses, but not both.")
@@ -53,7 +49,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/associate_address.rb b/lib/fog/aws/requests/compute/associate_address.rb
index c316d20..ad6b7e1 100644
--- a/lib/fog/aws/requests/compute/associate_address.rb
+++ b/lib/fog/aws/requests/compute/associate_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/associate_address'
# Associate an elastic IP address with an instance
@@ -26,7 +25,7 @@ module Fog
def associate_address(*args)
if args.first.kind_of? Hash
params = args.first
- else
+ else
params = {
:instance_id => args[0],
:public_ip => args[1],
@@ -55,11 +54,10 @@ module Fog
end
class Mock
-
def associate_address(*args)
if args.first.kind_of? Hash
params = args.first
- else
+ else
params = {
:instance_id => args[0],
:public_ip => args[1],
@@ -122,7 +120,6 @@ module Fog
raise Fog::Compute::AWS::Error.new("You must specify either an InstanceId or a NetworkInterfaceID")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/associate_dhcp_options.rb b/lib/fog/aws/requests/compute/associate_dhcp_options.rb
index 009bee7..f49bbec 100644
--- a/lib/fog/aws/requests/compute/associate_dhcp_options.rb
+++ b/lib/fog/aws/requests/compute/associate_dhcp_options.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
#
#
@@ -27,11 +26,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
class Mock
-
def associate_dhcp_options(dhcp_options_id, vpc_id)
response = Excon::Response.new
if dhcp_options_id && vpc_id
@@ -50,7 +47,6 @@ module Fog
raise Fog::Compute::AWS::Error.new(message)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/associate_route_table.rb b/lib/fog/aws/requests/compute/associate_route_table.rb
index 39d909e..704415d 100755
--- a/lib/fog/aws/requests/compute/associate_route_table.rb
+++ b/lib/fog/aws/requests/compute/associate_route_table.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/associate_route_table'
# Associates a subnet with a route table.
#
@@ -25,11 +24,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::AssociateRouteTable.new
)
end
-
end
class Mock
-
def associate_route_table(routeTableId, subnetId)
routetable = self.data[:route_tables].find { |routetable| routetable["routeTableId"].eql? routeTableId }
subnet = self.data[:subnets].find { |subnet| subnet["subnetId"].eql? subnetId }
@@ -49,7 +46,6 @@ module Fog
else
raise Fog::Compute::AWS::NotFound.new("The subnet ID '#{subnetId}' does not exist")
end
-
end
private
@@ -68,7 +64,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/attach_internet_gateway.rb b/lib/fog/aws/requests/compute/attach_internet_gateway.rb
index 3a680c8..c2d3f4c 100644
--- a/lib/fog/aws/requests/compute/attach_internet_gateway.rb
+++ b/lib/fog/aws/requests/compute/attach_internet_gateway.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Attaches an Internet gateway to a VPC, enabling connectivity between the Internet and the VPC
#
@@ -26,11 +25,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
class Mock
-
def attach_internet_gateway(internet_gateway_id, vpc_id)
response = Excon::Response.new
if internet_gateway_id && vpc_id
@@ -49,7 +46,6 @@ module Fog
raise Fog::Compute::AWS::Error.new(message)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/attach_network_interface.rb b/lib/fog/aws/requests/compute/attach_network_interface.rb
index 8d63014..83c4fab 100644
--- a/lib/fog/aws/requests/compute/attach_network_interface.rb
+++ b/lib/fog/aws/requests/compute/attach_network_interface.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/attach_network_interface'
# Attach a network interface
@@ -30,15 +29,20 @@ module Fog
end
end
-
class Mock
-
def attach_network_interface(nic_id, instance_id, device_index)
response = Excon::Response.new
- if self.data[:network_interfaces][nic_id]
+ if ! self.data[:instances].find{ |i,i_conf|
+ i_conf['instanceId'] == instance_id
+ }
+ raise Fog::Compute::AWS::NotFound.new("The instance ID '#{instance_id}' does not exist")
+ elsif self.data[:network_interfaces].find{ |ni,ni_conf| ni_conf['attachment']['instanceId'] == instance_id && ni_conf['attachment']['deviceIndex'] == device_index }
+ raise Fog::Compute::AWS::Error.new("InvalidParameterValue => Instance '#{instance_id}' already has an interface attached at device index '#{device_index}'.")
+ elsif self.data[:network_interfaces][nic_id]
attachment = self.data[:network_interfaces][nic_id]['attachment']
attachment['attachmentId'] = Fog::AWS::Mock.request_id
attachment['instanceId'] = instance_id
+ attachment['deviceIndex'] = device_index
response.status = 200
response.body = {
diff --git a/lib/fog/aws/requests/compute/attach_volume.rb b/lib/fog/aws/requests/compute/attach_volume.rb
index 166a434..58f2ad9 100644
--- a/lib/fog/aws/requests/compute/attach_volume.rb
+++ b/lib/fog/aws/requests/compute/attach_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/attach_volume'
# Attach an Amazon EBS volume with a running instance, exposing as specified device
@@ -33,11 +32,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::AttachVolume.new
)
end
-
end
class Mock
-
def attach_volume(instance_id, volume_id, device)
response = Excon::Response.new
if instance_id && volume_id && device
@@ -80,7 +77,6 @@ module Fog
raise Fog::Compute::AWS::Error.new(message)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/authorize_security_group_ingress.rb b/lib/fog/aws/requests/compute/authorize_security_group_ingress.rb
index 6690cf7..48eeb36 100644
--- a/lib/fog/aws/requests/compute/authorize_security_group_ingress.rb
+++ b/lib/fog/aws/requests/compute/authorize_security_group_ingress.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Add permissions to a security group
@@ -76,11 +75,9 @@ module Fog
end
params.reject {|k, v| v.nil? }
end
-
end
class Mock
-
def authorize_security_group_ingress(group_name, options = {})
options = Fog::AWS.parse_security_group_options(group_name, options)
if options.key?('GroupName')
@@ -141,7 +138,7 @@ module Fog
if !is_vpc && (options['IpProtocol'] && (!options['FromPort'] || !options['ToPort']))
raise Fog::Compute::AWS::Error.new("InvalidPermission.Malformed => TCP/UDP port (-1) out of range")
end
- if options.has_key?('IpPermissions')
+ if options.key?('IpPermissions')
if !options['IpPermissions'].is_a?(Array) || options['IpPermissions'].empty?
raise Fog::Compute::AWS::Error.new("InvalidRequest => The request received was invalid.")
end
@@ -152,7 +149,12 @@ module Fog
def normalize_permissions(options)
normalized_permissions = []
if options['SourceSecurityGroupName']
- source_group_id=self.data[:security_groups][options['SourceSecurityGroupName']]['groupId']
+ group_name = if options['SourceSecurityGroupName'] =~ /default_elb/
+ "default"
+ else
+ options['SourceSecurityGroupName']
+ end
+ source_group_id=self.data[:security_groups][group_name]['groupId']
['tcp', 'udp'].each do |protocol|
normalized_permissions << {
'ipProtocol' => protocol,
@@ -188,7 +190,7 @@ module Fog
security_group = if group_name = authorized_group['GroupName']
self.data[:security_groups][group_name] || {}
elsif group_id = authorized_group['GroupId']
- self.data[:security_groups].values.find { |sg| sg['groupId'] == group_id }
+ self.data[:security_groups].values.find { |sg| sg['groupId'] == group_id } || {}
end
{'groupName' => authorized_group['GroupName'] || security_group["groupName"], 'userId' => authorized_group['UserId'] || self.data[:owner_id], 'groupId' => authorized_group["GroupId"] || security_group['groupId']}
@@ -202,7 +204,7 @@ module Fog
security_group = if group_name = authorized_group['GroupName']
self.data[:security_groups][group_name] || {}
elsif group_id = authorized_group['GroupId']
- self.data[:security_groups].values.find { |sg| sg['groupId'] == group_id }
+ self.data[:security_groups].values.find { |sg| sg['groupId'] == group_id } || {}
end
{'groupName' => authorized_group['GroupName'] || security_group["groupName"], 'userId' => authorized_group['UserId'] || self.data[:owner_id], 'groupId' => authorized_group["GroupId"] || security_group['groupId']}
@@ -217,12 +219,11 @@ module Fog
end
def find_matching_permission(group, permission)
- group['ipPermissions'].detect {|group_permission|
+ group['ipPermissions'].find {|group_permission|
permission['ipProtocol'] == group_permission['ipProtocol'] &&
permission['fromPort'] == group_permission['fromPort'] &&
permission['toPort'] == group_permission['toPort'] }
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/cancel_spot_instance_requests.rb b/lib/fog/aws/requests/compute/cancel_spot_instance_requests.rb
index a8480bf..01f1e09 100644
--- a/lib/fog/aws/requests/compute/cancel_spot_instance_requests.rb
+++ b/lib/fog/aws/requests/compute/cancel_spot_instance_requests.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/cancel_spot_instance_requests'
# Terminate specified spot instance requests
@@ -27,7 +26,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::CancelSpotInstanceRequests.new
}.merge!(params))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/copy_image.rb b/lib/fog/aws/requests/compute/copy_image.rb
index b03ee77..a64e286 100644
--- a/lib/fog/aws/requests/compute/copy_image.rb
+++ b/lib/fog/aws/requests/compute/copy_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/copy_image'
# Copy an image to a different region
@@ -32,11 +31,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::CopyImage.new
)
end
-
end
class Mock
-
#
# Usage
#
@@ -56,7 +53,6 @@ module Fog
}.merge!(data)
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/copy_snapshot.rb b/lib/fog/aws/requests/compute/copy_snapshot.rb
index 229f3a8..c27235a 100644
--- a/lib/fog/aws/requests/compute/copy_snapshot.rb
+++ b/lib/fog/aws/requests/compute/copy_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/copy_snapshot'
# Copy a snapshot to a different region
@@ -27,11 +26,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::CopySnapshot.new
)
end
-
end
class Mock
-
#
# Usage
#
@@ -51,7 +48,6 @@ module Fog
}.merge!(data)
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/create_dhcp_options.rb b/lib/fog/aws/requests/compute/create_dhcp_options.rb
index fc977c4..3816ec6 100644
--- a/lib/fog/aws/requests/compute/create_dhcp_options.rb
+++ b/lib/fog/aws/requests/compute/create_dhcp_options.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/create_dhcp_options'
# Creates a set of DHCP options for your VPC
@@ -73,4 +72,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/aws/requests/compute/create_image.rb b/lib/fog/aws/requests/compute/create_image.rb
index 8fe44ee..6b1fa53 100644
--- a/lib/fog/aws/requests/compute/create_image.rb
+++ b/lib/fog/aws/requests/compute/create_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/create_image'
# Create a bootable EBS volume AMI
@@ -30,6 +29,7 @@ module Fog
params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.Ebs.SnapshotId', block_device_mappings.map{|mapping| mapping['Ebs.SnapshotId']})
params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.Ebs.DeleteOnTermination', block_device_mappings.map{|mapping| mapping['Ebs.DeleteOnTermination']})
params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.Ebs.VolumeType', block_device_mappings.map{|mapping| mapping['Ebs.VolumeType']})
+ params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.Ebs.Encrypted', block_device_mappings.map{|mapping| mapping['Ebs.Encrypted']})
params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.Ebs.Iops', block_device_mappings.map{|mapping| mapping['Ebs.Iops']})
params.reject!{|k,v| v.nil?}
@@ -45,7 +45,6 @@ module Fog
end
class Mock
-
# Usage
#
# AWS[:compute].create_image("i-ac65ee8c", "test", "something")
@@ -60,6 +59,7 @@ module Fog
params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.Ebs.SnapshotId', block_device_mappings.map{|mapping| mapping['Ebs.SnapshotId']})
params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.Ebs.DeleteOnTermination', block_device_mappings.map{|mapping| mapping['Ebs.DeleteOnTermination']})
params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.Ebs.VolumeType', block_device_mappings.map{|mapping| mapping['Ebs.VolumeType']})
+ params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.Ebs.Encrypted', block_device_mappings.map{|mapping| mapping['Ebs.Encrypted']})
params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.Ebs.Iops', block_device_mappings.map{|mapping| mapping['Ebs.Iops']})
params.reject!{|k,v| v.nil?}
@@ -85,7 +85,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/create_internet_gateway.rb b/lib/fog/aws/requests/compute/create_internet_gateway.rb
index c71e840..ba0aee2 100644
--- a/lib/fog/aws/requests/compute/create_internet_gateway.rb
+++ b/lib/fog/aws/requests/compute/create_internet_gateway.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/create_internet_gateway'
# Creates an InternetGateway
diff --git a/lib/fog/aws/requests/compute/create_key_pair.rb b/lib/fog/aws/requests/compute/create_key_pair.rb
index 221bd5c..688b1b4 100644
--- a/lib/fog/aws/requests/compute/create_key_pair.rb
+++ b/lib/fog/aws/requests/compute/create_key_pair.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/create_key_pair'
# Create a new key pair
@@ -26,11 +25,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::CreateKeyPair.new
)
end
-
end
class Mock
-
def create_key_pair(key_name)
response = Excon::Response.new
unless self.data[:key_pairs][key_name]
@@ -49,7 +46,6 @@ module Fog
raise Fog::Compute::AWS::Error.new("InvalidKeyPair.Duplicate => The keypair '#{key_name}' already exists.")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/create_network_acl.rb b/lib/fog/aws/requests/compute/create_network_acl.rb
index 8c5c260..45bf4ad 100644
--- a/lib/fog/aws/requests/compute/create_network_acl.rb
+++ b/lib/fog/aws/requests/compute/create_network_acl.rb
@@ -53,7 +53,7 @@ module Fog
if vpcId
id = Fog::AWS::Mock.network_acl_id
- unless self.data[:vpcs].detect { |s| s['vpcId'] == vpcId }
+ unless self.data[:vpcs].find { |s| s['vpcId'] == vpcId }
raise Fog::Compute::AWS::Error.new("Unknown VPC '#{vpcId}' specified")
end
@@ -82,7 +82,7 @@ module Fog
},
],
'associationSet' => [],
- 'tagSet' => {},
+ 'tagSet' => {}
}
self.data[:network_acls][id] = data
diff --git a/lib/fog/aws/requests/compute/create_network_acl_entry.rb b/lib/fog/aws/requests/compute/create_network_acl_entry.rb
index 2e0f907..e8b57b2 100644
--- a/lib/fog/aws/requests/compute/create_network_acl_entry.rb
+++ b/lib/fog/aws/requests/compute/create_network_acl_entry.rb
@@ -45,7 +45,7 @@ module Fog
response = Excon::Response.new
if self.data[:network_acls][network_acl_id]
- if self.data[:network_acls][network_acl_id]['entrySet'].detect { |r| r['ruleNumber'] == rule_number && r['egress'] == egress }
+ if self.data[:network_acls][network_acl_id]['entrySet'].find { |r| r['ruleNumber'] == rule_number && r['egress'] == egress }
raise Fog::Compute::AWS::Error.new("Already a rule with that number")
end
diff --git a/lib/fog/aws/requests/compute/create_network_interface.rb b/lib/fog/aws/requests/compute/create_network_interface.rb
index cc35b90..3bb6e2c 100644
--- a/lib/fog/aws/requests/compute/create_network_interface.rb
+++ b/lib/fog/aws/requests/compute/create_network_interface.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/create_network_interface'
# Creates a network interface
@@ -57,7 +56,6 @@ module Fog
'SubnetId' => subnetId,
:parser => Fog::Parsers::Compute::AWS::CreateNetworkInterface.new
}.merge!(options))
-
end
end
@@ -65,45 +63,63 @@ module Fog
def create_network_interface(subnetId, options = {})
response = Excon::Response.new
if subnetId
- id = Fog::AWS::Mock.network_interface_id
+ subnet = self.data[:subnets].find{ |s| s['subnetId'] == subnetId }
+ if subnet.nil?
+ raise Fog::Compute::AWS::Error.new("Unknown subnet '#{subnetId}' specified")
+ else
+ id = Fog::AWS::Mock.network_interface_id
+ cidr_block = IPAddress.parse(subnet['cidrBlock'])
- groups = {}
- if options['GroupSet']
- options['GroupSet'].each do |group_id|
- name = self.data[:security_groups].select { |k,v| v['groupId'] == group_id }.first
- if name.nil?
- raise Fog::Compute::AWS::Error.new("Unknown security group '#{group_id}' specified")
+ groups = {}
+ if options['GroupSet']
+ options['GroupSet'].each do |group_id|
+ group_obj = self.data[:security_groups].select { |k,v| v['groupId'] == group_id }.first
+ if group_obj.nil?
+ raise Fog::Compute::AWS::Error.new("Unknown security group '#{group_id}' specified")
+ end
+ groups[group_id] = group_obj
end
- groups[group_id] = name
end
- end
- if options['PrivateIpAddress'].nil?
- options['PrivateIpAddress'] = "10.0.0.2"
- end
- data = {
- 'networkInterfaceId' => id,
- 'subnetId' => subnetId,
- 'vpcId' => 'mock-vpc-id',
- 'availabilityZone' => 'mock-zone',
- 'description' => options['Description'],
- 'ownerId' => '',
- 'requesterManaged' => 'false',
- 'status' => 'available',
- 'macAddress' => '00:11:22:33:44:55',
- 'privateIpAddress' => options['PrivateIpAddress'],
- 'sourceDestCheck' => true,
- 'groupSet' => groups,
- 'attachment' => {},
- 'association' => {},
- 'tagSet' => {}
- }
- self.data[:network_interfaces][id] = data
- response.body = {
- 'requestId' => Fog::AWS::Mock.request_id,
- 'networkInterface' => data
- }
- response
+ if options['PrivateIpAddress'].nil?
+ # Here we try to act like a DHCP server and pick the first
+ # available IP (not including the first in the cidr block,
+ # which is typically reserved for the gateway).
+ cidr_block.each_host do |p_ip|
+ unless self.data[:network_interfaces].map{ |ni, ni_conf| ni_conf['privateIpAddress'] }.include?p_ip.to_s ||
+ cidr_block.first == p_ip
+ options['PrivateIpAddress'] = p_ip.to_s
+ break
+ end
+ end
+ elsif self.data[:network_interfaces].map{ |ni,ni_conf| ni_conf['privateIpAddress'] }.include?options['PrivateIpAddress']
+ raise Fog::Compute::AWS::Error.new('InUse => The specified address is already in use.')
+ end
+
+ data = {
+ 'networkInterfaceId' => id,
+ 'subnetId' => subnetId,
+ 'vpcId' => 'mock-vpc-id',
+ 'availabilityZone' => 'mock-zone',
+ 'description' => options['Description'],
+ 'ownerId' => '',
+ 'requesterManaged' => 'false',
+ 'status' => 'available',
+ 'macAddress' => '00:11:22:33:44:55',
+ 'privateIpAddress' => options['PrivateIpAddress'],
+ 'sourceDestCheck' => true,
+ 'groupSet' => groups,
+ 'attachment' => {},
+ 'association' => {},
+ 'tagSet' => {}
+ }
+ self.data[:network_interfaces][id] = data
+ response.body = {
+ 'requestId' => Fog::AWS::Mock.request_id,
+ 'networkInterface' => data
+ }
+ response
+ end
else
response.status = 400
response.body = {
diff --git a/lib/fog/aws/requests/compute/create_placement_group.rb b/lib/fog/aws/requests/compute/create_placement_group.rb
index 7400b5c..c16f22e 100644
--- a/lib/fog/aws/requests/compute/create_placement_group.rb
+++ b/lib/fog/aws/requests/compute/create_placement_group.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Create a new placement group
@@ -26,9 +25,7 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/create_route.rb b/lib/fog/aws/requests/compute/create_route.rb
index edff3ea..ceeda3d 100755
--- a/lib/fog/aws/requests/compute/create_route.rb
+++ b/lib/fog/aws/requests/compute/create_route.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Creates a route in a route table within a VPC.
@@ -40,7 +39,6 @@ module Fog
end
class Mock
-
def create_route(route_table_id, destination_cidr_block, internet_gateway_id=nil, instance_id=nil, network_interface_id=nil)
instance_owner_id = nil
route_table = self.data[:route_tables].find { |routetable| routetable["routeTableId"].eql? route_table_id }
diff --git a/lib/fog/aws/requests/compute/create_route_table.rb b/lib/fog/aws/requests/compute/create_route_table.rb
index 77ae430..e5a1bce 100755
--- a/lib/fog/aws/requests/compute/create_route_table.rb
+++ b/lib/fog/aws/requests/compute/create_route_table.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/create_route_table'
# Creates a route table for the specified VPC.
diff --git a/lib/fog/aws/requests/compute/create_security_group.rb b/lib/fog/aws/requests/compute/create_security_group.rb
index 509acdd..58233f9 100644
--- a/lib/fog/aws/requests/compute/create_security_group.rb
+++ b/lib/fog/aws/requests/compute/create_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/create_security_group'
# Create a new security group
@@ -29,11 +28,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::CreateSecurityGroup.new
)
end
-
end
class Mock
-
def create_security_group(name, description, vpc_id=nil)
response = Excon::Response.new
unless self.data[:security_groups][name]
@@ -57,7 +54,6 @@ module Fog
raise Fog::Compute::AWS::Error.new("InvalidGroup.Duplicate => The security group '#{name}' already exists")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/create_snapshot.rb b/lib/fog/aws/requests/compute/create_snapshot.rb
index 1e7caa6..39747ee 100644
--- a/lib/fog/aws/requests/compute/create_snapshot.rb
+++ b/lib/fog/aws/requests/compute/create_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/create_snapshot'
# Create a snapshot of an EBS volume and store it in S3
@@ -13,6 +12,7 @@ module Fog
# ==== Returns
# * response<~Excon::Response>:
# * body<~Hash>:
+ # * 'encrypted'<~Boolean>: The encryption status of the snapshot.
# * 'progress'<~String> - The percentage progress of the snapshot
# * 'requestId'<~String> - id of request
# * 'snapshotId'<~String> - id of snapshot
@@ -29,11 +29,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::CreateSnapshot.new
)
end
-
end
class Mock
-
#
# Usage
#
@@ -47,6 +45,7 @@ module Fog
snapshot_id = Fog::AWS::Mock.snapshot_id
data = {
'description' => description,
+ 'encrypted' => false,
'ownerId' => self.data[:owner_id],
'progress' => nil,
'snapshotId' => snapshot_id,
@@ -65,7 +64,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/create_spot_datafeed_subscription.rb b/lib/fog/aws/requests/compute/create_spot_datafeed_subscription.rb
index 2e90c1e..7ae94f9 100644
--- a/lib/fog/aws/requests/compute/create_spot_datafeed_subscription.rb
+++ b/lib/fog/aws/requests/compute/create_spot_datafeed_subscription.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/spot_datafeed_subscription'
# Create a spot datafeed subscription
@@ -34,7 +33,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::SpotDatafeedSubscription.new
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/create_subnet.rb b/lib/fog/aws/requests/compute/create_subnet.rb
index 1e6847f..c061fcc 100644
--- a/lib/fog/aws/requests/compute/create_subnet.rb
+++ b/lib/fog/aws/requests/compute/create_subnet.rb
@@ -2,7 +2,7 @@ module Fog
module Compute
class AWS
class Real
-
+ require 'ipaddress'
require 'fog/aws/parsers/compute/create_subnet'
# Creates a Subnet with the CIDR block you specify.
@@ -36,7 +36,6 @@ module Fog
'CidrBlock' => cidrBlock,
:parser => Fog::Parsers::Compute::AWS::CreateSubnet.new
}.merge!(options))
-
end
end
@@ -44,7 +43,20 @@ module Fog
def create_subnet(vpcId, cidrBlock, options = {})
av_zone = options['AvailabilityZone'].nil? ? 'us-east-1c' : options['AvailabilityZone']
Excon::Response.new.tap do |response|
- if cidrBlock && vpcId
+ if cidrBlock && vpcId
+ vpc = self.data[:vpcs].find{ |v| v['vpcId'] == vpcId }
+ if vpc.nil?
+ raise Fog::Compute::AWS::NotFound.new("The vpc ID '#{vpcId}' does not exist")
+ end
+ if ! ::IPAddress.parse(vpc['cidrBlock']).include?(::IPAddress.parse(cidrBlock))
+ raise Fog::Compute::AWS::Error.new("Range => The CIDR '#{cidrBlock}' is invalid.")
+ end
+ self.data[:subnets].select{ |s| s['vpcId'] == vpcId }.each do |subnet|
+ if ::IPAddress.parse(subnet['cidrBlock']).include?(::IPAddress.parse(cidrBlock))
+ raise Fog::Compute::AWS::Error.new("Conflict => The CIDR '#{cidrBlock}' conflicts with another subnet")
+ end
+ end
+
response.status = 200
data = {
'subnetId' => Fog::AWS::Mock.subnet_id,
@@ -58,7 +70,7 @@ module Fog
# Add this subnet to the default network ACL
accid = Fog::AWS::Mock.network_acl_association_id
- default_nacl = self.data[:network_acls].values.detect { |nacl| nacl['vpcId'] == vpcId && nacl['default'] }
+ default_nacl = self.data[:network_acls].values.find { |nacl| nacl['vpcId'] == vpcId && nacl['default'] }
default_nacl['associationSet'] << {
'networkAclAssociationId' => accid,
'networkAclId' => default_nacl['networkAclId'],
diff --git a/lib/fog/aws/requests/compute/create_tags.rb b/lib/fog/aws/requests/compute/create_tags.rb
index 35c8173..c2ea762 100644
--- a/lib/fog/aws/requests/compute/create_tags.rb
+++ b/lib/fog/aws/requests/compute/create_tags.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Adds tags to resources
@@ -35,33 +34,12 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
}.merge!(params))
end
-
end
class Mock
-
def create_tags(resources, tags)
resources = [*resources]
-
- tagged = resources.map do |resource_id|
- type = case resource_id
- when /^ami\-[a-z0-9]{8}$/i
- 'image'
- when /^i\-[a-z0-9]{8}$/i
- 'instance'
- when /^snap\-[a-z0-9]{8}$/i
- 'snapshot'
- when /^vol\-[a-z0-9]{8}$/i
- 'volume'
- when /^igw\-[a-z0-9]{8}$/i
- 'internet_gateway'
- end
- if type && ((type == 'image' && visible_images[resource_id]) || self.data[:"#{type}s"][resource_id])
- { 'resourceId' => resource_id, 'resourceType' => type }
- else
- raise(Fog::Service::NotFound.new("The #{type} ID '#{resource_id}' does not exist"))
- end
- end
+ tagged = tagged_resources(resources)
tags.each do |key, value|
self.data[:tags][key] ||= {}
@@ -81,9 +59,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/create_volume.rb b/lib/fog/aws/requests/compute/create_volume.rb
index e948a8a..cda0a70 100644
--- a/lib/fog/aws/requests/compute/create_volume.rb
+++ b/lib/fog/aws/requests/compute/create_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/create_volume'
# Create an EBS volume
@@ -14,6 +13,7 @@ module Fog
# * 'SnapshotId'<~String> - Optional, snapshot to create volume from
# * 'VolumeType'<~String> - Optional, volume type. standard or io1, default is standard.
# * 'Iops'<~Integer> - Number of IOPS the volume supports. Required if VolumeType is io1, must be between 1 and 4000.
+ # * 'Encrypted'<~Boolean> - Optional, specifies whether the volume should be encrypted, default is false.
#
# ==== Returns
# * response<~Excon::Response>:
@@ -26,6 +26,7 @@ module Fog
# * 'volumeId'<~String> - Reference to volume
# * 'volumeType'<~String> - Type of volume
# * 'iops'<~Integer> - Number of IOPS the volume supports
+ # * 'encrypted'<~Boolean> - Indicates whether the volume will be encrypted
#
# {Amazon API Reference}[http://docs.amazonwebservices.com/AWSEC2/latest/APIReference/ApiReference-query-CreateVolume.html]
def create_volume(availability_zone, size, options = {})
@@ -41,11 +42,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::CreateVolume.new
}.merge(options))
end
-
end
class Mock
-
def create_volume(availability_zone, size, options = {})
unless options.is_a?(Hash)
Fog::Logger.deprecation("create_volume with a bare snapshot_id is deprecated, use create_volume(availability_zone, size, 'SnapshotId' => snapshot_id) instead [light_black](#{caller.first})[/]")
@@ -75,8 +74,8 @@ module Fog
raise Fog::Compute::AWS::Error.new("InvalidParameterValue => Volume of #{size}GiB is too small; minimum is 10GiB.")
end
- if (iops_to_size_ratio = iops.to_f / size.to_f) > 10.0
- raise Fog::Compute::AWS::Error.new("InvalidParameterValue => Iops to volume size ratio of #{"%.1f" % iops_to_size_ratio} is too high; maximum is 10.0")
+ if (iops_to_size_ratio = iops.to_f / size.to_f) > 30.0
+ raise Fog::Compute::AWS::Error.new("InvalidParameterValue => Iops to volume size ratio of #{"%.1f" % iops_to_size_ratio} is too high; maximum is 30.0")
end
if iops < 100
@@ -95,6 +94,7 @@ module Fog
'attachmentSet' => [],
'createTime' => Time.now,
'iops' => options['Iops'],
+ 'encrypted' => options['Encrypted'] || false,
'size' => size,
'snapshotId' => options['SnapshotId'],
'status' => 'creating',
@@ -104,7 +104,7 @@ module Fog
self.data[:volumes][volume_id] = data
response.body = {
'requestId' => Fog::AWS::Mock.request_id
- }.merge!(data.reject {|key,value| !['availabilityZone','createTime','size','snapshotId','status','volumeId','volumeType'].include?(key) })
+ }.merge!(data.reject {|key,value| !['availabilityZone','createTime','encrypted','size','snapshotId','status','volumeId','volumeType'].include?(key) })
else
response.status = 400
response.body = {
@@ -118,7 +118,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/create_vpc.rb b/lib/fog/aws/requests/compute/create_vpc.rb
index 124b406..0afd3c8 100644
--- a/lib/fog/aws/requests/compute/create_vpc.rb
+++ b/lib/fog/aws/requests/compute/create_vpc.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/create_vpc'
# Creates a VPC with the CIDR block you specify.
@@ -34,7 +33,6 @@ module Fog
'CidrBlock' => cidrBlock,
:parser => Fog::Parsers::Compute::AWS::CreateVpc.new
}.merge!(options))
-
end
end
@@ -45,11 +43,14 @@ module Fog
response.status = 200
vpc_id = Fog::AWS::Mock.vpc_id
vpc = {
- 'vpcId' => vpc_id,
- 'state' => 'pending',
- 'cidrBlock' => cidrBlock,
- 'dhcpOptionsId' => Fog::AWS::Mock.request_id,
- 'tagSet' => {}
+ 'vpcId' => vpc_id,
+ 'state' => 'pending',
+ 'cidrBlock' => cidrBlock,
+ 'dhcpOptionsId' => Fog::AWS::Mock.request_id,
+ 'tagSet' => {},
+ 'enableDnsSupport' => true,
+ 'enableDnsHostnames' => false,
+ 'mapPublicIpOnLaunch'=> false
}
self.data[:vpcs].push(vpc)
diff --git a/lib/fog/aws/requests/compute/delete_dhcp_options.rb b/lib/fog/aws/requests/compute/delete_dhcp_options.rb
index 2ef0611..d8f076b 100644
--- a/lib/fog/aws/requests/compute/delete_dhcp_options.rb
+++ b/lib/fog/aws/requests/compute/delete_dhcp_options.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
#Deletes a set of DHCP options that you specify. Amazon VPC returns an error if the set of options you specify is currently
#associated with a VPC. You can disassociate the set of options by associating either a new set of options or the default
diff --git a/lib/fog/aws/requests/compute/delete_internet_gateway.rb b/lib/fog/aws/requests/compute/delete_internet_gateway.rb
index 68c3431..ce725dc 100644
--- a/lib/fog/aws/requests/compute/delete_internet_gateway.rb
+++ b/lib/fog/aws/requests/compute/delete_internet_gateway.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
#Deletes an Internet gateway from your AWS account. The gateway must not be attached to a VPC
#
diff --git a/lib/fog/aws/requests/compute/delete_key_pair.rb b/lib/fog/aws/requests/compute/delete_key_pair.rb
index 39c5486..c39cf3b 100644
--- a/lib/fog/aws/requests/compute/delete_key_pair.rb
+++ b/lib/fog/aws/requests/compute/delete_key_pair.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Delete a key pair that you own
@@ -25,11 +24,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
class Mock
-
def delete_key_pair(key_name)
response = Excon::Response.new
self.data[:key_pairs].delete(key_name)
@@ -40,7 +37,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/delete_network_acl_entry.rb b/lib/fog/aws/requests/compute/delete_network_acl_entry.rb
index fe7ebf6..7108bea 100644
--- a/lib/fog/aws/requests/compute/delete_network_acl_entry.rb
+++ b/lib/fog/aws/requests/compute/delete_network_acl_entry.rb
@@ -33,7 +33,7 @@ module Fog
def delete_network_acl_entry(network_acl_id, rule_number, egress)
response = Excon::Response.new
if self.data[:network_acls][network_acl_id]
- if self.data[:network_acls][network_acl_id]['entrySet'].detect { |r| r['ruleNumber'] == rule_number && r['egress'] == egress }
+ if self.data[:network_acls][network_acl_id]['entrySet'].find { |r| r['ruleNumber'] == rule_number && r['egress'] == egress }
self.data[:network_acls][network_acl_id]['entrySet'].delete_if { |r| r['ruleNumber'] == rule_number && r['egress'] == egress }
else
raise Fog::Compute::AWS::Error.new("No rule with that number and egress value")
diff --git a/lib/fog/aws/requests/compute/delete_network_interface.rb b/lib/fog/aws/requests/compute/delete_network_interface.rb
index 40ed028..f80c37e 100644
--- a/lib/fog/aws/requests/compute/delete_network_interface.rb
+++ b/lib/fog/aws/requests/compute/delete_network_interface.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Deletes a network interface.
#
diff --git a/lib/fog/aws/requests/compute/delete_placement_group.rb b/lib/fog/aws/requests/compute/delete_placement_group.rb
index b82f5d4..adc5e84 100644
--- a/lib/fog/aws/requests/compute/delete_placement_group.rb
+++ b/lib/fog/aws/requests/compute/delete_placement_group.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Delete a placement group that you own
@@ -25,7 +24,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/delete_route.rb b/lib/fog/aws/requests/compute/delete_route.rb
index b7ff8d1..babe77a 100755
--- a/lib/fog/aws/requests/compute/delete_route.rb
+++ b/lib/fog/aws/requests/compute/delete_route.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Deletes the specified route from the specified route table.
@@ -26,11 +25,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
class Mock
-
def delete_route(route_table_id, destination_cidr_block)
route_table = self.data[:route_tables].find { |routetable| routetable["routeTableId"].eql? route_table_id }
unless route_table.nil?
diff --git a/lib/fog/aws/requests/compute/delete_route_table.rb b/lib/fog/aws/requests/compute/delete_route_table.rb
index 8f189e0..5ddb13d 100755
--- a/lib/fog/aws/requests/compute/delete_route_table.rb
+++ b/lib/fog/aws/requests/compute/delete_route_table.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Deletes the specified route table.
@@ -24,7 +23,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/compute/delete_security_group.rb b/lib/fog/aws/requests/compute/delete_security_group.rb
index 2315275..7117bcf 100644
--- a/lib/fog/aws/requests/compute/delete_security_group.rb
+++ b/lib/fog/aws/requests/compute/delete_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Delete a security group that you own
@@ -36,7 +35,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/compute/delete_snapshot.rb b/lib/fog/aws/requests/compute/delete_snapshot.rb
index c96521c..c64bdfc 100644
--- a/lib/fog/aws/requests/compute/delete_snapshot.rb
+++ b/lib/fog/aws/requests/compute/delete_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Delete a snapshot of an EBS volume that you own
@@ -25,11 +24,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
class Mock
-
def delete_snapshot(snapshot_id)
response = Excon::Response.new
if snapshot = self.data[:snapshots].delete(snapshot_id)
@@ -43,7 +40,6 @@ module Fog
raise Fog::Compute::AWS::NotFound.new("The snapshot '#{snapshot_id}' does not exist.")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/delete_spot_datafeed_subscription.rb b/lib/fog/aws/requests/compute/delete_spot_datafeed_subscription.rb
index ef94a2f..0a9e94c 100644
--- a/lib/fog/aws/requests/compute/delete_spot_datafeed_subscription.rb
+++ b/lib/fog/aws/requests/compute/delete_spot_datafeed_subscription.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Delete a spot datafeed subscription
@@ -21,7 +20,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/delete_subnet.rb b/lib/fog/aws/requests/compute/delete_subnet.rb
index 01df8a1..34874cd 100644
--- a/lib/fog/aws/requests/compute/delete_subnet.rb
+++ b/lib/fog/aws/requests/compute/delete_subnet.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Deletes a subnet from a VPC. You must terminate all running instances in the subnet before deleting it, otherwise Amazon
# VPC returns an error
diff --git a/lib/fog/aws/requests/compute/delete_tags.rb b/lib/fog/aws/requests/compute/delete_tags.rb
index 83ad067..77111a2 100644
--- a/lib/fog/aws/requests/compute/delete_tags.rb
+++ b/lib/fog/aws/requests/compute/delete_tags.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Remove tags from resources
@@ -37,28 +36,11 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
}.merge!(params))
end
-
end
class Mock
def delete_tags(resources, tags)
- tagged = Array(resources).map do |resource_id|
- type = case resource_id
- when /^ami\-[a-z0-9]{8}$/i
- 'image'
- when /^i\-[a-z0-9]{8}$/i
- 'instance'
- when /^snap\-[a-z0-9]{8}$/i
- 'snapshot'
- when /^vol\-[a-z0-9]{8}$/i
- 'volume'
- end
- if type && ((type == 'image' && visible_images[resource_id]) || self.data[:"#{type}s"][resource_id])
- { 'resourceId' => resource_id, 'resourceType' => type }
- else
- raise(Fog::Service::NotFound.new("The #{type} ID '#{resource_id}' does not exist"))
- end
- end
+ tagged = tagged_resources(resources)
tags.each do |key, value|
self.data[:tags][key][value] = self.data[:tags][key][value] - tagged
@@ -67,7 +49,7 @@ module Fog
tagged.each do |resource|
tags.each do |key, value|
tagset = self.data[:tag_sets][resource['resourceId']]
- tagset.delete(key) if tagset.has_key?(key) && (value.nil? || tagset[key] == value)
+ tagset.delete(key) if tagset.key?(key) && (value.nil? || tagset[key] == value)
end
end
@@ -80,7 +62,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/delete_volume.rb b/lib/fog/aws/requests/compute/delete_volume.rb
index cb44362..e3dd3eb 100644
--- a/lib/fog/aws/requests/compute/delete_volume.rb
+++ b/lib/fog/aws/requests/compute/delete_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Delete an EBS volume
@@ -25,11 +24,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
class Mock
-
def delete_volume(volume_id)
response = Excon::Response.new
if volume = self.data[:volumes][volume_id]
@@ -49,7 +46,6 @@ module Fog
raise Fog::Compute::AWS::NotFound.new("The volume '#{volume_id}' does not exist.")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/delete_vpc.rb b/lib/fog/aws/requests/compute/delete_vpc.rb
index c547205..a2c99b5 100644
--- a/lib/fog/aws/requests/compute/delete_vpc.rb
+++ b/lib/fog/aws/requests/compute/delete_vpc.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Deletes a VPC. You must detach or delete all gateways or other objects
diff --git a/lib/fog/aws/requests/compute/deregister_image.rb b/lib/fog/aws/requests/compute/deregister_image.rb
index bea353d..c21b892 100644
--- a/lib/fog/aws/requests/compute/deregister_image.rb
+++ b/lib/fog/aws/requests/compute/deregister_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/deregister_image'
# deregister an image
@@ -24,11 +23,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::DeregisterImage.new
)
end
-
end
class Mock
-
def deregister_image(image_id)
response = Excon::Response.new
if image_id
@@ -46,7 +43,6 @@ module Fog
raise Fog::Compute::AWS::Error.new(message)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_account_attributes.rb b/lib/fog/aws/requests/compute/describe_account_attributes.rb
index bc296bf..222509a 100644
--- a/lib/fog/aws/requests/compute/describe_account_attributes.rb
+++ b/lib/fog/aws/requests/compute/describe_account_attributes.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_account_attributes'
# Describe account attributes
diff --git a/lib/fog/aws/requests/compute/describe_addresses.rb b/lib/fog/aws/requests/compute/describe_addresses.rb
index 6cce437..fd52642 100644
--- a/lib/fog/aws/requests/compute/describe_addresses.rb
+++ b/lib/fog/aws/requests/compute/describe_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_addresses'
# Describe all or specified IP addresses.
@@ -31,11 +30,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::DescribeAddresses.new
}.merge!(params))
end
-
end
class Mock
-
def describe_addresses(filters = {})
unless filters.is_a?(Hash)
Fog::Logger.deprecation("describe_addresses with #{filters.class} param is deprecated, use describe_addresses('public-ip' => []) instead [light_black](#{caller.first})[/]")
@@ -59,7 +56,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_availability_zones.rb b/lib/fog/aws/requests/compute/describe_availability_zones.rb
index 45981bc..de27eec 100644
--- a/lib/fog/aws/requests/compute/describe_availability_zones.rb
+++ b/lib/fog/aws/requests/compute/describe_availability_zones.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_availability_zones'
# Describe all or specified availability zones
@@ -32,11 +31,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::DescribeAvailabilityZones.new
}.merge!(params))
end
-
end
class Mock
-
def describe_availability_zones(filters = {})
unless filters.is_a?(Hash)
Fog::Logger.deprecation("describe_availability_zones with #{filters.class} param is deprecated, use describe_availability_zones('zone-name' => []) instead [light_black](#{caller.first})[/]")
@@ -91,7 +88,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_dhcp_options.rb b/lib/fog/aws/requests/compute/describe_dhcp_options.rb
index 3e1a744..9ae9b10 100644
--- a/lib/fog/aws/requests/compute/describe_dhcp_options.rb
+++ b/lib/fog/aws/requests/compute/describe_dhcp_options.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_dhcp_options'
# Describe all or specified dhcp_options
diff --git a/lib/fog/aws/requests/compute/describe_images.rb b/lib/fog/aws/requests/compute/describe_images.rb
index 587f283..2f786c6 100644
--- a/lib/fog/aws/requests/compute/describe_images.rb
+++ b/lib/fog/aws/requests/compute/describe_images.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_images'
# Describe all or specified images.
@@ -53,11 +52,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::DescribeImages.new
}.merge!(params))
end
-
end
class Mock
-
def describe_images(filters = {})
unless filters.is_a?(Hash)
Fog::Logger.deprecation("describe_images with #{filters.class} param is deprecated, use describe_images('image-id' => []) instead [light_black](#{caller.first})[/]")
@@ -123,7 +120,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_instance_status.rb b/lib/fog/aws/requests/compute/describe_instance_status.rb
index 6ccca84..ba07c56 100644
--- a/lib/fog/aws/requests/compute/describe_instance_status.rb
+++ b/lib/fog/aws/requests/compute/describe_instance_status.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_instance_status'
# http://docs.amazonwebservices.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeInstanceStatus.html
@@ -40,7 +39,6 @@ module Fog
}
response
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_instances.rb b/lib/fog/aws/requests/compute/describe_instances.rb
index e2cce01..c7e0fac 100644
--- a/lib/fog/aws/requests/compute/describe_instances.rb
+++ b/lib/fog/aws/requests/compute/describe_instances.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_instances'
# Describe all or specified instances
@@ -75,11 +74,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::DescribeInstances.new
}.merge!(params))
end
-
end
class Mock
-
def describe_instances(filters = {})
unless filters.is_a?(Hash)
Fog::Logger.deprecation("describe_instances with #{filters.class} param is deprecated, use describe_instances('instance-id' => []) instead [light_black](#{caller.first})[/]")
@@ -142,13 +139,16 @@ module Fog
for filter_key, filter_value in filters
if block_device_mapping_key = filter_key.split('block-device-mapping.')[1]
aliased_key = block_device_mapping_aliases[block_device_mapping_key]
- instance_set = instance_set.reject{|instance| !instance['blockDeviceMapping'].detect {|block_device_mapping| [*filter_value].include?(block_device_mapping[aliased_key])}}
+ instance_set = instance_set.reject{|instance| !instance['blockDeviceMapping'].find {|block_device_mapping| [*filter_value].include?(block_device_mapping[aliased_key])}}
elsif instance_state_key = filter_key.split('instance-state-')[1]
aliased_key = instance_state_aliases[instance_state_key]
instance_set = instance_set.reject{|instance| ![*filter_value].include?(instance['instanceState'][aliased_key])}
elsif state_reason_key = filter_key.split('state-reason-')[1]
aliased_key = state_reason_aliases[state_reason_key]
instance_set = instance_set.reject{|instance| ![*filter_value].include?(instance['stateReason'][aliased_key])}
+ elsif filter_key == "availability-zone"
+ aliased_key = aliases[filter_key]
+ instance_set = instance_set.reject{|instance| ![*filter_value].include?(instance['placement'][aliased_key])}
elsif filter_key == "group-name"
instance_set = instance_set.reject {|instance| !instance['groupSet'].include?(filter_value)}
elsif filter_key == "group-id"
@@ -161,7 +161,7 @@ module Fog
end
end
- brand_new_instances = instance_set.find_all do |instance|
+ brand_new_instances = instance_set.select do |instance|
instance['instanceState']['name'] == 'pending' &&
Time.now - instance['launchTime'] < Fog::Mock.delay * 2
end
@@ -184,8 +184,6 @@ module Fog
instance['ipAddress'] = Fog::AWS::Mock.ip_address
instance['originalIpAddress'] = instance['ipAddress']
instance['dnsName'] = Fog::AWS::Mock.dns_name_for(instance['ipAddress'])
- instance['privateIpAddress'] = Fog::AWS::Mock.private_ip_address
- instance['privateDnsName'] = Fog::AWS::Mock.private_dns_name_for(instance['privateIpAddress'])
instance['instanceState'] = { 'code' => 16, 'name' => 'running' }
end
when 'rebooting'
@@ -209,18 +207,30 @@ module Fog
if self.data[:instances][instance['instanceId']]
- instance['networkInterfaces'] = self.data[:network_interfaces].select{|ni,ni_conf|
- ni_conf['attachment']['instanceId'] == instance['instanceId']
- }.map{|ni,ni_conf|
- {
- 'ownerId' => ni_conf['ownerId'],
- 'subnetId' => ni_conf['subnetId'],
- 'vpcId' => ni_conf['vpcId'],
- 'networkInterfaceId' => ni_conf['networkInterfaceId'],
- 'groupSet' => ni_conf['groupSet'],
- 'attachmentId' => ni_conf['attachment']['attachmentId']
- }
+ nics = self.data[:network_interfaces].select{|ni,ni_conf|
+ ni_conf['attachment']['instanceId'] == instance['instanceId']
+ }
+ instance['networkInterfaces'] = nics.map{|ni,ni_conf|
+ {
+ 'ownerId' => ni_conf['ownerId'],
+ 'subnetId' => ni_conf['subnetId'],
+ 'vpcId' => ni_conf['vpcId'],
+ 'networkInterfaceId' => ni_conf['networkInterfaceId'],
+ 'groupSet' => ni_conf['groupSet'],
+ 'attachmentId' => ni_conf['attachment']['attachmentId']
}
+ }
+ if nics.count > 0
+
+ instance['privateIpAddress'] = nics.sort_by {|ni, ni_conf|
+ ni_conf['attachment']['deviceIndex']
+ }.map{ |ni, ni_conf| ni_conf['privateIpAddress'] }.first
+
+ instance['privateDnsName'] = Fog::AWS::Mock.private_dns_name_for(instance['privateIpAddress'])
+ else
+ instance['privateIpAddress'] = ''
+ instance['privateDnsName'] = ''
+ end
reservation_set[instance['reservationId']] ||= {
'groupSet' => instance['groupSet'],
@@ -229,7 +239,7 @@ module Fog
'ownerId' => instance['ownerId'],
'reservationId' => instance['reservationId']
}
- reservation_set[instance['reservationId']]['instancesSet'] << instance.reject{|key,value| !['amiLaunchIndex', 'architecture', 'blockDeviceMapping', 'clientToken', 'dnsName', 'ebsOptimized', 'hypervisor', 'iamInstanceProfile', 'imageId', 'instanceId', 'instanceState', 'instanceType', 'ipAddress', 'kernelId', 'keyName', 'launchTime', 'monitoring', 'networkInterfaces', 'ownerId', 'placement', 'platform', 'privateDnsName', 'privateIpAddress', 'productCodes', 'ramdiskId', 'reaso [...]
+ reservation_set[instance['reservationId']]['instancesSet'] << instance.reject{|key,value| !['amiLaunchIndex', 'architecture', 'blockDeviceMapping', 'clientToken', 'dnsName', 'ebsOptimized', 'hypervisor', 'iamInstanceProfile', 'imageId', 'instanceId', 'instanceState', 'instanceType', 'ipAddress', 'kernelId', 'keyName', 'launchTime', 'monitoring', 'networkInterfaces', 'ownerId', 'placement', 'platform', 'privateDnsName', 'privateIpAddress', 'productCodes', 'ramdiskId', 'reaso [...]
end
end
@@ -239,7 +249,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_internet_gateways.rb b/lib/fog/aws/requests/compute/describe_internet_gateways.rb
index f73f20e..d01fa3e 100644
--- a/lib/fog/aws/requests/compute/describe_internet_gateways.rb
+++ b/lib/fog/aws/requests/compute/describe_internet_gateways.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_internet_gateways'
# Describe all or specified internet_gateways
diff --git a/lib/fog/aws/requests/compute/describe_key_pairs.rb b/lib/fog/aws/requests/compute/describe_key_pairs.rb
index 4744d64..cd98d2d 100644
--- a/lib/fog/aws/requests/compute/describe_key_pairs.rb
+++ b/lib/fog/aws/requests/compute/describe_key_pairs.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_key_pairs'
# Describe all or specified key pairs
@@ -31,11 +30,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::DescribeKeyPairs.new
}.merge!(params))
end
-
end
class Mock
-
def describe_key_pairs(filters = {})
unless filters.is_a?(Hash)
Fog::Logger.deprecation("describe_key_pairs with #{filters.class} param is deprecated, use describe_key_pairs('key-name' => []) instead [light_black](#{caller.first})[/]")
@@ -61,7 +58,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_network_acls.rb b/lib/fog/aws/requests/compute/describe_network_acls.rb
index 0f88751..a788ec7 100644
--- a/lib/fog/aws/requests/compute/describe_network_acls.rb
+++ b/lib/fog/aws/requests/compute/describe_network_acls.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_network_acls'
# Describe all or specified network ACLs
@@ -54,6 +53,7 @@ module Fog
response = Excon::Response.new
network_acls = self.data[:network_acls].values
+ network_acls = apply_tag_filters(network_acls, filters, 'networkAclId')
aliases = {
'vpc-id' => 'vpcId',
@@ -77,20 +77,25 @@ module Fog
filter_key = filter_key.to_s
if association_key = filter_key.split('association.')[1]
aliased_key = association_aliases[association_key]
- network_acls = network_acls.reject{|nacl| !nacl['associationSet'].detect {|association| [*filter_value].include?(association[aliased_key])}}
+ network_acls = network_acls.reject{|nacl| !nacl['associationSet'].find {|association| [*filter_value].include?(association[aliased_key])}}
elsif entry_key = filter_key.split('entry.icmp.')[1]
- network_acls = network_acls.reject{|nacl| !nacl['entrySet'].detect {|association| [*filter_value].include?(association['icmpTypeCode'][entry_key])}}
+ network_acls = network_acls.reject{|nacl| !nacl['entrySet'].find {|association| [*filter_value].include?(association['icmpTypeCode'][entry_key])}}
elsif entry_key = filter_key.split('entry.port-range.')[1]
- network_acls = network_acls.reject{|nacl| !nacl['entrySet'].detect {|association| [*filter_value].include?(association['portRange'][entry_key])}}
+ network_acls = network_acls.reject{|nacl| !nacl['entrySet'].find {|association| [*filter_value].include?(association['portRange'][entry_key])}}
elsif entry_key = filter_key.split('entry.')[1]
aliased_key = entry_aliases[entry_key]
- network_acls = network_acls.reject{|nacl| !nacl['entrySet'].detect {|association| [*filter_value].include?(association[aliased_key])}}
+ network_acls = network_acls.reject{|nacl| !nacl['entrySet'].find {|association| [*filter_value].include?(association[aliased_key])}}
else
aliased_key = aliases[filter_key]
network_acls = network_acls.reject{|nacl| ![*filter_value].include?(nacl[aliased_key])}
end
end
+ network_acls.each do |acl|
+ tags = self.data[:tag_sets][acl['networkAclId']]
+ acl.merge!('tagSet' => tags) if tags
+ end
+
response.status = 200
response.body = {
'requestId' => Fog::AWS::Mock.request_id,
diff --git a/lib/fog/aws/requests/compute/describe_network_interface_attribute.rb b/lib/fog/aws/requests/compute/describe_network_interface_attribute.rb
index 1344512..708b740 100644
--- a/lib/fog/aws/requests/compute/describe_network_interface_attribute.rb
+++ b/lib/fog/aws/requests/compute/describe_network_interface_attribute.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_network_interface_attribute'
# Describes a network interface attribute value
#
diff --git a/lib/fog/aws/requests/compute/describe_network_interfaces.rb b/lib/fog/aws/requests/compute/describe_network_interfaces.rb
index 193f7e9..96a2644 100644
--- a/lib/fog/aws/requests/compute/describe_network_interfaces.rb
+++ b/lib/fog/aws/requests/compute/describe_network_interfaces.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_network_interfaces'
# Describe all or specified network interfaces
@@ -63,9 +62,7 @@ module Fog
end
end
-
class Mock
-
def describe_network_interfaces(filters = {})
response = Excon::Response.new
@@ -82,7 +79,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_placement_groups.rb b/lib/fog/aws/requests/compute/describe_placement_groups.rb
index dce5d28..a3f6541 100644
--- a/lib/fog/aws/requests/compute/describe_placement_groups.rb
+++ b/lib/fog/aws/requests/compute/describe_placement_groups.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_placement_groups'
# Describe all or specified placement groups
@@ -28,7 +27,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::DescribePlacementGroups.new
}.merge!(params))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_regions.rb b/lib/fog/aws/requests/compute/describe_regions.rb
index 56289b4..c0b34b5 100644
--- a/lib/fog/aws/requests/compute/describe_regions.rb
+++ b/lib/fog/aws/requests/compute/describe_regions.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_regions'
# Describe all or specified regions
@@ -31,11 +30,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::DescribeRegions.new
}.merge!(params))
end
-
end
class Mock
-
def describe_regions(filters = {})
unless filters.is_a?(Hash)
Fog::Logger.deprecation("describe_regions with #{filters.class} param is deprecated, use describe_regions('region-name' => []) instead [light_black](#{caller.first})[/]")
@@ -61,7 +58,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_reserved_instances.rb b/lib/fog/aws/requests/compute/describe_reserved_instances.rb
index b662029..1c31fbd 100644
--- a/lib/fog/aws/requests/compute/describe_reserved_instances.rb
+++ b/lib/fog/aws/requests/compute/describe_reserved_instances.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_reserved_instances'
# Describe all or specified reserved instances
@@ -40,7 +39,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::DescribeReservedInstances.new
}.merge!(params))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/compute/describe_reserved_instances_offerings.rb b/lib/fog/aws/requests/compute/describe_reserved_instances_offerings.rb
index 7a52f6a..72b0b65 100644
--- a/lib/fog/aws/requests/compute/describe_reserved_instances_offerings.rb
+++ b/lib/fog/aws/requests/compute/describe_reserved_instances_offerings.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_reserved_instances_offerings'
# Describe all or specified reserved instances offerings
diff --git a/lib/fog/aws/requests/compute/describe_route_tables.rb b/lib/fog/aws/requests/compute/describe_route_tables.rb
index 3db2ca4..19ce54d 100755
--- a/lib/fog/aws/requests/compute/describe_route_tables.rb
+++ b/lib/fog/aws/requests/compute/describe_route_tables.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_route_tables'
# Describe one or more of your route tables.
diff --git a/lib/fog/aws/requests/compute/describe_security_groups.rb b/lib/fog/aws/requests/compute/describe_security_groups.rb
index d13570a..6d4beb6 100644
--- a/lib/fog/aws/requests/compute/describe_security_groups.rb
+++ b/lib/fog/aws/requests/compute/describe_security_groups.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_security_groups'
# Describe all or specified security groups
@@ -42,11 +41,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::DescribeSecurityGroups.new
}.merge!(params))
end
-
end
class Mock
-
def describe_security_groups(filters = {})
unless filters.is_a?(Hash)
Fog::Logger.deprecation("describe_security_groups with #{filters.class} param is deprecated, use describe_security_groups('group-name' => []) instead [light_black](#{caller.first})[/]")
@@ -73,14 +70,14 @@ module Fog
for filter_key, filter_value in filters
if permission_key = filter_key.split('ip-permission.')[1]
if permission_key == 'group-name'
- security_group_info = security_group_info.reject{|security_group| !security_group_groups.call(security_group).detect {|group| [*filter_value].include?(group['groupName'])}}
+ security_group_info = security_group_info.reject{|security_group| !security_group_groups.call(security_group).find {|group| [*filter_value].include?(group['groupName'])}}
elsif permission_key == 'group-id'
- security_group_info = security_group_info.reject{|security_group| !security_group_groups.call(security_group).detect {|group| [*filter_value].include?(group['groupId'])}}
+ security_group_info = security_group_info.reject{|security_group| !security_group_groups.call(security_group).find {|group| [*filter_value].include?(group['groupId'])}}
elsif permission_key == 'user-id'
- security_group_info = security_group_info.reject{|security_group| !security_group_groups.call(security_group).detect {|group| [*filter_value].include?(group['userId'])}}
+ security_group_info = security_group_info.reject{|security_group| !security_group_groups.call(security_group).find {|group| [*filter_value].include?(group['userId'])}}
else
aliased_key = permission_aliases[filter_key]
- security_group_info = security_group_info.reject{|security_group| !security_group['ipPermissions'].detect {|permission| [*filter_value].include?(permission[aliased_key])}}
+ security_group_info = security_group_info.reject{|security_group| !security_group['ipPermissions'].find {|permission| [*filter_value].include?(permission[aliased_key])}}
end
else
aliased_key = aliases[filter_key]
@@ -95,7 +92,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_snapshots.rb b/lib/fog/aws/requests/compute/describe_snapshots.rb
index 8f4c62d..dca6cda 100644
--- a/lib/fog/aws/requests/compute/describe_snapshots.rb
+++ b/lib/fog/aws/requests/compute/describe_snapshots.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_snapshots'
# Describe all or specified snapshots
@@ -18,6 +17,7 @@ module Fog
# * body<~Hash>:
# * 'requestId'<~String> - Id of request
# * 'snapshotSet'<~Array>:
+ # * 'encrypted'<~Boolean>: The encryption status of the snapshot.
# * 'progress'<~String>: The percentage progress of the snapshot
# * 'snapshotId'<~String>: Id of the snapshot
# * 'startTime'<~Time>: Timestamp of when snapshot was initiated
@@ -35,7 +35,7 @@ module Fog
end
for key in ['ExecutableBy', 'ImageId', 'Owner', 'RestorableBy']
- if filters.has_key?(key)
+ if filters.key?(key)
options[key] = filters.delete(key)
end
end
@@ -47,11 +47,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::DescribeSnapshots.new
}.merge!(params))
end
-
end
class Mock
-
def describe_snapshots(filters = {}, options = {})
unless filters.is_a?(Hash)
Fog::Logger.deprecation("describe_snapshots with #{filters.class} param is deprecated, use describe_snapshots('snapshot-id' => []) instead [light_black](#{caller.first})[/]")
@@ -76,6 +74,7 @@ module Fog
aliases = {
'description' => 'description',
+ 'encrypted' => 'encrypted',
'owner-id' => 'ownerId',
'progress' => 'progress',
'snapshot-id' => 'snapshotId',
@@ -115,7 +114,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_spot_datafeed_subscription.rb b/lib/fog/aws/requests/compute/describe_spot_datafeed_subscription.rb
index 085ab42..25e0ca9 100644
--- a/lib/fog/aws/requests/compute/describe_spot_datafeed_subscription.rb
+++ b/lib/fog/aws/requests/compute/describe_spot_datafeed_subscription.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/spot_datafeed_subscription'
# Describe spot datafeed subscription
@@ -28,7 +27,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::SpotDatafeedSubscription.new
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_spot_instance_requests.rb b/lib/fog/aws/requests/compute/describe_spot_instance_requests.rb
index 38c9867..a65b514 100644
--- a/lib/fog/aws/requests/compute/describe_spot_instance_requests.rb
+++ b/lib/fog/aws/requests/compute/describe_spot_instance_requests.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/spot_instance_requests'
# Describe all or specified spot instance requests
@@ -41,7 +40,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::SpotInstanceRequests.new
}.merge!(params))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_spot_price_history.rb b/lib/fog/aws/requests/compute/describe_spot_price_history.rb
index 8d6e65f..ddff34f 100644
--- a/lib/fog/aws/requests/compute/describe_spot_price_history.rb
+++ b/lib/fog/aws/requests/compute/describe_spot_price_history.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_spot_price_history'
# Describe all or specified spot price history
@@ -30,7 +29,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::DescribeSpotPriceHistory.new
}.merge!(params))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_subnets.rb b/lib/fog/aws/requests/compute/describe_subnets.rb
index 0af202c..f48967f 100644
--- a/lib/fog/aws/requests/compute/describe_subnets.rb
+++ b/lib/fog/aws/requests/compute/describe_subnets.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_subnets'
# Describe all or specified subnets
diff --git a/lib/fog/aws/requests/compute/describe_tags.rb b/lib/fog/aws/requests/compute/describe_tags.rb
index 1c0a2b6..273db7c 100644
--- a/lib/fog/aws/requests/compute/describe_tags.rb
+++ b/lib/fog/aws/requests/compute/describe_tags.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_tags'
# Describe all or specified tags
@@ -32,7 +31,6 @@ module Fog
end
class Mock
-
def describe_tags(filters = {})
response = Excon::Response.new
@@ -93,7 +91,7 @@ module Fog
def deep_clone(obj)
case obj
when Hash
- obj.inject({}) { |h, pair| h[pair.first] = deep_clone(pair.last); h }
+ obj.reduce({}) { |h, pair| h[pair.first] = deep_clone(pair.last); h }
when Array
obj.map { |o| deep_clone(o) }
else
@@ -101,7 +99,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_volume_status.rb b/lib/fog/aws/requests/compute/describe_volume_status.rb
index 4fa4fe6..7a8d57d 100644
--- a/lib/fog/aws/requests/compute/describe_volume_status.rb
+++ b/lib/fog/aws/requests/compute/describe_volume_status.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_volume_status'
# http://docs.amazonwebservices.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeVolumeStatus.html
@@ -37,7 +36,6 @@ module Fog
}
response
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_volumes.rb b/lib/fog/aws/requests/compute/describe_volumes.rb
index 12c7452..ae7b4ef 100644
--- a/lib/fog/aws/requests/compute/describe_volumes.rb
+++ b/lib/fog/aws/requests/compute/describe_volumes.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_volumes'
# Describe all or specified volumes.
@@ -16,6 +15,7 @@ module Fog
# * 'volumeSet'<~Array>:
# * 'availabilityZone'<~String> - Availability zone for volume
# * 'createTime'<~Time> - Timestamp for creation
+ # * 'encrypted'<~Boolean> - Indicates whether the volume will be encrypted
# * 'iops'<~Integer> - Number of IOPS volume supports
# * 'size'<~Integer> - Size in GiBs for volume
# * 'snapshotId'<~String> - Snapshot volume was created from, if any
@@ -43,11 +43,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::DescribeVolumes.new
}.merge!(params))
end
-
end
class Mock
-
def describe_volumes(filters = {})
unless filters.is_a?(Hash)
Fog::Logger.deprecation("describe_volumes with #{filters.class} param is deprecated, use describe_volumes('volume-id' => []) instead [light_black](#{caller.first})[/]")
@@ -62,6 +60,7 @@ module Fog
aliases = {
'availability-zone' => 'availabilityZone',
'create-time' => 'createTime',
+ 'encrypted' => 'encrypted',
'size' => 'size',
'snapshot-id' => 'snapshotId',
'status' => 'status',
@@ -78,7 +77,7 @@ module Fog
for filter_key, filter_value in filters
if attachment_key = filter_key.split('attachment.')[1]
aliased_key = attachment_aliases[filter_key]
- volume_set = volume_set.reject{|volume| !volume['attachmentSet'].detect {|attachment| [*filter_value].include?(attachment[aliased_key])}}
+ volume_set = volume_set.reject{|volume| !volume['attachmentSet'].find {|attachment| [*filter_value].include?(attachment[aliased_key])}}
else
aliased_key = aliases[filter_key]
volume_set = volume_set.reject{|volume| ![*filter_value].include?(volume[aliased_key])}
@@ -113,7 +112,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/describe_vpc_attribute.rb b/lib/fog/aws/requests/compute/describe_vpc_attribute.rb
new file mode 100644
index 0000000..011f248
--- /dev/null
+++ b/lib/fog/aws/requests/compute/describe_vpc_attribute.rb
@@ -0,0 +1,55 @@
+module Fog
+ module Compute
+ class AWS
+ class Real
+ require 'fog/aws/parsers/compute/describe_vpc_attribute'
+ # Describes a vpc attribute value
+ #
+ # ==== Parameters
+ # * vpc_id<~String> - The ID of the VPC you want to describe an attribute of
+ # * attribute<~String> - The attribute to describe, must be one of 'enableDnsSupport' or 'enableDnsHostnames'
+ #
+ # === Returns
+ # * response<~Excon::Response>:
+ # * body<~Hash>:
+ # * 'requestId'<~String> - Id of request
+ # * 'vpcId'<~String> - The ID of the VPC
+ # * 'enableDnsSupport'<~Boolean> - Flag indicating whether DNS resolution is enabled for the VPC (if requested)
+ # * 'enableDnsHostnames'<~Boolean> - Flag indicating whether the instances launched in the VPC get DNS hostnames (if requested)
+ #
+ # (Amazon API Reference)[http://docs.amazonwebservices.com/AWSEC2/2014-02-01/APIReference/ApiReference-query-DescribeVpcAttribute.html]
+ def describe_vpc_attribute(vpc_id, attribute)
+ request(
+ 'Action' => 'DescribeVpcAttribute',
+ 'VpcId' => vpc_id,
+ 'Attribute' => attribute,
+ :parser => Fog::Parsers::Compute::AWS::DescribeVpcAttribute.new
+ )
+ end
+ end
+
+ class Mock
+ def describe_vpc_attribute(vpc_id, attribute)
+ response = Excon::Response.new
+ if vpc = self.data[:vpcs].find{ |v| v['vpcId'] == vpc_id }
+ response.status = 200
+ response.body = {
+ 'requestId' => Fog::AWS::Mock.request_id,
+ 'vpcId' => vpc_id
+ }
+
+ case attribute
+ when 'enableDnsSupport', 'enableDnsHostnames'
+ response.body[attribute] = vpc[attribute]
+ else
+ raise Fog::Compute::AWS::Error.new("Illegal attribute '#{attribute}' specified")
+ end
+ response
+ else
+ raise Fog::Compute::AWS::NotFound.new("The VPC '#{vpc_id}' does not exist")
+ end
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/requests/compute/describe_vpcs.rb b/lib/fog/aws/requests/compute/describe_vpcs.rb
index 9511ad9..ef85a54 100644
--- a/lib/fog/aws/requests/compute/describe_vpcs.rb
+++ b/lib/fog/aws/requests/compute/describe_vpcs.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/describe_vpcs'
# Describe all or specified vpcs
@@ -42,6 +41,7 @@ module Fog
class Mock
def describe_vpcs(filters = {})
vpcs = self.data[:vpcs]
+ vpcs = apply_tag_filters(vpcs, filters, 'vpcId')
# Transition from pending to available
vpcs.each do |vpc|
@@ -55,6 +55,11 @@ module Fog
vpcs = vpcs.reject {|vpc| vpc['vpcId'] != filters['vpc-id']}
end
+ vpcs.each do |vpc|
+ tags = self.data[:tag_sets][vpc['vpcId']]
+ vpc.merge!('tagSet' => tags) if tags
+ end
+
Excon::Response.new(
:status => 200,
:body => {
diff --git a/lib/fog/aws/requests/compute/detach_internet_gateway.rb b/lib/fog/aws/requests/compute/detach_internet_gateway.rb
index 8b184f2..9ad8401 100644
--- a/lib/fog/aws/requests/compute/detach_internet_gateway.rb
+++ b/lib/fog/aws/requests/compute/detach_internet_gateway.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Detaches an Internet gateway to a VPC, enabling connectivity between the Internet and the VPC
#
@@ -26,11 +25,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
class Mock
-
def detach_internet_gateway(internet_gateway_id, vpc_id)
response = Excon::Response.new
if internet_gateway_id && vpc_id
@@ -49,7 +46,6 @@ module Fog
raise Fog::Compute::AWS::Error.new(message)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/detach_network_interface.rb b/lib/fog/aws/requests/compute/detach_network_interface.rb
index c1004fa..05d8e77 100644
--- a/lib/fog/aws/requests/compute/detach_network_interface.rb
+++ b/lib/fog/aws/requests/compute/detach_network_interface.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Detaches a network interface.
#
diff --git a/lib/fog/aws/requests/compute/detach_volume.rb b/lib/fog/aws/requests/compute/detach_volume.rb
index d38c6f5..6a26178 100644
--- a/lib/fog/aws/requests/compute/detach_volume.rb
+++ b/lib/fog/aws/requests/compute/detach_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/detach_volume'
# Detach an Amazon EBS volume from a running instance
@@ -33,11 +32,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::DetachVolume.new
}.merge!(options))
end
-
end
class Mock
-
def detach_volume(volume_id, options = {})
response = Excon::Response.new
response.status = 200
@@ -58,7 +55,6 @@ module Fog
raise Fog::Compute::AWS::NotFound.new("The volume '#{volume_id}' does not exist.")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/disassociate_address.rb b/lib/fog/aws/requests/compute/disassociate_address.rb
index 45402cd..efbda12 100644
--- a/lib/fog/aws/requests/compute/disassociate_address.rb
+++ b/lib/fog/aws/requests/compute/disassociate_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Disassociate an elastic IP address from its instance (if any)
@@ -27,11 +26,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
class Mock
-
def disassociate_address(public_ip)
response = Excon::Response.new
response.status = 200
@@ -52,7 +49,6 @@ module Fog
raise Fog::Compute::AWS::Error.new("AuthFailure => The address '#{public_ip}' does not belong to you.")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/disassociate_route_table.rb b/lib/fog/aws/requests/compute/disassociate_route_table.rb
index 67e6cd7..47f67c4 100755
--- a/lib/fog/aws/requests/compute/disassociate_route_table.rb
+++ b/lib/fog/aws/requests/compute/disassociate_route_table.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Disassociates a subnet from a route table.
@@ -24,11 +23,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
class Mock
-
def disassociate_route_table(association_id)
assoc_array = nil
routetable = self.data[:route_tables].find { |routetable|
diff --git a/lib/fog/aws/requests/compute/get_console_output.rb b/lib/fog/aws/requests/compute/get_console_output.rb
index fcb2161..0c63960 100644
--- a/lib/fog/aws/requests/compute/get_console_output.rb
+++ b/lib/fog/aws/requests/compute/get_console_output.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/get_console_output'
# Retrieve console output for specified instance
@@ -27,11 +26,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::GetConsoleOutput.new
)
end
-
end
class Mock
-
def get_console_output(instance_id)
response = Excon::Response.new
if instance = self.data[:instances][instance_id]
@@ -47,7 +44,6 @@ module Fog
raise Fog::Compute::AWS::NotFound.new("The instance ID '#{instance_id}' does not exist")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/get_password_data.rb b/lib/fog/aws/requests/compute/get_password_data.rb
index 9aab302..8db8a77 100644
--- a/lib/fog/aws/requests/compute/get_password_data.rb
+++ b/lib/fog/aws/requests/compute/get_password_data.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/get_password_data'
# Retrieves the encrypted administrator password for an instance running Windows.
@@ -29,11 +28,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::GetPasswordData.new
)
end
-
end
class Mock
-
def get_password_data(instance_id)
response = Excon::Response.new
if instance = self.data[:instances][instance_id]
@@ -49,7 +46,6 @@ module Fog
raise Fog::Compute::AWS::NotFound.new("The instance ID '#{instance_id}' does not exist")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/import_key_pair.rb b/lib/fog/aws/requests/compute/import_key_pair.rb
index 89c650e..ac8dbe1 100644
--- a/lib/fog/aws/requests/compute/import_key_pair.rb
+++ b/lib/fog/aws/requests/compute/import_key_pair.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/import_key_pair'
# Import an existing public key to create a new key pair
@@ -27,11 +26,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::ImportKeyPair.new
)
end
-
end
class Mock
-
def import_key_pair(key_name, public_key_material)
response = Excon::Response.new
unless self.data[:key_pairs][key_name]
@@ -49,7 +46,6 @@ module Fog
raise Fog::Compute::AWS::Error.new("InvalidKeyPair.Duplicate => The keypair '#{key_name}' already exists.")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/modify_image_attribute.rb b/lib/fog/aws/requests/compute/modify_image_attribute.rb
index 8d8cf09..1eca49b 100644
--- a/lib/fog/aws/requests/compute/modify_image_attribute.rb
+++ b/lib/fog/aws/requests/compute/modify_image_attribute.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Modify image attributes
@@ -35,11 +34,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
}.merge!(params))
end
-
end
class Mock
-
def modify_image_attribute(image_id, attributes)
raise ArgumentError.new("image_id is required") unless image_id
@@ -67,7 +64,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/modify_instance_attribute.rb b/lib/fog/aws/requests/compute/modify_instance_attribute.rb
index 3972b3a..de18e0b 100644
--- a/lib/fog/aws/requests/compute/modify_instance_attribute.rb
+++ b/lib/fog/aws/requests/compute/modify_instance_attribute.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Modify instance attributes
@@ -37,7 +36,6 @@ module Fog
Fog::Logger.deprecation("modify_instance_attributes method is deprecated, use 'modify_instance_attribute' instead")
modify_instance_attribute(instance_id, attributes)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/modify_network_interface_attribute.rb b/lib/fog/aws/requests/compute/modify_network_interface_attribute.rb
index 12f6370..4850ad7 100644
--- a/lib/fog/aws/requests/compute/modify_network_interface_attribute.rb
+++ b/lib/fog/aws/requests/compute/modify_network_interface_attribute.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Modifies a network interface attribute value
diff --git a/lib/fog/aws/requests/compute/modify_snapshot_attribute.rb b/lib/fog/aws/requests/compute/modify_snapshot_attribute.rb
index 698cd92..da6923c 100644
--- a/lib/fog/aws/requests/compute/modify_snapshot_attribute.rb
+++ b/lib/fog/aws/requests/compute/modify_snapshot_attribute.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Modify snapshot attributes
@@ -30,7 +29,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
}.merge!(params))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/modify_subnet_attribute.rb b/lib/fog/aws/requests/compute/modify_subnet_attribute.rb
new file mode 100644
index 0000000..9499f73
--- /dev/null
+++ b/lib/fog/aws/requests/compute/modify_subnet_attribute.rb
@@ -0,0 +1,58 @@
+module Fog
+ module Compute
+ class AWS
+ class Real
+ require 'fog/aws/parsers/compute/modify_subnet_attribute'
+
+ # Modifies a subnet attribute.
+ #
+ # ==== Parameters
+ # * SubnetId<~String> - The id of the subnet to modify
+ # * options<~Hash>:
+ # * MapPublicIpOnLaunch<~Boolean> - Modifies the public IP addressing behavior for the subnet.
+ # Specify true to indicate that instances launched into the specified subnet should be assigned a public IP address.
+ # If set to true, the instance receives a public IP address only if the instance is launched with a single,
+ # new network interface with the device index of 0.
+ #
+ # === Returns
+ # * response<~Excon::Response>:
+ # * body<~Hash>:
+ # * 'requestId'<~String> - Id of request
+ # * 'return'<~Boolean> - Returns true if the request succeeds. Otherwise, returns an error.
+ # http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-ModifySubnetAttribute.html
+ def modify_subnet_attribute(subnet_id, options = {})
+ params = {}
+ params['MapPublicIpOnLaunch.Value'] = options.delete 'MapPublicIpOnLaunch' if options['MapPublicIpOnLaunch']
+ request({
+ 'Action' => 'ModifySubnetAttribute',
+ 'SubnetId' => subnet_id,
+ :parser => Fog::Parsers::Compute::AWS::ModifySubnetAttribute.new
+ }.merge(params))
+ end
+ end
+
+ class Mock
+ def modify_subnet_attribute(subnet_id, options={})
+ Excon::Response.new.tap do |response|
+ subnet = self.data[:subnets].detect { |v| v['subnetId'] == subnet_id }
+ if subnet
+ subnet['mapPublicIpOnLaunch'] = options['MapPublicIpOnLaunch']
+
+ response.status = 200
+
+ response.body = {
+ 'requestId' => Fog::AWS::Mock.request_id,
+ 'return' => true
+ }
+ else
+ response.status = 404
+ response.body = {
+ 'Code' => 'InvalidParameterValue'
+ }
+ end
+ end
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/requests/compute/modify_volume_attribute.rb b/lib/fog/aws/requests/compute/modify_volume_attribute.rb
index afbc776..95047c0 100644
--- a/lib/fog/aws/requests/compute/modify_volume_attribute.rb
+++ b/lib/fog/aws/requests/compute/modify_volume_attribute.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Modifies a volume attribute.
@@ -27,11 +26,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
class Mock
-
def modify_volume_attribute(volume_id=nil, auto_enable_io_value=false)
response = Excon::Response.new
if volume = self.data[:volumes][volume_id]
diff --git a/lib/fog/aws/requests/compute/modify_vpc_attribute.rb b/lib/fog/aws/requests/compute/modify_vpc_attribute.rb
index d3634c8..8562621 100644
--- a/lib/fog/aws/requests/compute/modify_vpc_attribute.rb
+++ b/lib/fog/aws/requests/compute/modify_vpc_attribute.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Modifies the specified attribute of the specified VPC.
@@ -31,26 +30,34 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
}.merge!(options))
end
-
end
class Mock
-
def modify_vpc_attribute(vpc_id, options = {})
response = Excon::Response.new
if options.size == 0
raise Fog::Compute::AWS::Error.new("InvalidParameterCombination => No attributes specified.")
elsif options.size > 1
raise Fog::Compute::AWS::Error.new("InvalidParameterCombination => InvalidParameterCombination => Fields for multiple attribute types specified: #{options.keys.join(', ')}")
- elsif self.data[:vpcs].select{|x| x['vpcId'] == vpc_id}.size
+ elsif vpc = self.data[:vpcs].find{ |v| v['vpcId'] == vpc_id }
response.status = 200
response.body = {
'requestId' => Fog::AWS::Mock.request_id,
'return' => true
}
+
+ attribute = options.keys.first
+ case attribute
+ when 'EnableDnsSupport.Value'
+ vpc['enableDnsSupport'] = options[attribute]
+ when 'EnableDnsHostnames.Value'
+ vpc['enableDnsHostnames'] = options[attribute]
+ else
+ raise Fog::Compute::AWS::Error.new("Illegal attribute '#{attribute}' specified")
+ end
response
else
- raise Fog::Compute::AWS::NotFound.new("The vpc '#{vpc_id}' does not exist.")
+ raise Fog::Compute::AWS::NotFound.new("The VPC '#{vpc_id}' does not exist.")
end
end
end
diff --git a/lib/fog/aws/requests/compute/monitor_instances.rb b/lib/fog/aws/requests/compute/monitor_instances.rb
index 91cbb78..8ff7781 100644
--- a/lib/fog/aws/requests/compute/monitor_instances.rb
+++ b/lib/fog/aws/requests/compute/monitor_instances.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class AWS
-
class Real
-
require 'fog/aws/parsers/compute/monitor_unmonitor_instances'
# Monitor specified instance
@@ -27,11 +25,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::MonitorUnmonitorInstances.new
}.merge!(params))
end
-
end
class Mock
-
def monitor_instances(instance_ids)
response = Excon::Response.new
response.status = 200
@@ -42,13 +38,11 @@ module Fog
raise Fog::Compute::AWS::NotFound.new("The instance ID '#{instance_ids}' does not exist")
end
end
- instances_set = [*instance_ids].inject([]) { |memo, id| memo << {'instanceId' => id, 'monitoring' => 'enabled'} }
+ instances_set = [*instance_ids].reduce([]) { |memo, id| memo << {'instanceId' => id, 'monitoring' => 'enabled'} }
response.body = {'requestId' => 'some_request_id', 'instancesSet' => instances_set}
response
end
-
end
end
-
end
end
diff --git a/lib/fog/aws/requests/compute/purchase_reserved_instances_offering.rb b/lib/fog/aws/requests/compute/purchase_reserved_instances_offering.rb
index c6e91d1..e5cad5c 100644
--- a/lib/fog/aws/requests/compute/purchase_reserved_instances_offering.rb
+++ b/lib/fog/aws/requests/compute/purchase_reserved_instances_offering.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/purchase_reserved_instances_offering'
# Purchases a Reserved Instance for use with your account.
@@ -27,7 +26,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::PurchaseReservedInstancesOffering.new
})
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/compute/reboot_instances.rb b/lib/fog/aws/requests/compute/reboot_instances.rb
index 632607f..b68b626 100644
--- a/lib/fog/aws/requests/compute/reboot_instances.rb
+++ b/lib/fog/aws/requests/compute/reboot_instances.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Reboot specified instances
@@ -25,11 +24,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
}.merge!(params))
end
-
end
class Mock
-
def reboot_instances(instance_id = [])
response = Excon::Response.new
instance_id = [*instance_id]
@@ -47,7 +44,6 @@ module Fog
raise Fog::Compute::AWS::NotFound.new("The instance ID #{instance_id.inspect} does not exist")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/register_image.rb b/lib/fog/aws/requests/compute/register_image.rb
index 5881ac6..032653f 100644
--- a/lib/fog/aws/requests/compute/register_image.rb
+++ b/lib/fog/aws/requests/compute/register_image.rb
@@ -43,7 +43,7 @@ module Fog
}
# This determines if we are doing a snapshot or a S3 backed AMI.
- if(location =~ /^\/dev\/sd[a-p]\d{0,2}$/)
+ if(location =~ /^\/dev\/(xvd|sd)[a-p]\d{0,2}$/)
common_options['RootDeviceName'] = location
else
common_options['ImageLocation'] = location
@@ -90,7 +90,7 @@ module Fog
'registered' => Time.now
}
- if location[/^\/dev\/sd[a-p]\d{0,2}$/]
+ if location[/^\/dev\/(xvd|sd)[a-p]\d{0,2}$/]
image['rootDeviceName'] = location
image['rootDeviceType'] = 'ebs'
else
diff --git a/lib/fog/aws/requests/compute/release_address.rb b/lib/fog/aws/requests/compute/release_address.rb
index 41f4131..2219b98 100644
--- a/lib/fog/aws/requests/compute/release_address.rb
+++ b/lib/fog/aws/requests/compute/release_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Release an elastic IP address.
@@ -30,15 +29,13 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
)
end
-
end
class Mock
-
def release_address(public_ip_or_allocation_id)
response = Excon::Response.new
- address = self.data[:addresses][public_ip_or_allocation_id] || self.data[:addresses].values.detect {|a| a['allocationId'] == public_ip_or_allocation_id }
+ address = self.data[:addresses][public_ip_or_allocation_id] || self.data[:addresses].values.find {|a| a['allocationId'] == public_ip_or_allocation_id }
if address
if address['allocationId'] && public_ip_or_allocation_id == address['publicIp']
@@ -56,7 +53,6 @@ module Fog
raise Fog::Compute::AWS::Error.new("AuthFailure => The address '#{public_ip_or_allocation_id}' does not belong to you.")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/replace_network_acl_association.rb b/lib/fog/aws/requests/compute/replace_network_acl_association.rb
index bcdb544..9be55a5 100644
--- a/lib/fog/aws/requests/compute/replace_network_acl_association.rb
+++ b/lib/fog/aws/requests/compute/replace_network_acl_association.rb
@@ -32,15 +32,15 @@ module Fog
response = Excon::Response.new
if self.data[:network_acls][network_acl_id]
# find the old assoc
- old_nacl = self.data[:network_acls].values.detect do |n|
- n['associationSet'].detect { |assoc| assoc['networkAclAssociationId'] == association_id }
+ old_nacl = self.data[:network_acls].values.find do |n|
+ n['associationSet'].find { |assoc| assoc['networkAclAssociationId'] == association_id }
end
unless old_nacl
raise Fog::Compute::AWS::Error.new("Invalid association_id #{association_id}")
end
- subnet_id = old_nacl['associationSet'].detect { |assoc| assoc['networkAclAssociationId'] == association_id }['subnetId']
+ subnet_id = old_nacl['associationSet'].find { |assoc| assoc['networkAclAssociationId'] == association_id }['subnetId']
old_nacl['associationSet'].delete_if { |assoc| assoc['networkAclAssociationId'] == association_id }
id = Fog::AWS::Mock.network_acl_association_id
diff --git a/lib/fog/aws/requests/compute/replace_network_acl_entry.rb b/lib/fog/aws/requests/compute/replace_network_acl_entry.rb
index 61e26ff..e434c6f 100644
--- a/lib/fog/aws/requests/compute/replace_network_acl_entry.rb
+++ b/lib/fog/aws/requests/compute/replace_network_acl_entry.rb
@@ -45,7 +45,7 @@ module Fog
response = Excon::Response.new
if self.data[:network_acls][network_acl_id]
- unless self.data[:network_acls][network_acl_id]['entrySet'].detect { |r| r['ruleNumber'] == rule_number && r['egress'] == egress }
+ unless self.data[:network_acls][network_acl_id]['entrySet'].find { |r| r['ruleNumber'] == rule_number && r['egress'] == egress }
raise Fog::Compute::AWS::Error.new("No rule with that number")
end
self.data[:network_acls][network_acl_id]['entrySet'].delete_if { |r| r['ruleNumber'] == rule_number && r['egress'] == egress }
diff --git a/lib/fog/aws/requests/compute/replace_route.rb b/lib/fog/aws/requests/compute/replace_route.rb
index c49b1c8..d40144c 100755
--- a/lib/fog/aws/requests/compute/replace_route.rb
+++ b/lib/fog/aws/requests/compute/replace_route.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Replaces a route in a route table within a VPC.
@@ -31,12 +30,10 @@ module Fog
:idempotent => true,
:parser => Fog::Parsers::Compute::AWS::Basic.new
}.merge!(options))
-
end
end
class Mock
-
def replace_route(route_table_id, destination_cidr_block, options = {})
options['instanceOwnerId'] ||= nil
options['DestinationCidrBlock'] ||= destination_cidr_block
@@ -77,7 +74,6 @@ module Fog
raise Fog::Compute::AWS::InvalidParameterValue.new("Value () for parameter destinationCidrBlock is invalid. This is not a valid CIDR block.")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/request_spot_instances.rb b/lib/fog/aws/requests/compute/request_spot_instances.rb
index 87b9f7d..4d0d72a 100644
--- a/lib/fog/aws/requests/compute/request_spot_instances.rb
+++ b/lib/fog/aws/requests/compute/request_spot_instances.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/spot_instance_requests'
# Launch specified instances
@@ -91,7 +90,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::SpotInstanceRequests.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/reset_network_interface_attribute.rb b/lib/fog/aws/requests/compute/reset_network_interface_attribute.rb
index 79539d1..a4790bc 100644
--- a/lib/fog/aws/requests/compute/reset_network_interface_attribute.rb
+++ b/lib/fog/aws/requests/compute/reset_network_interface_attribute.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Resets a network interface attribute value
diff --git a/lib/fog/aws/requests/compute/revoke_security_group_ingress.rb b/lib/fog/aws/requests/compute/revoke_security_group_ingress.rb
index 957a2dd..bed017f 100644
--- a/lib/fog/aws/requests/compute/revoke_security_group_ingress.rb
+++ b/lib/fog/aws/requests/compute/revoke_security_group_ingress.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/basic'
# Remove permissions from a security group
@@ -53,11 +52,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::Basic.new
}.merge!(options))
end
-
end
class Mock
-
def revoke_security_group_ingress(group_name, options = {})
options = Fog::AWS.parse_security_group_options(group_name, options)
if options.key?('GroupName')
@@ -95,7 +92,6 @@ module Fog
raise Fog::Compute::AWS::NotFound.new("The security group '#{group_name}' does not exist")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/run_instances.rb b/lib/fog/aws/requests/compute/run_instances.rb
index 9d10717..7b68488 100644
--- a/lib/fog/aws/requests/compute/run_instances.rb
+++ b/lib/fog/aws/requests/compute/run_instances.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/run_instances'
# Launch specified instances
@@ -27,7 +26,8 @@ module Fog
# * 'VirtualName'<~String> - volume virtual device name
# * 'Ebs.SnapshotId'<~String> - id of snapshot to boot volume from
# * 'Ebs.VolumeSize'<~String> - size of volume in GiBs required unless snapshot is specified
- # * 'Ebs.DeleteOnTermination'<~String> - specifies whether or not to delete the volume on instance termination
+ # * 'Ebs.DeleteOnTermination'<~Boolean> - specifies whether or not to delete the volume on instance termination
+ # * 'Ebs.Encrypted'<~Boolean> - specifies whether or not the volume is to be encrypted unless snapshot is specified
# * 'Ebs.VolumeType'<~String> - Type of EBS volue. Valid options in ['standard', 'io1'] default is 'standard'.
# * 'Ebs.Iops'<~String> - The number of I/O operations per second (IOPS) that the volume supports. Required when VolumeType is 'io1'
# * 'NetworkInterfaces'<~Array>: array of hashes
@@ -48,7 +48,7 @@ module Fog
# * 'SecurityGroupId'<~Array> or <~String> - id's of security group(s) for instances, use this or SecurityGroup
# * 'InstanceInitiatedShutdownBehaviour'<~String> - specifies whether volumes are stopped or terminated when instance is shutdown, in [stop, terminate]
# * 'InstanceType'<~String> - Type of instance to boot. Valid options
- # in ['t1.micro', 'm1.small', 'm1.medium', 'm1.large', 'm1.xlarge', 'c1.medium', 'c1.xlarge', 'c3.large', 'c3.xlarge', 'c3.2xlarge', 'c3.4xlarge', 'c3.8xlarge', 'g2.2xlarge', 'hs1.8xlarge', 'm2.xlarge', 'm2.2xlarge', 'm2.4xlarge', 'cr1.8xlarge', 'm3.xlarge', 'm3.2xlarge', 'hi1.4xlarge', 'cc1.4xlarge', 'cc2.8xlarge', 'cg1.4xlarge', 'i2.xlarge', 'i2.2xlarge', 'i2.4xlarge', 'i2.8xlarge']
+ # in ['t1.micro', 't2.micro', 't2.small', 't2.medium', 'm1.small', 'm1.medium', 'm1.large', 'm1.xlarge', 'c1.medium', 'c1.xlarge', 'c3.large', 'c3.xlarge', 'c3.2xlarge', 'c3.4xlarge', 'c3.8xlarge', 'g2.2xlarge', 'hs1.8xlarge', 'm2.xlarge', 'm2.2xlarge', 'm2.4xlarge', 'cr1.8xlarge', 'm3.xlarge', 'm3.2xlarge', 'hi1.4xlarge', 'cc1.4xlarge', 'cc2.8xlarge', 'cg1.4xlarge', 'i2.xlarge', 'i2.2xlarge', 'i2.4xlarge', 'i2.8xlarge']
# default is 'm1.small'
# * 'KernelId'<~String> - Id of kernel with which to launch
# * 'KeyName'<~String> - Name of a keypair to add to booting instances
@@ -145,11 +145,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::RunInstances.new
}.merge!(options))
end
-
end
class Mock
-
def run_instances(image_id, min_count, max_count, options = {})
response = Excon::Response.new
response.status = 200
@@ -166,7 +164,7 @@ module Fog
instance_id = Fog::AWS::Mock.instance_id
availability_zone = options['Placement.AvailabilityZone'] || Fog::AWS::Mock.availability_zone(@region)
- block_device_mapping = (options['BlockDeviceMapping'] || []).inject([]) do |mapping, device|
+ block_device_mapping = (options['BlockDeviceMapping'] || []).reduce([]) do |mapping, device|
device_name = device.fetch("DeviceName", "/dev/sda1")
volume_size = device.fetch("Ebs.VolumeSize", 15) # @todo should pull this from the image
delete_on_termination = device.fetch("Ebs.DeleteOnTermination", true) # @todo should pull this from the image
@@ -184,7 +182,17 @@ module Fog
}
end
- network_interfaces = (options['NetworkInterfaces'] || []).inject([]) do |mapping, device|
+ if options['SubnetId']
+ if options['PrivateIpAddress']
+ ni_options = {'PrivateIpAddress' => options['PrivateIpAddress']}
+ else
+ ni_options = {}
+ end
+
+ network_interface_id = create_network_interface(options['SubnetId'], ni_options).body['networkInterface']['networkInterfaceId']
+ end
+
+ network_interfaces = (options['NetworkInterfaces'] || []).reduce([]) do |mapping, device|
device_index = device.fetch("DeviceIndex", 0)
subnet_id = device.fetch("SubnetId", options[:subnet_id] || Fog::AWS::Mock.subnet_id)
private_ip_address = device.fetch("PrivateIpAddress", options[:private_ip_address] || Fog::AWS::Mock.private_ip_address)
@@ -230,6 +238,7 @@ module Fog
'privateDnsName' => nil,
'productCodes' => [],
'reason' => nil,
+ 'rootDeviceName' => block_device_mapping.first && block_device_mapping.first["deviceName"],
'rootDeviceType' => 'instance-store',
'virtualizationType' => 'paravirtual'
}
@@ -238,12 +247,17 @@ module Fog
'groupIds' => [],
'groupSet' => group_set,
'iamInstanceProfile' => {},
- 'networkInterfaces' => [],
'ownerId' => self.data[:owner_id],
- 'privateIpAddress' => nil,
'reservationId' => reservation_id,
'stateReason' => {}
})
+
+ if options['SubnetId']
+ self.data[:instances][instance_id]['vpcId'] = self.data[:subnets].find{|subnet| subnet['subnetId'] == options['SubnetId'] }['vpcId']
+
+ attachment_id = attach_network_interface(network_interface_id, instance_id, '0').data[:body]['attachmentId']
+ modify_network_interface_attribute(network_interface_id, 'attachment', {'attachmentId' => attachment_id, 'deleteOnTermination' => 'true'})
+ end
end
response.body = {
'groupSet' => group_set,
@@ -254,7 +268,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/start_instances.rb b/lib/fog/aws/requests/compute/start_instances.rb
index d776568..d1df4f4 100644
--- a/lib/fog/aws/requests/compute/start_instances.rb
+++ b/lib/fog/aws/requests/compute/start_instances.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/start_stop_instances'
# Start specified instance
@@ -25,7 +24,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::StartStopInstances.new
}.merge!(params))
end
-
end
class Mock
@@ -34,7 +32,7 @@ module Fog
instance_set = self.data[:instances].values
instance_set = apply_tag_filters(instance_set, {'instance_id' => instance_ids}, 'instanceId')
- instance_set = instance_set.find_all {|x| instance_ids.include?(x["instanceId"]) }
+ instance_set = instance_set.select {|x| instance_ids.include?(x["instanceId"]) }
if instance_set.empty?
raise Fog::Compute::AWS::NotFound.new("The instance ID '#{instance_ids.first}' does not exist")
@@ -43,7 +41,7 @@ module Fog
response.status = 200
response.body = {
- 'instancesSet' => instance_set.inject([]) do |ia, instance|
+ 'instancesSet' => instance_set.reduce([]) do |ia, instance|
ia << {'currentState' => { 'code' => 0, 'name' => 'pending' },
'previousState' => instance['instanceState'],
'instanceId' => instance['instanceId'] }
diff --git a/lib/fog/aws/requests/compute/stop_instances.rb b/lib/fog/aws/requests/compute/stop_instances.rb
index 3a54dad..7eceb33 100644
--- a/lib/fog/aws/requests/compute/stop_instances.rb
+++ b/lib/fog/aws/requests/compute/stop_instances.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/start_stop_instances'
# Stop specified instance
@@ -26,7 +25,6 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::StartStopInstances.new
}.merge!(params))
end
-
end
class Mock
@@ -35,7 +33,7 @@ module Fog
instance_set = self.data[:instances].values
instance_set = apply_tag_filters(instance_set, {'instance_id' => instance_ids}, 'instanceId')
- instance_set = instance_set.find_all {|x| instance_ids.include?(x["instanceId"]) }
+ instance_set = instance_set.select {|x| instance_ids.include?(x["instanceId"]) }
if instance_set.empty?
raise Fog::Compute::AWS::NotFound.new("The instance ID '#{instance_ids.first}' does not exist")
@@ -44,7 +42,7 @@ module Fog
response.status = 200
response.body = {
- 'instancesSet' => instance_set.inject([]) do |ia, instance|
+ 'instancesSet' => instance_set.reduce([]) do |ia, instance|
ia << {'currentState' => { 'code' => 0, 'name' => 'stopping' },
'previousState' => instance['instanceState'],
'instanceId' => instance['instanceId'] }
diff --git a/lib/fog/aws/requests/compute/terminate_instances.rb b/lib/fog/aws/requests/compute/terminate_instances.rb
index 3c37a76..074d205 100644
--- a/lib/fog/aws/requests/compute/terminate_instances.rb
+++ b/lib/fog/aws/requests/compute/terminate_instances.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class AWS
class Real
-
require 'fog/aws/parsers/compute/terminate_instances'
# Terminate specified instances
@@ -32,11 +31,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::TerminateInstances.new
}.merge!(params))
end
-
end
class Mock
-
def terminate_instances(instance_id)
response = Excon::Response.new
instance_id = [*instance_id]
@@ -89,7 +86,6 @@ module Fog
raise Fog::Compute::AWS::NotFound.new("The instance ID '#{instance_id}' does not exist")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/compute/unmonitor_instances.rb b/lib/fog/aws/requests/compute/unmonitor_instances.rb
index d8ab419..9b02308 100644
--- a/lib/fog/aws/requests/compute/unmonitor_instances.rb
+++ b/lib/fog/aws/requests/compute/unmonitor_instances.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class AWS
-
class Real
-
require 'fog/aws/parsers/compute/monitor_unmonitor_instances'
# UnMonitor specified instance
@@ -27,11 +25,9 @@ module Fog
:parser => Fog::Parsers::Compute::AWS::MonitorUnmonitorInstances.new
}.merge!(params))
end
-
end
class Mock
-
def unmonitor_instances(instance_ids)
response = Excon::Response.new
response.status = 200
@@ -42,14 +38,11 @@ module Fog
raise Fog::Compute::AWS::NotFound.new("The instance ID '#{instance_ids}' does not exist")
end
end
- instances_set = [*instance_ids].inject([]) { |memo, id| memo << {'instanceId' => id, 'monitoring' => 'disabled'} }
+ instances_set = [*instance_ids].reduce([]) { |memo, id| memo << {'instanceId' => id, 'monitoring' => 'disabled'} }
response.body = {'requestId' => 'some_request_id', 'instancesSet' => instances_set}
response
end
-
end
-
end
-
end
end
diff --git a/lib/fog/aws/requests/data_pipeline/activate_pipeline.rb b/lib/fog/aws/requests/data_pipeline/activate_pipeline.rb
index 928c697..c83a1ba 100644
--- a/lib/fog/aws/requests/data_pipeline/activate_pipeline.rb
+++ b/lib/fog/aws/requests/data_pipeline/activate_pipeline.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class DataPipeline
-
class Real
-
# Activate a pipeline
# http://docs.aws.amazon.com/datapipeline/latest/APIReference/API_ActivatePipeline.html
# ==== Parameters
@@ -21,7 +19,6 @@ module Fog
Fog::JSON.decode(response.body)
end
-
end
class Mock
@@ -29,7 +26,6 @@ module Fog
Fog::Mock.not_implemented
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/data_pipeline/create_pipeline.rb b/lib/fog/aws/requests/data_pipeline/create_pipeline.rb
index 0e636f8..776dde2 100644
--- a/lib/fog/aws/requests/data_pipeline/create_pipeline.rb
+++ b/lib/fog/aws/requests/data_pipeline/create_pipeline.rb
@@ -1,23 +1,23 @@
module Fog
module AWS
class DataPipeline
-
class Real
-
# Create a pipeline
# http://docs.aws.amazon.com/datapipeline/latest/APIReference/API_CreatePipeline.html
# ==== Parameters
# * UniqueId <~String> - A unique ID for of the pipeline
# * Name <~String> - The name of the pipeline
+ # * Tags <~Hash> - Key/value string pairs to categorize the pipeline
# * Description <~String> - Description of the pipeline
# ==== Returns
# * response<~Excon::Response>:
# * body<~Hash>:
- def create_pipeline(unique_id, name, description=nil)
+ def create_pipeline(unique_id, name, description=nil, tags=nil)
params = {
'uniqueId' => unique_id,
'name' => name,
}
+ params['tags'] = tags.map {|k,v| {"key" => k.to_s, "value" => v.to_s}} unless tags.nil? || tags.empty?
params['Description'] = description if description
response = request({
@@ -27,15 +27,13 @@ module Fog
Fog::JSON.decode(response.body)
end
-
end
class Mock
- def create_pipeline(unique_id, name, description=nil)
+ def create_pipeline(unique_id, name, description=nil, tags=nil)
Fog::Mock.not_implemented
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/data_pipeline/delete_pipeline.rb b/lib/fog/aws/requests/data_pipeline/delete_pipeline.rb
index ab3f3a2..e1bcb1f 100644
--- a/lib/fog/aws/requests/data_pipeline/delete_pipeline.rb
+++ b/lib/fog/aws/requests/data_pipeline/delete_pipeline.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class DataPipeline
-
class Real
-
# Delete a pipeline
# http://docs.aws.amazon.com/datapipeline/latest/APIReference/API_DeletePipeline.html
# ==== Parameters
@@ -20,7 +18,6 @@ module Fog
200 == response.status
end
-
end
class Mock
@@ -28,7 +25,6 @@ module Fog
Fog::Mock.not_implemented
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/data_pipeline/describe_objects.rb b/lib/fog/aws/requests/data_pipeline/describe_objects.rb
index 16f1e00..bac8b78 100644
--- a/lib/fog/aws/requests/data_pipeline/describe_objects.rb
+++ b/lib/fog/aws/requests/data_pipeline/describe_objects.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class DataPipeline
-
class Real
-
# Queries a pipeline for the names of objects that match a specified set of conditions.
# http://docs.aws.amazon.com/datapipeline/latest/APIReference/API_DescribeObjects.html
# ==== Parameters
@@ -28,7 +26,6 @@ module Fog
Fog::JSON.decode(response.body)
end
-
end
class Mock
@@ -36,7 +33,6 @@ module Fog
Fog::Mock.not_implemented
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/data_pipeline/describe_pipelines.rb b/lib/fog/aws/requests/data_pipeline/describe_pipelines.rb
index 028a59c..8316c75 100644
--- a/lib/fog/aws/requests/data_pipeline/describe_pipelines.rb
+++ b/lib/fog/aws/requests/data_pipeline/describe_pipelines.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class DataPipeline
-
class Real
-
# Describe pipelines
# http://docs.aws.amazon.com/datapipeline/latest/APIReference/API_DescribePipelines.html
# ==== Parameters
@@ -22,7 +20,6 @@ module Fog
Fog::JSON.decode(response.body)
end
-
end
class Mock
@@ -30,7 +27,6 @@ module Fog
Fog::Mock.not_implemented
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/data_pipeline/get_pipeline_definition.rb b/lib/fog/aws/requests/data_pipeline/get_pipeline_definition.rb
index c20cca1..21da55b 100644
--- a/lib/fog/aws/requests/data_pipeline/get_pipeline_definition.rb
+++ b/lib/fog/aws/requests/data_pipeline/get_pipeline_definition.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class DataPipeline
-
class Real
-
# Get pipeline definition JSON
# http://docs.aws.amazon.com/datapipeline/latest/APIReference/API_GetPipelineDefinition.html
# ==== Parameters
@@ -23,7 +21,6 @@ module Fog
Fog::JSON.decode(response.body)
end
-
end
class Mock
@@ -31,7 +28,6 @@ module Fog
Fog::Mock.not_implemented
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/data_pipeline/list_pipelines.rb b/lib/fog/aws/requests/data_pipeline/list_pipelines.rb
index 40e0574..30259ad 100644
--- a/lib/fog/aws/requests/data_pipeline/list_pipelines.rb
+++ b/lib/fog/aws/requests/data_pipeline/list_pipelines.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class DataPipeline
-
class Real
-
# List all pipelines
# http://docs.aws.amazon.com/datapipeline/latest/APIReference/API_ListPipelines.html
# ==== Parameters
@@ -22,7 +20,6 @@ module Fog
Fog::JSON.decode(response.body)
end
-
end
class Mock
@@ -30,7 +27,6 @@ module Fog
Fog::Mock.not_implemented
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/data_pipeline/put_pipeline_definition.rb b/lib/fog/aws/requests/data_pipeline/put_pipeline_definition.rb
index cfa6133..e06e8c5 100644
--- a/lib/fog/aws/requests/data_pipeline/put_pipeline_definition.rb
+++ b/lib/fog/aws/requests/data_pipeline/put_pipeline_definition.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class DataPipeline
-
class Real
-
# Put raw pipeline definition JSON
# http://docs.aws.amazon.com/datapipeline/latest/APIReference/API_PutPipelineDefinition.html
# ==== Parameters
@@ -47,7 +45,7 @@ module Fog
}
end
- private
+ private
def fields
@json_fields.map{|k,v| field_for_kv(k,v)}.flatten
@@ -66,7 +64,6 @@ module Fog
end
end
end
-
end
class Mock
@@ -74,7 +71,6 @@ module Fog
Fog::Mock.not_implemented
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/data_pipeline/query_objects.rb b/lib/fog/aws/requests/data_pipeline/query_objects.rb
index c391e47..a1a8ba9 100644
--- a/lib/fog/aws/requests/data_pipeline/query_objects.rb
+++ b/lib/fog/aws/requests/data_pipeline/query_objects.rb
@@ -1,9 +1,7 @@
module Fog
module AWS
class DataPipeline
-
class Real
-
# Queries a pipeline for the names of objects that match a specified set of conditions.
# http://docs.aws.amazon.com/datapipeline/latest/APIReference/API_QueryObjects.html
# ==== Parameters
@@ -28,7 +26,6 @@ module Fog
Fog::JSON.decode(response.body)
end
-
end
class Mock
@@ -36,8 +33,6 @@ module Fog
Fog::Mock.not_implemented
end
end
-
end
end
end
-
diff --git a/lib/fog/aws/requests/dns/change_resource_record_sets.rb b/lib/fog/aws/requests/dns/change_resource_record_sets.rb
index 7e7e35e..981ae14 100644
--- a/lib/fog/aws/requests/dns/change_resource_record_sets.rb
+++ b/lib/fog/aws/requests/dns/change_resource_record_sets.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class AWS
class Real
-
require 'fog/aws/parsers/dns/change_resource_record_sets'
# Use this action to create or change your authoritative DNS information for a zone
@@ -18,10 +17,17 @@ module Fog
# * name<~String> - This must be a fully-specified name, ending with a final period
# * type<~String> - A | AAAA | CNAME | MX | NS | PTR | SOA | SPF | SRV | TXT
# * ttl<~Integer> - Time-to-live value - omit if using an alias record
+ # * weight<~Integer> - Time-to-live value - omit if using an alias record
+ # * set_identifier<~String> - An identifier that differentiates among multiple resource record sets that have the same combination of DNS name and type.
+ # * region<~String> - The Amazon EC2 region where the resource that is specified in this resource record set resides. (Latency only)
+ # * failover<~String> - To configure failover, you add the Failover element to two resource record sets. For one resource record set, you specify PRIMARY as the value for Failover; for the other resource record set, you specify SECONDARY.
+ # * geo_location<~String XML> - A complex type currently requiring XML that lets you control how Amazon Route 53 responds to DNS queries based on the geographic origin of the query.
+ # * health_check_id<~String> - If you want Amazon Route 53 to return this resource record set in response to a DNS query only when a health check is passing, include the HealthCheckId element and specify the ID of the applicable health check.
# * resource_records<~Array> - Omit if using an alias record
# * alias_target<~Hash> - Information about the domain to which you are redirecting traffic (Alias record sets only)
# * dns_name<~String> - The Elastic Load Balancing domain to which you want to reroute traffic
# * hosted_zone_id<~String> - The ID of the hosted zone that contains the Elastic Load Balancing domain to which you want to reroute traffic
+ # * evaluate_target_health<~Boolean> - Applies only to alias, weighted alias, latency alias, and failover alias resource record sets: If you set the value of EvaluateTargetHealth to true, the alias resource record sets inherit the health of the referenced resource record sets.
# ==== Returns
# * response<~Excon::Response>:
# * body<~Hash>:
@@ -55,7 +61,6 @@ module Fog
# change_resource_record_sets("ABCDEFGHIJKLMN", change_batch_options)
#
def change_resource_record_sets(zone_id, change_batch, options = {})
-
# AWS methods return zone_ids that looks like '/hostedzone/id'. Let the caller either use
# that form or just the actual id (which is what this request needs)
zone_id = zone_id.sub('/hostedzone/', '')
@@ -93,6 +98,15 @@ module Fog
region_tag += %Q{<Region>#{change_item[:region]}</Region>}
end
end
+
+ failover_tag = if change_item[:failover]
+ %Q{<Failover>#{change_item[:failover]}</Failover>}
+ end
+
+ geolocation_tag = if change_item[:geo_location]
+ %Q{<GeoLocation>#{change_item[:geo_location]}</GeoLocation>}
+ end
+
resource_records = change_item[:resource_records] || []
resource_record_tags = ''
resource_records.each do |record|
@@ -108,17 +122,22 @@ module Fog
# Accept either underscore or camel case for hash keys.
dns_name = change_item[:alias_target][:dns_name] || change_item[:alias_target][:DNSName]
hosted_zone_id = change_item[:alias_target][:hosted_zone_id] || change_item[:alias_target][:HostedZoneId] || AWS.hosted_zone_for_alias_target(dns_name)
- alias_target_tag += %Q{<AliasTarget><HostedZoneId>#{hosted_zone_id}</HostedZoneId><DNSName>#{dns_name}</DNSName></AliasTarget>}
+ evaluate_target_health = change_item[:alias_target][:evaluate_target_health] || change_item[:alias_target][:EvaluateTargetHealth] || false
+ evaluate_target_health_xml = !evaluate_target_health.nil? ? %Q{<EvaluateTargetHealth>#{evaluate_target_health}</EvaluateTargetHealth>} : ''
+ alias_target_tag += %Q{<AliasTarget><HostedZoneId>#{hosted_zone_id}</HostedZoneId><DNSName>#{dns_name}</DNSName>#{evaluate_target_health_xml}</AliasTarget>}
end
- change_tags = %Q{<Change>#{action_tag}<ResourceRecordSet>#{name_tag}#{type_tag}#{set_identifier_tag}#{weight_tag}#{region_tag}#{ttl_tag}#{resource_tag}#{alias_target_tag}</ResourceRecordSet></Change>}
+ health_check_id_tag = if change_item[:health_check_id]
+ %Q{<HealthCheckId>#{change_item[:health_check_id]}</HealthCheckId>}
+ end
+
+ change_tags = %Q{<Change>#{action_tag}<ResourceRecordSet>#{name_tag}#{type_tag}#{set_identifier_tag}#{weight_tag}#{region_tag}#{failover_tag}#{geolocation_tag}#{ttl_tag}#{resource_tag}#{alias_target_tag}#{health_check_id_tag}</ResourceRecordSet></Change>}
changes += change_tags
end
changes += '</Changes></ChangeBatch>'
end
-
body = %Q{<?xml version="1.0" encoding="UTF-8"?><ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/#{@version}/">#{changes}</ChangeResourceRecordSetsRequest>}
request({
:body => body,
@@ -127,13 +146,10 @@ module Fog
:method => 'POST',
:path => "hostedzone/#{zone_id}/rrset"
})
-
end
-
end
class Mock
-
def change_resource_record_sets(zone_id, change_batch, options = {})
response = Excon::Response.new
errors = []
@@ -200,7 +216,6 @@ module Fog
response.body = "<?xml version=\"1.0\"?><Response><Errors><Error><Code>NoSuchHostedZone</Code><Message>A hosted zone with the specified hosted zone ID does not exist.</Message></Error></Errors><RequestID>#{Fog::AWS::Mock.request_id}</RequestID></Response>"
raise(Excon::Errors.status_error({:expects => 200}, response))
end
-
end
end
diff --git a/lib/fog/aws/requests/dns/create_health_check.rb b/lib/fog/aws/requests/dns/create_health_check.rb
new file mode 100644
index 0000000..886bd6c
--- /dev/null
+++ b/lib/fog/aws/requests/dns/create_health_check.rb
@@ -0,0 +1,64 @@
+module Fog
+ module DNS
+ class AWS
+ class Real
+ require 'fog/aws/parsers/dns/health_check'
+
+ # This action creates a new health check.
+ # http://docs.aws.amazon.com/Route53/latest/APIReference/API_CreateHealthCheck.html
+ #
+ # ==== Parameters (options as symbols Hash)
+ # * ip_address<~String> - (optional if fqdn) The IPv4 IP address of the endpoint on which you want Amazon Route 53 to perform health checks
+ # * port<~Integer> - The port on the endpoint on which you want Amazon Route 53 to perform health checks
+ # * type<~String> - HTTP | HTTPS | HTTP_STR_MATCH | HTTPS_STR_MATCH | TCP
+ # * resource_path<~Stringy> - (required for all types except TCP) The path that you want Amazon Route 53 to request when performing health checks. The path can be any value for which your endpoint will return an HTTP status code of 2xx or 3xx when the endpoint is healthy
+ # * fqdn<~String> - (optional if ip_address) The value that you want Amazon Route 53 to pass in the Host header in all health checks except TCP health checks
+ # * search_string<~String> - If the value of Type is HTTP_STR_MATCH or HTTP_STR_MATCH, the string that you want Amazon Route 53 to search for in the response body from the specified resource
+ # * request_interval<~String> - 10 | 30 (optional) The number of seconds between the time that Amazon Route 53 gets a response from your endpoint and the time that it sends the next health-check request
+ # * failure_threshold<~Integer> - 1-10 (optional) The number of consecutive health checks that an endpoint must pass or fail for Amazon Route 53 to change the current status of the endpoint from unhealthy to healthy or vice versa
+ # ==== Returns
+ # * response<~Excon::Response>:
+ # * body<~Hash>:
+ # * 'HealthCheck'<~Hash>
+ # * 'Id'<~String> - The ID of the request
+ # * 'CallerReference'<~String> - A unique string that identifies the request and that allows failed CreateHealthCheck requests to be retried without the risk of executing the operation twice.
+ # * 'HealthCheckConfig'<~Hash>
+ # * 'IPAddress'
+ # * 'Port'
+ # * 'Type'
+ # * 'ResourcePath'
+ # * 'FullyQualifiedDomainName'
+ # * 'RequestInterval'
+ # * 'FailureThreshold'
+ # * status<~Integer> - 201 when successful
+
+ def create_health_check(ip_address, port, type, options = {})
+ version = @version
+ builder = Nokogiri::XML::Builder.new(:encoding => 'UTF-8') do
+ CreateHealthCheckRequest(:xmlns => "https://route53.amazonaws.com/doc/#{version}/") do
+ CallerReference options[:caller_reference] || "#{Time.now.to_i.to_s}-#{SecureRandom.hex(6)}"
+ HealthCheckConfig do
+ IPAddress ip_address unless ip_address.nil?
+ Port port
+ Type type
+ ResourcePath options[:resource_path] if options.has_key?(:resource_path)
+ FullyQualifiedDomainName options[:fqdn] if options.has_key?(:fqdn)
+ SearchString options[:search_string] if options.has_key?(:search_string)
+ RequestInterval options[:request_interval] if options.has_key?(:request_interval)
+ FailureThreshold options[:failure_threshold] if options.has_key?(:failure_threshold)
+ end
+ end
+ end
+
+ request({
+ :body => builder.to_xml.to_s,
+ :expects => 201,
+ :method => 'POST',
+ :path => 'healthcheck',
+ :parser => Fog::Parsers::DNS::AWS::HealthCheck.new
+ })
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/requests/dns/create_hosted_zone.rb b/lib/fog/aws/requests/dns/create_hosted_zone.rb
index b8324b1..ad8218a 100644
--- a/lib/fog/aws/requests/dns/create_hosted_zone.rb
+++ b/lib/fog/aws/requests/dns/create_hosted_zone.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class AWS
class Real
-
require 'fog/aws/parsers/dns/create_hosted_zone'
# Creates a new hosted zone
@@ -30,7 +29,6 @@ module Fog
# * 'NameServer'<~String>
# * status<~Integer> - 201 when successful
def create_hosted_zone(name, options = {})
-
optional_tags = ''
if options[:caller_ref]
optional_tags += "<CallerReference>#{options[:caller_ref]}</CallerReference>"
@@ -50,13 +48,10 @@ module Fog
:method => 'POST',
:path => "hostedzone"
})
-
end
-
end
class Mock
-
require 'time'
def create_hosted_zone(name, options = {})
@@ -64,7 +59,7 @@ module Fog
name = name + "." unless name.end_with?(".")
response = Excon::Response.new
- if list_hosted_zones.body['HostedZones'].find_all {|z| z['Name'] == name}.size < self.data[:limits][:duplicate_domains]
+ if list_hosted_zones.body['HostedZones'].select {|z| z['Name'] == name}.size < self.data[:limits][:duplicate_domains]
response.status = 201
if options[:caller_ref]
caller_ref = options[:caller_ref]
diff --git a/lib/fog/aws/requests/dns/delete_health_check.rb b/lib/fog/aws/requests/dns/delete_health_check.rb
new file mode 100644
index 0000000..3efb260
--- /dev/null
+++ b/lib/fog/aws/requests/dns/delete_health_check.rb
@@ -0,0 +1,24 @@
+module Fog
+ module DNS
+ class AWS
+ class Real
+ # This action deletes a health check.
+ # http://docs.aws.amazon.com/Route53/latest/APIReference/API_DeleteHealthCheck.html
+ #
+ # ==== Parameters
+ # * id<~String> - Health check ID
+ # === Returns
+ # * response<~Excon::Response>:
+ # * status<~Integer> - 200 when successful
+
+ def delete_health_check(id)
+ request({
+ :expects => 200,
+ :method => 'DELETE',
+ :path => "healthcheck/#{id}"
+ })
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/requests/dns/delete_hosted_zone.rb b/lib/fog/aws/requests/dns/delete_hosted_zone.rb
index d26e255..a783b87 100644
--- a/lib/fog/aws/requests/dns/delete_hosted_zone.rb
+++ b/lib/fog/aws/requests/dns/delete_hosted_zone.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class AWS
class Real
-
require 'fog/aws/parsers/dns/delete_hosted_zone'
# Delete a hosted zone
@@ -19,7 +18,6 @@ module Fog
# * 'SubmittedAt'<~String> The date and time the change was made
# * status<~Integer> - 200 when successful
def delete_hosted_zone(zone_id)
-
# AWS methods return zone_ids that looks like '/hostedzone/id'. Let the caller either use
# that form or just the actual id (which is what this request needs)
zone_id = zone_id.sub('/hostedzone/', '')
@@ -30,13 +28,10 @@ module Fog
:method => 'DELETE',
:path => "hostedzone/#{zone_id}"
})
-
end
-
end
class Mock
-
require 'time'
def delete_hosted_zone(zone_id)
@@ -66,7 +61,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dns/get_change.rb b/lib/fog/aws/requests/dns/get_change.rb
index f706606..6785139 100644
--- a/lib/fog/aws/requests/dns/get_change.rb
+++ b/lib/fog/aws/requests/dns/get_change.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class AWS
class Real
-
require 'fog/aws/parsers/dns/get_change'
# returns the current state of a change request
@@ -18,7 +17,6 @@ module Fog
# * 'SubmittedAt'<~String>
# * status<~Integer> - 200 when successful
def get_change(change_id)
-
# AWS methods return change_ids that looks like '/change/id'. Let the caller either use
# that form or just the actual id (which is what this request needs)
change_id = change_id.sub('/change/', '')
@@ -29,9 +27,7 @@ module Fog
:method => 'GET',
:path => "change/#{change_id}"
})
-
end
-
end
class Mock
@@ -58,7 +54,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dns/get_health_check.rb b/lib/fog/aws/requests/dns/get_health_check.rb
new file mode 100644
index 0000000..6bbc3d1
--- /dev/null
+++ b/lib/fog/aws/requests/dns/get_health_check.rb
@@ -0,0 +1,41 @@
+module Fog
+ module DNS
+ class AWS
+ class Real
+ require 'fog/aws/parsers/dns/health_check'
+
+ # This action gets information about a specified health check.
+ #http://docs.aws.amazon.com/Route53/latest/APIReference/API_GetHealthCheck.html
+ #
+ # ==== Parameters
+ # * id<~String> - The ID of the health check
+ #
+ # ==== Returns
+ # * response<~Excon::Response>:
+ # * body<~Hash>:
+ # * 'HealthCheck'<~Hash>:
+ # * 'Id'<~String> -
+ # * 'CallerReference'<~String>
+ # * 'HealthCheckConfig'<~Hash>:
+ # * 'IPAddress'<~String> -
+ # * 'Port'<~String> -
+ # * 'Type'<~String> -
+ # * 'ResourcePath'<~String> -
+ # * 'FullyQualifiedDomainName'<~String> -
+ # * 'SearchString'<~String> -
+ # * 'RequestInterval'<~Integer> -
+ # * 'FailureThreshold'<~String> -
+ # * 'HealthCheckVersion'<~Integer> -
+ # * status<~Integer> - 200 when successful
+ def get_health_check(id)
+ request({
+ :expects => 200,
+ :parser => Fog::Parsers::DNS::AWS::HealthCheck.new,
+ :method => 'GET',
+ :path => "healthcheck/#{id}"
+ })
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/requests/dns/get_hosted_zone.rb b/lib/fog/aws/requests/dns/get_hosted_zone.rb
index 8a5c480..fbd72bc 100644
--- a/lib/fog/aws/requests/dns/get_hosted_zone.rb
+++ b/lib/fog/aws/requests/dns/get_hosted_zone.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class AWS
class Real
-
require 'fog/aws/parsers/dns/get_hosted_zone'
# retrieve information about a hosted zone
@@ -22,7 +21,6 @@ module Fog
# * 'NameServer'<~String>
# * status<~Integer> - 200 when successful
def get_hosted_zone(zone_id)
-
# AWS methods return zone_ids that looks like '/hostedzone/id'. Let the caller either use
# that form or just the actual id (which is what this request needs)
zone_id = zone_id.sub('/hostedzone/', '')
@@ -33,9 +31,7 @@ module Fog
:method => 'GET',
:path => "hostedzone/#{zone_id}"
})
-
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/dns/list_health_checks.rb b/lib/fog/aws/requests/dns/list_health_checks.rb
new file mode 100644
index 0000000..6da1847
--- /dev/null
+++ b/lib/fog/aws/requests/dns/list_health_checks.rb
@@ -0,0 +1,36 @@
+module Fog
+ module DNS
+ class AWS
+ class Real
+ require 'fog/aws/parsers/dns/list_health_checks'
+
+ # This action gets a list of the health checks that are associated with the current AWS account.
+ # http://docs.aws.amazon.com/Route53/latest/APIReference/API_ListHealthChecks.html
+ #
+ # === Returns
+ # * response<~Excon::Response>:
+ # * body<~Hash>:
+ # * 'HealthChecks'<~Array>:
+ # * 'HealthCheck'<~Hash>:
+ # * 'Id'<~String> -
+ # * 'CallerReference'<~String>
+ # * 'HealthCheckVersion'<~Integer> -
+ # * 'Marker'<~String> -
+ # * 'MaxItems'<~Integer> -
+ # * 'IsTruncated'<~String> -
+ # * 'NextMarker'<~String>
+ # * status<~Integer> - 200 when successful
+
+ def list_health_checks
+ request({
+ :expects => 200,
+ :method => 'GET',
+ :path => "healthcheck",
+ :parser => Fog::Parsers::DNS::AWS::ListHealthChecks.new
+ })
+ end
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/aws/requests/dns/list_hosted_zones.rb b/lib/fog/aws/requests/dns/list_hosted_zones.rb
index 82abc6b..9efd269 100644
--- a/lib/fog/aws/requests/dns/list_hosted_zones.rb
+++ b/lib/fog/aws/requests/dns/list_hosted_zones.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class AWS
class Real
-
require 'fog/aws/parsers/dns/list_hosted_zones'
# Describe all or specified instances
@@ -24,10 +23,9 @@ module Fog
# * 'Marker'<~String> -
# * 'MaxItems'<~Integer> -
# * 'IsTruncated'<~String> -
- # * 'NextMarket'<~String>
+ # * 'NextMarker'<~String>
# * status<~Integer> - 200 when successful
def list_hosted_zones(options = {})
-
parameters = {}
options.each do |option, value|
case option
@@ -45,13 +43,10 @@ module Fog
:method => 'GET',
:path => "hostedzone"
})
-
end
-
end
class Mock
-
def list_hosted_zones(options = {})
maxitems = [options[:max_items]||100,100].min
@@ -87,7 +82,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dns/list_resource_record_sets.rb b/lib/fog/aws/requests/dns/list_resource_record_sets.rb
index 68d87d3..8333727 100644
--- a/lib/fog/aws/requests/dns/list_resource_record_sets.rb
+++ b/lib/fog/aws/requests/dns/list_resource_record_sets.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class AWS
class Real
-
require 'fog/aws/parsers/dns/list_resource_record_sets'
# list your resource record sets
@@ -34,7 +33,6 @@ module Fog
# * 'NextRecordIdentifier'<~String>
# * status<~Integer> - 201 when successful
def list_resource_record_sets(zone_id, options = {})
-
# AWS methods return zone_ids that looks like '/hostedzone/id'. Let the caller either use
# that form or just the actual id (which is what this request needs)
zone_id = zone_id.sub('/hostedzone/', '')
@@ -56,13 +54,10 @@ module Fog
:method => 'GET',
:path => "hostedzone/#{zone_id}/rrset"
})
-
end
-
end
class Mock
-
def list_resource_record_sets(zone_id, options = {})
maxitems = [options[:max_items]||100,100].min
@@ -129,7 +124,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dynamodb/batch_get_item.rb b/lib/fog/aws/requests/dynamodb/batch_get_item.rb
index ebffc35..f97899d 100644
--- a/lib/fog/aws/requests/dynamodb/batch_get_item.rb
+++ b/lib/fog/aws/requests/dynamodb/batch_get_item.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class DynamoDB
class Real
-
# Get DynamoDB items
#
# ==== Parameters
@@ -36,7 +35,6 @@ module Fog
:idempotent => true
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dynamodb/batch_write_item.rb b/lib/fog/aws/requests/dynamodb/batch_write_item.rb
index 30e1c63..7cdae14 100644
--- a/lib/fog/aws/requests/dynamodb/batch_write_item.rb
+++ b/lib/fog/aws/requests/dynamodb/batch_write_item.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class DynamoDB
class Real
-
def batch_put_item(request_items)
Fog::Logger.deprecation("batch_put_item is deprecated, use batch_write_item instead")
batch_write_item(request_items)
@@ -28,7 +27,6 @@ module Fog
:headers => {'x-amz-target' => 'DynamoDB_20111205.BatchWriteItem'}
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dynamodb/create_table.rb b/lib/fog/aws/requests/dynamodb/create_table.rb
index 693852e..3252bf5 100644
--- a/lib/fog/aws/requests/dynamodb/create_table.rb
+++ b/lib/fog/aws/requests/dynamodb/create_table.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class DynamoDB
class Real
-
# Create DynamoDB table
#
# ==== Parameters
@@ -48,7 +47,6 @@ module Fog
:idempotent => true
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dynamodb/delete_item.rb b/lib/fog/aws/requests/dynamodb/delete_item.rb
index b78f652..50d6517 100644
--- a/lib/fog/aws/requests/dynamodb/delete_item.rb
+++ b/lib/fog/aws/requests/dynamodb/delete_item.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class DynamoDB
class Real
-
# Delete DynamoDB item
#
# ==== Parameters
@@ -38,7 +37,6 @@ module Fog
:idempotent => true
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dynamodb/delete_table.rb b/lib/fog/aws/requests/dynamodb/delete_table.rb
index 3a70452..19945ba 100644
--- a/lib/fog/aws/requests/dynamodb/delete_table.rb
+++ b/lib/fog/aws/requests/dynamodb/delete_table.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class DynamoDB
class Real
-
# Delete DynamoDB table
#
# ==== Parameters
@@ -35,7 +34,6 @@ module Fog
:idempotent => true
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dynamodb/describe_table.rb b/lib/fog/aws/requests/dynamodb/describe_table.rb
index be8357a..8d9d794 100644
--- a/lib/fog/aws/requests/dynamodb/describe_table.rb
+++ b/lib/fog/aws/requests/dynamodb/describe_table.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class DynamoDB
class Real
-
# Describe DynamoDB table
#
# ==== Parameters
@@ -37,7 +36,6 @@ module Fog
:idempotent => true
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dynamodb/get_item.rb b/lib/fog/aws/requests/dynamodb/get_item.rb
index d173d88..376cf99 100644
--- a/lib/fog/aws/requests/dynamodb/get_item.rb
+++ b/lib/fog/aws/requests/dynamodb/get_item.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class DynamoDB
class Real
-
# Get DynamoDB item
#
# ==== Parameters
@@ -36,7 +35,6 @@ module Fog
:idempotent => true
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dynamodb/list_tables.rb b/lib/fog/aws/requests/dynamodb/list_tables.rb
index e867405..c9cf7ae 100644
--- a/lib/fog/aws/requests/dynamodb/list_tables.rb
+++ b/lib/fog/aws/requests/dynamodb/list_tables.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class DynamoDB
class Real
-
# List DynamoDB tables
#
# ==== Parameters
@@ -22,7 +21,6 @@ module Fog
:idempotent => true
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dynamodb/put_item.rb b/lib/fog/aws/requests/dynamodb/put_item.rb
index 09fff39..99db4d7 100644
--- a/lib/fog/aws/requests/dynamodb/put_item.rb
+++ b/lib/fog/aws/requests/dynamodb/put_item.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class DynamoDB
class Real
-
# Update DynamoDB item
#
# ==== Parameters
@@ -34,7 +33,6 @@ module Fog
:headers => {'x-amz-target' => 'DynamoDB_20111205.PutItem'}
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dynamodb/query.rb b/lib/fog/aws/requests/dynamodb/query.rb
index 54b80ce..ace8a52 100644
--- a/lib/fog/aws/requests/dynamodb/query.rb
+++ b/lib/fog/aws/requests/dynamodb/query.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class DynamoDB
class Real
-
# Query DynamoDB items
#
# ==== Parameters
@@ -37,7 +36,6 @@ module Fog
:headers => {'x-amz-target' => 'DynamoDB_20111205.Query'}
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dynamodb/scan.rb b/lib/fog/aws/requests/dynamodb/scan.rb
index b5bff68..cc4b761 100644
--- a/lib/fog/aws/requests/dynamodb/scan.rb
+++ b/lib/fog/aws/requests/dynamodb/scan.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class DynamoDB
class Real
-
# Scan DynamoDB items
#
# ==== Parameters
@@ -38,7 +37,6 @@ module Fog
:idempotent => true
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dynamodb/update_item.rb b/lib/fog/aws/requests/dynamodb/update_item.rb
index 167f06c..56140f2 100644
--- a/lib/fog/aws/requests/dynamodb/update_item.rb
+++ b/lib/fog/aws/requests/dynamodb/update_item.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class DynamoDB
class Real
-
# Update DynamoDB item
#
# ==== Parameters
@@ -42,7 +41,6 @@ module Fog
:headers => {'x-amz-target' => 'DynamoDB_20111205.UpdateItem'}
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/dynamodb/update_table.rb b/lib/fog/aws/requests/dynamodb/update_table.rb
index 926a247..658c9f9 100644
--- a/lib/fog/aws/requests/dynamodb/update_table.rb
+++ b/lib/fog/aws/requests/dynamodb/update_table.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class DynamoDB
class Real
-
# Update DynamoDB table throughput
#
# ==== Parameters
@@ -39,7 +38,6 @@ module Fog
:idempotent => true
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/elasticache/authorize_cache_security_group_ingress.rb b/lib/fog/aws/requests/elasticache/authorize_cache_security_group_ingress.rb
index 1e46c39..bf0567c 100644
--- a/lib/fog/aws/requests/elasticache/authorize_cache_security_group_ingress.rb
+++ b/lib/fog/aws/requests/elasticache/authorize_cache_security_group_ingress.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/single_security_group'
# Authorize ingress to a CacheSecurityGroup using EC2 Security Groups
@@ -23,11 +22,9 @@ module Fog
:parser => Fog::Parsers::AWS::Elasticache::SingleSecurityGroup.new
})
end
-
end
class Mock
-
def authorize_cache_security_group_ingress(name, ec2_name, ec2_owner_id)
opts = {
'EC2SecurityGroupName' => ec2_name,
@@ -36,7 +33,7 @@ module Fog
if sec_group = self.data[:security_groups][name]
- if sec_group['EC2SecurityGroups'].detect{|h| h['EC2SecurityGroupName'] == opts['EC2SecurityGroupName']}
+ if sec_group['EC2SecurityGroups'].find{|h| h['EC2SecurityGroupName'] == opts['EC2SecurityGroupName']}
raise Fog::AWS::Elasticache::AuthorizationAlreadyExists.new("AuthorizationAlreadyExists => #{opts['EC2SecurityGroupName']} is alreay defined")
end
sec_group['EC2SecurityGroups'] << opts.merge({'Status' => 'authorizing'})
@@ -53,7 +50,6 @@ module Fog
else
raise Fog::AWS::Elasticache::NotFound.new("CacheSecurityGroupNotFound => #{name} not found")
end
-
end
end
end
diff --git a/lib/fog/aws/requests/elasticache/create_cache_cluster.rb b/lib/fog/aws/requests/elasticache/create_cache_cluster.rb
index d54e4fc..7fcf115 100644
--- a/lib/fog/aws/requests/elasticache/create_cache_cluster.rb
+++ b/lib/fog/aws/requests/elasticache/create_cache_cluster.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/single_cache_cluster'
# creates a cache cluster
#
@@ -28,7 +27,6 @@ module Fog
# * response <~Excon::Response>:
# * body <~Hash>
def create_cache_cluster(id, options = {})
-
req_options = {
'Action' => 'CreateCacheCluster',
'CacheClusterId' => id.strip,
@@ -59,7 +57,6 @@ module Fog
end
request( req_options )
-
end
end
@@ -92,7 +89,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/elasticache/create_cache_parameter_group.rb b/lib/fog/aws/requests/elasticache/create_cache_parameter_group.rb
index ae8ab34..d6754c0 100644
--- a/lib/fog/aws/requests/elasticache/create_cache_parameter_group.rb
+++ b/lib/fog/aws/requests/elasticache/create_cache_parameter_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/single_parameter_group'
# creates a cache parameter group
diff --git a/lib/fog/aws/requests/elasticache/create_cache_security_group.rb b/lib/fog/aws/requests/elasticache/create_cache_security_group.rb
index 05025ab..8f30e1a 100644
--- a/lib/fog/aws/requests/elasticache/create_cache_security_group.rb
+++ b/lib/fog/aws/requests/elasticache/create_cache_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/single_security_group'
# creates a cache security group
@@ -25,7 +24,6 @@ module Fog
class Mock
def create_cache_security_group(name, description = name)
-
if self.data[:security_groups][name]
raise Fog::AWS::Elasticache::IdentifierTaken.new("CacheClusterAlreadyExists => The security group '#{name}' already exists")
end
@@ -46,7 +44,6 @@ module Fog
}
}
)
-
end
end
end
diff --git a/lib/fog/aws/requests/elasticache/create_cache_subnet_group.rb b/lib/fog/aws/requests/elasticache/create_cache_subnet_group.rb
index 45be85e..3554e1a 100644
--- a/lib/fog/aws/requests/elasticache/create_cache_subnet_group.rb
+++ b/lib/fog/aws/requests/elasticache/create_cache_subnet_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/create_cache_subnet_group'
# Creates a cache subnet group
@@ -25,11 +24,9 @@ module Fog
params.merge!(Fog::AWS.indexed_param("SubnetIds.member", Array(subnet_ids)))
request(params)
end
-
end
class Mock
-
def create_cache_subnet_group(name, subnet_ids, description = name)
response = Excon::Response.new
if self.data[:subnet_groups] && self.data[:subnet_groups][name]
@@ -56,11 +53,8 @@ module Fog
'CreateCacheSubnetGroupResult' => { 'CacheSubnetGroup' => data }
}
response
-
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/requests/elasticache/delete_cache_cluster.rb b/lib/fog/aws/requests/elasticache/delete_cache_cluster.rb
index 3883429..4aab675 100644
--- a/lib/fog/aws/requests/elasticache/delete_cache_cluster.rb
+++ b/lib/fog/aws/requests/elasticache/delete_cache_cluster.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/describe_cache_clusters'
# Deletes a Cache Cluster
@@ -19,7 +18,6 @@ module Fog
:parser => Fog::Parsers::AWS::Elasticache::DescribeCacheClusters.new
)
end
-
end
class Mock
@@ -35,7 +33,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/elasticache/delete_cache_parameter_group.rb b/lib/fog/aws/requests/elasticache/delete_cache_parameter_group.rb
index a77efd8..314d492 100644
--- a/lib/fog/aws/requests/elasticache/delete_cache_parameter_group.rb
+++ b/lib/fog/aws/requests/elasticache/delete_cache_parameter_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/base'
# deletes a cache parameter group
diff --git a/lib/fog/aws/requests/elasticache/delete_cache_security_group.rb b/lib/fog/aws/requests/elasticache/delete_cache_security_group.rb
index 87fcc98..93cb7b3 100644
--- a/lib/fog/aws/requests/elasticache/delete_cache_security_group.rb
+++ b/lib/fog/aws/requests/elasticache/delete_cache_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/base'
# deletes a cache security group
diff --git a/lib/fog/aws/requests/elasticache/delete_cache_subnet_group.rb b/lib/fog/aws/requests/elasticache/delete_cache_subnet_group.rb
index 7dfbc42..b818337 100644
--- a/lib/fog/aws/requests/elasticache/delete_cache_subnet_group.rb
+++ b/lib/fog/aws/requests/elasticache/delete_cache_subnet_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/base'
# deletes a cache subnet group
diff --git a/lib/fog/aws/requests/elasticache/describe_cache_clusters.rb b/lib/fog/aws/requests/elasticache/describe_cache_clusters.rb
index c0eef1f..8832b3d 100644
--- a/lib/fog/aws/requests/elasticache/describe_cache_clusters.rb
+++ b/lib/fog/aws/requests/elasticache/describe_cache_clusters.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/describe_cache_clusters'
# Returns a list of Cache Cluster descriptions
@@ -26,7 +25,6 @@ module Fog
:parser => Fog::Parsers::AWS::Elasticache::DescribeCacheClusters.new
})
end
-
end
class Mock
@@ -48,7 +46,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/elasticache/describe_cache_parameter_groups.rb b/lib/fog/aws/requests/elasticache/describe_cache_parameter_groups.rb
index d1864f1..fff5348 100644
--- a/lib/fog/aws/requests/elasticache/describe_cache_parameter_groups.rb
+++ b/lib/fog/aws/requests/elasticache/describe_cache_parameter_groups.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/describe_parameter_groups'
# Returns a list of CacheParameterGroup descriptions
@@ -21,7 +20,6 @@ module Fog
:parser => Fog::Parsers::AWS::Elasticache::DescribeParameterGroups.new
}.merge(options))
end
-
end
class Mock
@@ -38,7 +36,6 @@ module Fog
parameter_set = self.data[:parameter_groups].values
end
-
response.status = 200
response.body = { "CacheParameterGroups" => parameter_set }
diff --git a/lib/fog/aws/requests/elasticache/describe_cache_parameters.rb b/lib/fog/aws/requests/elasticache/describe_cache_parameters.rb
index 99ffc72..a49813d 100644
--- a/lib/fog/aws/requests/elasticache/describe_cache_parameters.rb
+++ b/lib/fog/aws/requests/elasticache/describe_cache_parameters.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/describe_cache_parameters'
# Returns a list of CacheParameterGroup descriptions
@@ -23,7 +22,6 @@ module Fog
:parser => Fog::Parsers::AWS::Elasticache::DescribeCacheParameters.new
})
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elasticache/describe_cache_security_groups.rb b/lib/fog/aws/requests/elasticache/describe_cache_security_groups.rb
index 4b6b5cc..a52ae78 100644
--- a/lib/fog/aws/requests/elasticache/describe_cache_security_groups.rb
+++ b/lib/fog/aws/requests/elasticache/describe_cache_security_groups.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/describe_security_groups'
# Returns a list of CacheSecurityGroup descriptions
@@ -21,12 +20,10 @@ module Fog
:parser => Fog::Parsers::AWS::Elasticache::DescribeSecurityGroups.new
}.merge(options))
end
-
end
class Mock
def describe_cache_security_groups(name = nil, opts={})
-
if name
sec_group_set = [self.data[:security_groups][name]].compact
raise Fog::AWS::Elasticache::NotFound.new("Security Group #{name} not found") if sec_group_set.empty?
@@ -60,7 +57,6 @@ module Fog
}
}
)
-
end
end
end
diff --git a/lib/fog/aws/requests/elasticache/describe_cache_subnet_groups.rb b/lib/fog/aws/requests/elasticache/describe_cache_subnet_groups.rb
index 9634802..cf75454 100644
--- a/lib/fog/aws/requests/elasticache/describe_cache_subnet_groups.rb
+++ b/lib/fog/aws/requests/elasticache/describe_cache_subnet_groups.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/describe_cache_subnet_groups'
# This API returns a list of CacheSubnetGroup descriptions. If a CacheSubnetGroupName is specified, the list will contain only
@@ -30,11 +29,9 @@ module Fog
:parser => Fog::Parsers::AWS::Elasticache::DescribeCacheSubnetGroups.new
}.merge(params))
end
-
end
class Mock
-
def describe_cache_subnet_groups(name = nil, opts = {})
response = Excon::Response.new
@@ -57,7 +54,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/elasticache/describe_engine_default_parameters.rb b/lib/fog/aws/requests/elasticache/describe_engine_default_parameters.rb
index 1184150..bea2561 100644
--- a/lib/fog/aws/requests/elasticache/describe_engine_default_parameters.rb
+++ b/lib/fog/aws/requests/elasticache/describe_engine_default_parameters.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/describe_engine_default_parameters'
# Returns the default engine and system parameter information
@@ -22,7 +21,6 @@ module Fog
:parser => Fog::Parsers::AWS::Elasticache::DescribeEngineDefaultParameters.new
})
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elasticache/describe_events.rb b/lib/fog/aws/requests/elasticache/describe_events.rb
index a030099..28d1f91 100644
--- a/lib/fog/aws/requests/elasticache/describe_events.rb
+++ b/lib/fog/aws/requests/elasticache/describe_events.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/event_list'
# Returns a list of service events
@@ -36,7 +35,6 @@ module Fog
:parser => Fog::Parsers::AWS::Elasticache::EventListParser.new
)
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elasticache/describe_reserved_cache_nodes.rb b/lib/fog/aws/requests/elasticache/describe_reserved_cache_nodes.rb
index cd887ad..ae37ba7 100644
--- a/lib/fog/aws/requests/elasticache/describe_reserved_cache_nodes.rb
+++ b/lib/fog/aws/requests/elasticache/describe_reserved_cache_nodes.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/describe_reserved_cache_nodes'
# Describe all or specified reserved Elasticache nodes
@@ -27,15 +26,12 @@ module Fog
:parser => Fog::Parsers::AWS::Elasticache::DescribeReservedCacheNodes.new
}.merge(params))
end
-
end
class Mock
-
def describe_db_reserved_instances(identifier=nil, opts={})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/aws/requests/elasticache/modify_cache_cluster.rb b/lib/fog/aws/requests/elasticache/modify_cache_cluster.rb
index ec399f7..bd661b7 100644
--- a/lib/fog/aws/requests/elasticache/modify_cache_cluster.rb
+++ b/lib/fog/aws/requests/elasticache/modify_cache_cluster.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/single_cache_cluster'
# Modifies an existing cache cluster
@@ -29,7 +28,7 @@ module Fog
# Construct Cache Security Group parameters in the format:
# CacheSecurityGroupNames.member.N => "security_group_name"
group_names = options[:security_group_names] || []
- sec_group_params = group_names.inject({}) do |group_hash, name|
+ sec_group_params = group_names.reduce({}) do |group_hash, name|
index = group_names.index(name) + 1
group_hash["CacheSecurityGroupNames.member.#{index}"] = name
group_hash
@@ -37,7 +36,7 @@ module Fog
# Construct CacheNodeIdsToRemove parameters in the format:
# CacheNodeIdsToRemove.member.N => "node_id"
node_ids = options[:nodes_to_remove] || []
- node_id_params = node_ids.inject({}) do |node_hash, node_id|
+ node_id_params = node_ids.reduce({}) do |node_hash, node_id|
index = node_ids.index(node_id) + 1
node_hash["CacheNodeIdsToRemove.member.#{index}"] = node_id
node_hash
@@ -57,7 +56,6 @@ module Fog
:parser => Fog::Parsers::AWS::Elasticache::SingleCacheCluster.new
)))
end
-
end
class Mock
@@ -96,7 +94,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/elasticache/modify_cache_parameter_group.rb b/lib/fog/aws/requests/elasticache/modify_cache_parameter_group.rb
index 364b2eb..7585e46 100644
--- a/lib/fog/aws/requests/elasticache/modify_cache_parameter_group.rb
+++ b/lib/fog/aws/requests/elasticache/modify_cache_parameter_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/modify_parameter_group'
# Modifies an existing cache parameter group
@@ -19,7 +18,7 @@ module Fog
# ParameterNameValues.member.N.ParameterName => "param_name"
# ParameterNameValues.member.N.ParameterValue => "param_value"
n = 0 # n is the parameter index
- parameter_changes = new_parameters.inject({}) do |new_args,pair|
+ parameter_changes = new_parameters.reduce({}) do |new_args,pair|
n += 1
new_args["ParameterNameValues.member.#{n}.ParameterName"] = pair[0]
new_args["ParameterNameValues.member.#{n}.ParameterValue"] = pair[1]
@@ -32,7 +31,6 @@ module Fog
:parser => Fog::Parsers::AWS::Elasticache::ModifyParameterGroup.new
))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elasticache/reboot_cache_cluster.rb b/lib/fog/aws/requests/elasticache/reboot_cache_cluster.rb
index b9fa1ed..0ea8d82 100644
--- a/lib/fog/aws/requests/elasticache/reboot_cache_cluster.rb
+++ b/lib/fog/aws/requests/elasticache/reboot_cache_cluster.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/single_cache_cluster'
# Reboots some or all of an existing cache cluster's nodes
@@ -19,7 +18,7 @@ module Fog
# Construct CacheNodeIdsToReboot parameters in the format:
# CacheNodeIdsToReboot.member.N => "node_id"
node_ids = nodes_to_reboot || []
- node_id_params = node_ids.inject({}) do |node_hash, node_id|
+ node_id_params = node_ids.reduce({}) do |node_hash, node_id|
index = node_ids.index(node_id) + 1
node_hash["CacheNodeIdsToReboot.member.#{index}"] = node_id
node_hash
@@ -31,7 +30,6 @@ module Fog
:parser => Fog::Parsers::AWS::Elasticache::SingleCacheCluster.new
))
end
-
end
class Mock
@@ -46,7 +44,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/elasticache/reset_cache_parameter_group.rb b/lib/fog/aws/requests/elasticache/reset_cache_parameter_group.rb
index 6f834de..8dc9d8e 100644
--- a/lib/fog/aws/requests/elasticache/reset_cache_parameter_group.rb
+++ b/lib/fog/aws/requests/elasticache/reset_cache_parameter_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/reset_parameter_group'
# Resets an existing cache parameter group
@@ -18,7 +17,7 @@ module Fog
def reset_cache_parameter_group(id, parameter_names = [])
# Construct Parameter resets in the format:
# ParameterNameValues.member.N => "param_name"
- parameter_changes = parameter_names.inject({}) do |new_args, param|
+ parameter_changes = parameter_names.reduce({}) do |new_args, param|
index = parameter_names.index(param) + 1
new_args["ParameterNameValues.member.#{index}"] = param
new_args
@@ -33,7 +32,6 @@ module Fog
:parser => Fog::Parsers::AWS::Elasticache::ResetParameterGroup.new
))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elasticache/revoke_cache_security_group_ingress.rb b/lib/fog/aws/requests/elasticache/revoke_cache_security_group_ingress.rb
index 7607b58..31bd39c 100644
--- a/lib/fog/aws/requests/elasticache/revoke_cache_security_group_ingress.rb
+++ b/lib/fog/aws/requests/elasticache/revoke_cache_security_group_ingress.rb
@@ -3,7 +3,6 @@ module Fog
module AWS
class Elasticache
class Real
-
require 'fog/aws/parsers/elasticache/single_security_group'
# Revoke ingress to a CacheSecurityGroup using EC2 Security Groups
@@ -24,7 +23,6 @@ module Fog
:parser => Fog::Parsers::AWS::Elasticache::SingleSecurityGroup.new
})
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elb/apply_security_groups_to_load_balancer.rb b/lib/fog/aws/requests/elb/apply_security_groups_to_load_balancer.rb
index e1b4459..b01a2ae 100644
--- a/lib/fog/aws/requests/elb/apply_security_groups_to_load_balancer.rb
+++ b/lib/fog/aws/requests/elb/apply_security_groups_to_load_balancer.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/apply_security_groups_to_load_balancer'
# Sets the security groups for an ELB in VPC
@@ -27,12 +26,10 @@ module Fog
}.merge!(params))
end
- alias :apply_security_groups :apply_security_groups_to_load_balancer
-
+ alias_method :apply_security_groups, :apply_security_groups_to_load_balancer
end
class Mock
-
def apply_security_groups_to_load_balancer(security_group_ids, lb_name)
raise Fog::AWS::ELB::NotFound unless load_balancer = self.data[:load_balancers][lb_name]
@@ -54,7 +51,7 @@ module Fog
response
end
- alias :apply_security_groups :apply_security_groups_to_load_balancer
+ alias_method :apply_security_groups, :apply_security_groups_to_load_balancer
end
end
end
diff --git a/lib/fog/aws/requests/elb/attach_load_balancer_to_subnets.rb b/lib/fog/aws/requests/elb/attach_load_balancer_to_subnets.rb
index a277c15..ad2de97 100644
--- a/lib/fog/aws/requests/elb/attach_load_balancer_to_subnets.rb
+++ b/lib/fog/aws/requests/elb/attach_load_balancer_to_subnets.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/attach_load_balancer_to_subnets'
# Enable a subnet for an existing ELB
@@ -27,12 +26,10 @@ module Fog
}.merge!(params))
end
- alias :enable_subnets :attach_load_balancer_to_subnets
-
+ alias_method :enable_subnets, :attach_load_balancer_to_subnets
end
class Mock
-
def attach_load_balancer_to_subnets(subnet_ids, lb_name)
raise Fog::AWS::ELB::NotFound unless load_balancer = self.data[:load_balancers][lb_name]
@@ -54,7 +51,7 @@ module Fog
response
end
- alias :enable_subnets :attach_load_balancer_to_subnets
+ alias_method :enable_subnets, :attach_load_balancer_to_subnets
end
end
end
diff --git a/lib/fog/aws/requests/elb/configure_health_check.rb b/lib/fog/aws/requests/elb/configure_health_check.rb
index f5dac0c..6ad8d33 100644
--- a/lib/fog/aws/requests/elb/configure_health_check.rb
+++ b/lib/fog/aws/requests/elb/configure_health_check.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/configure_health_check'
# Enables the client to define an application healthcheck for the instances.
@@ -34,7 +33,6 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::ConfigureHealthCheck.new
}.merge!(params))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elb/create_app_cookie_stickiness_policy.rb b/lib/fog/aws/requests/elb/create_app_cookie_stickiness_policy.rb
index f79e545..fe203de 100644
--- a/lib/fog/aws/requests/elb/create_app_cookie_stickiness_policy.rb
+++ b/lib/fog/aws/requests/elb/create_app_cookie_stickiness_policy.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/empty'
# Create an app cookie stickiness policy
@@ -26,7 +25,6 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::Empty.new
}.merge!(params))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elb/create_lb_cookie_stickiness_policy.rb b/lib/fog/aws/requests/elb/create_lb_cookie_stickiness_policy.rb
index 6afb734..985ef57 100644
--- a/lib/fog/aws/requests/elb/create_lb_cookie_stickiness_policy.rb
+++ b/lib/fog/aws/requests/elb/create_lb_cookie_stickiness_policy.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/empty'
# Create a Load Balancer Cookie Stickiness Policy
@@ -28,7 +27,6 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::Empty.new
}.merge!(params))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elb/create_load_balancer.rb b/lib/fog/aws/requests/elb/create_load_balancer.rb
index 9704493..2f6e4f4 100644
--- a/lib/fog/aws/requests/elb/create_load_balancer.rb
+++ b/lib/fog/aws/requests/elb/create_load_balancer.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/create_load_balancer'
# Create a new Elastic Load Balancer
@@ -61,7 +60,7 @@ module Fog
response = Excon::Response.new
response.status = 200
- raise Fog::AWS::ELB::IdentifierTaken if self.data[:load_balancers].has_key? lb_name
+ raise Fog::AWS::ELB::IdentifierTaken if self.data[:load_balancers].key? lb_name
certificate_ids = Fog::AWS::IAM::Mock.data[@aws_access_key_id][:server_certificates].map {|n, c| c['Arn'] }
@@ -76,28 +75,77 @@ module Fog
availability_zones = [*availability_zones].compact
region = availability_zones.empty? ? "us-east-1" : availability_zones.first.gsub(/[a-z]$/, '')
- supported_platforms = Fog::Compute::AWS::Mock.data[region][@aws_access_key_id][:account_attributes].detect { |h| h["attributeName"] == "supported-platforms" }["values"]
- security_group = if supported_platforms.include?("EC2")
- Fog::Compute::AWS::Mock.data[region][@aws_access_key_id][:security_groups]['amazon-elb-sg']
+ supported_platforms = Fog::Compute::AWS::Mock.data[region][@aws_access_key_id][:account_attributes].find { |h| h["attributeName"] == "supported-platforms" }["values"]
+ subnet_ids = options[:subnet_ids] || []
+ subnets = Fog::Compute::AWS::Mock.data[region][@aws_access_key_id][:subnets].select {|e| subnet_ids.include?(e["subnetId"]) }
+
+ # http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/default-vpc.html
+ elb_location = if supported_platforms.include?("EC2")
+ if subnet_ids.empty?
+ 'EC2-Classic'
+ else
+ 'EC2-VPC'
+ end
+ else
+ if subnet_ids.empty?
+ 'EC2-VPC-Default'
else
- if default_sg = Fog::Compute::AWS::Mock.data[region][@aws_access_key_id][:security_groups].values.detect { |sg| sg['groupName'] =~ /default_elb/ }
- default_sg
- else
- default_sg_name = "default_elb_#{Fog::Mock.random_hex(6)}"
+ 'VPC'
+ end
+ end
+
+ security_group = case elb_location
+ when 'EC2-Classic'
+ Fog::Compute::AWS::Mock.data[region][@aws_access_key_id][:security_groups]['amazon-elb-sg']
+ when 'EC2-VPC-Default'
+ # find or create default vpc
+ compute = Fog::Compute::AWS::new(:aws_access_key_id => @aws_access_key_id, :aws_secret_access_key => @aws_secret_access_key)
+ unless vpc = compute.vpcs.all.first
+ vpc = compute.vpcs.create('cidr_block' => '10.0.0.0/24')
+ end
+
+ default_sg = Fog::Compute::AWS::Mock.data[region][@aws_access_key_id][:security_groups].values.find { |sg|
+ sg['groupName'] =~ /^default_elb/ &&
+ sg["vpcId"] == vpc.id
+ }
+
+ unless default_sg
default_sg = {
- 'groupDescription' => 'default elb security group',
- 'groupName' => default_sg_name,
- 'groupId' => Fog::AWS::Mock.security_group_id,
- 'ipPermissionsEgress' => [],
- 'ipPermissions' => [],
- 'ownerId' => self.data[:owner_id]
- }
- Fog::Compute::AWS::Mock.data[region][@aws_access_key_id][:security_groups][default_sg_name] = default_sg
+ 'groupDescription' => 'default_elb security group',
+ 'groupName' => "default_elb_#{Fog::Mock.random_hex(6)}",
+ 'groupId' => Fog::AWS::Mock.security_group_id,
+ 'ipPermissionsEgress' => [],
+ 'ipPermissions' => [],
+ 'ownerId' => self.data[:owner_id],
+ 'vpcId' => vpc.id
+ }
+ Fog::Compute::AWS::Mock.data[region][@aws_access_key_id][:security_groups]['default'] = default_sg
end
+
default_sg
- end
+ when 'EC2-VPC'
+ # find or create default vpc security group
+ vpc_id = subnets.first["vpcId"]
+ default_sg = Fog::Compute::AWS::Mock.data[region][@aws_access_key_id][:security_groups].values.find { |sg|
+ sg['groupName'] == 'default' &&
+ sg["vpcId"] == vpc_id
+ }
+ unless default_sg
+ default_sg = {
+ 'groupDescription' => 'default elb security group',
+ 'groupName' => 'default',
+ 'groupId' => Fog::AWS::Mock.security_group_id,
+ 'ipPermissionsEgress' => [],
+ 'ipPermissions' => [],
+ 'ownerId' => self.data[:owner_id],
+ 'vpcId' => vpc_id
+ }
+ Fog::Compute::AWS::Mock.data[region][@aws_access_key_id][:security_groups]['default'] = default_sg
+ end
+ default_sg
+ end
self.data[:load_balancers][lb_name] = {
'AvailabilityZones' => availability_zones,
@@ -122,7 +170,10 @@ module Fog
},
'Instances' => [],
'ListenerDescriptions' => listeners,
- 'LoadBalancerAttributes' => {'CrossZoneLoadBalancing' => {'Enabled' => false}},
+ 'LoadBalancerAttributes' => {
+ 'ConnectionDraining' => {'Enabled' => false, 'Timeout' => 300},
+ 'CrossZoneLoadBalancing' => {'Enabled' => false}
+ },
'LoadBalancerName' => lb_name,
'Policies' => {
'AppCookieStickinessPolicies' => [],
diff --git a/lib/fog/aws/requests/elb/create_load_balancer_listeners.rb b/lib/fog/aws/requests/elb/create_load_balancer_listeners.rb
index 27e5a28..9e28a75 100644
--- a/lib/fog/aws/requests/elb/create_load_balancer_listeners.rb
+++ b/lib/fog/aws/requests/elb/create_load_balancer_listeners.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/empty'
# Create Elastic Load Balancer Listeners
@@ -48,7 +47,6 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::Empty.new
}.merge!(params))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elb/create_load_balancer_policy.rb b/lib/fog/aws/requests/elb/create_load_balancer_policy.rb
index 968bbc3..5e4982d 100644
--- a/lib/fog/aws/requests/elb/create_load_balancer_policy.rb
+++ b/lib/fog/aws/requests/elb/create_load_balancer_policy.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/empty'
# Create Elastic Load Balancer Policy
@@ -40,7 +39,6 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::Empty.new
}.merge!(params))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elb/delete_load_balancer.rb b/lib/fog/aws/requests/elb/delete_load_balancer.rb
index 802127e..fec9187 100644
--- a/lib/fog/aws/requests/elb/delete_load_balancer.rb
+++ b/lib/fog/aws/requests/elb/delete_load_balancer.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/delete_load_balancer'
# Delete an existing Elastic Load Balancer
@@ -26,7 +25,6 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::DeleteLoadBalancer.new
})
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elb/delete_load_balancer_listeners.rb b/lib/fog/aws/requests/elb/delete_load_balancer_listeners.rb
index 902862a..e8bc8f3 100644
--- a/lib/fog/aws/requests/elb/delete_load_balancer_listeners.rb
+++ b/lib/fog/aws/requests/elb/delete_load_balancer_listeners.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/empty'
# Delet Elastic Load Balancer Listeners
@@ -24,7 +23,6 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::Empty.new
}.merge!(params))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elb/delete_load_balancer_policy.rb b/lib/fog/aws/requests/elb/delete_load_balancer_policy.rb
index e5d0b40..7d5fd13 100644
--- a/lib/fog/aws/requests/elb/delete_load_balancer_policy.rb
+++ b/lib/fog/aws/requests/elb/delete_load_balancer_policy.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/empty'
# Delete a Load Balancer Stickiness Policy
@@ -24,7 +23,6 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::Empty.new
}.merge!(params))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elb/deregister_instances_from_load_balancer.rb b/lib/fog/aws/requests/elb/deregister_instances_from_load_balancer.rb
index cc30020..b59ac48 100644
--- a/lib/fog/aws/requests/elb/deregister_instances_from_load_balancer.rb
+++ b/lib/fog/aws/requests/elb/deregister_instances_from_load_balancer.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/deregister_instances_from_load_balancer'
# Deregister an instance from an existing ELB
@@ -28,8 +27,7 @@ module Fog
}.merge!(params))
end
- alias :deregister_instances :deregister_instances_from_load_balancer
-
+ alias_method :deregister_instances, :deregister_instances_from_load_balancer
end
class Mock
@@ -56,7 +54,7 @@ module Fog
response
end
- alias :deregister_instances :deregister_instances_from_load_balancer
+ alias_method :deregister_instances, :deregister_instances_from_load_balancer
end
end
end
diff --git a/lib/fog/aws/requests/elb/describe_instance_health.rb b/lib/fog/aws/requests/elb/describe_instance_health.rb
index f24bfd6..1dd6312 100644
--- a/lib/fog/aws/requests/elb/describe_instance_health.rb
+++ b/lib/fog/aws/requests/elb/describe_instance_health.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/describe_instance_health'
# Get health status for one or more instances on an existing ELB
@@ -30,7 +29,6 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::DescribeInstanceHealth.new
}.merge!(params))
end
-
end
class Mock
@@ -38,7 +36,7 @@ module Fog
raise Fog::AWS::ELB::NotFound unless load_balancer = self.data[:load_balancers][lb_name]
instance_ids = [*instance_ids]
- instance_ids = load_balancer['Instances'].collect { |i| i['InstanceId'] } unless instance_ids.any?
+ instance_ids = load_balancer['Instances'].map { |i| i['InstanceId'] } unless instance_ids.any?
data = instance_ids.map do |id|
unless Fog::Compute::AWS::Mock.data[@region][@aws_access_key_id][:instances][id]
raise Fog::AWS::ELB::InvalidInstance
diff --git a/lib/fog/aws/requests/elb/describe_load_balancer_attributes.rb b/lib/fog/aws/requests/elb/describe_load_balancer_attributes.rb
index 8eeec0b..8218592 100644
--- a/lib/fog/aws/requests/elb/describe_load_balancer_attributes.rb
+++ b/lib/fog/aws/requests/elb/describe_load_balancer_attributes.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/describe_load_balancer_attributes'
# Describe the load balancer attributes
@@ -17,6 +16,9 @@ module Fog
# * 'RequestId'<~String> - Id of request
# * 'DescribeLoadBalancerAttributesResult'<~Hash>:
# * 'LoadBalancerAttributes'<~Hash>
+ # * 'ConnectionDraining'<~Hash>
+ # * 'Enabled'<~Boolean> - whether connection draining is enabled
+ # * 'Timeout'<~Integer> - max time (in seconds) to keep existing conns open before deregistering instances.
# * 'CrossZoneLoadBalancing'<~Hash>
# * 'Enabled'<~Boolean> - whether crosszone load balancing is enabled
def describe_load_balancer_attributes(lb_name)
@@ -26,7 +28,6 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::DescribeLoadBalancerAttributes.new
})
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elb/describe_load_balancer_policies.rb b/lib/fog/aws/requests/elb/describe_load_balancer_policies.rb
index 28214ef..5f324ff 100644
--- a/lib/fog/aws/requests/elb/describe_load_balancer_policies.rb
+++ b/lib/fog/aws/requests/elb/describe_load_balancer_policies.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/describe_load_balancer_policies'
# Describe all or specified load balancer policies
@@ -31,7 +30,6 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::DescribeLoadBalancerPolicies.new
}.merge!(params))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elb/describe_load_balancer_policy_types.rb b/lib/fog/aws/requests/elb/describe_load_balancer_policy_types.rb
index 1bf9962..498b3a8 100644
--- a/lib/fog/aws/requests/elb/describe_load_balancer_policy_types.rb
+++ b/lib/fog/aws/requests/elb/describe_load_balancer_policy_types.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/describe_load_balancer_policy_types'
# Describe all or specified load balancer policy types
@@ -32,7 +31,6 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::DescribeLoadBalancerPolicyTypes.new
}.merge!(params))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elb/describe_load_balancers.rb b/lib/fog/aws/requests/elb/describe_load_balancers.rb
index 9c34fdd..33b4807 100644
--- a/lib/fog/aws/requests/elb/describe_load_balancers.rb
+++ b/lib/fog/aws/requests/elb/describe_load_balancers.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/describe_load_balancers'
# Describe all or specified load balancers
@@ -64,7 +63,6 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::DescribeLoadBalancers.new
}.merge!(options))
end
-
end
class Mock
@@ -105,13 +103,13 @@ module Fog
'DescribeLoadBalancersResult' => {
'LoadBalancerDescriptions' => load_balancers.map do |lb|
lb['Instances'] = lb['Instances'].map { |i| i['InstanceId'] }
- lb['Policies'] = lb['Policies']['Proper'].inject({'AppCookieStickinessPolicies' => [], 'LBCookieStickinessPolicies' => [], 'OtherPolicies' => []}) { |m, policy|
+ lb['Policies'] = lb['Policies']['Proper'].reduce({'AppCookieStickinessPolicies' => [], 'LBCookieStickinessPolicies' => [], 'OtherPolicies' => []}) { |m, policy|
case policy['PolicyTypeName']
when 'AppCookieStickinessPolicyType'
- cookie_name = policy['PolicyAttributeDescriptions'].detect{|h| h['AttributeName'] == 'CookieName'}['AttributeValue']
+ cookie_name = policy['PolicyAttributeDescriptions'].find{|h| h['AttributeName'] == 'CookieName'}['AttributeValue']
m['AppCookieStickinessPolicies'] << { 'PolicyName' => policy['PolicyName'], 'CookieName' => cookie_name }
when 'LBCookieStickinessPolicyType'
- cookie_expiration_period = policy['PolicyAttributeDescriptions'].detect{|h| h['AttributeName'] == 'CookieExpirationPeriod'}['AttributeValue'].to_i
+ cookie_expiration_period = policy['PolicyAttributeDescriptions'].find{|h| h['AttributeName'] == 'CookieExpirationPeriod'}['AttributeValue'].to_i
lb_policy = { 'PolicyName' => policy['PolicyName'] }
lb_policy['CookieExpirationPeriod'] = cookie_expiration_period if cookie_expiration_period > 0
m['LBCookieStickinessPolicies'] << lb_policy
diff --git a/lib/fog/aws/requests/elb/detach_load_balancer_from_subnets.rb b/lib/fog/aws/requests/elb/detach_load_balancer_from_subnets.rb
index 592bb44..c92aa37 100644
--- a/lib/fog/aws/requests/elb/detach_load_balancer_from_subnets.rb
+++ b/lib/fog/aws/requests/elb/detach_load_balancer_from_subnets.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/detach_load_balancer_from_subnets'
# Disable a subnet for an existing ELB
@@ -27,12 +26,10 @@ module Fog
}.merge!(params))
end
- alias :disable_subnets :detach_load_balancer_from_subnets
-
+ alias_method :disable_subnets, :detach_load_balancer_from_subnets
end
class Mock
-
def detach_load_balancer_from_subnets(subnet_ids, lb_name)
raise Fog::AWS::ELB::NotFound unless load_balancer = self.data[:load_balancers][lb_name]
@@ -54,7 +51,7 @@ module Fog
response
end
- alias :disable_subnets :detach_load_balancer_from_subnets
+ alias_method :disable_subnets, :detach_load_balancer_from_subnets
end
end
end
diff --git a/lib/fog/aws/requests/elb/disable_availability_zones_for_load_balancer.rb b/lib/fog/aws/requests/elb/disable_availability_zones_for_load_balancer.rb
index d3d0937..6556d15 100644
--- a/lib/fog/aws/requests/elb/disable_availability_zones_for_load_balancer.rb
+++ b/lib/fog/aws/requests/elb/disable_availability_zones_for_load_balancer.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/disable_availability_zones_for_load_balancer'
# Disable an availability zone for an existing ELB
@@ -27,8 +26,7 @@ module Fog
}.merge!(params))
end
- alias :disable_zones :disable_availability_zones_for_load_balancer
-
+ alias_method :disable_zones, :disable_availability_zones_for_load_balancer
end
class Mock
@@ -52,7 +50,7 @@ module Fog
response
end
- alias :disable_zones :disable_availability_zones_for_load_balancer
+ alias_method :disable_zones, :disable_availability_zones_for_load_balancer
end
end
end
diff --git a/lib/fog/aws/requests/elb/enable_availability_zones_for_load_balancer.rb b/lib/fog/aws/requests/elb/enable_availability_zones_for_load_balancer.rb
index 056f6a0..d830d25 100644
--- a/lib/fog/aws/requests/elb/enable_availability_zones_for_load_balancer.rb
+++ b/lib/fog/aws/requests/elb/enable_availability_zones_for_load_balancer.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/enable_availability_zones_for_load_balancer'
# Enable an availability zone for an existing ELB
@@ -27,12 +26,10 @@ module Fog
}.merge!(params))
end
- alias :enable_zones :enable_availability_zones_for_load_balancer
-
+ alias_method :enable_zones, :enable_availability_zones_for_load_balancer
end
class Mock
-
def enable_availability_zones_for_load_balancer(availability_zones, lb_name)
raise Fog::AWS::ELB::NotFound unless load_balancer = self.data[:load_balancers][lb_name]
@@ -54,7 +51,7 @@ module Fog
response
end
- alias :enable_zones :enable_availability_zones_for_load_balancer
+ alias_method :enable_zones, :enable_availability_zones_for_load_balancer
end
end
end
diff --git a/lib/fog/aws/requests/elb/modify_load_balancer_attributes.rb b/lib/fog/aws/requests/elb/modify_load_balancer_attributes.rb
index 8b51ce9..37ac332 100644
--- a/lib/fog/aws/requests/elb/modify_load_balancer_attributes.rb
+++ b/lib/fog/aws/requests/elb/modify_load_balancer_attributes.rb
@@ -2,19 +2,20 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/empty'
-
# Sets attributes of the load balancer
#
- # Currently the only attribute that can be set is whether CrossZoneLoadBalancing
- # is enabled
+ # Currently the only attributes that can be set are whether CrossZoneLoadBalancing
+ # or ConnectionDraining are enabled. You can also set the Timeout for ConnectionDraining.
#
# http://docs.aws.amazon.com/ElasticLoadBalancing/latest/APIReference/API_ModifyLoadBalancerAttributes.html
# ==== Parameters
# * lb_name<~String> - Name of the ELB
# * options<~Hash>
+ # * 'ConnectionDraining'<~Hash>:
+ # * 'Enabled'<~Boolean> whether to enable connection draining
+ # * 'Timeout'<~Integer> max time to keep existing conns open before deregistering instances
# * 'CrossZoneLoadBalancing'<~Hash>:
# * 'Enabled'<~Boolean> whether to enable cross zone load balancing
#
@@ -31,14 +32,13 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::Empty.new
))
end
-
end
class Mock
def modify_load_balancer_attributes(lb_name, attributes)
raise Fog::AWS::ELB::NotFound unless load_balancer = self.data[:load_balancers][lb_name]
- if attributes['CrossZoneLoadBalancing']
+ if attributes['CrossZoneLoadBalancing'] || attributes['ConnectionDraining']
load_balancer['LoadBalancerAttributes'].merge! attributes
end
diff --git a/lib/fog/aws/requests/elb/register_instances_with_load_balancer.rb b/lib/fog/aws/requests/elb/register_instances_with_load_balancer.rb
index ac0e2e0..f78aea2 100644
--- a/lib/fog/aws/requests/elb/register_instances_with_load_balancer.rb
+++ b/lib/fog/aws/requests/elb/register_instances_with_load_balancer.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/register_instances_with_load_balancer'
# Register an instance with an existing ELB
@@ -28,8 +27,7 @@ module Fog
}.merge!(params))
end
- alias :register_instances :register_instances_with_load_balancer
-
+ alias_method :register_instances, :register_instances_with_load_balancer
end
class Mock
@@ -57,7 +55,7 @@ module Fog
response
end
- alias :register_instances :register_instances_with_load_balancer
+ alias_method :register_instances, :register_instances_with_load_balancer
end
end
end
diff --git a/lib/fog/aws/requests/elb/set_load_balancer_listener_ssl_certificate.rb b/lib/fog/aws/requests/elb/set_load_balancer_listener_ssl_certificate.rb
index bb7289d..634ac44 100644
--- a/lib/fog/aws/requests/elb/set_load_balancer_listener_ssl_certificate.rb
+++ b/lib/fog/aws/requests/elb/set_load_balancer_listener_ssl_certificate.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/empty'
# Sets the certificate that terminates the specified listener's SSL
@@ -30,7 +29,6 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::Empty.new
})
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/elb/set_load_balancer_policies_for_backend_server.rb b/lib/fog/aws/requests/elb/set_load_balancer_policies_for_backend_server.rb
index 9319360..43d1859 100644
--- a/lib/fog/aws/requests/elb/set_load_balancer_policies_for_backend_server.rb
+++ b/lib/fog/aws/requests/elb/set_load_balancer_policies_for_backend_server.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/empty'
# Replaces the current set of policies associated with a port on which the back-end server is listening with a new set of policies.
diff --git a/lib/fog/aws/requests/elb/set_load_balancer_policies_of_listener.rb b/lib/fog/aws/requests/elb/set_load_balancer_policies_of_listener.rb
index 1fb9a31..73054aa 100644
--- a/lib/fog/aws/requests/elb/set_load_balancer_policies_of_listener.rb
+++ b/lib/fog/aws/requests/elb/set_load_balancer_policies_of_listener.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class ELB
class Real
-
require 'fog/aws/parsers/elb/empty'
# Associates, updates, or disables a policy with a listener on the
@@ -36,7 +35,6 @@ module Fog
:parser => Fog::Parsers::AWS::ELB::Empty.new
}.merge!(params))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/emr/add_instance_groups.rb b/lib/fog/aws/requests/emr/add_instance_groups.rb
index 01969c4..7e26cb1 100644
--- a/lib/fog/aws/requests/emr/add_instance_groups.rb
+++ b/lib/fog/aws/requests/emr/add_instance_groups.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class EMR
class Real
-
require 'fog/aws/parsers/emr/add_instance_groups'
# adds an instance group to a running cluster
@@ -21,7 +20,6 @@ module Fog
# * response<~Excon::Response>:
# * body<~Hash>:
def add_instance_groups(job_flow_id, options={})
-
if instance_groups = options.delete('InstanceGroups')
options.merge!(Fog::AWS.indexed_param('InstanceGroups.member.%d', [*instance_groups]))
end
@@ -32,14 +30,12 @@ module Fog
:parser => Fog::Parsers::AWS::EMR::AddInstanceGroups.new,
}.merge(options))
end
-
end
class Mock
def add_instance_groups(job_flow_id, options={})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/aws/requests/emr/add_job_flow_steps.rb b/lib/fog/aws/requests/emr/add_job_flow_steps.rb
index 8fe6ae2..60319ed 100644
--- a/lib/fog/aws/requests/emr/add_job_flow_steps.rb
+++ b/lib/fog/aws/requests/emr/add_job_flow_steps.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class EMR
class Real
-
require 'fog/aws/parsers/emr/add_job_flow_steps'
# adds new steps to a running job flow.
@@ -24,7 +23,6 @@ module Fog
# * response<~Excon::Response>:
# * body<~Hash>:
def add_job_flow_steps(job_flow_id, options={})
-
if steps = options.delete('Steps')
options.merge!(Fog::AWS.serialize_keys('Steps', steps))
end
@@ -38,11 +36,9 @@ module Fog
end
class Mock
-
def add_job_flow_steps(db_name, options={})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/aws/requests/emr/describe_job_flows.rb b/lib/fog/aws/requests/emr/describe_job_flows.rb
index de12b21..9a41fca 100644
--- a/lib/fog/aws/requests/emr/describe_job_flows.rb
+++ b/lib/fog/aws/requests/emr/describe_job_flows.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class EMR
class Real
-
require 'fog/aws/parsers/emr/describe_job_flows'
# returns a list of job flows that match all of the supplied parameters.
@@ -80,7 +79,6 @@ module Fog
# * 'Value'<~String> - The value part of the identified key
# * 'Name'<~String> - The name of the job flow step
def describe_job_flows(options={})
-
if job_ids = options.delete('JobFlowIds')
options.merge!(Fog::AWS.serialize_keys('JobFlowIds', job_ids))
end
@@ -97,11 +95,9 @@ module Fog
end
class Mock
-
def describe_job_flows(db_name, options={})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/aws/requests/emr/modify_instance_groups.rb b/lib/fog/aws/requests/emr/modify_instance_groups.rb
index cca9daf..5adb73f 100644
--- a/lib/fog/aws/requests/emr/modify_instance_groups.rb
+++ b/lib/fog/aws/requests/emr/modify_instance_groups.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class EMR
class Real
-
require 'fog/aws/parsers/emr/modify_instance_groups'
# modifies the number of nodes and configuration settings of an instance group..
@@ -16,7 +15,6 @@ module Fog
# * response<~Excon::Response>:
# * body<~Hash>
def modify_instance_groups(options={})
-
if job_ids = options.delete('InstanceGroups')
options.merge!(Fog::AWS.serialize_keys('InstanceGroups', job_ids))
end
@@ -29,11 +27,9 @@ module Fog
end
class Mock
-
def modify_instance_groups(options={})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/aws/requests/emr/run_job_flow.rb b/lib/fog/aws/requests/emr/run_job_flow.rb
index 8c994d1..21156a6 100644
--- a/lib/fog/aws/requests/emr/run_job_flow.rb
+++ b/lib/fog/aws/requests/emr/run_job_flow.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class EMR
class Real
-
require 'fog/aws/parsers/emr/run_job_flow'
# creates and starts running a new job flow
@@ -48,7 +47,6 @@ module Fog
# * response<~Excon::Response>:
# * body<~Hash>:
def run_job_flow(name, options={})
-
if bootstrap_actions = options.delete('BootstrapActions')
options.merge!(Fog::AWS.serialize_keys('BootstrapActions', bootstrap_actions))
end
@@ -97,11 +95,9 @@ module Fog
end
class Mock
-
def run_job_flow(db_name, options={})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/aws/requests/emr/set_termination_protection.rb b/lib/fog/aws/requests/emr/set_termination_protection.rb
index 4f90f7c..85ddd17 100644
--- a/lib/fog/aws/requests/emr/set_termination_protection.rb
+++ b/lib/fog/aws/requests/emr/set_termination_protection.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class EMR
class Real
-
require 'fog/aws/parsers/emr/set_termination_protection'
# locks a job flow so the Amazon EC2 instances in the cluster cannot be terminated by user intervention.
@@ -15,7 +14,6 @@ module Fog
# * response<~Excon::Response>:
# * body<~Hash>
def set_termination_protection(is_protected, options={})
-
if job_ids = options.delete('JobFlowIds')
options.merge!(Fog::AWS.serialize_keys('JobFlowIds', job_ids))
end
@@ -28,11 +26,9 @@ module Fog
end
class Mock
-
def set_termination_protection(db_name, options={})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/aws/requests/emr/terminate_job_flows.rb b/lib/fog/aws/requests/emr/terminate_job_flows.rb
index 5616c90..4a67cbf 100644
--- a/lib/fog/aws/requests/emr/terminate_job_flows.rb
+++ b/lib/fog/aws/requests/emr/terminate_job_flows.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class EMR
class Real
-
require 'fog/aws/parsers/emr/terminate_job_flows'
# shuts a list of job flows down.
@@ -14,7 +13,6 @@ module Fog
# * response<~Excon::Response>:
# * body<~Hash>
def terminate_job_flows(options={})
-
if job_ids = options.delete('JobFlowIds')
options.merge!(Fog::AWS.serialize_keys('JobFlowIds', job_ids))
end
@@ -26,11 +24,9 @@ module Fog
end
class Mock
-
def terminate_job_flows(db_name, options={})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/abort_multipart_upload.rb b/lib/fog/aws/requests/glacier/abort_multipart_upload.rb
index a9903af..97c8ec0 100644
--- a/lib/fog/aws/requests/glacier/abort_multipart_upload.rb
+++ b/lib/fog/aws/requests/glacier/abort_multipart_upload.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# Abort an upload
#
# ==== Parameters
@@ -29,7 +28,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/complete_multipart_upload.rb b/lib/fog/aws/requests/glacier/complete_multipart_upload.rb
index 56f27b6..293d146 100644
--- a/lib/fog/aws/requests/glacier/complete_multipart_upload.rb
+++ b/lib/fog/aws/requests/glacier/complete_multipart_upload.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# Complete an upload
#
# ==== Parameters
@@ -36,7 +35,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/create_archive.rb b/lib/fog/aws/requests/glacier/create_archive.rb
index 92bd627..f1cabbb 100644
--- a/lib/fog/aws/requests/glacier/create_archive.rb
+++ b/lib/fog/aws/requests/glacier/create_archive.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# Upload an archive
#
# ==== Parameters
@@ -37,7 +36,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/create_vault.rb b/lib/fog/aws/requests/glacier/create_vault.rb
index d0994b9..fa1481a 100644
--- a/lib/fog/aws/requests/glacier/create_vault.rb
+++ b/lib/fog/aws/requests/glacier/create_vault.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# This operation creates a new vault with the specified name. .
#
# ==== Parameters
@@ -28,7 +27,6 @@ module Fog
}))
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/delete_archive.rb b/lib/fog/aws/requests/glacier/delete_archive.rb
index c6cb2ca..a873b13 100644
--- a/lib/fog/aws/requests/glacier/delete_archive.rb
+++ b/lib/fog/aws/requests/glacier/delete_archive.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# Delete an archive
#
# ==== Parameters
@@ -29,7 +28,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/delete_vault.rb b/lib/fog/aws/requests/glacier/delete_vault.rb
index 6e0a964..5a15a7b 100644
--- a/lib/fog/aws/requests/glacier/delete_vault.rb
+++ b/lib/fog/aws/requests/glacier/delete_vault.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# Delete a vault. Amazon Glacier will delete a vault only if there are no archives in the vault as per the last inventory
# and there have been no writes to the vault since the last inventory
#
@@ -28,7 +27,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/delete_vault_notification_configuration.rb b/lib/fog/aws/requests/glacier/delete_vault_notification_configuration.rb
index f230e21..740f0fd 100644
--- a/lib/fog/aws/requests/glacier/delete_vault_notification_configuration.rb
+++ b/lib/fog/aws/requests/glacier/delete_vault_notification_configuration.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# Delete vault's notification configuration
#
# ==== Parameters
@@ -27,7 +26,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/describe_job.rb b/lib/fog/aws/requests/glacier/describe_job.rb
index caa74bd..c924c16 100644
--- a/lib/fog/aws/requests/glacier/describe_job.rb
+++ b/lib/fog/aws/requests/glacier/describe_job.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# Complete an upload
#
# ==== Parameters
@@ -29,7 +28,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/describe_vault.rb b/lib/fog/aws/requests/glacier/describe_vault.rb
index c3a26c5..edb5eed 100644
--- a/lib/fog/aws/requests/glacier/describe_vault.rb
+++ b/lib/fog/aws/requests/glacier/describe_vault.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# This operation returns information about a vault
#
# ==== Parameters
@@ -28,7 +27,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/get_job_output.rb b/lib/fog/aws/requests/glacier/get_job_output.rb
index 7f35359..c89f987 100644
--- a/lib/fog/aws/requests/glacier/get_job_output.rb
+++ b/lib/fog/aws/requests/glacier/get_job_output.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# Get the output from a job
#
# ==== Parameters
@@ -35,7 +34,6 @@ module Fog
))
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/get_vault_notification_configuration.rb b/lib/fog/aws/requests/glacier/get_vault_notification_configuration.rb
index c88631f..03585fd 100644
--- a/lib/fog/aws/requests/glacier/get_vault_notification_configuration.rb
+++ b/lib/fog/aws/requests/glacier/get_vault_notification_configuration.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# Get a vault's notification configuration
#
# ==== Parameters
@@ -28,7 +27,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/initiate_job.rb b/lib/fog/aws/requests/glacier/initiate_job.rb
index 7048a6d..3f4edc5 100644
--- a/lib/fog/aws/requests/glacier/initiate_job.rb
+++ b/lib/fog/aws/requests/glacier/initiate_job.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# This operation initates a multipart upload of an archive to a vault
#
# ==== Parameters
@@ -35,7 +34,6 @@ module Fog
})
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/initiate_multipart_upload.rb b/lib/fog/aws/requests/glacier/initiate_multipart_upload.rb
index e6cd207..cf545d4 100644
--- a/lib/fog/aws/requests/glacier/initiate_multipart_upload.rb
+++ b/lib/fog/aws/requests/glacier/initiate_multipart_upload.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# This operation initates a multipart upload of an archive to a vault
#
# ==== Parameters
@@ -32,7 +31,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/list_jobs.rb b/lib/fog/aws/requests/glacier/list_jobs.rb
index 9702224..76461e4 100644
--- a/lib/fog/aws/requests/glacier/list_jobs.rb
+++ b/lib/fog/aws/requests/glacier/list_jobs.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# lists in-progress and recently jobs for the specified vault
#
# ==== Parameters
@@ -22,7 +21,6 @@ module Fog
account_id = options.delete('account_id') || '-'
path = "/#{account_id}/vaults/#{Fog::AWS.escape(vault_name)}/jobs"
-
request(
:expects => 200,
:idempotent => true,
@@ -33,7 +31,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/list_multipart_uploads.rb b/lib/fog/aws/requests/glacier/list_multipart_uploads.rb
index 07512a4..751aea6 100644
--- a/lib/fog/aws/requests/glacier/list_multipart_uploads.rb
+++ b/lib/fog/aws/requests/glacier/list_multipart_uploads.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# lists in-progress multipart uploads for the specified vault
#
# ==== Parameters
@@ -20,7 +19,6 @@ module Fog
account_id = options.delete('account_id') || '-'
path = "/#{account_id}/vaults/#{Fog::AWS.escape(vault_name)}/multipart-uploads"
-
request(
:expects => 200,
:idempotent => true,
@@ -31,7 +29,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/list_parts.rb b/lib/fog/aws/requests/glacier/list_parts.rb
index ae92c53..0c1b8d5 100644
--- a/lib/fog/aws/requests/glacier/list_parts.rb
+++ b/lib/fog/aws/requests/glacier/list_parts.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# lists the parts of an archive that have been uploaded in a specific multipart upload
#
# ==== Parameters
@@ -31,7 +30,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/list_vaults.rb b/lib/fog/aws/requests/glacier/list_vaults.rb
index 225e85c..fc6d611 100644
--- a/lib/fog/aws/requests/glacier/list_vaults.rb
+++ b/lib/fog/aws/requests/glacier/list_vaults.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# This operation lists all vaults owned by the calling user’s account.
#
# ==== Parameters
@@ -30,7 +29,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/set_vault_notification_configuration.rb b/lib/fog/aws/requests/glacier/set_vault_notification_configuration.rb
index c7647b4..dd9498d 100644
--- a/lib/fog/aws/requests/glacier/set_vault_notification_configuration.rb
+++ b/lib/fog/aws/requests/glacier/set_vault_notification_configuration.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# Set a vault's notification configuration
#
# ==== Parameters
@@ -31,7 +30,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/glacier/upload_part.rb b/lib/fog/aws/requests/glacier/upload_part.rb
index eb6f835..cba1ff1 100644
--- a/lib/fog/aws/requests/glacier/upload_part.rb
+++ b/lib/fog/aws/requests/glacier/upload_part.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Glacier
class Real
-
# Upload an archive
#
# ==== Parameters
@@ -40,7 +39,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/add_role_to_instance_profile.rb b/lib/fog/aws/requests/iam/add_role_to_instance_profile.rb
index bb89f89..7c3afd8 100644
--- a/lib/fog/aws/requests/iam/add_role_to_instance_profile.rb
+++ b/lib/fog/aws/requests/iam/add_role_to_instance_profile.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Add a role to an instance profile
@@ -27,9 +26,7 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/add_user_to_group.rb b/lib/fog/aws/requests/iam/add_user_to_group.rb
index 6ea8175..66a58f0 100644
--- a/lib/fog/aws/requests/iam/add_user_to_group.rb
+++ b/lib/fog/aws/requests/iam/add_user_to_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Add a user to a group
@@ -27,14 +26,12 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
class Mock
-
def add_user_to_group(group_name, user_name)
- if data[:groups].has_key? group_name
- if data[:users].has_key? user_name
+ if data[:groups].key? group_name
+ if data[:users].key? user_name
unless data[:groups][group_name][:members].include?(user_name)
data[:groups][group_name][:members] << user_name
@@ -51,7 +48,6 @@ module Fog
raise Fog::AWS::IAM::NotFound.new("The group with name #{group_name} cannot be found.")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/create_access_key.rb b/lib/fog/aws/requests/iam/create_access_key.rb
index f0113bb..fe189c6 100644
--- a/lib/fog/aws/requests/iam/create_access_key.rb
+++ b/lib/fog/aws/requests/iam/create_access_key.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/create_access_key'
# Create a access keys for user (by default detects user from access credentials)
@@ -30,14 +29,13 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::CreateAccessKey.new
}.merge!(options))
end
-
end
class Mock
def create_access_key(options)
#FIXME: Not 100% correct as AWS will use the signing credentials when there is no 'UserName' in the options hash
# Also doesn't raise an error when there are too many keys
if user = options['UserName']
- if data[:users].has_key? user
+ if data[:users].key? user
access_keys_data = data[:users][user][:access_keys]
else
raise Fog::AWS::IAM::NotFound.new('The user with name #{user_name} cannot be found.')
diff --git a/lib/fog/aws/requests/iam/create_account_alias.rb b/lib/fog/aws/requests/iam/create_account_alias.rb
index 1347e4c..7cd02e6 100644
--- a/lib/fog/aws/requests/iam/create_account_alias.rb
+++ b/lib/fog/aws/requests/iam/create_account_alias.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
def create_account_alias(account_alias)
@@ -12,7 +11,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/create_group.rb b/lib/fog/aws/requests/iam/create_group.rb
index 9c91774..3a3b5dc 100644
--- a/lib/fog/aws/requests/iam/create_group.rb
+++ b/lib/fog/aws/requests/iam/create_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/create_group'
# Create a new group
@@ -32,13 +31,11 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::CreateGroup.new
)
end
-
end
class Mock
-
def create_group(group_name, path = '/')
- if data[:groups].has_key? group_name
+ if data[:groups].key? group_name
raise Fog::AWS::IAM::EntityAlreadyExists.new("Group with name #{group_name} already exists.")
else
data[:groups][group_name][:path] = path
@@ -52,7 +49,6 @@ module Fog
response.status = 200
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/create_instance_profile.rb b/lib/fog/aws/requests/iam/create_instance_profile.rb
index 34f23f0..7c5b323 100644
--- a/lib/fog/aws/requests/iam/create_instance_profile.rb
+++ b/lib/fog/aws/requests/iam/create_instance_profile.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/instance_profile'
# Create a new instance_profile
diff --git a/lib/fog/aws/requests/iam/create_login_profile.rb b/lib/fog/aws/requests/iam/create_login_profile.rb
index de16c7e..cca2cfc 100644
--- a/lib/fog/aws/requests/iam/create_login_profile.rb
+++ b/lib/fog/aws/requests/iam/create_login_profile.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/login_profile'
# Creates a login profile for a user
@@ -29,7 +28,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::LoginProfile.new
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/create_role.rb b/lib/fog/aws/requests/iam/create_role.rb
index 6bb86c2..d37f7df 100644
--- a/lib/fog/aws/requests/iam/create_role.rb
+++ b/lib/fog/aws/requests/iam/create_role.rb
@@ -49,7 +49,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::SingleRole.new
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/create_user.rb b/lib/fog/aws/requests/iam/create_user.rb
index 0a354ca..a4b6b94 100644
--- a/lib/fog/aws/requests/iam/create_user.rb
+++ b/lib/fog/aws/requests/iam/create_user.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/create_user'
# Create a new user
@@ -32,12 +31,11 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::CreateUser.new
)
end
-
end
class Mock
def create_user(user_name, path='/')
- if data[:users].has_key? user_name
+ if data[:users].key? user_name
raise Fog::AWS::IAM::EntityAlreadyExists.new "User with name #{user_name} already exists."
else
data[:users][user_name][:path] = path
diff --git a/lib/fog/aws/requests/iam/delete_access_key.rb b/lib/fog/aws/requests/iam/delete_access_key.rb
index 74b657d..9beba00 100644
--- a/lib/fog/aws/requests/iam/delete_access_key.rb
+++ b/lib/fog/aws/requests/iam/delete_access_key.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Delete an access key
@@ -27,14 +26,12 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
}.merge!(options))
end
-
end
class Mock
-
def delete_access_key(access_key_id, options = {})
user_name = options['UserName']
- if user_name && data[:users].has_key?(user_name) && data[:users][user_name][:access_keys].any? { |akey| akey['AccessKeyId'] == access_key_id }
+ if user_name && data[:users].key?(user_name) && data[:users][user_name][:access_keys].any? { |akey| akey['AccessKeyId'] == access_key_id }
data[:users][user_name][:access_keys].delete_if { |akey| akey['AccessKeyId'] == access_key_id }
Excon::Response.new.tap do |response|
response.body = { 'RequestId' => Fog::AWS::Mock.request_id }
@@ -44,7 +41,6 @@ module Fog
raise Fog::AWS::IAM::NotFound.new("The Access Key with id #{access_key_id} cannot be found.")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/delete_account_alias.rb b/lib/fog/aws/requests/iam/delete_account_alias.rb
index ba49c83..a20c236 100644
--- a/lib/fog/aws/requests/iam/delete_account_alias.rb
+++ b/lib/fog/aws/requests/iam/delete_account_alias.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
def delete_account_alias(account_alias)
@@ -12,7 +11,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/delete_account_password_policy.rb b/lib/fog/aws/requests/iam/delete_account_password_policy.rb
new file mode 100644
index 0000000..57f3778
--- /dev/null
+++ b/lib/fog/aws/requests/iam/delete_account_password_policy.rb
@@ -0,0 +1,36 @@
+module Fog
+ module AWS
+ class IAM
+ class Real
+ require 'fog/aws/parsers/iam/basic'
+ # Add or update the account password policy
+ #
+ # ==== Parameters
+ #
+ # ==== Returns
+ # * response<~Excon::Response>:
+ # * body<~Hash>:
+ # * 'RequestId'<~String> - Id of the request
+ #
+ # ==== See Also
+ # http://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAccountPasswordPolicy.html
+ #
+ def delete_account_password_policy
+ request({
+ 'Action' => 'DeleteAccountPasswordPolicy',
+ :parser => Fog::Parsers::AWS::IAM::Basic.new
+ })
+ end
+ end
+
+ class Mock
+ def delete_account_password_policy
+ Excon::Response.new.tap do |response|
+ response.body = { 'RequestId' => Fog::AWS::Mock.request_id }
+ response.status = 200
+ end
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/requests/iam/delete_group.rb b/lib/fog/aws/requests/iam/delete_group.rb
index fe51384..93ba12b 100644
--- a/lib/fog/aws/requests/iam/delete_group.rb
+++ b/lib/fog/aws/requests/iam/delete_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Delete a group
@@ -25,13 +24,11 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
class Mock
-
def delete_group(group_name)
- if data[:groups].has_key? group_name
+ if data[:groups].key? group_name
if data[:groups][group_name][:members].empty?
data[:groups].delete group_name
Excon::Response.new.tap do |response|
diff --git a/lib/fog/aws/requests/iam/delete_group_policy.rb b/lib/fog/aws/requests/iam/delete_group_policy.rb
index 3952ef2..e57170f 100644
--- a/lib/fog/aws/requests/iam/delete_group_policy.rb
+++ b/lib/fog/aws/requests/iam/delete_group_policy.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Remove a policy from a group
@@ -27,7 +26,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/delete_instance_profile.rb b/lib/fog/aws/requests/iam/delete_instance_profile.rb
index ee81826..4ccfc4f 100644
--- a/lib/fog/aws/requests/iam/delete_instance_profile.rb
+++ b/lib/fog/aws/requests/iam/delete_instance_profile.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Delete a instance_profile
@@ -25,7 +24,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/delete_login_profile.rb b/lib/fog/aws/requests/iam/delete_login_profile.rb
index 304978b..163f36a 100644
--- a/lib/fog/aws/requests/iam/delete_login_profile.rb
+++ b/lib/fog/aws/requests/iam/delete_login_profile.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Deletes a user's login profile
@@ -24,7 +23,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/delete_role.rb b/lib/fog/aws/requests/iam/delete_role.rb
index bc490ca..02c2c54 100644
--- a/lib/fog/aws/requests/iam/delete_role.rb
+++ b/lib/fog/aws/requests/iam/delete_role.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Delete a role
@@ -25,7 +24,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/delete_role_policy.rb b/lib/fog/aws/requests/iam/delete_role_policy.rb
index bcf1291..7293f1e 100644
--- a/lib/fog/aws/requests/iam/delete_role_policy.rb
+++ b/lib/fog/aws/requests/iam/delete_role_policy.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Remove a policy from a role
@@ -27,9 +26,7 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/delete_server_certificate.rb b/lib/fog/aws/requests/iam/delete_server_certificate.rb
index a49d380..d9a5d02 100644
--- a/lib/fog/aws/requests/iam/delete_server_certificate.rb
+++ b/lib/fog/aws/requests/iam/delete_server_certificate.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Deletes the specified server certificate.
@@ -25,7 +24,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
})
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/iam/delete_signing_certificate.rb b/lib/fog/aws/requests/iam/delete_signing_certificate.rb
index 12d3970..b13726f 100644
--- a/lib/fog/aws/requests/iam/delete_signing_certificate.rb
+++ b/lib/fog/aws/requests/iam/delete_signing_certificate.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Upload signing certificate for user (by default detects user from access credentials)
@@ -26,7 +25,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/delete_user.rb b/lib/fog/aws/requests/iam/delete_user.rb
index 7f832bd..833520b 100644
--- a/lib/fog/aws/requests/iam/delete_user.rb
+++ b/lib/fog/aws/requests/iam/delete_user.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Delete a user
@@ -25,13 +24,11 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
class Mock
-
def delete_user(user_name)
- if data[:users].has_key? user_name
+ if data[:users].key? user_name
data[:users].delete user_name
Excon::Response.new.tap do |response|
response.body = { 'RequestId' => Fog::AWS::Mock.request_id }
@@ -40,9 +37,7 @@ module Fog
else
raise Fog::AWS::IAM::NotFound.new("The user with name #{user_name} cannot be found.")
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/delete_user_policy.rb b/lib/fog/aws/requests/iam/delete_user_policy.rb
index c72f79b..a12ba93 100644
--- a/lib/fog/aws/requests/iam/delete_user_policy.rb
+++ b/lib/fog/aws/requests/iam/delete_user_policy.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Remove a policy from a user
@@ -27,13 +26,11 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
class Mock
-
def delete_user_policy(user_name, policy_name)
- if data[:users].has_key?(user_name) && data[:users][user_name][:policies].has_key?(policy_name)
+ if data[:users].key?(user_name) && data[:users][user_name][:policies].key?(policy_name)
data[:users][user_name][:policies].delete policy_name
Excon::Response.new.tap do |response|
response.body = { 'RequestId' => Fog::AWS::Mock.request_id }
@@ -43,7 +40,6 @@ module Fog
raise Fog::AWS::IAM::NotFound.new("The user policy with name #{policy_name} cannot be found.")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/get_account_password_policy.rb b/lib/fog/aws/requests/iam/get_account_password_policy.rb
new file mode 100644
index 0000000..c900a9d
--- /dev/null
+++ b/lib/fog/aws/requests/iam/get_account_password_policy.rb
@@ -0,0 +1,36 @@
+module Fog
+ module AWS
+ class IAM
+ class Real
+ require 'fog/aws/parsers/iam/basic'
+ # Add or update the account password policy
+ #
+ # ==== Parameters
+ #
+ # ==== Returns
+ # * response<~Excon::Response>:
+ # * body<~Hash>:
+ # * 'RequestId'<~String> - Id of the request
+ #
+ # ==== See Also
+ # http://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAccountPasswordPolicy.html
+ #
+ def get_account_password_policy()
+ request({
+ 'Action' => 'DeleteAccountPasswordPolicy',
+ :parser => Fog::Parsers::AWS::IAM::Basic.new
+ })
+ end
+ end
+
+ class Mock
+ def get_account_password_policy()
+ Excon::Response.new.tap do |response|
+ response.body = { 'RequestId' => Fog::AWS::Mock.request_id }
+ response.status = 200
+ end
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/requests/iam/get_account_summary.rb b/lib/fog/aws/requests/iam/get_account_summary.rb
index 6a65016..8a56a0d 100644
--- a/lib/fog/aws/requests/iam/get_account_summary.rb
+++ b/lib/fog/aws/requests/iam/get_account_summary.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/get_account_summary'
# Retrieve account level information about account entity usage and IAM quotas
@@ -43,11 +42,9 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::GetAccountSummary.new
)
end
-
end
class Mock
-
def get_account_summary
Excon::Response.new.tap do |response|
response.status = 200
@@ -72,9 +69,7 @@ module Fog
}
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/get_group.rb b/lib/fog/aws/requests/iam/get_group.rb
index 47c3e25..c62a8c7 100644
--- a/lib/fog/aws/requests/iam/get_group.rb
+++ b/lib/fog/aws/requests/iam/get_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/get_group'
# Get Group
@@ -37,7 +36,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::GetGroup.new
}.merge!(options))
end
-
end
class Mock
def get_group(group_name, options = {})
diff --git a/lib/fog/aws/requests/iam/get_group_policy.rb b/lib/fog/aws/requests/iam/get_group_policy.rb
index 11fc26b..4dec0a1 100644
--- a/lib/fog/aws/requests/iam/get_group_policy.rb
+++ b/lib/fog/aws/requests/iam/get_group_policy.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/get_group_policy'
# Get Group Policy
@@ -29,7 +28,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::GetGroupPolicy.new
})
end
-
end
class Mock
def get_group_policy(policy_name, group_name)
diff --git a/lib/fog/aws/requests/iam/get_instance_profile.rb b/lib/fog/aws/requests/iam/get_instance_profile.rb
index 069951d..ba33a0b 100644
--- a/lib/fog/aws/requests/iam/get_instance_profile.rb
+++ b/lib/fog/aws/requests/iam/get_instance_profile.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/instance_profile'
# Retrieves information about an instance profile
@@ -35,7 +34,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::InstanceProfile.new
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/get_login_profile.rb b/lib/fog/aws/requests/iam/get_login_profile.rb
index 1c3d5cd..6f94709 100644
--- a/lib/fog/aws/requests/iam/get_login_profile.rb
+++ b/lib/fog/aws/requests/iam/get_login_profile.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/login_profile'
# Retrieves the login profile for a user
@@ -28,7 +27,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::LoginProfile.new
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/get_role.rb b/lib/fog/aws/requests/iam/get_role.rb
index 34534e1..c60f899 100644
--- a/lib/fog/aws/requests/iam/get_role.rb
+++ b/lib/fog/aws/requests/iam/get_role.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/single_role'
# Get the specified role
@@ -31,7 +30,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::SingleRole.new
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/get_role_policy.rb b/lib/fog/aws/requests/iam/get_role_policy.rb
index 9dade38..cab6e83 100644
--- a/lib/fog/aws/requests/iam/get_role_policy.rb
+++ b/lib/fog/aws/requests/iam/get_role_policy.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/get_role_policy'
# Get Role Policy
@@ -29,7 +28,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::GetRolePolicy.new
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/get_server_certificate.rb b/lib/fog/aws/requests/iam/get_server_certificate.rb
index 8a0766a..c9c21d8 100644
--- a/lib/fog/aws/requests/iam/get_server_certificate.rb
+++ b/lib/fog/aws/requests/iam/get_server_certificate.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/upload_server_certificate'
# Gets the specified server certificate.
@@ -25,7 +24,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::UploadServerCertificate.new
})
end
-
end
class Mock
@@ -45,4 +43,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/aws/requests/iam/get_user.rb b/lib/fog/aws/requests/iam/get_user.rb
index a620213..4fe7d6a 100644
--- a/lib/fog/aws/requests/iam/get_user.rb
+++ b/lib/fog/aws/requests/iam/get_user.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/get_user'
# Get User
@@ -31,7 +30,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::GetUser.new
}.merge!(options))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/iam/get_user_policy.rb b/lib/fog/aws/requests/iam/get_user_policy.rb
index 7b7e369..d5a953b 100644
--- a/lib/fog/aws/requests/iam/get_user_policy.rb
+++ b/lib/fog/aws/requests/iam/get_user_policy.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/get_user_policy'
# Get User Policy
@@ -29,7 +28,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::GetUserPolicy.new
})
end
-
end
class Mock
def get_user_policy(policy_name, user_name)
diff --git a/lib/fog/aws/requests/iam/list_access_keys.rb b/lib/fog/aws/requests/iam/list_access_keys.rb
index 5691b3f..6c42cfc 100644
--- a/lib/fog/aws/requests/iam/list_access_keys.rb
+++ b/lib/fog/aws/requests/iam/list_access_keys.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/list_access_keys'
# List access_keys
@@ -33,15 +32,13 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::ListAccessKeys.new
}.merge!(options))
end
-
end
class Mock
-
def list_access_keys(options = {})
#FIXME: Doesn't do anything with options, aside from UserName
if user = options['UserName']
- if data[:users].has_key? user
+ if data[:users].key? user
access_keys_data = data[:users][user][:access_keys]
else
raise Fog::AWS::IAM::NotFound.new("The user with name #{user} cannot be found.")
diff --git a/lib/fog/aws/requests/iam/list_account_aliases.rb b/lib/fog/aws/requests/iam/list_account_aliases.rb
index ce5d7ae..9197896 100644
--- a/lib/fog/aws/requests/iam/list_account_aliases.rb
+++ b/lib/fog/aws/requests/iam/list_account_aliases.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/list_account_aliases'
def list_account_aliases(options = {})
@@ -11,7 +10,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::ListAccountAliases.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/list_group_policies.rb b/lib/fog/aws/requests/iam/list_group_policies.rb
index 0866424..f83adc9 100644
--- a/lib/fog/aws/requests/iam/list_group_policies.rb
+++ b/lib/fog/aws/requests/iam/list_group_policies.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/list_policies'
# List policies for a group
@@ -32,7 +31,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::ListPolicies.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/list_groups.rb b/lib/fog/aws/requests/iam/list_groups.rb
index e2ffc57..8084c38 100644
--- a/lib/fog/aws/requests/iam/list_groups.rb
+++ b/lib/fog/aws/requests/iam/list_groups.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/list_groups'
# List groups
@@ -35,11 +34,9 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::ListGroups.new
}.merge!(options))
end
-
end
class Mock
-
def list_groups(options = {} )
#FIXME: Doesn't observe options
Excon::Response.new.tap do |response|
diff --git a/lib/fog/aws/requests/iam/list_groups_for_user.rb b/lib/fog/aws/requests/iam/list_groups_for_user.rb
index 1c6446a..d5b72a5 100644
--- a/lib/fog/aws/requests/iam/list_groups_for_user.rb
+++ b/lib/fog/aws/requests/iam/list_groups_for_user.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/list_groups_for_user'
# List groups_for_user
@@ -36,13 +35,12 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::ListGroupsForUser.new
}.merge!(options))
end
-
end
class Mock
def list_groups_for_user(user_name, options = {})
#FIXME: Does not consider options
- if data[:users].has_key? user_name
+ if data[:users].key? user_name
Excon::Response.new.tap do |response|
response.status = 200
response.body = { 'GroupsForUser' => data[:groups].select do |name, group|
diff --git a/lib/fog/aws/requests/iam/list_instance_profiles.rb b/lib/fog/aws/requests/iam/list_instance_profiles.rb
index 45d950a..95d876c 100644
--- a/lib/fog/aws/requests/iam/list_instance_profiles.rb
+++ b/lib/fog/aws/requests/iam/list_instance_profiles.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/list_instance_profiles'
# Lists instance profiles
@@ -43,7 +42,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::ListInstanceProfiles.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/list_instance_profiles_for_role.rb b/lib/fog/aws/requests/iam/list_instance_profiles_for_role.rb
index b8f5e89..45a8af6 100644
--- a/lib/fog/aws/requests/iam/list_instance_profiles_for_role.rb
+++ b/lib/fog/aws/requests/iam/list_instance_profiles_for_role.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/list_instance_profiles'
# Lists the instance profiles that have the specified associated role
@@ -44,7 +43,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::ListInstanceProfiles.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/list_role_policies.rb b/lib/fog/aws/requests/iam/list_role_policies.rb
index 60e76de..26962dc 100644
--- a/lib/fog/aws/requests/iam/list_role_policies.rb
+++ b/lib/fog/aws/requests/iam/list_role_policies.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/list_policies'
# Lists the names of policies associated with a role
@@ -32,7 +31,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::ListPolicies.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/list_roles.rb b/lib/fog/aws/requests/iam/list_roles.rb
index 3cc5998..18267c1 100644
--- a/lib/fog/aws/requests/iam/list_roles.rb
+++ b/lib/fog/aws/requests/iam/list_roles.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/list_roles'
# Lists roles
@@ -36,7 +35,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::ListRoles.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/list_server_certificates.rb b/lib/fog/aws/requests/iam/list_server_certificates.rb
index 267161d..11a0eab 100644
--- a/lib/fog/aws/requests/iam/list_server_certificates.rb
+++ b/lib/fog/aws/requests/iam/list_server_certificates.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/list_server_certificates'
# List server certificates
@@ -35,7 +34,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::ListServerCertificates.new
}.merge!(options))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/iam/list_signing_certificates.rb b/lib/fog/aws/requests/iam/list_signing_certificates.rb
index f28f4a4..cb51971 100644
--- a/lib/fog/aws/requests/iam/list_signing_certificates.rb
+++ b/lib/fog/aws/requests/iam/list_signing_certificates.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/list_signing_certificates'
# List signing certificates for user (by default detects user from access credentials)
@@ -31,7 +30,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::ListSigningCertificates.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/list_user_policies.rb b/lib/fog/aws/requests/iam/list_user_policies.rb
index 32d1388..261543c 100644
--- a/lib/fog/aws/requests/iam/list_user_policies.rb
+++ b/lib/fog/aws/requests/iam/list_user_policies.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/list_policies'
# List policies for a user
@@ -32,14 +31,12 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::ListPolicies.new
}.merge!(options))
end
-
end
class Mock
-
def list_user_policies(user_name, options = {})
#FIXME: doesn't use options atm
- if data[:users].has_key? user_name
+ if data[:users].key? user_name
Excon::Response.new.tap do |response|
response.body = { 'PolicyNames' => data[:users][user_name][:policies].keys,
'IsTruncated' => false,
@@ -50,7 +47,6 @@ module Fog
raise Fog::AWS::IAM::NotFound.new("The user with name #{user_name} cannot be found.")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/list_users.rb b/lib/fog/aws/requests/iam/list_users.rb
index 698c99d..ae3cb7f 100644
--- a/lib/fog/aws/requests/iam/list_users.rb
+++ b/lib/fog/aws/requests/iam/list_users.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/list_users'
# List users
@@ -35,7 +34,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::ListUsers.new
}.merge!(options))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/iam/put_group_policy.rb b/lib/fog/aws/requests/iam/put_group_policy.rb
index dc943b7..adebc16 100644
--- a/lib/fog/aws/requests/iam/put_group_policy.rb
+++ b/lib/fog/aws/requests/iam/put_group_policy.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Add or update a policy for a group
@@ -29,13 +28,12 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
class Mock
#FIXME: You can't actually use the credentials for anything elsewhere in Fog
#FIXME: Doesn't do any validation on the policy
def put_group_policy(group_name, policy_name, policy_document)
- if data[:groups].has_key? group_name
+ if data[:groups].key? group_name
data[:groups][group_name][:policies][policy_name] = policy_document
Excon::Response.new.tap do |response|
diff --git a/lib/fog/aws/requests/iam/put_role_policy.rb b/lib/fog/aws/requests/iam/put_role_policy.rb
index 257b42d..f6924ef 100644
--- a/lib/fog/aws/requests/iam/put_role_policy.rb
+++ b/lib/fog/aws/requests/iam/put_role_policy.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Add or update a policy for a role
@@ -29,7 +28,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/put_user_policy.rb b/lib/fog/aws/requests/iam/put_user_policy.rb
index 0ee036b..4ca089c 100644
--- a/lib/fog/aws/requests/iam/put_user_policy.rb
+++ b/lib/fog/aws/requests/iam/put_user_policy.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Add or update a policy for a user
@@ -29,15 +28,13 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
class Mock
-
#FIXME: You can't actually use the credentials for anything elsewhere in Fog
#FIXME: Doesn't do any validation on the policy
def put_user_policy(user_name, policy_name, policy_document)
- if data[:users].has_key? user_name
+ if data[:users].key? user_name
data[:users][user_name][:policies][policy_name] = policy_document
Excon::Response.new.tap do |response|
diff --git a/lib/fog/aws/requests/iam/remove_role_from_instance_profile.rb b/lib/fog/aws/requests/iam/remove_role_from_instance_profile.rb
index c6c1cfd..e238020 100644
--- a/lib/fog/aws/requests/iam/remove_role_from_instance_profile.rb
+++ b/lib/fog/aws/requests/iam/remove_role_from_instance_profile.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# removes a role from an instance profile
@@ -28,9 +27,7 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/remove_user_from_group.rb b/lib/fog/aws/requests/iam/remove_user_from_group.rb
index 24b19d4..f7b89ca 100644
--- a/lib/fog/aws/requests/iam/remove_user_from_group.rb
+++ b/lib/fog/aws/requests/iam/remove_user_from_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Remove a user from a group
@@ -27,14 +26,12 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
)
end
-
end
class Mock
-
def remove_user_from_group(group_name, user_name)
- if data[:groups].has_key? group_name
- if data[:users].has_key? user_name
+ if data[:groups].key? group_name
+ if data[:users].key? user_name
data[:groups][group_name][:members].delete_if { |item| item == user_name }
Excon::Response.new.tap do |response|
response.status = 200
diff --git a/lib/fog/aws/requests/iam/update_access_key.rb b/lib/fog/aws/requests/iam/update_access_key.rb
index cc9c141..4e84cba 100644
--- a/lib/fog/aws/requests/iam/update_access_key.rb
+++ b/lib/fog/aws/requests/iam/update_access_key.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Update an access key for a user
@@ -29,13 +28,12 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
}.merge!(options))
end
-
end
class Mock
def update_access_key(access_key_id, status, options = {})
if user = options['UserName']
- if data[:users].has_key? user
+ if data[:users].key? user
access_keys_data = data[:users][user][:access_keys]
else
raise Fog::AWS::IAM::NotFound.new('The user with name #{user_name} cannot be found.')
@@ -43,7 +41,7 @@ module Fog
else
access_keys_data = data[:access_keys]
end
- key = access_keys_data.detect{|k| k["AccessKeyId"] == access_key_id}
+ key = access_keys_data.find{|k| k["AccessKeyId"] == access_key_id}
key["Status"] = status
Excon::Response.new.tap do |response|
response.status = 200
@@ -52,7 +50,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/update_account_password_policy.rb b/lib/fog/aws/requests/iam/update_account_password_policy.rb
new file mode 100644
index 0000000..d46c71f
--- /dev/null
+++ b/lib/fog/aws/requests/iam/update_account_password_policy.rb
@@ -0,0 +1,56 @@
+module Fog
+ module AWS
+ class IAM
+ class Real
+ require 'fog/aws/parsers/iam/basic'
+ # Add or update the account password policy
+ #
+ # ==== Parameters
+ # * MinimumPasswordLength<~integer> Minimum length to require for IAM user passwords.
+ # * MaxPasswordAge<~integer> The number of days that an IAM user password is valid.
+ # * PasswordReusePrevention<~integer> Specifies the number of previous passwords that IAM users are prevented from reusing.
+ # * RequireSymbols<~boolean> Specifies whether to require symbols for IAM user passwords.
+ # * RequireNumbers<~boolean> Specifies whether to require numbers for IAM user passwords.
+ # * RequireUppercaseCharacters<~boolean> Specifies whether to require uppercase characters for IAM user passwords.
+ # * RequireLowercaseCharacters<~boolean> Specifies whether to require lowercase characters for IAM user passwords.
+ # * AllowUsersToChangePassword<~boolean> Specifies whether IAM users are allowed to change their own password.
+ # * HardExpiry<~boolean> Specifies whether IAM users are prevented from setting a new password after their password has expired.
+ # * ExpirePasswords<~boolean> Specifies whether IAM users are required to change their password after a specified number of days.
+ #
+ # ==== Returns
+ # * response<~Excon::Response>:
+ # * body<~Hash>:
+ # * 'RequestId'<~String> - Id of the request
+ #
+ # ==== See Also
+ # http://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAccountPasswordPolicy.html
+ #
+ def update_account_password_policy(minimum_password_length, max_password_age, password_reuse_prevention,require_symbols,require_numbers,require_uppercase_characters, require_lowercase_characters,allow_users_to_change_password, hard_expiry, expire_passwords)
+ request({
+ 'Action' => 'UpdateAccountPasswordPolicy',
+ 'MinimumPasswordLength' => minimum_password_length,
+ 'MaxPasswordAge' => max_password_age,
+ 'PasswordReusePrevention' => password_reuse_prevention,
+ 'RequireSymbols' => require_symbols,
+ 'RequireNumbers' => require_numbers,
+ 'RequireUppercaseCharacters' => require_uppercase_characters,
+ 'RequireLowercaseCharacters' => require_lowercase_characters,
+ 'AllowUsersToChangePassword' => allow_users_to_change_password,
+ 'HardExpiry' => hard_expiry,
+ 'ExpirePasswords' => expire_passwords,
+ :parser => Fog::Parsers::AWS::IAM::Basic.new
+ })
+ end
+ end
+
+ class Mock
+ def update_account_password_policy(minimum_password_length, max_password_age, password_reuse_prevention,require_symbols,require_numbers,require_uppercase_characters, require_lowercase_characters,allow_users_to_change_password, hard_expiry, expire_passwords)
+ Excon::Response.new.tap do |response|
+ response.body = { 'RequestId' => Fog::AWS::Mock.request_id }
+ response.status = 200
+ end
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/requests/iam/update_group.rb b/lib/fog/aws/requests/iam/update_group.rb
index 6504ed0..79dd6b8 100644
--- a/lib/fog/aws/requests/iam/update_group.rb
+++ b/lib/fog/aws/requests/iam/update_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/update_group'
# Update a Group
@@ -32,7 +31,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::UpdateGroup.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/update_login_profile.rb b/lib/fog/aws/requests/iam/update_login_profile.rb
index e54357e..40a3ab4 100644
--- a/lib/fog/aws/requests/iam/update_login_profile.rb
+++ b/lib/fog/aws/requests/iam/update_login_profile.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/basic'
# Updates a login profile for a user
@@ -26,7 +25,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/update_server_certificate.rb b/lib/fog/aws/requests/iam/update_server_certificate.rb
index 0b6a9ec..762199e 100644
--- a/lib/fog/aws/requests/iam/update_server_certificate.rb
+++ b/lib/fog/aws/requests/iam/update_server_certificate.rb
@@ -30,7 +30,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
}.merge!(options))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/iam/update_signing_certificate.rb b/lib/fog/aws/requests/iam/update_signing_certificate.rb
index da18730..fe011ce 100644
--- a/lib/fog/aws/requests/iam/update_signing_certificate.rb
+++ b/lib/fog/aws/requests/iam/update_signing_certificate.rb
@@ -25,7 +25,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::Basic.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/update_user.rb b/lib/fog/aws/requests/iam/update_user.rb
index 291dfc5..b73d191 100644
--- a/lib/fog/aws/requests/iam/update_user.rb
+++ b/lib/fog/aws/requests/iam/update_user.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/update_user'
# Update a user
@@ -32,7 +31,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::UpdateUser.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/iam/upload_server_certificate.rb b/lib/fog/aws/requests/iam/upload_server_certificate.rb
index eccb884..d3e505d 100644
--- a/lib/fog/aws/requests/iam/upload_server_certificate.rb
+++ b/lib/fog/aws/requests/iam/upload_server_certificate.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/upload_server_certificate'
# Uploads a server certificate entity for the AWS Account.
@@ -39,7 +38,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::UploadServerCertificate.new
}.merge!(options))
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/iam/upload_signing_certificate.rb b/lib/fog/aws/requests/iam/upload_signing_certificate.rb
index c45b14b..c77c875 100644
--- a/lib/fog/aws/requests/iam/upload_signing_certificate.rb
+++ b/lib/fog/aws/requests/iam/upload_signing_certificate.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class IAM
class Real
-
require 'fog/aws/parsers/iam/upload_signing_certificate'
# Upload signing certificate for user (by default detects user from access credentials)
@@ -31,7 +30,6 @@ module Fog
:parser => Fog::Parsers::AWS::IAM::UploadSigningCertificate.new
}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/add_tags_to_resource.rb b/lib/fog/aws/requests/rds/add_tags_to_resource.rb
index 07bba85..4ee57dd 100644
--- a/lib/fog/aws/requests/rds/add_tags_to_resource.rb
+++ b/lib/fog/aws/requests/rds/add_tags_to_resource.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
# adds tags to a database instance
# http://docs.amazonwebservices.com/AmazonRDS/latest/APIReference/API_AddTagsToResource.html
# ==== Parameters
@@ -21,11 +20,9 @@ module Fog
}.merge(Fog::AWS.indexed_param('Tags.member.%d.Key', keys)).
merge(Fog::AWS.indexed_param('Tags.member.%d.Value', values)))
end
-
end
class Mock
-
def add_tags_to_resource(rds_id, tags)
response = Excon::Response.new
if server = self.data[:servers][rds_id]
@@ -39,7 +36,6 @@ module Fog
raise Fog::AWS::RDS::NotFound.new("DBInstance #{rds_id} not found")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/authorize_db_security_group_ingress.rb b/lib/fog/aws/requests/rds/authorize_db_security_group_ingress.rb
index 4760bcc..b39ba07 100644
--- a/lib/fog/aws/requests/rds/authorize_db_security_group_ingress.rb
+++ b/lib/fog/aws/requests/rds/authorize_db_security_group_ingress.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/authorize_db_security_group_ingress'
# authorizes a db security group ingress
@@ -25,13 +24,10 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::AuthorizeDBSecurityGroupIngress.new,
'DBSecurityGroupName' => name
}.merge(opts))
-
end
-
end
class Mock
-
def authorize_db_security_group_ingress(name, opts = {})
unless opts.key?('CIDRIP') || (opts.key?('EC2SecurityGroupName') && opts.key?('EC2SecurityGroupOwnerId'))
raise ArgumentError, 'Must specify CIDRIP, or both EC2SecurityGroupName and EC2SecurityGroupOwnerId'
@@ -41,12 +37,12 @@ module Fog
if sec_group = self.data[:security_groups][name]
if opts.key?('CIDRIP')
- if sec_group['IPRanges'].detect{|h| h['CIDRIP'] == opts['CIDRIP']}
+ if sec_group['IPRanges'].find{|h| h['CIDRIP'] == opts['CIDRIP']}
raise Fog::AWS::RDS::AuthorizationAlreadyExists.new("AuthorizationAlreadyExists => #{opts['CIDRIP']} is alreay defined")
end
sec_group['IPRanges'] << opts.merge({"Status" => 'authorizing'})
else
- if sec_group['EC2SecurityGroups'].detect{|h| h['EC2SecurityGroupName'] == opts['EC2SecurityGroupName']}
+ if sec_group['EC2SecurityGroups'].find{|h| h['EC2SecurityGroupName'] == opts['EC2SecurityGroupName']}
raise Fog::AWS::RDS::AuthorizationAlreadyExists.new("AuthorizationAlreadyExists => #{opts['EC2SecurityGroupName']} is alreay defined")
end
sec_group['EC2SecurityGroups'] << opts.merge({"Status" => 'authorizing'})
@@ -62,11 +58,8 @@ module Fog
else
raise Fog::AWS::RDS::NotFound.new("DBSecurityGroupNotFound => #{name} not found")
end
-
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/requests/rds/create_db_instance.rb b/lib/fog/aws/requests/rds/create_db_instance.rb
index 0b8f022..3bfd666 100644
--- a/lib/fog/aws/requests/rds/create_db_instance.rb
+++ b/lib/fog/aws/requests/rds/create_db_instance.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/create_db_instance'
# Create a db instance
@@ -34,7 +33,6 @@ module Fog
#
# @see http://docs.amazonwebservices.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html
def create_db_instance(db_name, options={})
-
if security_groups = options.delete('DBSecurityGroups')
options.merge!(Fog::AWS.indexed_param('DBSecurityGroups.member.%d', [*security_groups]))
end
@@ -49,11 +47,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::CreateDBInstance.new,
}.merge(options))
end
-
end
class Mock
-
def create_db_instance(db_name, options={})
response = Excon::Response.new
if self.data[:servers] and self.data[:servers][db_name]
@@ -70,7 +66,7 @@ module Fog
# These are the required parameters according to the API
required_params = %w{AllocatedStorage DBInstanceClass Engine MasterUserPassword MasterUsername }
required_params.each do |key|
- unless options.has_key?(key) and options[key] and !options[key].to_s.empty?
+ unless options.key?(key) and options[key] and !options[key].to_s.empty?
#response.status = 400
#response.body = {
# 'Code' => 'MissingParameter',
@@ -116,7 +112,6 @@ module Fog
"VpcSecurityGroups" => options["VpcSecurityGroups"],
}
-
self.data[:servers][db_name] = data
response.body = {
"ResponseMetadata"=>{ "RequestId"=> Fog::AWS::Mock.request_id },
@@ -129,7 +124,6 @@ module Fog
self.data[:tags][db_name] = {}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/create_db_instance_read_replica.rb b/lib/fog/aws/requests/rds/create_db_instance_read_replica.rb
index 52af499..098fe8f 100644
--- a/lib/fog/aws/requests/rds/create_db_instance_read_replica.rb
+++ b/lib/fog/aws/requests/rds/create_db_instance_read_replica.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/create_db_instance_read_replica'
# create a read replica db instance
@@ -18,8 +17,6 @@ module Fog
# * response<~Excon::Response>:
# * body<~Hash>:
def create_db_instance_read_replica(instance_identifier, source_identifier, options={})
-
-
request({
'Action' => 'CreateDBInstanceReadReplica',
'DBInstanceIdentifier' => instance_identifier,
@@ -27,11 +24,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::CreateDBInstanceReadReplica.new,
}.merge(options))
end
-
end
class Mock
-
def create_db_instance_read_replica(instance_identifier, source_identifier, options={})
# TODO: throw error when instance_identifier already exists,
# or source_identifier doesn't exist
@@ -76,7 +71,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/create_db_parameter_group.rb b/lib/fog/aws/requests/rds/create_db_parameter_group.rb
index 149785c..6b1aa47 100644
--- a/lib/fog/aws/requests/rds/create_db_parameter_group.rb
+++ b/lib/fog/aws/requests/rds/create_db_parameter_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/create_db_parameter_group'
# create a database parameter group
@@ -16,7 +15,6 @@ module Fog
# * response<~Excon::Response>:
# * body<~Hash>:
def create_db_parameter_group(group_name, group_family, description)
-
request({
'Action' => 'CreateDBParameterGroup',
'DBParameterGroupName' => group_name,
@@ -26,11 +24,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::CreateDbParameterGroup.new
})
end
-
end
class Mock
-
def create_db_parameter_group(group_name, group_family, description)
response = Excon::Response.new
if self.data[:parameter_groups] and self.data[:parameter_groups][group_name]
@@ -50,9 +46,7 @@ module Fog
}
response.status = 200
response
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/create_db_security_group.rb b/lib/fog/aws/requests/rds/create_db_security_group.rb
index c259cd2..93835a9 100644
--- a/lib/fog/aws/requests/rds/create_db_security_group.rb
+++ b/lib/fog/aws/requests/rds/create_db_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/create_db_security_group'
# creates a db security group
@@ -21,11 +20,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::CreateDBSecurityGroup.new
})
end
-
end
class Mock
-
def create_db_security_group(name, description = name)
response = Excon::Response.new
if self.data[:security_groups] and self.data[:security_groups][name]
@@ -45,11 +42,8 @@ module Fog
'CreateDBSecurityGroupResult' => { 'DBSecurityGroup' => data }
}
response
-
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/requests/rds/create_db_snapshot.rb b/lib/fog/aws/requests/rds/create_db_snapshot.rb
index 6edfd69..41316bd 100644
--- a/lib/fog/aws/requests/rds/create_db_snapshot.rb
+++ b/lib/fog/aws/requests/rds/create_db_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/create_db_snapshot'
# creates a db snapshot
@@ -21,11 +20,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::CreateDBSnapshot.new
})
end
-
end
class Mock
-
def create_db_snapshot(identifier, name)
response = Excon::Response.new
if data[:snapshots][name]
@@ -64,7 +61,6 @@ module Fog
# SnapshotCreateTime is not part of the response.
self.data[:snapshots][name]['SnapshotCreateTime'] = Time.now
response
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/create_db_subnet_group.rb b/lib/fog/aws/requests/rds/create_db_subnet_group.rb
index 9b28c82..0c4d37c 100644
--- a/lib/fog/aws/requests/rds/create_db_subnet_group.rb
+++ b/lib/fog/aws/requests/rds/create_db_subnet_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/create_db_subnet_group'
# Creates a db subnet group
@@ -22,11 +21,9 @@ module Fog
params.merge!(Fog::AWS.indexed_param("SubnetIds.member", Array(subnet_ids)))
request(params)
end
-
end
class Mock
-
def create_db_subnet_group(name, subnet_ids, description = name)
response = Excon::Response.new
if self.data[:subnet_groups] && self.data[:subnet_groups][name]
@@ -57,9 +54,7 @@ module Fog
'CreateDBSubnetGroupResult' => { 'DBSubnetGroup' => data }
}
response
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/delete_db_instance.rb b/lib/fog/aws/requests/rds/delete_db_instance.rb
index baa333f..85ed2e6 100644
--- a/lib/fog/aws/requests/rds/delete_db_instance.rb
+++ b/lib/fog/aws/requests/rds/delete_db_instance.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/delete_db_instance'
# delete a database instance
@@ -25,11 +24,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::DeleteDBInstance.new
}.merge(params))
end
-
end
class Mock
-
def delete_db_instance(identifier, snapshot_identifier, skip_snapshot = false)
response = Excon::Response.new
@@ -48,7 +45,6 @@ module Fog
raise Fog::AWS::RDS::NotFound.new("DBInstance #{identifier} not found")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/delete_db_parameter_group.rb b/lib/fog/aws/requests/rds/delete_db_parameter_group.rb
index b4e807d..864de0c 100644
--- a/lib/fog/aws/requests/rds/delete_db_parameter_group.rb
+++ b/lib/fog/aws/requests/rds/delete_db_parameter_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/delete_db_parameter_group'
# delete a database parameter group
@@ -13,7 +12,6 @@ module Fog
# * response<~Excon::Response>:
# * body<~Hash>:
def delete_db_parameter_group(group_name)
-
request({
'Action' => 'DeleteDBParameterGroup',
'DBParameterGroupName' => group_name,
@@ -21,11 +19,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::DeleteDbParameterGroup.new
})
end
-
end
class Mock
-
def delete_db_parameter_group(group_name)
response = Excon::Response.new
@@ -39,7 +35,6 @@ module Fog
raise Fog::AWS::RDS::NotFound.new("DBParameterGroup not found: #{group_name}")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/delete_db_security_group.rb b/lib/fog/aws/requests/rds/delete_db_security_group.rb
index c1506fa..cf9c84b 100644
--- a/lib/fog/aws/requests/rds/delete_db_security_group.rb
+++ b/lib/fog/aws/requests/rds/delete_db_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/delete_db_security_group'
# deletes a db security group
@@ -19,11 +18,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::DeleteDBSecurityGroup.new
})
end
-
end
class Mock
-
def delete_db_security_group(name, description = name)
response = Excon::Response.new
@@ -37,10 +34,7 @@ module Fog
raise Fog::AWS::RDS::NotFound.new("DBSecurityGroupNotFound => #{name} not found")
end
end
-
end
end
end
end
-
-
diff --git a/lib/fog/aws/requests/rds/delete_db_snapshot.rb b/lib/fog/aws/requests/rds/delete_db_snapshot.rb
index 036b54f..352ed5c 100644
--- a/lib/fog/aws/requests/rds/delete_db_snapshot.rb
+++ b/lib/fog/aws/requests/rds/delete_db_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/delete_db_snapshot'
# delete a database snapshot
@@ -13,7 +12,6 @@ module Fog
# * response<~Excon::Response>:
# * body<~Hash>:
def delete_db_snapshot(name)
-
request({
'Action' => 'DeleteDBSnapshot',
'DBSnapshotIdentifier' => name,
@@ -21,11 +19,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::DeleteDBSnapshot.new
})
end
-
end
class Mock
-
def delete_db_snapshot(name)
# TODO: raise error if snapshot isn't 'available'
response = Excon::Response.new
@@ -40,7 +36,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/delete_db_subnet_group.rb b/lib/fog/aws/requests/rds/delete_db_subnet_group.rb
index 26849b4..1b1fbf5 100644
--- a/lib/fog/aws/requests/rds/delete_db_subnet_group.rb
+++ b/lib/fog/aws/requests/rds/delete_db_subnet_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/delete_db_subnet_group'
# Deletes a db subnet group
@@ -18,11 +17,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::DeleteDBSubnetGroup.new }
request(params)
end
-
end
class Mock
-
def delete_db_subnet_group(name)
response = Excon::Response.new
unless self.data[:subnet_groups] && self.data[:subnet_groups][name]
@@ -35,7 +32,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/describe_db_engine_versions.rb b/lib/fog/aws/requests/rds/describe_db_engine_versions.rb
index 459b4b3..491c0e0 100644
--- a/lib/fog/aws/requests/rds/describe_db_engine_versions.rb
+++ b/lib/fog/aws/requests/rds/describe_db_engine_versions.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/describe_db_engine_versions'
def describe_db_engine_versions(opts={})
@@ -19,15 +18,12 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::DescribeDBEngineVersions.new
}.merge(params))
end
-
end
class Mock
-
def describe_db_engine_versions(opts={})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/describe_db_instances.rb b/lib/fog/aws/requests/rds/describe_db_instances.rb
index 4e7336c..25a162f 100644
--- a/lib/fog/aws/requests/rds/describe_db_instances.rb
+++ b/lib/fog/aws/requests/rds/describe_db_instances.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/describe_db_instances'
# Describe all or specified load db instances
@@ -27,11 +26,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::DescribeDBInstances.new
}.merge(params))
end
-
end
class Mock
-
def describe_db_instances(identifier=nil, opts={})
response = Excon::Response.new
server_set = []
@@ -86,8 +83,6 @@ module Fog
}
response
end
-
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/describe_db_log_files.rb b/lib/fog/aws/requests/rds/describe_db_log_files.rb
index 0921403..ba456fc 100644
--- a/lib/fog/aws/requests/rds/describe_db_log_files.rb
+++ b/lib/fog/aws/requests/rds/describe_db_log_files.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/describe_db_log_files'
# Describe log files for a DB instance
@@ -35,7 +34,6 @@ module Fog
end
class Mock
-
def describe_db_log_files(rds_id=nil, opts={})
response = Excon::Response.new
log_file_set = []
@@ -60,7 +58,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/describe_db_parameter_groups.rb b/lib/fog/aws/requests/rds/describe_db_parameter_groups.rb
index 992bba4..dfa78b1 100644
--- a/lib/fog/aws/requests/rds/describe_db_parameter_groups.rb
+++ b/lib/fog/aws/requests/rds/describe_db_parameter_groups.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/describe_db_parameter_groups'
# This API returns a list of DBParameterGroup descriptions. If a DBParameterGroupName is specified, the list will contain only the descriptions of the specified DBParameterGroup
@@ -30,11 +29,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::DescribeDBParameterGroups.new
}.merge(params))
end
-
end
class Mock
-
def describe_db_parameter_groups(name=nil, opts={})
response = Excon::Response.new
parameter_set = []
@@ -48,7 +45,6 @@ module Fog
parameter_set = self.data[:parameter_groups].values
end
-
response.status = 200
response.body = {
"ResponseMetadata"=>{ "RequestId"=> Fog::AWS::Mock.request_id },
@@ -56,7 +52,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/describe_db_parameters.rb b/lib/fog/aws/requests/rds/describe_db_parameters.rb
index cab0967..5b51da4 100644
--- a/lib/fog/aws/requests/rds/describe_db_parameters.rb
+++ b/lib/fog/aws/requests/rds/describe_db_parameters.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/describe_db_parameters'
# Describe parameters from a parameter group
@@ -31,11 +30,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::DescribeDBParameters.new
}.merge(params))
end
-
end
class Mock
-
def describe_db_parameters(name, opts={})
Fog::Mock.not_implemented
end
diff --git a/lib/fog/aws/requests/rds/describe_db_reserved_instances.rb b/lib/fog/aws/requests/rds/describe_db_reserved_instances.rb
index e0033a4..6d07d35 100644
--- a/lib/fog/aws/requests/rds/describe_db_reserved_instances.rb
+++ b/lib/fog/aws/requests/rds/describe_db_reserved_instances.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/describe_db_reserved_instances'
# Describe all or specified load db instances
@@ -27,15 +26,12 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::DescribeDBReservedInstances.new
}.merge(params))
end
-
end
class Mock
-
def describe_db_reserved_instances(identifier=nil, opts={})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/describe_db_security_groups.rb b/lib/fog/aws/requests/rds/describe_db_security_groups.rb
index 334d160..946fddb 100644
--- a/lib/fog/aws/requests/rds/describe_db_security_groups.rb
+++ b/lib/fog/aws/requests/rds/describe_db_security_groups.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/describe_db_security_groups'
# Describe all or specified db security groups
@@ -23,11 +22,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::DescribeDBSecurityGroups.new
}.merge(opts))
end
-
end
class Mock
-
def describe_db_security_groups(opts={})
response = Excon::Response.new
sec_group_set = []
@@ -77,9 +74,7 @@ module Fog
}
response
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/requests/rds/describe_db_snapshots.rb b/lib/fog/aws/requests/rds/describe_db_snapshots.rb
index 85a80fc..1ab314d 100644
--- a/lib/fog/aws/requests/rds/describe_db_snapshots.rb
+++ b/lib/fog/aws/requests/rds/describe_db_snapshots.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/describe_db_snapshots'
# Describe all or specified db snapshots
@@ -29,11 +28,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::DescribeDBSnapshots.new
}.merge(params))
end
-
end
class Mock
-
def describe_db_snapshots(opts={})
response = Excon::Response.new
snapshots = self.data[:snapshots].values
@@ -62,9 +59,7 @@ module Fog
"DescribeDBSnapshotsResult" => { "DBSnapshots" => snapshots }
}
response
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/describe_db_subnet_groups.rb b/lib/fog/aws/requests/rds/describe_db_subnet_groups.rb
index e6af85e..36fd700 100644
--- a/lib/fog/aws/requests/rds/describe_db_subnet_groups.rb
+++ b/lib/fog/aws/requests/rds/describe_db_subnet_groups.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/describe_db_subnet_groups'
# This API returns a list of DBSubnetGroup descriptions. If a DBSubnetGroupName is specified, the list will contain only
@@ -30,11 +29,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::DescribeDBSubnetGroups.new
}.merge(params))
end
-
end
class Mock
-
def describe_db_subnet_groups(name = nil, opts = {})
response = Excon::Response.new
@@ -57,7 +54,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/describe_events.rb b/lib/fog/aws/requests/rds/describe_events.rb
index c312ada..488b07a 100644
--- a/lib/fog/aws/requests/rds/describe_events.rb
+++ b/lib/fog/aws/requests/rds/describe_events.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/event_list'
# Returns a list of service events
@@ -39,7 +38,6 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::EventListParser.new
)
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/rds/describe_orderable_db_instance_options.rb b/lib/fog/aws/requests/rds/describe_orderable_db_instance_options.rb
index 3b0163f..95d147f 100644
--- a/lib/fog/aws/requests/rds/describe_orderable_db_instance_options.rb
+++ b/lib/fog/aws/requests/rds/describe_orderable_db_instance_options.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/describe_orderable_db_instance_options'
# Describe all or specified load db instances
@@ -34,11 +33,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::DescribeOrderableDBInstanceOptions.new
}.merge(params))
end
-
end
class Mock
-
def describe_orderable_db_instance_options(engine=nil, opts={})
instance_options = []
response = Excon::Response.new
@@ -69,7 +66,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/download_db_logfile_portion.rb b/lib/fog/aws/requests/rds/download_db_logfile_portion.rb
index 4b2fae6..e8361b3 100644
--- a/lib/fog/aws/requests/rds/download_db_logfile_portion.rb
+++ b/lib/fog/aws/requests/rds/download_db_logfile_portion.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/download_db_logfile_portion'
# Retrieve a portion of a log file of a db instance
@@ -30,11 +29,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::DownloadDBLogFilePortion.new
}.merge(params))
end
-
end
class Mock
-
def download_db_logfile_portion(identifier=nil, filename=nil, opts={})
response = Excon::Response.new
server_set = []
@@ -55,8 +52,6 @@ module Fog
}
response
end
-
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/list_tags_for_resource.rb b/lib/fog/aws/requests/rds/list_tags_for_resource.rb
index 6c37a5c..c02d1e2 100644
--- a/lib/fog/aws/requests/rds/list_tags_for_resource.rb
+++ b/lib/fog/aws/requests/rds/list_tags_for_resource.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/tag_list_parser'
# returns a Hash of tags for a database instance
@@ -19,11 +18,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::TagListParser.new
)
end
-
end
class Mock
-
def list_tags_for_resource(rds_id)
response = Excon::Response.new
if server = self.data[:servers][rds_id]
@@ -37,7 +34,6 @@ module Fog
raise Fog::AWS::RDS::NotFound.new("DBInstance #{rds_id} not found")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/modify_db_instance.rb b/lib/fog/aws/requests/rds/modify_db_instance.rb
index 2205985..997a32f 100644
--- a/lib/fog/aws/requests/rds/modify_db_instance.rb
+++ b/lib/fog/aws/requests/rds/modify_db_instance.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/modify_db_instance'
# modifies a database instance
@@ -29,7 +28,6 @@ module Fog
# * response<~Excon::Response>:
# * body<~Hash>:
def modify_db_instance(db_name, apply_immediately, options={})
-
if security_groups = options.delete('DBSecurityGroups')
options.merge!(Fog::AWS.indexed_param('DBSecurityGroups.member.%d', [*security_groups]))
end
@@ -45,11 +43,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::ModifyDBInstance.new,
}.merge(options))
end
-
end
class Mock
-
def modify_db_instance(db_name, apply_immediately, options={})
response = Excon::Response.new
if self.data[:servers][db_name]
@@ -79,7 +75,6 @@ module Fog
raise Fog::AWS::RDS::NotFound.new("DBInstance #{db_name} not found")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/modify_db_parameter_group.rb b/lib/fog/aws/requests/rds/modify_db_parameter_group.rb
index 0d29f0d..9a03bac 100644
--- a/lib/fog/aws/requests/rds/modify_db_parameter_group.rb
+++ b/lib/fog/aws/requests/rds/modify_db_parameter_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/modify_db_parameter_group'
# modifies a database parameter group
@@ -18,7 +17,6 @@ module Fog
# * response<~Excon::Response>:
# * body<~Hash>:
def modify_db_parameter_group(group_name, parameters)
-
parameter_names = []
parameter_values = []
parameter_apply_methods = []
@@ -40,15 +38,12 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::ModifyDbParameterGroup.new
}.merge(params))
end
-
end
class Mock
-
def modify_db_parameter_group(group_name, parameters)
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/promote_read_replica.rb b/lib/fog/aws/requests/rds/promote_read_replica.rb
new file mode 100644
index 0000000..68388bb
--- /dev/null
+++ b/lib/fog/aws/requests/rds/promote_read_replica.rb
@@ -0,0 +1,59 @@
+module Fog
+ module AWS
+ class RDS
+ class Real
+ require 'fog/aws/parsers/rds/promote_read_replica'
+
+ # promote a read replica to a writable RDS instance
+ # http://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_PromoteReadReplica.html
+ # ==== Parameters
+ # * DBInstanceIdentifier <~String> - The DB Instance identifier for the DB Instance to be deleted.
+ # * BackupRetentionPeriod <~Integer> - The number of days to retain automated backups. Range: 0-8.
+ # Setting this parameter to a positive number enables backups.
+ # Setting this parameter to 0 disables automated backups.
+ # * PreferredBackupWindow <~String> - The daily time range during which automated backups are created if
+ # automated backups are enabled, using the BackupRetentionPeriod parameter.
+ # Default: A 30-minute window selected at random from an 8-hour block of time per region.
+ # See the Amazon RDS User Guide for the time blocks for each region from which the default backup windows are assigned.
+ #
+ # ==== Returns
+ # * response<~Excon::Response>:
+ # * body<~Hash>:
+
+ def promote_read_replica(identifier, backup_retention_period = nil, preferred_backup_window = nil)
+ params = {}
+ params['BackupRetentionPeriod'] = backup_retention_period if backup_retention_period
+ params['PreferredBackupWindow'] = preferred_backup_window if preferred_backup_window
+ request({
+ 'Action' => 'PromoteReadReplica',
+ 'DBInstanceIdentifier' => identifier,
+ :parser => Fog::Parsers::AWS::RDS::PromoteReadReplica.new
+ }.merge(params))
+ end
+ end
+
+ class Mock
+ def promote_read_replica(identifier, backup_retention_period = nil, preferred_backup_window = nil)
+ if self.data[:servers][identifier]
+ data = {
+ 'BackupRetentionPeriod' => backup_retention_period || 1,
+ 'PreferredBackupWindow' => preferred_backup_window || '08:00-08:30',
+ 'DBInstanceIdentifier' => identifier
+ }
+ self.data[:servers][identifier].merge(data)
+
+ response = Excon::Response.new
+ response.body = {
+ "ResponseMetadata" => { "RequestId" => Fog::AWS::Mock.request_id },
+ "PromoteReadReplicaResult" => { "DBInstance" => data}
+ }
+ response.status = 200
+ response
+ else
+ raise Fog::AWS::RDS::NotFound.new("DBInstance #{identifier} not found")
+ end
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/requests/rds/reboot_db_instance.rb b/lib/fog/aws/requests/rds/reboot_db_instance.rb
index 458bf41..c7f9421 100644
--- a/lib/fog/aws/requests/rds/reboot_db_instance.rb
+++ b/lib/fog/aws/requests/rds/reboot_db_instance.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/reboot_db_instance'
# reboots a database instance
@@ -19,11 +18,9 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::RebootDBInstance.new,
})
end
-
end
class Mock
-
def reboot_db_instance(instance_identifier)
response = Excon::Response.new
if server = self.data[:servers][instance_identifier]
@@ -44,7 +41,6 @@ module Fog
raise Fog::AWS::RDS::NotFound.new("DBInstance #{instance_identifier} not found")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/remove_tags_from_resource.rb b/lib/fog/aws/requests/rds/remove_tags_from_resource.rb
index 5eef002..be84c17 100644
--- a/lib/fog/aws/requests/rds/remove_tags_from_resource.rb
+++ b/lib/fog/aws/requests/rds/remove_tags_from_resource.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
# removes tags from a database instance
# http://docs.amazonwebservices.com/AmazonRDS/latest/APIReference/API_RemoveTagsFromResource.html
# ==== Parameters
@@ -19,11 +18,9 @@ module Fog
}.merge(Fog::AWS.indexed_param('TagKeys.member.%d', keys))
)
end
-
end
class Mock
-
def remove_tags_from_resource(rds_id, keys)
response = Excon::Response.new
if server = self.data[:servers][rds_id]
@@ -37,7 +34,6 @@ module Fog
raise Fog::AWS::RDS::NotFound.new("DBInstance #{rds_id} not found")
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/rds/restore_db_instance_from_db_snapshot.rb b/lib/fog/aws/requests/rds/restore_db_instance_from_db_snapshot.rb
index 87e0fce..e998d30 100644
--- a/lib/fog/aws/requests/rds/restore_db_instance_from_db_snapshot.rb
+++ b/lib/fog/aws/requests/rds/restore_db_instance_from_db_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/restore_db_instance_from_db_snapshot'
# Restores a DB Instance from a DB Snapshot
@@ -18,17 +17,13 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::RestoreDBInstanceFromDBSnapshot.new,
}.merge(opts))
end
-
end
class Mock
-
def restore_db_instance_from_db_snapshot(snapshot_id, db_id, options={})
Fog::Mock.not_implemented
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/requests/rds/restore_db_instance_to_point_in_time.rb b/lib/fog/aws/requests/rds/restore_db_instance_to_point_in_time.rb
index a1a598f..271e6fe 100644
--- a/lib/fog/aws/requests/rds/restore_db_instance_to_point_in_time.rb
+++ b/lib/fog/aws/requests/rds/restore_db_instance_to_point_in_time.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/restore_db_instance_to_point_in_time'
# Restores a DB Instance to a point in time
@@ -18,18 +17,13 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::RestoreDBInstanceToPointInTime.new,
}.merge(opts))
end
-
end
class Mock
-
def restore_db_instance_to_point_in_time(source_db_name, target_db_name, opts={})
Fog::Mock.not_implemented
end
-
end
end
end
end
-
-
diff --git a/lib/fog/aws/requests/rds/revoke_db_security_group_ingress.rb b/lib/fog/aws/requests/rds/revoke_db_security_group_ingress.rb
index b630fb6..a3174f1 100644
--- a/lib/fog/aws/requests/rds/revoke_db_security_group_ingress.rb
+++ b/lib/fog/aws/requests/rds/revoke_db_security_group_ingress.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class RDS
class Real
-
require 'fog/aws/parsers/rds/revoke_db_security_group_ingress'
# revokes a db security group ingress
@@ -25,13 +24,10 @@ module Fog
:parser => Fog::Parsers::AWS::RDS::RevokeDBSecurityGroupIngress.new,
'DBSecurityGroupName' => name
}.merge(opts))
-
end
-
end
class Mock
-
def revoke_db_security_group_ingress(name, opts = {})
unless opts.key?('CIDRIP') || (opts.key?('EC2SecurityGroupName') && opts.key?('EC2SecurityGroupOwnerId'))
raise ArgumentError, 'Must specify CIDRIP, or both EC2SecurityGroupName and EC2SecurityGroupOwnerId'
@@ -61,10 +57,7 @@ module Fog
raise Fog::AWS::RDS::NotFound.new("DBSecurityGroupNotFound => #{name} not found")
end
end
-
end
end
end
end
-
-
diff --git a/lib/fog/aws/requests/redshift/authorize_cluster_security_group_ingress.rb b/lib/fog/aws/requests/redshift/authorize_cluster_security_group_ingress.rb
index d53e418..f03b293 100644
--- a/lib/fog/aws/requests/redshift/authorize_cluster_security_group_ingress.rb
+++ b/lib/fog/aws/requests/redshift/authorize_cluster_security_group_ingress.rb
@@ -52,5 +52,3 @@ module Fog
end
end
end
-
-
diff --git a/lib/fog/aws/requests/redshift/authorize_snapshot_access.rb b/lib/fog/aws/requests/redshift/authorize_snapshot_access.rb
index 3c00944..3848910 100644
--- a/lib/fog/aws/requests/redshift/authorize_snapshot_access.rb
+++ b/lib/fog/aws/requests/redshift/authorize_snapshot_access.rb
@@ -37,7 +37,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/copy_cluster_snapshot.rb b/lib/fog/aws/requests/redshift/copy_cluster_snapshot.rb
index f9ac15e..630b9af 100644
--- a/lib/fog/aws/requests/redshift/copy_cluster_snapshot.rb
+++ b/lib/fog/aws/requests/redshift/copy_cluster_snapshot.rb
@@ -41,8 +41,6 @@ module Fog
request(params)
end
end
-
end
end
end
-
diff --git a/lib/fog/aws/requests/redshift/create_cluster.rb b/lib/fog/aws/requests/redshift/create_cluster.rb
index c86fbdb..5d6b24c 100644
--- a/lib/fog/aws/requests/redshift/create_cluster.rb
+++ b/lib/fog/aws/requests/redshift/create_cluster.rb
@@ -119,7 +119,6 @@ module Fog
params[:query].merge!(Fog::AWS.indexed_param('VpcSecurityGroupIds.member.%d', [*vpc_security_group_ids]))
end
-
params[:query]['Action'] = 'CreateCluster'
params[:query]['DBName'] = db_name if db_name
params[:query]['ClusterIdentifier'] = cluster_identifier if cluster_identifier
@@ -141,11 +140,9 @@ module Fog
params[:query]['PubliclyAccessible'] = publicly_accessible if publicly_accessible
params[:query]['Encrypted'] = encrypted if encrypted
-
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/create_cluster_parameter_group.rb b/lib/fog/aws/requests/redshift/create_cluster_parameter_group.rb
index 546abee..fce5225 100644
--- a/lib/fog/aws/requests/redshift/create_cluster_parameter_group.rb
+++ b/lib/fog/aws/requests/redshift/create_cluster_parameter_group.rb
@@ -48,7 +48,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/create_cluster_security_group.rb b/lib/fog/aws/requests/redshift/create_cluster_security_group.rb
index 2f24957..c0d6c66 100644
--- a/lib/fog/aws/requests/redshift/create_cluster_security_group.rb
+++ b/lib/fog/aws/requests/redshift/create_cluster_security_group.rb
@@ -36,7 +36,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/create_cluster_snapshot.rb b/lib/fog/aws/requests/redshift/create_cluster_snapshot.rb
index 30ca4d8..2d05043 100644
--- a/lib/fog/aws/requests/redshift/create_cluster_snapshot.rb
+++ b/lib/fog/aws/requests/redshift/create_cluster_snapshot.rb
@@ -38,7 +38,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/create_cluster_subnet_group.rb b/lib/fog/aws/requests/redshift/create_cluster_subnet_group.rb
index d524118..fdeb130 100644
--- a/lib/fog/aws/requests/redshift/create_cluster_subnet_group.rb
+++ b/lib/fog/aws/requests/redshift/create_cluster_subnet_group.rb
@@ -44,7 +44,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/delete_cluster.rb b/lib/fog/aws/requests/redshift/delete_cluster.rb
index 7335334..79eac19 100644
--- a/lib/fog/aws/requests/redshift/delete_cluster.rb
+++ b/lib/fog/aws/requests/redshift/delete_cluster.rb
@@ -45,7 +45,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/delete_cluster_parameter_group.rb b/lib/fog/aws/requests/redshift/delete_cluster_parameter_group.rb
index c244058..15b5f42 100644
--- a/lib/fog/aws/requests/redshift/delete_cluster_parameter_group.rb
+++ b/lib/fog/aws/requests/redshift/delete_cluster_parameter_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Redshift
class Real
-
# ==== Parameters
#
# @param [Hash] options
diff --git a/lib/fog/aws/requests/redshift/delete_cluster_security_group.rb b/lib/fog/aws/requests/redshift/delete_cluster_security_group.rb
index 3e47b1f..b7f0059 100644
--- a/lib/fog/aws/requests/redshift/delete_cluster_security_group.rb
+++ b/lib/fog/aws/requests/redshift/delete_cluster_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Redshift
class Real
-
# ==== Parameters
#
# @param [Hash] options
diff --git a/lib/fog/aws/requests/redshift/delete_cluster_snapshot.rb b/lib/fog/aws/requests/redshift/delete_cluster_snapshot.rb
index 1f11ecf..659c6f0 100644
--- a/lib/fog/aws/requests/redshift/delete_cluster_snapshot.rb
+++ b/lib/fog/aws/requests/redshift/delete_cluster_snapshot.rb
@@ -38,7 +38,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/delete_cluster_subnet_group.rb b/lib/fog/aws/requests/redshift/delete_cluster_subnet_group.rb
index e92980d..2e1c17b 100644
--- a/lib/fog/aws/requests/redshift/delete_cluster_subnet_group.rb
+++ b/lib/fog/aws/requests/redshift/delete_cluster_subnet_group.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class Redshift
class Real
-
# ==== Parameters
#
# @param [Hash] options
@@ -32,7 +31,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/describe_cluster_parameter_groups.rb b/lib/fog/aws/requests/redshift/describe_cluster_parameter_groups.rb
index 8a669a2..41ee1fe 100644
--- a/lib/fog/aws/requests/redshift/describe_cluster_parameter_groups.rb
+++ b/lib/fog/aws/requests/redshift/describe_cluster_parameter_groups.rb
@@ -42,7 +42,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/describe_cluster_parameters.rb b/lib/fog/aws/requests/redshift/describe_cluster_parameters.rb
index df0ec23..b727a3a 100644
--- a/lib/fog/aws/requests/redshift/describe_cluster_parameters.rb
+++ b/lib/fog/aws/requests/redshift/describe_cluster_parameters.rb
@@ -49,7 +49,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/describe_cluster_security_groups.rb b/lib/fog/aws/requests/redshift/describe_cluster_security_groups.rb
index abd8b39..f902363 100644
--- a/lib/fog/aws/requests/redshift/describe_cluster_security_groups.rb
+++ b/lib/fog/aws/requests/redshift/describe_cluster_security_groups.rb
@@ -44,7 +44,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/describe_cluster_snapshots.rb b/lib/fog/aws/requests/redshift/describe_cluster_snapshots.rb
index 8e36c3c..16be7a5 100644
--- a/lib/fog/aws/requests/redshift/describe_cluster_snapshots.rb
+++ b/lib/fog/aws/requests/redshift/describe_cluster_snapshots.rb
@@ -67,7 +67,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/describe_cluster_subnet_groups.rb b/lib/fog/aws/requests/redshift/describe_cluster_subnet_groups.rb
index c05e877..dd3f64c 100644
--- a/lib/fog/aws/requests/redshift/describe_cluster_subnet_groups.rb
+++ b/lib/fog/aws/requests/redshift/describe_cluster_subnet_groups.rb
@@ -41,7 +41,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/describe_cluster_versions.rb b/lib/fog/aws/requests/redshift/describe_cluster_versions.rb
index 87f1578..1a83c35 100644
--- a/lib/fog/aws/requests/redshift/describe_cluster_versions.rb
+++ b/lib/fog/aws/requests/redshift/describe_cluster_versions.rb
@@ -48,7 +48,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/describe_default_cluster_parameters.rb b/lib/fog/aws/requests/redshift/describe_default_cluster_parameters.rb
index 2b679b2..9749e79 100644
--- a/lib/fog/aws/requests/redshift/describe_default_cluster_parameters.rb
+++ b/lib/fog/aws/requests/redshift/describe_default_cluster_parameters.rb
@@ -43,7 +43,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/describe_events.rb b/lib/fog/aws/requests/redshift/describe_events.rb
index 16e88c8..16a1576 100644
--- a/lib/fog/aws/requests/redshift/describe_events.rb
+++ b/lib/fog/aws/requests/redshift/describe_events.rb
@@ -74,7 +74,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/describe_orderable_cluster_options.rb b/lib/fog/aws/requests/redshift/describe_orderable_cluster_options.rb
index 757f077..a5c591b 100644
--- a/lib/fog/aws/requests/redshift/describe_orderable_cluster_options.rb
+++ b/lib/fog/aws/requests/redshift/describe_orderable_cluster_options.rb
@@ -49,7 +49,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/describe_reserved_node_offerings.rb b/lib/fog/aws/requests/redshift/describe_reserved_node_offerings.rb
index acc1d58..9b8726f 100644
--- a/lib/fog/aws/requests/redshift/describe_reserved_node_offerings.rb
+++ b/lib/fog/aws/requests/redshift/describe_reserved_node_offerings.rb
@@ -42,7 +42,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/describe_reserved_nodes.rb b/lib/fog/aws/requests/redshift/describe_reserved_nodes.rb
index 3a4981d..4138260 100644
--- a/lib/fog/aws/requests/redshift/describe_reserved_nodes.rb
+++ b/lib/fog/aws/requests/redshift/describe_reserved_nodes.rb
@@ -42,7 +42,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/describe_resize.rb b/lib/fog/aws/requests/redshift/describe_resize.rb
index a71de15..a2abf8d 100644
--- a/lib/fog/aws/requests/redshift/describe_resize.rb
+++ b/lib/fog/aws/requests/redshift/describe_resize.rb
@@ -33,7 +33,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/modify_cluster.rb b/lib/fog/aws/requests/redshift/modify_cluster.rb
index 7cedb34..d368714 100644
--- a/lib/fog/aws/requests/redshift/modify_cluster.rb
+++ b/lib/fog/aws/requests/redshift/modify_cluster.rb
@@ -87,7 +87,6 @@ module Fog
params[:query].merge!(Fog::AWS.indexed_param('VpcSecurityGroupIds.member.%d', [*vpc_security_group_ids]))
end
-
params[:query]['Action'] = 'ModifyCluster'
params[:query]['ClusterIdentifier'] = cluster_identifier if cluster_identifier
params[:query]['ClusterParameterGroupName'] = cluster_parameter_group_name if cluster_parameter_group_name
@@ -105,7 +104,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/modify_cluster_subnet_group.rb b/lib/fog/aws/requests/redshift/modify_cluster_subnet_group.rb
index 13e4cba..2ef3dcc 100644
--- a/lib/fog/aws/requests/redshift/modify_cluster_subnet_group.rb
+++ b/lib/fog/aws/requests/redshift/modify_cluster_subnet_group.rb
@@ -44,7 +44,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/purchase_reserved_node_offering.rb b/lib/fog/aws/requests/redshift/purchase_reserved_node_offering.rb
index 35d6abd..e41d522 100644
--- a/lib/fog/aws/requests/redshift/purchase_reserved_node_offering.rb
+++ b/lib/fog/aws/requests/redshift/purchase_reserved_node_offering.rb
@@ -34,8 +34,6 @@ module Fog
request(params)
end
end
-
end
end
end
-
diff --git a/lib/fog/aws/requests/redshift/reboot_cluster.rb b/lib/fog/aws/requests/redshift/reboot_cluster.rb
index b43246c..3ac3490 100644
--- a/lib/fog/aws/requests/redshift/reboot_cluster.rb
+++ b/lib/fog/aws/requests/redshift/reboot_cluster.rb
@@ -29,7 +29,6 @@ module Fog
params[:query]['Action'] = 'RebootCluster'
params[:query]['ClusterIdentifier'] = cluster_identifier if cluster_identifier
request(params)
-
end
end
end
diff --git a/lib/fog/aws/requests/redshift/reset_cluster_parameter_group.rb b/lib/fog/aws/requests/redshift/reset_cluster_parameter_group.rb
index bff7f87..b33c9b3 100644
--- a/lib/fog/aws/requests/redshift/reset_cluster_parameter_group.rb
+++ b/lib/fog/aws/requests/redshift/reset_cluster_parameter_group.rb
@@ -50,8 +50,6 @@ module Fog
request(params)
end
end
-
end
end
end
-
diff --git a/lib/fog/aws/requests/redshift/restore_from_cluster_snapshot.rb b/lib/fog/aws/requests/redshift/restore_from_cluster_snapshot.rb
index 36d7606..ff30d14 100644
--- a/lib/fog/aws/requests/redshift/restore_from_cluster_snapshot.rb
+++ b/lib/fog/aws/requests/redshift/restore_from_cluster_snapshot.rb
@@ -49,7 +49,6 @@ module Fog
publicly_accessible = options[:publicly_accessible]
owner_account = options[:owner_account]
-
path = "/"
params = {
:headers => {},
diff --git a/lib/fog/aws/requests/redshift/revoke_cluster_security_group_ingress.rb b/lib/fog/aws/requests/redshift/revoke_cluster_security_group_ingress.rb
index 6a04134..2432720 100644
--- a/lib/fog/aws/requests/redshift/revoke_cluster_security_group_ingress.rb
+++ b/lib/fog/aws/requests/redshift/revoke_cluster_security_group_ingress.rb
@@ -52,5 +52,3 @@ module Fog
end
end
end
-
-
diff --git a/lib/fog/aws/requests/redshift/revoke_snapshot_access.rb b/lib/fog/aws/requests/redshift/revoke_snapshot_access.rb
index 0b6f37e..9e7f1e6 100644
--- a/lib/fog/aws/requests/redshift/revoke_snapshot_access.rb
+++ b/lib/fog/aws/requests/redshift/revoke_snapshot_access.rb
@@ -38,7 +38,6 @@ module Fog
request(params)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/ses/delete_verified_email_address.rb b/lib/fog/aws/requests/ses/delete_verified_email_address.rb
index 7017e3e..270b505 100644
--- a/lib/fog/aws/requests/ses/delete_verified_email_address.rb
+++ b/lib/fog/aws/requests/ses/delete_verified_email_address.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SES
class Real
-
require 'fog/aws/parsers/ses/delete_verified_email_address'
# Delete an existing verified email address
@@ -21,7 +20,6 @@ module Fog
:parser => Fog::Parsers::AWS::SES::DeleteVerifiedEmailAddress.new
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/ses/get_send_quota.rb b/lib/fog/aws/requests/ses/get_send_quota.rb
index fc9a0a8..b113c2f 100644
--- a/lib/fog/aws/requests/ses/get_send_quota.rb
+++ b/lib/fog/aws/requests/ses/get_send_quota.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SES
class Real
-
require 'fog/aws/parsers/ses/get_send_quota'
# Returns the user's current activity limits.
@@ -24,7 +23,6 @@ module Fog
:parser => Fog::Parsers::AWS::SES::GetSendQuota.new
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/ses/get_send_statistics.rb b/lib/fog/aws/requests/ses/get_send_statistics.rb
index a197ff3..fd11e12 100644
--- a/lib/fog/aws/requests/ses/get_send_statistics.rb
+++ b/lib/fog/aws/requests/ses/get_send_statistics.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SES
class Real
-
require 'fog/aws/parsers/ses/get_send_statistics'
# Returns the user's current activity limits.
@@ -27,7 +26,6 @@ module Fog
:parser => Fog::Parsers::AWS::SES::GetSendStatistics.new
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/ses/list_verified_email_addresses.rb b/lib/fog/aws/requests/ses/list_verified_email_addresses.rb
index ff90814..7d5d6bf 100644
--- a/lib/fog/aws/requests/ses/list_verified_email_addresses.rb
+++ b/lib/fog/aws/requests/ses/list_verified_email_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SES
class Real
-
require 'fog/aws/parsers/ses/list_verified_email_addresses'
# Returns a list containing all of the email addresses that have been verified
@@ -21,7 +20,6 @@ module Fog
:parser => Fog::Parsers::AWS::SES::ListVerifiedEmailAddresses.new
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/ses/send_email.rb b/lib/fog/aws/requests/ses/send_email.rb
index 6db1d7b..1d247cf 100644
--- a/lib/fog/aws/requests/ses/send_email.rb
+++ b/lib/fog/aws/requests/ses/send_email.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SES
class Real
-
require 'fog/aws/parsers/ses/send_email'
# Send an email
@@ -53,11 +52,11 @@ module Fog
end
end
- if options.has_key?('ReplyToAddresses')
+ if options.key?('ReplyToAddresses')
params.merge!(Fog::AWS.indexed_param("ReplyToAddresses.member", [*options['ReplyToAddresses']]))
end
- if options.has_key?('ReturnPath')
+ if options.key?('ReturnPath')
params['ReturnPath'] = options['ReturnPath']
end
@@ -66,7 +65,6 @@ module Fog
:parser => Fog::Parsers::AWS::SES::SendEmail.new
}.merge(params))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/ses/send_raw_email.rb b/lib/fog/aws/requests/ses/send_raw_email.rb
index 3f7bfa8..1a92654 100644
--- a/lib/fog/aws/requests/ses/send_raw_email.rb
+++ b/lib/fog/aws/requests/ses/send_raw_email.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SES
class Real
-
require 'fog/aws/parsers/ses/send_raw_email'
# Send a raw email
@@ -21,10 +20,10 @@ module Fog
# * 'RequestId'<~String> - Id of request
def send_raw_email(raw_message, options = {})
params = {}
- if options.has_key?('Destinations')
+ if options.key?('Destinations')
params.merge!(Fog::AWS.indexed_param('Destinations.member', [*options['Destinations']]))
end
- if options.has_key?('Source')
+ if options.key?('Source')
params['Source'] = options['Source']
end
@@ -34,7 +33,6 @@ module Fog
:parser => Fog::Parsers::AWS::SES::SendRawEmail.new
}.merge(params))
end
-
end
end
end
diff --git a/lib/fog/aws/requests/ses/verify_domain_identity.rb b/lib/fog/aws/requests/ses/verify_domain_identity.rb
index 54229d8..3296528 100644
--- a/lib/fog/aws/requests/ses/verify_domain_identity.rb
+++ b/lib/fog/aws/requests/ses/verify_domain_identity.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SES
class Real
-
require 'fog/aws/parsers/ses/verify_domain_identity'
# Verifies a domain. This action returns a verification authorization
@@ -23,7 +22,6 @@ module Fog
:parser => Fog::Parsers::AWS::SES::VerifyDomainIdentity.new
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/ses/verify_email_address.rb b/lib/fog/aws/requests/ses/verify_email_address.rb
index 8f37f76..0098a6f 100644
--- a/lib/fog/aws/requests/ses/verify_email_address.rb
+++ b/lib/fog/aws/requests/ses/verify_email_address.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SES
class Real
-
require 'fog/aws/parsers/ses/verify_email_address'
# Verifies an email address. This action causes a confirmation email message to be sent to the specified address.
@@ -21,7 +20,6 @@ module Fog
:parser => Fog::Parsers::AWS::SES::VerifyEmailAddress.new
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/simpledb/batch_put_attributes.rb b/lib/fog/aws/requests/simpledb/batch_put_attributes.rb
index 6af0828..cb99282 100644
--- a/lib/fog/aws/requests/simpledb/batch_put_attributes.rb
+++ b/lib/fog/aws/requests/simpledb/batch_put_attributes.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SimpleDB
class Real
-
# Put items attributes into a SimpleDB domain
#
# ==== Parameters
@@ -27,11 +26,9 @@ module Fog
:parser => Fog::Parsers::AWS::SimpleDB::Basic.new(@nil_string)
}.merge!(encode_batch_attributes(items, replace_attributes)))
end
-
end
class Mock
-
def batch_put_attributes(domain_name, items, replace_attributes = Hash.new([]))
response = Excon::Response.new
if self.data[:domains][domain_name]
@@ -57,7 +54,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/simpledb/create_domain.rb b/lib/fog/aws/requests/simpledb/create_domain.rb
index 9512f0e..e192db1 100644
--- a/lib/fog/aws/requests/simpledb/create_domain.rb
+++ b/lib/fog/aws/requests/simpledb/create_domain.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SimpleDB
class Real
-
# Create a SimpleDB domain
#
# ==== Parameters
@@ -22,11 +21,9 @@ module Fog
:parser => Fog::Parsers::AWS::SimpleDB::Basic.new(@nil_string)
)
end
-
end
class Mock
-
def create_domain(domain_name)
response = Excon::Response.new
self.data[:domains][domain_name] = {}
@@ -37,7 +34,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/simpledb/delete_attributes.rb b/lib/fog/aws/requests/simpledb/delete_attributes.rb
index b51011a..e1ccce9 100644
--- a/lib/fog/aws/requests/simpledb/delete_attributes.rb
+++ b/lib/fog/aws/requests/simpledb/delete_attributes.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SimpleDB
class Real
-
# List metadata for SimpleDB domain
#
# ==== Parameters
@@ -30,11 +29,9 @@ module Fog
:parser => Fog::Parsers::AWS::SimpleDB::Basic.new(@nil_string)
}.merge!(encode_attributes(attributes)))
end
-
end
class Mock
-
def delete_attributes(domain_name, item_name, attributes = nil)
response = Excon::Response.new
if self.data[:domains][domain_name]
@@ -66,7 +63,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/simpledb/delete_domain.rb b/lib/fog/aws/requests/simpledb/delete_domain.rb
index e780ccc..217e3b9 100644
--- a/lib/fog/aws/requests/simpledb/delete_domain.rb
+++ b/lib/fog/aws/requests/simpledb/delete_domain.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SimpleDB
class Real
-
# Delete a SimpleDB domain
#
# ==== Parameters
@@ -22,11 +21,9 @@ module Fog
:parser => Fog::Parsers::AWS::SimpleDB::Basic.new(@nil_string)
)
end
-
end
class Mock
-
def delete_domain(domain_name)
response = Excon::Response.new
if self.data[:domains].delete(domain_name)
@@ -38,7 +35,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/simpledb/domain_metadata.rb b/lib/fog/aws/requests/simpledb/domain_metadata.rb
index 486ef15..2e04a78 100644
--- a/lib/fog/aws/requests/simpledb/domain_metadata.rb
+++ b/lib/fog/aws/requests/simpledb/domain_metadata.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SimpleDB
class Real
-
require 'fog/aws/parsers/simpledb/domain_metadata'
# List metadata for SimpleDB domain
@@ -31,11 +30,9 @@ module Fog
:parser => Fog::Parsers::AWS::SimpleDB::DomainMetadata.new(@nil_string)
)
end
-
end
class Mock
-
def domain_metadata(domain_name)
response = Excon::Response.new
if domain = self.data[:domains][domain_name]
@@ -69,7 +66,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/simpledb/get_attributes.rb b/lib/fog/aws/requests/simpledb/get_attributes.rb
index 079cd88..e0a9113 100644
--- a/lib/fog/aws/requests/simpledb/get_attributes.rb
+++ b/lib/fog/aws/requests/simpledb/get_attributes.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SimpleDB
class Real
-
require 'fog/aws/parsers/simpledb/get_attributes'
# List metadata for SimpleDB domain
@@ -42,11 +41,9 @@ module Fog
:parser => Fog::Parsers::AWS::SimpleDB::GetAttributes.new(@nil_string)
}.merge!(encode_attribute_names(options['AttributeName'])))
end
-
end
class Mock
-
def get_attributes(domain_name, item_name, options = {})
if options.is_a?(Array)
Fog::Logger.deprecation("get_attributes with array attributes param is deprecated, use 'AttributeName' => attributes) instead [light_black](#{caller.first})[/]")
@@ -58,7 +55,7 @@ module Fog
object = {}
if !options['AttributeName'].empty?
for attribute in options['AttributeName']
- if self.data[:domains][domain_name].has_key?(item_name) && self.data[:domains][domain_name][item_name].has_key?(attribute)
+ if self.data[:domains][domain_name].key?(item_name) && self.data[:domains][domain_name][item_name].key?(attribute)
object[attribute] = self.data[:domains][domain_name][item_name][attribute]
end
end
@@ -77,7 +74,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/simpledb/list_domains.rb b/lib/fog/aws/requests/simpledb/list_domains.rb
index c76829e..ef62b8a 100644
--- a/lib/fog/aws/requests/simpledb/list_domains.rb
+++ b/lib/fog/aws/requests/simpledb/list_domains.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SimpleDB
class Real
-
require 'fog/aws/parsers/simpledb/list_domains'
# List SimpleDB domains
@@ -27,11 +26,9 @@ module Fog
:parser => Fog::Parsers::AWS::SimpleDB::ListDomains.new(@nil_string)
}.merge!(options))
end
-
end
class Mock
-
def list_domains(options = {})
response = Excon::Response.new
keys = self.data[:domains].keys
@@ -52,7 +49,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/simpledb/put_attributes.rb b/lib/fog/aws/requests/simpledb/put_attributes.rb
index c891100..bb40f74 100644
--- a/lib/fog/aws/requests/simpledb/put_attributes.rb
+++ b/lib/fog/aws/requests/simpledb/put_attributes.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SimpleDB
class Real
-
# Put item attributes into a SimpleDB domain
#
# ==== Parameters
@@ -34,11 +33,9 @@ module Fog
:parser => Fog::Parsers::AWS::SimpleDB::Basic.new(@nil_string)
}.merge!(encode_attributes(attributes, options[:replace], options[:expect])))
end
-
end
class Mock
-
def put_attributes(domain_name, item_name, attributes, options = {})
options[:expect] = {} unless options[:expect]
options[:replace] = [] unless options[:replace]
@@ -71,7 +68,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/simpledb/select.rb b/lib/fog/aws/requests/simpledb/select.rb
index 331053d..56d05c5 100644
--- a/lib/fog/aws/requests/simpledb/select.rb
+++ b/lib/fog/aws/requests/simpledb/select.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SimpleDB
class Real
-
require 'fog/aws/parsers/simpledb/select'
# Select item data from SimpleDB
@@ -36,7 +35,6 @@ module Fog
:parser => Fog::Parsers::AWS::SimpleDB::Select.new(@nil_string)
)
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sns/add_permission.rb b/lib/fog/aws/requests/sns/add_permission.rb
index b6ec32b..6b68986 100644
--- a/lib/fog/aws/requests/sns/add_permission.rb
+++ b/lib/fog/aws/requests/sns/add_permission.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SNS
class Real
-
require 'fog/aws/parsers/sns/add_permission'
def add_permission(options = {})
@@ -11,15 +10,12 @@ module Fog
:parser => Fog::Parsers::AWS::SNS::AddPermission.new
}.merge!(options))
end
-
end
class Mock
-
def add_permission(options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sns/confirm_subscription.rb b/lib/fog/aws/requests/sns/confirm_subscription.rb
index a0c3e5e..75ecefb 100644
--- a/lib/fog/aws/requests/sns/confirm_subscription.rb
+++ b/lib/fog/aws/requests/sns/confirm_subscription.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SNS
class Real
-
require 'fog/aws/parsers/sns/confirm_subscription'
# Confirm a subscription
@@ -25,9 +24,7 @@ module Fog
:parser => Fog::Parsers::AWS::SNS::ConfirmSubscription.new
}.merge!(options))
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sns/create_topic.rb b/lib/fog/aws/requests/sns/create_topic.rb
index b44b6fa..8273ab5 100644
--- a/lib/fog/aws/requests/sns/create_topic.rb
+++ b/lib/fog/aws/requests/sns/create_topic.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SNS
class Real
-
require 'fog/aws/parsers/sns/create_topic'
# Create a topic
@@ -21,9 +20,7 @@ module Fog
:parser => Fog::Parsers::AWS::SNS::CreateTopic.new
})
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sns/delete_topic.rb b/lib/fog/aws/requests/sns/delete_topic.rb
index 52a06fa..e5d10e9 100644
--- a/lib/fog/aws/requests/sns/delete_topic.rb
+++ b/lib/fog/aws/requests/sns/delete_topic.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SNS
class Real
-
require 'fog/aws/parsers/sns/delete_topic'
# Delete a topic
@@ -21,9 +20,7 @@ module Fog
:parser => Fog::Parsers::AWS::SNS::DeleteTopic.new
})
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sns/get_topic_attributes.rb b/lib/fog/aws/requests/sns/get_topic_attributes.rb
index e9cd881..dab7531 100644
--- a/lib/fog/aws/requests/sns/get_topic_attributes.rb
+++ b/lib/fog/aws/requests/sns/get_topic_attributes.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SNS
class Real
-
require 'fog/aws/parsers/sns/get_topic_attributes'
# Get attributes of a topic
@@ -21,9 +20,7 @@ module Fog
:parser => Fog::Parsers::AWS::SNS::GetTopicAttributes.new
})
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sns/list_subscriptions.rb b/lib/fog/aws/requests/sns/list_subscriptions.rb
index 223d731..377d230 100644
--- a/lib/fog/aws/requests/sns/list_subscriptions.rb
+++ b/lib/fog/aws/requests/sns/list_subscriptions.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SNS
class Real
-
require 'fog/aws/parsers/sns/list_subscriptions'
# List subscriptions
@@ -21,9 +20,7 @@ module Fog
:parser => Fog::Parsers::AWS::SNS::ListSubscriptions.new
}.merge!(options))
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sns/list_subscriptions_by_topic.rb b/lib/fog/aws/requests/sns/list_subscriptions_by_topic.rb
index cc078d8..c6ff0a0 100644
--- a/lib/fog/aws/requests/sns/list_subscriptions_by_topic.rb
+++ b/lib/fog/aws/requests/sns/list_subscriptions_by_topic.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SNS
class Real
-
require 'fog/aws/parsers/sns/list_subscriptions'
# List subscriptions for a topic
@@ -23,9 +22,7 @@ module Fog
:parser => Fog::Parsers::AWS::SNS::ListSubscriptions.new
}.merge!(options))
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sns/list_topics.rb b/lib/fog/aws/requests/sns/list_topics.rb
index fdd9fd0..8dc63d1 100644
--- a/lib/fog/aws/requests/sns/list_topics.rb
+++ b/lib/fog/aws/requests/sns/list_topics.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SNS
class Real
-
require 'fog/aws/parsers/sns/list_topics'
# List topics
@@ -21,9 +20,7 @@ module Fog
:parser => Fog::Parsers::AWS::SNS::ListTopics.new
}.merge!(options))
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sns/publish.rb b/lib/fog/aws/requests/sns/publish.rb
index f871766..d161fed 100644
--- a/lib/fog/aws/requests/sns/publish.rb
+++ b/lib/fog/aws/requests/sns/publish.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SNS
class Real
-
require 'fog/aws/parsers/sns/publish'
# Send a message to a topic
@@ -26,9 +25,7 @@ module Fog
:parser => Fog::Parsers::AWS::SNS::Publish.new
}.merge!(options))
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sns/remove_permission.rb b/lib/fog/aws/requests/sns/remove_permission.rb
index b920314..743b00b 100644
--- a/lib/fog/aws/requests/sns/remove_permission.rb
+++ b/lib/fog/aws/requests/sns/remove_permission.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SNS
class Real
-
require 'fog/aws/parsers/sns/remove_permission'
def remove_permission(options = {})
@@ -11,15 +10,12 @@ module Fog
:parser => Fog::Parsers::AWS::SNS::RemovePermission.new
}.merge!(options))
end
-
end
class Mock
-
def remove_permission(options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sns/set_topic_attributes.rb b/lib/fog/aws/requests/sns/set_topic_attributes.rb
index 8e30a89..e579047 100644
--- a/lib/fog/aws/requests/sns/set_topic_attributes.rb
+++ b/lib/fog/aws/requests/sns/set_topic_attributes.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SNS
class Real
-
require 'fog/aws/parsers/sns/set_topic_attributes'
# Set attributes of a topic
@@ -25,9 +24,7 @@ module Fog
:parser => Fog::Parsers::AWS::SNS::SetTopicAttributes.new
})
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sns/subscribe.rb b/lib/fog/aws/requests/sns/subscribe.rb
index ede9de2..0c1a56c 100644
--- a/lib/fog/aws/requests/sns/subscribe.rb
+++ b/lib/fog/aws/requests/sns/subscribe.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SNS
class Real
-
require 'fog/aws/parsers/sns/subscribe'
# Create a subscription
@@ -25,9 +24,7 @@ module Fog
:parser => Fog::Parsers::AWS::SNS::Subscribe.new
})
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sns/unsubscribe.rb b/lib/fog/aws/requests/sns/unsubscribe.rb
index 0a990db..dbeb4f8 100644
--- a/lib/fog/aws/requests/sns/unsubscribe.rb
+++ b/lib/fog/aws/requests/sns/unsubscribe.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SNS
class Real
-
require 'fog/aws/parsers/sns/unsubscribe'
# Delete a subscription
@@ -21,9 +20,7 @@ module Fog
:parser => Fog::Parsers::AWS::SNS::Unsubscribe.new
})
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sqs/change_message_visibility.rb b/lib/fog/aws/requests/sqs/change_message_visibility.rb
index b330d82..c748067 100644
--- a/lib/fog/aws/requests/sqs/change_message_visibility.rb
+++ b/lib/fog/aws/requests/sqs/change_message_visibility.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SQS
class Real
-
require 'fog/aws/parsers/sqs/basic'
# Change visibility timeout for a message
@@ -25,16 +24,14 @@ module Fog
:path => path_from_queue_url(queue_url)
})
end
-
end
class Mock
-
def change_message_visibility(queue_url, receipt_handle, visibility_timeout)
Excon::Response.new.tap do |response|
if (queue = data[:queues][queue_url])
message_id, _ = queue[:receipt_handles].find { |message_id, receipts|
- receipts.has_key?(receipt_handle)
+ receipts.key?(receipt_handle)
}
if message_id
@@ -55,9 +52,7 @@ module Fog
end
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sqs/create_queue.rb b/lib/fog/aws/requests/sqs/create_queue.rb
index cbac2b8..76f34a9 100644
--- a/lib/fog/aws/requests/sqs/create_queue.rb
+++ b/lib/fog/aws/requests/sqs/create_queue.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SQS
class Real
-
require 'fog/aws/parsers/sqs/create_queue'
# Create a queue
@@ -23,7 +22,6 @@ module Fog
:parser => Fog::Parsers::AWS::SQS::CreateQueue.new
}.merge!(options))
end
-
end
class Mock
@@ -57,7 +55,6 @@ module Fog
'QueueUrl' => queue_url
}
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sqs/delete_message.rb b/lib/fog/aws/requests/sqs/delete_message.rb
index da5a4d9..e1a2b87 100644
--- a/lib/fog/aws/requests/sqs/delete_message.rb
+++ b/lib/fog/aws/requests/sqs/delete_message.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SQS
class Real
-
require 'fog/aws/parsers/sqs/basic'
# Delete a message from a queue
@@ -23,16 +22,14 @@ module Fog
:path => path_from_queue_url(queue_url),
})
end
-
end
class Mock
-
def delete_message(queue_url, receipt_handle)
Excon::Response.new.tap do |response|
if (queue = data[:queues][queue_url])
message_id, _ = queue[:receipt_handles].find { |msg_id, receipts|
- receipts.has_key?(receipt_handle)
+ receipts.key?(receipt_handle)
}
if message_id
@@ -53,7 +50,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sqs/delete_queue.rb b/lib/fog/aws/requests/sqs/delete_queue.rb
index 6d8c3d5..0640ad3 100644
--- a/lib/fog/aws/requests/sqs/delete_queue.rb
+++ b/lib/fog/aws/requests/sqs/delete_queue.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SQS
class Real
-
require 'fog/aws/parsers/sqs/basic'
# Delete a queue
@@ -21,11 +20,9 @@ module Fog
:path => path_from_queue_url(queue_url),
})
end
-
end
class Mock
-
def delete_queue(queue_url)
Excon::Response.new.tap do |response|
if (queue = data[:queues][queue_url])
@@ -44,9 +41,7 @@ module Fog
end
end
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sqs/get_queue_attributes.rb b/lib/fog/aws/requests/sqs/get_queue_attributes.rb
index 23a92b4..7e53799 100644
--- a/lib/fog/aws/requests/sqs/get_queue_attributes.rb
+++ b/lib/fog/aws/requests/sqs/get_queue_attributes.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SQS
class Real
-
require 'fog/aws/parsers/sqs/get_queue_attributes'
# Get attributes of a queue
@@ -23,11 +22,9 @@ module Fog
:parser => Fog::Parsers::AWS::SQS::GetQueueAttributes.new
})
end
-
end
class Mock
-
def get_queue_attributes(queue_url, attribute_name)
Excon::Response.new.tap do |response|
if (queue = data[:queues][queue_url])
@@ -45,7 +42,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sqs/list_queues.rb b/lib/fog/aws/requests/sqs/list_queues.rb
index 9a99195..416a574 100644
--- a/lib/fog/aws/requests/sqs/list_queues.rb
+++ b/lib/fog/aws/requests/sqs/list_queues.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SQS
class Real
-
require 'fog/aws/parsers/sqs/list_queues'
# List queues
diff --git a/lib/fog/aws/requests/sqs/receive_message.rb b/lib/fog/aws/requests/sqs/receive_message.rb
index d829a67..ba10964 100644
--- a/lib/fog/aws/requests/sqs/receive_message.rb
+++ b/lib/fog/aws/requests/sqs/receive_message.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SQS
class Real
-
require 'fog/aws/parsers/sqs/receive_message'
# Get a message from a queue (marks it as unavailable temporarily, but does not remove from queue, see delete_message)
@@ -26,11 +25,9 @@ module Fog
:parser => Fog::Parsers::AWS::SQS::ReceiveMessage.new
}.merge!(options))
end
-
end
class Mock
-
def receive_message(queue_url, options = {})
Excon::Response.new.tap do |response|
if (queue = data[:queues][queue_url])
@@ -80,7 +77,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sqs/send_message.rb b/lib/fog/aws/requests/sqs/send_message.rb
index 335238b..728bdd6 100644
--- a/lib/fog/aws/requests/sqs/send_message.rb
+++ b/lib/fog/aws/requests/sqs/send_message.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SQS
class Real
-
require 'fog/aws/parsers/sqs/send_message'
# Add a message to a queue
@@ -23,11 +22,9 @@ module Fog
:parser => Fog::Parsers::AWS::SQS::SendMessage.new
})
end
-
end
class Mock
-
def send_message(queue_url, message)
Excon::Response.new.tap do |response|
if (queue = data[:queues][queue_url])
@@ -62,7 +59,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sqs/set_queue_attributes.rb b/lib/fog/aws/requests/sqs/set_queue_attributes.rb
index 20ef227..41e34dd 100644
--- a/lib/fog/aws/requests/sqs/set_queue_attributes.rb
+++ b/lib/fog/aws/requests/sqs/set_queue_attributes.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class SQS
class Real
-
require 'fog/aws/parsers/sqs/basic'
# Get attributes of a queue
@@ -25,7 +24,6 @@ module Fog
:parser => Fog::Parsers::AWS::SQS::Basic.new
})
end
-
end
class Mock
diff --git a/lib/fog/aws/requests/storage/abort_multipart_upload.rb b/lib/fog/aws/requests/storage/abort_multipart_upload.rb
index 0b2d15e..4191e3f 100644
--- a/lib/fog/aws/requests/storage/abort_multipart_upload.rb
+++ b/lib/fog/aws/requests/storage/abort_multipart_upload.rb
@@ -21,7 +21,6 @@ module Fog
:query => {'uploadId' => upload_id}
})
end
-
end # Real
class Mock # :nodoc:all
diff --git a/lib/fog/aws/requests/storage/acl_utils.rb b/lib/fog/aws/requests/storage/acl_utils.rb
index b11689b..61902f9 100644
--- a/lib/fog/aws/requests/storage/acl_utils.rb
+++ b/lib/fog/aws/requests/storage/acl_utils.rb
@@ -1,7 +1,6 @@
module Fog
module Storage
class AWS
-
require 'fog/aws/parsers/storage/access_control_list'
private
@@ -22,11 +21,11 @@ module Fog
data << " <Grant>\n"
grantee = grant['Grantee']
type = case
- when grantee.has_key?('ID')
+ when grantee.key?('ID')
'CanonicalUser'
- when grantee.has_key?('EmailAddress')
+ when grantee.key?('EmailAddress')
'AmazonCustomerByEmail'
- when grantee.has_key?('URI')
+ when grantee.key?('URI')
'Group'
end
@@ -56,7 +55,6 @@ module Fog
Nokogiri::XML::SAX::Parser.new(parser).parse(acl_xml)
parser.response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/complete_multipart_upload.rb b/lib/fog/aws/requests/storage/complete_multipart_upload.rb
index 1713a74..c5580cc 100644
--- a/lib/fog/aws/requests/storage/complete_multipart_upload.rb
+++ b/lib/fog/aws/requests/storage/complete_multipart_upload.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/complete_multipart_upload'
# Complete a multipart upload
@@ -45,7 +44,6 @@ module Fog
:query => {'uploadId' => upload_id}
})
end
-
end # Real
class Mock # :nodoc:all
diff --git a/lib/fog/aws/requests/storage/copy_object.rb b/lib/fog/aws/requests/storage/copy_object.rb
index c6faa93..a4310f1 100644
--- a/lib/fog/aws/requests/storage/copy_object.rb
+++ b/lib/fog/aws/requests/storage/copy_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/copy_object'
# Copy an object from one S3 bucket to another
@@ -39,11 +38,9 @@ module Fog
:parser => Fog::Parsers::Storage::AWS::CopyObject.new,
})
end
-
end
class Mock # :nodoc:all
-
def copy_object(source_bucket_name, source_object_name, target_bucket_name, target_object_name, options = {})
response = Excon::Response.new
source_bucket = self.data[:buckets][source_bucket_name]
@@ -74,7 +71,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/cors_utils.rb b/lib/fog/aws/requests/storage/cors_utils.rb
index 44ecc24..0e4b3e5 100644
--- a/lib/fog/aws/requests/storage/cors_utils.rb
+++ b/lib/fog/aws/requests/storage/cors_utils.rb
@@ -1,7 +1,6 @@
module Fog
module Storage
class AWS
-
require 'fog/aws/parsers/storage/cors_configuration'
private
@@ -35,7 +34,6 @@ module Fog
Nokogiri::XML::SAX::Parser.new(parser).parse(cors_xml)
parser.response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/delete_bucket.rb b/lib/fog/aws/requests/storage/delete_bucket.rb
index f4ebf14..2d53310 100644
--- a/lib/fog/aws/requests/storage/delete_bucket.rb
+++ b/lib/fog/aws/requests/storage/delete_bucket.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Delete an S3 bucket
#
# @param bucket_name [String] name of bucket to delete
@@ -20,11 +19,9 @@ module Fog
:method => 'DELETE'
})
end
-
end
class Mock # :nodoc:all
-
def delete_bucket(bucket_name)
response = Excon::Response.new
if self.data[:buckets][bucket_name].nil?
@@ -39,9 +36,7 @@ module Fog
end
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/delete_bucket_cors.rb b/lib/fog/aws/requests/storage/delete_bucket_cors.rb
index 6c775f2..27900a6 100644
--- a/lib/fog/aws/requests/storage/delete_bucket_cors.rb
+++ b/lib/fog/aws/requests/storage/delete_bucket_cors.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Deletes the cors configuration information set for the bucket.
#
# @param bucket_name [String] name of bucket to delete cors rules from
@@ -21,9 +20,7 @@ module Fog
:query => {'cors' => nil}
})
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/delete_bucket_lifecycle.rb b/lib/fog/aws/requests/storage/delete_bucket_lifecycle.rb
index 411ceab..3574fbb 100644
--- a/lib/fog/aws/requests/storage/delete_bucket_lifecycle.rb
+++ b/lib/fog/aws/requests/storage/delete_bucket_lifecycle.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Delete lifecycle configuration for a bucket
#
# @param bucket_name [String] name of bucket to delete lifecycle configuration from
diff --git a/lib/fog/aws/requests/storage/delete_bucket_policy.rb b/lib/fog/aws/requests/storage/delete_bucket_policy.rb
index f9bfca9..22cba09 100644
--- a/lib/fog/aws/requests/storage/delete_bucket_policy.rb
+++ b/lib/fog/aws/requests/storage/delete_bucket_policy.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Delete policy for a bucket
#
# @param bucket_name [String] name of bucket to delete policy from
@@ -21,9 +20,7 @@ module Fog
:query => {'policy' => nil}
})
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/delete_bucket_tagging.rb b/lib/fog/aws/requests/storage/delete_bucket_tagging.rb
index b99227d..8c3af34 100644
--- a/lib/fog/aws/requests/storage/delete_bucket_tagging.rb
+++ b/lib/fog/aws/requests/storage/delete_bucket_tagging.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Delete tagging for a bucket
#
# @param bucket_name [String] name of bucket to delete tagging from
@@ -21,11 +20,9 @@ module Fog
:query => {'tagging' => nil}
})
end
-
end
class Mock # :nodoc:all
-
def delete_bucket_tagging(bucket_name)
response = Excon::Response.new
if self.data[:buckets][bucket_name]
@@ -38,9 +35,7 @@ module Fog
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/delete_bucket_website.rb b/lib/fog/aws/requests/storage/delete_bucket_website.rb
index 8dcdb44..d6e80d8 100644
--- a/lib/fog/aws/requests/storage/delete_bucket_website.rb
+++ b/lib/fog/aws/requests/storage/delete_bucket_website.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Delete website configuration for a bucket
#
# @param bucket_name [String] name of bucket to delete website configuration from
@@ -21,9 +20,7 @@ module Fog
:query => {'website' => nil}
})
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/delete_multiple_objects.rb b/lib/fog/aws/requests/storage/delete_multiple_objects.rb
index 40da111..229cc7c 100644
--- a/lib/fog/aws/requests/storage/delete_multiple_objects.rb
+++ b/lib/fog/aws/requests/storage/delete_multiple_objects.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/delete_multiple_objects'
# Delete multiple objects from S3
@@ -61,11 +60,9 @@ module Fog
:query => {'delete' => nil}
})
end
-
end
class Mock # :nodoc:all
-
def delete_multiple_objects(bucket_name, object_names, options = {})
headers = options.dup
headers.delete(:quiet)
@@ -161,9 +158,7 @@ module Fog
}
}
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/requests/storage/delete_object.rb b/lib/fog/aws/requests/storage/delete_object.rb
index 4eed5d9..2f0dd31 100644
--- a/lib/fog/aws/requests/storage/delete_object.rb
+++ b/lib/fog/aws/requests/storage/delete_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Delete an object from S3
#
# @param bucket_name [String] Name of bucket containing object to delete
@@ -30,11 +29,9 @@ module Fog
:path => path
})
end
-
end
class Mock # :nodoc:all
-
def delete_object(bucket_name, object_name, options = {})
response = Excon::Response.new
if bucket = self.data[:buckets][bucket_name]
@@ -111,7 +108,6 @@ module Fog
}
}
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/get_bucket.rb b/lib/fog/aws/requests/storage/get_bucket.rb
index 4e24157..266e428 100644
--- a/lib/fog/aws/requests/storage/get_bucket.rb
+++ b/lib/fog/aws/requests/storage/get_bucket.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/get_bucket'
# List information about objects in an S3 bucket
@@ -51,11 +50,9 @@ module Fog
:query => options
})
end
-
end
class Mock # :nodoc:all
-
def get_bucket(bucket_name, options = {})
prefix, marker, delimiter, max_keys = \
options['prefix'], options['marker'], options['delimiter'], options['max-keys']
@@ -66,12 +63,12 @@ module Fog
end
response = Excon::Response.new
if bucket = self.data[:buckets][bucket_name]
- contents = bucket[:objects].values.collect(&:first).sort {|x,y| x['Key'] <=> y['Key']}.reject do |object|
+ contents = bucket[:objects].values.map(&:first).sort {|x,y| x['Key'] <=> y['Key']}.reject do |object|
(prefix && object['Key'][0...prefix.length] != prefix) ||
(marker && object['Key'] <= marker) ||
(delimiter && object['Key'][(prefix ? prefix.length : 0)..-1].include?(delimiter) \
&& common_prefixes << object['Key'].sub(/^(#{prefix}[^#{delimiter}]+.).*/, '\1')) ||
- object.has_key?(:delete_marker)
+ object.key?(:delete_marker)
end.map do |object|
data = object.reject {|key, value| !['ETag', 'Key', 'StorageClass'].include?(key)}
data.merge!({
@@ -105,7 +102,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/get_bucket_acl.rb b/lib/fog/aws/requests/storage/get_bucket_acl.rb
index af506e2..5b5560d 100644
--- a/lib/fog/aws/requests/storage/get_bucket_acl.rb
+++ b/lib/fog/aws/requests/storage/get_bucket_acl.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/access_control_list'
# Get access control list for an S3 bucket
@@ -40,11 +39,9 @@ module Fog
:query => {'acl' => nil}
})
end
-
end
class Mock # :nodoc:all
-
require 'fog/aws/requests/storage/acl_utils'
def get_bucket_acl(bucket_name)
@@ -62,7 +59,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/get_bucket_cors.rb b/lib/fog/aws/requests/storage/get_bucket_cors.rb
index b9c1aa4..21e42f1 100644
--- a/lib/fog/aws/requests/storage/get_bucket_cors.rb
+++ b/lib/fog/aws/requests/storage/get_bucket_cors.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/cors_configuration'
# Gets the CORS configuration for an S3 bucket
@@ -36,11 +35,9 @@ module Fog
:query => {'cors' => nil}
})
end
-
end
class Mock # :nodoc:all
-
require 'fog/aws/requests/storage/cors_utils'
def get_bucket_cors(bucket_name)
@@ -58,7 +55,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/get_bucket_lifecycle.rb b/lib/fog/aws/requests/storage/get_bucket_lifecycle.rb
index 4fb957b..21983ec 100644
--- a/lib/fog/aws/requests/storage/get_bucket_lifecycle.rb
+++ b/lib/fog/aws/requests/storage/get_bucket_lifecycle.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/get_bucket_lifecycle'
# Get bucket lifecycle configuration
@@ -30,9 +29,7 @@ module Fog
:query => {'lifecycle' => nil}
})
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/requests/storage/get_bucket_location.rb b/lib/fog/aws/requests/storage/get_bucket_location.rb
index 7dc3824..2c8378a 100644
--- a/lib/fog/aws/requests/storage/get_bucket_location.rb
+++ b/lib/fog/aws/requests/storage/get_bucket_location.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/get_bucket_location'
# Get location constraint for an S3 bucket
@@ -26,11 +25,9 @@ module Fog
:query => {'location' => nil}
})
end
-
end
class Mock # :nodoc:all
-
def get_bucket_location(bucket_name)
response = Excon::Response.new
if bucket = self.data[:buckets][bucket_name]
@@ -51,7 +48,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/get_bucket_logging.rb b/lib/fog/aws/requests/storage/get_bucket_logging.rb
index e62e83f..87c8d5e 100644
--- a/lib/fog/aws/requests/storage/get_bucket_logging.rb
+++ b/lib/fog/aws/requests/storage/get_bucket_logging.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/get_bucket_logging'
# Get logging status for an S3 bucket
@@ -40,7 +39,6 @@ module Fog
:query => {'logging' => nil}
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/get_bucket_object_versions.rb b/lib/fog/aws/requests/storage/get_bucket_object_versions.rb
index 424ebdb..11ba690 100644
--- a/lib/fog/aws/requests/storage/get_bucket_object_versions.rb
+++ b/lib/fog/aws/requests/storage/get_bucket_object_versions.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/get_bucket_object_versions'
# List information about object versions in an S3 bucket
@@ -61,7 +60,6 @@ module Fog
:parser => Fog::Parsers::Storage::AWS::GetBucketObjectVersions.new,
:query => {'versions' => nil}.merge!(options) })
end
-
end
class Mock
@@ -94,13 +92,13 @@ module Fog
# We need to order results by S3 key, but since our data store is key => [versions], we want to ensure the integrity
# of the versions as well. So, sort the keys, then fetch the versions, and then combine them all as a sorted list by
# flattening the results.
- contents = bucket[:objects].keys.sort.collect { |key| bucket[:objects][key] }.flatten.reject do |object|
+ contents = bucket[:objects].keys.sort.map { |key| bucket[:objects][key] }.flatten.reject do |object|
(prefix && object['Key'][0...prefix.length] != prefix) ||
(key_marker && object['Key'] <= key_marker) ||
(delimiter && object['Key'][(prefix ? prefix.length : 0)..-1].include?(delimiter) \
&& common_prefixes << object['Key'].sub(/^(#{prefix}[^#{delimiter}]+.).*/, '\1'))
end.map do |object|
- if object.has_key?(:delete_marker)
+ if object.key?(:delete_marker)
tag_name = 'DeleteMarker'
extracted_attrs = ['Key', 'VersionId']
else
diff --git a/lib/fog/aws/requests/storage/get_bucket_policy.rb b/lib/fog/aws/requests/storage/get_bucket_policy.rb
index fcda482..8a1c793 100644
--- a/lib/fog/aws/requests/storage/get_bucket_policy.rb
+++ b/lib/fog/aws/requests/storage/get_bucket_policy.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Get bucket policy for an S3 bucket
#
# @param bucket_name [String] name of bucket to get policy for
@@ -26,9 +25,7 @@ module Fog
})
response.body = Fog::JSON.decode(response.body) unless response.body.nil?
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/get_bucket_tagging.rb b/lib/fog/aws/requests/storage/get_bucket_tagging.rb
index f840785..a5f9794 100644
--- a/lib/fog/aws/requests/storage/get_bucket_tagging.rb
+++ b/lib/fog/aws/requests/storage/get_bucket_tagging.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/get_bucket_tagging'
# Get tags for an S3 bucket
@@ -30,11 +29,9 @@ module Fog
:query => {'tagging' => nil}
})
end
-
end
class Mock # :nodoc:all
-
def get_bucket_tagging(bucket_name)
response = Excon::Response.new
if self.data[:buckets][bucket_name] && self.data[:bucket_tagging][bucket_name]
@@ -47,7 +44,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/get_bucket_versioning.rb b/lib/fog/aws/requests/storage/get_bucket_versioning.rb
index db295dd..b3e91dc 100644
--- a/lib/fog/aws/requests/storage/get_bucket_versioning.rb
+++ b/lib/fog/aws/requests/storage/get_bucket_versioning.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/get_bucket_versioning'
# Get versioning status for an S3 bucket
diff --git a/lib/fog/aws/requests/storage/get_bucket_website.rb b/lib/fog/aws/requests/storage/get_bucket_website.rb
index cda7d90..a64ff65 100644
--- a/lib/fog/aws/requests/storage/get_bucket_website.rb
+++ b/lib/fog/aws/requests/storage/get_bucket_website.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/get_bucket_website'
# Get website configuration for an S3 bucket
@@ -33,7 +32,6 @@ module Fog
:query => {'website' => nil}
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/get_object.rb b/lib/fog/aws/requests/storage/get_object.rb
index 66026ce..4aee509 100644
--- a/lib/fog/aws/requests/storage/get_object.rb
+++ b/lib/fog/aws/requests/storage/get_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Get an object from S3
#
# @param bucket_name [String] Name of bucket to read from
@@ -61,11 +60,9 @@ module Fog
:method => 'GET',
}))
end
-
end
class Mock # :nodoc:all
-
def get_object(bucket_name, object_name, options = {}, &block)
version_id = options.delete('versionId')
@@ -80,7 +77,7 @@ module Fog
response = Excon::Response.new
if (bucket = self.data[:buckets][bucket_name])
object = nil
- if bucket[:objects].has_key?(object_name)
+ if bucket[:objects].key?(object_name)
object = version_id ? bucket[:objects][object_name].find { |object| object['VersionId'] == version_id} : bucket[:objects][object_name].first
end
diff --git a/lib/fog/aws/requests/storage/get_object_acl.rb b/lib/fog/aws/requests/storage/get_object_acl.rb
index e2dfe14..f074e6c 100644
--- a/lib/fog/aws/requests/storage/get_object_acl.rb
+++ b/lib/fog/aws/requests/storage/get_object_acl.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/access_control_list'
# Get access control list for an S3 object
@@ -51,11 +50,9 @@ module Fog
:query => query
})
end
-
end
class Mock # :nodoc:all
-
require 'fog/aws/requests/storage/acl_utils'
def get_object_acl(bucket_name, object_name, options = {})
@@ -73,7 +70,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/get_object_http_url.rb b/lib/fog/aws/requests/storage/get_object_http_url.rb
index b844835..1b5480a 100644
--- a/lib/fog/aws/requests/storage/get_object_http_url.rb
+++ b/lib/fog/aws/requests/storage/get_object_http_url.rb
@@ -1,17 +1,13 @@
module Fog
module Storage
class AWS
-
module GetObjectHttpUrl
-
def get_object_http_url(bucket_name, object_name, expires, options = {})
get_object_url(bucket_name, object_name, expires, options.merge(:scheme => 'http'))
end
-
end
class Real
-
# Get an expiring object http url from S3
#
# @param bucket_name [String] Name of bucket containing object
@@ -24,13 +20,10 @@ module Fog
# @see http://docs.amazonwebservices.com/AmazonS3/latest/dev/S3_QSAuth.html
include GetObjectHttpUrl
-
end
class Mock # :nodoc:all
-
include GetObjectHttpUrl
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/get_object_https_url.rb b/lib/fog/aws/requests/storage/get_object_https_url.rb
index f8588cd..5b8411e 100644
--- a/lib/fog/aws/requests/storage/get_object_https_url.rb
+++ b/lib/fog/aws/requests/storage/get_object_https_url.rb
@@ -1,17 +1,13 @@
module Fog
module Storage
class AWS
-
module GetObjectHttpsUrl
-
def get_object_https_url(bucket_name, object_name, expires, options = {})
get_object_url(bucket_name, object_name, expires, options.merge(:scheme => 'https'))
end
-
end
class Real
-
# Get an expiring object https url from S3
#
# @param bucket_name [String] Name of bucket containing object
@@ -24,13 +20,10 @@ module Fog
# @see http://docs.amazonwebservices.com/AmazonS3/latest/dev/S3_QSAuth.html
include GetObjectHttpsUrl
-
end
class Mock # :nodoc:all
-
include GetObjectHttpsUrl
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/get_object_torrent.rb b/lib/fog/aws/requests/storage/get_object_torrent.rb
index 1036cee..2ebab2d 100644
--- a/lib/fog/aws/requests/storage/get_object_torrent.rb
+++ b/lib/fog/aws/requests/storage/get_object_torrent.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Get torrent for an S3 object
#
# @param bucket_name [String] name of bucket containing object
@@ -40,7 +39,6 @@ module Fog
:query => {'torrent' => nil}
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/get_object_url.rb b/lib/fog/aws/requests/storage/get_object_url.rb
index 591a2be..fc304e1 100644
--- a/lib/fog/aws/requests/storage/get_object_url.rb
+++ b/lib/fog/aws/requests/storage/get_object_url.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class AWS
-
module GetObjectUrl
-
def get_object_url(bucket_name, object_name, expires, options = {})
unless bucket_name
raise ArgumentError.new('bucket_name is required')
@@ -20,7 +18,6 @@ module Fog
end
class Real
-
# Get an expiring object url from S3
#
# @param bucket_name [String] Name of bucket containing object
@@ -33,13 +30,10 @@ module Fog
# @see http://docs.amazonwebservices.com/AmazonS3/latest/dev/S3_QSAuth.html
include GetObjectUrl
-
end
class Mock # :nodoc:all
-
include GetObjectUrl
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/get_request_payment.rb b/lib/fog/aws/requests/storage/get_request_payment.rb
index 55bdb7c..c12baef 100644
--- a/lib/fog/aws/requests/storage/get_request_payment.rb
+++ b/lib/fog/aws/requests/storage/get_request_payment.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/get_request_payment'
# Get configured payer for an S3 bucket
@@ -26,11 +25,9 @@ module Fog
:query => {'requestPayment' => nil}
})
end
-
end
class Mock # :nodoc:all
-
def get_request_payment(bucket_name)
response = Excon::Response.new
if bucket = self.data[:buckets][bucket_name]
@@ -42,7 +39,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/get_service.rb b/lib/fog/aws/requests/storage/get_service.rb
index a13b3df..497f54d 100644
--- a/lib/fog/aws/requests/storage/get_service.rb
+++ b/lib/fog/aws/requests/storage/get_service.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/get_service'
# List information about S3 buckets for authorized user
@@ -28,11 +27,9 @@ module Fog
:parser => Fog::Parsers::Storage::AWS::GetService.new
})
end
-
end
class Mock # :nodoc:all
-
def get_service
response = Excon::Response.new
response.headers['Status'] = 200
@@ -47,7 +44,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/head_bucket.rb b/lib/fog/aws/requests/storage/head_bucket.rb
new file mode 100644
index 0000000..7ef4fb6
--- /dev/null
+++ b/lib/fog/aws/requests/storage/head_bucket.rb
@@ -0,0 +1,38 @@
+module Fog
+ module Storage
+ class AWS
+ class Real
+ # Get headers for an S3 bucket, used to verify if it exists and if you have permission to access it
+ #
+ # @param bucket_name [String] Name of bucket to read from
+ #
+ # @return [Excon::Response] 200 response implies it exists, 404 does not exist, 403 no permissions
+ # * body [String] Empty
+ # * headers [Hash]:
+ # * Content-Type [String] - MIME type of object
+ #
+ # @see http://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketHEAD.html
+ #
+ def head_bucket(bucket_name)
+ unless bucket_name
+ raise ArgumentError.new('bucket_name is required')
+ end
+ request({
+ :expects => 200,
+ :bucket_name => bucket_name,
+ :idempotent => true,
+ :method => 'HEAD',
+ })
+ end
+ end
+
+ class Mock # :nodoc:all
+ def head_bucket(bucket_name)
+ response = get_bucket(bucket_name)
+ response.body = nil
+ response
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/aws/requests/storage/head_object.rb b/lib/fog/aws/requests/storage/head_object.rb
index 6d99ff9..9d2d1e3 100644
--- a/lib/fog/aws/requests/storage/head_object.rb
+++ b/lib/fog/aws/requests/storage/head_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Get headers for an object from S3
#
# @param bucket_name [String] Name of bucket to read from
@@ -49,17 +48,14 @@ module Fog
:query => query
})
end
-
end
class Mock # :nodoc:all
-
def head_object(bucket_name, object_name, options = {})
response = get_object(bucket_name, object_name, options)
response.body = nil
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/initiate_multipart_upload.rb b/lib/fog/aws/requests/storage/initiate_multipart_upload.rb
index da0b969..95e8912 100644
--- a/lib/fog/aws/requests/storage/initiate_multipart_upload.rb
+++ b/lib/fog/aws/requests/storage/initiate_multipart_upload.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/initiate_multipart_upload'
# Initiate a multipart upload to an S3 bucket
@@ -37,7 +36,6 @@ module Fog
:query => {'uploads' => nil}
})
end
-
end # Real
class Mock # :nodoc:all
diff --git a/lib/fog/aws/requests/storage/list_multipart_uploads.rb b/lib/fog/aws/requests/storage/list_multipart_uploads.rb
index bd078dc..eb45c0e 100644
--- a/lib/fog/aws/requests/storage/list_multipart_uploads.rb
+++ b/lib/fog/aws/requests/storage/list_multipart_uploads.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/list_multipart_uploads'
# List multipart uploads for a bucket
@@ -47,7 +46,6 @@ module Fog
:query => options.merge!({'uploads' => nil})
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/list_parts.rb b/lib/fog/aws/requests/storage/list_parts.rb
index 4a388d3..4344870 100644
--- a/lib/fog/aws/requests/storage/list_parts.rb
+++ b/lib/fog/aws/requests/storage/list_parts.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/parsers/storage/list_parts'
# List parts for a multipart upload
@@ -48,7 +47,6 @@ module Fog
:query => options.merge!({'uploadId' => upload_id})
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/post_object_hidden_fields.rb b/lib/fog/aws/requests/storage/post_object_hidden_fields.rb
index 0f6ae81..f5771c9 100644
--- a/lib/fog/aws/requests/storage/post_object_hidden_fields.rb
+++ b/lib/fog/aws/requests/storage/post_object_hidden_fields.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Get a hash of hidden fields for form uploading to S3, in the form {:field_name => :field_value}
# Form should look like: <form action="http://#{bucket_name}.s3.amazonaws.com/" method="post" enctype="multipart/form-data">
# These hidden fields should then appear, followed by a field named 'file' which is either a textarea or file input.
@@ -31,7 +30,6 @@ module Fog
end
options
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/post_object_restore.rb b/lib/fog/aws/requests/storage/post_object_restore.rb
index 468c3f2..6e738c8 100644
--- a/lib/fog/aws/requests/storage/post_object_restore.rb
+++ b/lib/fog/aws/requests/storage/post_object_restore.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Restore an object from Glacier to its original S3 path
#
# @param bucket_name [String] Name of bucket containing object
@@ -37,17 +36,14 @@ module Fog
:path => CGI.escape(object_name)
})
end
-
end
class Mock # :nodoc:all
-
def post_object_restore(bucket_name, object_name, days = 100000)
response = get_object(bucket_name, object_name)
response.body = nil
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/put_bucket.rb b/lib/fog/aws/requests/storage/put_bucket.rb
index 25fcd29..c07a4bb 100644
--- a/lib/fog/aws/requests/storage/put_bucket.rb
+++ b/lib/fog/aws/requests/storage/put_bucket.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Create an S3 bucket
#
# @param bucket_name [String] name of bucket to create
@@ -35,11 +34,9 @@ DATA
:method => 'PUT'
})
end
-
end
class Mock # :nodoc:all
-
def put_bucket(bucket_name, options = {})
acl = options['x-amz-acl'] || 'private'
if !['private', 'public-read', 'public-read-write', 'authenticated-read'].include?(acl)
@@ -70,7 +67,6 @@ DATA
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/put_bucket_acl.rb b/lib/fog/aws/requests/storage/put_bucket_acl.rb
index 69caa5d..d8abcbf 100644
--- a/lib/fog/aws/requests/storage/put_bucket_acl.rb
+++ b/lib/fog/aws/requests/storage/put_bucket_acl.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/requests/storage/acl_utils'
# Change access control list for an S3 bucket
@@ -65,7 +64,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/put_bucket_cors.rb b/lib/fog/aws/requests/storage/put_bucket_cors.rb
index 707f4bd..0b645fc 100644
--- a/lib/fog/aws/requests/storage/put_bucket_cors.rb
+++ b/lib/fog/aws/requests/storage/put_bucket_cors.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/requests/storage/cors_utils'
# Sets the cors configuration for your bucket. If the configuration exists, Amazon S3 replaces it.
@@ -43,7 +42,6 @@ module Fog
self.data[:cors][:bucket][bucket_name] = Fog::Storage::AWS.hash_to_cors(cors)
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/put_bucket_lifecycle.rb b/lib/fog/aws/requests/storage/put_bucket_lifecycle.rb
index 769c057..fbc1184 100644
--- a/lib/fog/aws/requests/storage/put_bucket_lifecycle.rb
+++ b/lib/fog/aws/requests/storage/put_bucket_lifecycle.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Change lifecycle configuration for an S3 bucket
#
# @param bucket_name [String] name of bucket to set lifecycle configuration for
diff --git a/lib/fog/aws/requests/storage/put_bucket_logging.rb b/lib/fog/aws/requests/storage/put_bucket_logging.rb
index 8fa9b5b..74a3650 100644
--- a/lib/fog/aws/requests/storage/put_bucket_logging.rb
+++ b/lib/fog/aws/requests/storage/put_bucket_logging.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Change logging status for an S3 bucket
#
# @param bucket_name [String] name of bucket to modify
@@ -74,7 +73,6 @@ DATA
:query => {'logging' => nil}
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/put_bucket_policy.rb b/lib/fog/aws/requests/storage/put_bucket_policy.rb
index 4ab3272..75aad7f 100644
--- a/lib/fog/aws/requests/storage/put_bucket_policy.rb
+++ b/lib/fog/aws/requests/storage/put_bucket_policy.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Change bucket policy for an S3 bucket
#
# @param bucket_name [String] name of bucket to modify
@@ -20,9 +19,7 @@ module Fog
:query => {'policy' => nil}
})
end
-
end
end
end
end
-
diff --git a/lib/fog/aws/requests/storage/put_bucket_tagging.rb b/lib/fog/aws/requests/storage/put_bucket_tagging.rb
index 1e63c32..cce053c 100644
--- a/lib/fog/aws/requests/storage/put_bucket_tagging.rb
+++ b/lib/fog/aws/requests/storage/put_bucket_tagging.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Change tag set for an S3 bucket
#
# @param bucket_name [String] name of bucket to modify
@@ -34,11 +33,9 @@ DATA
:query => {'tagging' => nil}
})
end
-
end
class Mock # :nodoc:all
-
def put_bucket_tagging(bucket_name, tags)
response = Excon::Response.new
@@ -52,9 +49,7 @@ DATA
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/put_bucket_versioning.rb b/lib/fog/aws/requests/storage/put_bucket_versioning.rb
index 9a8c72c..deb1f11 100644
--- a/lib/fog/aws/requests/storage/put_bucket_versioning.rb
+++ b/lib/fog/aws/requests/storage/put_bucket_versioning.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Change versioning status for an S3 bucket
#
# @param bucket_name [String] name of bucket to modify
diff --git a/lib/fog/aws/requests/storage/put_bucket_website.rb b/lib/fog/aws/requests/storage/put_bucket_website.rb
index 1c79bf8..da15e02 100644
--- a/lib/fog/aws/requests/storage/put_bucket_website.rb
+++ b/lib/fog/aws/requests/storage/put_bucket_website.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Change website configuration for an S3 bucket
#
# @param bucket_name [String] name of bucket to modify
@@ -40,11 +39,9 @@ DATA
:query => {'website' => nil}
})
end
-
end
class Mock # :nodoc:all
-
def put_bucket_website(bucket_name, suffix, options = {})
response = Excon::Response.new
if self.data[:buckets][bucket_name]
@@ -56,9 +53,7 @@ DATA
response
end
-
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/put_object.rb b/lib/fog/aws/requests/storage/put_object.rb
index bfc5ebd..c60f2c4 100644
--- a/lib/fog/aws/requests/storage/put_object.rb
+++ b/lib/fog/aws/requests/storage/put_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Create an object in an S3 bucket
#
# @param bucket_name [String] Name of bucket to create object in
@@ -39,11 +38,9 @@ module Fog
:method => 'PUT',
})
end
-
end
class Mock # :nodoc:all
-
require 'fog/aws/requests/storage/shared_mock_methods'
include Fog::Storage::AWS::SharedMockMethods
@@ -70,7 +67,6 @@ module Fog
response.headers['x-amz-version-id'] = object['VersionId'] if object['VersionId'] != 'null'
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/put_object_acl.rb b/lib/fog/aws/requests/storage/put_object_acl.rb
index 9ddbcb3..e2b6663 100644
--- a/lib/fog/aws/requests/storage/put_object_acl.rb
+++ b/lib/fog/aws/requests/storage/put_object_acl.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
require 'fog/aws/requests/storage/acl_utils'
# Change access control list for an S3 object
@@ -74,7 +73,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/put_object_url.rb b/lib/fog/aws/requests/storage/put_object_url.rb
index 70cd1da..b0ea262 100644
--- a/lib/fog/aws/requests/storage/put_object_url.rb
+++ b/lib/fog/aws/requests/storage/put_object_url.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
module PutObjectUrl
-
def put_object_url(bucket_name, object_name, expires, headers = {}, options = {})
unless bucket_name
raise ArgumentError.new('bucket_name is required')
@@ -20,7 +19,6 @@ module Fog
end
class Real
-
# Get an expiring object url from S3 for putting an object
#
# @param bucket_name [String] Name of bucket containing object
@@ -33,13 +31,10 @@ module Fog
# @see http://docs.amazonwebservices.com/AmazonS3/latest/dev/S3_QSAuth.html
include PutObjectUrl
-
end
class Mock # :nodoc:all
-
include PutObjectUrl
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/put_request_payment.rb b/lib/fog/aws/requests/storage/put_request_payment.rb
index 21e2534..5126808 100644
--- a/lib/fog/aws/requests/storage/put_request_payment.rb
+++ b/lib/fog/aws/requests/storage/put_request_payment.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Change who pays for requests to an S3 bucket
#
# @param bucket_name [String] name of bucket to modify
@@ -26,11 +25,9 @@ DATA
:query => {'requestPayment' => nil}
})
end
-
end
class Mock # :nodoc:all
-
def put_request_payment(bucket_name, payer)
response = Excon::Response.new
if bucket = self.data[:buckets][bucket_name]
@@ -42,7 +39,6 @@ DATA
end
response
end
-
end
end
end
diff --git a/lib/fog/aws/requests/storage/sync_clock.rb b/lib/fog/aws/requests/storage/sync_clock.rb
index 7dbc576..6690412 100644
--- a/lib/fog/aws/requests/storage/sync_clock.rb
+++ b/lib/fog/aws/requests/storage/sync_clock.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Sync clock against S3 to avoid skew errors
#
def sync_clock
@@ -13,15 +12,12 @@ module Fog
end
Fog::Time.now = Time.parse(response.headers['Date'])
end
-
end # Real
class Mock # :nodoc:all
-
def sync_clock
true
end
-
end # Mock
end # Storage
end # AWS
diff --git a/lib/fog/aws/requests/storage/upload_part.rb b/lib/fog/aws/requests/storage/upload_part.rb
index d74b3b9..ed9f330 100644
--- a/lib/fog/aws/requests/storage/upload_part.rb
+++ b/lib/fog/aws/requests/storage/upload_part.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class AWS
class Real
-
# Upload a part for a multipart upload
#
# @param bucket_name [String] Name of bucket to add part to
@@ -34,7 +33,6 @@ module Fog
:query => {'uploadId' => upload_id, 'partNumber' => part_number}
})
end
-
end # Real
class Mock # :nodoc:all
diff --git a/lib/fog/aws/requests/sts/assume_role.rb b/lib/fog/aws/requests/sts/assume_role.rb
index ff9f591..8735751 100644
--- a/lib/fog/aws/requests/sts/assume_role.rb
+++ b/lib/fog/aws/requests/sts/assume_role.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class STS
class Real
-
require 'fog/aws/parsers/sts/assume_role'
# Assume Role
@@ -39,7 +38,6 @@ module Fog
:parser => Fog::Parsers::AWS::STS::AssumeRole.new
})
end
-
end
end
end
diff --git a/lib/fog/aws/requests/sts/get_federation_token.rb b/lib/fog/aws/requests/sts/get_federation_token.rb
index 2a8ce0e..192e7ce 100644
--- a/lib/fog/aws/requests/sts/get_federation_token.rb
+++ b/lib/fog/aws/requests/sts/get_federation_token.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class STS
class Real
-
require 'fog/aws/parsers/sts/get_session_token'
# Get federation token
diff --git a/lib/fog/aws/requests/sts/get_session_token.rb b/lib/fog/aws/requests/sts/get_session_token.rb
index f76531b..18d02f4 100644
--- a/lib/fog/aws/requests/sts/get_session_token.rb
+++ b/lib/fog/aws/requests/sts/get_session_token.rb
@@ -2,7 +2,6 @@ module Fog
module AWS
class STS
class Real
-
require 'fog/aws/parsers/sts/get_session_token'
def get_session_token(duration=43200)
diff --git a/lib/fog/aws/ses.rb b/lib/fog/aws/ses.rb
index 2653775..7dc51a1 100644
--- a/lib/fog/aws/ses.rb
+++ b/lib/fog/aws/ses.rb
@@ -9,7 +9,7 @@ module Fog
class MessageRejected < Fog::Errors::Error; end
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at
+ recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
request_path 'fog/aws/requests/ses'
request :delete_verified_email_address
@@ -22,11 +22,9 @@ module Fog
request :send_raw_email
class Mock
-
def initialize(options={})
Fog::Mock.not_implemented
end
-
end
class Real
@@ -55,6 +53,8 @@ module Fog
@use_iam_profile = options[:use_iam_profile]
setup_credentials(options)
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.ses'
@connection_options = options[:connection_options] || {}
options[:region] ||= 'us-east-1'
@host = options[:host] || "email.#{options[:region]}.amazonaws.com"
@@ -86,7 +86,6 @@ module Fog
idempotent = params.delete(:idempotent)
parser = params.delete(:parser)
-
headers = {
'Content-Type' => 'application/x-www-form-urlencoded',
'Date' => Fog::Time.now.to_date_header,
@@ -106,32 +105,37 @@ module Fog
end
body.chop! # remove trailing '&'
- begin
- response = @connection.request({
- :body => body,
- :expects => 200,
- :headers => headers,
- :idempotent => idempotent,
- :host => @host,
- :method => 'POST',
- :parser => parser
- })
- rescue Excon::Errors::HTTPStatusError => error
- match = Fog::AWS::Errors.match_error(error)
- raise if match.empty?
- raise case match[:code]
- when 'MessageRejected'
- Fog::AWS::SES::MessageRejected.slurp(error, match[:message])
- when 'InvalidParameterValue'
- Fog::AWS::SES::InvalidParameterError.slurp(error, match[:message])
- else
- Fog::AWS::SES::Error.slurp(error, "#{match[:code]} => #{match[:message]}")
- end
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(body, headers, idempotent, parser)
+ end
+ else
+ _request(body, headers, idempotent, parser)
end
-
- response
end
+ def _requrest(body, headers, idempotent, parser)
+ @connection.request({
+ :body => body,
+ :expects => 200,
+ :headers => headers,
+ :idempotent => idempotent,
+ :host => @host,
+ :method => 'POST',
+ :parser => parser
+ })
+ rescue Excon::Errors::HTTPStatusError => error
+ match = Fog::AWS::Errors.match_error(error)
+ raise if match.empty?
+ raise case match[:code]
+ when 'MessageRejected'
+ Fog::AWS::SES::MessageRejected.slurp(error, match[:message])
+ when 'InvalidParameterValue'
+ Fog::AWS::SES::InvalidParameterError.slurp(error, match[:message])
+ else
+ Fog::AWS::SES::Error.slurp(error, "#{match[:code]} => #{match[:message]}")
+ end
+ end
end
end
end
diff --git a/lib/fog/aws/signaturev4.rb b/lib/fog/aws/signaturev4.rb
index 0dfdea4..a132003 100644
--- a/lib/fog/aws/signaturev4.rb
+++ b/lib/fog/aws/signaturev4.rb
@@ -57,7 +57,7 @@ DATA
end
def signed_headers(headers)
- headers.keys.collect {|key| key.to_s}.sort.collect {|key| key.downcase}.join(';')
+ headers.keys.map {|key| key.to_s}.sort.map {|key| key.downcase}.join(';')
end
def derived_hmac(date)
@@ -67,8 +67,6 @@ DATA
kSigning = Fog::HMAC.new('sha256', kService).sign('aws4_request')
Fog::HMAC.new('sha256', kSigning)
end
-
-
end
end
end
diff --git a/lib/fog/aws/simpledb.rb b/lib/fog/aws/simpledb.rb
index 12d0755..9054ae9 100644
--- a/lib/fog/aws/simpledb.rb
+++ b/lib/fog/aws/simpledb.rb
@@ -6,7 +6,7 @@ module Fog
extend Fog::AWS::CredentialFetcher::ServiceMethods
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :host, :nil_string, :path, :port, :scheme, :persistent, :region, :aws_session_token, :use_iam_profile, :aws_credentials_expire_at
+ recognizes :host, :nil_string, :path, :port, :scheme, :persistent, :region, :aws_session_token, :use_iam_profile, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
request_path 'fog/aws/requests/simpledb'
request :batch_put_attributes
@@ -20,7 +20,6 @@ module Fog
request :select
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {
@@ -77,6 +76,8 @@ module Fog
setup_credentials(options)
@connection_options = options[:connection_options] || {}
@nil_string = options[:nil_string]|| 'nil'
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.simpledb'
options[:region] ||= 'us-east-1'
@host = options[:host] || case options[:region]
@@ -178,7 +179,17 @@ module Fog
}
)
- response = @connection.request({
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(body, idempotent, parser)
+ end
+ else
+ _request(body, idempotent, parser)
+ end
+ end
+
+ def _request(body, idempotent, parser)
+ @connection.request({
:body => body,
:expects => 200,
:headers => { 'Content-Type' => 'application/x-www-form-urlencoded; charset=utf-8' },
@@ -186,8 +197,6 @@ module Fog
:method => 'POST',
:parser => parser
})
-
- response
end
def sdb_encode(value)
@@ -197,7 +206,6 @@ module Fog
value.to_s
end
end
-
end
end
end
diff --git a/lib/fog/aws/sns.rb b/lib/fog/aws/sns.rb
index 1a1a69d..76cf6df 100644
--- a/lib/fog/aws/sns.rb
+++ b/lib/fog/aws/sns.rb
@@ -6,7 +6,7 @@ module Fog
extend Fog::AWS::CredentialFetcher::ServiceMethods
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :host, :path, :port, :scheme, :persistent, :region, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at
+ recognizes :host, :path, :port, :scheme, :persistent, :region, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
request_path 'fog/aws/requests/sns'
request :add_permission
@@ -24,10 +24,8 @@ module Fog
request :unsubscribe
class Mock
-
def initialize(options={})
end
-
end
class Real
@@ -53,6 +51,8 @@ module Fog
@use_iam_profile = options[:use_iam_profile]
setup_credentials(options)
@connection_options = options[:connection_options] || {}
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.sns'
options[:region] ||= 'us-east-1'
@host = options[:host] || "sns.#{options[:region]}.amazonaws.com"
@@ -97,7 +97,17 @@ module Fog
}
)
- response = @connection.request({
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(body, idempotent, parser)
+ end
+ else
+ _request(body, idempotent, parser)
+ end
+ end
+
+ def _request(body, idempotent, parser)
+ @connection.request({
:body => body,
:expects => 200,
:idempotent => idempotent,
@@ -105,10 +115,7 @@ module Fog
:method => 'POST',
:parser => parser
})
-
- response
end
-
end
end
end
diff --git a/lib/fog/aws/sqs.rb b/lib/fog/aws/sqs.rb
index be74ef0..8809500 100644
--- a/lib/fog/aws/sqs.rb
+++ b/lib/fog/aws/sqs.rb
@@ -6,7 +6,7 @@ module Fog
extend Fog::AWS::CredentialFetcher::ServiceMethods
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :region, :host, :path, :port, :scheme, :persistent, :aws_session_token, :use_iam_profile, :aws_credentials_expire_at
+ recognizes :region, :host, :path, :port, :scheme, :persistent, :aws_session_token, :use_iam_profile, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
request_path 'fog/aws/requests/sqs'
request :change_message_visibility
@@ -81,6 +81,8 @@ module Fog
def initialize(options={})
@use_iam_profile = options[:use_iam_profile]
setup_credentials(options)
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.sqs'
@connection_options = options[:connection_options] || {}
options[:region] ||= 'us-east-1'
@host = options[:host] || "sqs.#{options[:region]}.amazonaws.com"
@@ -130,21 +132,28 @@ module Fog
}
)
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(body, idempotent, parser, path)
+ end
+ else
+ _request(body, idempotent, parser, path)
+ end
+ end
+
+ def _request(body, idempotent, parser, path)
args = {
:body => body,
:expects => 200,
:idempotent => idempotent,
:headers => { 'Content-Type' => 'application/x-www-form-urlencoded' },
:method => 'POST',
- :parser => parser
- }
- args.merge!(:path => path) if path
-
- response = @connection.request(args)
+ :parser => parser,
+ :path => path
+ }.reject{|_,v| v.nil? }
- response
+ @connection.request(args)
end
-
end
end
end
diff --git a/lib/fog/aws/storage.rb b/lib/fog/aws/storage.rb
index 5f2b22a..d2a0006 100644
--- a/lib/fog/aws/storage.rb
+++ b/lib/fog/aws/storage.rb
@@ -44,7 +44,7 @@ module Fog
]
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :endpoint, :region, :host, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :path_style
+ recognizes :endpoint, :region, :host, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :path_style, :instrumentor, :instrumentor_name
secrets :aws_secret_access_key, :hmac
@@ -85,6 +85,7 @@ module Fog
request :get_object_url
request :get_request_payment
request :get_service
+ request :head_bucket
request :head_object
request :initiate_multipart_upload
request :list_multipart_uploads
@@ -108,7 +109,6 @@ module Fog
request :upload_part
module Utils
-
attr_accessor :region
def cdn
@@ -260,7 +260,6 @@ module Fog
:query => query,
}).to_s
end
-
end
class Mock
@@ -385,7 +384,6 @@ module Fog
@aws_session_token = options[:aws_session_token]
@aws_credentials_expire_at = options[:aws_credentials_expire_at]
end
-
end
class Real
@@ -414,6 +412,8 @@ module Fog
@use_iam_profile = options[:use_iam_profile]
setup_credentials(options)
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.storage'
@connection_options = options[:connection_options] || {}
@persistent = options.fetch(:persistent, false)
@@ -459,7 +459,6 @@ DATA
end
string_to_sign << canonical_amz_headers
-
query_string = ''
if params[:query]
query_args = []
@@ -535,16 +534,22 @@ DATA
# FIXME: ToHashParser should make this not needed
original_params = params.dup
- begin
- response = connection(scheme, host, port).request(params, &block)
- rescue Excon::Errors::TemporaryRedirect => error
- headers = (error.response.is_a?(Hash) ? error.response[:headers] : error.response.headers)
- uri = URI.parse(headers['Location'])
- Fog::Logger.warning("fog: followed redirect to #{uri.host}, connecting to the matching region will be more performant")
- response = Fog::XML::Connection.new("#{uri.scheme}://#{uri.host}:#{uri.port}", false, @connection_options).request(original_params, &block)
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(scheme, host, port, params, original_params, &block)
+ end
+ else
+ _request(scheme, host, port, params, original_params, &block)
end
+ end
- response
+ def _request(scheme, host, port, params, original_params, &block)
+ connection(scheme, host, port).request(params, &block)
+ rescue Excon::Errors::TemporaryRedirect => error
+ headers = (error.response.is_a?(Hash) ? error.response[:headers] : error.response.headers)
+ uri = URI.parse(headers['Location'])
+ Fog::Logger.warning("fog: followed redirect to #{uri.host}, connecting to the matching region will be more performant")
+ Fog::XML::Connection.new("#{uri.scheme}://#{uri.host}:#{uri.port}", false, @connection_options).request(original_params, &block)
end
end
end
diff --git a/lib/fog/aws/sts.rb b/lib/fog/aws/sts.rb
index 4a89933..cea95db 100644
--- a/lib/fog/aws/sts.rb
+++ b/lib/fog/aws/sts.rb
@@ -9,7 +9,7 @@ module Fog
class ValidationError < Fog::AWS::STS::Error; end
requires :aws_access_key_id, :aws_secret_access_key
- recognizes :host, :path, :port, :scheme, :persistent, :aws_session_token, :use_iam_profile, :aws_credentials_expire_at
+ recognizes :host, :path, :port, :scheme, :persistent, :aws_session_token, :use_iam_profile, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
request_path 'fog/aws/requests/sts'
request :get_federation_token
@@ -76,6 +76,8 @@ module Fog
@use_iam_profile = options[:use_iam_profile]
setup_credentials(options)
+ @instrumentor = options[:instrumentor]
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.sts'
@connection_options = options[:connection_options] || {}
@host = options[:host] || 'sts.amazonaws.com'
@@ -117,28 +119,34 @@ module Fog
}
)
- begin
- @connection.request({
- :body => body,
- :expects => 200,
- :idempotent => idempotent,
- :headers => { 'Content-Type' => 'application/x-www-form-urlencoded' },
- :method => 'POST',
- :parser => parser
- })
- rescue Excon::Errors::HTTPStatusError => error
- match = Fog::AWS::Errors.match_error(error)
- raise if match.empty?
- raise case match[:code]
- when 'EntityAlreadyExists', 'KeyPairMismatch', 'LimitExceeded', 'MalformedCertificate', 'ValidationError'
- Fog::AWS::STS.const_get(match[:code]).slurp(error, match[:message])
- else
- Fog::AWS::STS::Error.slurp(error, "#{match[:code]} => #{match[:message]}")
- end
+ if @instrumentor
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
+ _request(body, idempotent, parser)
+ end
+ else
+ _request(body, idempotent, parser)
end
-
end
+ def _request(body, idempotent, parser)
+ @connection.request({
+ :body => body,
+ :expects => 200,
+ :idempotent => idempotent,
+ :headers => { 'Content-Type' => 'application/x-www-form-urlencoded' },
+ :method => 'POST',
+ :parser => parser
+ })
+ rescue Excon::Errors::HTTPStatusError => error
+ match = Fog::AWS::Errors.match_error(error)
+ raise if match.empty?
+ raise case match[:code]
+ when 'EntityAlreadyExists', 'KeyPairMismatch', 'LimitExceeded', 'MalformedCertificate', 'ValidationError'
+ Fog::AWS::STS.const_get(match[:code]).slurp(error, match[:message])
+ else
+ Fog::AWS::STS::Error.slurp(error, "#{match[:code]} => #{match[:message]}")
+ end
+ end
end
end
end
diff --git a/lib/fog/bare_metal_cloud/compute.rb b/lib/fog/bare_metal_cloud/compute.rb
index 8f12437..d504196 100644
--- a/lib/fog/bare_metal_cloud/compute.rb
+++ b/lib/fog/bare_metal_cloud/compute.rb
@@ -3,7 +3,6 @@ require 'fog/bare_metal_cloud/core'
module Fog
module Compute
class BareMetalCloud < Fog::Service
-
requires :bare_metal_cloud_password, :bare_metal_cloud_username
recognizes :host, :port, :scheme, :persistent
@@ -21,7 +20,6 @@ module Fog
request :reboot_server
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {}
@@ -43,11 +41,9 @@ module Fog
def reset_data
self.class.data.delete(@bare_metal_cloud_username)
end
-
end
class Real
-
def initialize(options={})
require 'fog/core/parser'
@@ -92,7 +88,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/bare_metal_cloud/core.rb b/lib/fog/bare_metal_cloud/core.rb
index 8c6532f..081ea21 100644
--- a/lib/fog/bare_metal_cloud/core.rb
+++ b/lib/fog/bare_metal_cloud/core.rb
@@ -3,10 +3,8 @@ require 'fog/xml'
module Fog
module BareMetalCloud
-
extend Fog::Provider
service(:compute, 'Compute')
-
end
end
diff --git a/lib/fog/bare_metal_cloud/requests/compute/add_server.rb b/lib/fog/bare_metal_cloud/requests/compute/add_server.rb
index 361559b..c17e6fe 100644
--- a/lib/fog/bare_metal_cloud/requests/compute/add_server.rb
+++ b/lib/fog/bare_metal_cloud/requests/compute/add_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class BareMetalCloud
class Real
-
# Boot a new server
#
# ==== Parameters
@@ -26,7 +25,6 @@ module Fog
:query => {'planId' => plan_id}.merge!(options)
)
end
-
end
end
end
diff --git a/lib/fog/bare_metal_cloud/requests/compute/add_server_by_configuration.rb b/lib/fog/bare_metal_cloud/requests/compute/add_server_by_configuration.rb
index 7722b35..824fdf0 100644
--- a/lib/fog/bare_metal_cloud/requests/compute/add_server_by_configuration.rb
+++ b/lib/fog/bare_metal_cloud/requests/compute/add_server_by_configuration.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class BareMetalCloud
class Real
-
# Boot a new server by configuration
#
# ==== Parameters
@@ -26,7 +25,6 @@ module Fog
:query => {'configuration' => config}.merge!(options)
)
end
-
end
end
end
diff --git a/lib/fog/bare_metal_cloud/requests/compute/cancel_server.rb b/lib/fog/bare_metal_cloud/requests/compute/cancel_server.rb
index cb4bece..1008a54 100644
--- a/lib/fog/bare_metal_cloud/requests/compute/cancel_server.rb
+++ b/lib/fog/bare_metal_cloud/requests/compute/cancel_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class BareMetalCloud
class Real
-
# Shutdown a running server
#
# ==== Parameters
@@ -23,7 +22,6 @@ module Fog
:query => {'serverId' => server_id}
)
end
-
end
end
end
diff --git a/lib/fog/bare_metal_cloud/requests/compute/get_server.rb b/lib/fog/bare_metal_cloud/requests/compute/get_server.rb
index 73f8980..e30c65d 100644
--- a/lib/fog/bare_metal_cloud/requests/compute/get_server.rb
+++ b/lib/fog/bare_metal_cloud/requests/compute/get_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class BareMetalCloud
class Real
-
# List servers
#
# ==== Parameters
@@ -34,7 +33,6 @@ module Fog
:query => {'serverId' => server_id}
)
end
-
end
end
end
diff --git a/lib/fog/bare_metal_cloud/requests/compute/list_configurations.rb b/lib/fog/bare_metal_cloud/requests/compute/list_configurations.rb
index 62bb5f8..0b55942 100644
--- a/lib/fog/bare_metal_cloud/requests/compute/list_configurations.rb
+++ b/lib/fog/bare_metal_cloud/requests/compute/list_configurations.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class BareMetalCloud
class Real
-
# List Configurations
#
# ==== Returns
@@ -20,7 +19,6 @@ module Fog
:path => 'api/listConfigurations'
)
end
-
end
end
end
diff --git a/lib/fog/bare_metal_cloud/requests/compute/list_images.rb b/lib/fog/bare_metal_cloud/requests/compute/list_images.rb
index b96ba02..199152a 100644
--- a/lib/fog/bare_metal_cloud/requests/compute/list_images.rb
+++ b/lib/fog/bare_metal_cloud/requests/compute/list_images.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class BareMetalCloud
class Real
-
# List images
#
# ==== Returns
@@ -20,7 +19,6 @@ module Fog
:path => 'api/listImages'
)
end
-
end
end
end
diff --git a/lib/fog/bare_metal_cloud/requests/compute/list_plans.rb b/lib/fog/bare_metal_cloud/requests/compute/list_plans.rb
index a4aca88..84ebd5c 100644
--- a/lib/fog/bare_metal_cloud/requests/compute/list_plans.rb
+++ b/lib/fog/bare_metal_cloud/requests/compute/list_plans.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class BareMetalCloud
class Real
-
# List available plans
#
# ==== Returns
@@ -23,7 +22,6 @@ module Fog
:path => 'api/listPlans'
)
end
-
end
end
end
diff --git a/lib/fog/bare_metal_cloud/requests/compute/list_servers.rb b/lib/fog/bare_metal_cloud/requests/compute/list_servers.rb
index 5a01950..507e42b 100644
--- a/lib/fog/bare_metal_cloud/requests/compute/list_servers.rb
+++ b/lib/fog/bare_metal_cloud/requests/compute/list_servers.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class BareMetalCloud
class Real
-
# List servers
#
# ==== Returns
@@ -29,7 +28,6 @@ module Fog
:path => 'api/listServers'
)
end
-
end
end
end
diff --git a/lib/fog/bare_metal_cloud/requests/compute/reboot_server.rb b/lib/fog/bare_metal_cloud/requests/compute/reboot_server.rb
index a695ee4..438adb5 100644
--- a/lib/fog/bare_metal_cloud/requests/compute/reboot_server.rb
+++ b/lib/fog/bare_metal_cloud/requests/compute/reboot_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class BareMetalCloud
class Real
-
# Reboot a running server
#
# ==== Parameters
@@ -17,7 +16,6 @@ module Fog
:query => {'serverId' => server_id}
)
end
-
end
end
end
diff --git a/lib/fog/bin.rb b/lib/fog/bin.rb
index 12dcf19..4da4cf4 100644
--- a/lib/fog/bin.rb
+++ b/lib/fog/bin.rb
@@ -2,7 +2,6 @@ require 'fog/core/credentials'
module Fog
class << self
-
def available_providers
@available_providers ||= Fog.providers.values.select {|provider| Kernel.const_get(provider).available?}.sort
end
@@ -10,12 +9,10 @@ module Fog
def registered_providers
@registered_providers ||= Fog.providers.values.sort
end
-
end
class Bin
class << self
-
def available?
availability = true
for service in services
@@ -50,10 +47,8 @@ module Fog
def collections
services.map {|service| self[service].collections}.flatten.sort_by {|service| service.to_s}
end
-
end
end
-
end
require 'fog/bin/atmos'
@@ -88,6 +83,7 @@ require 'fog/bin/openstack'
require 'fog/bin/ovirt'
require 'fog/bin/sakuracloud'
require 'fog/bin/serverlove'
+require 'fog/bin/softlayer'
require 'fog/bin/stormondemand'
require 'fog/bin/terremark'
require 'fog/bin/vcloud'
@@ -99,3 +95,4 @@ require 'fog/bin/xenserver'
require 'fog/bin/zerigo'
require 'fog/bin/cloudsigma'
require 'fog/bin/openvz'
+require 'fog/bin/opennebula'
diff --git a/lib/fog/bin/atmos.rb b/lib/fog/bin/atmos.rb
index 59da2f2..af456f7 100644
--- a/lib/fog/bin/atmos.rb
+++ b/lib/fog/bin/atmos.rb
@@ -1,6 +1,5 @@
class Atmos < Fog::Bin
class << self
-
def class_for(key)
case key
when :storage
@@ -26,6 +25,5 @@ class Atmos < Fog::Bin
def services
Fog::Atmos.services
end
-
end
end
diff --git a/lib/fog/bin/aws.rb b/lib/fog/bin/aws.rb
index e15784a..2e4c823 100644
--- a/lib/fog/bin/aws.rb
+++ b/lib/fog/bin/aws.rb
@@ -1,6 +1,5 @@
class AWS < Fog::Bin
class << self
-
def class_for(key)
case key
when :auto_scaling
@@ -118,6 +117,5 @@ class AWS < Fog::Bin
def services
Fog::AWS.services
end
-
end
end
diff --git a/lib/fog/bin/bare_metal_cloud.rb b/lib/fog/bin/bare_metal_cloud.rb
index 34fc21a..00293fb 100644
--- a/lib/fog/bin/bare_metal_cloud.rb
+++ b/lib/fog/bin/bare_metal_cloud.rb
@@ -1,6 +1,5 @@
class BareMetalCloud < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -26,6 +25,5 @@ class BareMetalCloud < Fog::Bin
def services
Fog::BareMetalCloud.services
end
-
end
end
diff --git a/lib/fog/bin/bluebox.rb b/lib/fog/bin/bluebox.rb
index 0207e45..ad31eb7 100644
--- a/lib/fog/bin/bluebox.rb
+++ b/lib/fog/bin/bluebox.rb
@@ -1,6 +1,5 @@
class Bluebox < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -33,6 +32,5 @@ class Bluebox < Fog::Bin
def services
Fog::Bluebox.services
end
-
end
end
diff --git a/lib/fog/bin/brightbox.rb b/lib/fog/bin/brightbox.rb
index 638080f..c3c087e 100644
--- a/lib/fog/bin/brightbox.rb
+++ b/lib/fog/bin/brightbox.rb
@@ -1,6 +1,5 @@
class Brightbox < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -30,6 +29,5 @@ class Brightbox < Fog::Bin
def services
Fog::Brightbox.services
end
-
end
end
diff --git a/lib/fog/bin/clodo.rb b/lib/fog/bin/clodo.rb
index f36e46e..e40794e 100644
--- a/lib/fog/bin/clodo.rb
+++ b/lib/fog/bin/clodo.rb
@@ -1,6 +1,5 @@
class Clodo < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -26,6 +25,5 @@ class Clodo < Fog::Bin
def services
Fog::Clodo.services
end
-
end
end
diff --git a/lib/fog/bin/cloudsigma.rb b/lib/fog/bin/cloudsigma.rb
index 0804792..72a7e15 100644
--- a/lib/fog/bin/cloudsigma.rb
+++ b/lib/fog/bin/cloudsigma.rb
@@ -1,6 +1,5 @@
class CloudSigma < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
diff --git a/lib/fog/bin/cloudstack.rb b/lib/fog/bin/cloudstack.rb
index 162307a..0dc3ee4 100644
--- a/lib/fog/bin/cloudstack.rb
+++ b/lib/fog/bin/cloudstack.rb
@@ -1,6 +1,5 @@
class Cloudstack < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -25,6 +24,5 @@ class Cloudstack < Fog::Bin
def services
Fog::Cloudstack.services
end
-
end
end
diff --git a/lib/fog/bin/digitalocean.rb b/lib/fog/bin/digitalocean.rb
index 309ebe1..9cdad99 100644
--- a/lib/fog/bin/digitalocean.rb
+++ b/lib/fog/bin/digitalocean.rb
@@ -1,6 +1,5 @@
class DigitalOcean < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -26,6 +25,5 @@ class DigitalOcean < Fog::Bin
def services
Fog::DigitalOcean.services
end
-
end
end
diff --git a/lib/fog/bin/dnsimple.rb b/lib/fog/bin/dnsimple.rb
index 4de8585..cd6af59 100644
--- a/lib/fog/bin/dnsimple.rb
+++ b/lib/fog/bin/dnsimple.rb
@@ -1,6 +1,5 @@
class DNSimple < Fog::Bin
class << self
-
def class_for(key)
case key
when :dns
@@ -26,6 +25,5 @@ class DNSimple < Fog::Bin
def services
Fog::DNSimple.services
end
-
end
end
diff --git a/lib/fog/bin/dnsmadeeasy.rb b/lib/fog/bin/dnsmadeeasy.rb
index a5bba03..d5ffa21 100644
--- a/lib/fog/bin/dnsmadeeasy.rb
+++ b/lib/fog/bin/dnsmadeeasy.rb
@@ -1,6 +1,5 @@
class DNSMadeEasy < Fog::Bin
class << self
-
def class_for(key)
case key
when :dns
@@ -26,6 +25,5 @@ class DNSMadeEasy < Fog::Bin
def services
Fog::DNSMadeEasy.services
end
-
end
end
diff --git a/lib/fog/bin/dreamhost.rb b/lib/fog/bin/dreamhost.rb
index 158b8ed..61c0244 100644
--- a/lib/fog/bin/dreamhost.rb
+++ b/lib/fog/bin/dreamhost.rb
@@ -1,6 +1,5 @@
class Dreamhost < Fog::Bin
class << self
-
def class_for(key)
case key
when :dns
@@ -26,6 +25,5 @@ class Dreamhost < Fog::Bin
def services
Fog::Dreamhost.services
end
-
end
end
diff --git a/lib/fog/bin/dynect.rb b/lib/fog/bin/dynect.rb
index 110b524..3ec4d68 100644
--- a/lib/fog/bin/dynect.rb
+++ b/lib/fog/bin/dynect.rb
@@ -1,6 +1,5 @@
class Dynect < Fog::Bin
class << self
-
def class_for(key)
case key
when :dns
@@ -25,6 +24,5 @@ class Dynect < Fog::Bin
def services
[:dns]
end
-
end
end
diff --git a/lib/fog/bin/ecloud.rb b/lib/fog/bin/ecloud.rb
index 6562400..38bebec 100644
--- a/lib/fog/bin/ecloud.rb
+++ b/lib/fog/bin/ecloud.rb
@@ -1,6 +1,5 @@
class Ecloud < Fog::Bin
class << self
-
def available?
Fog::Ecloud::ECLOUD_OPTIONS.all? {|requirement| Fog.credentials.include?(requirement)}
end
@@ -30,6 +29,5 @@ class Ecloud < Fog::Bin
def services
Fog::Ecloud.services
end
-
end
end
diff --git a/lib/fog/bin/fogdocker.rb b/lib/fog/bin/fogdocker.rb
index 9219a75..111db62 100644
--- a/lib/fog/bin/fogdocker.rb
+++ b/lib/fog/bin/fogdocker.rb
@@ -1,6 +1,5 @@
class Fogdocker < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -25,6 +24,5 @@ class Fogdocker < Fog::Bin
def services
Fog::Fogdocker.services
end
-
end
end
diff --git a/lib/fog/bin/glesys.rb b/lib/fog/bin/glesys.rb
index 83e364d..2656827 100644
--- a/lib/fog/bin/glesys.rb
+++ b/lib/fog/bin/glesys.rb
@@ -1,6 +1,5 @@
class Glesys < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -26,6 +25,5 @@ class Glesys < Fog::Bin
def services
Fog::Glesys.services
end
-
end
end
diff --git a/lib/fog/bin/go_grid.rb b/lib/fog/bin/go_grid.rb
index 4acc091..fc2ffe2 100644
--- a/lib/fog/bin/go_grid.rb
+++ b/lib/fog/bin/go_grid.rb
@@ -1,6 +1,5 @@
class GoGrid < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -26,6 +25,5 @@ class GoGrid < Fog::Bin
def services
Fog::GoGrid.services
end
-
end
end
diff --git a/lib/fog/bin/google.rb b/lib/fog/bin/google.rb
index b7389f2..349c8ae 100644
--- a/lib/fog/bin/google.rb
+++ b/lib/fog/bin/google.rb
@@ -1,12 +1,17 @@
module Google # deviates from other bin stuff to accomodate gem
class << self
-
def class_for(key)
case key
when :compute
Fog::Compute::Google
+ when :dns
+ Fog::DNS::Google
+ when :monitoring
+ Fog::Google::Monitoring
when :storage
Fog::Storage::Google
+ when :sql
+ Fog::Google::SQL
else
raise ArgumentError, "Unsupported #{self} service: #{key}"
end
@@ -15,12 +20,19 @@ module Google # deviates from other bin stuff to accomodate gem
def [](service)
@@connections ||= Hash.new do |hash, key|
hash[key] = case key
- when :storage
- Fog::Logger.warning("Google[:storage] is not recommended, use Storage[:google] for portability")
- Fog::Storage.new(:provider => 'Google')
when :compute
Fog::Logger.warning("Google[:compute] is not recommended, use Compute[:google] for portability")
Fog::Compute.new(:provider => 'Google')
+ when :dns
+ Fog::Logger.warning("Google[:dns] is not recommended, use DNS[:google] for portability")
+ Fog::DNS.new(:provider => 'Google')
+ when :monitoring
+ Fog::Google::Monitoring.new
+ when :sql
+ Fog::Google::SQL.new
+ when :storage
+ Fog::Logger.warning("Google[:storage] is not recommended, use Storage[:google] for portability")
+ Fog::Storage.new(:provider => 'Google')
else
raise ArgumentError, "Unrecognized service: #{key.inspect}"
end
@@ -44,7 +56,6 @@ module Google # deviates from other bin stuff to accomodate gem
else
!Gem.source_index.find_name('google-api-client').empty? # legacy
end
-
# Then make sure we have all of the requirements
for service in services
begin
diff --git a/lib/fog/bin/hp.rb b/lib/fog/bin/hp.rb
index 0250fe5..d7137e7 100644
--- a/lib/fog/bin/hp.rb
+++ b/lib/fog/bin/hp.rb
@@ -1,6 +1,5 @@
class HP < Fog::Bin
class << self
-
def class_for(key)
case key
when :block_storage
@@ -57,6 +56,5 @@ class HP < Fog::Bin
def services
Fog::HP.services
end
-
end
end
diff --git a/lib/fog/bin/ibm.rb b/lib/fog/bin/ibm.rb
index 06a2a45..4c48a4e 100644
--- a/lib/fog/bin/ibm.rb
+++ b/lib/fog/bin/ibm.rb
@@ -1,6 +1,5 @@
class IBM < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -29,6 +28,5 @@ class IBM < Fog::Bin
def services
Fog::IBM.services
end
-
end
end
diff --git a/lib/fog/bin/internet_archive.rb b/lib/fog/bin/internet_archive.rb
index c5af5a1..1671fa3 100644
--- a/lib/fog/bin/internet_archive.rb
+++ b/lib/fog/bin/internet_archive.rb
@@ -1,6 +1,5 @@
class InternetArchive < Fog::Bin
class << self
-
def class_for(key)
case key
when :storage
@@ -29,6 +28,5 @@ class InternetArchive < Fog::Bin
def services
Fog::InternetArchive.services
end
-
end
end
diff --git a/lib/fog/bin/joyent.rb b/lib/fog/bin/joyent.rb
index 654269c..eaa08dd 100644
--- a/lib/fog/bin/joyent.rb
+++ b/lib/fog/bin/joyent.rb
@@ -1,6 +1,5 @@
class Joyent < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -30,6 +29,5 @@ class Joyent < Fog::Bin
def services
Fog::Joyent.services
end
-
end
end
diff --git a/lib/fog/bin/libvirt.rb b/lib/fog/bin/libvirt.rb
index 6e00328..8cff49d 100644
--- a/lib/fog/bin/libvirt.rb
+++ b/lib/fog/bin/libvirt.rb
@@ -1,6 +1,5 @@
module Libvirt # deviates from other bin stuff to accomodate gem
class << self
-
def class_for(key)
case key
when :compute
@@ -55,6 +54,5 @@ module Libvirt # deviates from other bin stuff to accomodate gem
def services
Fog::Libvirt.services
end
-
end
end
diff --git a/lib/fog/bin/linode.rb b/lib/fog/bin/linode.rb
index a94349d..8426273 100644
--- a/lib/fog/bin/linode.rb
+++ b/lib/fog/bin/linode.rb
@@ -1,6 +1,5 @@
class Linode < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -31,6 +30,5 @@ class Linode < Fog::Bin
def services
Fog::Linode.services
end
-
end
end
diff --git a/lib/fog/bin/local.rb b/lib/fog/bin/local.rb
index bd22f67..dafd230 100644
--- a/lib/fog/bin/local.rb
+++ b/lib/fog/bin/local.rb
@@ -1,6 +1,5 @@
class Local < Fog::Bin
class << self
-
def class_for(key)
case key
when :storage
@@ -26,6 +25,5 @@ class Local < Fog::Bin
def services
Fog::Local.services
end
-
end
end
diff --git a/lib/fog/bin/ninefold.rb b/lib/fog/bin/ninefold.rb
index 3a39112..9d546f2 100644
--- a/lib/fog/bin/ninefold.rb
+++ b/lib/fog/bin/ninefold.rb
@@ -1,6 +1,5 @@
class Ninefold < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -31,6 +30,5 @@ class Ninefold < Fog::Bin
def services
Fog::Ninefold.services
end
-
end
end
diff --git a/lib/fog/bin/opennebula.rb b/lib/fog/bin/opennebula.rb
new file mode 100644
index 0000000..6e72120
--- /dev/null
+++ b/lib/fog/bin/opennebula.rb
@@ -0,0 +1,60 @@
+module OpenNebula # deviates from other bin stuff to accomodate gem
+ class << self
+
+ def class_for(key)
+ case key
+ when :compute
+ Fog::Compute::OpenNebula
+ else
+ raise ArgumentError, "Unrecognized service: #{key}"
+ end
+ end
+
+ def [](service)
+ @@connections ||= Hash.new do |hash, key|
+ hash[key] = case key
+ when :compute
+ Fog::Logger.warning("OpenNebula[:compute] is not recommended, use Compute[:opennebula] for portability")
+ Fog::Compute.new(:provider => 'OpenNebula')
+ else
+ raise ArgumentError, "Unrecognized service: #{key.inspect}"
+ end
+ end
+ @@connections[service]
+ end
+
+ def available?
+ begin
+ availability=true unless Gem::Specification::find_by_name("opennebula").nil?
+ rescue Gem::LoadError
+ availability=false
+ rescue
+ availability_gem=Gem.available?("opennebula")
+ end
+
+ if availability
+ for service in services
+ for collection in self.class_for(service).collections
+ unless self.respond_to?(collection)
+ self.class_eval <<-EOS, __FILE__, __LINE__
+ def self.#{collection}
+ self[:#{service}].#{collection}
+ end
+ EOS
+ end
+ end
+ end
+ end
+ availability
+ end
+
+ def collections
+ services.map {|service| self[service].collections}.flatten.sort_by {|service| service.to_s}
+ end
+
+ def services
+ Fog::OpenNebula.services
+ end
+
+ end
+end
diff --git a/lib/fog/bin/openstack.rb b/lib/fog/bin/openstack.rb
index 18bb1e9..4c933af 100644
--- a/lib/fog/bin/openstack.rb
+++ b/lib/fog/bin/openstack.rb
@@ -1,6 +1,5 @@
class OpenStack < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -61,6 +60,5 @@ class OpenStack < Fog::Bin
def services
Fog::OpenStack.services
end
-
end
end
diff --git a/lib/fog/bin/openvz.rb b/lib/fog/bin/openvz.rb
index 6adcb43..42af38c 100644
--- a/lib/fog/bin/openvz.rb
+++ b/lib/fog/bin/openvz.rb
@@ -1,6 +1,5 @@
class Openvz < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -26,6 +25,5 @@ class Openvz < Fog::Bin
def services
Fog::Openvz.services
end
-
end
end
diff --git a/lib/fog/bin/ovirt.rb b/lib/fog/bin/ovirt.rb
index 62df5d7..14eca5e 100644
--- a/lib/fog/bin/ovirt.rb
+++ b/lib/fog/bin/ovirt.rb
@@ -1,6 +1,5 @@
class Ovirt < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -25,6 +24,5 @@ class Ovirt < Fog::Bin
def services
Fog::Ovirt.services
end
-
end
end
diff --git a/lib/fog/bin/rackspace.rb b/lib/fog/bin/rackspace.rb
index 7e9952b..51c8941 100644
--- a/lib/fog/bin/rackspace.rb
+++ b/lib/fog/bin/rackspace.rb
@@ -1,6 +1,5 @@
class Rackspace < Fog::Bin
class << self
-
def class_for(key)
case key
when :auto_scale
@@ -74,6 +73,5 @@ class Rackspace < Fog::Bin
def services
Fog::Rackspace.services
end
-
end
end
diff --git a/lib/fog/bin/rage4.rb b/lib/fog/bin/rage4.rb
index 0d78c9f..0511b90 100644
--- a/lib/fog/bin/rage4.rb
+++ b/lib/fog/bin/rage4.rb
@@ -1,6 +1,5 @@
class Rage4 < Fog::Bin
class << self
-
def class_for(key)
case key
when :dns
@@ -26,6 +25,5 @@ class Rage4 < Fog::Bin
def services
Fog::Rage4.services
end
-
end
end
diff --git a/lib/fog/bin/riakcs.rb b/lib/fog/bin/riakcs.rb
index ee64bea..a7abade 100644
--- a/lib/fog/bin/riakcs.rb
+++ b/lib/fog/bin/riakcs.rb
@@ -1,6 +1,5 @@
class RiakCS < Fog::Bin
class << self
-
def class_for(key)
case key
when :provisioning
@@ -22,6 +21,5 @@ class RiakCS < Fog::Bin
def services
Fog::RiakCS.services
end
-
end
end
diff --git a/lib/fog/bin/sakuracloud.rb b/lib/fog/bin/sakuracloud.rb
deleted file mode 100644
index 935b9e8..0000000
--- a/lib/fog/bin/sakuracloud.rb
+++ /dev/null
@@ -1,36 +0,0 @@
-class SakuraCloud < Fog::Bin
- class << self
-
- def class_for(key)
- case key
- when :compute
- Fog::Compute::SakuraCloud
- when :volume
- Fog::Volume::SakuraCloud
- else
- raise ArgumentError, "Unrecognized service: #{key}"
- end
- end
-
- def [](service)
- @@connections ||= Hash.new do |hash, key|
- hash[key] = case key
- when :compute
- Fog::Logger.warning("SakuraCloud[:compute] is not recommended, use Compute[:sakuracloud] for portability")
- Fog::Compute.new(:provider => 'SakuraCloud')
- when :volume
- Fog::Logger.warning("SakuraCloud[:compute] is not recommended, use Compute[:SakuraCloud] for portability")
- Fog::Compute.new(:provider => 'SakuraCloud')
- else
- raise ArgumentError, "Unrecognized service: #{key.inspect}"
- end
- end
- @@connections[service]
- end
-
- def services
- Fog::SakuraCloud.services
- end
-
- end
-end
diff --git a/lib/fog/bin/serverlove.rb b/lib/fog/bin/serverlove.rb
index 62b722d..d6dab11 100644
--- a/lib/fog/bin/serverlove.rb
+++ b/lib/fog/bin/serverlove.rb
@@ -1,6 +1,5 @@
class Serverlove < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -26,6 +25,5 @@ class Serverlove < Fog::Bin
def services
Fog::Serverlove.services
end
-
end
end
diff --git a/lib/fog/bin/softlayer.rb b/lib/fog/bin/softlayer.rb
new file mode 100644
index 0000000..7195394
--- /dev/null
+++ b/lib/fog/bin/softlayer.rb
@@ -0,0 +1,53 @@
+#
+# Author:: Matt Eldridge (<matt.eldridge at us.ibm.com>)
+# © Copyright IBM Corporation 2014.
+#
+# LICENSE: MIT (http://opensource.org/licenses/MIT)
+#
+
+class Softlayer < Fog::Bin
+ class << self
+ def class_for(key)
+ case key
+ when :compute
+ Fog::Compute::Softlayer
+ when :dns
+ Fog::DNS::Softlayer
+ when :network
+ Fog::Network::Softlayer
+ when :storage
+ Fog::Storage::Softlayer
+ else
+ # @todo Replace most instances of ArgumentError with NotImplementedError
+ # @todo For a list of widely supported Exceptions, see:
+ # => http://www.zenspider.com/Languages/Ruby/QuickRef.html#35
+ raise ArgumentError, "Unsupported #{self} service: #{key}"
+ end
+ end
+
+ def [](service)
+ @@connections ||= Hash.new do |hash, key|
+ hash[key] = case key
+ when :compute
+ Fog::Logger.warning("Softlayer[:compute] is not recommended, use Compute[:aws] for portability")
+ Fog::Compute.new(:provider => :softlayer)
+ when :dns
+ Fog::Logger.warning("Softlayer[:dns] is not recommended, use DNS[:aws] for portability")
+ Fog::DNS.new(:provider => :softlayer)
+ when :network
+ Fog::Network.new(:provider => :softlayer)
+ when :storage
+ Fog::Storage.new(:provider => :softlayer)
+ else
+ raise ArgumentError, "Unrecognized service: #{key.inspect}"
+ end
+ end
+ @@connections[service]
+ end
+
+ def services
+ Fog::Softlayer.services
+ end
+ end
+end
+
diff --git a/lib/fog/bin/stormondemand.rb b/lib/fog/bin/stormondemand.rb
index 2b889e3..da824c9 100644
--- a/lib/fog/bin/stormondemand.rb
+++ b/lib/fog/bin/stormondemand.rb
@@ -1,6 +1,5 @@
class StormOnDemand < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -26,6 +25,5 @@ class StormOnDemand < Fog::Bin
def services
Fog::StormOnDemand.services
end
-
end
end
diff --git a/lib/fog/bin/terremark.rb b/lib/fog/bin/terremark.rb
index 76258c7..c3e192a 100644
--- a/lib/fog/bin/terremark.rb
+++ b/lib/fog/bin/terremark.rb
@@ -1,6 +1,5 @@
class Terremark < Fog::Bin
class << self
-
def available?
Fog::Terremark::VCLOUD_OPTIONS.all? {|requirement| Fog.credentials.include?(requirement)}
end
@@ -26,6 +25,5 @@ class Terremark < Fog::Bin
end
@@connections[service]
end
-
end
end
diff --git a/lib/fog/bin/vcloud.rb b/lib/fog/bin/vcloud.rb
index 56442c5..3825e3e 100644
--- a/lib/fog/bin/vcloud.rb
+++ b/lib/fog/bin/vcloud.rb
@@ -1,6 +1,5 @@
class Vcloud < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -25,6 +24,5 @@ class Vcloud < Fog::Bin
def services
Fog::Vcloud.services
end
-
end
end
diff --git a/lib/fog/bin/vcloud_director.rb b/lib/fog/bin/vcloud_director.rb
index 50b2f7e..f5ad0e8 100644
--- a/lib/fog/bin/vcloud_director.rb
+++ b/lib/fog/bin/vcloud_director.rb
@@ -1,6 +1,5 @@
class VcloudDirector < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -25,6 +24,5 @@ class VcloudDirector < Fog::Bin
def services
Fog::VcloudDirector.services
end
-
end
end
diff --git a/lib/fog/bin/vmfusion.rb b/lib/fog/bin/vmfusion.rb
index 7ac8161..7a51900 100644
--- a/lib/fog/bin/vmfusion.rb
+++ b/lib/fog/bin/vmfusion.rb
@@ -1,6 +1,5 @@
module Vmfusion # deviates from other bin stuff to accomodate gem
class << self
-
def class_for(key)
case key
when :compute
@@ -55,6 +54,5 @@ module Vmfusion # deviates from other bin stuff to accomodate gem
def services
Fog::Vmfusion.services
end
-
end
end
diff --git a/lib/fog/bin/voxel.rb b/lib/fog/bin/voxel.rb
index 7d38473..028851b 100644
--- a/lib/fog/bin/voxel.rb
+++ b/lib/fog/bin/voxel.rb
@@ -1,6 +1,5 @@
class Voxel < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -26,6 +25,5 @@ class Voxel < Fog::Bin
def services
Fog::Voxel.services
end
-
end
end
diff --git a/lib/fog/bin/vsphere.rb b/lib/fog/bin/vsphere.rb
index 9d06b91..020d113 100644
--- a/lib/fog/bin/vsphere.rb
+++ b/lib/fog/bin/vsphere.rb
@@ -1,6 +1,5 @@
class Vsphere < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -25,6 +24,5 @@ class Vsphere < Fog::Bin
def services
Fog::Vsphere.services
end
-
end
end
diff --git a/lib/fog/bin/xenserver.rb b/lib/fog/bin/xenserver.rb
index 1b56096..ae94ec0 100644
--- a/lib/fog/bin/xenserver.rb
+++ b/lib/fog/bin/xenserver.rb
@@ -1,6 +1,5 @@
class XenServer < Fog::Bin
class << self
-
def class_for(key)
case key
when :compute
@@ -26,6 +25,5 @@ class XenServer < Fog::Bin
def services
Fog::XenServer.services
end
-
end
end
diff --git a/lib/fog/bin/zerigo.rb b/lib/fog/bin/zerigo.rb
index 38b69fc..6ec8a47 100644
--- a/lib/fog/bin/zerigo.rb
+++ b/lib/fog/bin/zerigo.rb
@@ -1,6 +1,5 @@
class Zerigo < Fog::Bin
class << self
-
def class_for(key)
case key
when :dns
@@ -26,6 +25,5 @@ class Zerigo < Fog::Bin
def services
Fog::Zerigo.services
end
-
end
end
diff --git a/lib/fog/bluebox/blb.rb b/lib/fog/bluebox/blb.rb
index 250f63c..33f832f 100644
--- a/lib/fog/bluebox/blb.rb
+++ b/lib/fog/bluebox/blb.rb
@@ -3,7 +3,6 @@ require 'fog/bluebox/core'
module Fog
module Bluebox
class BLB < Fog::Service
-
requires :bluebox_api_key, :bluebox_customer_id
recognizes :bluebox_host, :bluebox_port, :bluebox_scheme, :persistent
@@ -18,7 +17,6 @@ module Fog
model :lb_backend
collection :lb_backends
-
request_path 'fog/bluebox/requests/blb'
request :get_lb_application
@@ -78,7 +76,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/bluebox/compute.rb b/lib/fog/bluebox/compute.rb
index 3354847..d582f93 100644
--- a/lib/fog/bluebox/compute.rb
+++ b/lib/fog/bluebox/compute.rb
@@ -3,7 +3,6 @@ require 'fog/bluebox/core'
module Fog
module Compute
class Bluebox < Fog::Service
-
requires :bluebox_api_key, :bluebox_customer_id
recognizes :bluebox_host, :bluebox_port, :bluebox_scheme, :persistent
@@ -33,7 +32,6 @@ module Fog
request :reboot_block
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {}
@@ -55,11 +53,9 @@ module Fog
def reset_data
self.class.data.delete(@bluebox_api_key)
end
-
end
class Real
-
def initialize(options={})
@bluebox_api_key = options[:bluebox_api_key]
@bluebox_customer_id = options[:bluebox_customer_id]
@@ -96,7 +92,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/bluebox/core.rb b/lib/fog/bluebox/core.rb
index 9834a88..b82d6bc 100644
--- a/lib/fog/bluebox/core.rb
+++ b/lib/fog/bluebox/core.rb
@@ -3,12 +3,10 @@ require 'fog/json'
module Fog
module Bluebox
-
extend Fog::Provider
service(:blb, 'BLB')
service(:compute, 'Compute')
service(:dns, 'DNS')
-
end
end
diff --git a/lib/fog/bluebox/dns.rb b/lib/fog/bluebox/dns.rb
index 118a83f..1c7f754 100644
--- a/lib/fog/bluebox/dns.rb
+++ b/lib/fog/bluebox/dns.rb
@@ -3,7 +3,6 @@ require 'fog/bluebox/core'
module Fog
module DNS
class Bluebox < Fog::Service
-
requires :bluebox_api_key, :bluebox_customer_id
recognizes :bluebox_host, :bluebox_port, :bluebox_scheme, :persistent
@@ -96,7 +95,6 @@ module Fog
def auth_header
@auth_header ||= Base64.encode64("#{@bluebox_customer_id}:#{@bluebox_api_key}").gsub("\n",'')
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/blb/lb_application.rb b/lib/fog/bluebox/models/blb/lb_application.rb
index c4923e2..9936f05 100644
--- a/lib/fog/bluebox/models/blb/lb_application.rb
+++ b/lib/fog/bluebox/models/blb/lb_application.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Bluebox
class BLB
-
class LbApplication < Fog::Model
identity :id
@@ -24,9 +23,7 @@ module Fog
:lb_application => self
})
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/blb/lb_applications.rb b/lib/fog/bluebox/models/blb/lb_applications.rb
index 7599ad2..26e086d 100644
--- a/lib/fog/bluebox/models/blb/lb_applications.rb
+++ b/lib/fog/bluebox/models/blb/lb_applications.rb
@@ -18,9 +18,7 @@ module Fog
rescue Fog::Bluebox::BLB::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/blb/lb_backend.rb b/lib/fog/bluebox/models/blb/lb_backend.rb
index 86b657f..64f787e 100644
--- a/lib/fog/bluebox/models/blb/lb_backend.rb
+++ b/lib/fog/bluebox/models/blb/lb_backend.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Bluebox
class BLB
-
class LbBackend < Fog::Model
identity :id
@@ -14,9 +13,7 @@ module Fog
attribute :acl_name
attribute :acl_rule
attribute :check_interval
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/blb/lb_backends.rb b/lib/fog/bluebox/models/blb/lb_backends.rb
index d111c83..626d340 100644
--- a/lib/fog/bluebox/models/blb/lb_backends.rb
+++ b/lib/fog/bluebox/models/blb/lb_backends.rb
@@ -5,7 +5,6 @@ module Fog
module Bluebox
class BLB
class LbBackends < Fog::Collection
-
model Fog::Bluebox::BLB::LbBackend
attr_accessor :lb_service
@@ -22,9 +21,7 @@ module Fog
rescue Fog::Compute::Bluebox::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/blb/lb_service.rb b/lib/fog/bluebox/models/blb/lb_service.rb
index 22ffbf8..72a7b69 100644
--- a/lib/fog/bluebox/models/blb/lb_service.rb
+++ b/lib/fog/bluebox/models/blb/lb_service.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Bluebox
class BLB
-
class LbService < Fog::Model
identity :id
@@ -17,7 +16,6 @@ module Fog
attribute :status_password
attribute :created, :aliases => 'created_at'
-
def lb_application
collection.lb_application
end
@@ -28,7 +26,6 @@ module Fog
:lb_service => self
})
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/blb/lb_services.rb b/lib/fog/bluebox/models/blb/lb_services.rb
index 71ef06c..7cd4cde 100644
--- a/lib/fog/bluebox/models/blb/lb_services.rb
+++ b/lib/fog/bluebox/models/blb/lb_services.rb
@@ -21,9 +21,7 @@ module Fog
rescue Fog::Bluebox::BLB::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/compute/flavor.rb b/lib/fog/bluebox/models/compute/flavor.rb
index a3cd82e..d02da40 100644
--- a/lib/fog/bluebox/models/compute/flavor.rb
+++ b/lib/fog/bluebox/models/compute/flavor.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Bluebox
-
class Flavor < Fog::Model
-
identity :id
attribute :name
@@ -37,9 +35,7 @@ module Fog
# end
raise StandardError.new("Figure me out!?!")
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/compute/flavors.rb b/lib/fog/bluebox/models/compute/flavors.rb
index 7ce0df1..97b4569 100644
--- a/lib/fog/bluebox/models/compute/flavors.rb
+++ b/lib/fog/bluebox/models/compute/flavors.rb
@@ -4,9 +4,7 @@ require 'fog/bluebox/models/compute/flavor'
module Fog
module Compute
class Bluebox
-
class Flavors < Fog::Collection
-
model Fog::Compute::Bluebox::Flavor
def all
@@ -20,9 +18,7 @@ module Fog
rescue Fog::Compute::Bluebox::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/compute/image.rb b/lib/fog/bluebox/models/compute/image.rb
index 6608679..d029921 100644
--- a/lib/fog/bluebox/models/compute/image.rb
+++ b/lib/fog/bluebox/models/compute/image.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Bluebox
-
class Image < Fog::Model
-
identity :id
attribute :block_id
@@ -26,9 +24,7 @@ module Fog
data = service.destroy_template(id)
true
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/compute/images.rb b/lib/fog/bluebox/models/compute/images.rb
index 0f563db..747641e 100644
--- a/lib/fog/bluebox/models/compute/images.rb
+++ b/lib/fog/bluebox/models/compute/images.rb
@@ -4,9 +4,7 @@ require 'fog/bluebox/models/compute/image'
module Fog
module Compute
class Bluebox
-
class Images < Fog::Collection
-
model Fog::Compute::Bluebox::Image
def all
@@ -20,9 +18,7 @@ module Fog
rescue Fog::Compute::Bluebox::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/compute/location.rb b/lib/fog/bluebox/models/compute/location.rb
index 9c2fc43..6d8cd95 100644
--- a/lib/fog/bluebox/models/compute/location.rb
+++ b/lib/fog/bluebox/models/compute/location.rb
@@ -3,15 +3,11 @@ require 'fog/core/model'
module Fog
module Compute
class Bluebox
-
class Location < Fog::Model
-
identity :id
attribute :description
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/compute/locations.rb b/lib/fog/bluebox/models/compute/locations.rb
index ecbb56f..b798e61 100644
--- a/lib/fog/bluebox/models/compute/locations.rb
+++ b/lib/fog/bluebox/models/compute/locations.rb
@@ -4,9 +4,7 @@ require 'fog/bluebox/models/compute/location'
module Fog
module Compute
class Bluebox
-
class Locations < Fog::Collection
-
model Fog::Compute::Bluebox::Location
def all
@@ -20,9 +18,7 @@ module Fog
rescue Fog::Compute::Bluebox::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/compute/server.rb b/lib/fog/bluebox/models/compute/server.rb
index 72b1dab..cb904f2 100644
--- a/lib/fog/bluebox/models/compute/server.rb
+++ b/lib/fog/bluebox/models/compute/server.rb
@@ -3,11 +3,9 @@ require 'fog/compute/models/server'
module Fog
module Compute
class Bluebox
-
class BlockInstantiationError < StandardError; end
class Server < Fog::Compute::Server
-
identity :id
attribute :cpu
@@ -116,9 +114,7 @@ module Fog
def username
@username ||= 'deploy'
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/compute/servers.rb b/lib/fog/bluebox/models/compute/servers.rb
index 360d8a7..1f89be3 100644
--- a/lib/fog/bluebox/models/compute/servers.rb
+++ b/lib/fog/bluebox/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/bluebox/models/compute/server'
module Fog
module Compute
class Bluebox
-
class Servers < Fog::Collection
-
model Fog::Compute::Bluebox::Server
def all
@@ -28,9 +26,7 @@ module Fog
rescue Fog::Compute::Bluebox::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/dns/record.rb b/lib/fog/bluebox/models/dns/record.rb
index 09fb664..1c923d8 100644
--- a/lib/fog/bluebox/models/dns/record.rb
+++ b/lib/fog/bluebox/models/dns/record.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module DNS
class Bluebox
-
class Record < Fog::Model
extend Fog::Deprecation
deprecate :ip, :value
@@ -47,9 +46,7 @@ module Fog
def zone=(new_zone)
@zone = new_zone
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/dns/records.rb b/lib/fog/bluebox/models/dns/records.rb
index bf8f1a2..5ccdcd0 100644
--- a/lib/fog/bluebox/models/dns/records.rb
+++ b/lib/fog/bluebox/models/dns/records.rb
@@ -4,9 +4,7 @@ require 'fog/bluebox/models/dns/record'
module Fog
module DNS
class Bluebox
-
class Records < Fog::Collection
-
attribute :zone
model Fog::DNS::Bluebox::Record
@@ -28,9 +26,7 @@ module Fog
requires :zone
super({ :zone => zone }.merge!(attributes))
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/models/dns/zone.rb b/lib/fog/bluebox/models/dns/zone.rb
index cbbc60c..cc74252 100644
--- a/lib/fog/bluebox/models/dns/zone.rb
+++ b/lib/fog/bluebox/models/dns/zone.rb
@@ -4,9 +4,7 @@ require 'fog/bluebox/models/dns/records'
module Fog
module DNS
class Bluebox
-
class Zone < Fog::Model
-
identity :id
attribute :domain, :aliases => 'name'
diff --git a/lib/fog/bluebox/models/dns/zones.rb b/lib/fog/bluebox/models/dns/zones.rb
index b825355..43f5e98 100644
--- a/lib/fog/bluebox/models/dns/zones.rb
+++ b/lib/fog/bluebox/models/dns/zones.rb
@@ -4,9 +4,7 @@ require 'fog/bluebox/models/dns/zone'
module Fog
module DNS
class Bluebox
-
class Zones < Fog::Collection
-
model Fog::DNS::Bluebox::Zone
def all
@@ -20,9 +18,7 @@ module Fog
rescue Fog::Service::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/parsers/dns/create_record.rb b/lib/fog/bluebox/parsers/dns/create_record.rb
index acc7713..373891c 100644
--- a/lib/fog/bluebox/parsers/dns/create_record.rb
+++ b/lib/fog/bluebox/parsers/dns/create_record.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Bluebox
-
class CreateRecord < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -17,9 +15,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/parsers/dns/create_zone.rb b/lib/fog/bluebox/parsers/dns/create_zone.rb
index dd222d3..23f7407 100644
--- a/lib/fog/bluebox/parsers/dns/create_zone.rb
+++ b/lib/fog/bluebox/parsers/dns/create_zone.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Bluebox
-
class CreateZone < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -17,9 +15,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/parsers/dns/get_record.rb b/lib/fog/bluebox/parsers/dns/get_record.rb
index b6979ac..90742c6 100644
--- a/lib/fog/bluebox/parsers/dns/get_record.rb
+++ b/lib/fog/bluebox/parsers/dns/get_record.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Bluebox
-
class GetRecord < Fog::Parsers::Base
-
def reset
@response = { }
end
@@ -12,9 +10,7 @@ module Fog
def end_element(name)
@response[name] = value
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/parsers/dns/get_records.rb b/lib/fog/bluebox/parsers/dns/get_records.rb
index faf3785..9b9d094 100644
--- a/lib/fog/bluebox/parsers/dns/get_records.rb
+++ b/lib/fog/bluebox/parsers/dns/get_records.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Bluebox
-
class GetRecords < Fog::Parsers::Base
-
def reset
@record = {}
@response = { 'records' => [] }
@@ -19,9 +17,7 @@ module Fog
@record[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/parsers/dns/get_zone.rb b/lib/fog/bluebox/parsers/dns/get_zone.rb
index 44ffb80..806402f 100644
--- a/lib/fog/bluebox/parsers/dns/get_zone.rb
+++ b/lib/fog/bluebox/parsers/dns/get_zone.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Bluebox
-
class GetZone < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -17,9 +15,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/parsers/dns/get_zones.rb b/lib/fog/bluebox/parsers/dns/get_zones.rb
index 117e55b..95fd669 100644
--- a/lib/fog/bluebox/parsers/dns/get_zones.rb
+++ b/lib/fog/bluebox/parsers/dns/get_zones.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Bluebox
-
class GetZones < Fog::Parsers::Base
-
def reset
@zone = {}
@response = { 'zones' => [] }
@@ -21,9 +19,7 @@ module Fog
@zone = {}
end
end
-
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/blb/get_lb_application.rb b/lib/fog/bluebox/requests/blb/get_lb_application.rb
index f37ff19..8bf1258 100644
--- a/lib/fog/bluebox/requests/blb/get_lb_application.rb
+++ b/lib/fog/bluebox/requests/blb/get_lb_application.rb
@@ -27,7 +27,6 @@ module Fog
class Mock
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/blb/get_lb_applications.rb b/lib/fog/bluebox/requests/blb/get_lb_applications.rb
index 5da65ee..86f740c 100644
--- a/lib/fog/bluebox/requests/blb/get_lb_applications.rb
+++ b/lib/fog/bluebox/requests/blb/get_lb_applications.rb
@@ -25,7 +25,6 @@ module Fog
class Mock
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/blb/get_lb_backend.rb b/lib/fog/bluebox/requests/blb/get_lb_backend.rb
index 7f20204..c24dc23 100644
--- a/lib/fog/bluebox/requests/blb/get_lb_backend.rb
+++ b/lib/fog/bluebox/requests/blb/get_lb_backend.rb
@@ -30,7 +30,6 @@ module Fog
class Mock
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/blb/get_lb_backends.rb b/lib/fog/bluebox/requests/blb/get_lb_backends.rb
index 12a8ab8..9eabd68 100644
--- a/lib/fog/bluebox/requests/blb/get_lb_backends.rb
+++ b/lib/fog/bluebox/requests/blb/get_lb_backends.rb
@@ -30,7 +30,6 @@ module Fog
class Mock
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/blb/get_lb_machine.rb b/lib/fog/bluebox/requests/blb/get_lb_machine.rb
index c04316d..2fc7b96 100644
--- a/lib/fog/bluebox/requests/blb/get_lb_machine.rb
+++ b/lib/fog/bluebox/requests/blb/get_lb_machine.rb
@@ -29,7 +29,6 @@ module Fog
class Mock
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/blb/get_lb_machines.rb b/lib/fog/bluebox/requests/blb/get_lb_machines.rb
index e0bb698..e9bb99d 100644
--- a/lib/fog/bluebox/requests/blb/get_lb_machines.rb
+++ b/lib/fog/bluebox/requests/blb/get_lb_machines.rb
@@ -29,7 +29,6 @@ module Fog
class Mock
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/blb/get_lb_service.rb b/lib/fog/bluebox/requests/blb/get_lb_service.rb
index 082d2f4..1b90c59 100644
--- a/lib/fog/bluebox/requests/blb/get_lb_service.rb
+++ b/lib/fog/bluebox/requests/blb/get_lb_service.rb
@@ -30,7 +30,6 @@ module Fog
class Mock
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/blb/get_lb_services.rb b/lib/fog/bluebox/requests/blb/get_lb_services.rb
index d5d36fd..141e00a 100644
--- a/lib/fog/bluebox/requests/blb/get_lb_services.rb
+++ b/lib/fog/bluebox/requests/blb/get_lb_services.rb
@@ -30,7 +30,6 @@ module Fog
class Mock
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/compute/create_block.rb b/lib/fog/bluebox/requests/compute/create_block.rb
index 5ea7942..0070685 100644
--- a/lib/fog/bluebox/requests/compute/create_block.rb
+++ b/lib/fog/bluebox/requests/compute/create_block.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Bluebox
class Real
-
# Create a new block
#
# ==== Parameters
@@ -19,8 +18,7 @@ module Fog
# * response<~Excon::Response>:
# * body<~Hash>:
def create_block(product_id, template_id, location_id, options = {})
-
- unless options.has_key?('password') || options.has_key?('ssh_public_key')
+ unless options.key?('password') || options.key?('ssh_public_key')
raise ArgumentError, 'Either password or public_key must be supplied'
end
@@ -40,7 +38,6 @@ module Fog
:body => options.map {|k,v| "#{CGI.escape(k)}=#{CGI.escape(v)}"}.join('&')
)
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/compute/create_template.rb b/lib/fog/bluebox/requests/compute/create_template.rb
index 9cbc7a4..9a3d12f 100644
--- a/lib/fog/bluebox/requests/compute/create_template.rb
+++ b/lib/fog/bluebox/requests/compute/create_template.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Bluebox
class Real
-
# Create a template from block
#
# ==== Parameters
@@ -20,7 +19,6 @@ module Fog
:query => {'id' => block_id}.merge!(options)
)
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/compute/destroy_block.rb b/lib/fog/bluebox/requests/compute/destroy_block.rb
index 71b8efb..74b61e8 100644
--- a/lib/fog/bluebox/requests/compute/destroy_block.rb
+++ b/lib/fog/bluebox/requests/compute/destroy_block.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Bluebox
class Real
-
# Destroy a block
#
# ==== Parameters
@@ -19,7 +18,6 @@ module Fog
:path => "api/blocks/#{block_id}.json"
)
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/compute/destroy_template.rb b/lib/fog/bluebox/requests/compute/destroy_template.rb
index b788e3b..8db1502 100644
--- a/lib/fog/bluebox/requests/compute/destroy_template.rb
+++ b/lib/fog/bluebox/requests/compute/destroy_template.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Bluebox
class Real
-
# Create a template from block
#
# ==== Parameters
@@ -19,7 +18,6 @@ module Fog
:path => "api/block_templates/#{id}.json"
)
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/compute/get_block.rb b/lib/fog/bluebox/requests/compute/get_block.rb
index 9f718d3..65a36db 100644
--- a/lib/fog/bluebox/requests/compute/get_block.rb
+++ b/lib/fog/bluebox/requests/compute/get_block.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Bluebox
class Real
-
# Get details of a block.
#
# ==== Parameters
@@ -19,7 +18,6 @@ module Fog
:path => "api/blocks/#{block_id}.json"
)
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/compute/get_blocks.rb b/lib/fog/bluebox/requests/compute/get_blocks.rb
index 2b56b65..0b03c75 100644
--- a/lib/fog/bluebox/requests/compute/get_blocks.rb
+++ b/lib/fog/bluebox/requests/compute/get_blocks.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Bluebox
class Real
-
# Get list of blocks
#
# ==== Returns
@@ -21,7 +20,6 @@ module Fog
:path => 'api/blocks.json'
)
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/compute/get_location.rb b/lib/fog/bluebox/requests/compute/get_location.rb
index f08c40a..38af734 100644
--- a/lib/fog/bluebox/requests/compute/get_location.rb
+++ b/lib/fog/bluebox/requests/compute/get_location.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Bluebox
class Real
-
# Get details of a location
#
# ==== Parameters
@@ -19,7 +18,6 @@ module Fog
:path => "api/locations/#{location_id}.json"
)
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/compute/get_locations.rb b/lib/fog/bluebox/requests/compute/get_locations.rb
index e49cac4..d0cf3a2 100644
--- a/lib/fog/bluebox/requests/compute/get_locations.rb
+++ b/lib/fog/bluebox/requests/compute/get_locations.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Bluebox
class Real
-
# Get list of locations
#
# ==== Returns
@@ -17,7 +16,6 @@ module Fog
:path => 'api/locations.json'
)
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/compute/get_product.rb b/lib/fog/bluebox/requests/compute/get_product.rb
index ea47e8b..e47613c 100644
--- a/lib/fog/bluebox/requests/compute/get_product.rb
+++ b/lib/fog/bluebox/requests/compute/get_product.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Bluebox
class Real
-
# Get details of a product
#
# ==== Parameters
@@ -19,7 +18,6 @@ module Fog
:path => "api/block_products/#{product_id}.json"
)
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/compute/get_products.rb b/lib/fog/bluebox/requests/compute/get_products.rb
index 0eeac5f..bef1c0f 100644
--- a/lib/fog/bluebox/requests/compute/get_products.rb
+++ b/lib/fog/bluebox/requests/compute/get_products.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Bluebox
class Real
-
# Get list of products
#
# ==== Returns
@@ -18,7 +17,6 @@ module Fog
:path => 'api/block_products.json'
)
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/compute/get_template.rb b/lib/fog/bluebox/requests/compute/get_template.rb
index 10526be..44e47cc 100644
--- a/lib/fog/bluebox/requests/compute/get_template.rb
+++ b/lib/fog/bluebox/requests/compute/get_template.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Bluebox
class Real
-
# Get details of a template
#
# ==== Parameters
@@ -19,7 +18,6 @@ module Fog
:path => "api/block_templates/#{template_id}.json"
)
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/compute/get_templates.rb b/lib/fog/bluebox/requests/compute/get_templates.rb
index d5ad8d4..db19545 100644
--- a/lib/fog/bluebox/requests/compute/get_templates.rb
+++ b/lib/fog/bluebox/requests/compute/get_templates.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Bluebox
class Real
-
# Get list of OS templates
#
# ==== Returns
@@ -19,7 +18,6 @@ module Fog
:path => 'api/block_templates.json'
)
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/compute/reboot_block.rb b/lib/fog/bluebox/requests/compute/reboot_block.rb
index a3669a1..8cd74d2 100644
--- a/lib/fog/bluebox/requests/compute/reboot_block.rb
+++ b/lib/fog/bluebox/requests/compute/reboot_block.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Bluebox
class Real
-
# Reboot block
#
# ==== Parameters
@@ -20,7 +19,6 @@ module Fog
:path => "api/blocks/#{block_id}/#{'soft_' if type == 'SOFT'}reboot.json"
)
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/dns/create_record.rb b/lib/fog/bluebox/requests/dns/create_record.rb
index 05dc16c..cf17122 100644
--- a/lib/fog/bluebox/requests/dns/create_record.rb
+++ b/lib/fog/bluebox/requests/dns/create_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Bluebox
class Real
-
require 'fog/bluebox/parsers/dns/create_record'
# Create a new record in a DNS zone
@@ -33,15 +32,12 @@ module Fog
:path => "/api/domains/#{zone_id}/records.xml"
)
end
-
end
class Mock
-
def create_record(zone_id, type, name, content)
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/dns/create_zone.rb b/lib/fog/bluebox/requests/dns/create_zone.rb
index 8f5a6fe..ec6eff9 100644
--- a/lib/fog/bluebox/requests/dns/create_zone.rb
+++ b/lib/fog/bluebox/requests/dns/create_zone.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Bluebox
class Real
-
require 'fog/bluebox/parsers/dns/create_zone'
# Create a new DNS zone
@@ -37,15 +36,12 @@ module Fog
:path => "/api/domains.xml"
)
end
-
end
class Mock
-
def create_zone(options)
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/dns/delete_record.rb b/lib/fog/bluebox/requests/dns/delete_record.rb
index f604447..411ae00 100644
--- a/lib/fog/bluebox/requests/dns/delete_record.rb
+++ b/lib/fog/bluebox/requests/dns/delete_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Bluebox
class Real
-
# Delete a record from the specified DNS zone
# ==== Parameters
# * record_id<~Integer> - Id of DNS record to delete
@@ -16,15 +15,12 @@ module Fog
:path => "/api/domains/#{zone_id}/records/#{record_id}.xml"
)
end
-
end
class Mock
-
def delete_record(zone_id, record_id)
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/dns/delete_zone.rb b/lib/fog/bluebox/requests/dns/delete_zone.rb
index b0882eb..18d88c7 100644
--- a/lib/fog/bluebox/requests/dns/delete_zone.rb
+++ b/lib/fog/bluebox/requests/dns/delete_zone.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Bluebox
class Real
-
# Delete a zone from DNS
# ==== Parameters
# * zone_id<~Integer> - Id of zone to delete
@@ -16,15 +15,12 @@ module Fog
:path => "/api/domains/#{zone_id}.xml"
)
end
-
end
class Mock
-
def delete_zone(zone_id)
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/dns/get_record.rb b/lib/fog/bluebox/requests/dns/get_record.rb
index 82609b0..33840f4 100644
--- a/lib/fog/bluebox/requests/dns/get_record.rb
+++ b/lib/fog/bluebox/requests/dns/get_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Bluebox
class Real
-
require 'fog/bluebox/parsers/dns/get_record'
# Get an individual DNS record from the specified zone
@@ -25,15 +24,12 @@ module Fog
:path => "/api/domains/#{zone_id}/records/#{record_id}.xml"
)
end
-
end
class Mock
-
def get_record(record_id)
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/dns/get_records.rb b/lib/fog/bluebox/requests/dns/get_records.rb
index 82d29ef..f2c11ab 100644
--- a/lib/fog/bluebox/requests/dns/get_records.rb
+++ b/lib/fog/bluebox/requests/dns/get_records.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Bluebox
class Real
-
require 'fog/bluebox/parsers/dns/get_records'
# Get all the DNS records across all the DNS zones for this account
@@ -26,15 +25,12 @@ module Fog
:path => "/api/domains/#{zone_id}/records.xml"
)
end
-
end
class Mock
-
def get_records
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/dns/get_zone.rb b/lib/fog/bluebox/requests/dns/get_zone.rb
index 815319a..9be1a34 100644
--- a/lib/fog/bluebox/requests/dns/get_zone.rb
+++ b/lib/fog/bluebox/requests/dns/get_zone.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Bluebox
class Real
-
require 'fog/bluebox/parsers/dns/get_zone'
# Get details of a DNS zone
@@ -29,15 +28,12 @@ module Fog
:path => "/api/domains/#{zone_id}.xml"
)
end
-
end
class Mock
-
def get_zone(zone_id)
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/dns/get_zones.rb b/lib/fog/bluebox/requests/dns/get_zones.rb
index 0035ee2..e43bc36 100644
--- a/lib/fog/bluebox/requests/dns/get_zones.rb
+++ b/lib/fog/bluebox/requests/dns/get_zones.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Bluebox
class Real
-
require 'fog/bluebox/parsers/dns/get_zones'
# Get list of all DNS zones hosted on Bluebox (for this account)
@@ -28,15 +27,12 @@ module Fog
:path => '/api/domains.xml'
)
end
-
end
class Mock
-
def get_zones
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/dns/update_record.rb b/lib/fog/bluebox/requests/dns/update_record.rb
index b69c8d6..7704351 100644
--- a/lib/fog/bluebox/requests/dns/update_record.rb
+++ b/lib/fog/bluebox/requests/dns/update_record.rb
@@ -2,7 +2,6 @@ module Fog
module Bluebox
class DNS
class Real
-
# Updates an existing record in a DNS zone
# ==== Parameters
# * type<~String> - type of DNS record (A, CNAME, etc)
@@ -19,15 +18,12 @@ module Fog
:path => "/api/domains/#{zone_id}/records/#{record_id}.xml"
)
end
-
end
class Mock
-
def create_record(zone_id, type, domain, content)
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/bluebox/requests/dns/update_zone.rb b/lib/fog/bluebox/requests/dns/update_zone.rb
index aaab907..4d3e4b4 100644
--- a/lib/fog/bluebox/requests/dns/update_zone.rb
+++ b/lib/fog/bluebox/requests/dns/update_zone.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Bluebox
class Real
-
# Updates an existing DNS zone
def update_zone(zone_id, options)
body = %Q{<?xml version="1.0" encoding="UTF-8"?><domain>}
@@ -15,15 +14,12 @@ module Fog
:path => "/api/domains/#{zone_id}.xml"
)
end
-
end
class Mock
-
def create_record(zone_id, type, domain, content)
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/clodo/compute.rb b/lib/fog/clodo/compute.rb
index e415502..4be4d21 100644
--- a/lib/fog/clodo/compute.rb
+++ b/lib/fog/clodo/compute.rb
@@ -3,7 +3,6 @@ require 'fog/clodo/core'
module Fog
module Compute
class Clodo < Fog::Service
-
requires :clodo_api_key, :clodo_username
recognizes :clodo_auth_url, :persistent
recognizes :clodo_auth_token, :clodo_management_url
@@ -40,7 +39,6 @@ module Fog
# request :update_server
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {
@@ -69,11 +67,9 @@ module Fog
def reset_data
self.class.data.delete(@clodo_username)
end
-
end
class Real
-
def initialize(options={})
@clodo_api_key = options[:clodo_api_key]
@clodo_username = options[:clodo_username]
@@ -145,7 +141,6 @@ module Fog
@port = uri.port
@scheme = uri.scheme
end
-
end
end
end
diff --git a/lib/fog/clodo/core.rb b/lib/fog/clodo/core.rb
index 099ded5..1e57607 100644
--- a/lib/fog/clodo/core.rb
+++ b/lib/fog/clodo/core.rb
@@ -3,7 +3,6 @@ require 'fog/json'
module Fog
module Clodo
-
extend Fog::Provider
service(:compute, 'Compute')
@@ -29,7 +28,6 @@ module Fog
response.headers.reject do |key, value|
!['X-Server-Management-Url', 'X-Storage-Url', 'X-CDN-Management-Url', 'X-Auth-Token'].include?(key)
end
-
end # authenticate
end # module Clodo
end # module Fog
diff --git a/lib/fog/clodo/models/compute/image.rb b/lib/fog/clodo/models/compute/image.rb
index c0ac0db..c6f55bd 100644
--- a/lib/fog/clodo/models/compute/image.rb
+++ b/lib/fog/clodo/models/compute/image.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Clodo
-
class Image < Fog::Model
-
identity :id
attribute :name
@@ -23,9 +21,7 @@ module Fog
def ready?
status == 'ACTIVE'
end
-
end
-
end
end
end
diff --git a/lib/fog/clodo/models/compute/images.rb b/lib/fog/clodo/models/compute/images.rb
index 0479f83..d491485 100644
--- a/lib/fog/clodo/models/compute/images.rb
+++ b/lib/fog/clodo/models/compute/images.rb
@@ -4,9 +4,7 @@ require 'fog/clodo/models/compute/image'
module Fog
module Compute
class Clodo
-
class Images < Fog::Collection
-
model Fog::Compute::Clodo::Image
def all
@@ -20,9 +18,7 @@ module Fog
rescue Fog::Compute::Clodo::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/clodo/models/compute/server.rb b/lib/fog/clodo/models/compute/server.rb
index b6d8345..78342ac 100644
--- a/lib/fog/clodo/models/compute/server.rb
+++ b/lib/fog/clodo/models/compute/server.rb
@@ -3,9 +3,7 @@ require 'fog/compute/models/server'
module Fog
module Compute
class Clodo
-
class Server < Fog::Compute::Server
-
identity :id
attribute :addresses
@@ -117,10 +115,7 @@ module Fog
end
private
-
end
-
end
end
-
end
diff --git a/lib/fog/clodo/models/compute/servers.rb b/lib/fog/clodo/models/compute/servers.rb
index 14da86a..988c6d8 100644
--- a/lib/fog/clodo/models/compute/servers.rb
+++ b/lib/fog/clodo/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/clodo/models/compute/server'
module Fog
module Compute
class Clodo
-
class Servers < Fog::Collection
-
model Fog::Compute::Clodo::Server
def all
@@ -28,9 +26,7 @@ module Fog
rescue Fog::Compute::Clodo::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/clodo/requests/compute/add_ip_address.rb b/lib/fog/clodo/requests/compute/add_ip_address.rb
index e2bb496..76725ff 100644
--- a/lib/fog/clodo/requests/compute/add_ip_address.rb
+++ b/lib/fog/clodo/requests/compute/add_ip_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Clodo
class Real
-
# Bye new IP-address for specified server
# ==== Paramaters
# * server_id<~Integer> - Id of server to bye IP for
@@ -22,7 +21,6 @@ module Fog
class Mock
def add_ip_address(server_id)
-
raise Excon::Errors::BadRequest.new(
"Invalid image ID"
) unless server_id > 0
diff --git a/lib/fog/clodo/requests/compute/create_server.rb b/lib/fog/clodo/requests/compute/create_server.rb
index cedfd5f..dcc9887 100644
--- a/lib/fog/clodo/requests/compute/create_server.rb
+++ b/lib/fog/clodo/requests/compute/create_server.rb
@@ -35,13 +35,11 @@ module Fog
:method => 'POST',
:path => 'servers'
)
-
end
end
class Mock
def create_server(image_id, options = {})
-
raise Excon::Errors::BadRequest.new("Invalid image ID") unless image_id > 0
response = Excon::Response.new
@@ -109,4 +107,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/clodo/requests/compute/delete_ip_address.rb b/lib/fog/clodo/requests/compute/delete_ip_address.rb
index b2fc4d1..4d5a3d1 100644
--- a/lib/fog/clodo/requests/compute/delete_ip_address.rb
+++ b/lib/fog/clodo/requests/compute/delete_ip_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Clodo
class Real
-
# Delete IP-address from specified server
# ==== Paramaters
# * server_id<~Integer> - Id of server to delete IP from
@@ -26,7 +25,6 @@ module Fog
class Mock
def delete_ip_address(server_id, ip)
-
server = self.data[:servers][server_id]
raise Excon::Errors::BadRequest.new "Server not found" unless server
diff --git a/lib/fog/clodo/requests/compute/delete_server.rb b/lib/fog/clodo/requests/compute/delete_server.rb
index 0101ea6..314f456 100644
--- a/lib/fog/clodo/requests/compute/delete_server.rb
+++ b/lib/fog/clodo/requests/compute/delete_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Clodo
class Real
-
# Delete an existing server
#
# ==== Parameters
@@ -15,15 +14,13 @@ module Fog
:path => "servers/#{server_id}"
)
end
-
end
class Mock
-
def delete_server(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'].to_i == server_id }
+ if server = list_servers_detail.body['servers'].find {|_| _['id'].to_i == server_id }
if server['status'] == 'is_install'
response.status = 405
raise(Excon::Errors.status_error({:expects => 204}, response))
@@ -37,7 +34,6 @@ module Fog
raise Fog::Compute::Clodo::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/clodo/requests/compute/get_server_details.rb b/lib/fog/clodo/requests/compute/get_server_details.rb
index 83a33ee..bb7a0a9 100644
--- a/lib/fog/clodo/requests/compute/get_server_details.rb
+++ b/lib/fog/clodo/requests/compute/get_server_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Clodo
class Real
-
# Get details about a server
#
# ==== Parameters
@@ -26,14 +25,12 @@ module Fog
:path => "servers/#{server_id}"
)
end
-
end
class Mock
-
def get_server_details(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == "#{server_id}"}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == "#{server_id}"}
response.status = [200, 203][rand(1)]
response.body = { 'server' => server }
response.body['server']['id'] = server['id'].to_i
@@ -42,7 +39,6 @@ module Fog
raise Fog::Compute::Clodo::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/clodo/requests/compute/list_images.rb b/lib/fog/clodo/requests/compute/list_images.rb
index c03e032..1015e34 100644
--- a/lib/fog/clodo/requests/compute/list_images.rb
+++ b/lib/fog/clodo/requests/compute/list_images.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Clodo
class Real
-
# List all images (IDs and names only)
#
# ==== Returns
@@ -19,11 +18,9 @@ module Fog
:path => 'images'
)
end
-
end
class Mock
-
def list_images
response = Excon::Response.new
response.status = 200
@@ -41,7 +38,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/clodo/requests/compute/list_images_detail.rb b/lib/fog/clodo/requests/compute/list_images_detail.rb
index 5c04ee4..a434dac 100644
--- a/lib/fog/clodo/requests/compute/list_images_detail.rb
+++ b/lib/fog/clodo/requests/compute/list_images_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Clodo
class Real
-
# List all images
#
# ==== Returns
@@ -24,11 +23,9 @@ module Fog
:path => 'images/detail'
)
end
-
end
class Mock
-
def list_images_detail
response = Excon::Response.new
response.status = 200
@@ -54,7 +51,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/clodo/requests/compute/list_servers.rb b/lib/fog/clodo/requests/compute/list_servers.rb
index 7342f76..c4f6178 100644
--- a/lib/fog/clodo/requests/compute/list_servers.rb
+++ b/lib/fog/clodo/requests/compute/list_servers.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Clodo
class Real
-
# List all servers (IDs and names only)
#
# ==== Returns
@@ -27,11 +26,9 @@ module Fog
:path => 'servers'
)
end
-
end
class Mock
-
def list_servers
response = Excon::Response.new
data = list_servers_detail.body['servers']
@@ -43,7 +40,6 @@ module Fog
response.body = { 'servers' => servers }
response
end
-
end
end
end
diff --git a/lib/fog/clodo/requests/compute/list_servers_detail.rb b/lib/fog/clodo/requests/compute/list_servers_detail.rb
index e64bda0..3222bf0 100644
--- a/lib/fog/clodo/requests/compute/list_servers_detail.rb
+++ b/lib/fog/clodo/requests/compute/list_servers_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Clodo
class Real
-
# List all servers details
#
# ==== Returns
@@ -22,11 +21,9 @@ module Fog
:path => 'servers/detail'
)
end
-
end
class Mock
-
def list_servers_detail
response = Excon::Response.new
@@ -44,7 +41,6 @@ module Fog
response.body = { 'servers' => servers }
response
end
-
end
end
end
diff --git a/lib/fog/clodo/requests/compute/move_ip_address.rb b/lib/fog/clodo/requests/compute/move_ip_address.rb
index c35f9e4..937d415 100644
--- a/lib/fog/clodo/requests/compute/move_ip_address.rb
+++ b/lib/fog/clodo/requests/compute/move_ip_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Clodo
class Real
-
# Move IP-address to specified server.
# ==== Paramaters
# * server_id<~Integer> - Id of server to move IP to
diff --git a/lib/fog/clodo/requests/compute/server_action.rb b/lib/fog/clodo/requests/compute/server_action.rb
index f9227c4..a5f2b47 100644
--- a/lib/fog/clodo/requests/compute/server_action.rb
+++ b/lib/fog/clodo/requests/compute/server_action.rb
@@ -12,7 +12,6 @@ module Fog
end
class Mock
def server_action(id, action)
-
raise Excon::Errors::BadRequest.new("Invalid server id #{id}.") unless id > 0
response = Excon::Response.new
diff --git a/lib/fog/cloudsigma/compute.rb b/lib/fog/cloudsigma/compute.rb
index d231b52..1e47a66 100644
--- a/lib/fog/cloudsigma/compute.rb
+++ b/lib/fog/cloudsigma/compute.rb
@@ -79,7 +79,6 @@ module Fog
model :pricing
request :get_pricing
-
module CommonMockAndReal
def initialize(options={})
@init_options = options
@@ -107,7 +106,6 @@ module Fog
def currency
# Cache since currency does not change
@currency ||= profile.currency
-
end
def pricing
@@ -135,7 +133,7 @@ module Fog
current_prices = resp.body['objects']
current_pricing_pairs = current_levels.map do |resource, level|
- price_for_resource_and_level = current_prices.detect do |price|
+ price_for_resource_and_level = current_prices.find do |price|
price['resource'] == resource
end
price_for_resource_and_level ||= {}
@@ -153,7 +151,7 @@ module Fog
current_prices = resp.body['objects']
current_pricing_pairs = current_levels.map do |resource, level|
- price_for_resource_and_level = current_prices.detect do |price|
+ price_for_resource_and_level = current_prices.find do |price|
price['level'] == level && price['resource'] == resource
end
price_for_resource_and_level ||= {}
@@ -171,7 +169,7 @@ module Fog
current_prices = resp.body['objects']
current_pricing_pairs = current_levels.map do |resource, level|
- price_for_resource_and_level = current_prices.detect do |price|
+ price_for_resource_and_level = current_prices.find do |price|
price['level'] == level && price['resource'] == resource
end
price_for_resource_and_level ||= {}
@@ -181,7 +179,6 @@ module Fog
Pricing.new(Hash[current_pricing_pairs])
end
-
end
class Mock
@@ -216,10 +213,7 @@ module Fog
include Collections
include CommonMockAndReal
include Fog::CloudSigma::CloudSigmaConnection::Real
-
end
-
end
end
-
end
diff --git a/lib/fog/cloudsigma/connection.rb b/lib/fog/cloudsigma/connection.rb
index c9211d4..ec36a2f 100644
--- a/lib/fog/cloudsigma/connection.rb
+++ b/lib/fog/cloudsigma/connection.rb
@@ -3,7 +3,6 @@ require 'fog/cloudsigma/error'
module Fog
module CloudSigma
module CloudSigmaConnection
-
module Real
def auth_header(type = :basic)
case type
@@ -47,7 +46,6 @@ module Fog
req_path = params[:path]
params[:path] = "#{@path_prefix}#{req_path}"
-
params[:body] = Fog::JSON.encode(params[:body]) if params[:body]
begin
@@ -113,7 +111,6 @@ module Fog
def setup_connection(options)
@username = options[:cloudsigma_username]
@password = options[:cloudsigma_password]
-
end
def mock_get(obj_or_collection, status, key=nil)
@@ -189,9 +186,7 @@ module Fog
response
end
-
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/error.rb b/lib/fog/cloudsigma/error.rb
index 8ed7b73..c12a379 100644
--- a/lib/fog/cloudsigma/error.rb
+++ b/lib/fog/cloudsigma/error.rb
@@ -9,7 +9,6 @@ module Fog
@error_point = error_point
super(message)
end
-
end
class NotFound < Error; end
@@ -35,11 +34,6 @@ module Fog
new_error.verbose = error.message
new_error
end
-
-
-
end
-
-
end
end
diff --git a/lib/fog/cloudsigma/mock_data.rb b/lib/fog/cloudsigma/mock_data.rb
index ca1a979..e51f1ee 100644
--- a/lib/fog/cloudsigma/mock_data.rb
+++ b/lib/fog/cloudsigma/mock_data.rb
@@ -37,7 +37,6 @@ module Fog
:current_usage => {},
:balance => {:balance => 100, :currency => 'CHF'},
-
}
end
end
diff --git a/lib/fog/cloudsigma/models/fwpolicies.rb b/lib/fog/cloudsigma/models/fwpolicies.rb
index 0ee5d89..7d3c9e2 100644
--- a/lib/fog/cloudsigma/models/fwpolicies.rb
+++ b/lib/fog/cloudsigma/models/fwpolicies.rb
@@ -12,10 +12,7 @@ module Fog
data = resp.body['objects']
load(data)
end
-
end
-
-
end
end
end
diff --git a/lib/fog/cloudsigma/models/fwpolicy.rb b/lib/fog/cloudsigma/models/fwpolicy.rb
index 9d50c1f..240a94e 100644
--- a/lib/fog/cloudsigma/models/fwpolicy.rb
+++ b/lib/fog/cloudsigma/models/fwpolicy.rb
@@ -14,8 +14,6 @@ module Fog
attribute :servers, :type => :array
model_attribute_array :rules, Rule
end
-
-
end
end
end
diff --git a/lib/fog/cloudsigma/models/ip.rb b/lib/fog/cloudsigma/models/ip.rb
index a50053d..4874e73 100644
--- a/lib/fog/cloudsigma/models/ip.rb
+++ b/lib/fog/cloudsigma/models/ip.rb
@@ -14,8 +14,6 @@ module Fog
attribute :subscription
attribute :gateway, :type => :string
attribute :resource_uri, :type => :string
-
-
end
end
end
diff --git a/lib/fog/cloudsigma/models/ips.rb b/lib/fog/cloudsigma/models/ips.rb
index cfb7906..d8b6f75 100644
--- a/lib/fog/cloudsigma/models/ips.rb
+++ b/lib/fog/cloudsigma/models/ips.rb
@@ -20,7 +20,6 @@ module Fog
rescue Fog::CloudSigma::Errors::NotFound
return nil
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/models/lib_volume.rb b/lib/fog/cloudsigma/models/lib_volume.rb
index 93ad12e..b44ffca 100644
--- a/lib/fog/cloudsigma/models/lib_volume.rb
+++ b/lib/fog/cloudsigma/models/lib_volume.rb
@@ -6,7 +6,7 @@ module Fog
class LibVolume < Fog::Model
identity :uuid
- attribute :mounted_on, :type => :related
+ attribute :mounted_on
attribute :licenses
attribute :meta
attribute :owner
@@ -31,8 +31,6 @@ module Fog
attribute :os, :type => :string
attribute :resource_uri, :type => :string
-
-
def reload
requires :identity
collection.get(identity)
diff --git a/lib/fog/cloudsigma/models/lib_volumes.rb b/lib/fog/cloudsigma/models/lib_volumes.rb
index 7578ab9..64dfcab 100644
--- a/lib/fog/cloudsigma/models/lib_volumes.rb
+++ b/lib/fog/cloudsigma/models/lib_volumes.rb
@@ -20,7 +20,6 @@ module Fog
rescue Fog::CloudSigma::Errors::NotFound
return nil
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/models/mountpoint.rb b/lib/fog/cloudsigma/models/mountpoint.rb
index 3718cd4..d3e39fa 100644
--- a/lib/fog/cloudsigma/models/mountpoint.rb
+++ b/lib/fog/cloudsigma/models/mountpoint.rb
@@ -18,7 +18,7 @@ module Fog
def drive=(new_drive)
attributes[:drive] = new_drive
end
- alias :volume :drive
+ alias_method :volume, :drive
end
end
end
diff --git a/lib/fog/cloudsigma/models/nic.rb b/lib/fog/cloudsigma/models/nic.rb
index bb06e30..6fbd889 100644
--- a/lib/fog/cloudsigma/models/nic.rb
+++ b/lib/fog/cloudsigma/models/nic.rb
@@ -2,13 +2,10 @@ require 'fog/core/model'
require 'fog/cloudsigma/nested_model'
require 'fog/cloudsigma/models/ipconf'
-
module Fog
module Compute
class CloudSigma
class Nic < Fog::CloudSigma::CloudsigmaModel
-
-
attribute :boot_order
attribute :mac, :type => :string
attribute :model, :type => :string
@@ -16,7 +13,6 @@ module Fog
attribute :firewall_policy
model_attribute :ip_v4_conf, IPConf
model_attribute :ip_v6_conf, IPConf
-
end
end
end
diff --git a/lib/fog/cloudsigma/models/price_record.rb b/lib/fog/cloudsigma/models/price_record.rb
index 0e4e1c6..71d957f 100644
--- a/lib/fog/cloudsigma/models/price_record.rb
+++ b/lib/fog/cloudsigma/models/price_record.rb
@@ -31,7 +31,6 @@ module Fog
def base_price
price / multiplier
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/models/pricing.rb b/lib/fog/cloudsigma/models/pricing.rb
index 4185fe1..06a119f 100644
--- a/lib/fog/cloudsigma/models/pricing.rb
+++ b/lib/fog/cloudsigma/models/pricing.rb
@@ -13,7 +13,6 @@ module Fog
model_attribute :ssd, PriceRecord
model_attribute :tx, PriceRecord
model_attribute :vlan, PriceRecord
-
end
end
end
diff --git a/lib/fog/cloudsigma/models/profile.rb b/lib/fog/cloudsigma/models/profile.rb
index 9e75de8..270d98e 100644
--- a/lib/fog/cloudsigma/models/profile.rb
+++ b/lib/fog/cloudsigma/models/profile.rb
@@ -32,7 +32,6 @@ module Fog
attribute :country, :type => :string
attribute :postcode, :type => :string
-
def save
update
end
@@ -43,7 +42,6 @@ module Fog
self
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/models/rule.rb b/lib/fog/cloudsigma/models/rule.rb
index da91086..fdc48c1 100644
--- a/lib/fog/cloudsigma/models/rule.rb
+++ b/lib/fog/cloudsigma/models/rule.rb
@@ -12,10 +12,7 @@ module Fog
attribute :ip_proto, :type => :string
attribute :src_ip, :type => :string
attribute :src_port, :type => :string
-
-
end
end
end
end
-
diff --git a/lib/fog/cloudsigma/models/server.rb b/lib/fog/cloudsigma/models/server.rb
index c29c39f..efe6ee7 100644
--- a/lib/fog/cloudsigma/models/server.rb
+++ b/lib/fog/cloudsigma/models/server.rb
@@ -6,8 +6,6 @@ module Fog
module Compute
class CloudSigma
class Server < Fog::CloudSigma::CloudsigmaModel
-
-
identity :uuid
attribute :status, :type => :string
@@ -28,7 +26,6 @@ module Fog
model_attribute_array :volumes, MountPoint, :aliases => 'drives'
model_attribute_array :nics, Nic
-
def save
if persisted?
update
@@ -54,7 +51,6 @@ module Fog
response = service.update_server(identity, data)
new_attributes = response.body
merge_attributes(new_attributes)
-
end
def destroy
@@ -64,7 +60,7 @@ module Fog
true
end
- alias :delete :destroy
+ alias_method :delete, :destroy
def start(start_params={})
requires :identity
@@ -126,7 +122,6 @@ module Fog
end
end
-
vol_id = volume.kind_of?(String) ? volume : volume.identity
mountpoint_data = {
'drive' => vol_id,
diff --git a/lib/fog/cloudsigma/models/servers.rb b/lib/fog/cloudsigma/models/servers.rb
index eb68fac..5c8a3e1 100644
--- a/lib/fog/cloudsigma/models/servers.rb
+++ b/lib/fog/cloudsigma/models/servers.rb
@@ -20,7 +20,6 @@ module Fog
rescue Fog::CloudSigma::Errors::NotFound
return nil
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/models/subscription.rb b/lib/fog/cloudsigma/models/subscription.rb
index 6086527..4025c22 100644
--- a/lib/fog/cloudsigma/models/subscription.rb
+++ b/lib/fog/cloudsigma/models/subscription.rb
@@ -46,7 +46,6 @@ module Fog
self.class.new(response.body)
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/models/vlan.rb b/lib/fog/cloudsigma/models/vlan.rb
index 19290ef..be34834 100644
--- a/lib/fog/cloudsigma/models/vlan.rb
+++ b/lib/fog/cloudsigma/models/vlan.rb
@@ -22,7 +22,7 @@ module Fog
merge_attributes(new_attributes)
end
- alias :save :update
+ alias_method :save, :update
end
end
end
diff --git a/lib/fog/cloudsigma/models/vlans.rb b/lib/fog/cloudsigma/models/vlans.rb
index b5f67aa..ff500cd 100644
--- a/lib/fog/cloudsigma/models/vlans.rb
+++ b/lib/fog/cloudsigma/models/vlans.rb
@@ -20,7 +20,6 @@ module Fog
rescue Fog::CloudSigma::Errors::NotFound
return nil
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/models/volume.rb b/lib/fog/cloudsigma/models/volume.rb
index 8072cea..3141085 100644
--- a/lib/fog/cloudsigma/models/volume.rb
+++ b/lib/fog/cloudsigma/models/volume.rb
@@ -20,7 +20,6 @@ module Fog
attribute :size, :type => :integer
attribute :resource_uri, :type => :string
-
def save
if persisted?
update
@@ -46,7 +45,6 @@ module Fog
response = service.update_volume(identity, data)
new_attributes = response.body
merge_attributes(new_attributes)
-
end
def destroy
@@ -57,7 +55,7 @@ module Fog
true
end
- alias :delete :destroy
+ alias_method :delete, :destroy
def clone(clone_params={})
requires :identity
diff --git a/lib/fog/cloudsigma/models/volumes.rb b/lib/fog/cloudsigma/models/volumes.rb
index 40881e4..2aae678 100644
--- a/lib/fog/cloudsigma/models/volumes.rb
+++ b/lib/fog/cloudsigma/models/volumes.rb
@@ -20,7 +20,6 @@ module Fog
rescue Fog::CloudSigma::Errors::NotFound
return nil
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/calculate_subscription_price.rb b/lib/fog/cloudsigma/requests/calculate_subscription_price.rb
index bd2cfcc..d7acbfc 100644
--- a/lib/fog/cloudsigma/requests/calculate_subscription_price.rb
+++ b/lib/fog/cloudsigma/requests/calculate_subscription_price.rb
@@ -9,10 +9,8 @@ module Fog
class Mock
def calculate_subscription_price(data)
-
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/clone_libvolume.rb b/lib/fog/cloudsigma/requests/clone_libvolume.rb
index 40d6622..d4049f7 100644
--- a/lib/fog/cloudsigma/requests/clone_libvolume.rb
+++ b/lib/fog/cloudsigma/requests/clone_libvolume.rb
@@ -26,7 +26,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/clone_server.rb b/lib/fog/cloudsigma/requests/clone_server.rb
index da985f7..cb0f722 100644
--- a/lib/fog/cloudsigma/requests/clone_server.rb
+++ b/lib/fog/cloudsigma/requests/clone_server.rb
@@ -26,7 +26,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/clone_volume.rb b/lib/fog/cloudsigma/requests/clone_volume.rb
index 3a647b9..69c717e 100644
--- a/lib/fog/cloudsigma/requests/clone_volume.rb
+++ b/lib/fog/cloudsigma/requests/clone_volume.rb
@@ -26,7 +26,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/close_vnc.rb b/lib/fog/cloudsigma/requests/close_vnc.rb
index e98e58a..a9e4711 100644
--- a/lib/fog/cloudsigma/requests/close_vnc.rb
+++ b/lib/fog/cloudsigma/requests/close_vnc.rb
@@ -24,7 +24,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/create_server.rb b/lib/fog/cloudsigma/requests/create_server.rb
index 2e8ac5a..5558150 100644
--- a/lib/fog/cloudsigma/requests/create_server.rb
+++ b/lib/fog/cloudsigma/requests/create_server.rb
@@ -23,11 +23,9 @@ module Fog
'tags' => []
}
-
mock_create(:servers, 202, data, uuid, defaults)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/create_subscription.rb b/lib/fog/cloudsigma/requests/create_subscription.rb
index 8022350..405a8d8 100644
--- a/lib/fog/cloudsigma/requests/create_subscription.rb
+++ b/lib/fog/cloudsigma/requests/create_subscription.rb
@@ -9,7 +9,6 @@ module Fog
class Mock
def create_subscription(data)
-
if data[:period] != '1 month' || data[:start_time] || data[:end_time]
raise Fog::Errors::MockNotImplemented.new('Currently only mocks for subscriptions with period 1 month from now are implemented as mock')
end
@@ -34,7 +33,6 @@ module Fog
mock_create(:subscriptions, 200, data, id, defaults)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/create_volume.rb b/lib/fog/cloudsigma/requests/create_volume.rb
index 185d5b7..56072ef 100644
--- a/lib/fog/cloudsigma/requests/create_volume.rb
+++ b/lib/fog/cloudsigma/requests/create_volume.rb
@@ -24,7 +24,6 @@ module Fog
mock_create(:volumes, 202, data, uuid, defaults)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/delete_server.rb b/lib/fog/cloudsigma/requests/delete_server.rb
index c6e3a39..d3c6d5d 100644
--- a/lib/fog/cloudsigma/requests/delete_server.rb
+++ b/lib/fog/cloudsigma/requests/delete_server.rb
@@ -12,7 +12,6 @@ module Fog
mock_delete(:servers, 204, server_id)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/delete_volume.rb b/lib/fog/cloudsigma/requests/delete_volume.rb
index f54f8f0..04c7b23 100644
--- a/lib/fog/cloudsigma/requests/delete_volume.rb
+++ b/lib/fog/cloudsigma/requests/delete_volume.rb
@@ -12,7 +12,6 @@ module Fog
mock_delete(:volumes, 204, vol_id)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/extend_subscription.rb b/lib/fog/cloudsigma/requests/extend_subscription.rb
index 87c7d43..3809316 100644
--- a/lib/fog/cloudsigma/requests/extend_subscription.rb
+++ b/lib/fog/cloudsigma/requests/extend_subscription.rb
@@ -13,10 +13,8 @@ module Fog
class Mock
def extend_subscription(sub_id, data)
-
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/get_balance.rb b/lib/fog/cloudsigma/requests/get_balance.rb
index 0ffa2af..60d364b 100644
--- a/lib/fog/cloudsigma/requests/get_balance.rb
+++ b/lib/fog/cloudsigma/requests/get_balance.rb
@@ -12,7 +12,6 @@ module Fog
mock_get(:balance, 200)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/get_current_usage.rb b/lib/fog/cloudsigma/requests/get_current_usage.rb
index 31c78e7..4f5f49a 100644
--- a/lib/fog/cloudsigma/requests/get_current_usage.rb
+++ b/lib/fog/cloudsigma/requests/get_current_usage.rb
@@ -9,10 +9,8 @@ module Fog
class Mock
def get_current_usage
-
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/get_ip.rb b/lib/fog/cloudsigma/requests/get_ip.rb
index 58d065b..5e681a3 100644
--- a/lib/fog/cloudsigma/requests/get_ip.rb
+++ b/lib/fog/cloudsigma/requests/get_ip.rb
@@ -12,7 +12,6 @@ module Fog
mock_get(:ips, 200, ip)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/get_lib_volume.rb b/lib/fog/cloudsigma/requests/get_lib_volume.rb
index 6d08787..d6dcb5d 100644
--- a/lib/fog/cloudsigma/requests/get_lib_volume.rb
+++ b/lib/fog/cloudsigma/requests/get_lib_volume.rb
@@ -12,7 +12,6 @@ module Fog
mock_get(:libvolumes, 200, vol_id)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/get_pricing.rb b/lib/fog/cloudsigma/requests/get_pricing.rb
index 20e1e9b..fab5742 100644
--- a/lib/fog/cloudsigma/requests/get_pricing.rb
+++ b/lib/fog/cloudsigma/requests/get_pricing.rb
@@ -22,7 +22,6 @@ module Fog
mock_get(:pricing, 200)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/get_profile.rb b/lib/fog/cloudsigma/requests/get_profile.rb
index 5b6bf67..504f9b1 100644
--- a/lib/fog/cloudsigma/requests/get_profile.rb
+++ b/lib/fog/cloudsigma/requests/get_profile.rb
@@ -12,7 +12,6 @@ module Fog
mock_get(:profile, 200)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/get_server.rb b/lib/fog/cloudsigma/requests/get_server.rb
index 39b5026..8219cad 100644
--- a/lib/fog/cloudsigma/requests/get_server.rb
+++ b/lib/fog/cloudsigma/requests/get_server.rb
@@ -12,7 +12,6 @@ module Fog
mock_get(:servers, 200, server_id)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/get_subscription.rb b/lib/fog/cloudsigma/requests/get_subscription.rb
index bd4ff45..c8db78a 100644
--- a/lib/fog/cloudsigma/requests/get_subscription.rb
+++ b/lib/fog/cloudsigma/requests/get_subscription.rb
@@ -12,7 +12,6 @@ module Fog
mock_get(:subscriptions, 200, sub_id)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/get_vlan.rb b/lib/fog/cloudsigma/requests/get_vlan.rb
index 93d7e24..70dfdea 100644
--- a/lib/fog/cloudsigma/requests/get_vlan.rb
+++ b/lib/fog/cloudsigma/requests/get_vlan.rb
@@ -12,7 +12,6 @@ module Fog
mock_get(:vlans, 200, vlan)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/get_volume.rb b/lib/fog/cloudsigma/requests/get_volume.rb
index deeefeb..cf24cb2 100644
--- a/lib/fog/cloudsigma/requests/get_volume.rb
+++ b/lib/fog/cloudsigma/requests/get_volume.rb
@@ -12,7 +12,6 @@ module Fog
mock_get(:volumes, 200, vol_id)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/list_fwpolicies.rb b/lib/fog/cloudsigma/requests/list_fwpolicies.rb
index ee13ad4..4199a71 100644
--- a/lib/fog/cloudsigma/requests/list_fwpolicies.rb
+++ b/lib/fog/cloudsigma/requests/list_fwpolicies.rb
@@ -12,7 +12,6 @@ module Fog
Fog::Mock.not_implemented
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/list_ips.rb b/lib/fog/cloudsigma/requests/list_ips.rb
index a03f119..2a25ff6 100644
--- a/lib/fog/cloudsigma/requests/list_ips.rb
+++ b/lib/fog/cloudsigma/requests/list_ips.rb
@@ -12,7 +12,6 @@ module Fog
mock_list(:ips, 200)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/list_lib_volumes.rb b/lib/fog/cloudsigma/requests/list_lib_volumes.rb
index d782ace..74beb36 100644
--- a/lib/fog/cloudsigma/requests/list_lib_volumes.rb
+++ b/lib/fog/cloudsigma/requests/list_lib_volumes.rb
@@ -12,7 +12,6 @@ module Fog
mock_list(:libvolumes, 200)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/list_servers.rb b/lib/fog/cloudsigma/requests/list_servers.rb
index 942ec7d..b7f9956 100644
--- a/lib/fog/cloudsigma/requests/list_servers.rb
+++ b/lib/fog/cloudsigma/requests/list_servers.rb
@@ -12,7 +12,6 @@ module Fog
mock_list(:servers, 200)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/list_subscriptions.rb b/lib/fog/cloudsigma/requests/list_subscriptions.rb
index ccb5355..3deadce 100644
--- a/lib/fog/cloudsigma/requests/list_subscriptions.rb
+++ b/lib/fog/cloudsigma/requests/list_subscriptions.rb
@@ -12,7 +12,6 @@ module Fog
mock_list(:subscriptions, 200)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/list_vlans.rb b/lib/fog/cloudsigma/requests/list_vlans.rb
index f49b788..2a5b93d 100644
--- a/lib/fog/cloudsigma/requests/list_vlans.rb
+++ b/lib/fog/cloudsigma/requests/list_vlans.rb
@@ -12,7 +12,6 @@ module Fog
mock_list(:vlans, 200)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/list_volumes.rb b/lib/fog/cloudsigma/requests/list_volumes.rb
index b26998b..8ac6e8b 100644
--- a/lib/fog/cloudsigma/requests/list_volumes.rb
+++ b/lib/fog/cloudsigma/requests/list_volumes.rb
@@ -12,7 +12,6 @@ module Fog
mock_list(:volumes, 200)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/open_vnc.rb b/lib/fog/cloudsigma/requests/open_vnc.rb
index 831d9b4..a64a8cd 100644
--- a/lib/fog/cloudsigma/requests/open_vnc.rb
+++ b/lib/fog/cloudsigma/requests/open_vnc.rb
@@ -28,7 +28,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/start_server.rb b/lib/fog/cloudsigma/requests/start_server.rb
index 740502d..a8f62c7 100644
--- a/lib/fog/cloudsigma/requests/start_server.rb
+++ b/lib/fog/cloudsigma/requests/start_server.rb
@@ -26,7 +26,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/stop_server.rb b/lib/fog/cloudsigma/requests/stop_server.rb
index e13f4c5..5356764 100644
--- a/lib/fog/cloudsigma/requests/stop_server.rb
+++ b/lib/fog/cloudsigma/requests/stop_server.rb
@@ -23,11 +23,9 @@ module Fog
'uuid' => server_id
}
-
response
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/update_profile.rb b/lib/fog/cloudsigma/requests/update_profile.rb
index dc4fd27..d62a63b 100644
--- a/lib/fog/cloudsigma/requests/update_profile.rb
+++ b/lib/fog/cloudsigma/requests/update_profile.rb
@@ -12,7 +12,6 @@ module Fog
mock_update(data, :profile, 200)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/update_server.rb b/lib/fog/cloudsigma/requests/update_server.rb
index d485f43..28f3efa 100644
--- a/lib/fog/cloudsigma/requests/update_server.rb
+++ b/lib/fog/cloudsigma/requests/update_server.rb
@@ -34,7 +34,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/update_vlan.rb b/lib/fog/cloudsigma/requests/update_vlan.rb
index 223832f..3204452 100644
--- a/lib/fog/cloudsigma/requests/update_vlan.rb
+++ b/lib/fog/cloudsigma/requests/update_vlan.rb
@@ -14,7 +14,6 @@ module Fog
mock_update(data, :vlans, 200, vlan_id)
end
end
-
end
end
end
diff --git a/lib/fog/cloudsigma/requests/update_volume.rb b/lib/fog/cloudsigma/requests/update_volume.rb
index a1bf30c..ac00aac 100644
--- a/lib/fog/cloudsigma/requests/update_volume.rb
+++ b/lib/fog/cloudsigma/requests/update_volume.rb
@@ -12,7 +12,6 @@ module Fog
mock_update(data, :volumes, 200, vol_id)
end
end
-
end
end
end
diff --git a/lib/fog/cloudstack/compute.rb b/lib/fog/cloudstack/compute.rb
index 23054a8..0e7f58a 100644
--- a/lib/fog/cloudstack/compute.rb
+++ b/lib/fog/cloudstack/compute.rb
@@ -38,105 +38,492 @@ module Fog
collection :snapshots
model :zone
collection :zones
-
- request :acquire_ip_address
+ request :activate_project
+ request :add_account_to_project
+ request :add_baremetal_dhcp
+ request :add_baremetal_host
+ request :add_baremetal_pxe_kick_start_server
+ request :add_baremetal_pxe_ping_server
+ request :add_big_switch_vns_device
+ request :add_cisco_asa1000v_resource
+ request :add_cisco_vnmc_resource
+ request :add_cluster
+ request :add_external_firewall
+ request :add_external_load_balancer
+ request :add_f5_load_balancer
+ request :add_guest_os
+ request :add_guest_os_mapping
+ request :add_host
+ request :add_image_store
+ request :add_ip_to_nic
+ request :add_ldap_configuration
+ request :add_netscaler_load_balancer
+ request :add_network_device
+ request :add_network_service_provider
+ request :add_nic_to_virtual_machine
+ request :add_nicira_nvp_device
+ request :add_open_daylight_controller
+ request :add_palo_alto_firewall
+ request :add_region
+ request :add_resource_detail
+ request :add_s3
+ request :add_secondary_storage
+ request :add_srx_firewall
+ request :add_stratosphere_ssp
+ request :add_swift
+ request :add_traffic_monitor
+ request :add_traffic_type
+ request :add_ucs_manager
+ request :add_vmware_dc
+ request :add_vpn_user
+ request :archive_alerts
+ request :archive_events
+ request :assign_cert_to_load_balancer
+ request :assign_to_global_load_balancer_rule
request :assign_to_load_balancer_rule
request :assign_virtual_machine
+ request :associate_ip_address
+ request :associate_ucs_profile_to_blade
+ request :attach_iso
request :attach_volume
request :authorize_security_group_egress
request :authorize_security_group_ingress
+ request :cancel_host_maintenance
+ request :cancel_storage_maintenance
+ request :change_service_for_router
+ request :change_service_for_system_vm
request :change_service_for_virtual_machine
+ request :clean_vmreservations
+ request :configure_f5_load_balancer
+ request :configure_internal_load_balancer_element
+ request :configure_netscaler_load_balancer
+ request :configure_ovs_element
+ request :configure_palo_alto_firewall
+ request :configure_srx_firewall
+ request :configure_virtual_router_element
+ request :copy_iso
+ request :copy_template
request :create_account
+ request :create_affinity_group
+ request :create_auto_scale_policy
+ request :create_auto_scale_vm_group
+ request :create_auto_scale_vm_profile
+ request :create_condition
+ request :create_counter
request :create_disk_offering
request :create_domain
+ request :create_egress_firewall_rule
+ request :create_firewall_rule
+ request :create_global_load_balancer_rule
+ request :create_instance_group
+ request :create_internal_load_balancer_element
+ request :create_ip_forwarding_rule
+ request :create_lb_health_check_policy
+ request :create_lb_stickiness_policy
+ request :create_load_balancer
request :create_load_balancer_rule
request :create_network
+ request :create_network_acl
+ request :create_network_acl_list
+ request :create_network_offering
+ request :create_physical_network
+ request :create_pod
request :create_port_forwarding_rule
+ request :create_portable_ip_range
+ request :create_private_gateway
+ request :create_project
+ request :create_remote_access_vpn
+ request :create_secondary_staging_store
request :create_security_group
- request :create_ssh_key_pair
+ request :create_service_instance
+ request :create_service_offering
request :create_snapshot
request :create_snapshot_policy
+ request :create_ssh_key_pair
+ request :create_static_route
+ request :create_storage_network_ip_range
+ request :create_storage_pool
+ request :create_tags
+ request :create_template
request :create_user
+ request :create_virtual_router_element
+ request :create_vlan_ip_range
+ request :create_vm_snapshot
request :create_volume
+ request :create_vpc
+ request :create_vpcoffering
+ request :create_vpn_connection
+ request :create_vpn_customer_gateway
+ request :create_vpn_gateway
request :create_zone
+ request :dedicate_cluster
+ request :dedicate_guest_vlan_range
+ request :dedicate_host
+ request :dedicate_pod
+ request :dedicate_public_ip_range
+ request :dedicate_zone
request :delete_account
+ request :delete_account_from_project
+ request :delete_affinity_group
+ request :delete_alerts
+ request :delete_auto_scale_policy
+ request :delete_auto_scale_vm_group
+ request :delete_auto_scale_vm_profile
+ request :delete_big_switch_vns_device
+ request :delete_cisco_asa1000v_resource
+ request :delete_cisco_nexus_vsm
+ request :delete_cisco_vnmc_resource
+ request :delete_cluster
+ request :delete_condition
+ request :delete_counter
request :delete_disk_offering
request :delete_domain
+ request :delete_egress_firewall_rule
+ request :delete_events
+ request :delete_external_firewall
+ request :delete_external_load_balancer
+ request :delete_f5_load_balancer
+ request :delete_firewall_rule
+ request :delete_global_load_balancer_rule
+ request :delete_host
+ request :delete_image_store
+ request :delete_instance_group
+ request :delete_ip_forwarding_rule
+ request :delete_iso
+ request :delete_lb_health_check_policy
+ request :delete_lb_stickiness_policy
+ request :delete_ldap_configuration
+ request :delete_load_balancer
request :delete_load_balancer_rule
+ request :delete_netscaler_load_balancer
+ request :delete_network
+ request :delete_network_acl
+ request :delete_network_acl_list
+ request :delete_network_device
+ request :delete_network_offering
+ request :delete_network_service_provider
+ request :delete_nicira_nvp_device
+ request :delete_open_daylight_controller
+ request :delete_palo_alto_firewall
+ request :delete_physical_network
+ request :delete_pod
request :delete_port_forwarding_rule
+ request :delete_portable_ip_range
+ request :delete_private_gateway
+ request :delete_project
+ request :delete_project_invitation
+ request :delete_remote_access_vpn
+ request :delete_secondary_staging_store
request :delete_security_group
- request :delete_ssh_key_pair
+ request :delete_service_offering
request :delete_snapshot
request :delete_snapshot_policies
+ request :delete_srx_firewall
+ request :delete_ssh_key_pair
+ request :delete_ssl_cert
+ request :delete_static_route
+ request :delete_storage_network_ip_range
+ request :delete_storage_pool
+ request :delete_tags
request :delete_template
+ request :delete_traffic_monitor
+ request :delete_traffic_type
request :delete_user
+ request :delete_vlan_ip_range
+ request :delete_vm_snapshot
request :delete_volume
- request :detach_volume
+ request :delete_vpc
+ request :delete_vpcoffering
+ request :delete_vpn_connection
+ request :delete_vpn_customer_gateway
+ request :delete_vpn_gateway
+ request :delete_zone
request :deploy_virtual_machine
+ request :destroy_router
+ request :destroy_system_vm
request :destroy_virtual_machine
+ request :detach_iso
+ request :detach_volume
+ request :disable_account
+ request :disable_auto_scale_vm_group
+ request :disable_cisco_nexus_vsm
+ request :disable_static_nat
request :disable_user
+ request :disassociate_ip_address
+ request :enable_account
+ request :enable_auto_scale_vm_group
+ request :enable_cisco_nexus_vsm
+ request :enable_static_nat
+ request :enable_storage_maintenance
request :enable_user
+ request :expunge_virtual_machine
+ request :extract_iso
+ request :extract_template
+ request :extract_volume
+ request :find_hosts_for_migration
+ request :find_storage_pools_for_migration
+ request :generate_alert
request :generate_usage_records
+ request :get_api_limit
+ request :get_cloud_identifier
+ request :get_user
+ request :get_virtual_machine_user_data
request :get_vm_password
+ request :import_ldap_users
+ request :ldap_create_account
request :list_accounts
+ request :list_affinity_group_types
+ request :list_affinity_groups
request :list_alerts
+ request :list_apis
request :list_async_jobs
- request :list_capacity
+ request :list_auto_scale_policies
+ request :list_auto_scale_vm_groups
+ request :list_auto_scale_vm_profiles
+ request :list_baremetal_dhcp
+ request :list_baremetal_pxe_servers
+ request :list_big_switch_vns_devices
request :list_capabilities
+ request :list_capacity
+ request :list_cisco_asa1000v_resources
+ request :list_cisco_nexus_vsms
+ request :list_cisco_vnmc_resources
request :list_clusters
+ request :list_conditions
request :list_configurations
+ request :list_counters
+ request :list_dedicated_clusters
+ request :list_dedicated_guest_vlan_ranges
+ request :list_dedicated_hosts
+ request :list_dedicated_pods
+ request :list_dedicated_zones
+ request :list_deployment_planners
request :list_disk_offerings
- request :list_capacity
- request :list_domains
request :list_domain_children
+ request :list_domains
+ request :list_egress_firewall_rules
+ request :list_event_types
request :list_events
request :list_external_firewalls
request :list_external_load_balancers
+ request :list_f5_load_balancer_networks
+ request :list_f5_load_balancers
request :list_firewall_rules
+ request :list_global_load_balancer_rules
+ request :list_guest_os_mapping
request :list_hosts
+ request :list_hypervisor_capabilities
request :list_hypervisors
+ request :list_image_stores
request :list_instance_groups
+ request :list_internal_load_balancer_elements
+ request :list_internal_load_balancer_vms
+ request :list_ip_forwarding_rules
+ request :list_iso_permissions
request :list_isos
- request :list_load_balancer_rules
+ request :list_lb_health_check_policies
+ request :list_lb_stickiness_policies
+ request :list_ldap_configurations
+ request :list_ldap_users
request :list_load_balancer_rule_instances
+ request :list_load_balancer_rules
+ request :list_load_balancers
+ request :list_netscaler_load_balancer_networks
+ request :list_netscaler_load_balancers
+ request :list_network_acl_lists
+ request :list_network_acls
+ request :list_network_device
+ request :list_network_isolation_methods
request :list_network_offerings
+ request :list_network_service_providers
request :list_networks
+ request :list_nicira_nvp_device_networks
+ request :list_nicira_nvp_devices
+ request :list_nics
+ request :list_open_daylight_controllers
request :list_os_categories
request :list_os_types
+ request :list_ovs_elements
+ request :list_palo_alto_firewall_networks
+ request :list_palo_alto_firewalls
+ request :list_physical_networks
request :list_pods
request :list_port_forwarding_rules
+ request :list_portable_ip_ranges
+ request :list_private_gateways
+ request :list_project_accounts
+ request :list_project_invitations
+ request :list_projects
request :list_public_ip_addresses
+ request :list_regions
+ request :list_remote_access_vpns
+ request :list_resource_details
request :list_resource_limits
+ request :list_routers
+ request :list_s3s
+ request :list_secondary_staging_stores
request :list_security_groups
request :list_service_offerings
- request :list_snapshots
request :list_snapshot_policies
+ request :list_snapshots
+ request :list_srx_firewall_networks
+ request :list_srx_firewalls
request :list_ssh_key_pairs
+ request :list_ssl_certs
+ request :list_static_routes
+ request :list_storage_network_ip_range
request :list_storage_pools
+ request :list_storage_providers
+ request :list_supported_network_services
+ request :list_swifts
+ request :list_system_vms
+ request :list_tags
+ request :list_template_permissions
request :list_templates
+ request :list_traffic_monitors
+ request :list_traffic_type_implementors
+ request :list_traffic_types
+ request :list_ucs_blades
+ request :list_ucs_managers
+ request :list_ucs_profiles
request :list_usage_records
+ request :list_usage_types
request :list_users
request :list_virtual_machines
+ request :list_virtual_router_elements
+ request :list_vlan_ip_ranges
+ request :list_vm_snapshot
+ request :list_vmware_dcs
request :list_volumes
+ request :list_vpc_offerings
+ request :list_vpcs
+ request :list_vpn_connections
+ request :list_vpn_customer_gateways
+ request :list_vpn_gateways
+ request :list_vpn_users
request :list_zones
+ request :lock_account
+ request :lock_user
+ request :mark_default_zone_for_account
+ request :migrate_system_vm
request :migrate_virtual_machine
+ request :migrate_virtual_machine_with_volume
+ request :migrate_volume
+ request :prepare_host_for_maintenance
+ request :prepare_template
request :query_async_job_result
+ request :reboot_router
+ request :reboot_system_vm
request :reboot_virtual_machine
+ request :reconnect_host
request :recover_virtual_machine
+ request :register_iso
request :register_ssh_key_pair
- request :register_user_keys
request :register_template
+ request :register_user_keys
+ request :release_dedicated_cluster
+ request :release_dedicated_guest_vlan_range
+ request :release_dedicated_host
+ request :release_dedicated_pod
+ request :release_dedicated_zone
+ request :release_host_reservation
+ request :release_public_ip_range
+ request :remove_cert_from_load_balancer
+ request :remove_from_global_load_balancer_rule
request :remove_from_load_balancer_rule
+ request :remove_guest_os
+ request :remove_guest_os_mapping
+ request :remove_ip_from_nic
+ request :remove_nic_from_virtual_machine
+ request :remove_region
+ request :remove_resource_detail
+ request :remove_vmware_dc
+ request :remove_vpn_user
+ request :replace_network_acl_list
+ request :reset_api_limit
request :reset_password_for_virtual_machine
- request :revoke_security_group_ingress
+ request :reset_ssh_key_for_virtual_machine
+ request :reset_vpn_connection
+ request :resize_volume
+ request :restart_network
+ request :restart_vpc
+ request :restore_virtual_machine
+ request :revert_snapshot
+ request :revert_to_vm_snapshot
request :revoke_security_group_egress
+ request :revoke_security_group_ingress
+ request :scale_system_vm
+ request :scale_virtual_machine
+ request :start_internal_load_balancer_vm
+ request :start_router
+ request :start_system_vm
request :start_virtual_machine
+ request :stop_internal_load_balancer_vm
+ request :stop_router
+ request :stop_system_vm
request :stop_virtual_machine
+ request :suspend_project
request :update_account
+ request :update_auto_scale_policy
+ request :update_auto_scale_vm_group
+ request :update_auto_scale_vm_profile
+ request :update_cloud_to_use_object_store
+ request :update_cluster
+ request :update_configuration
+ request :update_default_nic_for_virtual_machine
+ request :update_disk_offering
request :update_domain
- request :update_user
+ request :update_egress_firewall_rule
+ request :update_firewall_rule
+ request :update_global_load_balancer_rule
+ request :update_guest_os
+ request :update_guest_os_mapping
+ request :update_host
+ request :update_host_password
+ request :update_hypervisor_capabilities
+ request :update_instance_group
+ request :update_ip_address
+ request :update_iso
+ request :update_iso_permissions
+ request :update_lb_health_check_policy
+ request :update_lb_stickiness_policy
+ request :update_load_balancer
+ request :update_load_balancer_rule
+ request :update_network
+ request :update_network_acl_item
+ request :update_network_acl_list
+ request :update_network_offering
+ request :update_network_service_provider
+ request :update_physical_network
+ request :update_pod
+ request :update_port_forwarding_rule
+ request :update_project
+ request :update_project_invitation
+ request :update_region
+ request :update_remote_access_vpn
request :update_resource_count
+ request :update_resource_limit
+ request :update_service_offering
+ request :update_storage_network_ip_range
+ request :update_storage_pool
+ request :update_template
+ request :update_template_permissions
+ request :update_traffic_type
+ request :update_user
request :update_virtual_machine
+ request :update_vm_affinity_group
+ request :update_volume
+ request :update_vpc
+ request :update_vpcoffering
+ request :update_vpn_connection
+ request :update_vpn_customer_gateway
+ request :update_vpn_gateway
+ request :update_zone
+ request :upgrade_router_template
+ request :upload_custom_certificate
+ request :upload_ssl_cert
+ request :upload_volume
+
class Real
diff --git a/lib/fog/cloudstack/core.rb b/lib/fog/cloudstack/core.rb
index c916dc0..0ce7e82 100644
--- a/lib/fog/cloudstack/core.rb
+++ b/lib/fog/cloudstack/core.rb
@@ -4,7 +4,6 @@ require 'uri'
module Fog
module Cloudstack
-
extend Fog::Provider
service(:compute, 'Compute')
@@ -18,7 +17,7 @@ module Fog
end
def self.signed_params(key,params)
- query = params.map{|k,v| [k.to_s, v]}.sort.collect{|c| "#{c[0]}=#{escape(c[1].to_s)}"}.join('&').downcase
+ query = params.map{|k,v| [k.to_s, v]}.sort.map{|c| "#{c[0]}=#{escape(c[1].to_s)}"}.join('&').downcase
signed_string = Base64.encode64(OpenSSL::HMAC.digest(@@digest,key,query)).strip
@@ -38,4 +37,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/cloudstack/models/compute/disk_offering.rb b/lib/fog/cloudstack/models/compute/disk_offering.rb
index 4364ab3..0a91c9a 100644
--- a/lib/fog/cloudstack/models/compute/disk_offering.rb
+++ b/lib/fog/cloudstack/models/compute/disk_offering.rb
@@ -13,7 +13,6 @@ module Fog
attribute :storage_type, :aliases => 'storagetype'
attribute :tags
-
def save
requires :display_text, :name
@@ -39,7 +38,6 @@ module Fog
success_status == 'true'
end
-
end # DiskOffering
end # Cloudstack
end # Compute
diff --git a/lib/fog/cloudstack/models/compute/disk_offerings.rb b/lib/fog/cloudstack/models/compute/disk_offerings.rb
index 85f8fb7..29932ec 100644
--- a/lib/fog/cloudstack/models/compute/disk_offerings.rb
+++ b/lib/fog/cloudstack/models/compute/disk_offerings.rb
@@ -4,9 +4,7 @@ require 'fog/cloudstack/models/compute/disk_offering'
module Fog
module Compute
class Cloudstack
-
class DiskOfferings < Fog::Collection
-
model Fog::Compute::Cloudstack::DiskOffering
def all(options = {})
@@ -21,7 +19,6 @@ module Fog
new(disk_offering_data)
end
end
-
end
end
end
diff --git a/lib/fog/cloudstack/models/compute/flavors.rb b/lib/fog/cloudstack/models/compute/flavors.rb
index 001c587..5ccabc1 100644
--- a/lib/fog/cloudstack/models/compute/flavors.rb
+++ b/lib/fog/cloudstack/models/compute/flavors.rb
@@ -4,9 +4,7 @@ require 'fog/cloudstack/models/compute/flavor'
module Fog
module Compute
class Cloudstack
-
class Flavors < Fog::Collection
-
model Fog::Compute::Cloudstack::Flavor
def all
@@ -22,7 +20,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/cloudstack/models/compute/images.rb b/lib/fog/cloudstack/models/compute/images.rb
index bc13f86..ee5c1c3 100644
--- a/lib/fog/cloudstack/models/compute/images.rb
+++ b/lib/fog/cloudstack/models/compute/images.rb
@@ -4,9 +4,7 @@ require 'fog/cloudstack/models/compute/image'
module Fog
module Compute
class Cloudstack
-
class Images < Fog::Collection
-
model Fog::Compute::Cloudstack::Image
def all(filters={})
diff --git a/lib/fog/cloudstack/models/compute/job.rb b/lib/fog/cloudstack/models/compute/job.rb
index 55ea8d9..4467a3b 100644
--- a/lib/fog/cloudstack/models/compute/job.rb
+++ b/lib/fog/cloudstack/models/compute/job.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Cloudstack
class Job < Fog::Model
-
identity :id, :aliases => 'jobid'
attribute :user_id, :aliases => 'userid'
attribute :account_id, :aliases => 'accountid'
diff --git a/lib/fog/cloudstack/models/compute/jobs.rb b/lib/fog/cloudstack/models/compute/jobs.rb
index 1fac02f..a82844b 100644
--- a/lib/fog/cloudstack/models/compute/jobs.rb
+++ b/lib/fog/cloudstack/models/compute/jobs.rb
@@ -4,9 +4,7 @@ require 'fog/cloudstack/models/compute/job'
module Fog
module Compute
class Cloudstack
-
class Jobs < Fog::Collection
-
model Fog::Compute::Cloudstack::Job
def all
@@ -22,7 +20,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/cloudstack/models/compute/security_group_rule.rb b/lib/fog/cloudstack/models/compute/security_group_rule.rb
index b9d4989..37ae8f7 100644
--- a/lib/fog/cloudstack/models/compute/security_group_rule.rb
+++ b/lib/fog/cloudstack/models/compute/security_group_rule.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Cloudstack
class SecurityGroupRule < Fog::Model
-
identity :id, :aliases => 'ruleid'
attribute :security_group_id, :type => :string
@@ -55,7 +54,6 @@ module Fog
options.merge!("startport" => self.start_port) unless self.start_port.nil?
options.merge("endport" => self.end_port) unless self.end_port.nil?
end
-
end # SecurityGroupRule
end # Cloudstack
end # Compute
diff --git a/lib/fog/cloudstack/models/compute/security_group_rules.rb b/lib/fog/cloudstack/models/compute/security_group_rules.rb
index 2271c93..e8b2379 100644
--- a/lib/fog/cloudstack/models/compute/security_group_rules.rb
+++ b/lib/fog/cloudstack/models/compute/security_group_rules.rb
@@ -4,9 +4,7 @@ require 'fog/cloudstack/models/compute/security_group_rule'
module Fog
module Compute
class Cloudstack
-
class SecurityGroupRules < Fog::Collection
-
model Fog::Compute::Cloudstack::SecurityGroupRule
attribute :security_group_id, :type => :string
diff --git a/lib/fog/cloudstack/models/compute/security_groups.rb b/lib/fog/cloudstack/models/compute/security_groups.rb
index 8a22b7c..43ad1ec 100644
--- a/lib/fog/cloudstack/models/compute/security_groups.rb
+++ b/lib/fog/cloudstack/models/compute/security_groups.rb
@@ -5,7 +5,6 @@ module Fog
module Compute
class Cloudstack
class SecurityGroups < Fog::Collection
-
model Fog::Compute::Cloudstack::SecurityGroup
def all(options={})
@@ -21,7 +20,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/cloudstack/models/compute/server.rb b/lib/fog/cloudstack/models/compute/server.rb
index 709382b..459a61f 100644
--- a/lib/fog/cloudstack/models/compute/server.rb
+++ b/lib/fog/cloudstack/models/compute/server.rb
@@ -49,9 +49,25 @@ module Fog
nics.map{|nic| Address.new(nic)}
end
- def destroy
+ def ip_addresses
+ addresses.map{|a| a.ip_address}
+ end
+
+ def public_ip_addresses
+ if public_ip_address.nil? then [public_ip_address] else [] end
+ end
+
+ def private_ip_addresses
+ ip_addresses - public_ip_addresses
+ end
+
+ def private_ip_address
+ private_ip_addresses.first
+ end
+
+ def destroy(options={})
requires :id
- data = service.destroy_virtual_machine("id" => id)
+ data = service.destroy_virtual_machine(options.merge({'id'=> self.id}))
service.jobs.new(data["destroyvirtualmachineresponse"])
end
@@ -115,9 +131,13 @@ module Fog
service.jobs.new(data["startvirtualmachineresponse"])
end
- def stop(force=false)
+ def stop(options={})
requires :id
- data = service.stop_virtual_machine("id" => self.id, "force" => force)
+ unless options.is_a?(Hash)
+ Fog::Logger.deprecation("Passing force as a boolean option has been deprecated. Please pass a hash with 'force' => (true|false)")
+ options = {'force' => options}
+ end
+ data = service.stop_virtual_machine(options.merge({'id' => self.id}))
service.jobs.new(data["stopvirtualmachineresponse"])
end
end # Server
diff --git a/lib/fog/cloudstack/models/compute/servers.rb b/lib/fog/cloudstack/models/compute/servers.rb
index 8d49d1f..26e0d39 100644
--- a/lib/fog/cloudstack/models/compute/servers.rb
+++ b/lib/fog/cloudstack/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/cloudstack/models/compute/server'
module Fog
module Compute
class Cloudstack
-
class Servers < Fog::Collection
-
model Fog::Compute::Cloudstack::Server
def all(attributes={})
@@ -33,7 +31,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/cloudstack/models/compute/snapshots.rb b/lib/fog/cloudstack/models/compute/snapshots.rb
index 7ad0b28..44c29d6 100644
--- a/lib/fog/cloudstack/models/compute/snapshots.rb
+++ b/lib/fog/cloudstack/models/compute/snapshots.rb
@@ -4,9 +4,7 @@ require 'fog/cloudstack/models/compute/snapshot'
module Fog
module Compute
class Cloudstack
-
class Snapshots < Fog::Collection
-
model Fog::Compute::Cloudstack::Snapshot
def all
@@ -19,7 +17,6 @@ module Fog
new(snapshot) if snapshot
end
end
-
end
end
end
diff --git a/lib/fog/cloudstack/models/compute/volume.rb b/lib/fog/cloudstack/models/compute/volume.rb
index a20c9e3..8fc7d7c 100644
--- a/lib/fog/cloudstack/models/compute/volume.rb
+++ b/lib/fog/cloudstack/models/compute/volume.rb
@@ -50,7 +50,7 @@ module Fog
def flavor
service.disk_offerings.get(self.disk_offering_id)
end
- alias disk_offering flavor
+ alias_method :disk_offering, :flavor
def server
if server_id
@@ -77,7 +77,6 @@ module Fog
self
end
-
def attach(instance_or_id, mountpoint=nil)
requires :id
instance_id = instance_or_id.is_a?(Server) ? instance_or_id.id : instance_or_id
diff --git a/lib/fog/cloudstack/models/compute/volumes.rb b/lib/fog/cloudstack/models/compute/volumes.rb
index f4dd65d..5dcfa18 100644
--- a/lib/fog/cloudstack/models/compute/volumes.rb
+++ b/lib/fog/cloudstack/models/compute/volumes.rb
@@ -4,9 +4,7 @@ require 'fog/cloudstack/models/compute/volume'
module Fog
module Compute
class Cloudstack
-
class Volumes < Fog::Collection
-
model Fog::Compute::Cloudstack::Volume
def all
@@ -22,7 +20,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/cloudstack/models/compute/zone.rb b/lib/fog/cloudstack/models/compute/zone.rb
index 2d0cf08..e16e460 100644
--- a/lib/fog/cloudstack/models/compute/zone.rb
+++ b/lib/fog/cloudstack/models/compute/zone.rb
@@ -35,4 +35,3 @@ module Fog
end # Cloudstack
end # Compute
end # Fog
-
diff --git a/lib/fog/cloudstack/models/compute/zones.rb b/lib/fog/cloudstack/models/compute/zones.rb
index 108aafe..5a547cd 100644
--- a/lib/fog/cloudstack/models/compute/zones.rb
+++ b/lib/fog/cloudstack/models/compute/zones.rb
@@ -4,9 +4,7 @@ require 'fog/cloudstack/models/compute/zone'
module Fog
module Compute
class Cloudstack
-
class Zones < Fog::Collection
-
model Fog::Compute::Cloudstack::Zone
def all(filters={})
@@ -26,8 +24,6 @@ module Fog
nil
end
end
-
end
end
end
-
diff --git a/lib/fog/cloudstack/requests/compute/acquire_ip_address.rb b/lib/fog/cloudstack/requests/compute/acquire_ip_address.rb
index 88a05a3..9a78644 100644
--- a/lib/fog/cloudstack/requests/compute/acquire_ip_address.rb
+++ b/lib/fog/cloudstack/requests/compute/acquire_ip_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Cloudstack
class Real
-
# Creates an account.
#
# {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/associateIpAddress.html]
@@ -13,9 +12,7 @@ module Fog
request(options)
end
-
end
end
end
end
-
diff --git a/lib/fog/cloudstack/requests/compute/activate_project.rb b/lib/fog/cloudstack/requests/compute/activate_project.rb
new file mode 100644
index 0000000..4666523
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/activate_project.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Activates a project
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/activateProject.html]
+ def activate_project(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'activateProject')
+ else
+ options.merge!('command' => 'activateProject',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_account_to_project.rb b/lib/fog/cloudstack/requests/compute/add_account_to_project.rb
new file mode 100644
index 0000000..2e98605
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_account_to_project.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds acoount to a project
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addAccountToProject.html]
+ def add_account_to_project(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addAccountToProject')
+ else
+ options.merge!('command' => 'addAccountToProject',
+ 'projectid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_baremetal_dhcp.rb b/lib/fog/cloudstack/requests/compute/add_baremetal_dhcp.rb
new file mode 100644
index 0000000..e60744d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_baremetal_dhcp.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # adds a baremetal dhcp server
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addBaremetalDhcp.html]
+ def add_baremetal_dhcp(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addBaremetalDhcp')
+ else
+ options.merge!('command' => 'addBaremetalDhcp',
+ 'dhcpservertype' => args[0],
+ 'username' => args[1],
+ 'url' => args[2],
+ 'physicalnetworkid' => args[3],
+ 'password' => args[4])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_baremetal_host.rb b/lib/fog/cloudstack/requests/compute/add_baremetal_host.rb
new file mode 100644
index 0000000..c995253
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_baremetal_host.rb
@@ -0,0 +1,30 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # add a baremetal host
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addBaremetalHost.html]
+ def add_baremetal_host(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addBaremetalHost')
+ else
+ options.merge!('command' => 'addBaremetalHost',
+ 'podid' => args[0],
+ 'url' => args[1],
+ 'hypervisor' => args[2],
+ 'username' => args[3],
+ 'zoneid' => args[4],
+ 'password' => args[5])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_baremetal_pxe_kick_start_server.rb b/lib/fog/cloudstack/requests/compute/add_baremetal_pxe_kick_start_server.rb
new file mode 100644
index 0000000..183430a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_baremetal_pxe_kick_start_server.rb
@@ -0,0 +1,30 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # add a baremetal pxe server
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addBaremetalPxeKickStartServer.html]
+ def add_baremetal_pxe_kick_start_server(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addBaremetalPxeKickStartServer')
+ else
+ options.merge!('command' => 'addBaremetalPxeKickStartServer',
+ 'url' => args[0],
+ 'username' => args[1],
+ 'tftpdir' => args[2],
+ 'pxeservertype' => args[3],
+ 'password' => args[4],
+ 'physicalnetworkid' => args[5])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_baremetal_pxe_ping_server.rb b/lib/fog/cloudstack/requests/compute/add_baremetal_pxe_ping_server.rb
new file mode 100644
index 0000000..7c9ac09
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_baremetal_pxe_ping_server.rb
@@ -0,0 +1,32 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # add a baremetal ping pxe server
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addBaremetalPxePingServer.html]
+ def add_baremetal_pxe_ping_server(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addBaremetalPxePingServer')
+ else
+ options.merge!('command' => 'addBaremetalPxePingServer',
+ 'physicalnetworkid' => args[0],
+ 'pxeservertype' => args[1],
+ 'pingstorageserverip' => args[2],
+ 'url' => args[3],
+ 'tftpdir' => args[4],
+ 'password' => args[5],
+ 'pingdir' => args[6],
+ 'username' => args[7])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_big_switch_vns_device.rb b/lib/fog/cloudstack/requests/compute/add_big_switch_vns_device.rb
new file mode 100644
index 0000000..601b460
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_big_switch_vns_device.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a BigSwitch VNS device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addBigSwitchVnsDevice.html]
+ def add_big_switch_vns_device(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addBigSwitchVnsDevice')
+ else
+ options.merge!('command' => 'addBigSwitchVnsDevice',
+ 'hostname' => args[0],
+ 'physicalnetworkid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_cisco_asa1000v_resource.rb b/lib/fog/cloudstack/requests/compute/add_cisco_asa1000v_resource.rb
new file mode 100644
index 0000000..b9f5301
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_cisco_asa1000v_resource.rb
@@ -0,0 +1,28 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a Cisco Asa 1000v appliance
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addCiscoAsa1000vResource.html]
+ def add_cisco_asa1000v_resource(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addCiscoAsa1000vResource')
+ else
+ options.merge!('command' => 'addCiscoAsa1000vResource',
+ 'hostname' => args[0],
+ 'physicalnetworkid' => args[1],
+ 'insideportprofile' => args[2],
+ 'clusterid' => args[3])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_cisco_vnmc_resource.rb b/lib/fog/cloudstack/requests/compute/add_cisco_vnmc_resource.rb
new file mode 100644
index 0000000..7d2774c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_cisco_vnmc_resource.rb
@@ -0,0 +1,28 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a Cisco Vnmc Controller
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addCiscoVnmcResource.html]
+ def add_cisco_vnmc_resource(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addCiscoVnmcResource')
+ else
+ options.merge!('command' => 'addCiscoVnmcResource',
+ 'username' => args[0],
+ 'hostname' => args[1],
+ 'password' => args[2],
+ 'physicalnetworkid' => args[3])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_cluster.rb b/lib/fog/cloudstack/requests/compute/add_cluster.rb
new file mode 100644
index 0000000..dc306a4
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_cluster.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a new cluster
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addCluster.html]
+ def add_cluster(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addCluster')
+ else
+ options.merge!('command' => 'addCluster',
+ 'clustertype' => args[0],
+ 'hypervisor' => args[1],
+ 'clustername' => args[2],
+ 'podid' => args[3],
+ 'zoneid' => args[4])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_external_firewall.rb b/lib/fog/cloudstack/requests/compute/add_external_firewall.rb
new file mode 100644
index 0000000..dac97f3
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_external_firewall.rb
@@ -0,0 +1,28 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds an external firewall appliance
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addExternalFirewall.html]
+ def add_external_firewall(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addExternalFirewall')
+ else
+ options.merge!('command' => 'addExternalFirewall',
+ 'url' => args[0],
+ 'username' => args[1],
+ 'password' => args[2],
+ 'zoneid' => args[3])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_external_load_balancer.rb b/lib/fog/cloudstack/requests/compute/add_external_load_balancer.rb
new file mode 100644
index 0000000..b6ad9d7
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_external_load_balancer.rb
@@ -0,0 +1,28 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds F5 external load balancer appliance.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addExternalLoadBalancer.html]
+ def add_external_load_balancer(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addExternalLoadBalancer')
+ else
+ options.merge!('command' => 'addExternalLoadBalancer',
+ 'zoneid' => args[0],
+ 'url' => args[1],
+ 'password' => args[2],
+ 'username' => args[3])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_f5_load_balancer.rb b/lib/fog/cloudstack/requests/compute/add_f5_load_balancer.rb
new file mode 100644
index 0000000..184518a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_f5_load_balancer.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a F5 BigIP load balancer device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addF5LoadBalancer.html]
+ def add_f5_load_balancer(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addF5LoadBalancer')
+ else
+ options.merge!('command' => 'addF5LoadBalancer',
+ 'password' => args[0],
+ 'physicalnetworkid' => args[1],
+ 'networkdevicetype' => args[2],
+ 'username' => args[3],
+ 'url' => args[4])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_guest_os.rb b/lib/fog/cloudstack/requests/compute/add_guest_os.rb
new file mode 100644
index 0000000..729954d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_guest_os.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Add a new guest OS type
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addGuestOs.html]
+ def add_guest_os(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addGuestOs')
+ else
+ options.merge!('command' => 'addGuestOs',
+ 'osdisplayname' => args[0],
+ 'oscategoryid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_guest_os_mapping.rb b/lib/fog/cloudstack/requests/compute/add_guest_os_mapping.rb
new file mode 100644
index 0000000..63e50174
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_guest_os_mapping.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a guest OS name to hypervisor OS name mapping
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addGuestOsMapping.html]
+ def add_guest_os_mapping(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addGuestOsMapping')
+ else
+ options.merge!('command' => 'addGuestOsMapping',
+ 'hypervisor' => args[0],
+ 'osnameforhypervisor' => args[1],
+ 'hypervisorversion' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_host.rb b/lib/fog/cloudstack/requests/compute/add_host.rb
new file mode 100644
index 0000000..b044359
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_host.rb
@@ -0,0 +1,30 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a new host.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addHost.html]
+ def add_host(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addHost')
+ else
+ options.merge!('command' => 'addHost',
+ 'url' => args[0],
+ 'zoneid' => args[1],
+ 'username' => args[2],
+ 'password' => args[3],
+ 'hypervisor' => args[4],
+ 'podid' => args[5])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_image_store.rb b/lib/fog/cloudstack/requests/compute/add_image_store.rb
new file mode 100644
index 0000000..8acc8a3
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_image_store.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds backup image store.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addImageStore.html]
+ def add_image_store(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addImageStore')
+ else
+ options.merge!('command' => 'addImageStore',
+ 'provider' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_ip_to_nic.rb b/lib/fog/cloudstack/requests/compute/add_ip_to_nic.rb
new file mode 100644
index 0000000..edab2a0
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_ip_to_nic.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Assigns secondary IP to NIC
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addIpToNic.html]
+ def add_ip_to_nic(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addIpToNic')
+ else
+ options.merge!('command' => 'addIpToNic',
+ 'nicid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_ldap_configuration.rb b/lib/fog/cloudstack/requests/compute/add_ldap_configuration.rb
new file mode 100644
index 0000000..0b99674
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_ldap_configuration.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Add a new Ldap Configuration
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addLdapConfiguration.html]
+ def add_ldap_configuration(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addLdapConfiguration')
+ else
+ options.merge!('command' => 'addLdapConfiguration',
+ 'port' => args[0],
+ 'hostname' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_netscaler_load_balancer.rb b/lib/fog/cloudstack/requests/compute/add_netscaler_load_balancer.rb
new file mode 100644
index 0000000..e4b27c9
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_netscaler_load_balancer.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a netscaler load balancer device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addNetscalerLoadBalancer.html]
+ def add_netscaler_load_balancer(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addNetscalerLoadBalancer')
+ else
+ options.merge!('command' => 'addNetscalerLoadBalancer',
+ 'username' => args[0],
+ 'networkdevicetype' => args[1],
+ 'password' => args[2],
+ 'physicalnetworkid' => args[3],
+ 'url' => args[4])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_network_device.rb b/lib/fog/cloudstack/requests/compute/add_network_device.rb
new file mode 100644
index 0000000..02cf1bf
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_network_device.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a network device of one of the following types: ExternalDhcp, ExternalFirewall, ExternalLoadBalancer, PxeServer
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addNetworkDevice.html]
+ def add_network_device(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addNetworkDevice')
+ else
+ options.merge!('command' => 'addNetworkDevice')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_network_service_provider.rb b/lib/fog/cloudstack/requests/compute/add_network_service_provider.rb
new file mode 100644
index 0000000..250b887
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_network_service_provider.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a network serviceProvider to a physical network
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addNetworkServiceProvider.html]
+ def add_network_service_provider(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addNetworkServiceProvider')
+ else
+ options.merge!('command' => 'addNetworkServiceProvider',
+ 'name' => args[0],
+ 'physicalnetworkid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_nic_to_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/add_nic_to_virtual_machine.rb
new file mode 100644
index 0000000..a02fcd7
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_nic_to_virtual_machine.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds VM to specified network by creating a NIC
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addNicToVirtualMachine.html]
+ def add_nic_to_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addNicToVirtualMachine')
+ else
+ options.merge!('command' => 'addNicToVirtualMachine',
+ 'virtualmachineid' => args[0],
+ 'networkid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_nicira_nvp_device.rb b/lib/fog/cloudstack/requests/compute/add_nicira_nvp_device.rb
new file mode 100644
index 0000000..58e783d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_nicira_nvp_device.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a Nicira NVP device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addNiciraNvpDevice.html]
+ def add_nicira_nvp_device(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addNiciraNvpDevice')
+ else
+ options.merge!('command' => 'addNiciraNvpDevice',
+ 'physicalnetworkid' => args[0],
+ 'transportzoneuuid' => args[1],
+ 'username' => args[2],
+ 'password' => args[3],
+ 'hostname' => args[4])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_open_daylight_controller.rb b/lib/fog/cloudstack/requests/compute/add_open_daylight_controller.rb
new file mode 100644
index 0000000..3bfaae0
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_open_daylight_controller.rb
@@ -0,0 +1,28 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds an OpenDyalight controler
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addOpenDaylightController.html]
+ def add_open_daylight_controller(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addOpenDaylightController')
+ else
+ options.merge!('command' => 'addOpenDaylightController',
+ 'physicalnetworkid' => args[0],
+ 'url' => args[1],
+ 'password' => args[2],
+ 'username' => args[3])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_palo_alto_firewall.rb b/lib/fog/cloudstack/requests/compute/add_palo_alto_firewall.rb
new file mode 100644
index 0000000..c714344
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_palo_alto_firewall.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a Palo Alto firewall device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addPaloAltoFirewall.html]
+ def add_palo_alto_firewall(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addPaloAltoFirewall')
+ else
+ options.merge!('command' => 'addPaloAltoFirewall',
+ 'username' => args[0],
+ 'networkdevicetype' => args[1],
+ 'password' => args[2],
+ 'physicalnetworkid' => args[3],
+ 'url' => args[4])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_region.rb b/lib/fog/cloudstack/requests/compute/add_region.rb
new file mode 100644
index 0000000..f42231a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_region.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a Region
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addRegion.html]
+ def add_region(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addRegion')
+ else
+ options.merge!('command' => 'addRegion',
+ 'id' => args[0],
+ 'name' => args[1],
+ 'endpoint' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_resource_detail.rb b/lib/fog/cloudstack/requests/compute/add_resource_detail.rb
new file mode 100644
index 0000000..c025e7b
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_resource_detail.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds detail for the Resource.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addResourceDetail.html]
+ def add_resource_detail(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addResourceDetail')
+ else
+ options.merge!('command' => 'addResourceDetail',
+ 'resourcetype' => args[0],
+ 'details' => args[1],
+ 'resourceid' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_s3.rb b/lib/fog/cloudstack/requests/compute/add_s3.rb
new file mode 100644
index 0000000..bc2ddb4
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_s3.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds S3
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addS3.html]
+ def add_s3(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addS3')
+ else
+ options.merge!('command' => 'addS3',
+ 'accesskey' => args[0],
+ 'bucket' => args[1],
+ 'secretkey' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_secondary_storage.rb b/lib/fog/cloudstack/requests/compute/add_secondary_storage.rb
new file mode 100644
index 0000000..c7f5c45
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_secondary_storage.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds secondary storage.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addSecondaryStorage.html]
+ def add_secondary_storage(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addSecondaryStorage')
+ else
+ options.merge!('command' => 'addSecondaryStorage',
+ 'url' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_srx_firewall.rb b/lib/fog/cloudstack/requests/compute/add_srx_firewall.rb
new file mode 100644
index 0000000..bec9531
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_srx_firewall.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a SRX firewall device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addSrxFirewall.html]
+ def add_srx_firewall(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addSrxFirewall')
+ else
+ options.merge!('command' => 'addSrxFirewall',
+ 'username' => args[0],
+ 'networkdevicetype' => args[1],
+ 'physicalnetworkid' => args[2],
+ 'password' => args[3],
+ 'url' => args[4])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_stratosphere_ssp.rb b/lib/fog/cloudstack/requests/compute/add_stratosphere_ssp.rb
new file mode 100644
index 0000000..8dd4d1b
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_stratosphere_ssp.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds stratosphere ssp server
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addStratosphereSsp.html]
+ def add_stratosphere_ssp(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addStratosphereSsp')
+ else
+ options.merge!('command' => 'addStratosphereSsp',
+ 'url' => args[0],
+ 'zoneid' => args[1],
+ 'name' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_swift.rb b/lib/fog/cloudstack/requests/compute/add_swift.rb
new file mode 100644
index 0000000..cfcad4d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_swift.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds Swift.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addSwift.html]
+ def add_swift(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addSwift')
+ else
+ options.merge!('command' => 'addSwift',
+ 'url' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_traffic_monitor.rb b/lib/fog/cloudstack/requests/compute/add_traffic_monitor.rb
new file mode 100644
index 0000000..7a978c2
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_traffic_monitor.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds Traffic Monitor Host for Direct Network Usage
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addTrafficMonitor.html]
+ def add_traffic_monitor(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addTrafficMonitor')
+ else
+ options.merge!('command' => 'addTrafficMonitor',
+ 'zoneid' => args[0],
+ 'url' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_traffic_type.rb b/lib/fog/cloudstack/requests/compute/add_traffic_type.rb
new file mode 100644
index 0000000..6b30e06
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_traffic_type.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds traffic type to a physical network
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addTrafficType.html]
+ def add_traffic_type(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addTrafficType')
+ else
+ options.merge!('command' => 'addTrafficType',
+ 'traffictype' => args[0],
+ 'physicalnetworkid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_ucs_manager.rb b/lib/fog/cloudstack/requests/compute/add_ucs_manager.rb
new file mode 100644
index 0000000..79b1577
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_ucs_manager.rb
@@ -0,0 +1,28 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a Ucs manager
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addUcsManager.html]
+ def add_ucs_manager(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addUcsManager')
+ else
+ options.merge!('command' => 'addUcsManager',
+ 'url' => args[0],
+ 'password' => args[1],
+ 'username' => args[2],
+ 'zoneid' => args[3])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_vmware_dc.rb b/lib/fog/cloudstack/requests/compute/add_vmware_dc.rb
new file mode 100644
index 0000000..34e41f5
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_vmware_dc.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds a VMware datacenter to specified zone
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addVmwareDc.html]
+ def add_vmware_dc(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addVmwareDc')
+ else
+ options.merge!('command' => 'addVmwareDc',
+ 'zoneid' => args[0],
+ 'vcenter' => args[1],
+ 'name' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/add_vpn_user.rb b/lib/fog/cloudstack/requests/compute/add_vpn_user.rb
new file mode 100644
index 0000000..ff94098
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/add_vpn_user.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds vpn users
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/addVpnUser.html]
+ def add_vpn_user(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'addVpnUser')
+ else
+ options.merge!('command' => 'addVpnUser',
+ 'password' => args[0],
+ 'username' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/archive_alerts.rb b/lib/fog/cloudstack/requests/compute/archive_alerts.rb
new file mode 100644
index 0000000..d6e5b1c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/archive_alerts.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Archive one or more alerts.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/archiveAlerts.html]
+ def archive_alerts(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'archiveAlerts')
+ else
+ options.merge!('command' => 'archiveAlerts')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/archive_events.rb b/lib/fog/cloudstack/requests/compute/archive_events.rb
new file mode 100644
index 0000000..65cde99
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/archive_events.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Archive one or more events.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/archiveEvents.html]
+ def archive_events(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'archiveEvents')
+ else
+ options.merge!('command' => 'archiveEvents')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/assign_cert_to_load_balancer.rb b/lib/fog/cloudstack/requests/compute/assign_cert_to_load_balancer.rb
new file mode 100644
index 0000000..ff030b8
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/assign_cert_to_load_balancer.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Assigns a certificate to a Load Balancer Rule
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/assignCertToLoadBalancer.html]
+ def assign_cert_to_load_balancer(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'assignCertToLoadBalancer')
+ else
+ options.merge!('command' => 'assignCertToLoadBalancer',
+ 'lbruleid' => args[0],
+ 'certid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/assign_to_global_load_balancer_rule.rb b/lib/fog/cloudstack/requests/compute/assign_to_global_load_balancer_rule.rb
new file mode 100644
index 0000000..1e104c8
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/assign_to_global_load_balancer_rule.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Assign load balancer rule or list of load balancer rules to a global load balancer rules.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/assignToGlobalLoadBalancerRule.html]
+ def assign_to_global_load_balancer_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'assignToGlobalLoadBalancerRule')
+ else
+ options.merge!('command' => 'assignToGlobalLoadBalancerRule',
+ 'id' => args[0],
+ 'loadbalancerrulelist' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/assign_to_load_balancer_rule.rb b/lib/fog/cloudstack/requests/compute/assign_to_load_balancer_rule.rb
index 335981a..9b243ef 100644
--- a/lib/fog/cloudstack/requests/compute/assign_to_load_balancer_rule.rb
+++ b/lib/fog/cloudstack/requests/compute/assign_to_load_balancer_rule.rb
@@ -1,24 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Assigns virtual machine or a list of virtual machines to a load balancer rule.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.12/global_admin/assignToLoadBalancerRule.html]
- def assign_to_load_balancer_rule(id,virtualmachineids=[])
- virtualmachineids = [*virtualmachineids]
-
- options = {
- 'command' => 'assignToLoadBalancerRule',
- 'id' => id,
- 'virtualmachineids' => virtualmachineids.join(',')
- }
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/assignToLoadBalancerRule.html]
+ def assign_to_load_balancer_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'assignToLoadBalancerRule')
+ else
+ options.merge!('command' => 'assignToLoadBalancerRule',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
diff --git a/lib/fog/cloudstack/requests/compute/assign_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/assign_virtual_machine.rb
index 33ba61f..646b2a1 100644
--- a/lib/fog/cloudstack/requests/compute/assign_virtual_machine.rb
+++ b/lib/fog/cloudstack/requests/compute/assign_virtual_machine.rb
@@ -1,18 +1,27 @@
module Fog
module Compute
class Cloudstack
- class Real
- def assign_virtual_machine(options={})
- options.merge!('command' => 'assignVirtualMachine')
+ class Real
+ # Change ownership of a VM from one account to another. This API is available for Basic zones with security groups and Advanced zones with guest networks. A root administrator can reassign a VM from any account to any other account in any domain. A domain administrator can reassign a VM to any account in the same domain.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/assignVirtualMachine.html]
+ def assign_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'assignVirtualMachine')
+ else
+ options.merge!('command' => 'assignVirtualMachine',
+ 'account' => args[0],
+ 'virtualmachineid' => args[1],
+ 'domainid' => args[2])
+ end
request(options)
end
end
- class Mock
- # Fog::Compute::Cloudstack::Error: Failed to move vm VM is Running, unable to move the vm VM[User|e845934a-e44f-43da-aabf-05c90c651756]
- #def assign_virtual_machine(options={})
- #end
- end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/associate_ip_address.rb b/lib/fog/cloudstack/requests/compute/associate_ip_address.rb
new file mode 100644
index 0000000..22a9f72
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/associate_ip_address.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Acquires and associates a public IP to an account.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/associateIpAddress.html]
+ def associate_ip_address(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'associateIpAddress')
+ else
+ options.merge!('command' => 'associateIpAddress')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/associate_lun.rb b/lib/fog/cloudstack/requests/compute/associate_lun.rb
new file mode 100644
index 0000000..02e527a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/associate_lun.rb
@@ -0,0 +1,22 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Associate a LUN with a guest IQN
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/associateLun.html]
+ def associate_lun(iqn, name, options={})
+ options.merge!(
+ 'command' => 'associateLun',
+ 'iqn' => iqn,
+ 'name' => name
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/associate_ucs_profile_to_blade.rb b/lib/fog/cloudstack/requests/compute/associate_ucs_profile_to_blade.rb
new file mode 100644
index 0000000..ddc2320
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/associate_ucs_profile_to_blade.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # associate a profile to a blade
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/associateUcsProfileToBlade.html]
+ def associate_ucs_profile_to_blade(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'associateUcsProfileToBlade')
+ else
+ options.merge!('command' => 'associateUcsProfileToBlade',
+ 'profiledn' => args[0],
+ 'ucsmanagerid' => args[1],
+ 'bladeid' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/attach_iso.rb b/lib/fog/cloudstack/requests/compute/attach_iso.rb
new file mode 100644
index 0000000..6079954
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/attach_iso.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Attaches an ISO to a virtual machine.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/attachIso.html]
+ def attach_iso(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'attachIso')
+ else
+ options.merge!('command' => 'attachIso',
+ 'virtualmachineid' => args[0],
+ 'id' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/attach_volume.rb b/lib/fog/cloudstack/requests/compute/attach_volume.rb
index 9c12ea7..5e83f41 100644
--- a/lib/fog/cloudstack/requests/compute/attach_volume.rb
+++ b/lib/fog/cloudstack/requests/compute/attach_volume.rb
@@ -1,21 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Attaches a disk volume to a virtual machine.
#
- # {CloudStack API Reference}[http://http://download.cloud.com/releases/2.2.0/api_2.2.12/global_admin/attachVolume.html]
- def attach_volume(options={})
- options.merge!(
- 'command' => 'attachVolume'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/attachVolume.html]
+ def attach_volume(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'attachVolume')
+ else
+ options.merge!('command' => 'attachVolume',
+ 'virtualmachineid' => args[0],
+ 'id' => args[1])
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
def attach_volume(options={})
@@ -64,7 +68,9 @@ module Fog
}
}
end
- end # Mock
- end # Cloudstack
- end # Compute
-end # Fog
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/authorize_security_group_egress.rb b/lib/fog/cloudstack/requests/compute/authorize_security_group_egress.rb
index 22c1341..b76c988 100644
--- a/lib/fog/cloudstack/requests/compute/authorize_security_group_egress.rb
+++ b/lib/fog/cloudstack/requests/compute/authorize_security_group_egress.rb
@@ -1,15 +1,23 @@
module Fog
module Compute
class Cloudstack
- class Real
- def authorize_security_group_egress(options={})
- options.merge!(
- 'command' => 'authorizeSecurityGroupEgress'
- )
+ class Real
+ # Authorizes a particular egress rule for this security group
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/authorizeSecurityGroupEgress.html]
+ def authorize_security_group_egress(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'authorizeSecurityGroupEgress')
+ else
+ options.merge!('command' => 'authorizeSecurityGroupEgress')
+ end
request(options)
end
- end # Real
+ end
+
class Mock
def authorize_security_group_egress(options={})
security_group_id = options['securitygroupid']
@@ -62,7 +70,9 @@ module Fog
{ "authorizesecuritygroupegressresponse" => { "jobid" => job_id } }
end
- end # Mock
+ end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/authorize_security_group_ingress.rb b/lib/fog/cloudstack/requests/compute/authorize_security_group_ingress.rb
index 3b86c11..52e4a82 100644
--- a/lib/fog/cloudstack/requests/compute/authorize_security_group_ingress.rb
+++ b/lib/fog/cloudstack/requests/compute/authorize_security_group_ingress.rb
@@ -1,18 +1,23 @@
module Fog
module Compute
class Cloudstack
- class Real
-
- def authorize_security_group_ingress(options={})
- options.merge!(
- 'command' => 'authorizeSecurityGroupIngress'
- )
+ class Real
+ # Authorizes a particular ingress rule for this security group
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/authorizeSecurityGroupIngress.html]
+ def authorize_security_group_ingress(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'authorizeSecurityGroupIngress')
+ else
+ options.merge!('command' => 'authorizeSecurityGroupIngress')
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
def authorize_security_group_ingress(options={})
security_group_id = options['securitygroupid']
@@ -65,9 +70,9 @@ module Fog
{ "authorizesecuritygroupingressresponse" => { "jobid" => job_id } }
end
- end # Mock
+ end
+
end
end
end
-
diff --git a/lib/fog/cloudstack/requests/compute/cancel_host_maintenance.rb b/lib/fog/cloudstack/requests/compute/cancel_host_maintenance.rb
new file mode 100644
index 0000000..dd16db1
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/cancel_host_maintenance.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Cancels host maintenance.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/cancelHostMaintenance.html]
+ def cancel_host_maintenance(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'cancelHostMaintenance')
+ else
+ options.merge!('command' => 'cancelHostMaintenance',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/cancel_storage_maintenance.rb b/lib/fog/cloudstack/requests/compute/cancel_storage_maintenance.rb
new file mode 100644
index 0000000..61d163e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/cancel_storage_maintenance.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Cancels maintenance for primary storage
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/cancelStorageMaintenance.html]
+ def cancel_storage_maintenance(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'cancelStorageMaintenance')
+ else
+ options.merge!('command' => 'cancelStorageMaintenance',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/change_service_for_router.rb b/lib/fog/cloudstack/requests/compute/change_service_for_router.rb
new file mode 100644
index 0000000..e3c187a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/change_service_for_router.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Upgrades domain router to a new service offering
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/changeServiceForRouter.html]
+ def change_service_for_router(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'changeServiceForRouter')
+ else
+ options.merge!('command' => 'changeServiceForRouter',
+ 'serviceofferingid' => args[0],
+ 'id' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/change_service_for_system_vm.rb b/lib/fog/cloudstack/requests/compute/change_service_for_system_vm.rb
new file mode 100644
index 0000000..5fa5f10
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/change_service_for_system_vm.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Changes the service offering for a system vm (console proxy or secondary storage). The system vm must be in a "Stopped" state for this command to take effect.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/changeServiceForSystemVm.html]
+ def change_service_for_system_vm(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'changeServiceForSystemVm')
+ else
+ options.merge!('command' => 'changeServiceForSystemVm',
+ 'id' => args[0],
+ 'serviceofferingid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/change_service_for_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/change_service_for_virtual_machine.rb
index 787c0d5..65b7abb 100644
--- a/lib/fog/cloudstack/requests/compute/change_service_for_virtual_machine.rb
+++ b/lib/fog/cloudstack/requests/compute/change_service_for_virtual_machine.rb
@@ -1,20 +1,26 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Changes the service offering for a virtual machine. The virtual machine must be in a "Stopped" state for this command to take effect.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.12/global_admin/changeServiceForVirtualMachine.html]
- def change_service_for_virtual_machine(options={})
- options.merge!(
- 'command' => 'changeServiceForVirtualMachine'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/changeServiceForVirtualMachine.html]
+ def change_service_for_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'changeServiceForVirtualMachine')
+ else
+ options.merge!('command' => 'changeServiceForVirtualMachine',
+ 'serviceofferingid' => args[0],
+ 'id' => args[1])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/clean_vmreservations.rb b/lib/fog/cloudstack/requests/compute/clean_vmreservations.rb
new file mode 100644
index 0000000..06d3a26
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/clean_vmreservations.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Cleanups VM reservations in the database.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/cleanVMReservations.html]
+ def clean_vmreservations(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'cleanVMReservations')
+ else
+ options.merge!('command' => 'cleanVMReservations')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/configure_f5_load_balancer.rb b/lib/fog/cloudstack/requests/compute/configure_f5_load_balancer.rb
new file mode 100644
index 0000000..6705310
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/configure_f5_load_balancer.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # configures a F5 load balancer device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/configureF5LoadBalancer.html]
+ def configure_f5_load_balancer(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'configureF5LoadBalancer')
+ else
+ options.merge!('command' => 'configureF5LoadBalancer',
+ 'lbdeviceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/configure_internal_load_balancer_element.rb b/lib/fog/cloudstack/requests/compute/configure_internal_load_balancer_element.rb
new file mode 100644
index 0000000..a74eb43
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/configure_internal_load_balancer_element.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Configures an Internal Load Balancer element.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/configureInternalLoadBalancerElement.html]
+ def configure_internal_load_balancer_element(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'configureInternalLoadBalancerElement')
+ else
+ options.merge!('command' => 'configureInternalLoadBalancerElement',
+ 'id' => args[0],
+ 'enabled' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/configure_netscaler_load_balancer.rb b/lib/fog/cloudstack/requests/compute/configure_netscaler_load_balancer.rb
new file mode 100644
index 0000000..5f0706e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/configure_netscaler_load_balancer.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # configures a netscaler load balancer device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/configureNetscalerLoadBalancer.html]
+ def configure_netscaler_load_balancer(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'configureNetscalerLoadBalancer')
+ else
+ options.merge!('command' => 'configureNetscalerLoadBalancer',
+ 'lbdeviceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/configure_ovs_element.rb b/lib/fog/cloudstack/requests/compute/configure_ovs_element.rb
new file mode 100644
index 0000000..3a6cff3
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/configure_ovs_element.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Configures an ovs element.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/configureOvsElement.html]
+ def configure_ovs_element(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'configureOvsElement')
+ else
+ options.merge!('command' => 'configureOvsElement',
+ 'id' => args[0],
+ 'enabled' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/configure_palo_alto_firewall.rb b/lib/fog/cloudstack/requests/compute/configure_palo_alto_firewall.rb
new file mode 100644
index 0000000..940250d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/configure_palo_alto_firewall.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Configures a Palo Alto firewall device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/configurePaloAltoFirewall.html]
+ def configure_palo_alto_firewall(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'configurePaloAltoFirewall')
+ else
+ options.merge!('command' => 'configurePaloAltoFirewall',
+ 'fwdeviceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/configure_srx_firewall.rb b/lib/fog/cloudstack/requests/compute/configure_srx_firewall.rb
new file mode 100644
index 0000000..190ebee
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/configure_srx_firewall.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Configures a SRX firewall device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/configureSrxFirewall.html]
+ def configure_srx_firewall(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'configureSrxFirewall')
+ else
+ options.merge!('command' => 'configureSrxFirewall',
+ 'fwdeviceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/configure_virtual_router_element.rb b/lib/fog/cloudstack/requests/compute/configure_virtual_router_element.rb
new file mode 100644
index 0000000..610858a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/configure_virtual_router_element.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Configures a virtual router element.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/configureVirtualRouterElement.html]
+ def configure_virtual_router_element(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'configureVirtualRouterElement')
+ else
+ options.merge!('command' => 'configureVirtualRouterElement',
+ 'id' => args[0],
+ 'enabled' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/copy_iso.rb b/lib/fog/cloudstack/requests/compute/copy_iso.rb
new file mode 100644
index 0000000..1c0aa8b
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/copy_iso.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Copies an iso from one zone to another.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/copyIso.html]
+ def copy_iso(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'copyIso')
+ else
+ options.merge!('command' => 'copyIso',
+ 'destzoneid' => args[0],
+ 'id' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/copy_template.rb b/lib/fog/cloudstack/requests/compute/copy_template.rb
new file mode 100644
index 0000000..46bb237
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/copy_template.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Copies a template from one zone to another.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/copyTemplate.html]
+ def copy_template(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'copyTemplate')
+ else
+ options.merge!('command' => 'copyTemplate',
+ 'id' => args[0],
+ 'destzoneid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_account.rb b/lib/fog/cloudstack/requests/compute/create_account.rb
index 6023408..85c723f 100644
--- a/lib/fog/cloudstack/requests/compute/create_account.rb
+++ b/lib/fog/cloudstack/requests/compute/create_account.rb
@@ -1,20 +1,30 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Creates an account.
+ class Real
+ # Creates an account
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/createAccount.html]
- def create_account(options={})
- options.merge!(
- 'command' => 'createAccount'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createAccount.html]
+ def create_account(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createAccount')
+ else
+ options.merge!('command' => 'createAccount',
+ 'accounttype' => args[0],
+ 'lastname' => args[1],
+ 'email' => args[2],
+ 'firstname' => args[3],
+ 'username' => args[4],
+ 'password' => args[5])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_affinity_group.rb b/lib/fog/cloudstack/requests/compute/create_affinity_group.rb
new file mode 100644
index 0000000..87c3f39
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_affinity_group.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates an affinity/anti-affinity group
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createAffinityGroup.html]
+ def create_affinity_group(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createAffinityGroup')
+ else
+ options.merge!('command' => 'createAffinityGroup',
+ 'type' => args[0],
+ 'name' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_auto_scale_policy.rb b/lib/fog/cloudstack/requests/compute/create_auto_scale_policy.rb
new file mode 100644
index 0000000..6af3750
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_auto_scale_policy.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates an autoscale policy for a provision or deprovision action, the action is taken when the all the conditions evaluates to true for the specified duration. The policy is in effect once it is attached to a autscale vm group.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createAutoScalePolicy.html]
+ def create_auto_scale_policy(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createAutoScalePolicy')
+ else
+ options.merge!('command' => 'createAutoScalePolicy',
+ 'duration' => args[0],
+ 'conditionids' => args[1],
+ 'action' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_auto_scale_vm_group.rb b/lib/fog/cloudstack/requests/compute/create_auto_scale_vm_group.rb
new file mode 100644
index 0000000..2834495
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_auto_scale_vm_group.rb
@@ -0,0 +1,30 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates and automatically starts a virtual machine based on a service offering, disk offering, and template.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createAutoScaleVmGroup.html]
+ def create_auto_scale_vm_group(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createAutoScaleVmGroup')
+ else
+ options.merge!('command' => 'createAutoScaleVmGroup',
+ 'minmembers' => args[0],
+ 'scaleuppolicyids' => args[1],
+ 'scaledownpolicyids' => args[2],
+ 'maxmembers' => args[3],
+ 'vmprofileid' => args[4],
+ 'lbruleid' => args[5])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_auto_scale_vm_profile.rb b/lib/fog/cloudstack/requests/compute/create_auto_scale_vm_profile.rb
new file mode 100644
index 0000000..d7ad294
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_auto_scale_vm_profile.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a profile that contains information about the virtual machine which will be provisioned automatically by autoscale feature.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createAutoScaleVmProfile.html]
+ def create_auto_scale_vm_profile(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createAutoScaleVmProfile')
+ else
+ options.merge!('command' => 'createAutoScaleVmProfile',
+ 'templateid' => args[0],
+ 'zoneid' => args[1],
+ 'serviceofferingid' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_condition.rb b/lib/fog/cloudstack/requests/compute/create_condition.rb
new file mode 100644
index 0000000..7c41f85
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_condition.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a condition
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createCondition.html]
+ def create_condition(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createCondition')
+ else
+ options.merge!('command' => 'createCondition',
+ 'threshold' => args[0],
+ 'relationaloperator' => args[1],
+ 'counterid' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_counter.rb b/lib/fog/cloudstack/requests/compute/create_counter.rb
new file mode 100644
index 0000000..030f621
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_counter.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Adds metric counter
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createCounter.html]
+ def create_counter(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createCounter')
+ else
+ options.merge!('command' => 'createCounter',
+ 'name' => args[0],
+ 'value' => args[1],
+ 'source' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_disk_offering.rb b/lib/fog/cloudstack/requests/compute/create_disk_offering.rb
index 6996249..1d86b44 100644
--- a/lib/fog/cloudstack/requests/compute/create_disk_offering.rb
+++ b/lib/fog/cloudstack/requests/compute/create_disk_offering.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Creates a disk offering.
#
- # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.0.0/root_admin/createDiskOffering.html]
- def create_disk_offering(options={})
- options.merge!(
- 'command' => 'createDiskOffering'
- )
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createDiskOffering.html]
+ def create_disk_offering(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createDiskOffering')
+ else
+ options.merge!('command' => 'createDiskOffering',
+ 'displaytext' => args[0],
+ 'name' => args[1])
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
def create_disk_offering(options={})
@@ -44,8 +49,8 @@ module Fog
{'creatediskofferingresponse' => disk_offering}
end
- end
+ end
+ end
+ end
+end
- end # Cloudstack
- end # Compute
-end # Fog
diff --git a/lib/fog/cloudstack/requests/compute/create_domain.rb b/lib/fog/cloudstack/requests/compute/create_domain.rb
index 858e445..5388b8e 100644
--- a/lib/fog/cloudstack/requests/compute/create_domain.rb
+++ b/lib/fog/cloudstack/requests/compute/create_domain.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Creates a domain.
+ class Real
+ # Creates a domain
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/createDomain.html]
- def create_domain(options={})
- options.merge!(
- 'command' => 'createDomain'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createDomain.html]
+ def create_domain(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createDomain')
+ else
+ options.merge!('command' => 'createDomain',
+ 'name' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb b/lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
new file mode 100644
index 0000000..c9f9c03
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a egress firewall rule for a given network
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createEgressFirewallRule.html]
+ def create_egress_firewall_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createEgressFirewallRule')
+ else
+ options.merge!('command' => 'createEgressFirewallRule',
+ 'networkid' => args[0],
+ 'protocol' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_firewall_rule.rb b/lib/fog/cloudstack/requests/compute/create_firewall_rule.rb
new file mode 100644
index 0000000..2e890cf
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_firewall_rule.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a firewall rule for a given ip address
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createFirewallRule.html]
+ def create_firewall_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createFirewallRule')
+ else
+ options.merge!('command' => 'createFirewallRule',
+ 'ipaddressid' => args[0],
+ 'protocol' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_global_load_balancer_rule.rb b/lib/fog/cloudstack/requests/compute/create_global_load_balancer_rule.rb
new file mode 100644
index 0000000..e210ef2
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_global_load_balancer_rule.rb
@@ -0,0 +1,28 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a global load balancer rule
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createGlobalLoadBalancerRule.html]
+ def create_global_load_balancer_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createGlobalLoadBalancerRule')
+ else
+ options.merge!('command' => 'createGlobalLoadBalancerRule',
+ 'gslbdomainname' => args[0],
+ 'gslbservicetype' => args[1],
+ 'regionid' => args[2],
+ 'name' => args[3])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_instance_group.rb b/lib/fog/cloudstack/requests/compute/create_instance_group.rb
new file mode 100644
index 0000000..4194455
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_instance_group.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a vm group
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createInstanceGroup.html]
+ def create_instance_group(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createInstanceGroup')
+ else
+ options.merge!('command' => 'createInstanceGroup',
+ 'name' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_internal_load_balancer_element.rb b/lib/fog/cloudstack/requests/compute/create_internal_load_balancer_element.rb
new file mode 100644
index 0000000..caf77a5
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_internal_load_balancer_element.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Create an Internal Load Balancer element.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createInternalLoadBalancerElement.html]
+ def create_internal_load_balancer_element(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createInternalLoadBalancerElement')
+ else
+ options.merge!('command' => 'createInternalLoadBalancerElement',
+ 'nspid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_ip_forwarding_rule.rb b/lib/fog/cloudstack/requests/compute/create_ip_forwarding_rule.rb
new file mode 100644
index 0000000..f10f9e7
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_ip_forwarding_rule.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates an ip forwarding rule
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createIpForwardingRule.html]
+ def create_ip_forwarding_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createIpForwardingRule')
+ else
+ options.merge!('command' => 'createIpForwardingRule',
+ 'ipaddressid' => args[0],
+ 'protocol' => args[1],
+ 'startport' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_lb_health_check_policy.rb b/lib/fog/cloudstack/requests/compute/create_lb_health_check_policy.rb
new file mode 100644
index 0000000..cfe6522
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_lb_health_check_policy.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a Load Balancer healthcheck policy
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createLBHealthCheckPolicy.html]
+ def create_lb_health_check_policy(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createLBHealthCheckPolicy')
+ else
+ options.merge!('command' => 'createLBHealthCheckPolicy',
+ 'lbruleid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_lb_stickiness_policy.rb b/lib/fog/cloudstack/requests/compute/create_lb_stickiness_policy.rb
new file mode 100644
index 0000000..1996ca3
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_lb_stickiness_policy.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a Load Balancer stickiness policy
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createLBStickinessPolicy.html]
+ def create_lb_stickiness_policy(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createLBStickinessPolicy')
+ else
+ options.merge!('command' => 'createLBStickinessPolicy',
+ 'methodname' => args[0],
+ 'name' => args[1],
+ 'lbruleid' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_load_balancer.rb b/lib/fog/cloudstack/requests/compute/create_load_balancer.rb
new file mode 100644
index 0000000..5043738
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_load_balancer.rb
@@ -0,0 +1,31 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a Load Balancer
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createLoadBalancer.html]
+ def create_load_balancer(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createLoadBalancer')
+ else
+ options.merge!('command' => 'createLoadBalancer',
+ 'sourceipaddressnetworkid' => args[0],
+ 'algorithm' => args[1],
+ 'networkid' => args[2],
+ 'instanceport' => args[3],
+ 'scheme' => args[4],
+ 'name' => args[5],
+ 'sourceport' => args[6])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_load_balancer_rule.rb b/lib/fog/cloudstack/requests/compute/create_load_balancer_rule.rb
index 958153c..32042b7 100644
--- a/lib/fog/cloudstack/requests/compute/create_load_balancer_rule.rb
+++ b/lib/fog/cloudstack/requests/compute/create_load_balancer_rule.rb
@@ -1,20 +1,28 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Creates a load balancer rule
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.11/global_admin/createLoadBalancerRule.html]
- def create_load_balancer_rule(options={})
- options.merge!(
- 'command' => 'createLoadBalancerRule'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createLoadBalancerRule.html]
+ def create_load_balancer_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createLoadBalancerRule')
+ else
+ options.merge!('command' => 'createLoadBalancerRule',
+ 'name' => args[0],
+ 'privateport' => args[1],
+ 'algorithm' => args[2],
+ 'publicport' => args[3])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_lun_on_filer.rb b/lib/fog/cloudstack/requests/compute/create_lun_on_filer.rb
new file mode 100644
index 0000000..efb2fc5
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_lun_on_filer.rb
@@ -0,0 +1,22 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Create a LUN from a pool
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/createLunOnFiler.html]
+ def create_lun_on_filer(size, name, options={})
+ options.merge!(
+ 'command' => 'createLunOnFiler',
+ 'size' => size,
+ 'name' => name
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_network.rb b/lib/fog/cloudstack/requests/compute/create_network.rb
index 4974863..009880c 100644
--- a/lib/fog/cloudstack/requests/compute/create_network.rb
+++ b/lib/fog/cloudstack/requests/compute/create_network.rb
@@ -1,20 +1,28 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Creates an network.
+ class Real
+ # Creates a network
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/createNetwork.html]
- def create_network(options={})
- options.merge!(
- 'command' => 'createNetwork'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createNetwork.html]
+ def create_network(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createNetwork')
+ else
+ options.merge!('command' => 'createNetwork',
+ 'displaytext' => args[0],
+ 'zoneid' => args[1],
+ 'name' => args[2],
+ 'networkofferingid' => args[3])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_network_acl.rb b/lib/fog/cloudstack/requests/compute/create_network_acl.rb
new file mode 100644
index 0000000..a4e47f2
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_network_acl.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a ACL rule in the given network (the network has to belong to VPC)
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createNetworkACL.html]
+ def create_network_acl(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createNetworkACL')
+ else
+ options.merge!('command' => 'createNetworkACL',
+ 'protocol' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_network_acl_list.rb b/lib/fog/cloudstack/requests/compute/create_network_acl_list.rb
new file mode 100644
index 0000000..3471a3c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_network_acl_list.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a Network ACL for the given VPC
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createNetworkACLList.html]
+ def create_network_acl_list(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createNetworkACLList')
+ else
+ options.merge!('command' => 'createNetworkACLList',
+ 'name' => args[0],
+ 'vpcid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_network_offering.rb b/lib/fog/cloudstack/requests/compute/create_network_offering.rb
new file mode 100644
index 0000000..5992770
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_network_offering.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a network offering.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createNetworkOffering.html]
+ def create_network_offering(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createNetworkOffering')
+ else
+ options.merge!('command' => 'createNetworkOffering',
+ 'traffictype' => args[0],
+ 'guestiptype' => args[1],
+ 'name' => args[2],
+ 'supportedservices' => args[3],
+ 'displaytext' => args[4])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_physical_network.rb b/lib/fog/cloudstack/requests/compute/create_physical_network.rb
new file mode 100644
index 0000000..4ab1333
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_physical_network.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a physical network
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createPhysicalNetwork.html]
+ def create_physical_network(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createPhysicalNetwork')
+ else
+ options.merge!('command' => 'createPhysicalNetwork',
+ 'name' => args[0],
+ 'zoneid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_pod.rb b/lib/fog/cloudstack/requests/compute/create_pod.rb
new file mode 100644
index 0000000..ab0823c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_pod.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a new Pod.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createPod.html]
+ def create_pod(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createPod')
+ else
+ options.merge!('command' => 'createPod',
+ 'netmask' => args[0],
+ 'zoneid' => args[1],
+ 'name' => args[2],
+ 'gateway' => args[3],
+ 'startip' => args[4])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_pool.rb b/lib/fog/cloudstack/requests/compute/create_pool.rb
new file mode 100644
index 0000000..19ff70c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_pool.rb
@@ -0,0 +1,22 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Create a pool
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/createPool.html]
+ def create_pool(algorithm, name, options={})
+ options.merge!(
+ 'command' => 'createPool',
+ 'algorithm' => algorithm,
+ 'name' => name
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_port_forwarding_rule.rb b/lib/fog/cloudstack/requests/compute/create_port_forwarding_rule.rb
index fa595c9..ffc7836 100644
--- a/lib/fog/cloudstack/requests/compute/create_port_forwarding_rule.rb
+++ b/lib/fog/cloudstack/requests/compute/create_port_forwarding_rule.rb
@@ -1,20 +1,29 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Creates a domain.
+ class Real
+ # Creates a port forwarding rule
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/createPortForwardingRule.html]
- def create_port_forwarding_rule(options={})
- options.merge!(
- 'command' => 'createPortForwardingRule'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createPortForwardingRule.html]
+ def create_port_forwarding_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createPortForwardingRule')
+ else
+ options.merge!('command' => 'createPortForwardingRule',
+ 'virtualmachineid' => args[0],
+ 'protocol' => args[1],
+ 'privateport' => args[2],
+ 'ipaddressid' => args[3],
+ 'publicport' => args[4])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_portable_ip_range.rb b/lib/fog/cloudstack/requests/compute/create_portable_ip_range.rb
new file mode 100644
index 0000000..9b08128
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_portable_ip_range.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # adds a range of portable public IP's to a region
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createPortableIpRange.html]
+ def create_portable_ip_range(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createPortableIpRange')
+ else
+ options.merge!('command' => 'createPortableIpRange',
+ 'startip' => args[0],
+ 'netmask' => args[1],
+ 'regionid' => args[2],
+ 'gateway' => args[3],
+ 'endip' => args[4])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_private_gateway.rb b/lib/fog/cloudstack/requests/compute/create_private_gateway.rb
new file mode 100644
index 0000000..03003dd
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_private_gateway.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a private gateway
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createPrivateGateway.html]
+ def create_private_gateway(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createPrivateGateway')
+ else
+ options.merge!('command' => 'createPrivateGateway',
+ 'ipaddress' => args[0],
+ 'vlan' => args[1],
+ 'netmask' => args[2],
+ 'vpcid' => args[3],
+ 'gateway' => args[4])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_project.rb b/lib/fog/cloudstack/requests/compute/create_project.rb
new file mode 100644
index 0000000..30099d1
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_project.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a project
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createProject.html]
+ def create_project(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createProject')
+ else
+ options.merge!('command' => 'createProject',
+ 'displaytext' => args[0],
+ 'name' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_remote_access_vpn.rb b/lib/fog/cloudstack/requests/compute/create_remote_access_vpn.rb
new file mode 100644
index 0000000..470ff3b
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_remote_access_vpn.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a l2tp/ipsec remote access vpn
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createRemoteAccessVpn.html]
+ def create_remote_access_vpn(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createRemoteAccessVpn')
+ else
+ options.merge!('command' => 'createRemoteAccessVpn',
+ 'publicipid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_secondary_staging_store.rb b/lib/fog/cloudstack/requests/compute/create_secondary_staging_store.rb
new file mode 100644
index 0000000..009c30c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_secondary_staging_store.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # create secondary staging store.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createSecondaryStagingStore.html]
+ def create_secondary_staging_store(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createSecondaryStagingStore')
+ else
+ options.merge!('command' => 'createSecondaryStagingStore',
+ 'url' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_security_group.rb b/lib/fog/cloudstack/requests/compute/create_security_group.rb
index c2cbc32..d2811ca 100644
--- a/lib/fog/cloudstack/requests/compute/create_security_group.rb
+++ b/lib/fog/cloudstack/requests/compute/create_security_group.rb
@@ -1,16 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- def create_security_group(options={})
- options.merge!(
- 'command' => 'createSecurityGroup'
- )
+ class Real
+ # Creates a security group
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createSecurityGroup.html]
+ def create_security_group(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createSecurityGroup')
+ else
+ options.merge!('command' => 'createSecurityGroup',
+ 'name' => args[0])
+ end
request(options)
end
- end # Real
-
+ end
+
class Mock
def create_security_group(options={})
security_group_id = Fog::Cloudstack.uuid
@@ -22,7 +30,8 @@ module Fog
self.data[:security_groups][security_group_id]= security_group
{"createsecuritygroupresponse" => { "securitygroup" => security_group}}
end
- end
+ end
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_service_instance.rb b/lib/fog/cloudstack/requests/compute/create_service_instance.rb
new file mode 100644
index 0000000..3d326aa
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_service_instance.rb
@@ -0,0 +1,30 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a system virtual-machine that implements network services
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createServiceInstance.html]
+ def create_service_instance(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createServiceInstance')
+ else
+ options.merge!('command' => 'createServiceInstance',
+ 'name' => args[0],
+ 'rightnetworkid' => args[1],
+ 'serviceofferingid' => args[2],
+ 'leftnetworkid' => args[3],
+ 'templateid' => args[4],
+ 'zoneid' => args[5])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_service_offering.rb b/lib/fog/cloudstack/requests/compute/create_service_offering.rb
new file mode 100644
index 0000000..a6a5d7f
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_service_offering.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a service offering.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createServiceOffering.html]
+ def create_service_offering(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createServiceOffering')
+ else
+ options.merge!('command' => 'createServiceOffering',
+ 'name' => args[0],
+ 'displaytext' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_snapshot.rb b/lib/fog/cloudstack/requests/compute/create_snapshot.rb
index feed4f7..5673548 100644
--- a/lib/fog/cloudstack/requests/compute/create_snapshot.rb
+++ b/lib/fog/cloudstack/requests/compute/create_snapshot.rb
@@ -1,21 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Creates a snapshot for an account that already exists.
+ class Real
+ # Creates an instant snapshot of a volume.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/createSnapshot.html]
- def create_snapshot(options={})
- options.merge!(
- 'command' => 'createSnapshot'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createSnapshot.html]
+ def create_snapshot(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createSnapshot')
+ else
+ options.merge!('command' => 'createSnapshot',
+ 'volumeid' => args[0])
+ end
request(options)
end
-
end
-
+
class Mock
def create_snapshot(options={})
snapshot_id = Fog::Cloudstack.uuid
@@ -38,7 +41,8 @@ module Fog
self.data[:snapshots][snapshot_id]= snapshot
{'createsnapshotresponse' => snapshot}
end
- end
+ end
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_snapshot_policy.rb b/lib/fog/cloudstack/requests/compute/create_snapshot_policy.rb
index 904e0db..cafc7ac 100644
--- a/lib/fog/cloudstack/requests/compute/create_snapshot_policy.rb
+++ b/lib/fog/cloudstack/requests/compute/create_snapshot_policy.rb
@@ -1,20 +1,29 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Creates an account.
+ class Real
+ # Creates a snapshot policy for the account.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/createSnapshotPolicy.html]
- def create_snapshot_policy(options={})
- options.merge!(
- 'command' => 'createSnapshotPolicy'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createSnapshotPolicy.html]
+ def create_snapshot_policy(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createSnapshotPolicy')
+ else
+ options.merge!('command' => 'createSnapshotPolicy',
+ 'volumeid' => args[0],
+ 'maxsnaps' => args[1],
+ 'timezone' => args[2],
+ 'intervaltype' => args[3],
+ 'schedule' => args[4])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_ssh_key_pair.rb b/lib/fog/cloudstack/requests/compute/create_ssh_key_pair.rb
index a4e746a..ea674f9 100644
--- a/lib/fog/cloudstack/requests/compute/create_ssh_key_pair.rb
+++ b/lib/fog/cloudstack/requests/compute/create_ssh_key_pair.rb
@@ -1,21 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Creates a new SSH key pair..
+ class Real
+ # Create a new keypair and returns the private key
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/createSSHKeyPair.html]
- def create_ssh_key_pair(name,options={})
- options.merge!(
- 'command' => 'createSSHKeyPair',
- 'name' => name
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createSSHKeyPair.html]
+ def create_ssh_key_pair(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createSSHKeyPair')
+ else
+ options.merge!('command' => 'createSSHKeyPair',
+ 'name' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
diff --git a/lib/fog/cloudstack/requests/compute/create_static_route.rb b/lib/fog/cloudstack/requests/compute/create_static_route.rb
new file mode 100644
index 0000000..8dc4376
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_static_route.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a static route
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createStaticRoute.html]
+ def create_static_route(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createStaticRoute')
+ else
+ options.merge!('command' => 'createStaticRoute',
+ 'gatewayid' => args[0],
+ 'cidr' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_storage_network_ip_range.rb b/lib/fog/cloudstack/requests/compute/create_storage_network_ip_range.rb
new file mode 100644
index 0000000..6e3faad
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_storage_network_ip_range.rb
@@ -0,0 +1,28 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a Storage network IP range.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createStorageNetworkIpRange.html]
+ def create_storage_network_ip_range(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createStorageNetworkIpRange')
+ else
+ options.merge!('command' => 'createStorageNetworkIpRange',
+ 'podid' => args[0],
+ 'netmask' => args[1],
+ 'gateway' => args[2],
+ 'startip' => args[3])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_storage_pool.rb b/lib/fog/cloudstack/requests/compute/create_storage_pool.rb
new file mode 100644
index 0000000..34c99b4
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_storage_pool.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a storage pool.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createStoragePool.html]
+ def create_storage_pool(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createStoragePool')
+ else
+ options.merge!('command' => 'createStoragePool',
+ 'url' => args[0],
+ 'name' => args[1],
+ 'zoneid' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_tags.rb b/lib/fog/cloudstack/requests/compute/create_tags.rb
new file mode 100644
index 0000000..90c475a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_tags.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates resource tag(s)
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createTags.html]
+ def create_tags(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createTags')
+ else
+ options.merge!('command' => 'createTags',
+ 'tags' => args[0],
+ 'resourcetype' => args[1],
+ 'resourceids' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_template.rb b/lib/fog/cloudstack/requests/compute/create_template.rb
new file mode 100644
index 0000000..19d0b98
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_template.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a template of a virtual machine. The virtual machine must be in a STOPPED state. A template created from this command is automatically designated as a private template visible to the account that created it.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createTemplate.html]
+ def create_template(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createTemplate')
+ else
+ options.merge!('command' => 'createTemplate',
+ 'ostypeid' => args[0],
+ 'name' => args[1],
+ 'displaytext' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_user.rb b/lib/fog/cloudstack/requests/compute/create_user.rb
index 3949bc3..e19296f 100644
--- a/lib/fog/cloudstack/requests/compute/create_user.rb
+++ b/lib/fog/cloudstack/requests/compute/create_user.rb
@@ -1,20 +1,30 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Creates a user for an account that already exists.
+ class Real
+ # Creates a user for an account that already exists
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/createUser.html]
- def create_user(options={})
- options.merge!(
- 'command' => 'createUser'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createUser.html]
+ def create_user(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createUser')
+ else
+ options.merge!('command' => 'createUser',
+ 'email' => args[0],
+ 'username' => args[1],
+ 'lastname' => args[2],
+ 'password' => args[3],
+ 'firstname' => args[4],
+ 'account' => args[5])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_virtual_router_element.rb b/lib/fog/cloudstack/requests/compute/create_virtual_router_element.rb
new file mode 100644
index 0000000..d0ba5dd
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_virtual_router_element.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Create a virtual router element.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createVirtualRouterElement.html]
+ def create_virtual_router_element(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createVirtualRouterElement')
+ else
+ options.merge!('command' => 'createVirtualRouterElement',
+ 'nspid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_vlan_ip_range.rb b/lib/fog/cloudstack/requests/compute/create_vlan_ip_range.rb
new file mode 100644
index 0000000..d967d6d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_vlan_ip_range.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a VLAN IP range.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createVlanIpRange.html]
+ def create_vlan_ip_range(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createVlanIpRange')
+ else
+ options.merge!('command' => 'createVlanIpRange')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_vm_snapshot.rb b/lib/fog/cloudstack/requests/compute/create_vm_snapshot.rb
new file mode 100644
index 0000000..ea1a3eb
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_vm_snapshot.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates snapshot for a vm.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createVMSnapshot.html]
+ def create_vm_snapshot(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createVMSnapshot')
+ else
+ options.merge!('command' => 'createVMSnapshot',
+ 'virtualmachineid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_volume.rb b/lib/fog/cloudstack/requests/compute/create_volume.rb
index 7e57dd0..65de65a 100644
--- a/lib/fog/cloudstack/requests/compute/create_volume.rb
+++ b/lib/fog/cloudstack/requests/compute/create_volume.rb
@@ -1,21 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Creates a volume for an account that already exists.
+ class Real
+ # Creates a disk volume from a disk offering. This disk volume must still be attached to a virtual machine to make use of it.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/createVolume.html]
- def create_volume(options={})
- options.merge!(
- 'command' => 'createVolume'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createVolume.html]
+ def create_volume(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createVolume')
+ else
+ options.merge!('command' => 'createVolume',
+ 'name' => args[0])
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
def create_volume(options={})
volume_id = Fog::Cloudstack.uuid
@@ -57,7 +60,8 @@ module Fog
self.data[:volumes][volume_id]= volume
{'createvolumeresponse' => volume}
end
- end
+ end
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_volume_on_filer.rb b/lib/fog/cloudstack/requests/compute/create_volume_on_filer.rb
new file mode 100644
index 0000000..afdc457
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_volume_on_filer.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Create a volume
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/createVolumeOnFiler.html]
+ def create_volume_on_filer(password, ipaddress, size, volumename, username, poolname, aggregatename, options={})
+ options.merge!(
+ 'command' => 'createVolumeOnFiler',
+ 'password' => password,
+ 'ipaddress' => ipaddress,
+ 'size' => size,
+ 'volumename' => volumename,
+ 'username' => username,
+ 'poolname' => poolname,
+ 'aggregatename' => aggregatename
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_vpc.rb b/lib/fog/cloudstack/requests/compute/create_vpc.rb
new file mode 100644
index 0000000..0e7cc99
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_vpc.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a VPC
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createVPC.html]
+ def create_vpc(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createVPC')
+ else
+ options.merge!('command' => 'createVPC',
+ 'vpcofferingid' => args[0],
+ 'zoneid' => args[1],
+ 'name' => args[2],
+ 'cidr' => args[3],
+ 'displaytext' => args[4])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_vpcoffering.rb b/lib/fog/cloudstack/requests/compute/create_vpcoffering.rb
new file mode 100644
index 0000000..40c1da1
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_vpcoffering.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates VPC offering
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createVPCOffering.html]
+ def create_vpcoffering(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createVPCOffering')
+ else
+ options.merge!('command' => 'createVPCOffering',
+ 'supportedservices' => args[0],
+ 'name' => args[1],
+ 'displaytext' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_vpn_connection.rb b/lib/fog/cloudstack/requests/compute/create_vpn_connection.rb
new file mode 100644
index 0000000..08f8c71
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_vpn_connection.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Create site to site vpn connection
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createVpnConnection.html]
+ def create_vpn_connection(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createVpnConnection')
+ else
+ options.merge!('command' => 'createVpnConnection',
+ 's2svpngatewayid' => args[0],
+ 's2scustomergatewayid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_vpn_customer_gateway.rb b/lib/fog/cloudstack/requests/compute/create_vpn_customer_gateway.rb
new file mode 100644
index 0000000..e192f54
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_vpn_customer_gateway.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates site to site vpn customer gateway
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createVpnCustomerGateway.html]
+ def create_vpn_customer_gateway(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createVpnCustomerGateway')
+ else
+ options.merge!('command' => 'createVpnCustomerGateway',
+ 'esppolicy' => args[0],
+ 'cidrlist' => args[1],
+ 'ikepolicy' => args[2],
+ 'gateway' => args[3],
+ 'ipsecpsk' => args[4])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_vpn_gateway.rb b/lib/fog/cloudstack/requests/compute/create_vpn_gateway.rb
new file mode 100644
index 0000000..0526d6a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/create_vpn_gateway.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates site to site vpn local gateway
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createVpnGateway.html]
+ def create_vpn_gateway(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createVpnGateway')
+ else
+ options.merge!('command' => 'createVpnGateway',
+ 'vpcid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/create_zone.rb b/lib/fog/cloudstack/requests/compute/create_zone.rb
index 7a3f4a6..38a5751 100644
--- a/lib/fog/cloudstack/requests/compute/create_zone.rb
+++ b/lib/fog/cloudstack/requests/compute/create_zone.rb
@@ -1,20 +1,28 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists zones.
+ class Real
+ # Creates a Zone.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listZones.html]
- def create_zone(options={})
- options.merge!(
- 'command' => 'createZone'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createZone.html]
+ def create_zone(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'createZone')
+ else
+ options.merge!('command' => 'createZone',
+ 'dns1' => args[0],
+ 'internaldns1' => args[1],
+ 'networktype' => args[2],
+ 'name' => args[3])
+ end
request(options)
end
+ end
+
+ end
+ end
+end
- end # Real
- end # Cloudstack
- end # Compute
-end # Fog
diff --git a/lib/fog/cloudstack/requests/compute/dedicate_cluster.rb b/lib/fog/cloudstack/requests/compute/dedicate_cluster.rb
new file mode 100644
index 0000000..9406e27
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/dedicate_cluster.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Dedicate an existing cluster
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/dedicateCluster.html]
+ def dedicate_cluster(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'dedicateCluster')
+ else
+ options.merge!('command' => 'dedicateCluster',
+ 'clusterid' => args[0],
+ 'domainid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/dedicate_guest_vlan_range.rb b/lib/fog/cloudstack/requests/compute/dedicate_guest_vlan_range.rb
new file mode 100644
index 0000000..d905f8f
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/dedicate_guest_vlan_range.rb
@@ -0,0 +1,28 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Dedicates a guest vlan range to an account
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/dedicateGuestVlanRange.html]
+ def dedicate_guest_vlan_range(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'dedicateGuestVlanRange')
+ else
+ options.merge!('command' => 'dedicateGuestVlanRange',
+ 'account' => args[0],
+ 'domainid' => args[1],
+ 'vlanrange' => args[2],
+ 'physicalnetworkid' => args[3])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/dedicate_host.rb b/lib/fog/cloudstack/requests/compute/dedicate_host.rb
new file mode 100644
index 0000000..1543406
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/dedicate_host.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Dedicates a host.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/dedicateHost.html]
+ def dedicate_host(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'dedicateHost')
+ else
+ options.merge!('command' => 'dedicateHost',
+ 'hostid' => args[0],
+ 'domainid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/dedicate_pod.rb b/lib/fog/cloudstack/requests/compute/dedicate_pod.rb
new file mode 100644
index 0000000..93d3ead
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/dedicate_pod.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Dedicates a Pod.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/dedicatePod.html]
+ def dedicate_pod(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'dedicatePod')
+ else
+ options.merge!('command' => 'dedicatePod',
+ 'podid' => args[0],
+ 'domainid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/dedicate_public_ip_range.rb b/lib/fog/cloudstack/requests/compute/dedicate_public_ip_range.rb
new file mode 100644
index 0000000..362487b
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/dedicate_public_ip_range.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Dedicates a Public IP range to an account
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/dedicatePublicIpRange.html]
+ def dedicate_public_ip_range(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'dedicatePublicIpRange')
+ else
+ options.merge!('command' => 'dedicatePublicIpRange',
+ 'domainid' => args[0],
+ 'account' => args[1],
+ 'id' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/dedicate_zone.rb b/lib/fog/cloudstack/requests/compute/dedicate_zone.rb
new file mode 100644
index 0000000..c063dc8
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/dedicate_zone.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Dedicates a zones.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/dedicateZone.html]
+ def dedicate_zone(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'dedicateZone')
+ else
+ options.merge!('command' => 'dedicateZone',
+ 'domainid' => args[0],
+ 'zoneid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_account.rb b/lib/fog/cloudstack/requests/compute/delete_account.rb
index 8311895..98af886 100644
--- a/lib/fog/cloudstack/requests/compute/delete_account.rb
+++ b/lib/fog/cloudstack/requests/compute/delete_account.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Deletes a account, and all users associated with this account.
+ class Real
+ # Deletes a account, and all users associated with this account
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/deleteAccount.html]
- def delete_account(options={})
- options.merge!(
- 'command' => 'deleteAccount'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteAccount.html]
+ def delete_account(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteAccount')
+ else
+ options.merge!('command' => 'deleteAccount',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_account_from_project.rb b/lib/fog/cloudstack/requests/compute/delete_account_from_project.rb
new file mode 100644
index 0000000..338e282
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_account_from_project.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes account from the project
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteAccountFromProject.html]
+ def delete_account_from_project(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteAccountFromProject')
+ else
+ options.merge!('command' => 'deleteAccountFromProject',
+ 'projectid' => args[0],
+ 'account' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_affinity_group.rb b/lib/fog/cloudstack/requests/compute/delete_affinity_group.rb
new file mode 100644
index 0000000..5030d68
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_affinity_group.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes affinity group
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteAffinityGroup.html]
+ def delete_affinity_group(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteAffinityGroup')
+ else
+ options.merge!('command' => 'deleteAffinityGroup')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_alerts.rb b/lib/fog/cloudstack/requests/compute/delete_alerts.rb
new file mode 100644
index 0000000..8e0ece4
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_alerts.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Delete one or more alerts.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteAlerts.html]
+ def delete_alerts(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteAlerts')
+ else
+ options.merge!('command' => 'deleteAlerts')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_auto_scale_policy.rb b/lib/fog/cloudstack/requests/compute/delete_auto_scale_policy.rb
new file mode 100644
index 0000000..4376ca8
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_auto_scale_policy.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a autoscale policy.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteAutoScalePolicy.html]
+ def delete_auto_scale_policy(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteAutoScalePolicy')
+ else
+ options.merge!('command' => 'deleteAutoScalePolicy',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_auto_scale_vm_group.rb b/lib/fog/cloudstack/requests/compute/delete_auto_scale_vm_group.rb
new file mode 100644
index 0000000..035a8c5
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_auto_scale_vm_group.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a autoscale vm group.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteAutoScaleVmGroup.html]
+ def delete_auto_scale_vm_group(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteAutoScaleVmGroup')
+ else
+ options.merge!('command' => 'deleteAutoScaleVmGroup',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_auto_scale_vm_profile.rb b/lib/fog/cloudstack/requests/compute/delete_auto_scale_vm_profile.rb
new file mode 100644
index 0000000..76594c7
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_auto_scale_vm_profile.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a autoscale vm profile.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteAutoScaleVmProfile.html]
+ def delete_auto_scale_vm_profile(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteAutoScaleVmProfile')
+ else
+ options.merge!('command' => 'deleteAutoScaleVmProfile',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_big_switch_vns_device.rb b/lib/fog/cloudstack/requests/compute/delete_big_switch_vns_device.rb
new file mode 100644
index 0000000..70001e0
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_big_switch_vns_device.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # delete a bigswitch vns device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteBigSwitchVnsDevice.html]
+ def delete_big_switch_vns_device(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteBigSwitchVnsDevice')
+ else
+ options.merge!('command' => 'deleteBigSwitchVnsDevice',
+ 'vnsdeviceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_cisco_asa1000v_resource.rb b/lib/fog/cloudstack/requests/compute/delete_cisco_asa1000v_resource.rb
new file mode 100644
index 0000000..ccdce15
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_cisco_asa1000v_resource.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a Cisco ASA 1000v appliance
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteCiscoAsa1000vResource.html]
+ def delete_cisco_asa1000v_resource(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteCiscoAsa1000vResource')
+ else
+ options.merge!('command' => 'deleteCiscoAsa1000vResource',
+ 'resourceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_cisco_nexus_vsm.rb b/lib/fog/cloudstack/requests/compute/delete_cisco_nexus_vsm.rb
new file mode 100644
index 0000000..cee0c73
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_cisco_nexus_vsm.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # delete a Cisco Nexus VSM device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteCiscoNexusVSM.html]
+ def delete_cisco_nexus_vsm(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteCiscoNexusVSM')
+ else
+ options.merge!('command' => 'deleteCiscoNexusVSM',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_cisco_vnmc_resource.rb b/lib/fog/cloudstack/requests/compute/delete_cisco_vnmc_resource.rb
new file mode 100644
index 0000000..bd94894
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_cisco_vnmc_resource.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a Cisco Vnmc controller
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteCiscoVnmcResource.html]
+ def delete_cisco_vnmc_resource(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteCiscoVnmcResource')
+ else
+ options.merge!('command' => 'deleteCiscoVnmcResource',
+ 'resourceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_cluster.rb b/lib/fog/cloudstack/requests/compute/delete_cluster.rb
new file mode 100644
index 0000000..e068cf3
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_cluster.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a cluster.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteCluster.html]
+ def delete_cluster(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteCluster')
+ else
+ options.merge!('command' => 'deleteCluster',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_condition.rb b/lib/fog/cloudstack/requests/compute/delete_condition.rb
new file mode 100644
index 0000000..bb1ed0d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_condition.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Removes a condition
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteCondition.html]
+ def delete_condition(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteCondition')
+ else
+ options.merge!('command' => 'deleteCondition',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_counter.rb b/lib/fog/cloudstack/requests/compute/delete_counter.rb
new file mode 100644
index 0000000..3d12c4f
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_counter.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a counter
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteCounter.html]
+ def delete_counter(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteCounter')
+ else
+ options.merge!('command' => 'deleteCounter',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_disk_offering.rb b/lib/fog/cloudstack/requests/compute/delete_disk_offering.rb
index 1921825..f9a1489 100644
--- a/lib/fog/cloudstack/requests/compute/delete_disk_offering.rb
+++ b/lib/fog/cloudstack/requests/compute/delete_disk_offering.rb
@@ -1,31 +1,33 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Updates a disk offering.
#
- # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.0.0/root_admin/deleteDiskOffering.html]
- def delete_disk_offering(options={})
- options.merge!(
- 'command' => 'deleteDiskOffering'
- )
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteDiskOffering.html]
+ def delete_disk_offering(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteDiskOffering')
+ else
+ options.merge!('command' => 'deleteDiskOffering',
+ 'id' => args[0])
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
-
def delete_disk_offering(options={})
disk_offering_id = options['id']
data[:disk_offerings].delete(disk_offering_id) if data[:disk_offerings][disk_offering_id]
{ 'deletediskofferingresponse' => { 'success' => 'true' } }
end
+ end
+ end
+ end
+end
- end
-
- end # Cloudstack
- end # Compute
-end # Fog
diff --git a/lib/fog/cloudstack/requests/compute/delete_domain.rb b/lib/fog/cloudstack/requests/compute/delete_domain.rb
index 5a5a834..f480c7f 100644
--- a/lib/fog/cloudstack/requests/compute/delete_domain.rb
+++ b/lib/fog/cloudstack/requests/compute/delete_domain.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Deletes a specified domain.
+ class Real
+ # Deletes a specified domain
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/deleteDomain.html]
- def delete_domain(options={})
- options.merge!(
- 'command' => 'deleteDomain'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteDomain.html]
+ def delete_domain(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteDomain')
+ else
+ options.merge!('command' => 'deleteDomain',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_egress_firewall_rule.rb b/lib/fog/cloudstack/requests/compute/delete_egress_firewall_rule.rb
new file mode 100644
index 0000000..65ca758
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_egress_firewall_rule.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes an ggress firewall rule
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteEgressFirewallRule.html]
+ def delete_egress_firewall_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteEgressFirewallRule')
+ else
+ options.merge!('command' => 'deleteEgressFirewallRule',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_events.rb b/lib/fog/cloudstack/requests/compute/delete_events.rb
new file mode 100644
index 0000000..2063f1a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_events.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Delete one or more events.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteEvents.html]
+ def delete_events(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteEvents')
+ else
+ options.merge!('command' => 'deleteEvents')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_external_firewall.rb b/lib/fog/cloudstack/requests/compute/delete_external_firewall.rb
new file mode 100644
index 0000000..7bc83c9
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_external_firewall.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes an external firewall appliance.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteExternalFirewall.html]
+ def delete_external_firewall(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteExternalFirewall')
+ else
+ options.merge!('command' => 'deleteExternalFirewall',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_external_load_balancer.rb b/lib/fog/cloudstack/requests/compute/delete_external_load_balancer.rb
new file mode 100644
index 0000000..5ed05f6
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_external_load_balancer.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a F5 external load balancer appliance added in a zone.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteExternalLoadBalancer.html]
+ def delete_external_load_balancer(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteExternalLoadBalancer')
+ else
+ options.merge!('command' => 'deleteExternalLoadBalancer',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_f5_load_balancer.rb b/lib/fog/cloudstack/requests/compute/delete_f5_load_balancer.rb
new file mode 100644
index 0000000..e18d71b
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_f5_load_balancer.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # delete a F5 load balancer device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteF5LoadBalancer.html]
+ def delete_f5_load_balancer(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteF5LoadBalancer')
+ else
+ options.merge!('command' => 'deleteF5LoadBalancer',
+ 'lbdeviceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_firewall_rule.rb b/lib/fog/cloudstack/requests/compute/delete_firewall_rule.rb
new file mode 100644
index 0000000..1004af6
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_firewall_rule.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a firewall rule
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteFirewallRule.html]
+ def delete_firewall_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteFirewallRule')
+ else
+ options.merge!('command' => 'deleteFirewallRule',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_global_load_balancer_rule.rb b/lib/fog/cloudstack/requests/compute/delete_global_load_balancer_rule.rb
new file mode 100644
index 0000000..a6fb013
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_global_load_balancer_rule.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a global load balancer rule.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteGlobalLoadBalancerRule.html]
+ def delete_global_load_balancer_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteGlobalLoadBalancerRule')
+ else
+ options.merge!('command' => 'deleteGlobalLoadBalancerRule',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_host.rb b/lib/fog/cloudstack/requests/compute/delete_host.rb
new file mode 100644
index 0000000..f9b7af2
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_host.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a host.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteHost.html]
+ def delete_host(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteHost')
+ else
+ options.merge!('command' => 'deleteHost',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_image_store.rb b/lib/fog/cloudstack/requests/compute/delete_image_store.rb
new file mode 100644
index 0000000..7a0f772
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_image_store.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes an image store .
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteImageStore.html]
+ def delete_image_store(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteImageStore')
+ else
+ options.merge!('command' => 'deleteImageStore',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_instance_group.rb b/lib/fog/cloudstack/requests/compute/delete_instance_group.rb
new file mode 100644
index 0000000..2df364d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_instance_group.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a vm group
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteInstanceGroup.html]
+ def delete_instance_group(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteInstanceGroup')
+ else
+ options.merge!('command' => 'deleteInstanceGroup',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_ip_forwarding_rule.rb b/lib/fog/cloudstack/requests/compute/delete_ip_forwarding_rule.rb
new file mode 100644
index 0000000..a2026cd
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_ip_forwarding_rule.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes an ip forwarding rule
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteIpForwardingRule.html]
+ def delete_ip_forwarding_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteIpForwardingRule')
+ else
+ options.merge!('command' => 'deleteIpForwardingRule',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_iso.rb b/lib/fog/cloudstack/requests/compute/delete_iso.rb
new file mode 100644
index 0000000..9cc2352
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_iso.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes an ISO file.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteIso.html]
+ def delete_iso(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteIso')
+ else
+ options.merge!('command' => 'deleteIso',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_lb_health_check_policy.rb b/lib/fog/cloudstack/requests/compute/delete_lb_health_check_policy.rb
new file mode 100644
index 0000000..854b8da
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_lb_health_check_policy.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a load balancer HealthCheck policy.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteLBHealthCheckPolicy.html]
+ def delete_lb_health_check_policy(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteLBHealthCheckPolicy')
+ else
+ options.merge!('command' => 'deleteLBHealthCheckPolicy',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_lb_stickiness_policy.rb b/lib/fog/cloudstack/requests/compute/delete_lb_stickiness_policy.rb
new file mode 100644
index 0000000..e51b31e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_lb_stickiness_policy.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a LB stickiness policy.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteLBStickinessPolicy.html]
+ def delete_lb_stickiness_policy(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteLBStickinessPolicy')
+ else
+ options.merge!('command' => 'deleteLBStickinessPolicy',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_ldap_configuration.rb b/lib/fog/cloudstack/requests/compute/delete_ldap_configuration.rb
new file mode 100644
index 0000000..f6698f3
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_ldap_configuration.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Remove an Ldap Configuration
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteLdapConfiguration.html]
+ def delete_ldap_configuration(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteLdapConfiguration')
+ else
+ options.merge!('command' => 'deleteLdapConfiguration',
+ 'hostname' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_load_balancer.rb b/lib/fog/cloudstack/requests/compute/delete_load_balancer.rb
new file mode 100644
index 0000000..a3bd7f5
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_load_balancer.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a load balancer
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteLoadBalancer.html]
+ def delete_load_balancer(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteLoadBalancer')
+ else
+ options.merge!('command' => 'deleteLoadBalancer',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_load_balancer_rule.rb b/lib/fog/cloudstack/requests/compute/delete_load_balancer_rule.rb
index 425a902..ee89426 100644
--- a/lib/fog/cloudstack/requests/compute/delete_load_balancer_rule.rb
+++ b/lib/fog/cloudstack/requests/compute/delete_load_balancer_rule.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Creates a domain.
+ class Real
+ # Deletes a load balancer rule.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/deleteLoadBalancerRule.html]
- def delete_load_balancer_rule(options={})
- options.merge!(
- 'command' => 'deleteLoadBalancerRule'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteLoadBalancerRule.html]
+ def delete_load_balancer_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteLoadBalancerRule')
+ else
+ options.merge!('command' => 'deleteLoadBalancerRule',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_netscaler_load_balancer.rb b/lib/fog/cloudstack/requests/compute/delete_netscaler_load_balancer.rb
new file mode 100644
index 0000000..4019a35
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_netscaler_load_balancer.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # delete a netscaler load balancer device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteNetscalerLoadBalancer.html]
+ def delete_netscaler_load_balancer(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteNetscalerLoadBalancer')
+ else
+ options.merge!('command' => 'deleteNetscalerLoadBalancer',
+ 'lbdeviceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_network.rb b/lib/fog/cloudstack/requests/compute/delete_network.rb
new file mode 100644
index 0000000..d418618
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_network.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a network
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteNetwork.html]
+ def delete_network(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteNetwork')
+ else
+ options.merge!('command' => 'deleteNetwork',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_network_acl.rb b/lib/fog/cloudstack/requests/compute/delete_network_acl.rb
new file mode 100644
index 0000000..8c59f47
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_network_acl.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a Network ACL
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteNetworkACL.html]
+ def delete_network_acl(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteNetworkACL')
+ else
+ options.merge!('command' => 'deleteNetworkACL',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_network_acl_list.rb b/lib/fog/cloudstack/requests/compute/delete_network_acl_list.rb
new file mode 100644
index 0000000..a6dbfd4
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_network_acl_list.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a Network ACL
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteNetworkACLList.html]
+ def delete_network_acl_list(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteNetworkACLList')
+ else
+ options.merge!('command' => 'deleteNetworkACLList',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_network_device.rb b/lib/fog/cloudstack/requests/compute/delete_network_device.rb
new file mode 100644
index 0000000..84f90c0
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_network_device.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes network device.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteNetworkDevice.html]
+ def delete_network_device(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteNetworkDevice')
+ else
+ options.merge!('command' => 'deleteNetworkDevice',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_network_offering.rb b/lib/fog/cloudstack/requests/compute/delete_network_offering.rb
new file mode 100644
index 0000000..1db6ba8
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_network_offering.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a network offering.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteNetworkOffering.html]
+ def delete_network_offering(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteNetworkOffering')
+ else
+ options.merge!('command' => 'deleteNetworkOffering',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_network_service_provider.rb b/lib/fog/cloudstack/requests/compute/delete_network_service_provider.rb
new file mode 100644
index 0000000..916f289
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_network_service_provider.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a Network Service Provider.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteNetworkServiceProvider.html]
+ def delete_network_service_provider(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteNetworkServiceProvider')
+ else
+ options.merge!('command' => 'deleteNetworkServiceProvider',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_nicira_nvp_device.rb b/lib/fog/cloudstack/requests/compute/delete_nicira_nvp_device.rb
new file mode 100644
index 0000000..a2796a8
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_nicira_nvp_device.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # delete a nicira nvp device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteNiciraNvpDevice.html]
+ def delete_nicira_nvp_device(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteNiciraNvpDevice')
+ else
+ options.merge!('command' => 'deleteNiciraNvpDevice',
+ 'nvpdeviceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_open_daylight_controller.rb b/lib/fog/cloudstack/requests/compute/delete_open_daylight_controller.rb
new file mode 100644
index 0000000..f931060
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_open_daylight_controller.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Removes an OpenDyalight controler
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteOpenDaylightController.html]
+ def delete_open_daylight_controller(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteOpenDaylightController')
+ else
+ options.merge!('command' => 'deleteOpenDaylightController',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_palo_alto_firewall.rb b/lib/fog/cloudstack/requests/compute/delete_palo_alto_firewall.rb
new file mode 100644
index 0000000..768782a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_palo_alto_firewall.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # delete a Palo Alto firewall device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deletePaloAltoFirewall.html]
+ def delete_palo_alto_firewall(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deletePaloAltoFirewall')
+ else
+ options.merge!('command' => 'deletePaloAltoFirewall',
+ 'fwdeviceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_physical_network.rb b/lib/fog/cloudstack/requests/compute/delete_physical_network.rb
new file mode 100644
index 0000000..fb2eb97
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_physical_network.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a Physical Network.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deletePhysicalNetwork.html]
+ def delete_physical_network(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deletePhysicalNetwork')
+ else
+ options.merge!('command' => 'deletePhysicalNetwork',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_pod.rb b/lib/fog/cloudstack/requests/compute/delete_pod.rb
new file mode 100644
index 0000000..6c1b87f
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_pod.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a Pod.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deletePod.html]
+ def delete_pod(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deletePod')
+ else
+ options.merge!('command' => 'deletePod',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_pool.rb b/lib/fog/cloudstack/requests/compute/delete_pool.rb
new file mode 100644
index 0000000..8035e98
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_pool.rb
@@ -0,0 +1,21 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Delete a pool
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/deletePool.html]
+ def delete_pool(poolname, options={})
+ options.merge!(
+ 'command' => 'deletePool',
+ 'poolname' => poolname
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_port_forwarding_rule.rb b/lib/fog/cloudstack/requests/compute/delete_port_forwarding_rule.rb
index aa14a53..b5b9a9a 100644
--- a/lib/fog/cloudstack/requests/compute/delete_port_forwarding_rule.rb
+++ b/lib/fog/cloudstack/requests/compute/delete_port_forwarding_rule.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Creates a domain.
+ class Real
+ # Deletes a port forwarding rule
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/deletePortForwardingRule.html]
- def delete_port_forwarding_rule(options={})
- options.merge!(
- 'command' => 'deletePortForwardingRule'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deletePortForwardingRule.html]
+ def delete_port_forwarding_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deletePortForwardingRule')
+ else
+ options.merge!('command' => 'deletePortForwardingRule',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_portable_ip_range.rb b/lib/fog/cloudstack/requests/compute/delete_portable_ip_range.rb
new file mode 100644
index 0000000..7a3b9ab
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_portable_ip_range.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # deletes a range of portable public IP's associated with a region
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deletePortableIpRange.html]
+ def delete_portable_ip_range(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deletePortableIpRange')
+ else
+ options.merge!('command' => 'deletePortableIpRange',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_private_gateway.rb b/lib/fog/cloudstack/requests/compute/delete_private_gateway.rb
new file mode 100644
index 0000000..36205d1
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_private_gateway.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a Private gateway
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deletePrivateGateway.html]
+ def delete_private_gateway(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deletePrivateGateway')
+ else
+ options.merge!('command' => 'deletePrivateGateway',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_project.rb b/lib/fog/cloudstack/requests/compute/delete_project.rb
new file mode 100644
index 0000000..3300243
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_project.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a project
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteProject.html]
+ def delete_project(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteProject')
+ else
+ options.merge!('command' => 'deleteProject',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_project_invitation.rb b/lib/fog/cloudstack/requests/compute/delete_project_invitation.rb
new file mode 100644
index 0000000..ee07771
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_project_invitation.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Accepts or declines project invitation
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteProjectInvitation.html]
+ def delete_project_invitation(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteProjectInvitation')
+ else
+ options.merge!('command' => 'deleteProjectInvitation',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_remote_access_vpn.rb b/lib/fog/cloudstack/requests/compute/delete_remote_access_vpn.rb
new file mode 100644
index 0000000..2076540
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_remote_access_vpn.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Destroys a l2tp/ipsec remote access vpn
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteRemoteAccessVpn.html]
+ def delete_remote_access_vpn(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteRemoteAccessVpn')
+ else
+ options.merge!('command' => 'deleteRemoteAccessVpn',
+ 'publicipid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_secondary_staging_store.rb b/lib/fog/cloudstack/requests/compute/delete_secondary_staging_store.rb
new file mode 100644
index 0000000..a17b96c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_secondary_staging_store.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a secondary staging store .
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteSecondaryStagingStore.html]
+ def delete_secondary_staging_store(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteSecondaryStagingStore')
+ else
+ options.merge!('command' => 'deleteSecondaryStagingStore',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_security_group.rb b/lib/fog/cloudstack/requests/compute/delete_security_group.rb
index 6022682..186b45e 100644
--- a/lib/fog/cloudstack/requests/compute/delete_security_group.rb
+++ b/lib/fog/cloudstack/requests/compute/delete_security_group.rb
@@ -1,21 +1,23 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Creates an account.
+ class Real
+ # Deletes security group
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/deleteSecurityGroup.html]
- def delete_security_group(options={})
- options.merge!(
- 'command' => 'deleteSecurityGroup'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteSecurityGroup.html]
+ def delete_security_group(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteSecurityGroup')
+ else
+ options.merge!('command' => 'deleteSecurityGroup')
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
def delete_security_group(options={})
security_group_id = options['id']
@@ -30,8 +32,8 @@ module Fog
raise Fog::Compute::Cloudstack::BadRequest.new('No security_group found')
end
end
- end
-
+ end
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_service_offering.rb b/lib/fog/cloudstack/requests/compute/delete_service_offering.rb
new file mode 100644
index 0000000..6d3c5aa
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_service_offering.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a service offering.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteServiceOffering.html]
+ def delete_service_offering(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteServiceOffering')
+ else
+ options.merge!('command' => 'deleteServiceOffering',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_snapshot.rb b/lib/fog/cloudstack/requests/compute/delete_snapshot.rb
index 7a6742b..03183a7 100644
--- a/lib/fog/cloudstack/requests/compute/delete_snapshot.rb
+++ b/lib/fog/cloudstack/requests/compute/delete_snapshot.rb
@@ -1,26 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Deletes a specified snapshot.
+ class Real
+ # Deletes a snapshot of a disk volume.
#
- # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.0.0/user/deleteSnapshot.html]
- def delete_snapshot(options={})
- options.merge!(
- 'command' => 'deleteSnapshot'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteSnapshot.html]
+ def delete_snapshot(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteSnapshot')
+ else
+ options.merge!('command' => 'deleteSnapshot',
+ 'id' => args[0])
+ end
request(options)
end
-
end
-
- class Mock
-
- # Deletes a specified snapashot.
- #
- # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.0.0/user/deleteSnapshot.html]
+
+ class Mock
def delete_snapshot(options={})
snapshot_id = options['id']
snapshots = self.data[:snapshots]
@@ -55,8 +54,8 @@ module Fog
job_id
end
- end
-
+ end
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_snapshot_policies.rb b/lib/fog/cloudstack/requests/compute/delete_snapshot_policies.rb
index a2b9765..0a44cbf 100644
--- a/lib/fog/cloudstack/requests/compute/delete_snapshot_policies.rb
+++ b/lib/fog/cloudstack/requests/compute/delete_snapshot_policies.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Deletes a specified user.
+ class Real
+ # Deletes snapshot policies for the account.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/deleteSnapshotPolicies.html]
- def delete_snapshot_policy(options={})
- options.merge!(
- 'command' => 'deleteSnapshotPolicies'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteSnapshotPolicies.html]
+ def delete_snapshot_policies(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteSnapshotPolicies')
+ else
+ options.merge!('command' => 'deleteSnapshotPolicies')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_srx_firewall.rb b/lib/fog/cloudstack/requests/compute/delete_srx_firewall.rb
new file mode 100644
index 0000000..29ddf2b
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_srx_firewall.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # delete a SRX firewall device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteSrxFirewall.html]
+ def delete_srx_firewall(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteSrxFirewall')
+ else
+ options.merge!('command' => 'deleteSrxFirewall',
+ 'fwdeviceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_ssh_key_pair.rb b/lib/fog/cloudstack/requests/compute/delete_ssh_key_pair.rb
index 032a938..f836fac 100644
--- a/lib/fog/cloudstack/requests/compute/delete_ssh_key_pair.rb
+++ b/lib/fog/cloudstack/requests/compute/delete_ssh_key_pair.rb
@@ -1,21 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Deletes a keypair by name
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.12/global_admin/deleteSSHKeyPair.html]
- def delete_ssh_key_pair(name,options={})
- options.merge!(
- 'command' => 'deleteSSHKeyPair',
- 'name' => name
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteSSHKeyPair.html]
+ def delete_ssh_key_pair(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteSSHKeyPair')
+ else
+ options.merge!('command' => 'deleteSSHKeyPair',
+ 'name' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_ssl_cert.rb b/lib/fog/cloudstack/requests/compute/delete_ssl_cert.rb
new file mode 100644
index 0000000..9c4832d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_ssl_cert.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Delete a certificate to cloudstack
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteSslCert.html]
+ def delete_ssl_cert(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteSslCert')
+ else
+ options.merge!('command' => 'deleteSslCert',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_static_route.rb b/lib/fog/cloudstack/requests/compute/delete_static_route.rb
new file mode 100644
index 0000000..3e2f376
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_static_route.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a static route
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteStaticRoute.html]
+ def delete_static_route(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteStaticRoute')
+ else
+ options.merge!('command' => 'deleteStaticRoute',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_storage_network_ip_range.rb b/lib/fog/cloudstack/requests/compute/delete_storage_network_ip_range.rb
new file mode 100644
index 0000000..fc51804
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_storage_network_ip_range.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a storage network IP Range.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteStorageNetworkIpRange.html]
+ def delete_storage_network_ip_range(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteStorageNetworkIpRange')
+ else
+ options.merge!('command' => 'deleteStorageNetworkIpRange',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_storage_pool.rb b/lib/fog/cloudstack/requests/compute/delete_storage_pool.rb
new file mode 100644
index 0000000..734f7d4
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_storage_pool.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a storage pool.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteStoragePool.html]
+ def delete_storage_pool(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteStoragePool')
+ else
+ options.merge!('command' => 'deleteStoragePool',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_tags.rb b/lib/fog/cloudstack/requests/compute/delete_tags.rb
new file mode 100644
index 0000000..05e1642
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_tags.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deleting resource tag(s)
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteTags.html]
+ def delete_tags(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteTags')
+ else
+ options.merge!('command' => 'deleteTags',
+ 'resourceids' => args[0],
+ 'resourcetype' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_template.rb b/lib/fog/cloudstack/requests/compute/delete_template.rb
index 6e6c112..e1ad05c 100644
--- a/lib/fog/cloudstack/requests/compute/delete_template.rb
+++ b/lib/fog/cloudstack/requests/compute/delete_template.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Deletes a specified template.
+ class Real
+ # Deletes a template from the system. All virtual machines using the deleted template will not be affected.
#
- # {CloudStack API Reference}[http://http://download.cloud.com/releases/3.0.0/api_3.0.0/user/deleteTemplate.html]
- def delete_template(options={})
- options.merge!(
- 'command' => 'deleteTemplate'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteTemplate.html]
+ def delete_template(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteTemplate')
+ else
+ options.merge!('command' => 'deleteTemplate',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_traffic_monitor.rb b/lib/fog/cloudstack/requests/compute/delete_traffic_monitor.rb
new file mode 100644
index 0000000..3866a7a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_traffic_monitor.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes an traffic monitor host.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteTrafficMonitor.html]
+ def delete_traffic_monitor(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteTrafficMonitor')
+ else
+ options.merge!('command' => 'deleteTrafficMonitor',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_traffic_type.rb b/lib/fog/cloudstack/requests/compute/delete_traffic_type.rb
new file mode 100644
index 0000000..1f473c7
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_traffic_type.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes traffic type of a physical network
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteTrafficType.html]
+ def delete_traffic_type(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteTrafficType')
+ else
+ options.merge!('command' => 'deleteTrafficType',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_ucs_manager.rb b/lib/fog/cloudstack/requests/compute/delete_ucs_manager.rb
new file mode 100644
index 0000000..0de8876
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_ucs_manager.rb
@@ -0,0 +1,21 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Delete a Ucs manager
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/deleteUcsManager.html]
+ def delete_ucs_manager(ucsmanagerid, options={})
+ options.merge!(
+ 'command' => 'deleteUcsManager',
+ 'ucsmanagerid' => ucsmanagerid
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_user.rb b/lib/fog/cloudstack/requests/compute/delete_user.rb
index 9ab3755..c5ab74e 100644
--- a/lib/fog/cloudstack/requests/compute/delete_user.rb
+++ b/lib/fog/cloudstack/requests/compute/delete_user.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Deletes a specified user.
+ class Real
+ # Deletes a user for an account
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/deleteUser.html]
- def delete_user(options={})
- options.merge!(
- 'command' => 'deleteUser'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteUser.html]
+ def delete_user(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteUser')
+ else
+ options.merge!('command' => 'deleteUser',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_vlan_ip_range.rb b/lib/fog/cloudstack/requests/compute/delete_vlan_ip_range.rb
new file mode 100644
index 0000000..6582bed
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_vlan_ip_range.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates a VLAN IP range.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteVlanIpRange.html]
+ def delete_vlan_ip_range(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteVlanIpRange')
+ else
+ options.merge!('command' => 'deleteVlanIpRange',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_vm_snapshot.rb b/lib/fog/cloudstack/requests/compute/delete_vm_snapshot.rb
new file mode 100644
index 0000000..cf49d29
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_vm_snapshot.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a vmsnapshot.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteVMSnapshot.html]
+ def delete_vm_snapshot(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteVMSnapshot')
+ else
+ options.merge!('command' => 'deleteVMSnapshot',
+ 'vmsnapshotid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_volume.rb b/lib/fog/cloudstack/requests/compute/delete_volume.rb
index 9598a02..e9638f9 100644
--- a/lib/fog/cloudstack/requests/compute/delete_volume.rb
+++ b/lib/fog/cloudstack/requests/compute/delete_volume.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Deletes a specified user.
+ class Real
+ # Deletes a detached disk volume.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/deleteVolume.html]
- def delete_volume(options={})
- options.merge!(
- 'command' => 'deleteVolume'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteVolume.html]
+ def delete_volume(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteVolume')
+ else
+ options.merge!('command' => 'deleteVolume',
+ 'id' => args[0])
+ end
request(options)
end
-
- end # Real
+ end
+
class Mock
def delete_volume(options={})
volume_id = options['id']
@@ -34,7 +38,8 @@ module Fog
}
end
end
- end # Mock
- end # Cloudstack
- end # Compute
-end # Fog
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_vpc.rb b/lib/fog/cloudstack/requests/compute/delete_vpc.rb
new file mode 100644
index 0000000..87b8b0f
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_vpc.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a VPC
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteVPC.html]
+ def delete_vpc(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteVPC')
+ else
+ options.merge!('command' => 'deleteVPC',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_vpcoffering.rb b/lib/fog/cloudstack/requests/compute/delete_vpcoffering.rb
new file mode 100644
index 0000000..a3f9113
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_vpcoffering.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes VPC offering
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteVPCOffering.html]
+ def delete_vpcoffering(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteVPCOffering')
+ else
+ options.merge!('command' => 'deleteVPCOffering',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_vpn_connection.rb b/lib/fog/cloudstack/requests/compute/delete_vpn_connection.rb
new file mode 100644
index 0000000..5da4ebc
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_vpn_connection.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Delete site to site vpn connection
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteVpnConnection.html]
+ def delete_vpn_connection(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteVpnConnection')
+ else
+ options.merge!('command' => 'deleteVpnConnection',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_vpn_customer_gateway.rb b/lib/fog/cloudstack/requests/compute/delete_vpn_customer_gateway.rb
new file mode 100644
index 0000000..c2d24dc
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_vpn_customer_gateway.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Delete site to site vpn customer gateway
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteVpnCustomerGateway.html]
+ def delete_vpn_customer_gateway(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteVpnCustomerGateway')
+ else
+ options.merge!('command' => 'deleteVpnCustomerGateway',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_vpn_gateway.rb b/lib/fog/cloudstack/requests/compute/delete_vpn_gateway.rb
new file mode 100644
index 0000000..d40d524
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_vpn_gateway.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Delete site to site vpn gateway
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteVpnGateway.html]
+ def delete_vpn_gateway(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteVpnGateway')
+ else
+ options.merge!('command' => 'deleteVpnGateway',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/delete_zone.rb b/lib/fog/cloudstack/requests/compute/delete_zone.rb
new file mode 100644
index 0000000..bb58a2f
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/delete_zone.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Deletes a Zone.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deleteZone.html]
+ def delete_zone(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deleteZone')
+ else
+ options.merge!('command' => 'deleteZone',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/deploy_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/deploy_virtual_machine.rb
index 52aeb85..33339b4 100644
--- a/lib/fog/cloudstack/requests/compute/deploy_virtual_machine.rb
+++ b/lib/fog/cloudstack/requests/compute/deploy_virtual_machine.rb
@@ -1,34 +1,27 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Creates and automatically starts a virtual machine based on a service offering, disk offering, and template.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/deployVirtualMachine.html]
- def deploy_virtual_machine(options={})
- options.merge!(
- 'command' => 'deployVirtualMachine'
- )
-
- if security_group_ids = options.delete('securitygroupids')
- options.merge!('securitygroupids' => Array(security_group_ids).join(','))
- end
-
- if security_group_names = options.delete('securitygroupnames')
- options.merge!('securitygroupnames' => Array(security_group_names).join(','))
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/deployVirtualMachine.html]
+ def deploy_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'deployVirtualMachine')
+ else
+ options.merge!('command' => 'deployVirtualMachine',
+ 'templateid' => args[0],
+ 'zoneid' => args[1],
+ 'serviceofferingid' => args[2])
end
-
- if network_ids = options.delete('networkids')
- options.merge!('networkids' => Array(network_ids).join(','))
- end
-
request(options)
end
- end # Real
-
+ end
+
class Mock
-
def deploy_virtual_machine(options={})
zone_id = options['zoneid']
unless zone_id
@@ -123,7 +116,8 @@ module Fog
self.data[:servers][identity]= virtual_machine
{'deployvirtualmachineresponse' => virtual_machine}
end
- end # Mock
- end # Cloudstack
- end # Compute
-end # Fog
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/destroy_lun_on_filer.rb b/lib/fog/cloudstack/requests/compute/destroy_lun_on_filer.rb
new file mode 100644
index 0000000..730ff91
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/destroy_lun_on_filer.rb
@@ -0,0 +1,21 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Destroy a LUN
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/destroyLunOnFiler.html]
+ def destroy_lun_on_filer(path, options={})
+ options.merge!(
+ 'command' => 'destroyLunOnFiler',
+ 'path' => path
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/destroy_router.rb b/lib/fog/cloudstack/requests/compute/destroy_router.rb
new file mode 100644
index 0000000..0eae54e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/destroy_router.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Destroys a router.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/destroyRouter.html]
+ def destroy_router(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'destroyRouter')
+ else
+ options.merge!('command' => 'destroyRouter',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/destroy_system_vm.rb b/lib/fog/cloudstack/requests/compute/destroy_system_vm.rb
new file mode 100644
index 0000000..1f6ce36
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/destroy_system_vm.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Destroyes a system virtual machine.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/destroySystemVm.html]
+ def destroy_system_vm(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'destroySystemVm')
+ else
+ options.merge!('command' => 'destroySystemVm',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/destroy_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/destroy_virtual_machine.rb
index 3f8c204..1b109a6 100644
--- a/lib/fog/cloudstack/requests/compute/destroy_virtual_machine.rb
+++ b/lib/fog/cloudstack/requests/compute/destroy_virtual_machine.rb
@@ -1,23 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Updates account information for the authenticated user.
+ class Real
+ # Destroys a virtual machine. Once destroyed, only the administrator can recover it.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/destroyVirtualMachine.html]
- def destroy_virtual_machine(options={})
- options.merge!(
- 'command' => 'destroyVirtualMachine'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/destroyVirtualMachine.html]
+ def destroy_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'destroyVirtualMachine')
+ else
+ options.merge!('command' => 'destroyVirtualMachine',
+ 'id' => args[0])
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
-
def destroy_virtual_machine(options={})
identity = options["id"]
@@ -45,7 +47,8 @@ module Fog
{"destroyvirtualmachineresponse" => {"jobid" => job_id}}
end
- end
- end # Cloudstack
- end # Compute
-end # Fog
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/destroy_volume_on_filer.rb b/lib/fog/cloudstack/requests/compute/destroy_volume_on_filer.rb
new file mode 100644
index 0000000..297b9aa
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/destroy_volume_on_filer.rb
@@ -0,0 +1,23 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Destroy a Volume
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/destroyVolumeOnFiler.html]
+ def destroy_volume_on_filer(ipaddress, aggregatename, volumename, options={})
+ options.merge!(
+ 'command' => 'destroyVolumeOnFiler',
+ 'ipaddress' => ipaddress,
+ 'aggregatename' => aggregatename,
+ 'volumename' => volumename
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/detach_iso.rb b/lib/fog/cloudstack/requests/compute/detach_iso.rb
new file mode 100644
index 0000000..d8568d9
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/detach_iso.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Detaches any ISO file (if any) currently attached to a virtual machine.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/detachIso.html]
+ def detach_iso(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'detachIso')
+ else
+ options.merge!('command' => 'detachIso',
+ 'virtualmachineid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/detach_volume.rb b/lib/fog/cloudstack/requests/compute/detach_volume.rb
index e639b9c..3458a9a 100644
--- a/lib/fog/cloudstack/requests/compute/detach_volume.rb
+++ b/lib/fog/cloudstack/requests/compute/detach_volume.rb
@@ -1,23 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Deletes a specified domain.
+ class Real
+ # Detaches a disk volume from a virtual machine.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/detachVolume.html]
- def detach_volume(options={})
- options.merge!(
- 'command' => 'detachVolume'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/detachVolume.html]
+ def detach_volume(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'detachVolume')
+ else
+ options.merge!('command' => 'detachVolume')
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
-
def detach_volume(options={})
volume_id = options['id']
@@ -56,7 +57,8 @@ module Fog
}
}
end
- end # Mock
+ end
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/disable_account.rb b/lib/fog/cloudstack/requests/compute/disable_account.rb
index ec87a7b..1db6a35 100644
--- a/lib/fog/cloudstack/requests/compute/disable_account.rb
+++ b/lib/fog/cloudstack/requests/compute/disable_account.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Disables an account.
+ class Real
+ # Disables an account
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/disableAccount.html]
- def disable_account(options={})
- options.merge!(
- 'command' => 'disableAccount'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/disableAccount.html]
+ def disable_account(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'disableAccount')
+ else
+ options.merge!('command' => 'disableAccount',
+ 'lock' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/disable_auto_scale_vm_group.rb b/lib/fog/cloudstack/requests/compute/disable_auto_scale_vm_group.rb
new file mode 100644
index 0000000..df520d7
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/disable_auto_scale_vm_group.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Disables an AutoScale Vm Group
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/disableAutoScaleVmGroup.html]
+ def disable_auto_scale_vm_group(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'disableAutoScaleVmGroup')
+ else
+ options.merge!('command' => 'disableAutoScaleVmGroup',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/disable_cisco_nexus_vsm.rb b/lib/fog/cloudstack/requests/compute/disable_cisco_nexus_vsm.rb
new file mode 100644
index 0000000..bc635ea
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/disable_cisco_nexus_vsm.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # disable a Cisco Nexus VSM device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/disableCiscoNexusVSM.html]
+ def disable_cisco_nexus_vsm(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'disableCiscoNexusVSM')
+ else
+ options.merge!('command' => 'disableCiscoNexusVSM',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/disable_static_nat.rb b/lib/fog/cloudstack/requests/compute/disable_static_nat.rb
new file mode 100644
index 0000000..4a02d7e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/disable_static_nat.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Disables static rule for given ip address
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/disableStaticNat.html]
+ def disable_static_nat(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'disableStaticNat')
+ else
+ options.merge!('command' => 'disableStaticNat',
+ 'ipaddressid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/disable_user.rb b/lib/fog/cloudstack/requests/compute/disable_user.rb
index 4f2728a..5a07db1 100644
--- a/lib/fog/cloudstack/requests/compute/disable_user.rb
+++ b/lib/fog/cloudstack/requests/compute/disable_user.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Disables a user account.
+ class Real
+ # Disables a user account
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/disableUser.html]
- def disable_user(options={})
- options.merge!(
- 'command' => 'disableUser'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/disableUser.html]
+ def disable_user(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'disableUser')
+ else
+ options.merge!('command' => 'disableUser',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/disassociate_ip_address.rb b/lib/fog/cloudstack/requests/compute/disassociate_ip_address.rb
new file mode 100644
index 0000000..78332aa
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/disassociate_ip_address.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Disassociates an ip address from the account.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/disassociateIpAddress.html]
+ def disassociate_ip_address(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'disassociateIpAddress')
+ else
+ options.merge!('command' => 'disassociateIpAddress',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/disassociate_ucs_profile_from_blade.rb b/lib/fog/cloudstack/requests/compute/disassociate_ucs_profile_from_blade.rb
new file mode 100644
index 0000000..f4fce61
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/disassociate_ucs_profile_from_blade.rb
@@ -0,0 +1,21 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # disassociate a profile from a blade
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/disassociateUcsProfileFromBlade.html]
+ def disassociate_ucs_profile_from_blade(bladeid, options={})
+ options.merge!(
+ 'command' => 'disassociateUcsProfileFromBlade',
+ 'bladeid' => bladeid
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/dissociate_lun.rb b/lib/fog/cloudstack/requests/compute/dissociate_lun.rb
new file mode 100644
index 0000000..641385b
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/dissociate_lun.rb
@@ -0,0 +1,22 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Dissociate a LUN
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/dissociateLun.html]
+ def dissociate_lun(iqn, path, options={})
+ options.merge!(
+ 'command' => 'dissociateLun',
+ 'iqn' => iqn,
+ 'path' => path
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/enable_account.rb b/lib/fog/cloudstack/requests/compute/enable_account.rb
index ad83d1b..d6dbf6c 100644
--- a/lib/fog/cloudstack/requests/compute/enable_account.rb
+++ b/lib/fog/cloudstack/requests/compute/enable_account.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Enables an account.
+ class Real
+ # Enables an account
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/enableAccount.html]
- def enable_account(options={})
- options.merge!(
- 'command' => 'enableAccount'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/enableAccount.html]
+ def enable_account(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'enableAccount')
+ else
+ options.merge!('command' => 'enableAccount')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/enable_auto_scale_vm_group.rb b/lib/fog/cloudstack/requests/compute/enable_auto_scale_vm_group.rb
new file mode 100644
index 0000000..6a17494
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/enable_auto_scale_vm_group.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Enables an AutoScale Vm Group
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/enableAutoScaleVmGroup.html]
+ def enable_auto_scale_vm_group(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'enableAutoScaleVmGroup')
+ else
+ options.merge!('command' => 'enableAutoScaleVmGroup',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/enable_cisco_nexus_vsm.rb b/lib/fog/cloudstack/requests/compute/enable_cisco_nexus_vsm.rb
new file mode 100644
index 0000000..011227f
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/enable_cisco_nexus_vsm.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Enable a Cisco Nexus VSM device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/enableCiscoNexusVSM.html]
+ def enable_cisco_nexus_vsm(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'enableCiscoNexusVSM')
+ else
+ options.merge!('command' => 'enableCiscoNexusVSM',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/enable_static_nat.rb b/lib/fog/cloudstack/requests/compute/enable_static_nat.rb
new file mode 100644
index 0000000..4476959
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/enable_static_nat.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Enables static nat for given ip address
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/enableStaticNat.html]
+ def enable_static_nat(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'enableStaticNat')
+ else
+ options.merge!('command' => 'enableStaticNat',
+ 'ipaddressid' => args[0],
+ 'virtualmachineid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/enable_storage_maintenance.rb b/lib/fog/cloudstack/requests/compute/enable_storage_maintenance.rb
new file mode 100644
index 0000000..3cc9071
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/enable_storage_maintenance.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Puts storage pool into maintenance state
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/enableStorageMaintenance.html]
+ def enable_storage_maintenance(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'enableStorageMaintenance')
+ else
+ options.merge!('command' => 'enableStorageMaintenance',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/enable_user.rb b/lib/fog/cloudstack/requests/compute/enable_user.rb
index 1e3c038..54fd2c7 100644
--- a/lib/fog/cloudstack/requests/compute/enable_user.rb
+++ b/lib/fog/cloudstack/requests/compute/enable_user.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Enables a user account.
+ class Real
+ # Enables a user account
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/enableUser.html]
- def enable_user(options={})
- options.merge!(
- 'command' => 'enableUser'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/enableUser.html]
+ def enable_user(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'enableUser')
+ else
+ options.merge!('command' => 'enableUser',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/expunge_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/expunge_virtual_machine.rb
new file mode 100644
index 0000000..c8d9349
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/expunge_virtual_machine.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Expunge a virtual machine. Once expunged, it cannot be recoverd.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/expungeVirtualMachine.html]
+ def expunge_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'expungeVirtualMachine')
+ else
+ options.merge!('command' => 'expungeVirtualMachine',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/extract_iso.rb b/lib/fog/cloudstack/requests/compute/extract_iso.rb
new file mode 100644
index 0000000..2839e41
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/extract_iso.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Extracts an ISO
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/extractIso.html]
+ def extract_iso(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'extractIso')
+ else
+ options.merge!('command' => 'extractIso',
+ 'id' => args[0],
+ 'mode' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/extract_template.rb b/lib/fog/cloudstack/requests/compute/extract_template.rb
new file mode 100644
index 0000000..cc2b6f6
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/extract_template.rb
@@ -0,0 +1,65 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Extracts a template
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/extractTemplate.html]
+ def extract_template(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'extractTemplate')
+ else
+ options.merge!('command' => 'extractTemplate',
+ 'mode' => args[0],
+ 'id' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ class Mock
+ def extract_template(options={})
+ Fog.credentials[:cloudstack_zone_id] = 1105
+
+ template_id = options['id']
+ template_mode = options['mode']
+
+ zoneid = self.data[:zones].keys[0]
+ zone = self.data[:zones][zoneid]
+
+ template = {}
+ template['id'] = template_id
+ template['name'] = "test template"
+ template['extractId'] = 1
+ template['accountid'] = 1
+ template['state'] = "DOWNLOAD_URL_CREATED"
+ template['zoneid'] = zoneid
+ template['zonename'] = self.data[:zones][zoneid]["name"]
+ template['extractMode'] = template_mode
+ template['url'] = "http:%2F%2Fexample.com"
+
+ job_id = 1
+ job = {
+ "jobid" => job_id,
+ "jobstatus" => 1,
+ "jobprocstatus" => 0,
+ "jobresultcode" => 0,
+ "jobresulttype" => "object",
+ "jobresult" => { "template" => template }
+ }
+
+ self.data[:jobs][job_id] = job
+ {
+ "extracttemplateresponse" => {
+ "jobid" => job_id
+ }
+ }
+ end
+ end # Mock
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/extract_volume.rb b/lib/fog/cloudstack/requests/compute/extract_volume.rb
new file mode 100644
index 0000000..cba86b6
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/extract_volume.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Extracts volume
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/extractVolume.html]
+ def extract_volume(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'extractVolume')
+ else
+ options.merge!('command' => 'extractVolume',
+ 'mode' => args[0],
+ 'id' => args[1],
+ 'zoneid' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/find_hosts_for_migration.rb b/lib/fog/cloudstack/requests/compute/find_hosts_for_migration.rb
new file mode 100644
index 0000000..1e103ae
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/find_hosts_for_migration.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Find hosts suitable for migrating a virtual machine.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/findHostsForMigration.html]
+ def find_hosts_for_migration(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'findHostsForMigration')
+ else
+ options.merge!('command' => 'findHostsForMigration',
+ 'virtualmachineid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/find_storage_pools_for_migration.rb b/lib/fog/cloudstack/requests/compute/find_storage_pools_for_migration.rb
new file mode 100644
index 0000000..87b33c1
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/find_storage_pools_for_migration.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists storage pools available for migration of a volume.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/findStoragePoolsForMigration.html]
+ def find_storage_pools_for_migration(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'findStoragePoolsForMigration')
+ else
+ options.merge!('command' => 'findStoragePoolsForMigration',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/generate_alert.rb b/lib/fog/cloudstack/requests/compute/generate_alert.rb
new file mode 100644
index 0000000..5b6655d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/generate_alert.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Generates an alert
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/generateAlert.html]
+ def generate_alert(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'generateAlert')
+ else
+ options.merge!('command' => 'generateAlert',
+ 'description' => args[0],
+ 'name' => args[1],
+ 'type' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/generate_usage_records.rb b/lib/fog/cloudstack/requests/compute/generate_usage_records.rb
index 907c29e..c044db5 100644
--- a/lib/fog/cloudstack/requests/compute/generate_usage_records.rb
+++ b/lib/fog/cloudstack/requests/compute/generate_usage_records.rb
@@ -1,28 +1,26 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists all available networks.
+ class Real
+ # Generates usage records. This will generate records only if there any records to be generated, i.e if the scheduled usage job was not run or failed
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/generateUsageRecords.html]
- def generate_usage_records(options={})
- options.merge!(
- 'command' => 'generateUsageRecords'
- )
-
- if startdate = options.delete('startdate')
- options.merge!('startdate' => startdate.strftime('%Y-%m-%d'))
- end
-
- if enddate = options.delete('enddate')
- options.merge!('enddate' => enddate.strftime('%Y-%m-%d'))
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/generateUsageRecords.html]
+ def generate_usage_records(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'generateUsageRecords')
+ else
+ options.merge!('command' => 'generateUsageRecords',
+ 'enddate' => args[0],
+ 'startdate' => args[1])
end
-
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/get_api_limit.rb b/lib/fog/cloudstack/requests/compute/get_api_limit.rb
new file mode 100644
index 0000000..d147fe7
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/get_api_limit.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Get API limit count for the caller
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/getApiLimit.html]
+ def get_api_limit(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'getApiLimit')
+ else
+ options.merge!('command' => 'getApiLimit')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/get_cloud_identifier.rb b/lib/fog/cloudstack/requests/compute/get_cloud_identifier.rb
new file mode 100644
index 0000000..ed66d70
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/get_cloud_identifier.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Retrieves a cloud identifier.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/getCloudIdentifier.html]
+ def get_cloud_identifier(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'getCloudIdentifier')
+ else
+ options.merge!('command' => 'getCloudIdentifier',
+ 'userid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/get_user.rb b/lib/fog/cloudstack/requests/compute/get_user.rb
new file mode 100644
index 0000000..9fd7ee5
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/get_user.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Find user account by API key
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/getUser.html]
+ def get_user(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'getUser')
+ else
+ options.merge!('command' => 'getUser',
+ 'apikey' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/get_virtual_machine_user_data.rb b/lib/fog/cloudstack/requests/compute/get_virtual_machine_user_data.rb
new file mode 100644
index 0000000..7d70f74
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/get_virtual_machine_user_data.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Returns user data associated with the VM
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/getVirtualMachineUserData.html]
+ def get_virtual_machine_user_data(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'getVirtualMachineUserData')
+ else
+ options.merge!('command' => 'getVirtualMachineUserData',
+ 'virtualmachineid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/get_vm_password.rb b/lib/fog/cloudstack/requests/compute/get_vm_password.rb
index 1704da2..1d82daa 100644
--- a/lib/fog/cloudstack/requests/compute/get_vm_password.rb
+++ b/lib/fog/cloudstack/requests/compute/get_vm_password.rb
@@ -1,21 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Returns an encrypted password for the VM
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/getVMPassword.html]
- def get_vm_password(id)
- options = {
- 'command' => 'getVMPassword',
- 'id' => id
- }
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/getVMPassword.html]
+ def get_vm_password(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'getVMPassword')
+ else
+ options.merge!('command' => 'getVMPassword',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/import_ldap_users.rb b/lib/fog/cloudstack/requests/compute/import_ldap_users.rb
new file mode 100644
index 0000000..3190767
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/import_ldap_users.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Import LDAP users
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/importLdapUsers.html]
+ def import_ldap_users(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'importLdapUsers')
+ else
+ options.merge!('command' => 'importLdapUsers',
+ 'accounttype' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/instantiate_ucs_template_and_assocaciate_to_blade.rb b/lib/fog/cloudstack/requests/compute/instantiate_ucs_template_and_assocaciate_to_blade.rb
new file mode 100644
index 0000000..b737cbe
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/instantiate_ucs_template_and_assocaciate_to_blade.rb
@@ -0,0 +1,23 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # create a profile of template and associate to a blade
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/instantiateUcsTemplateAndAssocaciateToBlade.html]
+ def instantiate_ucs_template_and_assocaciate_to_blade(bladeid, templatedn, ucsmanagerid, options={})
+ options.merge!(
+ 'command' => 'instantiateUcsTemplateAndAssocaciateToBlade',
+ 'bladeid' => bladeid,
+ 'templatedn' => templatedn,
+ 'ucsmanagerid' => ucsmanagerid
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/ldap_config.rb b/lib/fog/cloudstack/requests/compute/ldap_config.rb
new file mode 100644
index 0000000..0aece92
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/ldap_config.rb
@@ -0,0 +1,20 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Configure the LDAP context for this site.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/ldapConfig.html]
+ def ldap_config(options={})
+ options.merge!(
+ 'command' => 'ldapConfig'
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/ldap_create_account.rb b/lib/fog/cloudstack/requests/compute/ldap_create_account.rb
new file mode 100644
index 0000000..76931d1
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/ldap_create_account.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Creates an account from an LDAP user
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/ldapCreateAccount.html]
+ def ldap_create_account(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'ldapCreateAccount')
+ else
+ options.merge!('command' => 'ldapCreateAccount',
+ 'username' => args[0],
+ 'accounttype' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/ldap_remove.rb b/lib/fog/cloudstack/requests/compute/ldap_remove.rb
new file mode 100644
index 0000000..1590fab
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/ldap_remove.rb
@@ -0,0 +1,20 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Remove the LDAP context for this site.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/ldapRemove.html]
+ def ldap_remove(options={})
+ options.merge!(
+ 'command' => 'ldapRemove'
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_accounts.rb b/lib/fog/cloudstack/requests/compute/list_accounts.rb
index ffdeab8..4d62ee2 100644
--- a/lib/fog/cloudstack/requests/compute/list_accounts.rb
+++ b/lib/fog/cloudstack/requests/compute/list_accounts.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists accounts and provides detailed account information for listed accounts.
+ class Real
+ # Lists accounts and provides detailed account information for listed accounts
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listAccounts.html]
- def list_accounts(options={})
- options.merge!(
- 'command' => 'listAccounts'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listAccounts.html]
+ def list_accounts(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listAccounts')
+ else
+ options.merge!('command' => 'listAccounts')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_affinity_group_types.rb b/lib/fog/cloudstack/requests/compute/list_affinity_group_types.rb
new file mode 100644
index 0000000..bf5eb1d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_affinity_group_types.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists affinity group types available
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listAffinityGroupTypes.html]
+ def list_affinity_group_types(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listAffinityGroupTypes')
+ else
+ options.merge!('command' => 'listAffinityGroupTypes')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_affinity_groups.rb b/lib/fog/cloudstack/requests/compute/list_affinity_groups.rb
new file mode 100644
index 0000000..328a849
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_affinity_groups.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists affinity groups
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listAffinityGroups.html]
+ def list_affinity_groups(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listAffinityGroups')
+ else
+ options.merge!('command' => 'listAffinityGroups')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_alerts.rb b/lib/fog/cloudstack/requests/compute/list_alerts.rb
index 69f8cf7..b33e83a 100644
--- a/lib/fog/cloudstack/requests/compute/list_alerts.rb
+++ b/lib/fog/cloudstack/requests/compute/list_alerts.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Lists all alerts.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listAlerts.html]
- def list_alerts(options={})
- options.merge!(
- 'command' => 'listAlerts'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listAlerts.html]
+ def list_alerts(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listAlerts')
+ else
+ options.merge!('command' => 'listAlerts')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_apis.rb b/lib/fog/cloudstack/requests/compute/list_apis.rb
new file mode 100644
index 0000000..92eb776
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_apis.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # lists all available apis on the server, provided by the Api Discovery plugin
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listApis.html]
+ def list_apis(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listApis')
+ else
+ options.merge!('command' => 'listApis')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_async_jobs.rb b/lib/fog/cloudstack/requests/compute/list_async_jobs.rb
index c22b0df..a4c7cae 100644
--- a/lib/fog/cloudstack/requests/compute/list_async_jobs.rb
+++ b/lib/fog/cloudstack/requests/compute/list_async_jobs.rb
@@ -1,20 +1,23 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Lists all pending asynchronous jobs for the account.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listAsyncJobs.html]
- def list_async_jobs(options={})
- options.merge!(
- 'command' => 'listAsyncJobs'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listAsyncJobs.html]
+ def list_async_jobs(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listAsyncJobs')
+ else
+ options.merge!('command' => 'listAsyncJobs')
+ end
request(options)
end
-
- end # Real
+ end
+
class Mock
def list_async_jobs(options={})
# FIXME: support paging
@@ -26,7 +29,8 @@ module Fog
}
}
end
- end # Mock
- end # Cloudstack
- end # Compute
-end # Fog
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_auto_scale_policies.rb b/lib/fog/cloudstack/requests/compute/list_auto_scale_policies.rb
new file mode 100644
index 0000000..0100cad
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_auto_scale_policies.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists autoscale policies.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listAutoScalePolicies.html]
+ def list_auto_scale_policies(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listAutoScalePolicies')
+ else
+ options.merge!('command' => 'listAutoScalePolicies')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_auto_scale_vm_groups.rb b/lib/fog/cloudstack/requests/compute/list_auto_scale_vm_groups.rb
new file mode 100644
index 0000000..79b7253
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_auto_scale_vm_groups.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists autoscale vm groups.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listAutoScaleVmGroups.html]
+ def list_auto_scale_vm_groups(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listAutoScaleVmGroups')
+ else
+ options.merge!('command' => 'listAutoScaleVmGroups')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_auto_scale_vm_profiles.rb b/lib/fog/cloudstack/requests/compute/list_auto_scale_vm_profiles.rb
new file mode 100644
index 0000000..d97f47e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_auto_scale_vm_profiles.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists autoscale vm profiles.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listAutoScaleVmProfiles.html]
+ def list_auto_scale_vm_profiles(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listAutoScaleVmProfiles')
+ else
+ options.merge!('command' => 'listAutoScaleVmProfiles')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_baremetal_dhcp.rb b/lib/fog/cloudstack/requests/compute/list_baremetal_dhcp.rb
new file mode 100644
index 0000000..b3da2b4
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_baremetal_dhcp.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # list baremetal dhcp servers
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listBaremetalDhcp.html]
+ def list_baremetal_dhcp(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listBaremetalDhcp')
+ else
+ options.merge!('command' => 'listBaremetalDhcp')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_baremetal_pxe_servers.rb b/lib/fog/cloudstack/requests/compute/list_baremetal_pxe_servers.rb
new file mode 100644
index 0000000..42ad397
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_baremetal_pxe_servers.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # list baremetal pxe server
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listBaremetalPxeServers.html]
+ def list_baremetal_pxe_servers(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listBaremetalPxeServers')
+ else
+ options.merge!('command' => 'listBaremetalPxeServers')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_big_switch_vns_devices.rb b/lib/fog/cloudstack/requests/compute/list_big_switch_vns_devices.rb
new file mode 100644
index 0000000..2b2f27c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_big_switch_vns_devices.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists BigSwitch Vns devices
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listBigSwitchVnsDevices.html]
+ def list_big_switch_vns_devices(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listBigSwitchVnsDevices')
+ else
+ options.merge!('command' => 'listBigSwitchVnsDevices')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_capabilities.rb b/lib/fog/cloudstack/requests/compute/list_capabilities.rb
index 047fd77..7344b30 100644
--- a/lib/fog/cloudstack/requests/compute/list_capabilities.rb
+++ b/lib/fog/cloudstack/requests/compute/list_capabilities.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists configurations and provides detailed account information for listed configurations.
+ class Real
+ # Lists capabilities
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listAccounts.html]
- def list_capabilities(options={})
- options.merge!(
- 'command' => 'listCapabilities'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listCapabilities.html]
+ def list_capabilities(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listCapabilities')
+ else
+ options.merge!('command' => 'listCapabilities')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_capacity.rb b/lib/fog/cloudstack/requests/compute/list_capacity.rb
index f2347c2..329a2e8 100644
--- a/lib/fog/cloudstack/requests/compute/list_capacity.rb
+++ b/lib/fog/cloudstack/requests/compute/list_capacity.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists domains and provides detailed information for listed domains.
+ class Real
+ # Lists all the system wide capacities.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listDomains.html]
- def list_capacity(options={})
- options.merge!(
- 'command' => 'listCapacity'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listCapacity.html]
+ def list_capacity(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listCapacity')
+ else
+ options.merge!('command' => 'listCapacity')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_cisco_asa1000v_resources.rb b/lib/fog/cloudstack/requests/compute/list_cisco_asa1000v_resources.rb
new file mode 100644
index 0000000..e99bc62
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_cisco_asa1000v_resources.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists Cisco ASA 1000v appliances
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listCiscoAsa1000vResources.html]
+ def list_cisco_asa1000v_resources(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listCiscoAsa1000vResources')
+ else
+ options.merge!('command' => 'listCiscoAsa1000vResources')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_cisco_nexus_vsms.rb b/lib/fog/cloudstack/requests/compute/list_cisco_nexus_vsms.rb
new file mode 100644
index 0000000..3c3aaa8
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_cisco_nexus_vsms.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Retrieves a Cisco Nexus 1000v Virtual Switch Manager device associated with a Cluster
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listCiscoNexusVSMs.html]
+ def list_cisco_nexus_vsms(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listCiscoNexusVSMs')
+ else
+ options.merge!('command' => 'listCiscoNexusVSMs')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_cisco_vnmc_resources.rb b/lib/fog/cloudstack/requests/compute/list_cisco_vnmc_resources.rb
new file mode 100644
index 0000000..1d2217c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_cisco_vnmc_resources.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists Cisco VNMC controllers
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listCiscoVnmcResources.html]
+ def list_cisco_vnmc_resources(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listCiscoVnmcResources')
+ else
+ options.merge!('command' => 'listCiscoVnmcResources')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_clusters.rb b/lib/fog/cloudstack/requests/compute/list_clusters.rb
index cac96d4..438fc6c 100644
--- a/lib/fog/cloudstack/requests/compute/list_clusters.rb
+++ b/lib/fog/cloudstack/requests/compute/list_clusters.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists configurations and provides detailed account information for listed configurations.
+ class Real
+ # Lists clusters.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listAccounts.html]
- def list_clusters(options={})
- options.merge!(
- 'command' => 'listClusters'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listClusters.html]
+ def list_clusters(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listClusters')
+ else
+ options.merge!('command' => 'listClusters')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_conditions.rb b/lib/fog/cloudstack/requests/compute/list_conditions.rb
new file mode 100644
index 0000000..c9cfed1
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_conditions.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List Conditions for the specific user
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listConditions.html]
+ def list_conditions(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listConditions')
+ else
+ options.merge!('command' => 'listConditions')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_configurations.rb b/lib/fog/cloudstack/requests/compute/list_configurations.rb
index 204d0be..ef193f4 100644
--- a/lib/fog/cloudstack/requests/compute/list_configurations.rb
+++ b/lib/fog/cloudstack/requests/compute/list_configurations.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists configurations and provides detailed account information for listed configurations.
+ class Real
+ # Lists all configurations.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listAccounts.html]
- def list_configurations(options={})
- options.merge!(
- 'command' => 'listConfigurations'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listConfigurations.html]
+ def list_configurations(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listConfigurations')
+ else
+ options.merge!('command' => 'listConfigurations')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_counters.rb b/lib/fog/cloudstack/requests/compute/list_counters.rb
new file mode 100644
index 0000000..0c57e08
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_counters.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List the counters
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listCounters.html]
+ def list_counters(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listCounters')
+ else
+ options.merge!('command' => 'listCounters')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_dedicated_clusters.rb b/lib/fog/cloudstack/requests/compute/list_dedicated_clusters.rb
new file mode 100644
index 0000000..9d728b2
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_dedicated_clusters.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists dedicated clusters.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listDedicatedClusters.html]
+ def list_dedicated_clusters(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listDedicatedClusters')
+ else
+ options.merge!('command' => 'listDedicatedClusters')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_dedicated_guest_vlan_ranges.rb b/lib/fog/cloudstack/requests/compute/list_dedicated_guest_vlan_ranges.rb
new file mode 100644
index 0000000..2561ee3
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_dedicated_guest_vlan_ranges.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists dedicated guest vlan ranges
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listDedicatedGuestVlanRanges.html]
+ def list_dedicated_guest_vlan_ranges(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listDedicatedGuestVlanRanges')
+ else
+ options.merge!('command' => 'listDedicatedGuestVlanRanges')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_dedicated_hosts.rb b/lib/fog/cloudstack/requests/compute/list_dedicated_hosts.rb
new file mode 100644
index 0000000..7640579
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_dedicated_hosts.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists dedicated hosts.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listDedicatedHosts.html]
+ def list_dedicated_hosts(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listDedicatedHosts')
+ else
+ options.merge!('command' => 'listDedicatedHosts')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_dedicated_pods.rb b/lib/fog/cloudstack/requests/compute/list_dedicated_pods.rb
new file mode 100644
index 0000000..1a29237
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_dedicated_pods.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists dedicated pods.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listDedicatedPods.html]
+ def list_dedicated_pods(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listDedicatedPods')
+ else
+ options.merge!('command' => 'listDedicatedPods')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_dedicated_zones.rb b/lib/fog/cloudstack/requests/compute/list_dedicated_zones.rb
new file mode 100644
index 0000000..c0bb13f
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_dedicated_zones.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List dedicated zones.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listDedicatedZones.html]
+ def list_dedicated_zones(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listDedicatedZones')
+ else
+ options.merge!('command' => 'listDedicatedZones')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_deployment_planners.rb b/lib/fog/cloudstack/requests/compute/list_deployment_planners.rb
new file mode 100644
index 0000000..2e16755
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_deployment_planners.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists all DeploymentPlanners available.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listDeploymentPlanners.html]
+ def list_deployment_planners(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listDeploymentPlanners')
+ else
+ options.merge!('command' => 'listDeploymentPlanners')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_disk_offerings.rb b/lib/fog/cloudstack/requests/compute/list_disk_offerings.rb
index c003079..b53bc7e 100644
--- a/lib/fog/cloudstack/requests/compute/list_disk_offerings.rb
+++ b/lib/fog/cloudstack/requests/compute/list_disk_offerings.rb
@@ -1,21 +1,23 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Lists all available disk offerings.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listDiskOfferings.html]
- def list_disk_offerings(options={})
- options.merge!(
- 'command' => 'listDiskOfferings'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listDiskOfferings.html]
+ def list_disk_offerings(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listDiskOfferings')
+ else
+ options.merge!('command' => 'listDiskOfferings')
+ end
request(options)
end
-
end
-
+
class Mock
# TODO: add id, name filters and paging params
def list_disk_offerings(options={})
@@ -23,7 +25,8 @@ module Fog
{ "listdiskofferingsresponse" => { "count"=> disk_offerings.count, "diskoffering"=> disk_offerings.values } }
end
- end
+ end
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_domain_children.rb b/lib/fog/cloudstack/requests/compute/list_domain_children.rb
index 2cbe246..c841d2e 100644
--- a/lib/fog/cloudstack/requests/compute/list_domain_children.rb
+++ b/lib/fog/cloudstack/requests/compute/list_domain_children.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists all children domains belonging to a specified domain.
+ class Real
+ # Lists all children domains belonging to a specified domain
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listDomainChildren.html]
- def list_domain_children(options={})
- options.merge!(
- 'command' => 'listDomainChildren'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listDomainChildren.html]
+ def list_domain_children(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listDomainChildren')
+ else
+ options.merge!('command' => 'listDomainChildren')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_domains.rb b/lib/fog/cloudstack/requests/compute/list_domains.rb
index 683b1ee..7705b3e 100644
--- a/lib/fog/cloudstack/requests/compute/list_domains.rb
+++ b/lib/fog/cloudstack/requests/compute/list_domains.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists domains and provides detailed information for listed domains.
+ class Real
+ # Lists domains and provides detailed information for listed domains
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listDomains.html]
- def list_domains(options={})
- options.merge!(
- 'command' => 'listDomains'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listDomains.html]
+ def list_domains(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listDomains')
+ else
+ options.merge!('command' => 'listDomains')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_egress_firewall_rules.rb b/lib/fog/cloudstack/requests/compute/list_egress_firewall_rules.rb
new file mode 100644
index 0000000..dda1da1
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_egress_firewall_rules.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists all egress firewall rules for network id.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listEgressFirewallRules.html]
+ def list_egress_firewall_rules(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listEgressFirewallRules')
+ else
+ options.merge!('command' => 'listEgressFirewallRules')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_event_types.rb b/lib/fog/cloudstack/requests/compute/list_event_types.rb
new file mode 100644
index 0000000..a27942c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_event_types.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List Event Types
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listEventTypes.html]
+ def list_event_types(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listEventTypes')
+ else
+ options.merge!('command' => 'listEventTypes')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_events.rb b/lib/fog/cloudstack/requests/compute/list_events.rb
index 7843880..1521e1c 100644
--- a/lib/fog/cloudstack/requests/compute/list_events.rb
+++ b/lib/fog/cloudstack/requests/compute/list_events.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# A command to list events.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listEvents.html]
- def list_events(options={})
- options.merge!(
- 'command' => 'listEvents'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listEvents.html]
+ def list_events(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listEvents')
+ else
+ options.merge!('command' => 'listEvents')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_external_firewalls.rb b/lib/fog/cloudstack/requests/compute/list_external_firewalls.rb
index b188287..5aa68a0 100644
--- a/lib/fog/cloudstack/requests/compute/list_external_firewalls.rb
+++ b/lib/fog/cloudstack/requests/compute/list_external_firewalls.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# List external firewall appliances.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listExternalFirewalls.html]
- def list_external_firewalls(options={})
- options.merge!(
- 'command' => 'listExternalFirewalls'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listExternalFirewalls.html]
+ def list_external_firewalls(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listExternalFirewalls')
+ else
+ options.merge!('command' => 'listExternalFirewalls',
+ 'zoneid' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_external_load_balancers.rb b/lib/fog/cloudstack/requests/compute/list_external_load_balancers.rb
index 1e2cc12..6346b30 100644
--- a/lib/fog/cloudstack/requests/compute/list_external_load_balancers.rb
+++ b/lib/fog/cloudstack/requests/compute/list_external_load_balancers.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # List external load balancer appliances.
+ class Real
+ # Lists F5 external load balancer appliances added in a zone.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listExternalLoadBalancers.html]
- def list_external_load_balancers(options={})
- options.merge!(
- 'command' => 'listExternalLoadBalancers'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listExternalLoadBalancers.html]
+ def list_external_load_balancers(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listExternalLoadBalancers')
+ else
+ options.merge!('command' => 'listExternalLoadBalancers')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_f5_load_balancer_networks.rb b/lib/fog/cloudstack/requests/compute/list_f5_load_balancer_networks.rb
new file mode 100644
index 0000000..af355c3
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_f5_load_balancer_networks.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # lists network that are using a F5 load balancer device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listF5LoadBalancerNetworks.html]
+ def list_f5_load_balancer_networks(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listF5LoadBalancerNetworks')
+ else
+ options.merge!('command' => 'listF5LoadBalancerNetworks',
+ 'lbdeviceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_f5_load_balancers.rb b/lib/fog/cloudstack/requests/compute/list_f5_load_balancers.rb
new file mode 100644
index 0000000..bf6c708
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_f5_load_balancers.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # lists F5 load balancer devices
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listF5LoadBalancers.html]
+ def list_f5_load_balancers(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listF5LoadBalancers')
+ else
+ options.merge!('command' => 'listF5LoadBalancers')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_firewall_rules.rb b/lib/fog/cloudstack/requests/compute/list_firewall_rules.rb
index c1459b1..56f9324 100644
--- a/lib/fog/cloudstack/requests/compute/list_firewall_rules.rb
+++ b/lib/fog/cloudstack/requests/compute/list_firewall_rules.rb
@@ -1,15 +1,24 @@
module Fog
module Compute
class Cloudstack
+
class Real
- def list_firewall_rules(options={})
- options.merge!(
- 'command' => 'listFirewallRules'
- )
+ # Lists all firewall rules for an IP address.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listFirewallRules.html]
+ def list_firewall_rules(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listFirewallRules')
+ else
+ options.merge!('command' => 'listFirewallRules')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_global_load_balancer_rules.rb b/lib/fog/cloudstack/requests/compute/list_global_load_balancer_rules.rb
new file mode 100644
index 0000000..0ec7fdf
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_global_load_balancer_rules.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists load balancer rules.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listGlobalLoadBalancerRules.html]
+ def list_global_load_balancer_rules(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listGlobalLoadBalancerRules')
+ else
+ options.merge!('command' => 'listGlobalLoadBalancerRules')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_guest_os_mapping.rb b/lib/fog/cloudstack/requests/compute/list_guest_os_mapping.rb
new file mode 100644
index 0000000..c51eecc
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_guest_os_mapping.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists all available OS mappings for given hypervisor
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listGuestOsMapping.html]
+ def list_guest_os_mapping(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listGuestOsMapping')
+ else
+ options.merge!('command' => 'listGuestOsMapping')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_hosts.rb b/lib/fog/cloudstack/requests/compute/list_hosts.rb
index 5948893..6782fa7 100644
--- a/lib/fog/cloudstack/requests/compute/list_hosts.rb
+++ b/lib/fog/cloudstack/requests/compute/list_hosts.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Lists hosts.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listHosts.html]
- def list_hosts(options={})
- options.merge!(
- 'command' => 'listHosts'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listHosts.html]
+ def list_hosts(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listHosts')
+ else
+ options.merge!('command' => 'listHosts')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_hypervisor_capabilities.rb b/lib/fog/cloudstack/requests/compute/list_hypervisor_capabilities.rb
new file mode 100644
index 0000000..b2d1cfd
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_hypervisor_capabilities.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists all hypervisor capabilities.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listHypervisorCapabilities.html]
+ def list_hypervisor_capabilities(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listHypervisorCapabilities')
+ else
+ options.merge!('command' => 'listHypervisorCapabilities')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_hypervisors.rb b/lib/fog/cloudstack/requests/compute/list_hypervisors.rb
index 8244d4d..d4a4c86 100644
--- a/lib/fog/cloudstack/requests/compute/list_hypervisors.rb
+++ b/lib/fog/cloudstack/requests/compute/list_hypervisors.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists hypervisors.
+ class Real
+ # List hypervisors
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listHypervisors.html]
- def list_hypervisors(options={})
- options.merge!(
- 'command' => 'listHypervisors'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listHypervisors.html]
+ def list_hypervisors(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listHypervisors')
+ else
+ options.merge!('command' => 'listHypervisors')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_image_stores.rb b/lib/fog/cloudstack/requests/compute/list_image_stores.rb
new file mode 100644
index 0000000..a096c94
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_image_stores.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists image stores.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listImageStores.html]
+ def list_image_stores(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listImageStores')
+ else
+ options.merge!('command' => 'listImageStores')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_instance_groups.rb b/lib/fog/cloudstack/requests/compute/list_instance_groups.rb
index 1cc417c..a01cfaf 100644
--- a/lib/fog/cloudstack/requests/compute/list_instance_groups.rb
+++ b/lib/fog/cloudstack/requests/compute/list_instance_groups.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists VM groups.
+ class Real
+ # Lists vm groups
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listInstanceGroups.html]
- def list_instance_groups(options={})
- options.merge!(
- 'command' => 'listInstanceGroups'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listInstanceGroups.html]
+ def list_instance_groups(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listInstanceGroups')
+ else
+ options.merge!('command' => 'listInstanceGroups')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_internal_load_balancer_elements.rb b/lib/fog/cloudstack/requests/compute/list_internal_load_balancer_elements.rb
new file mode 100644
index 0000000..4f811f7
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_internal_load_balancer_elements.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists all available Internal Load Balancer elements.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listInternalLoadBalancerElements.html]
+ def list_internal_load_balancer_elements(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listInternalLoadBalancerElements')
+ else
+ options.merge!('command' => 'listInternalLoadBalancerElements')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_internal_load_balancer_vms.rb b/lib/fog/cloudstack/requests/compute/list_internal_load_balancer_vms.rb
new file mode 100644
index 0000000..38ab038
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_internal_load_balancer_vms.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List internal LB VMs.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listInternalLoadBalancerVMs.html]
+ def list_internal_load_balancer_vms(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listInternalLoadBalancerVMs')
+ else
+ options.merge!('command' => 'listInternalLoadBalancerVMs')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_ip_forwarding_rules.rb b/lib/fog/cloudstack/requests/compute/list_ip_forwarding_rules.rb
new file mode 100644
index 0000000..7c5d5f0
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_ip_forwarding_rules.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List the ip forwarding rules
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listIpForwardingRules.html]
+ def list_ip_forwarding_rules(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listIpForwardingRules')
+ else
+ options.merge!('command' => 'listIpForwardingRules')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_iso_permissions.rb b/lib/fog/cloudstack/requests/compute/list_iso_permissions.rb
new file mode 100644
index 0000000..6c9f737
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_iso_permissions.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List iso visibility and all accounts that have permissions to view this iso.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listIsoPermissions.html]
+ def list_iso_permissions(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listIsoPermissions')
+ else
+ options.merge!('command' => 'listIsoPermissions',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_isos.rb b/lib/fog/cloudstack/requests/compute/list_isos.rb
index 839f71c..8239146 100644
--- a/lib/fog/cloudstack/requests/compute/list_isos.rb
+++ b/lib/fog/cloudstack/requests/compute/list_isos.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Lists all available ISO files.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listIsos.html]
- def list_isos(options={})
- options.merge!(
- 'command' => 'listIsos'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listIsos.html]
+ def list_isos(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listIsos')
+ else
+ options.merge!('command' => 'listIsos')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_lb_health_check_policies.rb b/lib/fog/cloudstack/requests/compute/list_lb_health_check_policies.rb
new file mode 100644
index 0000000..af9db8e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_lb_health_check_policies.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists load balancer HealthCheck policies.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listLBHealthCheckPolicies.html]
+ def list_lb_health_check_policies(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listLBHealthCheckPolicies')
+ else
+ options.merge!('command' => 'listLBHealthCheckPolicies')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_lb_stickiness_policies.rb b/lib/fog/cloudstack/requests/compute/list_lb_stickiness_policies.rb
new file mode 100644
index 0000000..7e1ab76
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_lb_stickiness_policies.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists LBStickiness policies.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listLBStickinessPolicies.html]
+ def list_lb_stickiness_policies(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listLBStickinessPolicies')
+ else
+ options.merge!('command' => 'listLBStickinessPolicies')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_ldap_configurations.rb b/lib/fog/cloudstack/requests/compute/list_ldap_configurations.rb
new file mode 100644
index 0000000..8263bf3
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_ldap_configurations.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists all LDAP configurations
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listLdapConfigurations.html]
+ def list_ldap_configurations(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listLdapConfigurations')
+ else
+ options.merge!('command' => 'listLdapConfigurations')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_ldap_users.rb b/lib/fog/cloudstack/requests/compute/list_ldap_users.rb
new file mode 100644
index 0000000..d4faaa4
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_ldap_users.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists all LDAP Users
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listLdapUsers.html]
+ def list_ldap_users(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listLdapUsers')
+ else
+ options.merge!('command' => 'listLdapUsers')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_load_balancer_rule_instances.rb b/lib/fog/cloudstack/requests/compute/list_load_balancer_rule_instances.rb
index 9cc2124..17ca2f9 100644
--- a/lib/fog/cloudstack/requests/compute/list_load_balancer_rule_instances.rb
+++ b/lib/fog/cloudstack/requests/compute/list_load_balancer_rule_instances.rb
@@ -1,23 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists resource limits.
+ class Real
+ # List all virtual machine instances that are assigned to a load balancer rule.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.12/global_admin/listLoadBalancerRuleInstances.html]
- def list_load_balancer_rule_instances(load_balancer_rule_id,options={})
- options.merge!(
- 'command' => 'listLoadBalancerRuleInstances',
- 'id' => load_balancer_rule_id
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listLoadBalancerRuleInstances.html]
+ def list_load_balancer_rule_instances(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listLoadBalancerRuleInstances')
+ else
+ options.merge!('command' => 'listLoadBalancerRuleInstances',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
-
diff --git a/lib/fog/cloudstack/requests/compute/list_load_balancer_rules.rb b/lib/fog/cloudstack/requests/compute/list_load_balancer_rules.rb
index a8b8b4d..c9c3d56 100644
--- a/lib/fog/cloudstack/requests/compute/list_load_balancer_rules.rb
+++ b/lib/fog/cloudstack/requests/compute/list_load_balancer_rules.rb
@@ -1,22 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists resource limits.
+ class Real
+ # Lists load balancer rules.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listLoadBalancerRules.html]
- def list_load_balancer_rules(options={})
- options.merge!(
- 'command' => 'listLoadBalancerRules'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listLoadBalancerRules.html]
+ def list_load_balancer_rules(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listLoadBalancerRules')
+ else
+ options.merge!('command' => 'listLoadBalancerRules')
+ end
request(options)
end
-
end
+
end
end
end
-
diff --git a/lib/fog/cloudstack/requests/compute/list_load_balancers.rb b/lib/fog/cloudstack/requests/compute/list_load_balancers.rb
new file mode 100644
index 0000000..070ca78
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_load_balancers.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists Load Balancers
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listLoadBalancers.html]
+ def list_load_balancers(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listLoadBalancers')
+ else
+ options.merge!('command' => 'listLoadBalancers')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_luns_on_filer.rb b/lib/fog/cloudstack/requests/compute/list_luns_on_filer.rb
new file mode 100644
index 0000000..d139b7e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_luns_on_filer.rb
@@ -0,0 +1,21 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List LUN
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/listLunsOnFiler.html]
+ def list_luns_on_filer(poolname, options={})
+ options.merge!(
+ 'command' => 'listLunsOnFiler',
+ 'poolname' => poolname
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_netscaler_load_balancer_networks.rb b/lib/fog/cloudstack/requests/compute/list_netscaler_load_balancer_networks.rb
new file mode 100644
index 0000000..ab35a85
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_netscaler_load_balancer_networks.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # lists network that are using a netscaler load balancer device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listNetscalerLoadBalancerNetworks.html]
+ def list_netscaler_load_balancer_networks(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listNetscalerLoadBalancerNetworks')
+ else
+ options.merge!('command' => 'listNetscalerLoadBalancerNetworks',
+ 'lbdeviceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_netscaler_load_balancers.rb b/lib/fog/cloudstack/requests/compute/list_netscaler_load_balancers.rb
new file mode 100644
index 0000000..e8c297c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_netscaler_load_balancers.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # lists netscaler load balancer devices
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listNetscalerLoadBalancers.html]
+ def list_netscaler_load_balancers(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listNetscalerLoadBalancers')
+ else
+ options.merge!('command' => 'listNetscalerLoadBalancers')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_network_acl_lists.rb b/lib/fog/cloudstack/requests/compute/list_network_acl_lists.rb
new file mode 100644
index 0000000..73a7ca9
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_network_acl_lists.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists all network ACLs
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listNetworkACLLists.html]
+ def list_network_acl_lists(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listNetworkACLLists')
+ else
+ options.merge!('command' => 'listNetworkACLLists')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_network_acls.rb b/lib/fog/cloudstack/requests/compute/list_network_acls.rb
new file mode 100644
index 0000000..1df91a7
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_network_acls.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists all network ACL items
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listNetworkACLs.html]
+ def list_network_acls(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listNetworkACLs')
+ else
+ options.merge!('command' => 'listNetworkACLs')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_network_device.rb b/lib/fog/cloudstack/requests/compute/list_network_device.rb
new file mode 100644
index 0000000..50ba77b
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_network_device.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List network devices
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listNetworkDevice.html]
+ def list_network_device(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listNetworkDevice')
+ else
+ options.merge!('command' => 'listNetworkDevice')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_network_isolation_methods.rb b/lib/fog/cloudstack/requests/compute/list_network_isolation_methods.rb
new file mode 100644
index 0000000..1e91be0
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_network_isolation_methods.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists supported methods of network isolation
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listNetworkIsolationMethods.html]
+ def list_network_isolation_methods(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listNetworkIsolationMethods')
+ else
+ options.merge!('command' => 'listNetworkIsolationMethods')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_network_offerings.rb b/lib/fog/cloudstack/requests/compute/list_network_offerings.rb
index 5e86dfb..9a6101e 100644
--- a/lib/fog/cloudstack/requests/compute/list_network_offerings.rb
+++ b/lib/fog/cloudstack/requests/compute/list_network_offerings.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Lists all available network offerings.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listNetworkOfferings.html]
- def list_network_offerings(options={})
- options.merge!(
- 'command' => 'listNetworkOfferings'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listNetworkOfferings.html]
+ def list_network_offerings(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listNetworkOfferings')
+ else
+ options.merge!('command' => 'listNetworkOfferings')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_network_service_providers.rb b/lib/fog/cloudstack/requests/compute/list_network_service_providers.rb
new file mode 100644
index 0000000..d6bf4ff
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_network_service_providers.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists network serviceproviders for a given physical network.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listNetworkServiceProviders.html]
+ def list_network_service_providers(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listNetworkServiceProviders')
+ else
+ options.merge!('command' => 'listNetworkServiceProviders')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_networks.rb b/lib/fog/cloudstack/requests/compute/list_networks.rb
index bfb6b7c..930644d 100644
--- a/lib/fog/cloudstack/requests/compute/list_networks.rb
+++ b/lib/fog/cloudstack/requests/compute/list_networks.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Lists all available networks.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listNetworks.html]
- def list_networks(options={})
- options.merge!(
- 'command' => 'listNetworks'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listNetworks.html]
+ def list_networks(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listNetworks')
+ else
+ options.merge!('command' => 'listNetworks')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_nicira_nvp_device_networks.rb b/lib/fog/cloudstack/requests/compute/list_nicira_nvp_device_networks.rb
new file mode 100644
index 0000000..d7b27a3
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_nicira_nvp_device_networks.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # lists network that are using a nicira nvp device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listNiciraNvpDeviceNetworks.html]
+ def list_nicira_nvp_device_networks(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listNiciraNvpDeviceNetworks')
+ else
+ options.merge!('command' => 'listNiciraNvpDeviceNetworks',
+ 'nvpdeviceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_nicira_nvp_devices.rb b/lib/fog/cloudstack/requests/compute/list_nicira_nvp_devices.rb
new file mode 100644
index 0000000..b1d6347
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_nicira_nvp_devices.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists Nicira NVP devices
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listNiciraNvpDevices.html]
+ def list_nicira_nvp_devices(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listNiciraNvpDevices')
+ else
+ options.merge!('command' => 'listNiciraNvpDevices')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_nics.rb b/lib/fog/cloudstack/requests/compute/list_nics.rb
new file mode 100644
index 0000000..d942365
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_nics.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # list the vm nics IP to NIC
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listNics.html]
+ def list_nics(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listNics')
+ else
+ options.merge!('command' => 'listNics',
+ 'virtualmachineid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_open_daylight_controllers.rb b/lib/fog/cloudstack/requests/compute/list_open_daylight_controllers.rb
new file mode 100644
index 0000000..794b073
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_open_daylight_controllers.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists OpenDyalight controllers
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listOpenDaylightControllers.html]
+ def list_open_daylight_controllers(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listOpenDaylightControllers')
+ else
+ options.merge!('command' => 'listOpenDaylightControllers')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_os_categories.rb b/lib/fog/cloudstack/requests/compute/list_os_categories.rb
index 4f2be38..582e7b6 100644
--- a/lib/fog/cloudstack/requests/compute/list_os_categories.rb
+++ b/lib/fog/cloudstack/requests/compute/list_os_categories.rb
@@ -1,22 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Lists all supported OS categories for this cloud.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listOsCategories.html]
- def list_os_categories(options={})
- options.merge!(
- 'command' => 'listOsCategories'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listOsCategories.html]
+ def list_os_categories(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listOsCategories')
+ else
+ options.merge!('command' => 'listOsCategories')
+ end
request(options)
end
-
end
+
end
end
end
-
diff --git a/lib/fog/cloudstack/requests/compute/list_os_types.rb b/lib/fog/cloudstack/requests/compute/list_os_types.rb
index 4abcaa7..d918d89 100644
--- a/lib/fog/cloudstack/requests/compute/list_os_types.rb
+++ b/lib/fog/cloudstack/requests/compute/list_os_types.rb
@@ -1,21 +1,23 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Lists all supported OS types for this cloud.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listOsTypes.html]
- def list_os_types(options={})
- options.merge!(
- 'command' => 'listOsTypes'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listOsTypes.html]
+ def list_os_types(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listOsTypes')
+ else
+ options.merge!('command' => 'listOsTypes')
+ end
request(options)
end
-
end
-
+
class Mock
# TODO: add id, category_id filters and paging params
def list_os_types(options={})
@@ -23,9 +25,8 @@ module Fog
{ "listostypesresponse" => { "count"=> os_types.count, "ostype"=> os_types.values } }
end
- end
+ end
end
end
end
-
diff --git a/lib/fog/cloudstack/requests/compute/list_ovs_elements.rb b/lib/fog/cloudstack/requests/compute/list_ovs_elements.rb
new file mode 100644
index 0000000..b75eb2a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_ovs_elements.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists all available ovs elements.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listOvsElements.html]
+ def list_ovs_elements(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listOvsElements')
+ else
+ options.merge!('command' => 'listOvsElements')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_palo_alto_firewall_networks.rb b/lib/fog/cloudstack/requests/compute/list_palo_alto_firewall_networks.rb
new file mode 100644
index 0000000..6399758
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_palo_alto_firewall_networks.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # lists network that are using Palo Alto firewall device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listPaloAltoFirewallNetworks.html]
+ def list_palo_alto_firewall_networks(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listPaloAltoFirewallNetworks')
+ else
+ options.merge!('command' => 'listPaloAltoFirewallNetworks',
+ 'lbdeviceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_palo_alto_firewalls.rb b/lib/fog/cloudstack/requests/compute/list_palo_alto_firewalls.rb
new file mode 100644
index 0000000..74c4648
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_palo_alto_firewalls.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # lists Palo Alto firewall devices in a physical network
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listPaloAltoFirewalls.html]
+ def list_palo_alto_firewalls(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listPaloAltoFirewalls')
+ else
+ options.merge!('command' => 'listPaloAltoFirewalls')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_physical_networks.rb b/lib/fog/cloudstack/requests/compute/list_physical_networks.rb
new file mode 100644
index 0000000..c1ac9a7
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_physical_networks.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists physical networks
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listPhysicalNetworks.html]
+ def list_physical_networks(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listPhysicalNetworks')
+ else
+ options.merge!('command' => 'listPhysicalNetworks')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_pods.rb b/lib/fog/cloudstack/requests/compute/list_pods.rb
index 102e7d7..cb6f6ea 100644
--- a/lib/fog/cloudstack/requests/compute/list_pods.rb
+++ b/lib/fog/cloudstack/requests/compute/list_pods.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Lists all Pods.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listPods.html]
- def list_pods(options={})
- options.merge!(
- 'command' => 'listPods'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listPods.html]
+ def list_pods(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listPods')
+ else
+ options.merge!('command' => 'listPods')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_pools.rb b/lib/fog/cloudstack/requests/compute/list_pools.rb
new file mode 100644
index 0000000..e75dd53
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_pools.rb
@@ -0,0 +1,20 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List Pool
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/listPools.html]
+ def list_pools(options={})
+ options.merge!(
+ 'command' => 'listPools'
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_port_forwarding_rules.rb b/lib/fog/cloudstack/requests/compute/list_port_forwarding_rules.rb
index 5bdde17..c83604d 100644
--- a/lib/fog/cloudstack/requests/compute/list_port_forwarding_rules.rb
+++ b/lib/fog/cloudstack/requests/compute/list_port_forwarding_rules.rb
@@ -1,22 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists resource limits.
+ class Real
+ # Lists all port forwarding rules for an IP address.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listPortForwardingRules.html]
- def list_port_forwarding_rules(options={})
- options.merge!(
- 'command' => 'listPortForwardingRules'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listPortForwardingRules.html]
+ def list_port_forwarding_rules(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listPortForwardingRules')
+ else
+ options.merge!('command' => 'listPortForwardingRules')
+ end
request(options)
end
-
end
+
end
end
end
-
diff --git a/lib/fog/cloudstack/requests/compute/list_portable_ip_ranges.rb b/lib/fog/cloudstack/requests/compute/list_portable_ip_ranges.rb
new file mode 100644
index 0000000..79bda50
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_portable_ip_ranges.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # list portable IP ranges
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listPortableIpRanges.html]
+ def list_portable_ip_ranges(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listPortableIpRanges')
+ else
+ options.merge!('command' => 'listPortableIpRanges')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_private_gateways.rb b/lib/fog/cloudstack/requests/compute/list_private_gateways.rb
new file mode 100644
index 0000000..8a94d61
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_private_gateways.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List private gateways
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listPrivateGateways.html]
+ def list_private_gateways(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listPrivateGateways')
+ else
+ options.merge!('command' => 'listPrivateGateways')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_project_accounts.rb b/lib/fog/cloudstack/requests/compute/list_project_accounts.rb
new file mode 100644
index 0000000..3be2e67
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_project_accounts.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists project's accounts
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listProjectAccounts.html]
+ def list_project_accounts(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listProjectAccounts')
+ else
+ options.merge!('command' => 'listProjectAccounts',
+ 'projectid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_project_invitations.rb b/lib/fog/cloudstack/requests/compute/list_project_invitations.rb
new file mode 100644
index 0000000..11a7e37
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_project_invitations.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists projects and provides detailed information for listed projects
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listProjectInvitations.html]
+ def list_project_invitations(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listProjectInvitations')
+ else
+ options.merge!('command' => 'listProjectInvitations')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_projects.rb b/lib/fog/cloudstack/requests/compute/list_projects.rb
new file mode 100644
index 0000000..8cb1f5f
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_projects.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists projects and provides detailed information for listed projects
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listProjects.html]
+ def list_projects(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listProjects')
+ else
+ options.merge!('command' => 'listProjects')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_public_ip_addresses.rb b/lib/fog/cloudstack/requests/compute/list_public_ip_addresses.rb
index 18ebe99..4fc0f4b 100644
--- a/lib/fog/cloudstack/requests/compute/list_public_ip_addresses.rb
+++ b/lib/fog/cloudstack/requests/compute/list_public_ip_addresses.rb
@@ -1,22 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists resource limits.
+ class Real
+ # Lists all public ip addresses
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listPublicIpAddresses.html]
- def list_public_ip_addresses(options={})
- options.merge!(
- 'command' => 'listPublicIpAddresses'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listPublicIpAddresses.html]
+ def list_public_ip_addresses(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listPublicIpAddresses')
+ else
+ options.merge!('command' => 'listPublicIpAddresses')
+ end
request(options)
end
-
end
+
end
end
end
-
diff --git a/lib/fog/cloudstack/requests/compute/list_regions.rb b/lib/fog/cloudstack/requests/compute/list_regions.rb
new file mode 100644
index 0000000..fae5379
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_regions.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists Regions
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listRegions.html]
+ def list_regions(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listRegions')
+ else
+ options.merge!('command' => 'listRegions')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_remote_access_vpns.rb b/lib/fog/cloudstack/requests/compute/list_remote_access_vpns.rb
new file mode 100644
index 0000000..5b8770c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_remote_access_vpns.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists remote access vpns
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listRemoteAccessVpns.html]
+ def list_remote_access_vpns(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listRemoteAccessVpns')
+ else
+ options.merge!('command' => 'listRemoteAccessVpns')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_resource_details.rb b/lib/fog/cloudstack/requests/compute/list_resource_details.rb
new file mode 100644
index 0000000..7c0176f
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_resource_details.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List resource detail(s)
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listResourceDetails.html]
+ def list_resource_details(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listResourceDetails')
+ else
+ options.merge!('command' => 'listResourceDetails',
+ 'resourcetype' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_resource_limits.rb b/lib/fog/cloudstack/requests/compute/list_resource_limits.rb
index 94c873d..9d82404 100644
--- a/lib/fog/cloudstack/requests/compute/list_resource_limits.rb
+++ b/lib/fog/cloudstack/requests/compute/list_resource_limits.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Lists resource limits.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listResourceLimits.html]
- def list_resource_limits(options={})
- options.merge!(
- 'command' => 'listResourceLimits'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listResourceLimits.html]
+ def list_resource_limits(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listResourceLimits')
+ else
+ options.merge!('command' => 'listResourceLimits')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_routers.rb b/lib/fog/cloudstack/requests/compute/list_routers.rb
new file mode 100644
index 0000000..1bf3ad6
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_routers.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List routers.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listRouters.html]
+ def list_routers(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listRouters')
+ else
+ options.merge!('command' => 'listRouters')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_s3s.rb b/lib/fog/cloudstack/requests/compute/list_s3s.rb
new file mode 100644
index 0000000..9f73511
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_s3s.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists S3s
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listS3s.html]
+ def list_s3s(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listS3s')
+ else
+ options.merge!('command' => 'listS3s')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_secondary_staging_stores.rb b/lib/fog/cloudstack/requests/compute/list_secondary_staging_stores.rb
new file mode 100644
index 0000000..daeda57
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_secondary_staging_stores.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists secondary staging stores.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listSecondaryStagingStores.html]
+ def list_secondary_staging_stores(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listSecondaryStagingStores')
+ else
+ options.merge!('command' => 'listSecondaryStagingStores')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_security_groups.rb b/lib/fog/cloudstack/requests/compute/list_security_groups.rb
index 5a14110..8a8951c 100644
--- a/lib/fog/cloudstack/requests/compute/list_security_groups.rb
+++ b/lib/fog/cloudstack/requests/compute/list_security_groups.rb
@@ -1,18 +1,23 @@
module Fog
module Compute
class Cloudstack
- class Real
-
- def list_security_groups(options={})
- options.merge!(
- 'command' => 'listSecurityGroups'
- )
+ class Real
+ # Lists security groups
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listSecurityGroups.html]
+ def list_security_groups(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listSecurityGroups')
+ else
+ options.merge!('command' => 'listSecurityGroups')
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
def list_security_groups(options={})
security_groups = []
@@ -32,7 +37,8 @@ module Fog
}
}
end
- end
+ end
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_service_offerings.rb b/lib/fog/cloudstack/requests/compute/list_service_offerings.rb
index e138aca..03d45f5 100644
--- a/lib/fog/cloudstack/requests/compute/list_service_offerings.rb
+++ b/lib/fog/cloudstack/requests/compute/list_service_offerings.rb
@@ -1,21 +1,23 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Lists all available service offerings.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listServiceOfferings.html]
- def list_service_offerings(options={})
- options.merge!(
- 'command' => 'listServiceOfferings'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listServiceOfferings.html]
+ def list_service_offerings(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listServiceOfferings')
+ else
+ options.merge!('command' => 'listServiceOfferings')
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
def list_service_offerings(options={})
@@ -36,7 +38,8 @@ module Fog
}
}
end
- end # Mock
- end # Cloudstack
- end # Compute
-end # Fog
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_snapshot_policies.rb b/lib/fog/cloudstack/requests/compute/list_snapshot_policies.rb
index d9ef1bf..5f7741e 100644
--- a/lib/fog/cloudstack/requests/compute/list_snapshot_policies.rb
+++ b/lib/fog/cloudstack/requests/compute/list_snapshot_policies.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists domains and provides detailed information for listed domains.
+ class Real
+ # Lists snapshot policies.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listDomains.html]
- def list_snapshot_policies(options={})
- options.merge!(
- 'command' => 'listSnapshotPolicies'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listSnapshotPolicies.html]
+ def list_snapshot_policies(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listSnapshotPolicies')
+ else
+ options.merge!('command' => 'listSnapshotPolicies',
+ 'volumeid' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_snapshots.rb b/lib/fog/cloudstack/requests/compute/list_snapshots.rb
index df46513..7410de6 100644
--- a/lib/fog/cloudstack/requests/compute/list_snapshots.rb
+++ b/lib/fog/cloudstack/requests/compute/list_snapshots.rb
@@ -1,23 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Lists all available snapshots for the account.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listSnapshots.html]
- def list_snapshots(options={})
- options.merge!(
- 'command' => 'listSnapshots'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listSnapshots.html]
+ def list_snapshots(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listSnapshots')
+ else
+ options.merge!('command' => 'listSnapshots')
+ end
request(options)
end
-
end
-
+
class Mock
-
def list_snapshots(options={})
snapshot_id = options.delete('id')
if snapshot_id
@@ -33,9 +34,8 @@ module Fog
}
}
end
-
- end
-
+ end
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_srx_firewall_networks.rb b/lib/fog/cloudstack/requests/compute/list_srx_firewall_networks.rb
new file mode 100644
index 0000000..70d3c96
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_srx_firewall_networks.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # lists network that are using SRX firewall device
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listSrxFirewallNetworks.html]
+ def list_srx_firewall_networks(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listSrxFirewallNetworks')
+ else
+ options.merge!('command' => 'listSrxFirewallNetworks',
+ 'lbdeviceid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_srx_firewalls.rb b/lib/fog/cloudstack/requests/compute/list_srx_firewalls.rb
new file mode 100644
index 0000000..0a4fdfc
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_srx_firewalls.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # lists SRX firewall devices in a physical network
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listSrxFirewalls.html]
+ def list_srx_firewalls(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listSrxFirewalls')
+ else
+ options.merge!('command' => 'listSrxFirewalls')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_ssh_key_pairs.rb b/lib/fog/cloudstack/requests/compute/list_ssh_key_pairs.rb
index 9b4eb20..6573af3 100644
--- a/lib/fog/cloudstack/requests/compute/list_ssh_key_pairs.rb
+++ b/lib/fog/cloudstack/requests/compute/list_ssh_key_pairs.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # List registered keypairs.
+ class Real
+ # List registered keypairs
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listSSHKeyPairs.html]
- def list_ssh_key_pairs(options={})
- options.merge!(
- 'command' => 'listSSHKeyPairs'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listSSHKeyPairs.html]
+ def list_ssh_key_pairs(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listSSHKeyPairs')
+ else
+ options.merge!('command' => 'listSSHKeyPairs')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_ssl_certs.rb b/lib/fog/cloudstack/requests/compute/list_ssl_certs.rb
new file mode 100644
index 0000000..c231a11
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_ssl_certs.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists SSL certificates
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listSslCerts.html]
+ def list_ssl_certs(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listSslCerts')
+ else
+ options.merge!('command' => 'listSslCerts')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_static_routes.rb b/lib/fog/cloudstack/requests/compute/list_static_routes.rb
new file mode 100644
index 0000000..f85b467
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_static_routes.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists all static routes
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listStaticRoutes.html]
+ def list_static_routes(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listStaticRoutes')
+ else
+ options.merge!('command' => 'listStaticRoutes')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_storage_network_ip_range.rb b/lib/fog/cloudstack/requests/compute/list_storage_network_ip_range.rb
new file mode 100644
index 0000000..194994a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_storage_network_ip_range.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List a storage network IP range.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listStorageNetworkIpRange.html]
+ def list_storage_network_ip_range(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listStorageNetworkIpRange')
+ else
+ options.merge!('command' => 'listStorageNetworkIpRange')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_storage_pools.rb b/lib/fog/cloudstack/requests/compute/list_storage_pools.rb
index e41b5fe..48b00e8 100644
--- a/lib/fog/cloudstack/requests/compute/list_storage_pools.rb
+++ b/lib/fog/cloudstack/requests/compute/list_storage_pools.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Lists storage pools.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listStoragePools.html]
- def list_storage_pools(options={})
- options.merge!(
- 'command' => 'listStoragePools'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listStoragePools.html]
+ def list_storage_pools(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listStoragePools')
+ else
+ options.merge!('command' => 'listStoragePools')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_storage_providers.rb b/lib/fog/cloudstack/requests/compute/list_storage_providers.rb
new file mode 100644
index 0000000..9403bd9
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_storage_providers.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists storage providers.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listStorageProviders.html]
+ def list_storage_providers(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listStorageProviders')
+ else
+ options.merge!('command' => 'listStorageProviders',
+ 'type' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_supported_network_services.rb b/lib/fog/cloudstack/requests/compute/list_supported_network_services.rb
new file mode 100644
index 0000000..3b5d14e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_supported_network_services.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists all network services provided by CloudStack or for the given Provider.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listSupportedNetworkServices.html]
+ def list_supported_network_services(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listSupportedNetworkServices')
+ else
+ options.merge!('command' => 'listSupportedNetworkServices')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_swifts.rb b/lib/fog/cloudstack/requests/compute/list_swifts.rb
new file mode 100644
index 0000000..de8c72b
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_swifts.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List Swift.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listSwifts.html]
+ def list_swifts(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listSwifts')
+ else
+ options.merge!('command' => 'listSwifts')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_system_vms.rb b/lib/fog/cloudstack/requests/compute/list_system_vms.rb
new file mode 100644
index 0000000..40e2119
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_system_vms.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List system virtual machines.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listSystemVms.html]
+ def list_system_vms(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listSystemVms')
+ else
+ options.merge!('command' => 'listSystemVms')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_tags.rb b/lib/fog/cloudstack/requests/compute/list_tags.rb
new file mode 100644
index 0000000..5cc22d3
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_tags.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List resource tag(s)
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listTags.html]
+ def list_tags(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listTags')
+ else
+ options.merge!('command' => 'listTags')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_template_permissions.rb b/lib/fog/cloudstack/requests/compute/list_template_permissions.rb
new file mode 100644
index 0000000..81aea59
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_template_permissions.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List template visibility and all accounts that have permissions to view this template.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listTemplatePermissions.html]
+ def list_template_permissions(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listTemplatePermissions')
+ else
+ options.merge!('command' => 'listTemplatePermissions',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_templates.rb b/lib/fog/cloudstack/requests/compute/list_templates.rb
index 09020f5..9e3d8a7 100644
--- a/lib/fog/cloudstack/requests/compute/list_templates.rb
+++ b/lib/fog/cloudstack/requests/compute/list_templates.rb
@@ -1,23 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# List all public, private, and privileged templates.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listTemplates.html]
- def list_templates(options={})
- options.merge!(
- 'command' => 'listTemplates'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listTemplates.html]
+ def list_templates(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listTemplates')
+ else
+ options.merge!('command' => 'listTemplates',
+ 'templatefilter' => args[0])
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
-
def list_templates(options={})
templates = self.data[:images].values
@@ -29,7 +31,8 @@ module Fog
}
}
end
- end # Mock
- end # Cloudstack
- end # Compute
-end # Fog
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_traffic_monitors.rb b/lib/fog/cloudstack/requests/compute/list_traffic_monitors.rb
new file mode 100644
index 0000000..a178659
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_traffic_monitors.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List traffic monitor Hosts.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listTrafficMonitors.html]
+ def list_traffic_monitors(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listTrafficMonitors')
+ else
+ options.merge!('command' => 'listTrafficMonitors',
+ 'zoneid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_traffic_type_implementors.rb b/lib/fog/cloudstack/requests/compute/list_traffic_type_implementors.rb
new file mode 100644
index 0000000..2784650
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_traffic_type_implementors.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists implementors of implementor of a network traffic type or implementors of all network traffic types
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listTrafficTypeImplementors.html]
+ def list_traffic_type_implementors(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listTrafficTypeImplementors')
+ else
+ options.merge!('command' => 'listTrafficTypeImplementors')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_traffic_types.rb b/lib/fog/cloudstack/requests/compute/list_traffic_types.rb
new file mode 100644
index 0000000..2e1ed65
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_traffic_types.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists traffic types of a given physical network.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listTrafficTypes.html]
+ def list_traffic_types(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listTrafficTypes')
+ else
+ options.merge!('command' => 'listTrafficTypes',
+ 'physicalnetworkid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_ucs_blades.rb b/lib/fog/cloudstack/requests/compute/list_ucs_blades.rb
new file mode 100644
index 0000000..0d93b67
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_ucs_blades.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List ucs blades
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listUcsBlades.html]
+ def list_ucs_blades(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listUcsBlades')
+ else
+ options.merge!('command' => 'listUcsBlades',
+ 'ucsmanagerid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_ucs_managers.rb b/lib/fog/cloudstack/requests/compute/list_ucs_managers.rb
new file mode 100644
index 0000000..6bc1bdf
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_ucs_managers.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List ucs manager
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listUcsManagers.html]
+ def list_ucs_managers(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listUcsManagers')
+ else
+ options.merge!('command' => 'listUcsManagers')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_ucs_profiles.rb b/lib/fog/cloudstack/requests/compute/list_ucs_profiles.rb
new file mode 100644
index 0000000..39e6925
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_ucs_profiles.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List profile in ucs manager
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listUcsProfiles.html]
+ def list_ucs_profiles(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listUcsProfiles')
+ else
+ options.merge!('command' => 'listUcsProfiles',
+ 'ucsmanagerid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_ucs_templates.rb b/lib/fog/cloudstack/requests/compute/list_ucs_templates.rb
new file mode 100644
index 0000000..108efa8
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_ucs_templates.rb
@@ -0,0 +1,21 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List templates in ucs manager
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/listUcsTemplates.html]
+ def list_ucs_templates(ucsmanagerid, options={})
+ options.merge!(
+ 'command' => 'listUcsTemplates',
+ 'ucsmanagerid' => ucsmanagerid
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_usage_records.rb b/lib/fog/cloudstack/requests/compute/list_usage_records.rb
index 0d169c9..ef98517 100644
--- a/lib/fog/cloudstack/requests/compute/list_usage_records.rb
+++ b/lib/fog/cloudstack/requests/compute/list_usage_records.rb
@@ -1,28 +1,26 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists usage records for accounts.
+ class Real
+ # Lists usage records for accounts
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listUsageRecords.html]
- def list_usage_records(options={})
- options.merge!(
- 'command' => 'listUsageRecords'
- )
-
- if startdate = options.delete('startdate')
- options.merge!('startdate' => startdate.strftime('%Y-%m-%d'))
- end
-
- if enddate = options.delete('enddate')
- options.merge!('enddate' => enddate.strftime('%Y-%m-%d'))
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listUsageRecords.html]
+ def list_usage_records(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listUsageRecords')
+ else
+ options.merge!('command' => 'listUsageRecords',
+ 'enddate' => args[0],
+ 'startdate' => args[1])
end
-
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_usage_types.rb b/lib/fog/cloudstack/requests/compute/list_usage_types.rb
new file mode 100644
index 0000000..111f654
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_usage_types.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List Usage Types
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listUsageTypes.html]
+ def list_usage_types(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listUsageTypes')
+ else
+ options.merge!('command' => 'listUsageTypes')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_users.rb b/lib/fog/cloudstack/requests/compute/list_users.rb
index 09c9058..9fd8b29 100644
--- a/lib/fog/cloudstack/requests/compute/list_users.rb
+++ b/lib/fog/cloudstack/requests/compute/list_users.rb
@@ -1,20 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists user accounts.
+ class Real
+ # Lists user accounts
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listUsers.html]
- def list_users(options={})
- options.merge!(
- 'command' => 'listUsers'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listUsers.html]
+ def list_users(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listUsers')
+ else
+ options.merge!('command' => 'listUsers')
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_virtual_machines.rb b/lib/fog/cloudstack/requests/compute/list_virtual_machines.rb
index 7371a94..36d5c4a 100644
--- a/lib/fog/cloudstack/requests/compute/list_virtual_machines.rb
+++ b/lib/fog/cloudstack/requests/compute/list_virtual_machines.rb
@@ -1,26 +1,30 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# List the virtual machines owned by the account.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listVirtualMachines.html]
- def list_virtual_machines(options={})
- options.merge!(
- 'command' => 'listVirtualMachines'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listVirtualMachines.html]
+ def list_virtual_machines(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listVirtualMachines')
+ else
+ options.merge!('command' => 'listVirtualMachines')
+ end
request(options)
end
- end # Real
-
+ end
+
class Mock
def list_virtual_machines(options={})
{"listvirtualmachinesresponse" =>
{"count" => self.data[:servers].values.size, "virtualmachine" => self.data[:servers].values}}
end
- end # Mock
- end # Cloudstack
- end # Compute
-end # Fog
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_virtual_router_elements.rb b/lib/fog/cloudstack/requests/compute/list_virtual_router_elements.rb
new file mode 100644
index 0000000..951c0ca
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_virtual_router_elements.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists all available virtual router elements.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listVirtualRouterElements.html]
+ def list_virtual_router_elements(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listVirtualRouterElements')
+ else
+ options.merge!('command' => 'listVirtualRouterElements')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_vlan_ip_ranges.rb b/lib/fog/cloudstack/requests/compute/list_vlan_ip_ranges.rb
new file mode 100644
index 0000000..fd4b38f
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_vlan_ip_ranges.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists all VLAN IP ranges.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listVlanIpRanges.html]
+ def list_vlan_ip_ranges(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listVlanIpRanges')
+ else
+ options.merge!('command' => 'listVlanIpRanges')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_vm_snapshot.rb b/lib/fog/cloudstack/requests/compute/list_vm_snapshot.rb
new file mode 100644
index 0000000..3d89fdf
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_vm_snapshot.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List virtual machine snapshot by conditions
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listVMSnapshot.html]
+ def list_vm_snapshot(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listVMSnapshot')
+ else
+ options.merge!('command' => 'listVMSnapshot')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_vmware_dcs.rb b/lib/fog/cloudstack/requests/compute/list_vmware_dcs.rb
new file mode 100644
index 0000000..7b5b8f6
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_vmware_dcs.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Retrieves VMware DC(s) associated with a zone.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listVmwareDcs.html]
+ def list_vmware_dcs(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listVmwareDcs')
+ else
+ options.merge!('command' => 'listVmwareDcs',
+ 'zoneid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_volumes.rb b/lib/fog/cloudstack/requests/compute/list_volumes.rb
index d63bf13..b8fb4d2 100644
--- a/lib/fog/cloudstack/requests/compute/list_volumes.rb
+++ b/lib/fog/cloudstack/requests/compute/list_volumes.rb
@@ -1,21 +1,23 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Lists all volumes.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listVolumes.html]
- def list_volumes(options={})
- options.merge!(
- 'command' => 'listVolumes'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listVolumes.html]
+ def list_volumes(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listVolumes')
+ else
+ options.merge!('command' => 'listVolumes')
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
def list_volumes(options={})
volume_id = options.delete('id')
@@ -32,7 +34,8 @@ module Fog
}
}
end
- end # Mock
- end # Cloudstack
- end # Compute
-end #Fog
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_volumes_on_filer.rb b/lib/fog/cloudstack/requests/compute/list_volumes_on_filer.rb
new file mode 100644
index 0000000..c770e8b
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_volumes_on_filer.rb
@@ -0,0 +1,21 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # List Volumes
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/listVolumesOnFiler.html]
+ def list_volumes_on_filer(poolname, options={})
+ options.merge!(
+ 'command' => 'listVolumesOnFiler',
+ 'poolname' => poolname
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_vpc_offerings.rb b/lib/fog/cloudstack/requests/compute/list_vpc_offerings.rb
new file mode 100644
index 0000000..adc691e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_vpc_offerings.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists VPC offerings
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listVPCOfferings.html]
+ def list_vpc_offerings(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listVPCOfferings')
+ else
+ options.merge!('command' => 'listVPCOfferings')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_vpcs.rb b/lib/fog/cloudstack/requests/compute/list_vpcs.rb
new file mode 100644
index 0000000..fa160a2
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_vpcs.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists VPCs
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listVPCs.html]
+ def list_vpcs(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listVPCs')
+ else
+ options.merge!('command' => 'listVPCs')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_vpn_connections.rb b/lib/fog/cloudstack/requests/compute/list_vpn_connections.rb
new file mode 100644
index 0000000..1e6c4d2
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_vpn_connections.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists site to site vpn connection gateways
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listVpnConnections.html]
+ def list_vpn_connections(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listVpnConnections')
+ else
+ options.merge!('command' => 'listVpnConnections')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_vpn_customer_gateways.rb b/lib/fog/cloudstack/requests/compute/list_vpn_customer_gateways.rb
new file mode 100644
index 0000000..1939aca
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_vpn_customer_gateways.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists site to site vpn customer gateways
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listVpnCustomerGateways.html]
+ def list_vpn_customer_gateways(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listVpnCustomerGateways')
+ else
+ options.merge!('command' => 'listVpnCustomerGateways')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_vpn_gateways.rb b/lib/fog/cloudstack/requests/compute/list_vpn_gateways.rb
new file mode 100644
index 0000000..0633c1e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_vpn_gateways.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists site 2 site vpn gateways
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listVpnGateways.html]
+ def list_vpn_gateways(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listVpnGateways')
+ else
+ options.merge!('command' => 'listVpnGateways')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_vpn_users.rb b/lib/fog/cloudstack/requests/compute/list_vpn_users.rb
new file mode 100644
index 0000000..54dd79a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/list_vpn_users.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Lists vpn users
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listVpnUsers.html]
+ def list_vpn_users(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listVpnUsers')
+ else
+ options.merge!('command' => 'listVpnUsers')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/list_zones.rb b/lib/fog/cloudstack/requests/compute/list_zones.rb
index e1b140c..2a4af90 100644
--- a/lib/fog/cloudstack/requests/compute/list_zones.rb
+++ b/lib/fog/cloudstack/requests/compute/list_zones.rb
@@ -1,21 +1,23 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Lists zones.
+ class Real
+ # Lists zones
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/listZones.html]
- def list_zones(options={})
- options.merge!(
- 'command' => 'listZones'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listZones.html]
+ def list_zones(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'listZones')
+ else
+ options.merge!('command' => 'listZones')
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
def list_zones(options={})
zones = self.data[:zones].values
@@ -28,7 +30,8 @@ module Fog
}
}
end
- end # Mock
- end # Cloudstack
- end # Compute
-end # Fog
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/lock_account.rb b/lib/fog/cloudstack/requests/compute/lock_account.rb
new file mode 100644
index 0000000..4e25757
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/lock_account.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Locks an account
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/lockAccount.html]
+ def lock_account(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'lockAccount')
+ else
+ options.merge!('command' => 'lockAccount',
+ 'account' => args[0],
+ 'domainid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/lock_user.rb b/lib/fog/cloudstack/requests/compute/lock_user.rb
new file mode 100644
index 0000000..2e39325
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/lock_user.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Locks a user account
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/lockUser.html]
+ def lock_user(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'lockUser')
+ else
+ options.merge!('command' => 'lockUser',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/mark_default_zone_for_account.rb b/lib/fog/cloudstack/requests/compute/mark_default_zone_for_account.rb
new file mode 100644
index 0000000..057dfc8
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/mark_default_zone_for_account.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Marks a default zone for this account
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/markDefaultZoneForAccount.html]
+ def mark_default_zone_for_account(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'markDefaultZoneForAccount')
+ else
+ options.merge!('command' => 'markDefaultZoneForAccount',
+ 'zoneid' => args[0],
+ 'account' => args[1],
+ 'domainid' => args[2])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/migrate_system_vm.rb b/lib/fog/cloudstack/requests/compute/migrate_system_vm.rb
new file mode 100644
index 0000000..d870b8e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/migrate_system_vm.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Attempts Migration of a system virtual machine to the host specified.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/migrateSystemVm.html]
+ def migrate_system_vm(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'migrateSystemVm')
+ else
+ options.merge!('command' => 'migrateSystemVm',
+ 'virtualmachineid' => args[0],
+ 'hostid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/migrate_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/migrate_virtual_machine.rb
index c888ff1..2f3ff86 100644
--- a/lib/fog/cloudstack/requests/compute/migrate_virtual_machine.rb
+++ b/lib/fog/cloudstack/requests/compute/migrate_virtual_machine.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Attempts Migration of a virtual machine to the host specified
+ class Real
+ # Attempts Migration of a VM to a different host or Root volume of the vm to a different storage pool
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.12/global_admin/migrateVirtualMachine.html]
- def migrate_virtual_machine(options={})
- options.merge!(
- 'command' => 'migrateVirtualMachine'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/migrateVirtualMachine.html]
+ def migrate_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'migrateVirtualMachine')
+ else
+ options.merge!('command' => 'migrateVirtualMachine',
+ 'virtualmachineid' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/migrate_virtual_machine_with_volume.rb b/lib/fog/cloudstack/requests/compute/migrate_virtual_machine_with_volume.rb
new file mode 100644
index 0000000..2498259
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/migrate_virtual_machine_with_volume.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Attempts Migration of a VM with its volumes to a different host
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/migrateVirtualMachineWithVolume.html]
+ def migrate_virtual_machine_with_volume(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'migrateVirtualMachineWithVolume')
+ else
+ options.merge!('command' => 'migrateVirtualMachineWithVolume',
+ 'hostid' => args[0],
+ 'virtualmachineid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/migrate_volume.rb b/lib/fog/cloudstack/requests/compute/migrate_volume.rb
new file mode 100644
index 0000000..256ef71
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/migrate_volume.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Migrate volume
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/migrateVolume.html]
+ def migrate_volume(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'migrateVolume')
+ else
+ options.merge!('command' => 'migrateVolume',
+ 'storageid' => args[0],
+ 'volumeid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/modify_pool.rb b/lib/fog/cloudstack/requests/compute/modify_pool.rb
new file mode 100644
index 0000000..2c59e8d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/modify_pool.rb
@@ -0,0 +1,22 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Modify pool
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/modifyPool.html]
+ def modify_pool(algorithm, poolname, options={})
+ options.merge!(
+ 'command' => 'modifyPool',
+ 'algorithm' => algorithm,
+ 'poolname' => poolname
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/prepare_host_for_maintenance.rb b/lib/fog/cloudstack/requests/compute/prepare_host_for_maintenance.rb
new file mode 100644
index 0000000..e8f2713
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/prepare_host_for_maintenance.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Prepares a host for maintenance.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/prepareHostForMaintenance.html]
+ def prepare_host_for_maintenance(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'prepareHostForMaintenance')
+ else
+ options.merge!('command' => 'prepareHostForMaintenance',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/prepare_template.rb b/lib/fog/cloudstack/requests/compute/prepare_template.rb
new file mode 100644
index 0000000..ed76c95
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/prepare_template.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # load template into primary storage
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/prepareTemplate.html]
+ def prepare_template(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'prepareTemplate')
+ else
+ options.merge!('command' => 'prepareTemplate',
+ 'templateid' => args[0],
+ 'zoneid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/query_async_job_result.rb b/lib/fog/cloudstack/requests/compute/query_async_job_result.rb
index b83ac56..4417383 100644
--- a/lib/fog/cloudstack/requests/compute/query_async_job_result.rb
+++ b/lib/fog/cloudstack/requests/compute/query_async_job_result.rb
@@ -1,18 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
-
- def query_async_job_result(options={})
- options.merge!(
- 'command' => 'queryAsyncJobResult'
- )
+ class Real
+ # Retrieves the current status of asynchronous job.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/queryAsyncJobResult.html]
+ def query_async_job_result(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'queryAsyncJobResult')
+ else
+ options.merge!('command' => 'queryAsyncJobResult',
+ 'jobid' => args[0])
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
def query_async_job_result(options={})
unless job_id = options['jobid']
@@ -25,8 +31,8 @@ module Fog
{'queryasyncjobresultresponse' => job }
end
- end
-
+ end
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/reboot_router.rb b/lib/fog/cloudstack/requests/compute/reboot_router.rb
new file mode 100644
index 0000000..09e9eda
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/reboot_router.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Starts a router.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/rebootRouter.html]
+ def reboot_router(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'rebootRouter')
+ else
+ options.merge!('command' => 'rebootRouter',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/reboot_system_vm.rb b/lib/fog/cloudstack/requests/compute/reboot_system_vm.rb
new file mode 100644
index 0000000..f44f509
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/reboot_system_vm.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Reboots a system VM.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/rebootSystemVm.html]
+ def reboot_system_vm(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'rebootSystemVm')
+ else
+ options.merge!('command' => 'rebootSystemVm',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/reboot_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/reboot_virtual_machine.rb
index c4f3dcd..7fb9a52 100644
--- a/lib/fog/cloudstack/requests/compute/reboot_virtual_machine.rb
+++ b/lib/fog/cloudstack/requests/compute/reboot_virtual_machine.rb
@@ -1,21 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Updates account information for the authenticated user.
+ class Real
+ # Reboots a virtual machine.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/rebootVirtualMachine.html]
- def reboot_virtual_machine(options={})
- options.merge!(
- 'command' => 'rebootVirtualMachine'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/rebootVirtualMachine.html]
+ def reboot_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'rebootVirtualMachine')
+ else
+ options.merge!('command' => 'rebootVirtualMachine',
+ 'id' => args[0])
+ end
request(options)
end
-
end
-
+
class Mock
def reboot_virtual_machine(options={})
job_id = Fog::Cloudstack.uuid
@@ -25,7 +28,8 @@ module Fog
}
}
end
- end
+ end
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/reconnect_host.rb b/lib/fog/cloudstack/requests/compute/reconnect_host.rb
new file mode 100644
index 0000000..0b54590
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/reconnect_host.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Reconnects a host.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/reconnectHost.html]
+ def reconnect_host(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'reconnectHost')
+ else
+ options.merge!('command' => 'reconnectHost',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/recover_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/recover_virtual_machine.rb
index c4f6046..7475339 100644
--- a/lib/fog/cloudstack/requests/compute/recover_virtual_machine.rb
+++ b/lib/fog/cloudstack/requests/compute/recover_virtual_machine.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Recovers a virtual machine.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/recoverVirtualMachine.html]
- def recover_virtual_machine(options={})
- options.merge!(
- 'command' => 'recoverVirtualMachine'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/recoverVirtualMachine.html]
+ def recover_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'recoverVirtualMachine')
+ else
+ options.merge!('command' => 'recoverVirtualMachine',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/refresh_ucs_blades.rb b/lib/fog/cloudstack/requests/compute/refresh_ucs_blades.rb
new file mode 100644
index 0000000..a1e1d18
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/refresh_ucs_blades.rb
@@ -0,0 +1,21 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # refresh ucs blades to sync with UCS manager
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/refreshUcsBlades.html]
+ def refresh_ucs_blades(ucsmanagerid, options={})
+ options.merge!(
+ 'command' => 'refreshUcsBlades',
+ 'ucsmanagerid' => ucsmanagerid
+ )
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/register_iso.rb b/lib/fog/cloudstack/requests/compute/register_iso.rb
new file mode 100644
index 0000000..06e3492
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/register_iso.rb
@@ -0,0 +1,28 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Registers an existing ISO into the CloudStack Cloud.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/registerIso.html]
+ def register_iso(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'registerIso')
+ else
+ options.merge!('command' => 'registerIso',
+ 'name' => args[0],
+ 'displaytext' => args[1],
+ 'url' => args[2],
+ 'zoneid' => args[3])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/register_ssh_key_pair.rb b/lib/fog/cloudstack/requests/compute/register_ssh_key_pair.rb
index a8b9eba..d289dd2 100644
--- a/lib/fog/cloudstack/requests/compute/register_ssh_key_pair.rb
+++ b/lib/fog/cloudstack/requests/compute/register_ssh_key_pair.rb
@@ -1,19 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Registers an SSH key pair..
+ class Real
+ # Register a public key in a keypair under a certain name
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/registerSSHKeyPair.html]
- def register_ssh_key_pair(options={})
- options.merge!(
- 'command' => 'registerSSHKeyPair'
- )
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/registerSSHKeyPair.html]
+ def register_ssh_key_pair(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'registerSSHKeyPair')
+ else
+ options.merge!('command' => 'registerSSHKeyPair',
+ 'name' => args[0],
+ 'publickey' => args[1])
+ end
request(options)
end
-
end
+
end
end
end
diff --git a/lib/fog/cloudstack/requests/compute/register_template.rb b/lib/fog/cloudstack/requests/compute/register_template.rb
index f67201a..a17f611 100644
--- a/lib/fog/cloudstack/requests/compute/register_template.rb
+++ b/lib/fog/cloudstack/requests/compute/register_template.rb
@@ -1,21 +1,30 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Registers an existing template into the cloud.
+ class Real
+ # Registers an existing template into the CloudStack cloud.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/3.0.0/api_3.0.0/user/registerTemplate.html]
- def register_template(options={})
- options.merge!(
- 'command' => 'registerTemplate'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/registerTemplate.html]
+ def register_template(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'registerTemplate')
+ else
+ options.merge!('command' => 'registerTemplate',
+ 'zoneid' => args[0],
+ 'format' => args[1],
+ 'hypervisor' => args[2],
+ 'url' => args[3],
+ 'name' => args[4],
+ 'ostypeid' => args[5],
+ 'displaytext' => args[6])
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
def register_template(options={})
mock_template_id = self.data[:images].keys.first
@@ -29,7 +38,8 @@ module Fog
}
}
end
- end # Mock
- end # Cloudstack
- end # Compute
-end #Fog
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/register_user_keys.rb b/lib/fog/cloudstack/requests/compute/register_user_keys.rb
index f1443f4..ea0730b 100644
--- a/lib/fog/cloudstack/requests/compute/register_user_keys.rb
+++ b/lib/fog/cloudstack/requests/compute/register_user_keys.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Enables a user account.
+ class Real
+ # This command allows a user to register for the developer API, returning a secret key and an API key. This request is made through the integration API port, so it is a privileged command and must be made on behalf of a user. It is up to the implementer just how the username and password are entered, and then how that translates to an integration API request. Both secret key and API key should be returned to the user
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/registerUserKeys.html]
- def register_user_keys(options={})
- options.merge!(
- 'command' => 'registerUserKeys'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/registerUserKeys.html]
+ def register_user_keys(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'registerUserKeys')
+ else
+ options.merge!('command' => 'registerUserKeys',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/release_dedicated_cluster.rb b/lib/fog/cloudstack/requests/compute/release_dedicated_cluster.rb
new file mode 100644
index 0000000..5f7c4a9
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/release_dedicated_cluster.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Release the dedication for cluster
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/releaseDedicatedCluster.html]
+ def release_dedicated_cluster(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'releaseDedicatedCluster')
+ else
+ options.merge!('command' => 'releaseDedicatedCluster',
+ 'clusterid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/release_dedicated_guest_vlan_range.rb b/lib/fog/cloudstack/requests/compute/release_dedicated_guest_vlan_range.rb
new file mode 100644
index 0000000..2cbeff0
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/release_dedicated_guest_vlan_range.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Releases a dedicated guest vlan range to the system
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/releaseDedicatedGuestVlanRange.html]
+ def release_dedicated_guest_vlan_range(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'releaseDedicatedGuestVlanRange')
+ else
+ options.merge!('command' => 'releaseDedicatedGuestVlanRange',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/release_dedicated_host.rb b/lib/fog/cloudstack/requests/compute/release_dedicated_host.rb
new file mode 100644
index 0000000..d631c35
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/release_dedicated_host.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Release the dedication for host
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/releaseDedicatedHost.html]
+ def release_dedicated_host(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'releaseDedicatedHost')
+ else
+ options.merge!('command' => 'releaseDedicatedHost',
+ 'hostid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/release_dedicated_pod.rb b/lib/fog/cloudstack/requests/compute/release_dedicated_pod.rb
new file mode 100644
index 0000000..ccac292
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/release_dedicated_pod.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Release the dedication for the pod
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/releaseDedicatedPod.html]
+ def release_dedicated_pod(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'releaseDedicatedPod')
+ else
+ options.merge!('command' => 'releaseDedicatedPod',
+ 'podid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/release_dedicated_zone.rb b/lib/fog/cloudstack/requests/compute/release_dedicated_zone.rb
new file mode 100644
index 0000000..86ca40c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/release_dedicated_zone.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Release dedication of zone
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/releaseDedicatedZone.html]
+ def release_dedicated_zone(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'releaseDedicatedZone')
+ else
+ options.merge!('command' => 'releaseDedicatedZone',
+ 'zoneid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/release_host_reservation.rb b/lib/fog/cloudstack/requests/compute/release_host_reservation.rb
new file mode 100644
index 0000000..7363803
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/release_host_reservation.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Releases host reservation.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/releaseHostReservation.html]
+ def release_host_reservation(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'releaseHostReservation')
+ else
+ options.merge!('command' => 'releaseHostReservation',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/release_public_ip_range.rb b/lib/fog/cloudstack/requests/compute/release_public_ip_range.rb
new file mode 100644
index 0000000..2bbfdfb
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/release_public_ip_range.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Releases a Public IP range back to the system pool
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/releasePublicIpRange.html]
+ def release_public_ip_range(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'releasePublicIpRange')
+ else
+ options.merge!('command' => 'releasePublicIpRange',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/remove_cert_from_load_balancer.rb b/lib/fog/cloudstack/requests/compute/remove_cert_from_load_balancer.rb
new file mode 100644
index 0000000..76762da
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/remove_cert_from_load_balancer.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Removes a certificate from a Load Balancer Rule
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/removeCertFromLoadBalancer.html]
+ def remove_cert_from_load_balancer(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'removeCertFromLoadBalancer')
+ else
+ options.merge!('command' => 'removeCertFromLoadBalancer',
+ 'lbruleid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/remove_from_global_load_balancer_rule.rb b/lib/fog/cloudstack/requests/compute/remove_from_global_load_balancer_rule.rb
new file mode 100644
index 0000000..89c403c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/remove_from_global_load_balancer_rule.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Removes a load balancer rule association with global load balancer rule
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/removeFromGlobalLoadBalancerRule.html]
+ def remove_from_global_load_balancer_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'removeFromGlobalLoadBalancerRule')
+ else
+ options.merge!('command' => 'removeFromGlobalLoadBalancerRule',
+ 'id' => args[0],
+ 'loadbalancerrulelist' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/remove_from_load_balancer_rule.rb b/lib/fog/cloudstack/requests/compute/remove_from_load_balancer_rule.rb
index bc09ac9..d3db1b5 100644
--- a/lib/fog/cloudstack/requests/compute/remove_from_load_balancer_rule.rb
+++ b/lib/fog/cloudstack/requests/compute/remove_from_load_balancer_rule.rb
@@ -1,24 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
+ class Real
# Removes a virtual machine or a list of virtual machines from a load balancer rule.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.12/global_admin/removeFromLoadBalancerRule.html]
- def remove_from_load_balancer_rule(id,virtualmachineids=[])
- virtualmachineids = [*virtualmachineids]
-
- options = {
- 'command' => 'removeFromLoadBalancerRule',
- 'id' => id,
- 'virtualmachineids' => virtualmachineids.join(',')
- }
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/removeFromLoadBalancerRule.html]
+ def remove_from_load_balancer_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'removeFromLoadBalancerRule')
+ else
+ options.merge!('command' => 'removeFromLoadBalancerRule',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
diff --git a/lib/fog/cloudstack/requests/compute/remove_guest_os.rb b/lib/fog/cloudstack/requests/compute/remove_guest_os.rb
new file mode 100644
index 0000000..ae3c7ce
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/remove_guest_os.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Removes a Guest OS from listing.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/removeGuestOs.html]
+ def remove_guest_os(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'removeGuestOs')
+ else
+ options.merge!('command' => 'removeGuestOs',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/remove_guest_os_mapping.rb b/lib/fog/cloudstack/requests/compute/remove_guest_os_mapping.rb
new file mode 100644
index 0000000..4dfc591
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/remove_guest_os_mapping.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Removes a Guest OS Mapping.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/removeGuestOsMapping.html]
+ def remove_guest_os_mapping(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'removeGuestOsMapping')
+ else
+ options.merge!('command' => 'removeGuestOsMapping',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/remove_ip_from_nic.rb b/lib/fog/cloudstack/requests/compute/remove_ip_from_nic.rb
new file mode 100644
index 0000000..6b8ca3c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/remove_ip_from_nic.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Removes secondary IP from the NIC.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/removeIpFromNic.html]
+ def remove_ip_from_nic(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'removeIpFromNic')
+ else
+ options.merge!('command' => 'removeIpFromNic',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/remove_nic_from_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/remove_nic_from_virtual_machine.rb
new file mode 100644
index 0000000..ab4254c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/remove_nic_from_virtual_machine.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Removes VM from specified network by deleting a NIC
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/removeNicFromVirtualMachine.html]
+ def remove_nic_from_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'removeNicFromVirtualMachine')
+ else
+ options.merge!('command' => 'removeNicFromVirtualMachine',
+ 'virtualmachineid' => args[0],
+ 'nicid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/remove_region.rb b/lib/fog/cloudstack/requests/compute/remove_region.rb
new file mode 100644
index 0000000..110bd84
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/remove_region.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Removes specified region
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/removeRegion.html]
+ def remove_region(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'removeRegion')
+ else
+ options.merge!('command' => 'removeRegion',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/remove_resource_detail.rb b/lib/fog/cloudstack/requests/compute/remove_resource_detail.rb
new file mode 100644
index 0000000..c94deb9
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/remove_resource_detail.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Removes detail for the Resource.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/removeResourceDetail.html]
+ def remove_resource_detail(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'removeResourceDetail')
+ else
+ options.merge!('command' => 'removeResourceDetail',
+ 'resourcetype' => args[0],
+ 'resourceid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/remove_vmware_dc.rb b/lib/fog/cloudstack/requests/compute/remove_vmware_dc.rb
new file mode 100644
index 0000000..0d9d07e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/remove_vmware_dc.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Remove a VMware datacenter from a zone.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/removeVmwareDc.html]
+ def remove_vmware_dc(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'removeVmwareDc')
+ else
+ options.merge!('command' => 'removeVmwareDc',
+ 'zoneid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/remove_vpn_user.rb b/lib/fog/cloudstack/requests/compute/remove_vpn_user.rb
new file mode 100644
index 0000000..9d0b724
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/remove_vpn_user.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Removes vpn user
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/removeVpnUser.html]
+ def remove_vpn_user(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'removeVpnUser')
+ else
+ options.merge!('command' => 'removeVpnUser',
+ 'username' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/replace_network_acl_list.rb b/lib/fog/cloudstack/requests/compute/replace_network_acl_list.rb
new file mode 100644
index 0000000..2d8e05c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/replace_network_acl_list.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Replaces ACL associated with a Network or private gateway
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/replaceNetworkACLList.html]
+ def replace_network_acl_list(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'replaceNetworkACLList')
+ else
+ options.merge!('command' => 'replaceNetworkACLList',
+ 'aclid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/reset_api_limit.rb b/lib/fog/cloudstack/requests/compute/reset_api_limit.rb
new file mode 100644
index 0000000..fb3bfcd
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/reset_api_limit.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Reset api count
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/resetApiLimit.html]
+ def reset_api_limit(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'resetApiLimit')
+ else
+ options.merge!('command' => 'resetApiLimit')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/reset_password_for_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/reset_password_for_virtual_machine.rb
index 00671aa..f364df9 100644
--- a/lib/fog/cloudstack/requests/compute/reset_password_for_virtual_machine.rb
+++ b/lib/fog/cloudstack/requests/compute/reset_password_for_virtual_machine.rb
@@ -1,21 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Returns an encrypted password for the VM
+ class Real
+ # Resets the password for virtual machine. The virtual machine must be in a "Stopped" state and the template must already support this feature for this command to take effect. [async]
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/resetPasswordForVirtualMachine.html]
- def reset_password_for_virtual_machine(id)
- options = {
- 'command' => 'resetPasswordForVirtualMachine',
- 'id' => id
- }
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/resetPasswordForVirtualMachine.html]
+ def reset_password_for_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'resetPasswordForVirtualMachine')
+ else
+ options.merge!('command' => 'resetPasswordForVirtualMachine',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/reset_ssh_key_for_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/reset_ssh_key_for_virtual_machine.rb
new file mode 100644
index 0000000..f261d96
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/reset_ssh_key_for_virtual_machine.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Resets the SSH Key for virtual machine. The virtual machine must be in a "Stopped" state. [async]
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/resetSSHKeyForVirtualMachine.html]
+ def reset_ssh_key_for_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'resetSSHKeyForVirtualMachine')
+ else
+ options.merge!('command' => 'resetSSHKeyForVirtualMachine',
+ 'id' => args[0],
+ 'keypair' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/reset_vpn_connection.rb b/lib/fog/cloudstack/requests/compute/reset_vpn_connection.rb
new file mode 100644
index 0000000..a197341
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/reset_vpn_connection.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Reset site to site vpn connection
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/resetVpnConnection.html]
+ def reset_vpn_connection(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'resetVpnConnection')
+ else
+ options.merge!('command' => 'resetVpnConnection',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/resize_volume.rb b/lib/fog/cloudstack/requests/compute/resize_volume.rb
new file mode 100644
index 0000000..c23e2b6
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/resize_volume.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Resizes a volume
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/resizeVolume.html]
+ def resize_volume(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'resizeVolume')
+ else
+ options.merge!('command' => 'resizeVolume',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/restart_network.rb b/lib/fog/cloudstack/requests/compute/restart_network.rb
new file mode 100644
index 0000000..e63e65a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/restart_network.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Restarts the network; includes 1) restarting network elements - virtual routers, dhcp servers 2) reapplying all public ips 3) reapplying loadBalancing/portForwarding rules
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/restartNetwork.html]
+ def restart_network(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'restartNetwork')
+ else
+ options.merge!('command' => 'restartNetwork',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/restart_vpc.rb b/lib/fog/cloudstack/requests/compute/restart_vpc.rb
new file mode 100644
index 0000000..009a83f
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/restart_vpc.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Restarts a VPC
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/restartVPC.html]
+ def restart_vpc(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'restartVPC')
+ else
+ options.merge!('command' => 'restartVPC',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/restore_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/restore_virtual_machine.rb
new file mode 100644
index 0000000..0621523
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/restore_virtual_machine.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Restore a VM to original template/ISO or new template/ISO
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/restoreVirtualMachine.html]
+ def restore_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'restoreVirtualMachine')
+ else
+ options.merge!('command' => 'restoreVirtualMachine',
+ 'virtualmachineid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/revert_snapshot.rb b/lib/fog/cloudstack/requests/compute/revert_snapshot.rb
new file mode 100644
index 0000000..396a23e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/revert_snapshot.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # revert a volume snapshot.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/revertSnapshot.html]
+ def revert_snapshot(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'revertSnapshot')
+ else
+ options.merge!('command' => 'revertSnapshot',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/revert_to_vm_snapshot.rb b/lib/fog/cloudstack/requests/compute/revert_to_vm_snapshot.rb
new file mode 100644
index 0000000..1096a02
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/revert_to_vm_snapshot.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Revert VM from a vmsnapshot.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/revertToVMSnapshot.html]
+ def revert_to_vm_snapshot(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'revertToVMSnapshot')
+ else
+ options.merge!('command' => 'revertToVMSnapshot',
+ 'vmsnapshotid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/revoke_security_group_egress.rb b/lib/fog/cloudstack/requests/compute/revoke_security_group_egress.rb
index f80c2ff..1aea84f 100644
--- a/lib/fog/cloudstack/requests/compute/revoke_security_group_egress.rb
+++ b/lib/fog/cloudstack/requests/compute/revoke_security_group_egress.rb
@@ -1,15 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
- def revoke_security_group_egress(options={})
- options.merge!(
- 'command' => 'revokeSecurityGroupEgress'
- )
+ class Real
+ # Deletes a particular egress rule from this security group
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/revokeSecurityGroupEgress.html]
+ def revoke_security_group_egress(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'revokeSecurityGroupEgress')
+ else
+ options.merge!('command' => 'revokeSecurityGroupEgress',
+ 'id' => args[0])
+ end
request(options)
end
- end # Real
+ end
+
class Mock
def revoke_security_group_egress(options={})
unless security_group_rule_id = options['id']
@@ -36,7 +45,8 @@ module Fog
{"revokesecuritygroupegress" => { "jobid" => job_id }}
end
- end # Mock
+ end
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/revoke_security_group_ingress.rb b/lib/fog/cloudstack/requests/compute/revoke_security_group_ingress.rb
index b5fcd82..142084f 100644
--- a/lib/fog/cloudstack/requests/compute/revoke_security_group_ingress.rb
+++ b/lib/fog/cloudstack/requests/compute/revoke_security_group_ingress.rb
@@ -1,18 +1,24 @@
module Fog
module Compute
class Cloudstack
- class Real
-
- def revoke_security_group_ingress(options={})
- options.merge!(
- 'command' => 'revokeSecurityGroupIngress'
- )
+ class Real
+ # Deletes a particular ingress rule from this security group
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/revokeSecurityGroupIngress.html]
+ def revoke_security_group_ingress(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'revokeSecurityGroupIngress')
+ else
+ options.merge!('command' => 'revokeSecurityGroupIngress',
+ 'id' => args[0])
+ end
request(options)
end
-
- end # Real
-
+ end
+
class Mock
def revoke_security_group_ingress(options={})
unless security_group_rule_id = options['id']
@@ -39,8 +45,7 @@ module Fog
{"revokesecuritygroupingress" => { "jobid" => job_id }}
end
-
- end
+ end
end
end
end
diff --git a/lib/fog/cloudstack/requests/compute/scale_system_vm.rb b/lib/fog/cloudstack/requests/compute/scale_system_vm.rb
new file mode 100644
index 0000000..34c92f5
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/scale_system_vm.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Scale the service offering for a system vm (console proxy or secondary storage). The system vm must be in a "Stopped" state for this command to take effect.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/scaleSystemVm.html]
+ def scale_system_vm(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'scaleSystemVm')
+ else
+ options.merge!('command' => 'scaleSystemVm',
+ 'serviceofferingid' => args[0],
+ 'id' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/scale_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/scale_virtual_machine.rb
new file mode 100644
index 0000000..84a5728
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/scale_virtual_machine.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Scales the virtual machine to a new service offering.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/scaleVirtualMachine.html]
+ def scale_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'scaleVirtualMachine')
+ else
+ options.merge!('command' => 'scaleVirtualMachine',
+ 'serviceofferingid' => args[0],
+ 'id' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/start_internal_load_balancer_vm.rb b/lib/fog/cloudstack/requests/compute/start_internal_load_balancer_vm.rb
new file mode 100644
index 0000000..af34bd5
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/start_internal_load_balancer_vm.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Starts an existing internal lb vm.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/startInternalLoadBalancerVM.html]
+ def start_internal_load_balancer_vm(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'startInternalLoadBalancerVM')
+ else
+ options.merge!('command' => 'startInternalLoadBalancerVM',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/start_router.rb b/lib/fog/cloudstack/requests/compute/start_router.rb
new file mode 100644
index 0000000..9712fbb
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/start_router.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Starts a router.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/startRouter.html]
+ def start_router(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'startRouter')
+ else
+ options.merge!('command' => 'startRouter',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/start_system_vm.rb b/lib/fog/cloudstack/requests/compute/start_system_vm.rb
new file mode 100644
index 0000000..bb9781a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/start_system_vm.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Starts a system virtual machine.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/startSystemVm.html]
+ def start_system_vm(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'startSystemVm')
+ else
+ options.merge!('command' => 'startSystemVm',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/start_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/start_virtual_machine.rb
index b53363e..d3d500d 100644
--- a/lib/fog/cloudstack/requests/compute/start_virtual_machine.rb
+++ b/lib/fog/cloudstack/requests/compute/start_virtual_machine.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Updates account information for the authenticated user.
+ class Real
+ # Starts a virtual machine.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/startVirtualMachine.html]
- def start_virtual_machine(options={})
- options.merge!(
- 'command' => 'startVirtualMachine'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/startVirtualMachine.html]
+ def start_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'startVirtualMachine')
+ else
+ options.merge!('command' => 'startVirtualMachine',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/stop_internal_load_balancer_vm.rb b/lib/fog/cloudstack/requests/compute/stop_internal_load_balancer_vm.rb
new file mode 100644
index 0000000..300eb80
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/stop_internal_load_balancer_vm.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Stops an Internal LB vm.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/stopInternalLoadBalancerVM.html]
+ def stop_internal_load_balancer_vm(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'stopInternalLoadBalancerVM')
+ else
+ options.merge!('command' => 'stopInternalLoadBalancerVM',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/stop_router.rb b/lib/fog/cloudstack/requests/compute/stop_router.rb
new file mode 100644
index 0000000..d15b47c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/stop_router.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Stops a router.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/stopRouter.html]
+ def stop_router(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'stopRouter')
+ else
+ options.merge!('command' => 'stopRouter',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/stop_system_vm.rb b/lib/fog/cloudstack/requests/compute/stop_system_vm.rb
new file mode 100644
index 0000000..2e8f4ab
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/stop_system_vm.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Stops a system VM.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/stopSystemVm.html]
+ def stop_system_vm(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'stopSystemVm')
+ else
+ options.merge!('command' => 'stopSystemVm',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/stop_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/stop_virtual_machine.rb
index 94e9c5a..884ea5b 100644
--- a/lib/fog/cloudstack/requests/compute/stop_virtual_machine.rb
+++ b/lib/fog/cloudstack/requests/compute/stop_virtual_machine.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Updates account information for the authenticated user.
+ class Real
+ # Stops a virtual machine.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/stopVirtualMachine.html]
- def stop_virtual_machine(options={})
- options.merge!(
- 'command' => 'stopVirtualMachine'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/stopVirtualMachine.html]
+ def stop_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'stopVirtualMachine')
+ else
+ options.merge!('command' => 'stopVirtualMachine',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/suspend_project.rb b/lib/fog/cloudstack/requests/compute/suspend_project.rb
new file mode 100644
index 0000000..8b72b22
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/suspend_project.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Suspends a project
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/suspendProject.html]
+ def suspend_project(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'suspendProject')
+ else
+ options.merge!('command' => 'suspendProject',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_account.rb b/lib/fog/cloudstack/requests/compute/update_account.rb
index 2e8a238..aaebf72 100644
--- a/lib/fog/cloudstack/requests/compute/update_account.rb
+++ b/lib/fog/cloudstack/requests/compute/update_account.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Updates account information for the authenticated user.
+ class Real
+ # Updates account information for the authenticated user
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/updateAccount.html]
- def update_account(options={})
- options.merge!(
- 'command' => 'updateAccount'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateAccount.html]
+ def update_account(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateAccount')
+ else
+ options.merge!('command' => 'updateAccount',
+ 'newname' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_auto_scale_policy.rb b/lib/fog/cloudstack/requests/compute/update_auto_scale_policy.rb
new file mode 100644
index 0000000..6702612
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_auto_scale_policy.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates an existing autoscale policy.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateAutoScalePolicy.html]
+ def update_auto_scale_policy(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateAutoScalePolicy')
+ else
+ options.merge!('command' => 'updateAutoScalePolicy',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_auto_scale_vm_group.rb b/lib/fog/cloudstack/requests/compute/update_auto_scale_vm_group.rb
new file mode 100644
index 0000000..bb9f55d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_auto_scale_vm_group.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates an existing autoscale vm group.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateAutoScaleVmGroup.html]
+ def update_auto_scale_vm_group(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateAutoScaleVmGroup')
+ else
+ options.merge!('command' => 'updateAutoScaleVmGroup',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_auto_scale_vm_profile.rb b/lib/fog/cloudstack/requests/compute/update_auto_scale_vm_profile.rb
new file mode 100644
index 0000000..6fe0426
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_auto_scale_vm_profile.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates an existing autoscale vm profile.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateAutoScaleVmProfile.html]
+ def update_auto_scale_vm_profile(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateAutoScaleVmProfile')
+ else
+ options.merge!('command' => 'updateAutoScaleVmProfile',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_cloud_to_use_object_store.rb b/lib/fog/cloudstack/requests/compute/update_cloud_to_use_object_store.rb
new file mode 100644
index 0000000..8a5dcaa
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_cloud_to_use_object_store.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Migrate current NFS secondary storages to use object store.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateCloudToUseObjectStore.html]
+ def update_cloud_to_use_object_store(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateCloudToUseObjectStore')
+ else
+ options.merge!('command' => 'updateCloudToUseObjectStore',
+ 'provider' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_cluster.rb b/lib/fog/cloudstack/requests/compute/update_cluster.rb
new file mode 100644
index 0000000..3390508
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_cluster.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates an existing cluster
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateCluster.html]
+ def update_cluster(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateCluster')
+ else
+ options.merge!('command' => 'updateCluster',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_configuration.rb b/lib/fog/cloudstack/requests/compute/update_configuration.rb
new file mode 100644
index 0000000..64697de
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_configuration.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a configuration.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateConfiguration.html]
+ def update_configuration(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateConfiguration')
+ else
+ options.merge!('command' => 'updateConfiguration',
+ 'name' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_default_nic_for_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/update_default_nic_for_virtual_machine.rb
new file mode 100644
index 0000000..f224094
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_default_nic_for_virtual_machine.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Changes the default NIC on a VM
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateDefaultNicForVirtualMachine.html]
+ def update_default_nic_for_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateDefaultNicForVirtualMachine')
+ else
+ options.merge!('command' => 'updateDefaultNicForVirtualMachine',
+ 'nicid' => args[0],
+ 'virtualmachineid' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_disk_offering.rb b/lib/fog/cloudstack/requests/compute/update_disk_offering.rb
new file mode 100644
index 0000000..6a0bcf9
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_disk_offering.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a disk offering.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateDiskOffering.html]
+ def update_disk_offering(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateDiskOffering')
+ else
+ options.merge!('command' => 'updateDiskOffering',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_domain.rb b/lib/fog/cloudstack/requests/compute/update_domain.rb
index d19039e..fce55f0 100644
--- a/lib/fog/cloudstack/requests/compute/update_domain.rb
+++ b/lib/fog/cloudstack/requests/compute/update_domain.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Updates a domain with a new name.
+ class Real
+ # Updates a domain with a new name
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/updateDomain.html]
- def update_domain(options={})
- options.merge!(
- 'command' => 'updateDomain'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateDomain.html]
+ def update_domain(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateDomain')
+ else
+ options.merge!('command' => 'updateDomain',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_egress_firewall_rule.rb b/lib/fog/cloudstack/requests/compute/update_egress_firewall_rule.rb
new file mode 100644
index 0000000..011c2bd
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_egress_firewall_rule.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates egress firewall rule
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateEgressFirewallRule.html]
+ def update_egress_firewall_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateEgressFirewallRule')
+ else
+ options.merge!('command' => 'updateEgressFirewallRule',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_firewall_rule.rb b/lib/fog/cloudstack/requests/compute/update_firewall_rule.rb
new file mode 100644
index 0000000..19880ae
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_firewall_rule.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates firewall rule
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateFirewallRule.html]
+ def update_firewall_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateFirewallRule')
+ else
+ options.merge!('command' => 'updateFirewallRule',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_global_load_balancer_rule.rb b/lib/fog/cloudstack/requests/compute/update_global_load_balancer_rule.rb
new file mode 100644
index 0000000..4bf98d0
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_global_load_balancer_rule.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # update global load balancer rules.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateGlobalLoadBalancerRule.html]
+ def update_global_load_balancer_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateGlobalLoadBalancerRule')
+ else
+ options.merge!('command' => 'updateGlobalLoadBalancerRule',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_guest_os.rb b/lib/fog/cloudstack/requests/compute/update_guest_os.rb
new file mode 100644
index 0000000..440aac2
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_guest_os.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates the information about Guest OS
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateGuestOs.html]
+ def update_guest_os(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateGuestOs')
+ else
+ options.merge!('command' => 'updateGuestOs',
+ 'id' => args[0],
+ 'osdisplayname' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_guest_os_mapping.rb b/lib/fog/cloudstack/requests/compute/update_guest_os_mapping.rb
new file mode 100644
index 0000000..5c5ee57
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_guest_os_mapping.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates the information about Guest OS to Hypervisor specific name mapping
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateGuestOsMapping.html]
+ def update_guest_os_mapping(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateGuestOsMapping')
+ else
+ options.merge!('command' => 'updateGuestOsMapping',
+ 'osnameforhypervisor' => args[0],
+ 'id' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_host.rb b/lib/fog/cloudstack/requests/compute/update_host.rb
new file mode 100644
index 0000000..c535386
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_host.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a host.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateHost.html]
+ def update_host(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateHost')
+ else
+ options.merge!('command' => 'updateHost',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_host_password.rb b/lib/fog/cloudstack/requests/compute/update_host_password.rb
new file mode 100644
index 0000000..ad3aea0
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_host_password.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Update password of a host/pool on management server.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateHostPassword.html]
+ def update_host_password(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateHostPassword')
+ else
+ options.merge!('command' => 'updateHostPassword',
+ 'username' => args[0],
+ 'password' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_hypervisor_capabilities.rb b/lib/fog/cloudstack/requests/compute/update_hypervisor_capabilities.rb
new file mode 100644
index 0000000..1273ed9
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_hypervisor_capabilities.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a hypervisor capabilities.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateHypervisorCapabilities.html]
+ def update_hypervisor_capabilities(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateHypervisorCapabilities')
+ else
+ options.merge!('command' => 'updateHypervisorCapabilities')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_instance_group.rb b/lib/fog/cloudstack/requests/compute/update_instance_group.rb
new file mode 100644
index 0000000..7a94463
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_instance_group.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a vm group
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateInstanceGroup.html]
+ def update_instance_group(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateInstanceGroup')
+ else
+ options.merge!('command' => 'updateInstanceGroup',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_ip_address.rb b/lib/fog/cloudstack/requests/compute/update_ip_address.rb
new file mode 100644
index 0000000..ab0611e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_ip_address.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates an ip address
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateIpAddress.html]
+ def update_ip_address(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateIpAddress')
+ else
+ options.merge!('command' => 'updateIpAddress',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_iso.rb b/lib/fog/cloudstack/requests/compute/update_iso.rb
new file mode 100644
index 0000000..cc9dbbe
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_iso.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates an ISO file.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateIso.html]
+ def update_iso(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateIso')
+ else
+ options.merge!('command' => 'updateIso',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_iso_permissions.rb b/lib/fog/cloudstack/requests/compute/update_iso_permissions.rb
new file mode 100644
index 0000000..11594fc
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_iso_permissions.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates iso permissions
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateIsoPermissions.html]
+ def update_iso_permissions(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateIsoPermissions')
+ else
+ options.merge!('command' => 'updateIsoPermissions',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_lb_health_check_policy.rb b/lib/fog/cloudstack/requests/compute/update_lb_health_check_policy.rb
new file mode 100644
index 0000000..4efd1f2
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_lb_health_check_policy.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates LB HealthCheck policy
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateLBHealthCheckPolicy.html]
+ def update_lb_health_check_policy(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateLBHealthCheckPolicy')
+ else
+ options.merge!('command' => 'updateLBHealthCheckPolicy',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_lb_stickiness_policy.rb b/lib/fog/cloudstack/requests/compute/update_lb_stickiness_policy.rb
new file mode 100644
index 0000000..160b98d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_lb_stickiness_policy.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates LB Stickiness policy
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateLBStickinessPolicy.html]
+ def update_lb_stickiness_policy(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateLBStickinessPolicy')
+ else
+ options.merge!('command' => 'updateLBStickinessPolicy',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_load_balancer.rb b/lib/fog/cloudstack/requests/compute/update_load_balancer.rb
new file mode 100644
index 0000000..1ee5059
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_load_balancer.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a Load Balancer
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateLoadBalancer.html]
+ def update_load_balancer(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateLoadBalancer')
+ else
+ options.merge!('command' => 'updateLoadBalancer',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_load_balancer_rule.rb b/lib/fog/cloudstack/requests/compute/update_load_balancer_rule.rb
new file mode 100644
index 0000000..8bccc5c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_load_balancer_rule.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates load balancer
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateLoadBalancerRule.html]
+ def update_load_balancer_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateLoadBalancerRule')
+ else
+ options.merge!('command' => 'updateLoadBalancerRule',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_network.rb b/lib/fog/cloudstack/requests/compute/update_network.rb
new file mode 100644
index 0000000..0ae7ac7
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_network.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a network
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateNetwork.html]
+ def update_network(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateNetwork')
+ else
+ options.merge!('command' => 'updateNetwork',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_network_acl_item.rb b/lib/fog/cloudstack/requests/compute/update_network_acl_item.rb
new file mode 100644
index 0000000..5cd7553
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_network_acl_item.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates ACL Item with specified Id
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateNetworkACLItem.html]
+ def update_network_acl_item(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateNetworkACLItem')
+ else
+ options.merge!('command' => 'updateNetworkACLItem',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_network_acl_list.rb b/lib/fog/cloudstack/requests/compute/update_network_acl_list.rb
new file mode 100644
index 0000000..c250781
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_network_acl_list.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates Network ACL list
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateNetworkACLList.html]
+ def update_network_acl_list(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateNetworkACLList')
+ else
+ options.merge!('command' => 'updateNetworkACLList',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_network_offering.rb b/lib/fog/cloudstack/requests/compute/update_network_offering.rb
new file mode 100644
index 0000000..3792e1c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_network_offering.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a network offering.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateNetworkOffering.html]
+ def update_network_offering(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateNetworkOffering')
+ else
+ options.merge!('command' => 'updateNetworkOffering')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_network_service_provider.rb b/lib/fog/cloudstack/requests/compute/update_network_service_provider.rb
new file mode 100644
index 0000000..4ee136e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_network_service_provider.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a network serviceProvider of a physical network
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateNetworkServiceProvider.html]
+ def update_network_service_provider(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateNetworkServiceProvider')
+ else
+ options.merge!('command' => 'updateNetworkServiceProvider',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_physical_network.rb b/lib/fog/cloudstack/requests/compute/update_physical_network.rb
new file mode 100644
index 0000000..d0c38d7
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_physical_network.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a physical network
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updatePhysicalNetwork.html]
+ def update_physical_network(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updatePhysicalNetwork')
+ else
+ options.merge!('command' => 'updatePhysicalNetwork',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_pod.rb b/lib/fog/cloudstack/requests/compute/update_pod.rb
new file mode 100644
index 0000000..c8aeaba
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_pod.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a Pod.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updatePod.html]
+ def update_pod(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updatePod')
+ else
+ options.merge!('command' => 'updatePod',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_port_forwarding_rule.rb b/lib/fog/cloudstack/requests/compute/update_port_forwarding_rule.rb
new file mode 100644
index 0000000..5f692c7
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_port_forwarding_rule.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a port forwarding rule. Only the private port and the virtual machine can be updated.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updatePortForwardingRule.html]
+ def update_port_forwarding_rule(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updatePortForwardingRule')
+ else
+ options.merge!('command' => 'updatePortForwardingRule',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_project.rb b/lib/fog/cloudstack/requests/compute/update_project.rb
new file mode 100644
index 0000000..37b5533
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_project.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a project
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateProject.html]
+ def update_project(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateProject')
+ else
+ options.merge!('command' => 'updateProject',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_project_invitation.rb b/lib/fog/cloudstack/requests/compute/update_project_invitation.rb
new file mode 100644
index 0000000..0715f3a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_project_invitation.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Accepts or declines project invitation
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateProjectInvitation.html]
+ def update_project_invitation(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateProjectInvitation')
+ else
+ options.merge!('command' => 'updateProjectInvitation',
+ 'projectid' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_region.rb b/lib/fog/cloudstack/requests/compute/update_region.rb
new file mode 100644
index 0000000..00b551d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_region.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a region
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateRegion.html]
+ def update_region(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateRegion')
+ else
+ options.merge!('command' => 'updateRegion',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_remote_access_vpn.rb b/lib/fog/cloudstack/requests/compute/update_remote_access_vpn.rb
new file mode 100644
index 0000000..3e47f29
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_remote_access_vpn.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates remote access vpn
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateRemoteAccessVpn.html]
+ def update_remote_access_vpn(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateRemoteAccessVpn')
+ else
+ options.merge!('command' => 'updateRemoteAccessVpn',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_resource_count.rb b/lib/fog/cloudstack/requests/compute/update_resource_count.rb
index a7c4133..344db74 100644
--- a/lib/fog/cloudstack/requests/compute/update_resource_count.rb
+++ b/lib/fog/cloudstack/requests/compute/update_resource_count.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Updates a user account.
+ class Real
+ # Recalculate and update resource count for an account or domain.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/updateResourceCount.html]
- def update_resource_count(options={})
- options.merge!(
- 'command' => 'updateResourceCount'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateResourceCount.html]
+ def update_resource_count(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateResourceCount')
+ else
+ options.merge!('command' => 'updateResourceCount',
+ 'domainid' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_resource_limit.rb b/lib/fog/cloudstack/requests/compute/update_resource_limit.rb
new file mode 100644
index 0000000..129a84c
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_resource_limit.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates resource limits for an account or domain.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateResourceLimit.html]
+ def update_resource_limit(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateResourceLimit')
+ else
+ options.merge!('command' => 'updateResourceLimit',
+ 'resourcetype' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_service_offering.rb b/lib/fog/cloudstack/requests/compute/update_service_offering.rb
new file mode 100644
index 0000000..478c39f
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_service_offering.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a service offering.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateServiceOffering.html]
+ def update_service_offering(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateServiceOffering')
+ else
+ options.merge!('command' => 'updateServiceOffering',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_storage_network_ip_range.rb b/lib/fog/cloudstack/requests/compute/update_storage_network_ip_range.rb
new file mode 100644
index 0000000..2e74b4d
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_storage_network_ip_range.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Update a Storage network IP range, only allowed when no IPs in this range have been allocated.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateStorageNetworkIpRange.html]
+ def update_storage_network_ip_range(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateStorageNetworkIpRange')
+ else
+ options.merge!('command' => 'updateStorageNetworkIpRange',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_storage_pool.rb b/lib/fog/cloudstack/requests/compute/update_storage_pool.rb
new file mode 100644
index 0000000..b878eca
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_storage_pool.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a storage pool.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateStoragePool.html]
+ def update_storage_pool(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateStoragePool')
+ else
+ options.merge!('command' => 'updateStoragePool',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_template.rb b/lib/fog/cloudstack/requests/compute/update_template.rb
new file mode 100644
index 0000000..3aa6b8e
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_template.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates attributes of a template.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateTemplate.html]
+ def update_template(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateTemplate')
+ else
+ options.merge!('command' => 'updateTemplate',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_template_permissions.rb b/lib/fog/cloudstack/requests/compute/update_template_permissions.rb
new file mode 100644
index 0000000..7009099
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_template_permissions.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a template visibility permissions. A public template is visible to all accounts within the same domain. A private template is visible only to the owner of the template. A priviledged template is a private template with account permissions added. Only accounts specified under the template permissions are visible to them.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateTemplatePermissions.html]
+ def update_template_permissions(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateTemplatePermissions')
+ else
+ options.merge!('command' => 'updateTemplatePermissions',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_traffic_type.rb b/lib/fog/cloudstack/requests/compute/update_traffic_type.rb
new file mode 100644
index 0000000..edc984a
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_traffic_type.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates traffic type of a physical network
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateTrafficType.html]
+ def update_traffic_type(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateTrafficType')
+ else
+ options.merge!('command' => 'updateTrafficType',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_user.rb b/lib/fog/cloudstack/requests/compute/update_user.rb
index 87b755f..ea56106 100644
--- a/lib/fog/cloudstack/requests/compute/update_user.rb
+++ b/lib/fog/cloudstack/requests/compute/update_user.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Updates a user account.
+ class Real
+ # Updates a user account
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/updateUser.html]
- def update_user(options={})
- options.merge!(
- 'command' => 'updateUser'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateUser.html]
+ def update_user(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateUser')
+ else
+ options.merge!('command' => 'updateUser',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_virtual_machine.rb b/lib/fog/cloudstack/requests/compute/update_virtual_machine.rb
index 0e85f82..458e1cb 100644
--- a/lib/fog/cloudstack/requests/compute/update_virtual_machine.rb
+++ b/lib/fog/cloudstack/requests/compute/update_virtual_machine.rb
@@ -1,20 +1,25 @@
module Fog
module Compute
class Cloudstack
- class Real
- # Updates account information for the authenticated user.
+ class Real
+ # Updates properties of a virtual machine. The VM has to be stopped and restarted for the new properties to take effect. UpdateVirtualMachine does not first check whether the VM is stopped. Therefore, stop the VM manually before issuing this call.
#
- # {CloudStack API Reference}[http://download.cloud.com/releases/2.2.0/api_2.2.4/global_admin/updateAccount.html]
- def update_virtual_machine(options={})
- options.merge!(
- 'command' => 'updateVirtualMachine'
- )
-
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateVirtualMachine.html]
+ def update_virtual_machine(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateVirtualMachine')
+ else
+ options.merge!('command' => 'updateVirtualMachine',
+ 'id' => args[0])
+ end
request(options)
end
-
end
+
end
end
end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_vm_affinity_group.rb b/lib/fog/cloudstack/requests/compute/update_vm_affinity_group.rb
new file mode 100644
index 0000000..67b29a3
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_vm_affinity_group.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates the affinity/anti-affinity group associations of a virtual machine. The VM has to be stopped and restarted for the new properties to take effect.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateVMAffinityGroup.html]
+ def update_vm_affinity_group(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateVMAffinityGroup')
+ else
+ options.merge!('command' => 'updateVMAffinityGroup',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_volume.rb b/lib/fog/cloudstack/requests/compute/update_volume.rb
new file mode 100644
index 0000000..33814a2
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_volume.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates the volume.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateVolume.html]
+ def update_volume(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateVolume')
+ else
+ options.merge!('command' => 'updateVolume')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_vpc.rb b/lib/fog/cloudstack/requests/compute/update_vpc.rb
new file mode 100644
index 0000000..6b3429b
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_vpc.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a VPC
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateVPC.html]
+ def update_vpc(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateVPC')
+ else
+ options.merge!('command' => 'updateVPC',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_vpcoffering.rb b/lib/fog/cloudstack/requests/compute/update_vpcoffering.rb
new file mode 100644
index 0000000..7f7c754
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_vpcoffering.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates VPC offering
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateVPCOffering.html]
+ def update_vpcoffering(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateVPCOffering')
+ else
+ options.merge!('command' => 'updateVPCOffering',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_vpn_connection.rb b/lib/fog/cloudstack/requests/compute/update_vpn_connection.rb
new file mode 100644
index 0000000..1de2235
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_vpn_connection.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates site to site vpn connection
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateVpnConnection.html]
+ def update_vpn_connection(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateVpnConnection')
+ else
+ options.merge!('command' => 'updateVpnConnection',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_vpn_customer_gateway.rb b/lib/fog/cloudstack/requests/compute/update_vpn_customer_gateway.rb
new file mode 100644
index 0000000..48e0587
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_vpn_customer_gateway.rb
@@ -0,0 +1,30 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Update site to site vpn customer gateway
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateVpnCustomerGateway.html]
+ def update_vpn_customer_gateway(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateVpnCustomerGateway')
+ else
+ options.merge!('command' => 'updateVpnCustomerGateway',
+ 'id' => args[0],
+ 'gateway' => args[1],
+ 'cidrlist' => args[2],
+ 'ipsecpsk' => args[3],
+ 'esppolicy' => args[4],
+ 'ikepolicy' => args[5])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_vpn_gateway.rb b/lib/fog/cloudstack/requests/compute/update_vpn_gateway.rb
new file mode 100644
index 0000000..9841e97
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_vpn_gateway.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates site to site vpn local gateway
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateVpnGateway.html]
+ def update_vpn_gateway(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateVpnGateway')
+ else
+ options.merge!('command' => 'updateVpnGateway',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/update_zone.rb b/lib/fog/cloudstack/requests/compute/update_zone.rb
new file mode 100644
index 0000000..27e7dcf
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/update_zone.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Updates a Zone.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/updateZone.html]
+ def update_zone(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'updateZone')
+ else
+ options.merge!('command' => 'updateZone',
+ 'id' => args[0])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/upgrade_router_template.rb b/lib/fog/cloudstack/requests/compute/upgrade_router_template.rb
new file mode 100644
index 0000000..08b0352
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/upgrade_router_template.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Upgrades router to use newer template
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/upgradeRouterTemplate.html]
+ def upgrade_router_template(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'upgradeRouterTemplate')
+ else
+ options.merge!('command' => 'upgradeRouterTemplate')
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/upload_custom_certificate.rb b/lib/fog/cloudstack/requests/compute/upload_custom_certificate.rb
new file mode 100644
index 0000000..dfcf585
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/upload_custom_certificate.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Uploads a custom certificate for the console proxy VMs to use for SSL. Can be used to upload a single certificate signed by a known CA. Can also be used, through multiple calls, to upload a chain of certificates from CA to the custom certificate itself.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/uploadCustomCertificate.html]
+ def upload_custom_certificate(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'uploadCustomCertificate')
+ else
+ options.merge!('command' => 'uploadCustomCertificate',
+ 'domainsuffix' => args[0],
+ 'certificate' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/upload_ssl_cert.rb b/lib/fog/cloudstack/requests/compute/upload_ssl_cert.rb
new file mode 100644
index 0000000..e0e9c80
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/upload_ssl_cert.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Upload a certificate to cloudstack
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/uploadSslCert.html]
+ def upload_ssl_cert(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'uploadSslCert')
+ else
+ options.merge!('command' => 'uploadSslCert',
+ 'certificate' => args[0],
+ 'privatekey' => args[1])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/cloudstack/requests/compute/upload_volume.rb b/lib/fog/cloudstack/requests/compute/upload_volume.rb
new file mode 100644
index 0000000..50f55b9
--- /dev/null
+++ b/lib/fog/cloudstack/requests/compute/upload_volume.rb
@@ -0,0 +1,28 @@
+module Fog
+ module Compute
+ class Cloudstack
+
+ class Real
+ # Uploads a data disk.
+ #
+ # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/uploadVolume.html]
+ def upload_volume(*args)
+ options = {}
+ if args[0].is_a? Hash
+ options = args[0]
+ options.merge!('command' => 'uploadVolume')
+ else
+ options.merge!('command' => 'uploadVolume',
+ 'url' => args[0],
+ 'format' => args[1],
+ 'zoneid' => args[2],
+ 'name' => args[3])
+ end
+ request(options)
+ end
+ end
+
+ end
+ end
+end
+
diff --git a/lib/fog/core/deprecated/connection.rb b/lib/fog/core/deprecated/connection.rb
index 00246e2..46400f2 100644
--- a/lib/fog/core/deprecated/connection.rb
+++ b/lib/fog/core/deprecated/connection.rb
@@ -1,7 +1,6 @@
require "fog/xml"
module Fog
-
# @deprecated Use {Fog::Core::Connection} or {XML::SAXParserConnection} if you
# require the response body to be parsed.
#
diff --git a/lib/fog/core/deprecated_connection_accessors.rb b/lib/fog/core/deprecated_connection_accessors.rb
deleted file mode 100644
index 4698b71..0000000
--- a/lib/fog/core/deprecated_connection_accessors.rb
+++ /dev/null
@@ -1,41 +0,0 @@
-module Fog
- module Core
- # This module covers the shared code used by models and collections
- # that deprecates the confusing usage of 'connection' which was
- # actually intended to be an instance of Fog::Service
- module DeprecatedConnectionAccessors
- # Sets the Service but using the wrong name!
- #
- # @deprecated The connection name was wrong and confusing since it refered to the service
- # @param [Fog::Service] service An instance of a Fog service this collection is for
- #
- def connection=(service)
- Fog::Logger.deprecation("#connection= is deprecated, pass :service in at creation [light_black](#{caller.first})[/]")
- @service = service
- end
-
- # Returns the Service the collection is part of
- #
- # @deprecated #connection is deprecated due to confusing name, use #service instead
- # @return [Fog::Service]
- #
- def connection
- Fog::Logger.deprecation("#connection is deprecated, use #service instead [light_black](#{caller.first})[/]")
- @service
- end
-
- # Prepares the value of the service based on the passed attributes
- #
- # @note Intended for use where the service is required before the normal
- # initializer runs. The logic is run there with deprecation warnings.
- #
- # @param [Hash] attributes
- # @return [Fog::Service]
- #
- def prepare_service_value(attributes)
- @service = attributes[:service] || attributes[:connection]
- end
-
- end
- end
-end
diff --git a/lib/fog/core/parser.rb b/lib/fog/core/parser.rb
index e3fa57d..daf0440 100644
--- a/lib/fog/core/parser.rb
+++ b/lib/fog/core/parser.rb
@@ -3,7 +3,6 @@ require "nokogiri"
module Fog
module Parsers
class Base < Nokogiri::XML::SAX::Document
-
attr_reader :response
def initialize
@@ -11,7 +10,7 @@ module Fog
end
def attr_value(name, attrs)
- (entry = attrs.detect {|a, v| a == name }) && entry.last
+ (entry = attrs.find {|a, v| a == name }) && entry.last
end
def reset
@@ -43,14 +42,12 @@ module Fog
def value
@value && @value.dup
end
-
end
end
end
module Fog
class ToHashDocument < Nokogiri::XML::SAX::Document
-
def initialize
@stack = []
end
@@ -111,6 +108,5 @@ module Fog
@stack.push(data)
end
end
-
end
end
diff --git a/lib/fog/digitalocean/compute.rb b/lib/fog/digitalocean/compute.rb
index a74ee69..5f19acc 100644
--- a/lib/fog/digitalocean/compute.rb
+++ b/lib/fog/digitalocean/compute.rb
@@ -3,7 +3,6 @@ require 'fog/digitalocean/core'
module Fog
module Compute
class DigitalOcean < Fog::Service
-
requires :digitalocean_api_key
requires :digitalocean_client_id
@@ -42,7 +41,6 @@ module Fog
# request :digitalocean_resize
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {
@@ -67,11 +65,9 @@ module Fog
def reset_data
self.class.data.delete(@digitalocean_api_key)
end
-
end
class Real
-
def initialize(options={})
@digitalocean_api_key = options[:digitalocean_api_key]
@digitalocean_client_id = options[:digitalocean_client_id]
@@ -114,7 +110,7 @@ module Fog
def retry_event_lock
count = 0
- reponse = nil
+ response = nil
while count < 5
response = yield
@@ -128,7 +124,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/core.rb b/lib/fog/digitalocean/core.rb
index 082f73e..ae91538 100644
--- a/lib/fog/digitalocean/core.rb
+++ b/lib/fog/digitalocean/core.rb
@@ -7,4 +7,3 @@ module Fog
service(:compute, 'Compute')
end
end
-
diff --git a/lib/fog/digitalocean/models/compute/flavor.rb b/lib/fog/digitalocean/models/compute/flavor.rb
index 70a6e57..b2b4735 100644
--- a/lib/fog/digitalocean/models/compute/flavor.rb
+++ b/lib/fog/digitalocean/models/compute/flavor.rb
@@ -4,10 +4,8 @@ module Fog
module Compute
class DigitalOcean
class Flavor < Fog::Model
-
identity :id
attribute :name
-
end
end
end
diff --git a/lib/fog/digitalocean/models/compute/flavors.rb b/lib/fog/digitalocean/models/compute/flavors.rb
index 3332215..c902c0a 100644
--- a/lib/fog/digitalocean/models/compute/flavors.rb
+++ b/lib/fog/digitalocean/models/compute/flavors.rb
@@ -4,7 +4,6 @@ require 'fog/digitalocean/models/compute/flavor'
module Fog
module Compute
class DigitalOcean
-
class Flavors < Fog::Collection
model Fog::Compute::DigitalOcean::Flavor
@@ -17,9 +16,7 @@ module Fog
rescue Fog::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/digitalocean/models/compute/image.rb b/lib/fog/digitalocean/models/compute/image.rb
index a6f9fd6..c643281 100644
--- a/lib/fog/digitalocean/models/compute/image.rb
+++ b/lib/fog/digitalocean/models/compute/image.rb
@@ -4,11 +4,9 @@ module Fog
module Compute
class DigitalOcean
class Image < Fog::Model
-
identity :id
attribute :name
attribute :distribution
-
end
end
end
diff --git a/lib/fog/digitalocean/models/compute/images.rb b/lib/fog/digitalocean/models/compute/images.rb
index 1e08da3..8c81b55 100644
--- a/lib/fog/digitalocean/models/compute/images.rb
+++ b/lib/fog/digitalocean/models/compute/images.rb
@@ -4,7 +4,6 @@ require 'fog/digitalocean/models/compute/image'
module Fog
module Compute
class DigitalOcean
-
class Images < Fog::Collection
model Fog::Compute::DigitalOcean::Image
@@ -17,9 +16,7 @@ module Fog
rescue Fog::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/digitalocean/models/compute/region.rb b/lib/fog/digitalocean/models/compute/region.rb
index b5af26b..0a4da24 100644
--- a/lib/fog/digitalocean/models/compute/region.rb
+++ b/lib/fog/digitalocean/models/compute/region.rb
@@ -4,10 +4,8 @@ module Fog
module Compute
class DigitalOcean
class Region < Fog::Model
-
identity :id
attribute :name
-
end
end
end
diff --git a/lib/fog/digitalocean/models/compute/regions.rb b/lib/fog/digitalocean/models/compute/regions.rb
index d5348ac..6c5a195 100644
--- a/lib/fog/digitalocean/models/compute/regions.rb
+++ b/lib/fog/digitalocean/models/compute/regions.rb
@@ -4,7 +4,6 @@ require 'fog/digitalocean/models/compute/region'
module Fog
module Compute
class DigitalOcean
-
class Regions < Fog::Collection
model Fog::Compute::DigitalOcean::Region
@@ -17,9 +16,7 @@ module Fog
rescue Fog::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/digitalocean/models/compute/server.rb b/lib/fog/digitalocean/models/compute/server.rb
index 226337f..abe4e1a 100644
--- a/lib/fog/digitalocean/models/compute/server.rb
+++ b/lib/fog/digitalocean/models/compute/server.rb
@@ -3,11 +3,9 @@ require 'fog/compute/models/server'
module Fog
module Compute
class DigitalOcean
-
# A DigitalOcean Droplet
#
class Server < Fog::Compute::Server
-
identity :id
attribute :name
attribute :state, :aliases => 'status'
@@ -176,9 +174,7 @@ module Fog
msg = 'DigitalOcean servers do not support updates'
raise NotImplementedError.new(msg)
end
-
end
-
end
end
end
diff --git a/lib/fog/digitalocean/models/compute/servers.rb b/lib/fog/digitalocean/models/compute/servers.rb
index e308159..1ddc220 100644
--- a/lib/fog/digitalocean/models/compute/servers.rb
+++ b/lib/fog/digitalocean/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/digitalocean/models/compute/server'
module Fog
module Compute
class DigitalOcean
-
class Servers < Fog::Collection
-
model Fog::Compute::DigitalOcean::Server
def all(filters = {})
@@ -21,7 +19,7 @@ module Fog
credential = Fog.respond_to?(:credential) && Fog.credential || :default
name = "fog_#{credential}"
- ssh_key = service.ssh_keys.detect { |key| key.name == name }
+ ssh_key = service.ssh_keys.find { |key| key.name == name }
if ssh_key.nil?
ssh_key = service.ssh_keys.create(
:name => name,
@@ -61,9 +59,7 @@ module Fog
raise ArgumentError, "either #{name}_key or #{name}_key_path is required to configure the server"
end
end
-
end
-
end
end
end
diff --git a/lib/fog/digitalocean/models/compute/ssh_key.rb b/lib/fog/digitalocean/models/compute/ssh_key.rb
index a698bb7..4ee1cef 100644
--- a/lib/fog/digitalocean/models/compute/ssh_key.rb
+++ b/lib/fog/digitalocean/models/compute/ssh_key.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class DigitalOcean
class SshKey < Fog::Model
-
identity :id
attribute :name
@@ -21,7 +20,6 @@ module Fog
service.destroy_ssh_key id
true
end
-
end
end
end
diff --git a/lib/fog/digitalocean/models/compute/ssh_keys.rb b/lib/fog/digitalocean/models/compute/ssh_keys.rb
index 8b2c0ca..0411a78 100644
--- a/lib/fog/digitalocean/models/compute/ssh_keys.rb
+++ b/lib/fog/digitalocean/models/compute/ssh_keys.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class DigitalOcean
class SshKeys < Fog::Collection
-
identity :href
model Fog::Compute::DigitalOcean::SshKey
diff --git a/lib/fog/digitalocean/requests/compute/create_server.rb b/lib/fog/digitalocean/requests/compute/create_server.rb
index dca2312..1fca442 100644
--- a/lib/fog/digitalocean/requests/compute/create_server.rb
+++ b/lib/fog/digitalocean/requests/compute/create_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class DigitalOcean
class Real
-
#
# FIXME: missing ssh keys support
#
@@ -33,11 +32,9 @@ module Fog
:query => query_hash
)
end
-
end
class Mock
-
def create_server( name,
size_id,
image_id,
@@ -46,6 +43,11 @@ module Fog
response = Excon::Response.new
response.status = 200
+ # New York 2 (region id 4) is currently the only region that supports
+ # private networking. The Digital Ocean IP will return a null
+ # private_ip_address for any other region
+ has_private_ip = !!options[:private_networking] && (region_id == 4)
+
mock_data = {
"id" => Fog::Mock.random_numbers(1).to_i,
"event_id" => Fog::Mock.random_numbers(2).to_i,
@@ -54,6 +56,7 @@ module Fog
"image_id" => image_id,
"region_id" => region_id,
"ip_address" => "127.0.0.1",
+ "private_ip_address" => has_private_ip ? "10.0.0.1" : nil,
"status" => 'active',
"created_at" => Time.now.strftime("%FT%TZ")
}
@@ -66,7 +69,6 @@ module Fog
self.data[:servers] << mock_data
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/requests/compute/create_ssh_key.rb b/lib/fog/digitalocean/requests/compute/create_ssh_key.rb
index b64b5e7..328d5f9 100644
--- a/lib/fog/digitalocean/requests/compute/create_ssh_key.rb
+++ b/lib/fog/digitalocean/requests/compute/create_ssh_key.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class DigitalOcean
class Real
-
def create_ssh_key( name, pub_key )
request(
:expects => [200],
@@ -11,11 +10,9 @@ module Fog
:query => { 'name' => name, 'ssh_pub_key' => pub_key }
)
end
-
end
class Mock
-
def create_ssh_key( name, pub_key )
response = Excon::Response.new
response.status = 200
@@ -31,7 +28,6 @@ module Fog
self.data[:ssh_keys] << mock_data
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/requests/compute/destroy_server.rb b/lib/fog/digitalocean/requests/compute/destroy_server.rb
index c86af68..c1a9b75 100644
--- a/lib/fog/digitalocean/requests/compute/destroy_server.rb
+++ b/lib/fog/digitalocean/requests/compute/destroy_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class DigitalOcean
class Real
-
#
# FIXME: missing ssh keys support
#
@@ -15,11 +14,9 @@ module Fog
:query => {:scrub_data => '1' }
)
end
-
end
class Mock
-
def destroy_server( id )
response = Excon::Response.new
response.status = 200
@@ -32,7 +29,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/requests/compute/destroy_ssh_key.rb b/lib/fog/digitalocean/requests/compute/destroy_ssh_key.rb
index 1819f70..936c041 100644
--- a/lib/fog/digitalocean/requests/compute/destroy_ssh_key.rb
+++ b/lib/fog/digitalocean/requests/compute/destroy_ssh_key.rb
@@ -2,11 +2,10 @@ module Fog
module Compute
class DigitalOcean
class Real
-
#
# Delete a SSH public key from your account
#
- # @see https://www.digitalocean.com/api#ssh_keys
+ # @see https://developers.digitalocean.com/ssh-keys
#
def destroy_ssh_key(id)
request(
@@ -15,11 +14,9 @@ module Fog
:path => "ssh_keys/#{id}/destroy"
)
end
-
end
class Mock
-
def destroy_ssh_key(id)
response = Excon::Response.new
response.status = 200
@@ -30,7 +27,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/requests/compute/get_server_details.rb b/lib/fog/digitalocean/requests/compute/get_server_details.rb
index baad87a..062fde7 100644
--- a/lib/fog/digitalocean/requests/compute/get_server_details.rb
+++ b/lib/fog/digitalocean/requests/compute/get_server_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class DigitalOcean
class Real
-
def get_server_details(server_id)
request(
:expects => [200],
@@ -10,11 +9,9 @@ module Fog
:path => "droplets/#{server_id}"
)
end
-
end
class Mock
-
def get_server_details(server_id)
response = Excon::Response.new
response.status = 200
@@ -28,7 +25,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/requests/compute/get_ssh_key.rb b/lib/fog/digitalocean/requests/compute/get_ssh_key.rb
index e88b211..e61c5ba 100644
--- a/lib/fog/digitalocean/requests/compute/get_ssh_key.rb
+++ b/lib/fog/digitalocean/requests/compute/get_ssh_key.rb
@@ -2,12 +2,11 @@ module Fog
module Compute
class DigitalOcean
class Real
-
#
# This method shows a specific public SSH key in your account
# that can be added to a droplet.
#
- # @see https://www.digitalocean.com/api#ssh_keys
+ # @see https://developers.digitalocean.com/ssh-keys
#
def get_ssh_key(id)
request(
@@ -16,23 +15,20 @@ module Fog
:path => "ssh_keys/#{id}"
)
end
-
end
class Mock
-
def get_ssh_key(id)
response = Excon::Response.new
response.status = 200
response.body = {
"status" => "OK",
# key listing does not return ssh_pub_key
- # https://www.digitalocean.com/api#ssh_keys
+ # https://developers.digitalocean.com/ssh-keys
"ssh_key" => self.data[:ssh_keys].find { |k| k['id'] == id }
}
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/requests/compute/list_flavors.rb b/lib/fog/digitalocean/requests/compute/list_flavors.rb
index 4ccc9ff..0a73d3a 100644
--- a/lib/fog/digitalocean/requests/compute/list_flavors.rb
+++ b/lib/fog/digitalocean/requests/compute/list_flavors.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class DigitalOcean
class Real
-
def list_flavors(options = {})
request(
:expects => [200],
@@ -10,11 +9,9 @@ module Fog
:path => 'sizes'
)
end
-
end
class Mock
-
def list_flavors
response = Excon::Response.new
response.status = 200
@@ -31,7 +28,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/requests/compute/list_images.rb b/lib/fog/digitalocean/requests/compute/list_images.rb
index 771e886..01a2553 100644
--- a/lib/fog/digitalocean/requests/compute/list_images.rb
+++ b/lib/fog/digitalocean/requests/compute/list_images.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class DigitalOcean
class Real
-
def list_images(options = {})
request(
:expects => [200],
@@ -10,11 +9,9 @@ module Fog
:path => 'images'
)
end
-
end
class Mock
-
def list_images
response = Excon::Response.new
response.status = 200
@@ -42,7 +39,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/requests/compute/list_regions.rb b/lib/fog/digitalocean/requests/compute/list_regions.rb
index cc13faf..d7631f4 100644
--- a/lib/fog/digitalocean/requests/compute/list_regions.rb
+++ b/lib/fog/digitalocean/requests/compute/list_regions.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class DigitalOcean
class Real
-
def list_regions(options = {})
request(
:expects => [200],
@@ -10,24 +9,25 @@ module Fog
:path => 'regions'
)
end
-
end
class Mock
-
def list_regions
response = Excon::Response.new
response.status = 200
response.body = {
"status" => "OK",
"regions" => [
- {"id" => 1,"name" => "New York 1"},
- {"id" => 2,"name" => "Amsterdam 1"}
+ { "id" => 1, "name" => "New York 1" },
+ { "id" => 2, "name" => "Amsterdam 1" },
+ { "id" => 3, "name" => "San Francisco 1" },
+ { "id" => 4, "name" => "New York 2" },
+ { "id" => 5, "name" => "Amsterdam 2" },
+ { "id" => 6, "name" => "Singapore 1" }
]
}
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/requests/compute/list_servers.rb b/lib/fog/digitalocean/requests/compute/list_servers.rb
index 6062b6f..07f3c9b 100644
--- a/lib/fog/digitalocean/requests/compute/list_servers.rb
+++ b/lib/fog/digitalocean/requests/compute/list_servers.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class DigitalOcean
class Real
-
def list_servers(options = {})
request(
:expects => [200],
@@ -10,11 +9,9 @@ module Fog
:path => 'droplets'
)
end
-
end
class Mock
-
def list_servers
response = Excon::Response.new
response.status = 200
@@ -24,7 +21,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/requests/compute/list_ssh_keys.rb b/lib/fog/digitalocean/requests/compute/list_ssh_keys.rb
index 2887643..446b9bd 100644
--- a/lib/fog/digitalocean/requests/compute/list_ssh_keys.rb
+++ b/lib/fog/digitalocean/requests/compute/list_ssh_keys.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class DigitalOcean
class Real
-
def list_ssh_keys(options = {})
request(
:expects => [200],
@@ -10,11 +9,9 @@ module Fog
:path => 'ssh_keys'
)
end
-
end
class Mock
-
def list_ssh_keys
response = Excon::Response.new
response.status = 200
@@ -24,7 +21,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/requests/compute/power_cycle_server.rb b/lib/fog/digitalocean/requests/compute/power_cycle_server.rb
index 62d9fc9..720118e 100644
--- a/lib/fog/digitalocean/requests/compute/power_cycle_server.rb
+++ b/lib/fog/digitalocean/requests/compute/power_cycle_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class DigitalOcean
class Real
-
def power_cycle_server( id )
request(
:expects => [200],
@@ -10,11 +9,9 @@ module Fog
:path => "droplets/#{id}/power_cycle"
)
end
-
end
class Mock
-
def power_cycle_server( id )
response = Excon::Response.new
response.status = 200
@@ -26,7 +23,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/requests/compute/power_off_server.rb b/lib/fog/digitalocean/requests/compute/power_off_server.rb
index ac096eb..b48dd7c 100644
--- a/lib/fog/digitalocean/requests/compute/power_off_server.rb
+++ b/lib/fog/digitalocean/requests/compute/power_off_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class DigitalOcean
class Real
-
def power_off_server( id )
request(
:expects => [200],
@@ -10,11 +9,9 @@ module Fog
:path => "droplets/#{id}/power_off"
)
end
-
end
class Mock
-
def power_off_server( id )
response = Excon::Response.new
response.status = 200
@@ -26,7 +23,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/requests/compute/power_on_server.rb b/lib/fog/digitalocean/requests/compute/power_on_server.rb
index 03b1457..cd4f0a7 100644
--- a/lib/fog/digitalocean/requests/compute/power_on_server.rb
+++ b/lib/fog/digitalocean/requests/compute/power_on_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class DigitalOcean
class Real
-
def power_on_server( id )
request(
:expects => [200],
@@ -10,11 +9,9 @@ module Fog
:path => "droplets/#{id}/power_on"
)
end
-
end
class Mock
-
def power_on_server( id )
response = Excon::Response.new
response.status = 200
@@ -26,7 +23,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/requests/compute/reboot_server.rb b/lib/fog/digitalocean/requests/compute/reboot_server.rb
index 0e61f98..e56ed28 100644
--- a/lib/fog/digitalocean/requests/compute/reboot_server.rb
+++ b/lib/fog/digitalocean/requests/compute/reboot_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class DigitalOcean
class Real
-
def reboot_server( id )
request(
:expects => [200],
@@ -10,11 +9,9 @@ module Fog
:path => "droplets/#{id}/reboot"
)
end
-
end
class Mock
-
def reboot_server( id )
response = Excon::Response.new
response.status = 200
@@ -26,7 +23,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/digitalocean/requests/compute/shutdown_server.rb b/lib/fog/digitalocean/requests/compute/shutdown_server.rb
index d108f2d..d3bd076 100644
--- a/lib/fog/digitalocean/requests/compute/shutdown_server.rb
+++ b/lib/fog/digitalocean/requests/compute/shutdown_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class DigitalOcean
class Real
-
def shutdown_server( id )
request(
:expects => [200],
@@ -10,11 +9,9 @@ module Fog
:path => "droplets/#{id}/shutdown"
)
end
-
end
class Mock
-
def shutdown_server( id )
response = Excon::Response.new
response.status = 200
@@ -29,7 +26,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/dnsimple/core.rb b/lib/fog/dnsimple/core.rb
index 148cda5..6f9d067 100644
--- a/lib/fog/dnsimple/core.rb
+++ b/lib/fog/dnsimple/core.rb
@@ -3,10 +3,8 @@ require 'fog/json'
module Fog
module DNSimple
-
extend Fog::Provider
service(:dns, 'DNS')
-
end
end
diff --git a/lib/fog/dnsimple/dns.rb b/lib/fog/dnsimple/dns.rb
index cd53c7b..81120f0 100644
--- a/lib/fog/dnsimple/dns.rb
+++ b/lib/fog/dnsimple/dns.rb
@@ -3,7 +3,6 @@ require 'fog/dnsimple/core'
module Fog
module DNS
class DNSimple < Fog::Service
-
recognizes :dnsimple_email, :dnsimple_password, :dnsimple_token, :dnsimple_domain, :dnsimple_url, :host, :path, :port, :scheme, :persistent
model_path 'fog/dnsimple/models/dns'
@@ -24,7 +23,6 @@ module Fog
request :get_record
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {
@@ -52,11 +50,9 @@ module Fog
def reset_data
self.class.data.delete(@dnsimple_email)
end
-
end
class Real
-
def initialize(options={})
@dnsimple_email = options[:dnsimple_email]
@dnsimple_password = options[:dnsimple_password]
diff --git a/lib/fog/dnsimple/models/dns/record.rb b/lib/fog/dnsimple/models/dns/record.rb
index 65d7b61..779e68d 100644
--- a/lib/fog/dnsimple/models/dns/record.rb
+++ b/lib/fog/dnsimple/models/dns/record.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module DNS
class DNSimple
-
class Record < Fog::Model
extend Fog::Deprecation
deprecate :ip, :value
@@ -58,9 +57,7 @@ module Fog
def zone=(new_zone)
@zone = new_zone
end
-
end
-
end
end
end
diff --git a/lib/fog/dnsimple/models/dns/records.rb b/lib/fog/dnsimple/models/dns/records.rb
index b49c258..496c7c5 100644
--- a/lib/fog/dnsimple/models/dns/records.rb
+++ b/lib/fog/dnsimple/models/dns/records.rb
@@ -4,9 +4,7 @@ require 'fog/dnsimple/models/dns/record'
module Fog
module DNS
class DNSimple
-
class Records < Fog::Collection
-
attribute :zone
model Fog::DNS::DNSimple::Record
@@ -30,9 +28,7 @@ module Fog
requires :zone
super({ :zone => zone }.merge!(attributes))
end
-
end
-
end
end
end
diff --git a/lib/fog/dnsimple/models/dns/zone.rb b/lib/fog/dnsimple/models/dns/zone.rb
index 32dd187..101dc96 100644
--- a/lib/fog/dnsimple/models/dns/zone.rb
+++ b/lib/fog/dnsimple/models/dns/zone.rb
@@ -4,9 +4,7 @@ require 'fog/dnsimple/models/dns/records'
module Fog
module DNS
class DNSimple
-
class Zone < Fog::Model
-
identity :id
attribute :domain, :aliases => 'name'
@@ -42,9 +40,7 @@ module Fog
merge_attributes(data)
true
end
-
end
-
end
end
end
diff --git a/lib/fog/dnsimple/models/dns/zones.rb b/lib/fog/dnsimple/models/dns/zones.rb
index 1a48866..c3b4937 100644
--- a/lib/fog/dnsimple/models/dns/zones.rb
+++ b/lib/fog/dnsimple/models/dns/zones.rb
@@ -4,9 +4,7 @@ require 'fog/dnsimple/models/dns/zone'
module Fog
module DNS
class DNSimple
-
class Zones < Fog::Collection
-
model Fog::DNS::DNSimple::Zone
def all
@@ -21,9 +19,7 @@ module Fog
rescue Excon::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/dnsimple/requests/dns/create_domain.rb b/lib/fog/dnsimple/requests/dns/create_domain.rb
index 558e2f6..4311e6a 100644
--- a/lib/fog/dnsimple/requests/dns/create_domain.rb
+++ b/lib/fog/dnsimple/requests/dns/create_domain.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSimple
class Real
-
# Create a single domain in DNSimple in your account.
#
# ==== Parameters
@@ -26,11 +25,9 @@ module Fog
:path => "/domains"
)
end
-
end
class Mock
-
def create_domain(name)
body = {
"domain" => {
@@ -59,9 +56,7 @@ module Fog
response.body = body
response
end
-
end
-
end
end
end
diff --git a/lib/fog/dnsimple/requests/dns/create_record.rb b/lib/fog/dnsimple/requests/dns/create_record.rb
index 1947c11..ea0e18c 100644
--- a/lib/fog/dnsimple/requests/dns/create_record.rb
+++ b/lib/fog/dnsimple/requests/dns/create_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSimple
class Real
-
# Create a new host in the specified zone
#
# ==== Parameters
@@ -36,11 +35,9 @@ module Fog
:path => "/domains/#{domain}/records"
)
end
-
end
class Mock
-
def create_record(domain, name, type, content, options = {})
body = {
"record" => {
@@ -64,9 +61,7 @@ module Fog
response.body = body
response
end
-
end
-
end
end
end
diff --git a/lib/fog/dnsimple/requests/dns/delete_domain.rb b/lib/fog/dnsimple/requests/dns/delete_domain.rb
index 1bb2869..ab0fce6 100644
--- a/lib/fog/dnsimple/requests/dns/delete_domain.rb
+++ b/lib/fog/dnsimple/requests/dns/delete_domain.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSimple
class Real
-
# Delete the given domain from your account. You may use
# either the domain ID or the domain name.
#
@@ -19,11 +18,9 @@ module Fog
:path => "/domains/#{domain}"
)
end
-
end
class Mock
-
def delete_domain(name)
self.data[:records].delete name
self.data[:domains].reject! { |domain| domain["domain"]["name"] == name }
@@ -32,7 +29,6 @@ module Fog
response.status = 200
response
end
-
end
end
end
diff --git a/lib/fog/dnsimple/requests/dns/delete_record.rb b/lib/fog/dnsimple/requests/dns/delete_record.rb
index 68f1c66..10ad196 100644
--- a/lib/fog/dnsimple/requests/dns/delete_record.rb
+++ b/lib/fog/dnsimple/requests/dns/delete_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSimple
class Real
-
# Delete the record with the given ID for the given domain.
#
# ==== Parameters
@@ -15,11 +14,9 @@ module Fog
:path => "/domains/#{domain}/records/#{record_id}"
)
end
-
end
class Mock
-
def delete_record(domain, record_id)
self.data[:records][domain].reject! { |record| record["record"]["id"] == record_id }
@@ -27,9 +24,7 @@ module Fog
response.status = 200
response
end
-
end
-
end
end
end
diff --git a/lib/fog/dnsimple/requests/dns/get_domain.rb b/lib/fog/dnsimple/requests/dns/get_domain.rb
index e922e8b..6b2bf61 100644
--- a/lib/fog/dnsimple/requests/dns/get_domain.rb
+++ b/lib/fog/dnsimple/requests/dns/get_domain.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSimple
class Real
-
# Get the details for a specific domain in your account. You
# may pass either the domain numeric ID or the domain name
# itself.
@@ -21,13 +20,11 @@ module Fog
:path => "/domains/#{domain}"
)
end
-
end
class Mock
-
def get_domain(id)
- domain = self.data[:domains].detect do |domain|
+ domain = self.data[:domains].find do |domain|
domain["domain"]["id"] == id || domain["domain"]["name"] == id
end
@@ -36,7 +33,6 @@ module Fog
response.body = domain
response
end
-
end
end
end
diff --git a/lib/fog/dnsimple/requests/dns/get_record.rb b/lib/fog/dnsimple/requests/dns/get_record.rb
index 83ca5a3..24b9e59 100644
--- a/lib/fog/dnsimple/requests/dns/get_record.rb
+++ b/lib/fog/dnsimple/requests/dns/get_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSimple
class Real
-
# Gets record from given domain.
#
# ==== Parameters
@@ -20,17 +19,15 @@ module Fog
:path => "/domains/#{domain}/records/#{record_id}"
)
end
-
end
class Mock
-
def get_record(domain, record_id)
response = Excon::Response.new
- if self.data[:records].has_key?(domain)
+ if self.data[:records].key?(domain)
response.status = 200
- response.body = self.data[:records][domain].detect { |record| record["record"]["id"] == record_id }
+ response.body = self.data[:records][domain].find { |record| record["record"]["id"] == record_id }
if response.body.nil?
response.status = 404
diff --git a/lib/fog/dnsimple/requests/dns/list_domains.rb b/lib/fog/dnsimple/requests/dns/list_domains.rb
index dda7186..04dcf2c 100644
--- a/lib/fog/dnsimple/requests/dns/list_domains.rb
+++ b/lib/fog/dnsimple/requests/dns/list_domains.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSimple
class Real
-
# Get the details for a specific domain in your account. You
# may pass either the domain numeric ID or the domain name itself.
#
@@ -20,20 +19,16 @@ module Fog
:path => '/domains'
)
end
-
end
class Mock
-
def list_domains
response = Excon::Response.new
response.status = 200
response.body = self.data[:domains]
response
end
-
end
-
end
end
end
diff --git a/lib/fog/dnsimple/requests/dns/list_records.rb b/lib/fog/dnsimple/requests/dns/list_records.rb
index b64f53a..7036df4 100644
--- a/lib/fog/dnsimple/requests/dns/list_records.rb
+++ b/lib/fog/dnsimple/requests/dns/list_records.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSimple
class Real
-
# Get the list of records for the specific domain.
#
# ==== Parameters
@@ -20,20 +19,16 @@ module Fog
:path => "/domains/#{domain}/records"
)
end
-
end
class Mock
-
def list_records(domain)
response = Excon::Response.new
response.status = 200
response.body = self.data[:records][domain] || []
response
end
-
end
-
end
end
end
diff --git a/lib/fog/dnsimple/requests/dns/update_record.rb b/lib/fog/dnsimple/requests/dns/update_record.rb
index c1cddb8..3ec518b 100644
--- a/lib/fog/dnsimple/requests/dns/update_record.rb
+++ b/lib/fog/dnsimple/requests/dns/update_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSimple
class Real
-
# Update the given record for the given domain.
#
# ==== Parameters
@@ -30,13 +29,11 @@ module Fog
:path => "/domains/#{domain}/records/#{record_id}"
)
end
-
end
class Mock
-
def update_record(domain, record_id, options)
- record = self.data[:records][domain].detect { |record| record["record"]["id"] == record_id }
+ record = self.data[:records][domain].find { |record| record["record"]["id"] == record_id }
response = Excon::Response.new
if record.nil?
@@ -50,7 +47,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/core.rb b/lib/fog/dnsmadeeasy/core.rb
index 3efa1a1..edcceaa 100644
--- a/lib/fog/dnsmadeeasy/core.rb
+++ b/lib/fog/dnsmadeeasy/core.rb
@@ -3,10 +3,8 @@ require 'fog/json'
module Fog
module DNSMadeEasy
-
extend Fog::Provider
service(:dns, 'DNS')
-
end
end
diff --git a/lib/fog/dnsmadeeasy/dns.rb b/lib/fog/dnsmadeeasy/dns.rb
index 9c5dc8c..199e188 100644
--- a/lib/fog/dnsmadeeasy/dns.rb
+++ b/lib/fog/dnsmadeeasy/dns.rb
@@ -3,7 +3,6 @@ require 'fog/dnsmadeeasy/core'
module Fog
module DNS
class DNSMadeEasy < Fog::Service
-
requires :dnsmadeeasy_api_key, :dnsmadeeasy_secret_key
recognizes :host, :path, :port, :scheme, :persistent
@@ -59,7 +58,6 @@ module Fog
end
class Real
-
# Initialize connection to DNS Made Easy
#
# ==== Notes
@@ -121,7 +119,6 @@ module Fog
end
response
-
end
def signature(params)
diff --git a/lib/fog/dnsmadeeasy/models/dns/record.rb b/lib/fog/dnsmadeeasy/models/dns/record.rb
index 0cf1510..c99e371 100644
--- a/lib/fog/dnsmadeeasy/models/dns/record.rb
+++ b/lib/fog/dnsmadeeasy/models/dns/record.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module DNS
class DNSMadeEasy
-
class Record < Fog::Model
extend Fog::Deprecation
deprecate :ip, :value
@@ -72,9 +71,7 @@ module Fog
def zone=(new_zone)
@zone = new_zone
end
-
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/models/dns/records.rb b/lib/fog/dnsmadeeasy/models/dns/records.rb
index 92ba0f9..8650120 100644
--- a/lib/fog/dnsmadeeasy/models/dns/records.rb
+++ b/lib/fog/dnsmadeeasy/models/dns/records.rb
@@ -4,9 +4,7 @@ require 'fog/dnsmadeeasy/models/dns/record'
module Fog
module DNS
class DNSMadeEasy
-
class Records < Fog::Collection
-
attribute :zone
model Fog::DNS::DNSMadeEasy::Record
@@ -28,9 +26,7 @@ module Fog
requires :zone
super({ :zone => zone }.merge!(attributes))
end
-
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/models/dns/zone.rb b/lib/fog/dnsmadeeasy/models/dns/zone.rb
index e9a44e9..2cdb968 100644
--- a/lib/fog/dnsmadeeasy/models/dns/zone.rb
+++ b/lib/fog/dnsmadeeasy/models/dns/zone.rb
@@ -4,9 +4,7 @@ require 'fog/dnsmadeeasy/models/dns/records'
module Fog
module DNS
class DNSMadeEasy
-
class Zone < Fog::Model
-
identity :id
attribute :domain, :aliases => 'name'
attribute :gtd_enabled, :aliases => 'gtdEnabled'
@@ -34,9 +32,7 @@ module Fog
merge_attributes(data)
true
end
-
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/models/dns/zones.rb b/lib/fog/dnsmadeeasy/models/dns/zones.rb
index 6377c94..7d1a7e2 100644
--- a/lib/fog/dnsmadeeasy/models/dns/zones.rb
+++ b/lib/fog/dnsmadeeasy/models/dns/zones.rb
@@ -4,14 +4,12 @@ require 'fog/dnsmadeeasy/models/dns/zone'
module Fog
module DNS
class DNSMadeEasy
-
class Zones < Fog::Collection
-
model Fog::DNS::DNSMadeEasy::Zone
def all
clear
- data = service.list_domains.body['list'].collect{|domain| {:id => domain}}
+ data = service.list_domains.body['list'].map{|domain| {:id => domain}}
load(data)
end
@@ -22,9 +20,7 @@ module Fog
rescue Fog::Service::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/create_domain.rb b/lib/fog/dnsmadeeasy/requests/dns/create_domain.rb
index c0277cd..696174d 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/create_domain.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/create_domain.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Creates a domain entry with the specified name. Returns errors if name is not valid or conflicts with another domain.
#
# ==== Parameters
@@ -22,7 +21,6 @@ module Fog
:path => "/V1.2/domains/#{domain}"
)
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/create_record.rb b/lib/fog/dnsmadeeasy/requests/dns/create_record.rb
index 69027e1..f263e7a 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/create_record.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/create_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Creates a record with the representation specified in the request content. Returns errors if record is not valid.
# Note that a record ID will be generated by the system with this request and any ID that is sent will be ignored. Records are not modifiable for domains that are locked to a template.
#
@@ -38,7 +37,6 @@ module Fog
# * hardLink<~Boolean>
# * 'status'<~Integer> - 201 - record successfully created, 400 - record not valid, see errors in response content, 404 - domain not found
def create_record(domain, name, type, data, options = {})
-
body = {
"name" => name,
"type" => type,
@@ -55,7 +53,6 @@ module Fog
:body => Fog::JSON.encode(body)
)
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/create_secondary.rb b/lib/fog/dnsmadeeasy/requests/dns/create_secondary.rb
index b66cc2f..9d2684a 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/create_secondary.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/create_secondary.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Creates a secondary entry with the specified name. Returns errors if name is not valid or conflicts with another domain.
#
# ==== Parameters
@@ -17,7 +16,6 @@ module Fog
# * gtdLocation<~String> Global Traffic Director location. Values: DEFAULT, US_EAST, US_WEST, EUROPE
# * status<~Integer> - 201 - secondary entry successfully created or modified, 400 - secondary entry name or IP addresses not valid, see errors in response content
def create_secondary(secondary_name, ip_addresses)
-
body = {
"ip" => [*ip_addresses]
}
@@ -29,7 +27,6 @@ module Fog
:body => Fog::JSON.encode(body)
)
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/delete_all_domains.rb b/lib/fog/dnsmadeeasy/requests/dns/delete_all_domains.rb
index c8737ae..c8d42fc 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/delete_all_domains.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/delete_all_domains.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Deletes all domains for your account.
#
# ==== Returns
@@ -16,7 +15,6 @@ module Fog
:path => '/V1.2/domains'
)
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/delete_all_secondary.rb b/lib/fog/dnsmadeeasy/requests/dns/delete_all_secondary.rb
index 063fb4e..cd7cfb5 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/delete_all_secondary.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/delete_all_secondary.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Deletes all secondary entries for your account.
#
# ==== Returns
@@ -15,7 +14,6 @@ module Fog
:path => '/V1.2/secondary'
)
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/delete_domain.rb b/lib/fog/dnsmadeeasy/requests/dns/delete_domain.rb
index 82746eb..3f23940 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/delete_domain.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/delete_domain.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Delete the given domain from your account.
#
# ==== Parameters
@@ -18,7 +17,6 @@ module Fog
:path => "/V1.2/domains/#{domain}"
)
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/delete_record.rb b/lib/fog/dnsmadeeasy/requests/dns/delete_record.rb
index 2116f74..6260833 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/delete_record.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/delete_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Deletes the record with the specified id. Note that records are not modifiable for domains that are locked to a template.
#
# ==== Parameters
@@ -19,7 +18,6 @@ module Fog
:path => "/V1.2/domains/#{domain}/records/#{record_id}"
)
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/delete_secondary.rb b/lib/fog/dnsmadeeasy/requests/dns/delete_secondary.rb
index 239cdef..a0136e8 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/delete_secondary.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/delete_secondary.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Deletes the specified secondary entry.
#
# ==== Parameters
@@ -18,7 +17,6 @@ module Fog
:path => "/V1.2/secondary/#{secondary_name}"
)
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/get_domain.rb b/lib/fog/dnsmadeeasy/requests/dns/get_domain.rb
index 481a9d6..c830438 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/get_domain.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/get_domain.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Get the details for a specific domain in your account.
#
# ==== Parameters
@@ -22,7 +21,6 @@ module Fog
:path => "/V1.2/domains/#{domain}"
)
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/get_record.rb b/lib/fog/dnsmadeeasy/requests/dns/get_record.rb
index b5117a0..96602ed 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/get_record.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/get_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Returns a record object representing the record with the specified id.
#
# ==== Parameters
@@ -31,7 +30,6 @@ module Fog
:path => "/V1.2/domains/#{domain}/records/#{record_id}"
)
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/get_secondary.rb b/lib/fog/dnsmadeeasy/requests/dns/get_secondary.rb
index 830e4b7..9590345 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/get_secondary.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/get_secondary.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Returns the secondary entry object representation of the specified secondary entry.
#
# ==== Parameters
@@ -22,7 +21,6 @@ module Fog
:path => "/V1.2/secondary/#{secondary_name}"
)
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/list_domains.rb b/lib/fog/dnsmadeeasy/requests/dns/list_domains.rb
index 5409fba..663e8e5 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/list_domains.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/list_domains.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Returns a list of all domain names for your account.
#
# ==== Returns
@@ -17,7 +16,6 @@ module Fog
:path => '/V1.2/domains'
)
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/list_records.rb b/lib/fog/dnsmadeeasy/requests/dns/list_records.rb
index b5b31eb..7d80237 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/list_records.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/list_records.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Returns a list of record objects containing all records for the specified domain
#
# ==== Parameters
@@ -35,7 +34,6 @@ module Fog
:query => options
)
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/list_secondary.rb b/lib/fog/dnsmadeeasy/requests/dns/list_secondary.rb
index 177cc43..a518350 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/list_secondary.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/list_secondary.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Returns a list of all secondary entry names for your account.
#
# ==== Returns
@@ -17,7 +16,6 @@ module Fog
:path => '/V1.2/secondary'
)
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/update_record.rb b/lib/fog/dnsmadeeasy/requests/dns/update_record.rb
index dd585ec..e5375fc 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/update_record.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/update_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Updates a record with the representation specified in the request content. Returns errors if record is not valid.
# Note that a record ID will be generated by the system with this request and any ID that is sent will be ignored. Records are not modifiable for domains that are locked to a template.
#
@@ -49,7 +48,6 @@ module Fog
:body => Fog::JSON.encode(options)
)
end
-
end
end
end
diff --git a/lib/fog/dnsmadeeasy/requests/dns/update_secondary.rb b/lib/fog/dnsmadeeasy/requests/dns/update_secondary.rb
index 8f95df1..0fbc3e5 100644
--- a/lib/fog/dnsmadeeasy/requests/dns/update_secondary.rb
+++ b/lib/fog/dnsmadeeasy/requests/dns/update_secondary.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class DNSMadeEasy
class Real
-
# Modifies a secondary entry with the specified name. Returns errors if name is not valid or conflicts with another domain.
#
# ==== Parameters
@@ -17,7 +16,6 @@ module Fog
# * gtdLocation<~String> Global Traffic Director location. Values: DEFAULT, US_EAST, US_WEST, EUROPE
# * status<~Integer> - 201 - secondary entry successfully created or modified, 400 - secondary entry name or IP addresses not valid, see errors in response content
def update_secondary(secondary_name, ip_addresses)
-
body = {
"ip" => [*ip_addresses]
}
@@ -29,7 +27,6 @@ module Fog
:body => Fog::JSON.encode(body)
)
end
-
end
end
end
diff --git a/lib/fog/dreamhost/core.rb b/lib/fog/dreamhost/core.rb
index 8d1d4c0..034c245 100644
--- a/lib/fog/dreamhost/core.rb
+++ b/lib/fog/dreamhost/core.rb
@@ -3,10 +3,8 @@ require 'fog/json'
module Fog
module Dreamhost
-
extend Fog::Provider
service(:dns, 'DNS')
-
end
end
diff --git a/lib/fog/dreamhost/dns.rb b/lib/fog/dreamhost/dns.rb
index 3f6e5ec..498572c 100644
--- a/lib/fog/dreamhost/dns.rb
+++ b/lib/fog/dreamhost/dns.rb
@@ -3,7 +3,6 @@ require 'fog/dreamhost/core'
module Fog
module DNS
class Dreamhost < Fog::Service
-
requires :dreamhost_api_key
model_path 'fog/dreamhost/models/dns'
@@ -18,7 +17,6 @@ module Fog
request :delete_record
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {}
@@ -40,11 +38,9 @@ module Fog
def reset_data
self.class.data.delete
end
-
end
class Real
-
def initialize(options={})
@dreamhost_api_key = options[:dreamhost_api_key]
if options[:dreamhost_url]
diff --git a/lib/fog/dreamhost/models/dns/record.rb b/lib/fog/dreamhost/models/dns/record.rb
index 2aea5c0..25518e5 100644
--- a/lib/fog/dreamhost/models/dns/record.rb
+++ b/lib/fog/dreamhost/models/dns/record.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module DNS
class Dreamhost
-
class Record < Fog::Model
-
identity :name, :aliases => 'record'
attribute :value
@@ -27,9 +25,7 @@ module Fog
merge_attributes(data)
true
end
-
end
-
end
end
end
diff --git a/lib/fog/dreamhost/models/dns/records.rb b/lib/fog/dreamhost/models/dns/records.rb
index 5f374bf..e8397c0 100644
--- a/lib/fog/dreamhost/models/dns/records.rb
+++ b/lib/fog/dreamhost/models/dns/records.rb
@@ -4,15 +4,13 @@ require 'fog/dreamhost/models/dns/record'
module Fog
module DNS
class Dreamhost
-
class Records < Fog::Collection
-
model Fog::DNS::Dreamhost::Record
def all(filter = {})
clear
if filter[:zone]
- data = service.list_records.body['data'].find_all { |r| r['zone'] == filter[:zone] }
+ data = service.list_records.body['data'].select { |r| r['zone'] == filter[:zone] }
else
data = service.list_records.body['data']
end
@@ -25,14 +23,12 @@ module Fog
rescue Excon::Errors::NotFound
nil
end
-
end
def new(attributes = {})
requires :zone
super({ :zone => zone }.merge!(attributes))
end
-
end
end
end
diff --git a/lib/fog/dreamhost/models/dns/zone.rb b/lib/fog/dreamhost/models/dns/zone.rb
index 1f46f32..bbeac96 100644
--- a/lib/fog/dreamhost/models/dns/zone.rb
+++ b/lib/fog/dreamhost/models/dns/zone.rb
@@ -4,7 +4,6 @@ require 'fog/dreamhost/models/dns/records'
module Fog
module DNS
class Dreamhost
-
#
# Dreamhost API has no concept of 'Zone', but we
# can emulate it.
@@ -12,7 +11,6 @@ module Fog
# http://wiki.dreamhost.com/API/Dns_commands
#
class Zone < Fog::Model
-
identity :id
attribute :domain, :aliases => 'name'
@@ -51,9 +49,7 @@ module Fog
def save
raise NotImplementedError.new
end
-
end
-
end
end
end
diff --git a/lib/fog/dreamhost/models/dns/zones.rb b/lib/fog/dreamhost/models/dns/zones.rb
index 8255966..e2958b2 100644
--- a/lib/fog/dreamhost/models/dns/zones.rb
+++ b/lib/fog/dreamhost/models/dns/zones.rb
@@ -4,7 +4,6 @@ require 'fog/dreamhost/models/dns/zone'
module Fog
module DNS
class Dreamhost
-
#
# Dreamhost API has no concept of 'Zone', but we
# can emulate it.
@@ -12,7 +11,6 @@ module Fog
# http://wiki.dreamhost.com/API/Dns_commands
#
class Zones < Fog::Collection
-
model Fog::DNS::Dreamhost::Zone
def all
@@ -33,9 +31,7 @@ module Fog
rescue Excon::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/dreamhost/requests/dns/create_record.rb b/lib/fog/dreamhost/requests/dns/create_record.rb
index aeb919e..38d982b 100644
--- a/lib/fog/dreamhost/requests/dns/create_record.rb
+++ b/lib/fog/dreamhost/requests/dns/create_record.rb
@@ -1,17 +1,13 @@
module Fog
module DNS
class Dreamhost
-
class Mock
-
def create_record(record, type, value, comment = "")
Fog::Mock.not_implemented
end
-
end
class Real
-
def create_record(record, type, value, comment = "")
request( :expects => 200,
:method => 'GET',
@@ -25,7 +21,6 @@ module Fog
}
)
end
-
end
end
end
diff --git a/lib/fog/dreamhost/requests/dns/delete_record.rb b/lib/fog/dreamhost/requests/dns/delete_record.rb
index bba688a..e413ac9 100644
--- a/lib/fog/dreamhost/requests/dns/delete_record.rb
+++ b/lib/fog/dreamhost/requests/dns/delete_record.rb
@@ -1,17 +1,13 @@
module Fog
module DNS
class Dreamhost
-
class Mock
-
def delete_record(name, type, value)
raise Fog::Mock.not_implemented
end
-
end
class Real
-
def delete_record(name, type, value)
request( :expects => 200,
:method => "GET",
@@ -24,7 +20,6 @@ module Fog
}
)
end
-
end
end
end
diff --git a/lib/fog/dreamhost/requests/dns/list_records.rb b/lib/fog/dreamhost/requests/dns/list_records.rb
index d736eb8..e5963be 100644
--- a/lib/fog/dreamhost/requests/dns/list_records.rb
+++ b/lib/fog/dreamhost/requests/dns/list_records.rb
@@ -1,24 +1,19 @@
module Fog
module DNS
class Dreamhost
-
class Mock
-
def request(*args)
Fog::Mock.not_implemented
end
-
end
class Real
-
def list_records
request( :expects => 200,
:method => "GET",
:path => "/",
:query => { :cmd => 'dns-list_records' } )
end
-
end
end
end
diff --git a/lib/fog/dynect/dns.rb b/lib/fog/dynect/dns.rb
index 9772c1e..7971561 100644
--- a/lib/fog/dynect/dns.rb
+++ b/lib/fog/dynect/dns.rb
@@ -3,7 +3,6 @@ require 'fog/dynect/core'
module Fog
module DNS
class Dynect < Fog::Service
-
requires :dynect_customer, :dynect_username, :dynect_password
recognizes :timeout, :persistent
recognizes :provider # remove post deprecation
@@ -66,12 +65,13 @@ module Fog
@dynect_password = options[:dynect_password]
@connection_options = options[:connection_options] || {}
- @host = 'api-v4.dynect.net'
- @port = options[:port] || 443
- @path = options[:path] || '/REST'
- @persistent = options[:persistent] || false
- @scheme = options[:scheme] || 'https'
- @version = options[:version] || '3.5.2'
+ @host = 'api-v4.dynect.net'
+ @port = options[:port] || 443
+ @path = options[:path] || '/REST'
+ @persistent = options[:persistent] || false
+ @scheme = options[:scheme] || 'https'
+ @version = options[:version] || '3.5.2'
+ @job_poll_timeout = options[:job_poll_timeout] || 10
@connection = Fog::XML::Connection.new("#{@scheme}://#{@host}:#{@port}", @persistent, @connection_options)
end
@@ -103,7 +103,7 @@ module Fog
end
if response.status == 307 && params[:path] !~ %r{^/REST/Job/}
- response = poll_job(response, params[:expects])
+ response = poll_job(response, params[:expects], @job_poll_timeout)
end
response
@@ -119,22 +119,31 @@ module Fog
response
end
- def poll_job(response, original_expects, time_to_wait = 10)
+ def poll_job(response, original_expects, time_to_wait)
job_location = response.headers['Location']
- Fog.wait_for(time_to_wait) do
- response = request(:expects => original_expects, :method => :get, :path => job_location)
- response.body['status'] != 'incomplete'
- end
+ begin
+ Fog.wait_for(time_to_wait) do
+ response = request(
+ :expects => original_expects,
+ :idempotent => true,
+ :method => :get,
+ :path => job_location
+ )
+ response.body['status'] != 'incomplete'
+ end
- if response.body['status'] == 'incomplete'
- raise JobIncomplete.new("Job #{response.body['job_id']} is still incomplete")
+ rescue Errors::TimeoutError => error
+ if response.body['status'] == 'incomplete'
+ raise JobIncomplete.new("Job #{response.body['job_id']} is still incomplete")
+ else
+ raise error
+ end
end
response
end
end
-
end
end
end
diff --git a/lib/fog/dynect/models/dns/record.rb b/lib/fog/dynect/models/dns/record.rb
index 7c3d420..95eb59b 100644
--- a/lib/fog/dynect/models/dns/record.rb
+++ b/lib/fog/dynect/models/dns/record.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module DNS
class Dynect
-
class Record < Fog::Model
extend Fog::Deprecation
@@ -20,7 +19,7 @@ module Fog
true
end
- def save
+ def save(replace=false)
requires :name, :type, :rdata, :zone
options = {
@@ -28,7 +27,11 @@ module Fog
}
options.delete_if {|key, value| value.nil?}
- data = service.post_record(type, zone.identity, name, rdata, options).body['data']
+ if replace
+ data = service.put_record(type, zone.identity, name, rdata, options).body['data']
+ else
+ data = service.post_record(type, zone.identity, name, rdata, options).body['data']
+ end
# avoid overwriting zone object with zone string
data = data.reject {|key, value| key == 'zone'}
merge_attributes(data)
@@ -43,7 +46,7 @@ module Fog
:type => tokens[2][0...-6] # everything before 'Record'
}
end
- record = records.detect {|record| record[:type] == type}
+ record = records.find {|record| record[:type] == type}
merge_attributes(record)
true
@@ -58,9 +61,7 @@ module Fog
def zone=(new_zone)
@zone = new_zone
end
-
end
-
end
end
end
diff --git a/lib/fog/dynect/models/dns/records.rb b/lib/fog/dynect/models/dns/records.rb
index 2a202ea..7ddd673 100644
--- a/lib/fog/dynect/models/dns/records.rb
+++ b/lib/fog/dynect/models/dns/records.rb
@@ -4,9 +4,7 @@ require 'fog/dynect/models/dns/record'
module Fog
module DNS
class Dynect
-
class Records < Fog::Collection
-
attribute :zone
model Fog::DNS::Dynect::Record
@@ -14,22 +12,17 @@ module Fog
def all(options = {})
requires :zone
data = []
- service.get_all_records(zone.domain, options).body['data'].each do |url|
- (_, _, t, _, fqdn, id) = url.split('/')
- type = t.gsub(/Record$/, '')
-
- # leave out the default, read only records
- # by putting this here we don't make the secondary request for these records
- next if ['NS', 'SOA'].include?(type)
-
- record = service.get_record(type, zone.domain, fqdn, 'record_id' => id).body['data']
-
- data << {
- :identity => record['record_id'],
- :fqdn => record['fqdn'],
- :type => record['record_type'],
- :rdata => record['rdata']
- }
+ service.get_all_records(zone.domain, options).body['data'].each do |records|
+ (type, list) = records
+ next if %w{soa_records ns_records}.include?(type)
+ list.each do |record|
+ data << {
+ :identity => record['record_id'],
+ :fqdn => record['fqdn'],
+ :type => record['record_type'],
+ :rdata => record['rdata']
+ }
+ end
end
load(data)
@@ -38,28 +31,19 @@ module Fog
def get(record_id)
requires :zone
- list = service.get_all_records(zone.domain, {}).body['data']
- url = list.detect { |e| e =~ /\/#{record_id}$/ }
- return unless url
- (_, _, t, _, fqdn, id) = url.split('/')
- type = t.gsub(/Record$/, '')
- record = service.get_record(type, zone.domain, fqdn, 'record_id' => id).body['data']
+ # there isn't a way to look up by just id
+ # must have type and domain for 'get_record' request
+ # so we pick it from the list returned by 'all'
- new({
- :identity => record['record_id'],
- :fqdn => record['fqdn'],
- :type => record['record_type'],
- :rdata => record['rdata']
- })
+ list = all
+ list.detect {|e| e.id == record_id}
end
def new(attributes = {})
requires :zone
super({:zone => zone}.merge!(attributes))
end
-
end
-
end
end
end
diff --git a/lib/fog/dynect/models/dns/zone.rb b/lib/fog/dynect/models/dns/zone.rb
index f22c654..e14f622 100644
--- a/lib/fog/dynect/models/dns/zone.rb
+++ b/lib/fog/dynect/models/dns/zone.rb
@@ -4,9 +4,7 @@ require 'fog/dynect/models/dns/records'
module Fog
module DNS
class Dynect
-
class Zone < Fog::Model
-
identity :domain
attribute :domain, :aliases => 'zone'
@@ -52,9 +50,7 @@ module Fog
merge_attributes(data)
true
end
-
end
-
end
end
end
diff --git a/lib/fog/dynect/models/dns/zones.rb b/lib/fog/dynect/models/dns/zones.rb
index d3c3355..b0ef2c7 100644
--- a/lib/fog/dynect/models/dns/zones.rb
+++ b/lib/fog/dynect/models/dns/zones.rb
@@ -4,9 +4,7 @@ require 'fog/dynect/models/dns/zone'
module Fog
module DNS
class Dynect
-
class Zones < Fog::Collection
-
model Fog::DNS::Dynect::Zone
def all
@@ -21,9 +19,7 @@ module Fog
rescue Excon::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/dynect/requests/dns/delete_record.rb b/lib/fog/dynect/requests/dns/delete_record.rb
index 75d12b2..9cbc6f6 100644
--- a/lib/fog/dynect/requests/dns/delete_record.rb
+++ b/lib/fog/dynect/requests/dns/delete_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Dynect
class Real
-
# Delete a record
#
# ==== Parameters
diff --git a/lib/fog/dynect/requests/dns/delete_zone.rb b/lib/fog/dynect/requests/dns/delete_zone.rb
index 6f1f237..1e54acc 100644
--- a/lib/fog/dynect/requests/dns/delete_zone.rb
+++ b/lib/fog/dynect/requests/dns/delete_zone.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Dynect
class Real
-
# Delete a zone
#
# ==== Parameters
diff --git a/lib/fog/dynect/requests/dns/get_all_records.rb b/lib/fog/dynect/requests/dns/get_all_records.rb
index 38dd45c..13e8d78 100644
--- a/lib/fog/dynect/requests/dns/get_all_records.rb
+++ b/lib/fog/dynect/requests/dns/get_all_records.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Dynect
class Real
-
# Get one or more node lists
#
# ==== Parameters
@@ -16,7 +15,8 @@ module Fog
:expects => 200,
:idempotent => true,
:method => :get,
- :path => ['AllRecord', zone, requested_fqdn].compact.join('/')
+ :path => ['AllRecord', zone, requested_fqdn].compact.join('/'),
+ :query => {'detail' => 'Y'} # return full records, instead of just resource URLs
)
end
end
@@ -31,9 +31,9 @@ module Fog
data = [zone[:zone]]
if fqdn = options[:fqdn]
- data = data | zone[:records].collect { |type, records| records.select { |record| record[:fqdn] == fqdn } }.flatten.compact
+ data = data | zone[:records].map { |type, records| records.select { |record| record[:fqdn] == fqdn } }.flatten.compact
else
- data = data | zone[:records].collect { |type, records| records.collect { |record| record[:fqdn] } }.flatten
+ data = data | zone[:records].map { |type, records| records.map { |record| record[:fqdn] } }.flatten
end
response.body = {
diff --git a/lib/fog/dynect/requests/dns/get_node_list.rb b/lib/fog/dynect/requests/dns/get_node_list.rb
index 3418c21..d692c2d 100644
--- a/lib/fog/dynect/requests/dns/get_node_list.rb
+++ b/lib/fog/dynect/requests/dns/get_node_list.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Dynect
class Real
-
# Get one or more node lists
#
# ==== Parameters
@@ -31,9 +30,9 @@ module Fog
data = [zone[:zone]]
if fqdn = options[:fqdn]
- data = data | zone[:records].collect { |type, records| records.select { |record| record[:fqdn] == fqdn } }.flatten.compact
+ data = data | zone[:records].map { |type, records| records.select { |record| record[:fqdn] == fqdn } }.flatten.compact
else
- data = data | zone[:records].collect { |type, records| records.collect { |record| record[:fqdn] } }.flatten
+ data = data | zone[:records].map { |type, records| records.map { |record| record[:fqdn] } }.flatten
end
response.body = {
diff --git a/lib/fog/dynect/requests/dns/get_record.rb b/lib/fog/dynect/requests/dns/get_record.rb
index 1892306..e58c036 100644
--- a/lib/fog/dynect/requests/dns/get_record.rb
+++ b/lib/fog/dynect/requests/dns/get_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Dynect
class Real
-
# List records of a given type
#
# ==== Parameters
@@ -65,7 +64,7 @@ module Fog
end
response.body = {
"status" => "success",
- "data" => records.collect { |record| "/REST/#{record[:type]}Record/#{record[:zone][:zone]}/#{record[:fqdn]}/#{record[:record_id]}" },
+ "data" => records.map { |record| "/REST/#{record[:type]}Record/#{record[:zone][:zone]}/#{record[:fqdn]}/#{record[:record_id]}" },
"job_id" => Fog::Dynect::Mock.job_id,
"msgs" => [{
"INFO" => "detail: Found #{records.size} record",
diff --git a/lib/fog/dynect/requests/dns/get_zone.rb b/lib/fog/dynect/requests/dns/get_zone.rb
index 14fefaf..9ccc5dc 100644
--- a/lib/fog/dynect/requests/dns/get_zone.rb
+++ b/lib/fog/dynect/requests/dns/get_zone.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Dynect
class Real
-
# Get one or more zones
#
# ==== Parameters
@@ -31,7 +30,7 @@ module Fog
}
info = "get: Your zone, #{zone[:zone]}"
else
- data = self.data[:zones].collect { |zone, data| "/REST/Zone/#{zone}/" }
+ data = self.data[:zones].map { |zone, data| "/REST/Zone/#{zone}/" }
info = "get: Your #{data.size} zones"
end
diff --git a/lib/fog/dynect/requests/dns/post_record.rb b/lib/fog/dynect/requests/dns/post_record.rb
index fbcbaaa..126bec0 100644
--- a/lib/fog/dynect/requests/dns/post_record.rb
+++ b/lib/fog/dynect/requests/dns/post_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Dynect
class Real
-
# Create a record
#
# ==== Parameters
diff --git a/lib/fog/dynect/requests/dns/post_session.rb b/lib/fog/dynect/requests/dns/post_session.rb
index 4d2cf19..3aa3d82 100644
--- a/lib/fog/dynect/requests/dns/post_session.rb
+++ b/lib/fog/dynect/requests/dns/post_session.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Dynect
class Real
-
def post_session
request(
:expects => 200,
diff --git a/lib/fog/dynect/requests/dns/post_zone.rb b/lib/fog/dynect/requests/dns/post_zone.rb
index 501b1f2..579b642 100644
--- a/lib/fog/dynect/requests/dns/post_zone.rb
+++ b/lib/fog/dynect/requests/dns/post_zone.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Dynect
class Real
-
# Create a zone
#
# ==== Parameters
diff --git a/lib/fog/dynect/requests/dns/put_record.rb b/lib/fog/dynect/requests/dns/put_record.rb
index 7d8c9fd..5f5f6a3 100644
--- a/lib/fog/dynect/requests/dns/put_record.rb
+++ b/lib/fog/dynect/requests/dns/put_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Dynect
class Real
-
# Update or replace a record
#
# ==== Parameters
diff --git a/lib/fog/dynect/requests/dns/put_zone.rb b/lib/fog/dynect/requests/dns/put_zone.rb
index 817b8cb..c421061 100644
--- a/lib/fog/dynect/requests/dns/put_zone.rb
+++ b/lib/fog/dynect/requests/dns/put_zone.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Dynect
class Real
-
# Update a zone
#
# ==== Parameters
diff --git a/lib/fog/ecloud/collection.rb b/lib/fog/ecloud/collection.rb
index 03ff293..62b49b4 100644
--- a/lib/fog/ecloud/collection.rb
+++ b/lib/fog/ecloud/collection.rb
@@ -1,7 +1,6 @@
module Fog
module Ecloud
class Collection < Fog::Collection
-
def load(objects)
objects = [ objects ] if objects.is_a?(Hash)
super
@@ -20,7 +19,6 @@ module Fog
raise Fog::Errors::Error.new(msg)
end
end
-
end
end
end
diff --git a/lib/fog/ecloud/compute.rb b/lib/fog/ecloud/compute.rb
index 2e3ebf3..6cf5169 100644
--- a/lib/fog/ecloud/compute.rb
+++ b/lib/fog/ecloud/compute.rb
@@ -247,12 +247,11 @@ module Fog
request :virtual_machine_attach_disk
module Shared
-
attr_accessor :base_path
attr_reader :versions_uri
def validate_data(required_opts = [], options = {})
- unless required_opts.all? { |opt| options.has_key?(opt) }
+ unless required_opts.all? { |opt| options.key?(opt) }
raise ArgumentError.new("Required data missing: #{(required_opts - options.keys).map(&:inspect).join(", ")}")
end
end
@@ -284,7 +283,6 @@ module Fog
end
end
-
def initialize(options = {})
require 'fog/core/parser'
@base_path = options[:base_path] || '/cloudapi/ecloud'
@@ -392,10 +390,9 @@ module Fog
Base64.encode64(@hmac.sign(string)).chomp
end
-
# section 5.6.3.2 in the ~1000 page pdf spec
def canonicalize_headers(headers)
- tmp = headers.inject({}) {|ret, h| ret[h.first.downcase] = h.last if h.first.match(/^x-tmrk/i) ; ret }
+ tmp = headers.reduce({}) {|ret, h| ret[h.first.downcase] = h.last if h.first.match(/^x-tmrk/i) ; ret }
tmp.reject! {|k,v| k == "x-tmrk-authorization" }
tmp = tmp.sort.map{|e| "#{e.first}:#{e.last}" }.join("\n")
tmp
@@ -411,7 +408,6 @@ module Fog
end
end
-
class Mock
include Shared
@@ -517,7 +513,6 @@ module Fog
}
}
-
public_ip = {
:id => public_ip_id,
:href => "/cloudapi/ecloud/publicips/#{public_ip_id}",
@@ -607,7 +602,6 @@ module Fog
network[:IpAddresses][:IpAddress].push(ip_address).push(ip_address2)
-
short_name = "solaris10_64guest"
operating_system = {
:short_name => short_name,
@@ -684,7 +678,6 @@ module Fog
}
}
-
template = {
:id => template_id,
:href => "/cloudapi/ecloud/templates/#{template_id}/computepools/#{compute_pool_id}",
@@ -767,7 +760,6 @@ module Fog
:environment_id => environment_id
}
-
{
:compute_pools => {compute_pool_id => compute_pool},
:environments => {environment_id => environment},
@@ -818,7 +810,7 @@ module Fog
status = params[:status] || 200
response = Excon::Response.new(:body => body, :headers => headers, :status => status)
- if params.has_key?(:expects) && ![*params[:expects]].include?(response.status)
+ if params.key?(:expects) && ![*params[:expects]].include?(response.status)
raise(Excon::Errors.status_error(params, response))
else response
end
diff --git a/lib/fog/ecloud/generate_collection.rb b/lib/fog/ecloud/generate_collection.rb
index cad674f..05084f9 100644
--- a/lib/fog/ecloud/generate_collection.rb
+++ b/lib/fog/ecloud/generate_collection.rb
@@ -6,7 +6,6 @@ class String
end
end
-
options = {}
OptionParser.new do |opts|
opts.banner = "Usage: #{__FILE__} [options]"
@@ -26,7 +25,6 @@ METHOD
end.join("\n ")
end
-
if options[:attributes]
attributes = options[:attributes].map do |a|
a = "attribute :#{a[0]}, :aliases => :#{a[1] || a[0].camelize}"
@@ -123,7 +121,6 @@ module Fog
end
MODEL
-
File.open(collection_file, 'w') { |f| f.write(collection) }
File.open(model_file, 'w') { |f| f.write(model) }
File.open(collection_request_file, 'w') { |f| f.write(collection_request) }
diff --git a/lib/fog/ecloud/mock_data_classes.rb b/lib/fog/ecloud/mock_data_classes.rb
index d724a14..a780c18 100644
--- a/lib/fog/ecloud/mock_data_classes.rb
+++ b/lib/fog/ecloud/mock_data_classes.rb
@@ -96,7 +96,6 @@ module Fog
find_href_prefixed_in(href, all_virtual_machines)
end
-
def all_networks
all_vdcs.map(&:networks).flatten
end
@@ -196,11 +195,11 @@ module Fog
private
def find_href_in(href, objects)
- objects.detect {|o| o.href == href }
+ objects.find {|o| o.href == href }
end
def find_href_prefixed_in(href, objects)
- objects.detect {|o| href =~ %r{^#{o.href}($|/)} }
+ objects.find {|o| href =~ %r{^#{o.href}($|/)} }
end
end
@@ -226,7 +225,6 @@ module Fog
def environments
@vdcs ||= []
end
-
end
class MockVdc < Base
@@ -395,7 +393,7 @@ module Fog
class MockNetworkIps < Base
def items
- @items ||= _parent.usable_subnet_ips.inject({}) do |out, subnet_ip|
+ @items ||= _parent.usable_subnet_ips.reduce({}) do |out, subnet_ip|
out.update(subnet_ip => MockNetworkIp.new({ :ip => subnet_ip }, self))
end
end
@@ -419,7 +417,7 @@ module Fog
end
def used_by
- self[:used_by] || _parent._parent._parent.virtual_machines.detect {|v| v.ip == ip }
+ self[:used_by] || _parent._parent._parent.virtual_machines.find {|v| v.ip == ip }
end
def status
@@ -507,11 +505,11 @@ module Fog
end
def size
- disks.inject(0) {|s, d| s + d.vcloud_size }
+ disks.reduce(0) {|s, d| s + d.vcloud_size }
end
def network_ip
- if network = _parent.networks.detect {|n| n.ip_collection.items[ip] }
+ if network = _parent.networks.find {|n| n.ip_collection.items[ip] }
network.ip_collection.items[ip]
end
end
@@ -564,7 +562,7 @@ module Fog
end
def at_address(address)
- detect {|d| d.address == address }
+ find {|d| d.address == address }
end
end
@@ -599,7 +597,7 @@ module Fog
end
def public_ip_internet_services
- _parent.public_ip_collection.items.inject([]) do |services, public_ip|
+ _parent.public_ip_collection.items.reduce([]) do |services, public_ip|
services + public_ip.internet_service_collection.items
end
end
diff --git a/lib/fog/ecloud/model.rb b/lib/fog/ecloud/model.rb
index 12bd160..58d295e 100644
--- a/lib/fog/ecloud/model.rb
+++ b/lib/fog/ecloud/model.rb
@@ -1,7 +1,6 @@
module Fog
module Ecloud
class Model < Fog::Model
-
attr_accessor :loaded
alias_method :loaded?, :loaded
@@ -16,7 +15,6 @@ module Fog
reload
end
end
-
end
end
end
diff --git a/lib/fog/ecloud/models/compute/admin_organizations.rb b/lib/fog/ecloud/models/compute/admin_organizations.rb
index 06b66c7..8d89cb6 100644
--- a/lib/fog/ecloud/models/compute/admin_organizations.rb
+++ b/lib/fog/ecloud/models/compute/admin_organizations.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class AdminOrganizations < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::AdminOrganization
diff --git a/lib/fog/ecloud/models/compute/api_key.rb b/lib/fog/ecloud/models/compute/api_key.rb
index d009f00..d2fc8ec 100644
--- a/lib/fog/ecloud/models/compute/api_key.rb
+++ b/lib/fog/ecloud/models/compute/api_key.rb
@@ -11,7 +11,6 @@ module Fog
attribute :status, :aliases => :Status
attribute :private_key, :aliases => :PrivateKey
-
def id
href.scan(/\d+/)[0]
end
diff --git a/lib/fog/ecloud/models/compute/api_keys.rb b/lib/fog/ecloud/models/compute/api_keys.rb
index cf4f89c..f2760e1 100644
--- a/lib/fog/ecloud/models/compute/api_keys.rb
+++ b/lib/fog/ecloud/models/compute/api_keys.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class ApiKeys < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::ApiKey
diff --git a/lib/fog/ecloud/models/compute/associations.rb b/lib/fog/ecloud/models/compute/associations.rb
index 16c18a2..8d73f54 100644
--- a/lib/fog/ecloud/models/compute/associations.rb
+++ b/lib/fog/ecloud/models/compute/associations.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Associations < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::Association
diff --git a/lib/fog/ecloud/models/compute/authentication_level.rb b/lib/fog/ecloud/models/compute/authentication_level.rb
index 56dc6b5..443c7b1 100644
--- a/lib/fog/ecloud/models/compute/authentication_level.rb
+++ b/lib/fog/ecloud/models/compute/authentication_level.rb
@@ -12,7 +12,6 @@ module Fog
attribute :hmacsha256_enabled, :aliases => :HMACSHA256Enabled, :type => :boolean
attribute :hmacsha512_enabled, :aliases => :HMACSHA512Enabled, :type => :boolean
-
def id
href.scan(/\d+/)[0]
end
diff --git a/lib/fog/ecloud/models/compute/authentication_levels.rb b/lib/fog/ecloud/models/compute/authentication_levels.rb
index bd01fa2..bb1dca6 100644
--- a/lib/fog/ecloud/models/compute/authentication_levels.rb
+++ b/lib/fog/ecloud/models/compute/authentication_levels.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class AuthenticationLevels < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::AuthenticationLevel
diff --git a/lib/fog/ecloud/models/compute/backup_internet_services.rb b/lib/fog/ecloud/models/compute/backup_internet_services.rb
index 4268794..e05343e 100644
--- a/lib/fog/ecloud/models/compute/backup_internet_services.rb
+++ b/lib/fog/ecloud/models/compute/backup_internet_services.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class BackupInternetServices < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::BackupInternetService
diff --git a/lib/fog/ecloud/models/compute/catalog.rb b/lib/fog/ecloud/models/compute/catalog.rb
index cdd27c1..76f8d72 100644
--- a/lib/fog/ecloud/models/compute/catalog.rb
+++ b/lib/fog/ecloud/models/compute/catalog.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Catalog < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::CatalogItem
diff --git a/lib/fog/ecloud/models/compute/catalog_configuration.rb b/lib/fog/ecloud/models/compute/catalog_configuration.rb
index 8b06d6f..b3580e8 100644
--- a/lib/fog/ecloud/models/compute/catalog_configuration.rb
+++ b/lib/fog/ecloud/models/compute/catalog_configuration.rb
@@ -13,7 +13,6 @@ module Fog
attribute :network_adapters, :aliases => :NetworkAdapters, :type => :integer
attribute :network_mappings, :aliases => :NetworkMappings
-
def id
href.scan(/\d+/)[0]
end
diff --git a/lib/fog/ecloud/models/compute/catalog_configurations.rb b/lib/fog/ecloud/models/compute/catalog_configurations.rb
index 6eb8b2b..1c97006 100644
--- a/lib/fog/ecloud/models/compute/catalog_configurations.rb
+++ b/lib/fog/ecloud/models/compute/catalog_configurations.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class CatalogConfigurations < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::CatalogConfiguration
diff --git a/lib/fog/ecloud/models/compute/compute_pool.rb b/lib/fog/ecloud/models/compute/compute_pool.rb
index eaad2b1..0eafd67 100644
--- a/lib/fog/ecloud/models/compute/compute_pool.rb
+++ b/lib/fog/ecloud/models/compute/compute_pool.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Ecloud
class ComputePool < Fog::Ecloud::Model
-
identity :href
attribute :href, :aliases => :Href
diff --git a/lib/fog/ecloud/models/compute/compute_pools.rb b/lib/fog/ecloud/models/compute/compute_pools.rb
index 2faaa1b..1ce29b9 100644
--- a/lib/fog/ecloud/models/compute/compute_pools.rb
+++ b/lib/fog/ecloud/models/compute/compute_pools.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class ComputePools < Fog::Ecloud::Collection
-
undef_method :create
attribute :href, :aliases => :Href
diff --git a/lib/fog/ecloud/models/compute/cpu_usage_detail.rb b/lib/fog/ecloud/models/compute/cpu_usage_detail.rb
index a50e96c..b0719b1 100644
--- a/lib/fog/ecloud/models/compute/cpu_usage_detail.rb
+++ b/lib/fog/ecloud/models/compute/cpu_usage_detail.rb
@@ -7,7 +7,6 @@ module Fog
attribute :time, :aliases => :Time
attribute :value, :aliases => :Value
-
def id
href.scan(/\d+/)[0]
end
diff --git a/lib/fog/ecloud/models/compute/cpu_usage_detail_summary.rb b/lib/fog/ecloud/models/compute/cpu_usage_detail_summary.rb
index 1601305..cc95b07 100644
--- a/lib/fog/ecloud/models/compute/cpu_usage_detail_summary.rb
+++ b/lib/fog/ecloud/models/compute/cpu_usage_detail_summary.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class CpuUsageDetailSummary < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::CpuUsageDetail
diff --git a/lib/fog/ecloud/models/compute/detached_disks.rb b/lib/fog/ecloud/models/compute/detached_disks.rb
index b5eec82..10582e1 100644
--- a/lib/fog/ecloud/models/compute/detached_disks.rb
+++ b/lib/fog/ecloud/models/compute/detached_disks.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class DetachedDisks < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::DetachedDisk
diff --git a/lib/fog/ecloud/models/compute/environment.rb b/lib/fog/ecloud/models/compute/environment.rb
index e18045e..11742ba 100644
--- a/lib/fog/ecloud/models/compute/environment.rb
+++ b/lib/fog/ecloud/models/compute/environment.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Ecloud
class Environment < Fog::Ecloud::Model
-
identity :href
ignore_attributes :xmlns, :xmlns_xsi, :xmlns_xsd
diff --git a/lib/fog/ecloud/models/compute/environments.rb b/lib/fog/ecloud/models/compute/environments.rb
index 75b83b5..701b2ee 100644
--- a/lib/fog/ecloud/models/compute/environments.rb
+++ b/lib/fog/ecloud/models/compute/environments.rb
@@ -3,9 +3,7 @@ require 'fog/ecloud/models/compute/environment'
module Fog
module Compute
class Ecloud
-
class Environments < Fog::Ecloud::Collection
-
model Fog::Compute::Ecloud::Environment
undef_method :create
@@ -35,7 +33,6 @@ module Fog
end
Vdcs = Environments
-
end
end
end
diff --git a/lib/fog/ecloud/models/compute/firewall_acls.rb b/lib/fog/ecloud/models/compute/firewall_acls.rb
index be3735e..3185d5d 100644
--- a/lib/fog/ecloud/models/compute/firewall_acls.rb
+++ b/lib/fog/ecloud/models/compute/firewall_acls.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class FirewallAcls < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::FirewallAcl
diff --git a/lib/fog/ecloud/models/compute/group.rb b/lib/fog/ecloud/models/compute/group.rb
index 5fe84ac..4f36d91 100644
--- a/lib/fog/ecloud/models/compute/group.rb
+++ b/lib/fog/ecloud/models/compute/group.rb
@@ -34,7 +34,7 @@ module Fog
href.scan(/\d+/)[0]
end
- alias destroy delete
+ alias_method :destroy, :delete
end
end
end
diff --git a/lib/fog/ecloud/models/compute/groups.rb b/lib/fog/ecloud/models/compute/groups.rb
index 25a1e94..3aa1d05 100644
--- a/lib/fog/ecloud/models/compute/groups.rb
+++ b/lib/fog/ecloud/models/compute/groups.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Groups < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::Group
diff --git a/lib/fog/ecloud/models/compute/guest_processes.rb b/lib/fog/ecloud/models/compute/guest_processes.rb
index c788bc9..1d79162 100644
--- a/lib/fog/ecloud/models/compute/guest_processes.rb
+++ b/lib/fog/ecloud/models/compute/guest_processes.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class GuestProcesses < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::GuestProcess
diff --git a/lib/fog/ecloud/models/compute/hardware_configurations.rb b/lib/fog/ecloud/models/compute/hardware_configurations.rb
index 9e95f4e..a6e12e3 100644
--- a/lib/fog/ecloud/models/compute/hardware_configurations.rb
+++ b/lib/fog/ecloud/models/compute/hardware_configurations.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class HardwareConfigurations < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::HardwareConfiguration
diff --git a/lib/fog/ecloud/models/compute/internet_service.rb b/lib/fog/ecloud/models/compute/internet_service.rb
index 045ac7c..8ba2a06 100644
--- a/lib/fog/ecloud/models/compute/internet_service.rb
+++ b/lib/fog/ecloud/models/compute/internet_service.rb
@@ -90,7 +90,7 @@ module Fog
service_data
end
- alias destroy delete
+ alias_method :destroy, :delete
end
end
end
diff --git a/lib/fog/ecloud/models/compute/internet_services.rb b/lib/fog/ecloud/models/compute/internet_services.rb
index 363e4fb..e4bfb69 100644
--- a/lib/fog/ecloud/models/compute/internet_services.rb
+++ b/lib/fog/ecloud/models/compute/internet_services.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class InternetServices < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::InternetService
diff --git a/lib/fog/ecloud/models/compute/ip_address.rb b/lib/fog/ecloud/models/compute/ip_address.rb
index 86a5b33..4f0c191 100644
--- a/lib/fog/ecloud/models/compute/ip_address.rb
+++ b/lib/fog/ecloud/models/compute/ip_address.rb
@@ -30,7 +30,7 @@ module Fog
def network
reload if other_links.nil?
- network_href = other_links.detect { |l| l[:type] == "application/vnd.tmrk.cloud.network" }[:href]
+ network_href = other_links.find { |l| l[:type] == "application/vnd.tmrk.cloud.network" }[:href]
network = self.service.networks.get(network_href)
end
end
diff --git a/lib/fog/ecloud/models/compute/ip_addresses.rb b/lib/fog/ecloud/models/compute/ip_addresses.rb
index 712e8d0..e4ae3d4 100644
--- a/lib/fog/ecloud/models/compute/ip_addresses.rb
+++ b/lib/fog/ecloud/models/compute/ip_addresses.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class IpAddresses < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::IpAddress
diff --git a/lib/fog/ecloud/models/compute/layouts.rb b/lib/fog/ecloud/models/compute/layouts.rb
index b6a52a9..f36da9a 100644
--- a/lib/fog/ecloud/models/compute/layouts.rb
+++ b/lib/fog/ecloud/models/compute/layouts.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Layouts < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::Layout
diff --git a/lib/fog/ecloud/models/compute/location.rb b/lib/fog/ecloud/models/compute/location.rb
index d7df6d6..e374283 100644
--- a/lib/fog/ecloud/models/compute/location.rb
+++ b/lib/fog/ecloud/models/compute/location.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Ecloud
class Location < Fog::Ecloud::Model
-
identity :href
ignore_attributes :xmlns, :xmlns_xsi, :xmlns_xsd, :xmlns_i
diff --git a/lib/fog/ecloud/models/compute/locations.rb b/lib/fog/ecloud/models/compute/locations.rb
index 48a5046..bdb0c05 100644
--- a/lib/fog/ecloud/models/compute/locations.rb
+++ b/lib/fog/ecloud/models/compute/locations.rb
@@ -3,9 +3,7 @@ require 'fog/ecloud/models/compute/location'
module Fog
module Compute
class Ecloud
-
class Locations < Fog::Ecloud::Collection
-
model Fog::Compute::Ecloud::Location
undef_method :create
@@ -24,7 +22,6 @@ module Fog
rescue Fog::Errors::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/ecloud/models/compute/login_banners.rb b/lib/fog/ecloud/models/compute/login_banners.rb
index 280d8a4..f8a0d90 100644
--- a/lib/fog/ecloud/models/compute/login_banners.rb
+++ b/lib/fog/ecloud/models/compute/login_banners.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class LoginBanners < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::LoginBanner
diff --git a/lib/fog/ecloud/models/compute/memory_usage_detail_summary.rb b/lib/fog/ecloud/models/compute/memory_usage_detail_summary.rb
index 9175ec8..2e596ec 100644
--- a/lib/fog/ecloud/models/compute/memory_usage_detail_summary.rb
+++ b/lib/fog/ecloud/models/compute/memory_usage_detail_summary.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class MemoryUsageDetailSummary < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::MemoryUsageDetail
diff --git a/lib/fog/ecloud/models/compute/monitors.rb b/lib/fog/ecloud/models/compute/monitors.rb
index a83f750..f37e4d5 100644
--- a/lib/fog/ecloud/models/compute/monitors.rb
+++ b/lib/fog/ecloud/models/compute/monitors.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Monitors < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::Monitor
diff --git a/lib/fog/ecloud/models/compute/network.rb b/lib/fog/ecloud/models/compute/network.rb
index 12808b4..0da7ba7 100644
--- a/lib/fog/ecloud/models/compute/network.rb
+++ b/lib/fog/ecloud/models/compute/network.rb
@@ -33,7 +33,7 @@ module Fog
def environment
reload if other_links.nil?
- environment_href = other_links.detect { |l| l[:type] == "application/vnd.tmrk.cloud.environment" }[:href]
+ environment_href = other_links.find { |l| l[:type] == "application/vnd.tmrk.cloud.environment" }[:href]
self.service.environments.get(environment_href)
end
diff --git a/lib/fog/ecloud/models/compute/networks.rb b/lib/fog/ecloud/models/compute/networks.rb
index e0c924a..10f14ff 100644
--- a/lib/fog/ecloud/models/compute/networks.rb
+++ b/lib/fog/ecloud/models/compute/networks.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Networks < Fog::Ecloud::Collection
-
attribute :href, :aliases => :Href
model Fog::Compute::Ecloud::Network
diff --git a/lib/fog/ecloud/models/compute/node.rb b/lib/fog/ecloud/models/compute/node.rb
index 4ccae89..d0e05d1 100644
--- a/lib/fog/ecloud/models/compute/node.rb
+++ b/lib/fog/ecloud/models/compute/node.rb
@@ -38,7 +38,7 @@ module Fog
href.scan(/\d+/)[0]
end
- alias destroy delete
+ alias_method :destroy, :delete
end
end
end
diff --git a/lib/fog/ecloud/models/compute/nodes.rb b/lib/fog/ecloud/models/compute/nodes.rb
index 4e8b633..6064c4b 100644
--- a/lib/fog/ecloud/models/compute/nodes.rb
+++ b/lib/fog/ecloud/models/compute/nodes.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Nodes < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::Node
diff --git a/lib/fog/ecloud/models/compute/operating_system.rb b/lib/fog/ecloud/models/compute/operating_system.rb
index ed8c68c..df9c0f4 100644
--- a/lib/fog/ecloud/models/compute/operating_system.rb
+++ b/lib/fog/ecloud/models/compute/operating_system.rb
@@ -7,7 +7,6 @@ module Fog
attribute :name, :aliases => :Name
attribute :type, :aliases => :Type
-
def id
href.scan(/\d+/)[0]
end
diff --git a/lib/fog/ecloud/models/compute/operating_system_families.rb b/lib/fog/ecloud/models/compute/operating_system_families.rb
index ed8c415..7e36592 100644
--- a/lib/fog/ecloud/models/compute/operating_system_families.rb
+++ b/lib/fog/ecloud/models/compute/operating_system_families.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class OperatingSystemFamilies < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::OperatingSystemFamily
diff --git a/lib/fog/ecloud/models/compute/operating_systems.rb b/lib/fog/ecloud/models/compute/operating_systems.rb
index d6e9cd6..5426467 100644
--- a/lib/fog/ecloud/models/compute/operating_systems.rb
+++ b/lib/fog/ecloud/models/compute/operating_systems.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class OperatingSystems < Fog::Ecloud::Collection
-
model Fog::Compute::Ecloud::OperatingSystem
identity :data
diff --git a/lib/fog/ecloud/models/compute/organization.rb b/lib/fog/ecloud/models/compute/organization.rb
index 2883210..4f0e7a3 100644
--- a/lib/fog/ecloud/models/compute/organization.rb
+++ b/lib/fog/ecloud/models/compute/organization.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Ecloud
class Organization < Fog::Ecloud::Model
-
identity :href
ignore_attributes :xmlns, :xmlns_xsi, :xmlns_xsd, :xmlns_i
@@ -72,7 +71,7 @@ module Fog
href.scan(/\d+/)[0]
end
- alias :vdcs :environments
+ alias_method :vdcs, :environments
end
end
end
diff --git a/lib/fog/ecloud/models/compute/organizations.rb b/lib/fog/ecloud/models/compute/organizations.rb
index d41c2da..212da22 100644
--- a/lib/fog/ecloud/models/compute/organizations.rb
+++ b/lib/fog/ecloud/models/compute/organizations.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Organizations < Fog::Ecloud::Collection
-
model Fog::Compute::Ecloud::Organization
undef_method :create
diff --git a/lib/fog/ecloud/models/compute/password_complexity_rules.rb b/lib/fog/ecloud/models/compute/password_complexity_rules.rb
index e675177..44e0adb 100644
--- a/lib/fog/ecloud/models/compute/password_complexity_rules.rb
+++ b/lib/fog/ecloud/models/compute/password_complexity_rules.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class PasswordComplexityRules < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::PasswordComplexityRule
diff --git a/lib/fog/ecloud/models/compute/physical_device.rb b/lib/fog/ecloud/models/compute/physical_device.rb
index 663b931..d5739b5 100644
--- a/lib/fog/ecloud/models/compute/physical_device.rb
+++ b/lib/fog/ecloud/models/compute/physical_device.rb
@@ -12,7 +12,6 @@ module Fog
attribute :classification, :aliases => :Classification
attribute :model, :aliases => :Model
-
def id
href.scan(/\d+/)[0]
end
diff --git a/lib/fog/ecloud/models/compute/physical_devices.rb b/lib/fog/ecloud/models/compute/physical_devices.rb
index ad44c7d..97ed57d 100644
--- a/lib/fog/ecloud/models/compute/physical_devices.rb
+++ b/lib/fog/ecloud/models/compute/physical_devices.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class PhysicalDevices < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::PhysicalDevice
diff --git a/lib/fog/ecloud/models/compute/public_ip.rb b/lib/fog/ecloud/models/compute/public_ip.rb
index 9aea8f3..2fd84c0 100644
--- a/lib/fog/ecloud/models/compute/public_ip.rb
+++ b/lib/fog/ecloud/models/compute/public_ip.rb
@@ -14,7 +14,7 @@ module Fog
end
def environment_id
- other_links[:Link].detect { |l| l[:type] == "application/vnd.tmrk.cloud.environment" }[:href].scan(/\d+/)[0]
+ other_links[:Link].find { |l| l[:type] == "application/vnd.tmrk.cloud.environment" }[:href].scan(/\d+/)[0]
end
def id
diff --git a/lib/fog/ecloud/models/compute/public_ips.rb b/lib/fog/ecloud/models/compute/public_ips.rb
index 8bc262c..a496cf5 100644
--- a/lib/fog/ecloud/models/compute/public_ips.rb
+++ b/lib/fog/ecloud/models/compute/public_ips.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class PublicIps < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::PublicIp
diff --git a/lib/fog/ecloud/models/compute/rnats.rb b/lib/fog/ecloud/models/compute/rnats.rb
index c697965..1427aeb 100644
--- a/lib/fog/ecloud/models/compute/rnats.rb
+++ b/lib/fog/ecloud/models/compute/rnats.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Rnats < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::Rnat
diff --git a/lib/fog/ecloud/models/compute/role.rb b/lib/fog/ecloud/models/compute/role.rb
index 7233b1a..83a6a25 100644
--- a/lib/fog/ecloud/models/compute/role.rb
+++ b/lib/fog/ecloud/models/compute/role.rb
@@ -14,7 +14,6 @@ module Fog
attribute :is_admin, :aliases => :IsAdmin, :type => :boolean
attribute :business_operations, :aliases => :BusinessOperations
-
def id
href.scan(/\d+/)[0]
end
diff --git a/lib/fog/ecloud/models/compute/roles.rb b/lib/fog/ecloud/models/compute/roles.rb
index d908270..019c346 100644
--- a/lib/fog/ecloud/models/compute/roles.rb
+++ b/lib/fog/ecloud/models/compute/roles.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Roles < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::Role
diff --git a/lib/fog/ecloud/models/compute/row.rb b/lib/fog/ecloud/models/compute/row.rb
index 013095a..dc94777 100644
--- a/lib/fog/ecloud/models/compute/row.rb
+++ b/lib/fog/ecloud/models/compute/row.rb
@@ -49,7 +49,7 @@ module Fog
href.scan(/\d+/)[0]
end
- alias destroy delete
+ alias_method :destroy, :delete
end
end
end
diff --git a/lib/fog/ecloud/models/compute/rows.rb b/lib/fog/ecloud/models/compute/rows.rb
index 32f1a8a..547e0ab 100644
--- a/lib/fog/ecloud/models/compute/rows.rb
+++ b/lib/fog/ecloud/models/compute/rows.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Rows < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::Row
diff --git a/lib/fog/ecloud/models/compute/server.rb b/lib/fog/ecloud/models/compute/server.rb
index 8f718d6..6ce6865 100644
--- a/lib/fog/ecloud/models/compute/server.rb
+++ b/lib/fog/ecloud/models/compute/server.rb
@@ -103,7 +103,7 @@ module Fog
options[:network_uri] = options[:network_uri].is_a?(String) ? [options[:network_uri]] : options[:network_uri]
options[:network_uri].each do |uri|
index = options[:network_uri].index(uri)
- ip = Fog::Compute::Ecloud::IpAddresses.new(:service => service, :href => uri).detect { |i| i.host == nil }.name
+ ip = Fog::Compute::Ecloud::IpAddresses.new(:service => service, :href => uri).find { |i| i.host == nil }.name
options[:ips] ||= []
options[:ips][index] = ip
end
@@ -168,7 +168,7 @@ module Fog
def detach_disk(index)
options = {}
- options[:disk] = disks.detect { |disk_hash| disk_hash[:Index] == index.to_s }
+ options[:disk] = disks.find { |disk_hash| disk_hash[:Index] == index.to_s }
options[:name] = self.name
options[:description] = self.description
data = service.virtual_machine_detach_disk(href + "/hardwareconfiguration/disks/actions/detach", options).body
@@ -262,7 +262,7 @@ module Fog
def storage_size
vm_disks = disks
- disks.map! { |d| d[:Size][:Value].to_i }.inject(0){|sum,item| sum + item} * 1024 * 1024
+ disks.map! { |d| d[:Size][:Value].to_i }.reduce(0){|sum,item| sum + item} * 1024 * 1024
end
def ready?
@@ -283,16 +283,16 @@ module Fog
end
def compute_pool_id
- other_links.detect { |l| l[:type] == "application/vnd.tmrk.cloud.computePool" }[:href].scan(/\d+/)[0]
+ other_links.find { |l| l[:type] == "application/vnd.tmrk.cloud.computePool" }[:href].scan(/\d+/)[0]
end
def compute_pool
reload if other_links.nil?
- @compute_pool = self.service.compute_pools.new(:href => other_links.detect { |l| l[:type] == "application/vnd.tmrk.cloud.computePool" }[:href])
+ @compute_pool = self.service.compute_pools.new(:href => other_links.find { |l| l[:type] == "application/vnd.tmrk.cloud.computePool" }[:href])
end
def environment_id
- other_links.detect { |l| l[:type] == "application/vnd.tmrk.cloud.environment" }[:href].scan(/\d+/)[0]
+ other_links.find { |l| l[:type] == "application/vnd.tmrk.cloud.environment" }[:href].scan(/\d+/)[0]
end
def id
@@ -316,7 +316,7 @@ module Fog
true
end
- alias destroy delete
+ alias_method :destroy, :delete
end
end
end
diff --git a/lib/fog/ecloud/models/compute/server_configuration_option.rb b/lib/fog/ecloud/models/compute/server_configuration_option.rb
index 7e1cccd..90ee1e2 100644
--- a/lib/fog/ecloud/models/compute/server_configuration_option.rb
+++ b/lib/fog/ecloud/models/compute/server_configuration_option.rb
@@ -7,7 +7,6 @@ module Fog
attribute :disk, :aliases => :Disk
attribute :customization, :aliases => :Customization
-
def id
href.scan(/\d+/)[0]
end
diff --git a/lib/fog/ecloud/models/compute/server_configuration_options.rb b/lib/fog/ecloud/models/compute/server_configuration_options.rb
index bffd8bd..b1e8ee2 100644
--- a/lib/fog/ecloud/models/compute/server_configuration_options.rb
+++ b/lib/fog/ecloud/models/compute/server_configuration_options.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class ServerConfigurationOptions < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::ServerConfigurationOption
diff --git a/lib/fog/ecloud/models/compute/servers.rb b/lib/fog/ecloud/models/compute/servers.rb
index f31041c..ab67a70 100644
--- a/lib/fog/ecloud/models/compute/servers.rb
+++ b/lib/fog/ecloud/models/compute/servers.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Servers < Fog::Ecloud::Collection
-
model Fog::Compute::Ecloud::Server
identity :href
@@ -47,7 +46,7 @@ module Fog
else
[*options[:network_uri]].each do |uri|
index = options[:network_uri].index(uri)
- ip = self.service.ip_addresses(:href => uri).detect { |i| i.host == nil && i.detected_on.nil? }.name
+ ip = self.service.ip_addresses(:href => uri).find { |i| i.host == nil && i.detected_on.nil? }.name
options[:ips] ||= []
options[:ips][index] = ip
end
@@ -60,9 +59,7 @@ module Fog
object = self.service.servers.new(data)
object
end
-
end
end
end
end
-
diff --git a/lib/fog/ecloud/models/compute/ssh_key.rb b/lib/fog/ecloud/models/compute/ssh_key.rb
index ad39d08..c814dac 100644
--- a/lib/fog/ecloud/models/compute/ssh_key.rb
+++ b/lib/fog/ecloud/models/compute/ssh_key.rb
@@ -10,7 +10,6 @@ module Fog
attribute :default, :aliases => :Default, :type => :boolean
attribute :finger_print, :aliases => :FingerPrint
-
def id
href.scan(/\d+/)[0]
end
diff --git a/lib/fog/ecloud/models/compute/ssh_keys.rb b/lib/fog/ecloud/models/compute/ssh_keys.rb
index 0caf48e..733a93c 100644
--- a/lib/fog/ecloud/models/compute/ssh_keys.rb
+++ b/lib/fog/ecloud/models/compute/ssh_keys.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class SshKeys < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::SshKey
diff --git a/lib/fog/ecloud/models/compute/storage_usage_detail_summary.rb b/lib/fog/ecloud/models/compute/storage_usage_detail_summary.rb
index 03ded9a..deeffbe 100644
--- a/lib/fog/ecloud/models/compute/storage_usage_detail_summary.rb
+++ b/lib/fog/ecloud/models/compute/storage_usage_detail_summary.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class StorageUsageDetailSummary < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::StorageUsageDetail
diff --git a/lib/fog/ecloud/models/compute/support_ticket.rb b/lib/fog/ecloud/models/compute/support_ticket.rb
index 7e3d8cc..f4090d7 100644
--- a/lib/fog/ecloud/models/compute/support_ticket.rb
+++ b/lib/fog/ecloud/models/compute/support_ticket.rb
@@ -19,7 +19,6 @@ module Fog
attribute :solution, :aliases => :Solution
attribute :history, :aliases => :History
-
def id
href.scan(/\d+/)[0]
end
diff --git a/lib/fog/ecloud/models/compute/support_tickets.rb b/lib/fog/ecloud/models/compute/support_tickets.rb
index 9e27391..73a78a9 100644
--- a/lib/fog/ecloud/models/compute/support_tickets.rb
+++ b/lib/fog/ecloud/models/compute/support_tickets.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class SupportTickets < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::SupportTicket
diff --git a/lib/fog/ecloud/models/compute/tags.rb b/lib/fog/ecloud/models/compute/tags.rb
index 407967c..cf9cda0 100644
--- a/lib/fog/ecloud/models/compute/tags.rb
+++ b/lib/fog/ecloud/models/compute/tags.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Tags < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::Tag
diff --git a/lib/fog/ecloud/models/compute/tasks.rb b/lib/fog/ecloud/models/compute/tasks.rb
index e3ba3d7..397b02d 100644
--- a/lib/fog/ecloud/models/compute/tasks.rb
+++ b/lib/fog/ecloud/models/compute/tasks.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Tasks < Fog::Ecloud::Collection
-
model Fog::Compute::Ecloud::Task
identity :href
@@ -28,4 +27,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/ecloud/models/compute/templates.rb b/lib/fog/ecloud/models/compute/templates.rb
index 55dc2cc..0e5f564 100644
--- a/lib/fog/ecloud/models/compute/templates.rb
+++ b/lib/fog/ecloud/models/compute/templates.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Templates < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::Template
diff --git a/lib/fog/ecloud/models/compute/trusted_network_groups.rb b/lib/fog/ecloud/models/compute/trusted_network_groups.rb
index 83070b4..ab5f8bb 100644
--- a/lib/fog/ecloud/models/compute/trusted_network_groups.rb
+++ b/lib/fog/ecloud/models/compute/trusted_network_groups.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class TrustedNetworkGroups < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::TrustedNetworkGroup
diff --git a/lib/fog/ecloud/models/compute/users.rb b/lib/fog/ecloud/models/compute/users.rb
index 176d6c6..8661407 100644
--- a/lib/fog/ecloud/models/compute/users.rb
+++ b/lib/fog/ecloud/models/compute/users.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class Users < Fog::Ecloud::Collection
-
identity :href
model Fog::Compute::Ecloud::User
diff --git a/lib/fog/ecloud/models/compute/virtual_machine_assigned_ips.rb b/lib/fog/ecloud/models/compute/virtual_machine_assigned_ips.rb
index 6c5d5e5..effad0d 100644
--- a/lib/fog/ecloud/models/compute/virtual_machine_assigned_ips.rb
+++ b/lib/fog/ecloud/models/compute/virtual_machine_assigned_ips.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Ecloud
class VirtualMachineAssignedIps < Fog::Ecloud::Collection
-
identity :virtual_machine_id
model Fog::Compute::Ecloud::VirtualMachineAssignedIp
diff --git a/lib/fog/ecloud/requests/compute/admin_edit_authentication_levels.rb b/lib/fog/ecloud/requests/compute/admin_edit_authentication_levels.rb
index 5cd20ff..8e8e489 100644
--- a/lib/fog/ecloud/requests/compute/admin_edit_authentication_levels.rb
+++ b/lib/fog/ecloud/requests/compute/admin_edit_authentication_levels.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Ecloud
class Real
-
def authentication_levels_edit(data)
validate_data([:basic, :sha1, :sha256, :sha512], data)
body = build_authentication_levels_edit(data)
diff --git a/lib/fog/ecloud/requests/compute/admin_edit_login_banner.rb b/lib/fog/ecloud/requests/compute/admin_edit_login_banner.rb
index b553928..a4d622b 100644
--- a/lib/fog/ecloud/requests/compute/admin_edit_login_banner.rb
+++ b/lib/fog/ecloud/requests/compute/admin_edit_login_banner.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Ecloud
class Real
-
def login_banner_edit(data)
validate_data([:display], data)
body = build_login_banner_edit(data)
@@ -18,7 +17,6 @@ module Fog
private
-
def build_login_banner_edit(data)
xml = Builder::XmlMarkup.new
xml.LoginBanner do
diff --git a/lib/fog/ecloud/requests/compute/admin_edit_password_complexity_rules.rb b/lib/fog/ecloud/requests/compute/admin_edit_password_complexity_rules.rb
index 9e5fa0d..2a8b43d 100644
--- a/lib/fog/ecloud/requests/compute/admin_edit_password_complexity_rules.rb
+++ b/lib/fog/ecloud/requests/compute/admin_edit_password_complexity_rules.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Ecloud
class Real
-
def password_complexity_rules_edit(data)
validate_data([:rule_type], data)
if data[:rule_type] == "Custom"
@@ -22,7 +21,6 @@ module Fog
private
-
def build_password_complexity_rules_edit(data)
xml = Builder::XmlMarkup.new
xml.PasswordComplexityRules do
diff --git a/lib/fog/ecloud/requests/compute/backup_internet_service_delete.rb b/lib/fog/ecloud/requests/compute/backup_internet_service_delete.rb
index 2e1c263..b9565ee 100644
--- a/lib/fog/ecloud/requests/compute/backup_internet_service_delete.rb
+++ b/lib/fog/ecloud/requests/compute/backup_internet_service_delete.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :backup_internet_service_delete, 202, 'DELETE'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/compute_pool_edit.rb b/lib/fog/ecloud/requests/compute/compute_pool_edit.rb
index f0a34b4..bc4af18 100644
--- a/lib/fog/ecloud/requests/compute/compute_pool_edit.rb
+++ b/lib/fog/ecloud/requests/compute/compute_pool_edit.rb
@@ -2,10 +2,9 @@ module Fog
module Compute
class Ecloud
module Shared
-
def validate_edit_compute_pool_options(options)
required_opts = [:name]
- unless required_opts.all? { |opt| options.has_key?(opt) }
+ unless required_opts.all? { |opt| options.key?(opt) }
raise ArgumentError.new("Required data missing: #{(required_opts - options.keys).map(&:inspect).join(", ")}")
end
end
@@ -18,7 +17,6 @@ module Fog
end
class Real
-
def compute_pool_edit(options)
validate_edit_compute_pool_options(options)
body = build_compute_pool_body_edit(options)
diff --git a/lib/fog/ecloud/requests/compute/firewall_acls_create.rb b/lib/fog/ecloud/requests/compute/firewall_acls_create.rb
index 8f814ec..d4c89f8 100644
--- a/lib/fog/ecloud/requests/compute/firewall_acls_create.rb
+++ b/lib/fog/ecloud/requests/compute/firewall_acls_create.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
include Shared
diff --git a/lib/fog/ecloud/requests/compute/firewall_acls_delete.rb b/lib/fog/ecloud/requests/compute/firewall_acls_delete.rb
index fd1b072..a0936ca 100644
--- a/lib/fog/ecloud/requests/compute/firewall_acls_delete.rb
+++ b/lib/fog/ecloud/requests/compute/firewall_acls_delete.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :firewall_acls_delete, 202, 'DELETE'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_admin_organization.rb b/lib/fog/ecloud/requests/compute/get_admin_organization.rb
index 4d7fa01..035afdd 100644
--- a/lib/fog/ecloud/requests/compute/get_admin_organization.rb
+++ b/lib/fog/ecloud/requests/compute/get_admin_organization.rb
@@ -1,14 +1,12 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_admin_organization
end
class Mock
def get_admin_organization(uri)
-
organization_id = id_from_uri(uri)
admin_organization = self.data[:admin_organizations][organization_id]
diff --git a/lib/fog/ecloud/requests/compute/get_api_key.rb b/lib/fog/ecloud/requests/compute/get_api_key.rb
index ed08549..7f7e1c9 100644
--- a/lib/fog/ecloud/requests/compute/get_api_key.rb
+++ b/lib/fog/ecloud/requests/compute/get_api_key.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_api_key
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_api_keys.rb b/lib/fog/ecloud/requests/compute/get_api_keys.rb
index ba89528..62fd395 100644
--- a/lib/fog/ecloud/requests/compute/get_api_keys.rb
+++ b/lib/fog/ecloud/requests/compute/get_api_keys.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_api_keys
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_association.rb b/lib/fog/ecloud/requests/compute/get_association.rb
index 4d32598..5c261e4 100644
--- a/lib/fog/ecloud/requests/compute/get_association.rb
+++ b/lib/fog/ecloud/requests/compute/get_association.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_association
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_associations.rb b/lib/fog/ecloud/requests/compute/get_associations.rb
index c787f41..11b57a3 100644
--- a/lib/fog/ecloud/requests/compute/get_associations.rb
+++ b/lib/fog/ecloud/requests/compute/get_associations.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_associations
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_authentication_level.rb b/lib/fog/ecloud/requests/compute/get_authentication_level.rb
index 3c381a1..4816b58 100644
--- a/lib/fog/ecloud/requests/compute/get_authentication_level.rb
+++ b/lib/fog/ecloud/requests/compute/get_authentication_level.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_authentication_level
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_authentication_levels.rb b/lib/fog/ecloud/requests/compute/get_authentication_levels.rb
index 9d2a121..3f369e9 100644
--- a/lib/fog/ecloud/requests/compute/get_authentication_levels.rb
+++ b/lib/fog/ecloud/requests/compute/get_authentication_levels.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_authentication_levels
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_backup_internet_service.rb b/lib/fog/ecloud/requests/compute/get_backup_internet_service.rb
index 63c8253..1f2a35e 100644
--- a/lib/fog/ecloud/requests/compute/get_backup_internet_service.rb
+++ b/lib/fog/ecloud/requests/compute/get_backup_internet_service.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_backup_internet_service
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_backup_internet_services.rb b/lib/fog/ecloud/requests/compute/get_backup_internet_services.rb
index f3dc0b4..38c9bc2 100644
--- a/lib/fog/ecloud/requests/compute/get_backup_internet_services.rb
+++ b/lib/fog/ecloud/requests/compute/get_backup_internet_services.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_backup_internet_services
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_catalog.rb b/lib/fog/ecloud/requests/compute/get_catalog.rb
index 8c97a00..0aa84ec 100644
--- a/lib/fog/ecloud/requests/compute/get_catalog.rb
+++ b/lib/fog/ecloud/requests/compute/get_catalog.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_catalog
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_catalog_configuration.rb b/lib/fog/ecloud/requests/compute/get_catalog_configuration.rb
index 7aea2df..30407f9 100644
--- a/lib/fog/ecloud/requests/compute/get_catalog_configuration.rb
+++ b/lib/fog/ecloud/requests/compute/get_catalog_configuration.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_catalog_configuration
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_catalog_configurations.rb b/lib/fog/ecloud/requests/compute/get_catalog_configurations.rb
index 43c1d65..63bf0af 100644
--- a/lib/fog/ecloud/requests/compute/get_catalog_configurations.rb
+++ b/lib/fog/ecloud/requests/compute/get_catalog_configurations.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_catalog_configurations
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_catalog_item.rb b/lib/fog/ecloud/requests/compute/get_catalog_item.rb
index a70a584..3361129 100644
--- a/lib/fog/ecloud/requests/compute/get_catalog_item.rb
+++ b/lib/fog/ecloud/requests/compute/get_catalog_item.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_catalog_item
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_compute_pool.rb b/lib/fog/ecloud/requests/compute/get_compute_pool.rb
index 02e97ac..69a7c4f 100644
--- a/lib/fog/ecloud/requests/compute/get_compute_pool.rb
+++ b/lib/fog/ecloud/requests/compute/get_compute_pool.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_compute_pool
end
diff --git a/lib/fog/ecloud/requests/compute/get_compute_pools.rb b/lib/fog/ecloud/requests/compute/get_compute_pools.rb
index f1be76e..a104dcc 100644
--- a/lib/fog/ecloud/requests/compute/get_compute_pools.rb
+++ b/lib/fog/ecloud/requests/compute/get_compute_pools.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_compute_pools
end
diff --git a/lib/fog/ecloud/requests/compute/get_cpu_usage_detail.rb b/lib/fog/ecloud/requests/compute/get_cpu_usage_detail.rb
index 6b0e8dd..a3eae7e 100644
--- a/lib/fog/ecloud/requests/compute/get_cpu_usage_detail.rb
+++ b/lib/fog/ecloud/requests/compute/get_cpu_usage_detail.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_cpu_usage_detail
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_cpu_usage_detail_summary.rb b/lib/fog/ecloud/requests/compute/get_cpu_usage_detail_summary.rb
index 6f4e932..945d319 100644
--- a/lib/fog/ecloud/requests/compute/get_cpu_usage_detail_summary.rb
+++ b/lib/fog/ecloud/requests/compute/get_cpu_usage_detail_summary.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_cpu_usage_detail_summary
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_detached_disks.rb b/lib/fog/ecloud/requests/compute/get_detached_disks.rb
index b0ef606..105ee7f 100644
--- a/lib/fog/ecloud/requests/compute/get_detached_disks.rb
+++ b/lib/fog/ecloud/requests/compute/get_detached_disks.rb
@@ -1,14 +1,12 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_detached_disks
end
class Mock
def get_detached_disks(uri)
-
compute_pool_id = id_from_uri(uri)
compute_pool = self.data[:compute_pools][compute_pool_id]
diff --git a/lib/fog/ecloud/requests/compute/get_environment.rb b/lib/fog/ecloud/requests/compute/get_environment.rb
index 105865c..fa46d1f 100644
--- a/lib/fog/ecloud/requests/compute/get_environment.rb
+++ b/lib/fog/ecloud/requests/compute/get_environment.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_environment
end
diff --git a/lib/fog/ecloud/requests/compute/get_firewall_acl.rb b/lib/fog/ecloud/requests/compute/get_firewall_acl.rb
index b118948..5271dc9 100644
--- a/lib/fog/ecloud/requests/compute/get_firewall_acl.rb
+++ b/lib/fog/ecloud/requests/compute/get_firewall_acl.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_firewall_acl
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_firewall_acls.rb b/lib/fog/ecloud/requests/compute/get_firewall_acls.rb
index 3254ffc..6135f9c 100644
--- a/lib/fog/ecloud/requests/compute/get_firewall_acls.rb
+++ b/lib/fog/ecloud/requests/compute/get_firewall_acls.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_firewall_acls
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_guest_process.rb b/lib/fog/ecloud/requests/compute/get_guest_process.rb
index fcb7767..f4f631d 100644
--- a/lib/fog/ecloud/requests/compute/get_guest_process.rb
+++ b/lib/fog/ecloud/requests/compute/get_guest_process.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_guest_process
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_guest_processes.rb b/lib/fog/ecloud/requests/compute/get_guest_processes.rb
index b3d1d99..ecd209b 100644
--- a/lib/fog/ecloud/requests/compute/get_guest_processes.rb
+++ b/lib/fog/ecloud/requests/compute/get_guest_processes.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_guest_processes
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_hardware_configuration.rb b/lib/fog/ecloud/requests/compute/get_hardware_configuration.rb
index 0b2cd3c..212a0a0 100644
--- a/lib/fog/ecloud/requests/compute/get_hardware_configuration.rb
+++ b/lib/fog/ecloud/requests/compute/get_hardware_configuration.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_hardware_configuration
end
diff --git a/lib/fog/ecloud/requests/compute/get_hardware_configurations.rb b/lib/fog/ecloud/requests/compute/get_hardware_configurations.rb
index c6ab8e8..a381431 100644
--- a/lib/fog/ecloud/requests/compute/get_hardware_configurations.rb
+++ b/lib/fog/ecloud/requests/compute/get_hardware_configurations.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_hardware_configurations
end
diff --git a/lib/fog/ecloud/requests/compute/get_internet_service.rb b/lib/fog/ecloud/requests/compute/get_internet_service.rb
index 68397a1..eb28952 100644
--- a/lib/fog/ecloud/requests/compute/get_internet_service.rb
+++ b/lib/fog/ecloud/requests/compute/get_internet_service.rb
@@ -1,14 +1,12 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_internet_service
end
class Mock
def get_internet_service(uri)
-
internet_service_id = id_from_uri(uri)
internet_service = self.data[:internet_services][internet_service_id.to_i]
diff --git a/lib/fog/ecloud/requests/compute/get_internet_services.rb b/lib/fog/ecloud/requests/compute/get_internet_services.rb
index 93ee777..f39f940 100644
--- a/lib/fog/ecloud/requests/compute/get_internet_services.rb
+++ b/lib/fog/ecloud/requests/compute/get_internet_services.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_internet_services
end
diff --git a/lib/fog/ecloud/requests/compute/get_ip_address.rb b/lib/fog/ecloud/requests/compute/get_ip_address.rb
index f4ec658..2021216 100644
--- a/lib/fog/ecloud/requests/compute/get_ip_address.rb
+++ b/lib/fog/ecloud/requests/compute/get_ip_address.rb
@@ -1,16 +1,14 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_ip_address
end
class Mock
def get_ip_address(uri)
-
network_id, ip_address_id = uri.match(/\/networks\/(\d+)\/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})$/).captures
- ip_address = self.data[:networks][network_id.to_i][:IpAddresses][:IpAddress].detect{|ip| ip[:name] == ip_address_id }.dup
+ ip_address = self.data[:networks][network_id.to_i][:IpAddresses][:IpAddress].find{|ip| ip[:name] == ip_address_id }.dup
if ip_address
response(:body => ip_address)
else response(:status => 404) # ?
diff --git a/lib/fog/ecloud/requests/compute/get_location.rb b/lib/fog/ecloud/requests/compute/get_location.rb
index 732279e..18e937d 100644
--- a/lib/fog/ecloud/requests/compute/get_location.rb
+++ b/lib/fog/ecloud/requests/compute/get_location.rb
@@ -1,12 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_location
end
-
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_locations.rb b/lib/fog/ecloud/requests/compute/get_locations.rb
index 4c29ffc..936dc4b 100644
--- a/lib/fog/ecloud/requests/compute/get_locations.rb
+++ b/lib/fog/ecloud/requests/compute/get_locations.rb
@@ -1,12 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_locations
end
-
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_login_banner.rb b/lib/fog/ecloud/requests/compute/get_login_banner.rb
index 2f24959..d59fd13 100644
--- a/lib/fog/ecloud/requests/compute/get_login_banner.rb
+++ b/lib/fog/ecloud/requests/compute/get_login_banner.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_login_banner
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_login_banners.rb b/lib/fog/ecloud/requests/compute/get_login_banners.rb
index 47d3347..b5e86af 100644
--- a/lib/fog/ecloud/requests/compute/get_login_banners.rb
+++ b/lib/fog/ecloud/requests/compute/get_login_banners.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_login_banners
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_memory_usage_detail.rb b/lib/fog/ecloud/requests/compute/get_memory_usage_detail.rb
index 7a4da5a..faf38f4 100644
--- a/lib/fog/ecloud/requests/compute/get_memory_usage_detail.rb
+++ b/lib/fog/ecloud/requests/compute/get_memory_usage_detail.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_memory_usage_detail
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_memory_usage_detail_summary.rb b/lib/fog/ecloud/requests/compute/get_memory_usage_detail_summary.rb
index 8843d46..3bbab12 100644
--- a/lib/fog/ecloud/requests/compute/get_memory_usage_detail_summary.rb
+++ b/lib/fog/ecloud/requests/compute/get_memory_usage_detail_summary.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_memory_usage_detail_summary
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_monitor.rb b/lib/fog/ecloud/requests/compute/get_monitor.rb
index bcfa76c..3a1ee3e 100644
--- a/lib/fog/ecloud/requests/compute/get_monitor.rb
+++ b/lib/fog/ecloud/requests/compute/get_monitor.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_monitor
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_monitors.rb b/lib/fog/ecloud/requests/compute/get_monitors.rb
index 07b4cc9..8e92d8e 100644
--- a/lib/fog/ecloud/requests/compute/get_monitors.rb
+++ b/lib/fog/ecloud/requests/compute/get_monitors.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_monitors
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_network.rb b/lib/fog/ecloud/requests/compute/get_network.rb
index 5eb94ee..08d5bf7 100644
--- a/lib/fog/ecloud/requests/compute/get_network.rb
+++ b/lib/fog/ecloud/requests/compute/get_network.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_network
end
diff --git a/lib/fog/ecloud/requests/compute/get_network_summary.rb b/lib/fog/ecloud/requests/compute/get_network_summary.rb
index 9f85118..fb78e82 100644
--- a/lib/fog/ecloud/requests/compute/get_network_summary.rb
+++ b/lib/fog/ecloud/requests/compute/get_network_summary.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_network_summary
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_networks.rb b/lib/fog/ecloud/requests/compute/get_networks.rb
index 810371e..5f51fe3 100644
--- a/lib/fog/ecloud/requests/compute/get_networks.rb
+++ b/lib/fog/ecloud/requests/compute/get_networks.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_networks
end
diff --git a/lib/fog/ecloud/requests/compute/get_node.rb b/lib/fog/ecloud/requests/compute/get_node.rb
index c8ac82f..6f59d5b 100644
--- a/lib/fog/ecloud/requests/compute/get_node.rb
+++ b/lib/fog/ecloud/requests/compute/get_node.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_node
end
diff --git a/lib/fog/ecloud/requests/compute/get_nodes.rb b/lib/fog/ecloud/requests/compute/get_nodes.rb
index 1f7db7c..03e95f6 100644
--- a/lib/fog/ecloud/requests/compute/get_nodes.rb
+++ b/lib/fog/ecloud/requests/compute/get_nodes.rb
@@ -1,14 +1,12 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_nodes
end
class Mock
def get_nodes(uri)
-
internet_service_id = id_from_uri(uri)
internet_service = self.data[:internet_services][internet_service_id]
diff --git a/lib/fog/ecloud/requests/compute/get_operating_system.rb b/lib/fog/ecloud/requests/compute/get_operating_system.rb
index 9f82d6c..3f8545d 100644
--- a/lib/fog/ecloud/requests/compute/get_operating_system.rb
+++ b/lib/fog/ecloud/requests/compute/get_operating_system.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_operating_system
end
diff --git a/lib/fog/ecloud/requests/compute/get_operating_system_families.rb b/lib/fog/ecloud/requests/compute/get_operating_system_families.rb
index ddb9878..50c818f 100644
--- a/lib/fog/ecloud/requests/compute/get_operating_system_families.rb
+++ b/lib/fog/ecloud/requests/compute/get_operating_system_families.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_operating_system_families
end
diff --git a/lib/fog/ecloud/requests/compute/get_organization.rb b/lib/fog/ecloud/requests/compute/get_organization.rb
index 5fba627..fc5a58d 100644
--- a/lib/fog/ecloud/requests/compute/get_organization.rb
+++ b/lib/fog/ecloud/requests/compute/get_organization.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_organization
end
diff --git a/lib/fog/ecloud/requests/compute/get_password_complexity_rule.rb b/lib/fog/ecloud/requests/compute/get_password_complexity_rule.rb
index 63d4be1..c9d1dcd 100644
--- a/lib/fog/ecloud/requests/compute/get_password_complexity_rule.rb
+++ b/lib/fog/ecloud/requests/compute/get_password_complexity_rule.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_password_complexity_rule
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_password_complexity_rules.rb b/lib/fog/ecloud/requests/compute/get_password_complexity_rules.rb
index e7a7907..e2b2d4d 100644
--- a/lib/fog/ecloud/requests/compute/get_password_complexity_rules.rb
+++ b/lib/fog/ecloud/requests/compute/get_password_complexity_rules.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_password_complexity_rules
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_physical_device.rb b/lib/fog/ecloud/requests/compute/get_physical_device.rb
index 91cae1c..0b58f0c 100644
--- a/lib/fog/ecloud/requests/compute/get_physical_device.rb
+++ b/lib/fog/ecloud/requests/compute/get_physical_device.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_physical_device
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_physical_devices.rb b/lib/fog/ecloud/requests/compute/get_physical_devices.rb
index 96aec66..9df37b1 100644
--- a/lib/fog/ecloud/requests/compute/get_physical_devices.rb
+++ b/lib/fog/ecloud/requests/compute/get_physical_devices.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_physical_devices
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_process.rb b/lib/fog/ecloud/requests/compute/get_process.rb
index e34a99f..add7e0d 100644
--- a/lib/fog/ecloud/requests/compute/get_process.rb
+++ b/lib/fog/ecloud/requests/compute/get_process.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_process
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_processes.rb b/lib/fog/ecloud/requests/compute/get_processes.rb
index 6557871..c05857c 100644
--- a/lib/fog/ecloud/requests/compute/get_processes.rb
+++ b/lib/fog/ecloud/requests/compute/get_processes.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_processes
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_public_ips.rb b/lib/fog/ecloud/requests/compute/get_public_ips.rb
index bff5940..61bcdbe 100644
--- a/lib/fog/ecloud/requests/compute/get_public_ips.rb
+++ b/lib/fog/ecloud/requests/compute/get_public_ips.rb
@@ -1,14 +1,12 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_public_ips
end
class Mock
def get_public_ips(uri)
-
environment_id = id_from_uri(uri)
environment = self.data[:environments][environment_id]
diff --git a/lib/fog/ecloud/requests/compute/get_rnat.rb b/lib/fog/ecloud/requests/compute/get_rnat.rb
index 0ce034b..4c99940 100644
--- a/lib/fog/ecloud/requests/compute/get_rnat.rb
+++ b/lib/fog/ecloud/requests/compute/get_rnat.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_rnat
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_rnats.rb b/lib/fog/ecloud/requests/compute/get_rnats.rb
index b3348a0..85edc26 100644
--- a/lib/fog/ecloud/requests/compute/get_rnats.rb
+++ b/lib/fog/ecloud/requests/compute/get_rnats.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_rnats
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_role.rb b/lib/fog/ecloud/requests/compute/get_role.rb
index 3f3e184..198e81d 100644
--- a/lib/fog/ecloud/requests/compute/get_role.rb
+++ b/lib/fog/ecloud/requests/compute/get_role.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_role
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_roles.rb b/lib/fog/ecloud/requests/compute/get_roles.rb
index 1a32e83..aa8b92c 100644
--- a/lib/fog/ecloud/requests/compute/get_roles.rb
+++ b/lib/fog/ecloud/requests/compute/get_roles.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_roles
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_server.rb b/lib/fog/ecloud/requests/compute/get_server.rb
index e21579a..df709a7 100644
--- a/lib/fog/ecloud/requests/compute/get_server.rb
+++ b/lib/fog/ecloud/requests/compute/get_server.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_server
end
diff --git a/lib/fog/ecloud/requests/compute/get_server_configuration_option.rb b/lib/fog/ecloud/requests/compute/get_server_configuration_option.rb
index a807855..c1c9411 100644
--- a/lib/fog/ecloud/requests/compute/get_server_configuration_option.rb
+++ b/lib/fog/ecloud/requests/compute/get_server_configuration_option.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_server_configuration_option
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_server_configuration_options.rb b/lib/fog/ecloud/requests/compute/get_server_configuration_options.rb
index 1b733e4..7047e3e 100644
--- a/lib/fog/ecloud/requests/compute/get_server_configuration_options.rb
+++ b/lib/fog/ecloud/requests/compute/get_server_configuration_options.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_server_configuration_options
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_ssh_key.rb b/lib/fog/ecloud/requests/compute/get_ssh_key.rb
index 7543c98..805ec1d 100644
--- a/lib/fog/ecloud/requests/compute/get_ssh_key.rb
+++ b/lib/fog/ecloud/requests/compute/get_ssh_key.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_ssh_key
end
diff --git a/lib/fog/ecloud/requests/compute/get_ssh_keys.rb b/lib/fog/ecloud/requests/compute/get_ssh_keys.rb
index 2c61114..a641f78 100644
--- a/lib/fog/ecloud/requests/compute/get_ssh_keys.rb
+++ b/lib/fog/ecloud/requests/compute/get_ssh_keys.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_ssh_keys
end
diff --git a/lib/fog/ecloud/requests/compute/get_storage_usage_detail.rb b/lib/fog/ecloud/requests/compute/get_storage_usage_detail.rb
index 2fe2609..62b4802 100644
--- a/lib/fog/ecloud/requests/compute/get_storage_usage_detail.rb
+++ b/lib/fog/ecloud/requests/compute/get_storage_usage_detail.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_storage_usage_detail
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_storage_usage_detail_summary.rb b/lib/fog/ecloud/requests/compute/get_storage_usage_detail_summary.rb
index 3f5836e..ab4b458 100644
--- a/lib/fog/ecloud/requests/compute/get_storage_usage_detail_summary.rb
+++ b/lib/fog/ecloud/requests/compute/get_storage_usage_detail_summary.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_storage_usage_detail_summary
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_support_ticket.rb b/lib/fog/ecloud/requests/compute/get_support_ticket.rb
index 8613475..5f7b845 100644
--- a/lib/fog/ecloud/requests/compute/get_support_ticket.rb
+++ b/lib/fog/ecloud/requests/compute/get_support_ticket.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_support_ticket
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_support_tickets.rb b/lib/fog/ecloud/requests/compute/get_support_tickets.rb
index 29232a1..7685060 100644
--- a/lib/fog/ecloud/requests/compute/get_support_tickets.rb
+++ b/lib/fog/ecloud/requests/compute/get_support_tickets.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_support_tickets
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_tag.rb b/lib/fog/ecloud/requests/compute/get_tag.rb
index d830d8f..62d8fc7 100644
--- a/lib/fog/ecloud/requests/compute/get_tag.rb
+++ b/lib/fog/ecloud/requests/compute/get_tag.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_tag
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_tags.rb b/lib/fog/ecloud/requests/compute/get_tags.rb
index ea54d5f..22c96ff 100644
--- a/lib/fog/ecloud/requests/compute/get_tags.rb
+++ b/lib/fog/ecloud/requests/compute/get_tags.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_tags
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_tasks.rb b/lib/fog/ecloud/requests/compute/get_tasks.rb
index f8e0150..85f58fc 100644
--- a/lib/fog/ecloud/requests/compute/get_tasks.rb
+++ b/lib/fog/ecloud/requests/compute/get_tasks.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_tasks
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_template.rb b/lib/fog/ecloud/requests/compute/get_template.rb
index 89ef024..cfaf56a 100644
--- a/lib/fog/ecloud/requests/compute/get_template.rb
+++ b/lib/fog/ecloud/requests/compute/get_template.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_template
end
diff --git a/lib/fog/ecloud/requests/compute/get_templates.rb b/lib/fog/ecloud/requests/compute/get_templates.rb
index ef44b3c..87b6360 100644
--- a/lib/fog/ecloud/requests/compute/get_templates.rb
+++ b/lib/fog/ecloud/requests/compute/get_templates.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_templates
end
diff --git a/lib/fog/ecloud/requests/compute/get_trusted_network_group.rb b/lib/fog/ecloud/requests/compute/get_trusted_network_group.rb
index 2396910..509e7e1 100644
--- a/lib/fog/ecloud/requests/compute/get_trusted_network_group.rb
+++ b/lib/fog/ecloud/requests/compute/get_trusted_network_group.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_trusted_network_group
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_trusted_network_groups.rb b/lib/fog/ecloud/requests/compute/get_trusted_network_groups.rb
index 60e5bf7..0ef7be2 100644
--- a/lib/fog/ecloud/requests/compute/get_trusted_network_groups.rb
+++ b/lib/fog/ecloud/requests/compute/get_trusted_network_groups.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_trusted_network_groups
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_user.rb b/lib/fog/ecloud/requests/compute/get_user.rb
index 2eb486f..ab17561 100644
--- a/lib/fog/ecloud/requests/compute/get_user.rb
+++ b/lib/fog/ecloud/requests/compute/get_user.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_user
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_users.rb b/lib/fog/ecloud/requests/compute/get_users.rb
index eb3f0ac..42f6201 100644
--- a/lib/fog/ecloud/requests/compute/get_users.rb
+++ b/lib/fog/ecloud/requests/compute/get_users.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :get_users
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/get_virtual_machine_assigned_ips.rb b/lib/fog/ecloud/requests/compute/get_virtual_machine_assigned_ips.rb
index 994185e..cf155e3 100644
--- a/lib/fog/ecloud/requests/compute/get_virtual_machine_assigned_ips.rb
+++ b/lib/fog/ecloud/requests/compute/get_virtual_machine_assigned_ips.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
def get_virtual_machine_assigned_ips(virtual_machine_id)
request(
@@ -21,7 +20,6 @@ module Fog
networks = self.data[:networks].values.select{|n| n[:environment_id] == environment_id}
networks = networks.map{|n| deep_copy(Fog::Ecloud.slice(n, :environment, :id))}
-
networks.each do |network|
address = network[:IpAddresses][:IpAddress].map{|ia| ia[:name]}
network[:IpAddresses][:IpAddress] = address.first
diff --git a/lib/fog/ecloud/requests/compute/groups_movedown.rb b/lib/fog/ecloud/requests/compute/groups_movedown.rb
index 4e4bbdf..7d58767 100644
--- a/lib/fog/ecloud/requests/compute/groups_movedown.rb
+++ b/lib/fog/ecloud/requests/compute/groups_movedown.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :groups_movedown, 204, 'POST'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/groups_moveup.rb b/lib/fog/ecloud/requests/compute/groups_moveup.rb
index 03c01e4..3b6db62 100644
--- a/lib/fog/ecloud/requests/compute/groups_moveup.rb
+++ b/lib/fog/ecloud/requests/compute/groups_moveup.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :groups_moveup, 204, 'POST'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/internet_service_create.rb b/lib/fog/ecloud/requests/compute/internet_service_create.rb
index 9fccd41..ef30e50 100644
--- a/lib/fog/ecloud/requests/compute/internet_service_create.rb
+++ b/lib/fog/ecloud/requests/compute/internet_service_create.rb
@@ -4,7 +4,7 @@ module Fog
module Shared
def validate_internet_service_data(service_data)
required_opts = [:name, :protocol, :port, :description, :enabled, :persistence]
- unless required_opts.all? { |opt| service_data.has_key?(opt) }
+ unless required_opts.all? { |opt| service_data.key?(opt) }
raise ArgumentError.new("Required Internet Service data missing: #{(required_opts - service_data.keys).map(&:inspect).join(", ")}")
end
if service_data[:trusted_network_group]
diff --git a/lib/fog/ecloud/requests/compute/internet_service_delete.rb b/lib/fog/ecloud/requests/compute/internet_service_delete.rb
index 5141037..6a6775b 100644
--- a/lib/fog/ecloud/requests/compute/internet_service_delete.rb
+++ b/lib/fog/ecloud/requests/compute/internet_service_delete.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :internet_service_delete, 202, 'DELETE'
end
diff --git a/lib/fog/ecloud/requests/compute/internet_service_edit.rb b/lib/fog/ecloud/requests/compute/internet_service_edit.rb
index 5692c2f..ab9fe1e 100644
--- a/lib/fog/ecloud/requests/compute/internet_service_edit.rb
+++ b/lib/fog/ecloud/requests/compute/internet_service_edit.rb
@@ -2,10 +2,9 @@ module Fog
module Compute
class Ecloud
module Shared
-
def validate_edit_internet_service_options(options)
required_opts = [:name, :enabled, :persistence]
- unless required_opts.all? { |opt| options.has_key?(opt) }
+ unless required_opts.all? { |opt| options.key?(opt) }
raise ArgumentError.new("Required data missing: #{(required_opts - options.keys).map(&:inspect).join(", ")}")
end
raise ArgumentError.new("Required data missing: #{:persistence[:type]}") unless options[:persistence][:type]
@@ -41,7 +40,6 @@ module Fog
end
class Real
-
def node_service_edit(options)
validate_edit_node_service_options(options)
body = build_node_service_body_edit(options)
diff --git a/lib/fog/ecloud/requests/compute/monitors_create_default.rb b/lib/fog/ecloud/requests/compute/monitors_create_default.rb
index 31283dd..2c5932f 100644
--- a/lib/fog/ecloud/requests/compute/monitors_create_default.rb
+++ b/lib/fog/ecloud/requests/compute/monitors_create_default.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :monitors_create_default, 201, 'POST'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/monitors_create_loopback.rb b/lib/fog/ecloud/requests/compute/monitors_create_loopback.rb
index e47fc9e..b728530 100644
--- a/lib/fog/ecloud/requests/compute/monitors_create_loopback.rb
+++ b/lib/fog/ecloud/requests/compute/monitors_create_loopback.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :monitors_create_loopback, 201, 'POST'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/monitors_disable.rb b/lib/fog/ecloud/requests/compute/monitors_disable.rb
index eb95c56..fff7209 100644
--- a/lib/fog/ecloud/requests/compute/monitors_disable.rb
+++ b/lib/fog/ecloud/requests/compute/monitors_disable.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :monitors_disable, 202, 'POST'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/monitors_enable.rb b/lib/fog/ecloud/requests/compute/monitors_enable.rb
index 2bf4c20..1f01244 100644
--- a/lib/fog/ecloud/requests/compute/monitors_enable.rb
+++ b/lib/fog/ecloud/requests/compute/monitors_enable.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :monitors_enable, 202, 'POST'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/node_service_create.rb b/lib/fog/ecloud/requests/compute/node_service_create.rb
index 9adabde..6ce4ad7 100644
--- a/lib/fog/ecloud/requests/compute/node_service_create.rb
+++ b/lib/fog/ecloud/requests/compute/node_service_create.rb
@@ -4,7 +4,7 @@ module Fog
module Shared
def validate_node_service_data(service_data)
required_opts = [:name, :port, :enabled, :ip_address]
- unless required_opts.all? { |opt| service_data.has_key?(opt) }
+ unless required_opts.all? { |opt| service_data.key?(opt) }
raise ArgumentError.new("Required Internet Service data missing: #{(required_opts - service_data.keys).map(&:inspect).join(", ")}")
end
end
@@ -51,7 +51,7 @@ module Fog
network = self.data[:networks][network_id.to_i]
ip_addresses = network[:IpAddresses][:IpAddress]
ip_addresses = ip_addresses.is_a?(Array) ? ip_addresses : [ip_addresses]
- ip_address = ip_addresses.detect { |ip| ip[:name] == ip_address_name }
+ ip_address = ip_addresses.find { |ip| ip[:name] == ip_address_name }
service_id = Fog::Mock.random_numbers(6).to_i
service = {
diff --git a/lib/fog/ecloud/requests/compute/node_service_delete.rb b/lib/fog/ecloud/requests/compute/node_service_delete.rb
index 364a5ee..b9437b1 100644
--- a/lib/fog/ecloud/requests/compute/node_service_delete.rb
+++ b/lib/fog/ecloud/requests/compute/node_service_delete.rb
@@ -1,14 +1,12 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :node_service_delete, 202, 'DELETE'
end
class Mock
def node_service_delete(uri)
-
service_id = id_from_uri(uri)
service = self.data[:node_services][service_id].dup
diff --git a/lib/fog/ecloud/requests/compute/node_service_edit.rb b/lib/fog/ecloud/requests/compute/node_service_edit.rb
index 93f7985..ddb3011 100644
--- a/lib/fog/ecloud/requests/compute/node_service_edit.rb
+++ b/lib/fog/ecloud/requests/compute/node_service_edit.rb
@@ -2,10 +2,9 @@ module Fog
module Compute
class Ecloud
module Shared
-
def validate_edit_node_service_options(options)
required_opts = [:name, :enabled]
- unless required_opts.all? { |opt| options.has_key?(opt) }
+ unless required_opts.all? { |opt| options.key?(opt) }
raise ArgumentError.new("Required data missing: #{(required_opts - options.keys).map(&:inspect).join(", ")}")
end
end
@@ -22,7 +21,6 @@ module Fog
end
class Real
-
def node_service_edit(options)
validate_edit_node_service_options(options)
body = build_node_service_body_edit(options)
diff --git a/lib/fog/ecloud/requests/compute/power_off.rb b/lib/fog/ecloud/requests/compute/power_off.rb
index 304bab8..2254481 100644
--- a/lib/fog/ecloud/requests/compute/power_off.rb
+++ b/lib/fog/ecloud/requests/compute/power_off.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :power_off, 202, 'POST'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/power_on.rb b/lib/fog/ecloud/requests/compute/power_on.rb
index b79ff20..920351c 100644
--- a/lib/fog/ecloud/requests/compute/power_on.rb
+++ b/lib/fog/ecloud/requests/compute/power_on.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :power_on, 202, 'POST'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/power_reset.rb b/lib/fog/ecloud/requests/compute/power_reset.rb
index c0590ca..934333e 100644
--- a/lib/fog/ecloud/requests/compute/power_reset.rb
+++ b/lib/fog/ecloud/requests/compute/power_reset.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :power_reset, 202, 'POST'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/power_shutdown.rb b/lib/fog/ecloud/requests/compute/power_shutdown.rb
index 2fc249c..5ea0625 100644
--- a/lib/fog/ecloud/requests/compute/power_shutdown.rb
+++ b/lib/fog/ecloud/requests/compute/power_shutdown.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :power_shutdown, 202, 'POST'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/public_ip_activate.rb b/lib/fog/ecloud/requests/compute/public_ip_activate.rb
index b4c6c1f..1701555 100644
--- a/lib/fog/ecloud/requests/compute/public_ip_activate.rb
+++ b/lib/fog/ecloud/requests/compute/public_ip_activate.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :public_ip_activate, 201, 'POST'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/rows_movedown.rb b/lib/fog/ecloud/requests/compute/rows_movedown.rb
index 796ea1b..1332bd8 100644
--- a/lib/fog/ecloud/requests/compute/rows_movedown.rb
+++ b/lib/fog/ecloud/requests/compute/rows_movedown.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :rows_movedown, 204, 'POST'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/rows_moveup.rb b/lib/fog/ecloud/requests/compute/rows_moveup.rb
index 8ebdc82..99c2b31 100644
--- a/lib/fog/ecloud/requests/compute/rows_moveup.rb
+++ b/lib/fog/ecloud/requests/compute/rows_moveup.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :rows_moveup, 204, 'POST'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/trusted_network_groups_create.rb b/lib/fog/ecloud/requests/compute/trusted_network_groups_create.rb
index 9b1f2b3..7836410 100644
--- a/lib/fog/ecloud/requests/compute/trusted_network_groups_create.rb
+++ b/lib/fog/ecloud/requests/compute/trusted_network_groups_create.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
include Shared
@@ -11,7 +10,6 @@ module Fog
raise ArgumentError.new("Required data missing: Either hosts or networks must be present")
end
-
request(
:body => generate_create_trusted_network_groups_request(data),
:expects => 201,
diff --git a/lib/fog/ecloud/requests/compute/trusted_network_groups_delete.rb b/lib/fog/ecloud/requests/compute/trusted_network_groups_delete.rb
index 9973fc9..8d7cc82 100644
--- a/lib/fog/ecloud/requests/compute/trusted_network_groups_delete.rb
+++ b/lib/fog/ecloud/requests/compute/trusted_network_groups_delete.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Ecloud
-
class Real
basic_request :trusted_network_groups_delete, 202, 'DELETE'
end
-
end
end
end
diff --git a/lib/fog/ecloud/requests/compute/trusted_network_groups_edit.rb b/lib/fog/ecloud/requests/compute/trusted_network_groups_edit.rb
index 80fa435..5a9e064 100644
--- a/lib/fog/ecloud/requests/compute/trusted_network_groups_edit.rb
+++ b/lib/fog/ecloud/requests/compute/trusted_network_groups_edit.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ecloud
-
class Real
include Shared
@@ -11,7 +10,6 @@ module Fog
raise ArgumentError.new("Required data missing: Either hosts or networks must be present")
end
-
request(
:body => generate_edit_trusted_network_groups_request(data),
:expects => 202,
diff --git a/lib/fog/ecloud/requests/compute/virtual_machine_attach_disk.rb b/lib/fog/ecloud/requests/compute/virtual_machine_attach_disk.rb
index 3188671..5733727 100644
--- a/lib/fog/ecloud/requests/compute/virtual_machine_attach_disk.rb
+++ b/lib/fog/ecloud/requests/compute/virtual_machine_attach_disk.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Ecloud
module Shared
-
def build_request_body_attach_disk(options)
xml = Builder::XmlMarkup.new
xml.AttachDisks(:name => options[:name]) do
diff --git a/lib/fog/ecloud/requests/compute/virtual_machine_copy.rb b/lib/fog/ecloud/requests/compute/virtual_machine_copy.rb
index 0b79dad..0cc06d4 100644
--- a/lib/fog/ecloud/requests/compute/virtual_machine_copy.rb
+++ b/lib/fog/ecloud/requests/compute/virtual_machine_copy.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Ecloud
module Shared
-
def validate_create_server_options_copy(template_uri, options)
required_opts = [:name, :cpus, :memory, :row, :group, :customization, :network_uri, :source]
if options[:customization] == :windows
@@ -10,7 +9,7 @@ module Fog
else
required_opts.push(:ssh_key_uri)
end
- unless required_opts.all? { |opt| options.has_key?(opt) }
+ unless required_opts.all? { |opt| options.key?(opt) }
raise ArgumentError.new("Required data missing: #{(required_opts - options.keys).map(&:inspect).join(", ")}")
end
@@ -99,7 +98,6 @@ module Fog
end
class Real
-
def virtual_machine_copy(template_uri, options)
options = validate_create_server_options_copy(template_uri, options)
body = build_request_body_copy(options)
diff --git a/lib/fog/ecloud/requests/compute/virtual_machine_copy_identical.rb b/lib/fog/ecloud/requests/compute/virtual_machine_copy_identical.rb
index c1698b7..d47a024 100644
--- a/lib/fog/ecloud/requests/compute/virtual_machine_copy_identical.rb
+++ b/lib/fog/ecloud/requests/compute/virtual_machine_copy_identical.rb
@@ -2,10 +2,9 @@ module Fog
module Compute
class Ecloud
module Shared
-
def validate_create_server_options_identical(template_uri, options)
required_opts = [:name, :row, :group, :source]
- unless required_opts.all? { |opt| options.has_key?(opt) }
+ unless required_opts.all? { |opt| options.key?(opt) }
raise ArgumentError.new("Required data missing: #{(required_opts - options.keys).map(&:inspect).join(", ")}")
end
@@ -26,7 +25,6 @@ module Fog
end
class Real
-
def virtual_machine_copy_identical(template_uri, options)
options = validate_create_server_options_identical(template_uri, options)
body = build_request_body_identical(options)
diff --git a/lib/fog/ecloud/requests/compute/virtual_machine_create_from_template.rb b/lib/fog/ecloud/requests/compute/virtual_machine_create_from_template.rb
index a4d4d3a..dd0df55 100644
--- a/lib/fog/ecloud/requests/compute/virtual_machine_create_from_template.rb
+++ b/lib/fog/ecloud/requests/compute/virtual_machine_create_from_template.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Ecloud
module Shared
-
def validate_create_server_options(template_uri, options)
required_opts = [:name, :cpus, :memory, :row, :group, :customization, :network_uri]
if options[:customization] == :windows
@@ -10,7 +9,7 @@ module Fog
else
required_opts.push(:ssh_key_uri)
end
- unless required_opts.all? { |opt| options.has_key?(opt) }
+ unless required_opts.all? { |opt| options.key?(opt) }
raise ArgumentError.new("Required data missing: #{(required_opts - options.keys).map(&:inspect).join(", ")}")
end
@@ -137,7 +136,7 @@ module Fog
networks.each do |network|
links << Fog::Ecloud.keep(network, :name, :href, :type)
network_id = id_from_uri(network[:href])
- ip = self.data[:networks][network_id][:IpAddresses][:IpAddress].detect { |ip| ip[:id] = network[:ip] }
+ ip = self.data[:networks][network_id][:IpAddresses][:IpAddress].find { |ip| ip[:id] = network[:ip] }
ip[:DetectedOn] = {:href => "/cloudapi/ecloud/networkhosts/#{server_id}", :name => options[:name], :type => "application/vnd.tmrk.cloud.networkHost"}
ip[:Host] = {:href => "/cloudapi/ecloud/networkhosts/#{server_id}", :name => options[:name], :type => "application/vnd.tmrk.cloud.networkHost"}
end
diff --git a/lib/fog/ecloud/requests/compute/virtual_machine_detach_disk.rb b/lib/fog/ecloud/requests/compute/virtual_machine_detach_disk.rb
index df6d62d..e274821 100644
--- a/lib/fog/ecloud/requests/compute/virtual_machine_detach_disk.rb
+++ b/lib/fog/ecloud/requests/compute/virtual_machine_detach_disk.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Ecloud
module Shared
-
def build_request_body_detach_disk(options)
xml = Builder::XmlMarkup.new
xml.DetachDisk(:name => options[:name]) do
diff --git a/lib/fog/ecloud/requests/compute/virtual_machine_edit.rb b/lib/fog/ecloud/requests/compute/virtual_machine_edit.rb
index ccab5f2..de08b70 100644
--- a/lib/fog/ecloud/requests/compute/virtual_machine_edit.rb
+++ b/lib/fog/ecloud/requests/compute/virtual_machine_edit.rb
@@ -2,10 +2,9 @@ module Fog
module Compute
class Ecloud
module Shared
-
def validate_edit_server_options(options)
required_opts = [:name]
- unless required_opts.all? { |opt| options.has_key?(opt) }
+ unless required_opts.all? { |opt| options.key?(opt) }
raise ArgumentError.new("Required data missing: #{(required_opts - options.keys).map(&:inspect).join(", ")}")
end
end
@@ -28,7 +27,6 @@ module Fog
end
class Real
-
def virtual_machine_edit(vm_uri, options)
validate_edit_server_options(options)
body = build_request_body_edit(options)
diff --git a/lib/fog/ecloud/requests/compute/virtual_machine_edit_assigned_ips.rb b/lib/fog/ecloud/requests/compute/virtual_machine_edit_assigned_ips.rb
index 510ae76..e0120b1 100644
--- a/lib/fog/ecloud/requests/compute/virtual_machine_edit_assigned_ips.rb
+++ b/lib/fog/ecloud/requests/compute/virtual_machine_edit_assigned_ips.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Ecloud
module Shared
-
def build_request_body_edit_assigned_ips(networks)
xml = Builder::XmlMarkup.new
xml.AssignedIpAddresses do
@@ -22,7 +21,6 @@ module Fog
end
class Real
-
def virtual_machine_edit_assigned_ips(href, options)
body = build_request_body_edit_assigned_ips(options)
request(
@@ -45,7 +43,7 @@ module Fog
network = self.data[:networks][network_id]
options.each.each do |net|
net[:ips].each do |ip|
- ip = network[:IpAddresses][:IpAddress].detect { |iph| iph[:name] == ip }
+ ip = network[:IpAddresses][:IpAddress].find { |iph| iph[:name] == ip }
ip[:Host] = {
:href => "/clouapi/ecloud/networkhosts/#{server_id}",
:name => server[:name],
diff --git a/lib/fog/ecloud/requests/compute/virtual_machine_edit_hardware_configuration.rb b/lib/fog/ecloud/requests/compute/virtual_machine_edit_hardware_configuration.rb
index 0973ccd..02d503c 100644
--- a/lib/fog/ecloud/requests/compute/virtual_machine_edit_hardware_configuration.rb
+++ b/lib/fog/ecloud/requests/compute/virtual_machine_edit_hardware_configuration.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Ecloud
class Real
-
def virtual_machine_edit_hardware_configuration(vm_uri, data)
validate_data([:cpus, :memory, :disks, :nics], data)
body = build_request_body_edit_hardware_configuration(data)
@@ -51,7 +50,6 @@ module Fog
class Mock
def virtual_machine_edit_hardware_configuration(vm_uri, data)
-
server_id = vm_uri.match(/(\d+)/)[1]
server = self.data[:servers][server_id.to_i]
diff --git a/lib/fog/ecloud/requests/compute/virtual_machine_import.rb b/lib/fog/ecloud/requests/compute/virtual_machine_import.rb
index aa2e440..64ad7d1 100644
--- a/lib/fog/ecloud/requests/compute/virtual_machine_import.rb
+++ b/lib/fog/ecloud/requests/compute/virtual_machine_import.rb
@@ -2,10 +2,9 @@ module Fog
module Compute
class Ecloud
module Shared
-
def validate_import_server_options(template_uri, options)
required_opts = [:name, :cpus, :memory, :row, :group, :network_uri, :catalog_network_name]
- unless required_opts.all? { |opt| options.has_key?(opt) }
+ unless required_opts.all? { |opt| options.key?(opt) }
raise ArgumentError.new("Required data missing: #{(required_opts - options.keys).map(&:inspect).join(", ")}")
end
@@ -48,7 +47,6 @@ module Fog
end
class Real
-
def virtual_machine_import(template_uri, options)
options = validate_import_server_options(template_uri, options)
diff --git a/lib/fog/ecloud/requests/compute/virtual_machine_upload_file.rb b/lib/fog/ecloud/requests/compute/virtual_machine_upload_file.rb
index 1163330..ed57cae 100644
--- a/lib/fog/ecloud/requests/compute/virtual_machine_upload_file.rb
+++ b/lib/fog/ecloud/requests/compute/virtual_machine_upload_file.rb
@@ -2,18 +2,15 @@ module Fog
module Compute
class Ecloud
module Shared
-
def validate_upload_file_options(options)
required_opts = [:file, :path, :credentials]
- unless required_opts.all? { |opt| options.has_key?(opt) }
+ unless required_opts.all? { |opt| options.key?(opt) }
raise ArgumentError.new("Required data missing: #{(required_opts - options.keys).map(&:inspect).join(", ")}")
end
end
-
end
class Real
-
def virtual_machine_upload_file(vm_uri, options)
validate_upload_file_options(options)
request(
diff --git a/lib/fog/fogdocker.rb b/lib/fog/fogdocker.rb
index 155d67e..842a8f6 100644
--- a/lib/fog/fogdocker.rb
+++ b/lib/fog/fogdocker.rb
@@ -1 +1 @@
-require 'fog/fogdocker/compute'
\ No newline at end of file
+require 'fog/fogdocker/compute'
diff --git a/lib/fog/fogdocker/compute.rb b/lib/fog/fogdocker/compute.rb
index 673811c..1c0cee4 100644
--- a/lib/fog/fogdocker/compute.rb
+++ b/lib/fog/fogdocker/compute.rb
@@ -3,7 +3,6 @@ require 'fog/fogdocker/core'
module Fog
module Compute
class Fogdocker < Fog::Service
-
requires :docker_url
recognizes :docker_username, :docker_password, :docker_email
@@ -33,7 +32,6 @@ module Fog
end
class Real
-
def initialize(options={})
require 'docker'
username = options[:docker_username]
@@ -47,13 +45,12 @@ module Fog
def downcase_hash_keys(hash, k = [])
return {k.join('_').gsub(/([a-z])([A-Z])/,'\1_\2').downcase => hash} unless hash.is_a?(Hash)
- hash.inject({}){ |h, v| h.merge! downcase_hash_keys(v[-1], k + [v[0]]) }
+ hash.reduce({}){ |h, v| h.merge! downcase_hash_keys(v[-1], k + [v[0]]) }
end
def camelize_hash_keys(hash)
Hash[ hash.map {|k, v| [k.to_s.split('_').map {|w| w.capitalize}.join, v] }]
end
-
end
end
end
diff --git a/lib/fog/fogdocker/core.rb b/lib/fog/fogdocker/core.rb
index 16e1364..2594306 100644
--- a/lib/fog/fogdocker/core.rb
+++ b/lib/fog/fogdocker/core.rb
@@ -2,7 +2,6 @@ require 'fog/core'
module Fog
module Fogdocker
-
extend Fog::Provider
module Errors
@@ -12,6 +11,5 @@ module Fog
end
service(:compute, 'Compute')
-
end
-end
\ No newline at end of file
+end
diff --git a/lib/fog/fogdocker/models/compute/image.rb b/lib/fog/fogdocker/models/compute/image.rb
index 6842e37..f25f66a 100644
--- a/lib/fog/fogdocker/models/compute/image.rb
+++ b/lib/fog/fogdocker/models/compute/image.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Fogdocker
-
class Image < Fog::Model
-
identity :id
attr_accessor :info
@@ -33,9 +31,7 @@ module Fog
def to_s
name
end
-
end
-
end
end
end
diff --git a/lib/fog/fogdocker/models/compute/images.rb b/lib/fog/fogdocker/models/compute/images.rb
index edaf4b0..2eff664 100644
--- a/lib/fog/fogdocker/models/compute/images.rb
+++ b/lib/fog/fogdocker/models/compute/images.rb
@@ -4,9 +4,7 @@ require 'fog/fogdocker/models/compute/image'
module Fog
module Compute
class Fogdocker
-
class Images < Fog::Collection
-
model Fog::Compute::Fogdocker::Image
def all(filters = {})
@@ -16,7 +14,6 @@ module Fog
def get(id)
new service.image_get(id)
end
-
end
end
end
diff --git a/lib/fog/fogdocker/models/compute/server.rb b/lib/fog/fogdocker/models/compute/server.rb
index d562bf2..6a5faf0 100644
--- a/lib/fog/fogdocker/models/compute/server.rb
+++ b/lib/fog/fogdocker/models/compute/server.rb
@@ -5,7 +5,6 @@ module Fog
class Fogdocker
# fog server is a docker container
class Server < Fog::Compute::Server
-
identity :id
attr_accessor :info
@@ -128,9 +127,7 @@ module Fog
def to_s
name
end
-
end
-
end
end
end
diff --git a/lib/fog/fogdocker/models/compute/servers.rb b/lib/fog/fogdocker/models/compute/servers.rb
index 990aa12..79612fa 100644
--- a/lib/fog/fogdocker/models/compute/servers.rb
+++ b/lib/fog/fogdocker/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/fogdocker/models/compute/server'
module Fog
module Compute
class Fogdocker
-
class Servers < Fog::Collection
-
model Fog::Compute::Fogdocker::Server
def all(filters = {})
@@ -21,7 +19,6 @@ module Fog
server = create(new_attributes)
server
end
-
end
end
end
diff --git a/lib/fog/fogdocker/requests/compute/api_version.rb b/lib/fog/fogdocker/requests/compute/api_version.rb
index d75f1f2..2054579 100644
--- a/lib/fog/fogdocker/requests/compute/api_version.rb
+++ b/lib/fog/fogdocker/requests/compute/api_version.rb
@@ -13,4 +13,4 @@ module Fog
end
end
end
-end
\ No newline at end of file
+end
diff --git a/lib/fog/fogdocker/requests/compute/container_action.rb b/lib/fog/fogdocker/requests/compute/container_action.rb
index a0c0637..c4d8c15 100644
--- a/lib/fog/fogdocker/requests/compute/container_action.rb
+++ b/lib/fog/fogdocker/requests/compute/container_action.rb
@@ -2,24 +2,20 @@ module Fog
module Compute
class Fogdocker
class Real
-
def container_action(options = {})
- raise ArgumentError, "instance id is a required parameter" unless options.has_key? :id
- raise ArgumentError, "action is a required parameter" unless options.has_key? :action
+ raise ArgumentError, "instance id is a required parameter" unless options.key? :id
+ raise ArgumentError, "action is a required parameter" unless options.key? :action
container = Docker::Container.get(options[:id])
downcase_hash_keys container.send(options[:action]).json
end
-
end
class Mock
-
def container_action(options = {})
- raise ArgumentError, "id is a required parameter" unless options.has_key? :id
- raise ArgumentError, "action is a required parameter" unless options.has_key? :action
+ raise ArgumentError, "id is a required parameter" unless options.key? :id
+ raise ArgumentError, "action is a required parameter" unless options.key? :action
{'id' => 'a6b02c7ca29a22619f7d0e59062323247739bc0cd375d619f305f0b519af4ef3','state_running' => false}
end
-
end
end
end
diff --git a/lib/fog/fogdocker/requests/compute/container_all.rb b/lib/fog/fogdocker/requests/compute/container_all.rb
index 4440d99..145cdef 100644
--- a/lib/fog/fogdocker/requests/compute/container_all.rb
+++ b/lib/fog/fogdocker/requests/compute/container_all.rb
@@ -13,7 +13,6 @@ module Fog
downcase_hash_keys(container.json)
end
end
-
end
class Mock
def container_all(filters = {})
diff --git a/lib/fog/fogdocker/requests/compute/container_commit.rb b/lib/fog/fogdocker/requests/compute/container_commit.rb
index 495a055..2d1b830 100644
--- a/lib/fog/fogdocker/requests/compute/container_commit.rb
+++ b/lib/fog/fogdocker/requests/compute/container_commit.rb
@@ -3,7 +3,7 @@ module Fog
class Fogdocker
class Real
def container_commit(options)
- raise ArgumentError, "instance id is a required parameter" unless options.has_key? :id
+ raise ArgumentError, "instance id is a required parameter" unless options.key? :id
container = Docker::Container.get(options[:id])
downcase_hash_keys container.commit(camelize_hash_keys(options)).json
end
@@ -16,7 +16,6 @@ module Fog
'created' => 1389877693,
'size' => 3265536}
end
-
end
end
end
diff --git a/lib/fog/fogdocker/requests/compute/container_create.rb b/lib/fog/fogdocker/requests/compute/container_create.rb
index c8a78f1..9b1d871 100644
--- a/lib/fog/fogdocker/requests/compute/container_create.rb
+++ b/lib/fog/fogdocker/requests/compute/container_create.rb
@@ -46,7 +46,6 @@ module Fog
'names' => ['/boring_engelbert']
}
end
-
end
end
end
diff --git a/lib/fog/fogdocker/requests/compute/container_delete.rb b/lib/fog/fogdocker/requests/compute/container_delete.rb
index 3dd859c..8526524 100644
--- a/lib/fog/fogdocker/requests/compute/container_delete.rb
+++ b/lib/fog/fogdocker/requests/compute/container_delete.rb
@@ -2,22 +2,19 @@ module Fog
module Compute
class Fogdocker
class Real
-
def container_delete(options = {})
- raise ArgumentError, "instance id is a required parameter" unless options.has_key? :id
+ raise ArgumentError, "instance id is a required parameter" unless options.key? :id
container = Docker::Container.get(options[:id])
container.delete()
true
end
-
end
class Mock
def container_delete(options = {})
- raise ArgumentError, "instance id is a required parameter" unless options.has_key? :id
+ raise ArgumentError, "instance id is a required parameter" unless options.key? :id
true
end
-
end
end
end
diff --git a/lib/fog/fogdocker/requests/compute/container_get.rb b/lib/fog/fogdocker/requests/compute/container_get.rb
index e5f25c0..5f1e9f0 100644
--- a/lib/fog/fogdocker/requests/compute/container_get.rb
+++ b/lib/fog/fogdocker/requests/compute/container_get.rb
@@ -5,7 +5,6 @@ module Fog
def container_get(id)
downcase_hash_keys Docker::Container.get(id).json
end
-
end
class Mock
def container_get(id)
diff --git a/lib/fog/fogdocker/requests/compute/image_create.rb b/lib/fog/fogdocker/requests/compute/image_create.rb
index 8c7a7a1..d2fd3fb 100644
--- a/lib/fog/fogdocker/requests/compute/image_create.rb
+++ b/lib/fog/fogdocker/requests/compute/image_create.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Fogdocker
-
class Real
def image_create(attrs)
downcase_hash_keys Docker::Image.create(attrs).json
@@ -12,7 +11,6 @@ module Fog
def image_create(attrs)
{'id'=>'a6b02c7ca29a22619f7d0e59062323247739bc0cd375d619f305f0b519af4ef2'}
end
-
end
end
end
diff --git a/lib/fog/fogdocker/requests/compute/image_delete.rb b/lib/fog/fogdocker/requests/compute/image_delete.rb
index 4f8f6c6..d5038f7 100644
--- a/lib/fog/fogdocker/requests/compute/image_delete.rb
+++ b/lib/fog/fogdocker/requests/compute/image_delete.rb
@@ -2,21 +2,18 @@ module Fog
module Compute
class Fogdocker
class Real
-
def image_delete(options = {})
- raise ArgumentError, "instance id is a required parameter" unless options.has_key? :id
+ raise ArgumentError, "instance id is a required parameter" unless options.key? :id
image = Docker::Image.get(options[:id])
image.remove()
end
-
end
class Mock
def image_delete(options = {})
- raise ArgumentError, "instance id is a required parameter" unless options.has_key? :id
+ raise ArgumentError, "instance id is a required parameter" unless options.key? :id
"[{'Deleted':'b15c1423ba157d0f7ac83cba178390c421bb8d536e7e7857580fc10f2d53e1b9'}]"
end
-
end
end
end
diff --git a/lib/fog/fogdocker/requests/compute/image_get.rb b/lib/fog/fogdocker/requests/compute/image_get.rb
index fde3fe8..a03626c 100644
--- a/lib/fog/fogdocker/requests/compute/image_get.rb
+++ b/lib/fog/fogdocker/requests/compute/image_get.rb
@@ -5,7 +5,6 @@ module Fog
def image_get(id)
downcase_hash_keys Docker::Image.get(id).json
end
-
end
class Mock
def image_get(id)
@@ -17,4 +16,4 @@ module Fog
end
end
end
-end
\ No newline at end of file
+end
diff --git a/lib/fog/glesys/compute.rb b/lib/fog/glesys/compute.rb
index 0b79973..e5cbba6 100644
--- a/lib/fog/glesys/compute.rb
+++ b/lib/fog/glesys/compute.rb
@@ -3,7 +3,6 @@ require 'fog/glesys/core'
module Fog
module Compute
class Glesys < Fog::Service
-
requires :glesys_username, :glesys_api_key
API_URL = "https://api.glesys.com"
@@ -40,9 +39,7 @@ module Fog
request :ip_add
request :ip_remove
-
class Mock
-
def initialize(options={})
@api_url = options[:glesys_api_url] || API_URL
@glesys_username = options[:glesys_username]
@@ -66,11 +63,9 @@ module Fog
def reset_data
self.class.reset
end
-
end
class Real
-
def initialize(options)
require 'base64'
@@ -83,7 +78,6 @@ module Fog
end
def request(method_name, options = {})
-
options.merge!( {:format => 'json'})
begin
@@ -126,11 +120,9 @@ module Fog
end
def urlencode(hash)
- hash.to_a.collect! { |k, v| "#{k}=#{v.to_s}" }.join("&")
+ hash.to_a.map! { |k, v| "#{k}=#{v.to_s}" }.join("&")
end
-
end
-
end
end
end
diff --git a/lib/fog/glesys/core.rb b/lib/fog/glesys/core.rb
index ec54dc0..7223d1e 100644
--- a/lib/fog/glesys/core.rb
+++ b/lib/fog/glesys/core.rb
@@ -3,10 +3,8 @@ require 'fog/json'
module Fog
module Glesys
-
extend Fog::Provider
service(:compute, 'Compute')
-
end
end
diff --git a/lib/fog/glesys/models/compute/ip.rb b/lib/fog/glesys/models/compute/ip.rb
index d3c9c0d..c3151b9 100644
--- a/lib/fog/glesys/models/compute/ip.rb
+++ b/lib/fog/glesys/models/compute/ip.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Glesys
-
class Ip < Fog::Model
-
extend Fog::Deprecation
identity :ip
@@ -69,7 +67,6 @@ module Fog
).body["response"]["details"]
merge_attributes data
end
-
end
end
end
diff --git a/lib/fog/glesys/models/compute/ips.rb b/lib/fog/glesys/models/compute/ips.rb
index c955dee..cca8e20 100644
--- a/lib/fog/glesys/models/compute/ips.rb
+++ b/lib/fog/glesys/models/compute/ips.rb
@@ -4,9 +4,7 @@ require 'fog/glesys/models/compute/ip'
module Fog
module Compute
class Glesys
-
class Ips < Fog::Collection
-
model Fog::Compute::Glesys::Ip
attribute :serverid
@@ -45,7 +43,7 @@ module Fog
options = default_options.merge!(options)
%w{platform datacenter version}.each do |attr|
- raise Fog::Errors::Error.new("You need to specify ':#{attr}'") if !options.has_key?(attr.to_sym)
+ raise Fog::Errors::Error.new("You need to specify ':#{attr}'") if !options.key?(attr.to_sym)
end
options[:ipversion] = options[:version]
@@ -55,7 +53,6 @@ module Fog
end
def take(ip, options = {})
-
default_options = {
:attach => false
}
@@ -83,7 +80,6 @@ module Fog
end
def attach(ip, server_id=nil)
-
if server_id.nil?
server_id = serverid
end
@@ -115,7 +111,6 @@ module Fog
def ip_from_object(ip)
ip.is_a?(Fog::Compute::Glesys::Ip) ? ip.ip : ip
end
-
end
end
end
diff --git a/lib/fog/glesys/models/compute/server.rb b/lib/fog/glesys/models/compute/server.rb
index 034ee2e..d70dae4 100644
--- a/lib/fog/glesys/models/compute/server.rb
+++ b/lib/fog/glesys/models/compute/server.rb
@@ -3,7 +3,6 @@ require 'fog/compute/models/server'
module Fog
module Compute
class Glesys
-
class Server < Fog::Compute::Server
extend Fog::Deprecation
@@ -15,6 +14,7 @@ module Fog
attribute :memorysize
attribute :disksize
attribute :transfer
+ attribute :bandwidth
attribute :uptime
attribute :templatename
attribute :managedhosting
@@ -66,6 +66,7 @@ module Fog
:cpucores => cpucores || "1",
:rootpassword => rootpassword,
:transfer => transfer || "500",
+ :bandwidth => bandwidth || "10",
}
# optional options when creating a server:
@@ -119,7 +120,6 @@ module Fog
end
def public_ip_address(options = {})
-
return nil if iplist.nil?
type = options[:type] || nil
@@ -136,7 +136,6 @@ module Fog
ips.first["ipaddress"]
end
end
-
end
end
end
diff --git a/lib/fog/glesys/models/compute/servers.rb b/lib/fog/glesys/models/compute/servers.rb
index ae959d1..186290f 100644
--- a/lib/fog/glesys/models/compute/servers.rb
+++ b/lib/fog/glesys/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/glesys/models/compute/server'
module Fog
module Compute
class Glesys
-
class Servers < Fog::Collection
-
model Fog::Compute::Glesys::Server
def all
@@ -38,9 +36,7 @@ module Fog
return nil
end
end
-
end
-
end
end
end
diff --git a/lib/fog/glesys/models/compute/templates.rb b/lib/fog/glesys/models/compute/templates.rb
index 322d2bd..8edd3e0 100644
--- a/lib/fog/glesys/models/compute/templates.rb
+++ b/lib/fog/glesys/models/compute/templates.rb
@@ -5,7 +5,6 @@ module Fog
module Compute
class Glesys
class Templates < Fog::Collection
-
model Fog::Compute::Glesys::Template
def all
@@ -31,9 +30,8 @@ module Fog
images = service.template_list.body['response']['templates']
images.select do |platform, images|
platforms.include?(platform.downcase.to_sym)
- end.collect{|platform, images| images}.flatten
+ end.map{|platform, images| images}.flatten
end
-
end
end
end
diff --git a/lib/fog/glesys/requests/compute/create.rb b/lib/fog/glesys/requests/compute/create.rb
index e972db2..48eb793 100644
--- a/lib/fog/glesys/requests/compute/create.rb
+++ b/lib/fog/glesys/requests/compute/create.rb
@@ -2,14 +2,10 @@ module Fog
module Compute
class Glesys
class Real
-
def create(options = {})
request('server/create/',options)
end
-
end
-
end
end
end
-
diff --git a/lib/fog/glesys/requests/compute/destroy.rb b/lib/fog/glesys/requests/compute/destroy.rb
index 97fdd50..5fab6a6 100644
--- a/lib/fog/glesys/requests/compute/destroy.rb
+++ b/lib/fog/glesys/requests/compute/destroy.rb
@@ -2,9 +2,7 @@ module Fog
module Compute
class Glesys
class Real
-
def destroy(options)
-
if options[:keepip].nil?
options[:keepip] = 0
end
@@ -12,7 +10,6 @@ module Fog
request("/server/destroy", options)
end
end
-
end
end
end
diff --git a/lib/fog/glesys/requests/compute/ip_add.rb b/lib/fog/glesys/requests/compute/ip_add.rb
index 157c667..96af864 100644
--- a/lib/fog/glesys/requests/compute/ip_add.rb
+++ b/lib/fog/glesys/requests/compute/ip_add.rb
@@ -2,13 +2,10 @@ module Fog
module Compute
class Glesys
class Real
-
def ip_add(params)
request("/ip/add", params)
end
end
-
end
end
end
-
diff --git a/lib/fog/glesys/requests/compute/ip_details.rb b/lib/fog/glesys/requests/compute/ip_details.rb
index 5877a7e..ca32a32 100644
--- a/lib/fog/glesys/requests/compute/ip_details.rb
+++ b/lib/fog/glesys/requests/compute/ip_details.rb
@@ -2,13 +2,10 @@ module Fog
module Compute
class Glesys
class Real
-
def ip_details(params)
request("/ip/details", params)
end
end
-
end
end
end
-
diff --git a/lib/fog/glesys/requests/compute/ip_list_free.rb b/lib/fog/glesys/requests/compute/ip_list_free.rb
index db8f94e..af4b165 100644
--- a/lib/fog/glesys/requests/compute/ip_list_free.rb
+++ b/lib/fog/glesys/requests/compute/ip_list_free.rb
@@ -2,13 +2,10 @@ module Fog
module Compute
class Glesys
class Real
-
def ip_list_free(options = {})
request("/ip/listfree", options)
end
end
-
end
end
end
-
diff --git a/lib/fog/glesys/requests/compute/ip_list_own.rb b/lib/fog/glesys/requests/compute/ip_list_own.rb
index 72f3e9b..41d2a3f 100644
--- a/lib/fog/glesys/requests/compute/ip_list_own.rb
+++ b/lib/fog/glesys/requests/compute/ip_list_own.rb
@@ -2,13 +2,10 @@ module Fog
module Compute
class Glesys
class Real
-
def ip_list_own(options = {})
request("/ip/listown", options)
end
end
-
end
end
end
-
diff --git a/lib/fog/glesys/requests/compute/ip_release.rb b/lib/fog/glesys/requests/compute/ip_release.rb
index 425800c..99c0770 100644
--- a/lib/fog/glesys/requests/compute/ip_release.rb
+++ b/lib/fog/glesys/requests/compute/ip_release.rb
@@ -2,13 +2,10 @@ module Fog
module Compute
class Glesys
class Real
-
def ip_release(params)
request("/ip/release", params)
end
end
-
end
end
end
-
diff --git a/lib/fog/glesys/requests/compute/ip_remove.rb b/lib/fog/glesys/requests/compute/ip_remove.rb
index d8a4bc4..25fd074 100644
--- a/lib/fog/glesys/requests/compute/ip_remove.rb
+++ b/lib/fog/glesys/requests/compute/ip_remove.rb
@@ -2,13 +2,10 @@ module Fog
module Compute
class Glesys
class Real
-
def ip_remove(params)
request("/ip/remove", params)
end
end
-
end
end
end
-
diff --git a/lib/fog/glesys/requests/compute/ip_take.rb b/lib/fog/glesys/requests/compute/ip_take.rb
index 5949f73..e23e1bf 100644
--- a/lib/fog/glesys/requests/compute/ip_take.rb
+++ b/lib/fog/glesys/requests/compute/ip_take.rb
@@ -2,13 +2,10 @@ module Fog
module Compute
class Glesys
class Real
-
def ip_take(params)
request("/ip/take", params)
end
end
-
end
end
end
-
diff --git a/lib/fog/glesys/requests/compute/list_servers.rb b/lib/fog/glesys/requests/compute/list_servers.rb
index d337384..d074387 100644
--- a/lib/fog/glesys/requests/compute/list_servers.rb
+++ b/lib/fog/glesys/requests/compute/list_servers.rb
@@ -2,9 +2,7 @@ module Fog
module Compute
class Glesys
class Real
-
def list_servers(serverid = nil, options = {})
-
unless serverid.nil?
options[:serverid] = serverid
end
@@ -12,8 +10,6 @@ module Fog
request("/server/list", options)
end
end
-
end
end
end
-
diff --git a/lib/fog/glesys/requests/compute/reboot.rb b/lib/fog/glesys/requests/compute/reboot.rb
index c3e3d69..4ec5c18 100644
--- a/lib/fog/glesys/requests/compute/reboot.rb
+++ b/lib/fog/glesys/requests/compute/reboot.rb
@@ -2,13 +2,10 @@ module Fog
module Compute
class Glesys
class Real
-
def reboot(param)
request("/server/reboot", param)
end
end
-
end
end
end
-
diff --git a/lib/fog/glesys/requests/compute/server_details.rb b/lib/fog/glesys/requests/compute/server_details.rb
index 6bd160a..636b6af 100644
--- a/lib/fog/glesys/requests/compute/server_details.rb
+++ b/lib/fog/glesys/requests/compute/server_details.rb
@@ -2,13 +2,10 @@ module Fog
module Compute
class Glesys
class Real
-
def server_details(serverid, options = {})
request("/server/details", { :serverid => serverid }.merge!(options) )
end
end
-
end
end
end
-
diff --git a/lib/fog/glesys/requests/compute/server_status.rb b/lib/fog/glesys/requests/compute/server_status.rb
index 87068d4..39f3dba 100644
--- a/lib/fog/glesys/requests/compute/server_status.rb
+++ b/lib/fog/glesys/requests/compute/server_status.rb
@@ -2,13 +2,10 @@ module Fog
module Compute
class Glesys
class Real
-
def server_status(serverid)
request("/server/status", { :serverid => serverid } )
end
end
-
end
end
end
-
diff --git a/lib/fog/glesys/requests/compute/start.rb b/lib/fog/glesys/requests/compute/start.rb
index c670bf5..803b9c1 100644
--- a/lib/fog/glesys/requests/compute/start.rb
+++ b/lib/fog/glesys/requests/compute/start.rb
@@ -2,13 +2,10 @@ module Fog
module Compute
class Glesys
class Real
-
def start(param)
request("/server/start", param)
end
end
-
end
end
end
-
diff --git a/lib/fog/glesys/requests/compute/stop.rb b/lib/fog/glesys/requests/compute/stop.rb
index 16311e4..e901b1c 100644
--- a/lib/fog/glesys/requests/compute/stop.rb
+++ b/lib/fog/glesys/requests/compute/stop.rb
@@ -2,13 +2,10 @@ module Fog
module Compute
class Glesys
class Real
-
def stop(param)
request("/server/stop", param)
end
end
-
end
end
end
-
diff --git a/lib/fog/glesys/requests/compute/template_list.rb b/lib/fog/glesys/requests/compute/template_list.rb
index 369d3ee..c6c194d 100644
--- a/lib/fog/glesys/requests/compute/template_list.rb
+++ b/lib/fog/glesys/requests/compute/template_list.rb
@@ -2,13 +2,10 @@ module Fog
module Compute
class Glesys
class Real
-
def template_list
request("/server/templates")
end
end
-
end
end
end
-
diff --git a/lib/fog/go_grid/compute.rb b/lib/fog/go_grid/compute.rb
index 01fbbbe..596ddea 100644
--- a/lib/fog/go_grid/compute.rb
+++ b/lib/fog/go_grid/compute.rb
@@ -3,7 +3,6 @@ require 'fog/go_grid/core'
module Fog
module Compute
class GoGrid < Fog::Service
-
requires :go_grid_api_key, :go_grid_shared_secret
recognizes :host, :path, :port, :scheme, :persistent
@@ -30,7 +29,6 @@ module Fog
request :support_password_list
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {}
@@ -53,11 +51,9 @@ module Fog
def reset_data
self.class.data.delete(@go_grid_api_key)
end
-
end
class Real
-
def initialize(options={})
require 'digest/md5'
@go_grid_api_key = options[:go_grid_api_key]
@@ -108,7 +104,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/go_grid/core.rb b/lib/fog/go_grid/core.rb
index 6cf895d..6ab064e 100644
--- a/lib/fog/go_grid/core.rb
+++ b/lib/fog/go_grid/core.rb
@@ -3,10 +3,8 @@ require 'fog/json'
module Fog
module GoGrid
-
extend Fog::Provider
service(:compute, 'Compute')
-
end
end
diff --git a/lib/fog/go_grid/models/compute/image.rb b/lib/fog/go_grid/models/compute/image.rb
index 8943002..dbcbcb2 100644
--- a/lib/fog/go_grid/models/compute/image.rb
+++ b/lib/fog/go_grid/models/compute/image.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class GoGrid
-
class Image < Fog::Model
-
identity :id
attribute :name
@@ -26,7 +24,6 @@ module Fog
attribute :object_type, :aliases => 'object'
attribute :owner
-
def server=(new_server)
requires :id
@@ -52,9 +49,7 @@ module Fog
merge_attributes(data.body['image'])
true
end
-
end
-
end
end
end
diff --git a/lib/fog/go_grid/models/compute/images.rb b/lib/fog/go_grid/models/compute/images.rb
index 3661917..16a6a55 100644
--- a/lib/fog/go_grid/models/compute/images.rb
+++ b/lib/fog/go_grid/models/compute/images.rb
@@ -4,9 +4,7 @@ require 'fog/go_grid/models/compute/image'
module Fog
module Compute
class GoGrid
-
class Images < Fog::Collection
-
model Fog::Compute::GoGrid::Image
attribute :server
@@ -25,9 +23,7 @@ module Fog
rescue Fog::Compute::GoGrid::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/go_grid/models/compute/password.rb b/lib/fog/go_grid/models/compute/password.rb
index 4de125c..d1990a5 100644
--- a/lib/fog/go_grid/models/compute/password.rb
+++ b/lib/fog/go_grid/models/compute/password.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class GoGrid
-
class Password < Fog::Model
-
identity :id
attribute :server_id
@@ -41,10 +39,7 @@ module Fog
merge_attributes(data.body)
true
end
-
end
-
end
-
end
end
diff --git a/lib/fog/go_grid/models/compute/passwords.rb b/lib/fog/go_grid/models/compute/passwords.rb
index 9c58d79..33f6762 100644
--- a/lib/fog/go_grid/models/compute/passwords.rb
+++ b/lib/fog/go_grid/models/compute/passwords.rb
@@ -4,9 +4,7 @@ require 'fog/go_grid/models/compute/password'
module Fog
module Compute
class GoGrid
-
class Passwords < Fog::Collection
-
model Fog::Compute::GoGrid::Password
def all
@@ -28,9 +26,7 @@ module Fog
rescue Fog::Compute::GoGrid::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/go_grid/models/compute/server.rb b/lib/fog/go_grid/models/compute/server.rb
index c08ad36..3a9ab9e 100644
--- a/lib/fog/go_grid/models/compute/server.rb
+++ b/lib/fog/go_grid/models/compute/server.rb
@@ -3,7 +3,6 @@ require 'fog/compute/models/server'
module Fog
module Compute
class GoGrid
-
class BlockInstantiationError < StandardError; end
class Server < Fog::Compute::Server
@@ -89,10 +88,7 @@ module Fog
def adminPass=(new_admin_pass)
@password = new_admin_pass
end
-
end
-
end
-
end
end
diff --git a/lib/fog/go_grid/models/compute/servers.rb b/lib/fog/go_grid/models/compute/servers.rb
index 11230e5..2adf379 100644
--- a/lib/fog/go_grid/models/compute/servers.rb
+++ b/lib/fog/go_grid/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/go_grid/models/compute/server'
module Fog
module Compute
class GoGrid
-
class Servers < Fog::Collection
-
model Fog::Compute::GoGrid::Server
def all
@@ -28,9 +26,7 @@ module Fog
rescue Fog::Compute::GoGrid::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/go_grid/requests/compute/common_lookup_list.rb b/lib/fog/go_grid/requests/compute/common_lookup_list.rb
index 3a43696..88e342b 100644
--- a/lib/fog/go_grid/requests/compute/common_lookup_list.rb
+++ b/lib/fog/go_grid/requests/compute/common_lookup_list.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class GoGrid
class Real
-
# List options and lookups
#
# ==== Parameters
@@ -21,7 +20,6 @@ module Fog
:query => {'lookup' => lookup}.merge!(options)
)
end
-
end
end
end
diff --git a/lib/fog/go_grid/requests/compute/grid_image_get.rb b/lib/fog/go_grid/requests/compute/grid_image_get.rb
index a932c6b..018041f 100644
--- a/lib/fog/go_grid/requests/compute/grid_image_get.rb
+++ b/lib/fog/go_grid/requests/compute/grid_image_get.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class GoGrid
class Real
-
# List images
#
# ==== Parameters
@@ -21,11 +20,9 @@ module Fog
:query => options
)
end
-
end
class Mock
-
def grid_image_get(options={})
#response = Excon::Response.new
@@ -34,7 +31,6 @@ module Fog
# case image['state']
# when 'Available'
end
-
end
end
end
diff --git a/lib/fog/go_grid/requests/compute/grid_image_list.rb b/lib/fog/go_grid/requests/compute/grid_image_list.rb
index f32e28e..0de0173 100644
--- a/lib/fog/go_grid/requests/compute/grid_image_list.rb
+++ b/lib/fog/go_grid/requests/compute/grid_image_list.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class GoGrid
class Real
-
# List images
#
# ==== Parameters
@@ -24,11 +23,9 @@ module Fog
:query => options
)
end
-
end
class Mock
-
def grid_image_list(options={})
#response = Excon::Response.new
@@ -37,7 +34,6 @@ module Fog
# case image['state']
# when 'Available'
end
-
end
end
end
diff --git a/lib/fog/go_grid/requests/compute/grid_ip_list.rb b/lib/fog/go_grid/requests/compute/grid_ip_list.rb
index ec09589..8ab6eea 100644
--- a/lib/fog/go_grid/requests/compute/grid_ip_list.rb
+++ b/lib/fog/go_grid/requests/compute/grid_ip_list.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class GoGrid
class Real
-
# List ips
#
# ==== Parameters
@@ -23,7 +22,6 @@ module Fog
:query => options
)
end
-
end
end
end
diff --git a/lib/fog/go_grid/requests/compute/grid_loadbalancer_list.rb b/lib/fog/go_grid/requests/compute/grid_loadbalancer_list.rb
index ded413e..f1a4176 100644
--- a/lib/fog/go_grid/requests/compute/grid_loadbalancer_list.rb
+++ b/lib/fog/go_grid/requests/compute/grid_loadbalancer_list.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class GoGrid
class Real
-
# List load balancers
#
# ==== Parameters
@@ -21,7 +20,6 @@ module Fog
:query => options
)
end
-
end
end
end
diff --git a/lib/fog/go_grid/requests/compute/grid_server_add.rb b/lib/fog/go_grid/requests/compute/grid_server_add.rb
index 379110b..ce7b552 100644
--- a/lib/fog/go_grid/requests/compute/grid_server_add.rb
+++ b/lib/fog/go_grid/requests/compute/grid_server_add.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class GoGrid
class Real
-
# Create a new server
#
# ==== Parameters
@@ -29,7 +28,6 @@ module Fog
}.merge!(options)
)
end
-
end
end
end
diff --git a/lib/fog/go_grid/requests/compute/grid_server_delete.rb b/lib/fog/go_grid/requests/compute/grid_server_delete.rb
index 23ec34f..360abff 100644
--- a/lib/fog/go_grid/requests/compute/grid_server_delete.rb
+++ b/lib/fog/go_grid/requests/compute/grid_server_delete.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class GoGrid
class Real
-
# Delete a server
#
# ==== Parameters
@@ -18,7 +17,6 @@ module Fog
:query => {'server' => server}
)
end
-
end
end
end
diff --git a/lib/fog/go_grid/requests/compute/grid_server_get.rb b/lib/fog/go_grid/requests/compute/grid_server_get.rb
index 0b4c735..2c1be23 100644
--- a/lib/fog/go_grid/requests/compute/grid_server_get.rb
+++ b/lib/fog/go_grid/requests/compute/grid_server_get.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class GoGrid
class Real
-
# Get one or more servers by name
#
# ==== Parameters
@@ -18,7 +17,6 @@ module Fog
:query => {'server' => [*servers]}
)
end
-
end
end
end
diff --git a/lib/fog/go_grid/requests/compute/grid_server_list.rb b/lib/fog/go_grid/requests/compute/grid_server_list.rb
index 1d2cff6..b2b33fa 100644
--- a/lib/fog/go_grid/requests/compute/grid_server_list.rb
+++ b/lib/fog/go_grid/requests/compute/grid_server_list.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class GoGrid
class Real
-
# List servers
#
# ==== Parameters
@@ -23,7 +22,6 @@ module Fog
:query => options
)
end
-
end
end
end
diff --git a/lib/fog/go_grid/requests/compute/grid_server_power.rb b/lib/fog/go_grid/requests/compute/grid_server_power.rb
index 1823beb..3184dba 100644
--- a/lib/fog/go_grid/requests/compute/grid_server_power.rb
+++ b/lib/fog/go_grid/requests/compute/grid_server_power.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class GoGrid
class Real
-
# Start, Stop or Restart a server
#
# ==== Parameters
@@ -19,7 +18,6 @@ module Fog
:query => {'server' => server, 'power' => power}
)
end
-
end
end
end
diff --git a/lib/fog/go_grid/requests/compute/support_password_get.rb b/lib/fog/go_grid/requests/compute/support_password_get.rb
index be6a692..d3acad6 100644
--- a/lib/fog/go_grid/requests/compute/support_password_get.rb
+++ b/lib/fog/go_grid/requests/compute/support_password_get.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class GoGrid
class Real
-
# Get one or more passwords by id
#
# ==== Parameters
@@ -21,7 +20,6 @@ module Fog
}.merge!(options)
)
end
-
end
end
end
diff --git a/lib/fog/go_grid/requests/compute/support_password_list.rb b/lib/fog/go_grid/requests/compute/support_password_list.rb
index 6248ac6..0789c30 100644
--- a/lib/fog/go_grid/requests/compute/support_password_list.rb
+++ b/lib/fog/go_grid/requests/compute/support_password_list.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class GoGrid
class Real
-
# List passwords
#
# ==== Parameters
@@ -23,7 +22,6 @@ module Fog
:query => options
)
end
-
end
end
end
diff --git a/lib/fog/google.rb b/lib/fog/google.rb
index 1001ade..cd7e8a5 100644
--- a/lib/fog/google.rb
+++ b/lib/fog/google.rb
@@ -1,2 +1,5 @@
require 'fog/google/compute'
+require 'fog/google/dns'
+require 'fog/google/monitoring'
require 'fog/google/storage'
+require 'fog/google/sql'
diff --git a/lib/fog/google/compute.rb b/lib/fog/google/compute.rb
index 7c916a6..624bf61 100644
--- a/lib/fog/google/compute.rb
+++ b/lib/fog/google/compute.rb
@@ -3,15 +3,26 @@ require 'fog/google/core'
module Fog
module Compute
class Google < Fog::Service
-
requires :google_project
- recognizes :app_name, :app_version, :google_client_email, :google_key_location, :google_client
+ recognizes :app_name, :app_version, :google_client_email, :google_key_location, :google_key_string, :google_client
+
+ GOOGLE_COMPUTE_API_VERSION = 'v1'
+ GOOGLE_COMPUTE_BASE_URL = 'https://www.googleapis.com/compute/'
+ GOOGLE_COMPUTE_API_SCOPE_URLS = %w(https://www.googleapis.com/auth/compute
+ https://www.googleapis.com/auth/devstorage.read_write
+ https://www.googleapis.com/auth/ndev.cloudman
+ https://www.googleapis.com/auth/cloud-platform)
+ GOOGLE_COMPUTE_DEFAULT_NETWORK = 'default'
request_path 'fog/google/requests/compute'
request :list_servers
+ request :list_aggregated_servers
request :list_addresses
request :list_aggregated_addresses
request :list_disks
+ request :list_aggregated_disks
+ request :list_disk_types
+ request :list_aggregated_disk_types
request :list_firewalls
request :list_images
request :list_machine_types
@@ -27,10 +38,20 @@ module Fog
request :list_target_pools
request :list_forwarding_rules
request :list_routes
+ request :list_backend_services
+ request :list_global_forwarding_rules
+ request :list_url_maps
+ request :list_target_http_proxies
+ request :list_zone_views
+ request :list_region_views
+ request :list_region_view_resources
+ request :list_zone_view_resources
+ request :list_target_instances
request :get_server
request :get_address
request :get_disk
+ request :get_disk_type
request :get_firewall
request :get_image
request :get_machine_type
@@ -47,6 +68,14 @@ module Fog
request :get_forwarding_rule
request :get_project
request :get_route
+ request :get_backend_service
+ request :get_backend_service_health
+ request :get_url_map
+ request :get_global_forwarding_rule
+ request :get_target_http_proxy
+ request :get_zone_view
+ request :get_region_view
+ request :get_target_instance
request :delete_address
request :delete_disk
@@ -62,6 +91,13 @@ module Fog
request :delete_target_pool
request :delete_forwarding_rule
request :delete_route
+ request :delete_backend_service
+ request :delete_url_map
+ request :delete_target_http_proxy
+ request :delete_global_forwarding_rule
+ request :delete_zone_view
+ request :delete_region_view
+ request :delete_target_instance
request :insert_address
request :insert_disk
@@ -74,18 +110,43 @@ module Fog
request :insert_target_pool
request :insert_forwarding_rule
request :insert_route
+ request :insert_backend_service
+ request :insert_url_map
+ request :insert_target_http_proxy
+ request :insert_global_forwarding_rule
+ request :insert_zone_view
+ request :insert_region_view
+ request :insert_target_instance
request :set_metadata
request :set_tags
request :set_forwarding_rule_target
+ request :set_global_forwarding_rule_target
+ request :set_target_http_proxy_url_map
request :add_target_pool_instances
request :add_target_pool_health_checks
+ request :add_backend_service_backends
+ request :add_url_map_host_rules
+ request :add_url_map_path_matchers
+ request :add_zone_view_resources
+ request :add_region_view_resources
request :remove_target_pool_instances
request :remove_target_pool_health_checks
request :set_common_instance_metadata
+ request :attach_disk
+ request :detach_disk
+ request :get_server_serial_port_output
+ request :reset_server
+ request :set_server_disk_auto_delete
+ request :set_server_scheduling
+ request :add_server_access_config
+ request :delete_server_access_config
+ request :update_url_map
+ request :validate_url_map
+
model_path 'fog/google/models/compute'
model :server
collection :servers
@@ -99,6 +160,9 @@ module Fog
model :disk
collection :disks
+ model :disk_type
+ collection :disk_types
+
model :address
collection :addresses
@@ -135,129 +199,34 @@ module Fog
model :route
collection :routes
- module Shared
- attr_reader :project, :api_version
+ model :backend_service
+ collection :backend_services
- def shared_initialize(options = {})
- @project = options[:google_project]
- @api_version = 'v1'
- base_url = 'https://www.googleapis.com/compute/'
- @api_url = base_url + api_version + '/projects/'
- @default_network = 'default'
- end
+ model :target_http_proxy
+ collection :target_http_proxies
- def build_excon_response(body, status=200)
- response = Excon::Response.new
- response.body = body
- if response.body and response.body["error"]
- response.status = response.body["error"]["code"]
- if response.body["error"]["errors"]
- msg = response.body["error"]["errors"].map{|error| error["message"]}.join(", ")
- else
- msg = "Error [#{response.body["error"]["code"]}]: #{response.body["error"]["message"] || "GCE didn't return an error message"}"
- end
- case response.status
- when 404
- raise Fog::Errors::NotFound.new(msg)
- else
- raise Fog::Errors::Error.new(msg)
- end
- else
- response.status = status
- end
- response
- end
+ model :url_map
+ collection :url_maps
- def backoff_if_unfound(&block)
- retries_remaining = 10
- sleep_time = 0.1
- begin
- result = block.call
- rescue Exception => msg
- if msg.to_s.include? 'was not found' and retries_remaining > 0
- retries_remaining -= 1
- sleep sleep_time
- sleep_time *= 1.6
- retry
- else
- raise msg
- end
- end
- result
- end
- end
+ model :global_forwarding_rule
+ collection :global_forwarding_rules
- class Mock
- include Collections
- include Shared
+ model :resource_view
+ collection :resource_views
- def initialize(options={})
- shared_initialize(options)
- end
+ model :target_instance
+ collection :target_instances
+
+ class Mock
+ include Fog::Google::Shared
- def build_response(params={})
- body = params[:body] || {}
- build_excon_response(body)
+ def initialize(options)
+ shared_initialize(options[:google_project], GOOGLE_COMPUTE_API_VERSION, GOOGLE_COMPUTE_BASE_URL)
end
def self.data(api_version)
@data ||= Hash.new do |hash, key|
case key
- when 'google'
- hash[key] = {
- :images => {
- "centos-6-2-v20120621" => {
- "kind" => "compute#image",
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/google/global/images/centos-6-2-v20120621",
- "id" => "12920641029336858796",
- "creationTimestamp" => "2012-06-21T22:59:56.392-07:00",
- "name" => "centos-6-2-v20120621",
- "description" => "CentOS 6.2; Created Thu, 21 Jun 2012 14:22:21 +0000",
- "sourceType" => "RAW",
- "rawDisk" => {
- "containerType" => "TAR",
- "source" => ""
- },
- "deprecated" => {
- "state" => "DELETED",
- "replacement" => "https://www.googleapis.com/compute/#{api_version}/projects/google/global/images/centos-6-v20130104"
- },
- "status" => "READY"
- },
- "centos-6-v20120912" => {
- "kind" => "compute#image",
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/google/global/images/centos-6-v20120912",
- "id" => "12994279803511049620",
- "creationTimestamp" => "2012-09-18T08:52:47.584-07:00",
- "name" => "centos-6-v20120912",
- "description" => "CentOS 6; Created Wed, 12 Sep 2012 00:00:00 +0000",
- "sourceType" => "RAW",
- "rawDisk" => {
- "containerType" => "TAR",
- "source" => ""
- },
- "deprecated" => {
- "state" => "DEPRECATED",
- "replacement" => "https://www.googleapis.com/compute/#{api_version}/projects/google/global/images/centos-6-v20130104"
- },
- "status" => "READY"
- },
- "centos-6-v20121106" => {
- "kind" => "compute#image",
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/google/global/images/centos-6-v20121106",
- "id" => "13037720516378381209",
- "creationTimestamp" => "2012-11-09T11:40:41.079-08:00",
- "name" => "centos-6-v20121106",
- "description" => "SCSI-enabled CentOS 6; Created Tue, 06 Nov 2012 00:00:00 +0000",
- "sourceType" => "RAW",
- "rawDisk" => {
- "containerType" => "TAR",
- "source" => ""
- },
- "status" => "READY"
- }
- }
- }
when 'debian-cloud'
hash[key] = {
:images => {
@@ -341,6 +310,117 @@ module Fog
}
else
hash[key] = {
+ :target_http_proxies => {
+ "test-target-http-proxy" => {
+ "kind" => "compute#targetHttpProxy",
+ "id" => "1361932147851415729",
+ "creationTimestamp" => '2014-08-23T10:06:13.951-07:00',
+ "name" => "test-target-http-proxy",
+ "description" => '',
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/targetHttpProxies/test-target-http-proxy",
+ "urlMap" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/urlMaps/test-url-map"
+ }
+ },
+ :url_maps => {
+ "test-url-map" => {
+ "kind" => "compute#urlMap",
+ "id" => "1361932147851415729",
+ "creationTimestamp" => '2014-08-23T10:06:13.951-07:00',
+ "name" => 'test-url-map',
+ "description" => '',
+ "hostRules" => [],
+ "pathMatchers" => [],
+ "tests" => [],
+ "defaultService" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/backendServices/fog-backend-service-test",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/urlMaps/test-url-map"
+ }
+ },
+ :target_pools => {
+ "test-target-pool" => {
+ 'kind' => "compute#targetPool",
+ "id" => "1361932147851415729",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/us-central1/targetPools/test-target-pool",
+ "creationTimestamp" => '2014-08-23T10:06:13.951-07:00',
+ 'name' => "test-target-pool",
+ "region" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/us-central1",
+ "healthChecks" => ["https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/httpHealthChecks/test-check"],
+ "instances" => ["https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/us-central1-a/instances/test-instance"],
+ }
+ },
+
+ :http_health_checks => {
+ "test-http-health-check" => {
+ "checkIntervalSec" => 5,
+ "creationTimestamp" => '2014-08-23T10:06:13.951-07:00',
+ "healthyThreshold" => 2,
+ "id" => "1361932147851415729",
+ "kind" => "compute#httphealthCheck",
+ "name" => "test-http-health-check",
+ "port" => 80,
+ "requestPath" => '/',
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/httpHealthChecks/test-http-health-check",
+ "timeoutSec" => 5,
+ "unhealthyThreshold" => 2
+ }
+ },
+ :global_forwarding_rules => {
+ "test-global-forwarding-rule" => {
+ "kind" => "compute#forwardingRule",
+ "id" => "1361932147851415729",
+ "creationTimestamp" => '2014-08-23T10:06:13.951-07:00',
+ "name" => 'test-global-forwarding-rule',
+ "IPAddress" => '107.178.255.155',
+ "IPProtocol" => 'TCP',
+ "portRange" => '80-80',
+ "target" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/targetHttpProxies/proxy",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/forwardngRules/test-global-forwarding-rule"
+ }
+ },
+ :forwarding_rules => {
+ "test-forwarding-rule" => {
+ "kind" => "compute#forwardingRule",
+ "id" => "1361932147851415729",
+ "creationTimestamp" => '2014-08-23T10:06:13.951-07:00',
+ "name" => 'test-forwarding-rule',
+ "IPAddress" => '107.178.255.155',
+ "IPProtocol" => 'TCP',
+ "portRange" => '80-80',
+ "target" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/us-central1/targetPools/target_pool",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/us-central1/forwardngRules/test-forwarding-rule",
+ "region" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/us-central1"
+ }
+ },
+ :target_instances => {
+ "test-target-instance" => {
+ "kind" => "compute#targetInstance",
+ "name" => "test-target-instance",
+ "natPolicy" => "NO_NAT",
+ "zone" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/us-central1-a",
+ "instance" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/us-central1-a/instances/test-instance",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/us-central1-a/targetInstances/test-target-instance",
+ "id" => "1361932147851415729",
+ "creationTimestamp" => '2014-08-23T10:06:13.951-07:00',
+
+ }
+ },
+ :backend_services =>{
+ "test-backend-service" => {
+ "kind" => "compute#backend_service",
+ "id" => "1361932147851415729",
+ "creationTimestamp" => '2014-08-23T10:06:13.951-07:00',
+ "name" => "test-backend-service",
+ "description" => '',
+ "backends" => [
+ {
+ "description" => '',
+ "group" => "https://www.googleapis.com/resourceviews/v1beta1/projects#{@project}/zones/us-central1-a/zoneViews/name",
+ "balancingMode" => "RATE",
+ "capacityScaler" => 1.1,
+ "maxRate" => 0.5,
+ }],
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/backendServices/test-backend-service"
+ }
+ },
:servers => {
"fog-1" => {
"kind" => "compute#instance",
@@ -478,6 +558,71 @@ module Fog
"region" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/regions/us-central2"
}
},
+ :regions => {
+ "us-central1" => {
+ "creationTimestamp" => '2014-01-21T10:30:54.895-08:00',
+ "description" => 'us-central1',
+ "id" => '18201118976141502843',
+ "kind" => "compute#region",
+ "name" =>"us-central1",
+ "quotas" => [
+ {"metric" =>"CPUS", "limit" => 1050.0, "usage" => 28.0},
+ {"metric" =>"DISKS_TOTAL_GB", "limit" => 10000.0, "usage" => 292.0},
+ {"metric" =>"STATIC_ADDRESSES", "limit" => 10.0, "usage" => 0.0},
+ {"metric" =>"IN_USE_ADDRESSES", "limit" => 1050.0, "usage" => 30.0},
+ {"metric" =>"SSD_TOTAL_GB", "limit" => 1024.0, "usage" => 0.0}
+ ],
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/regions/us-central1",
+ "status" => "UP",
+ "zones" => [
+ "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/us-central1-a",
+ "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/us-central1-b",
+ "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/us-central1-f",
+ ]
+ },
+ "europe-west1" => {
+ "creationTimestamp" => '2014-01-21T10:30:54.891-08:00',
+ "description" => 'europe-west1',
+ "id" => '18201118976141502843',
+ "kind" => "compute#region",
+ "name" =>"europe-west1",
+ "quotas" => [
+ {"metric" =>"CPUS", "limit" => 24.0, "usage" => 0.0},
+ {"metric" =>"DISKS_TOTAL_GB", "limit" => 2048.0, "usage" => 0.0},
+ {"metric" =>"STATIC_ADDRESSES", "limit" => 7.0, "usage" => 0.0},
+ {"metric" =>"IN_USE_ADDRESSES", "limit" => 23.0, "usage" => 0.0},
+ {"metric" =>"SSD_TOTAL_GB", "limit" => 1024.0, "usage" => 0.0}
+ ],
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/regions/erope-west1",
+ "status" => "UP",
+ "zones" => [
+ "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/europe-west1-a",
+ "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/europe-west1-b",
+ ]
+ },
+ "asia-east1" => {
+ "creationTimestamp" => '2014-01-21T10:30:54.895-08:00',
+ "description" => 'asia-east1',
+ "id" => '18201118976141502843',
+ "kind" => "compute#region",
+ "name" =>"asia-east1",
+ "quotas" => [
+ {"metric" =>"CPUS", "limit" => 1050.0, "usage" => 28.0},
+ {"metric" =>"DISKS_TOTAL_GB", "limit" => 10000.0, "usage" => 292.0},
+ {"metric" =>"STATIC_ADDRESSES", "limit" => 10.0, "usage" => 0.0},
+ {"metric" =>"IN_USE_ADDRESSES", "limit" => 1050.0, "usage" => 30.0},
+ {"metric" =>"SSD_TOTAL_GB", "limit" => 1024.0, "usage" => 0.0}
+ ],
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/regions/asia-east1",
+ "status" => "UP",
+ "zones" => [
+ "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/asia-east1-a",
+ "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/asia-east1-b",
+ "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/asia-east1-c",
+ ]
+ }
+ },
+
:machine_types => Hash.new do |machine_types_hash, zone|
machine_types_hash[zone] = {
"f1-micro" => {
@@ -861,7 +1006,8 @@ module Fog
"sizeGb" => "10",
"selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/us-central1-a/disks/fog-1",
"sourceImage" => "https://www.googleapis.com/compute/#{api_version}/projects/debian-cloud/global/images/debian-7-wheezy-v20131120",
- "sourceImageId" => "17312518942796567788"
+ "sourceImageId" => "17312518942796567788",
+ "type" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/us-central1-a/diskTypes/pd-standard",
},
"fog-2" => {
"kind" => "compute#disk",
@@ -871,7 +1017,8 @@ module Fog
"status" => "READY",
"name" => "fog-2",
"sizeGb" => "10",
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/us-central1-a/disks/fog-1"
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/us-central1-a/disks/fog-1",
+ "type" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/us-central1-a/diskTypes/pd-ssd",
}
},
:operations => {}
@@ -899,118 +1046,22 @@ module Fog
end
class Real
- include Collections
- include Shared
+ include Fog::Google::Shared
attr_accessor :client
- attr_reader :compute, :api_url
+ attr_reader :compute
def initialize(options)
+ shared_initialize(options[:google_project], GOOGLE_COMPUTE_API_VERSION, GOOGLE_COMPUTE_BASE_URL)
+ options.merge!(:google_api_scope_url => GOOGLE_COMPUTE_API_SCOPE_URLS.join(' '))
- # NOTE: loaded here to avoid requiring this as a core Fog dependency
- begin
- require 'google/api_client'
- rescue LoadError => error
- Fog::Logger.warning("Please install the google-api-client gem before using this provider.")
- raise error
- end
- shared_initialize(options)
-
- if !options[:google_client].nil?
- @client = options[:google_client]
- end
-
- if @client.nil?
- if !options[:google_client_email].nil? and !options[:google_key_location].nil?
- @client = self.new_pk12_google_client(
- options[:google_client_email],
- File.expand_path(options[:google_key_location]),
- options[:app_name],
- options[:app_verion])
- else
- Fog::Logger.debug("Fog::Compute::Google.client has not been initialized nor are the :google_client_email and :google_key_location options set, so we can not create one for you.")
- raise ArgumentError.new("No Google API Client has been initialized.")
- end
- end
-
- # We want to always mention we're using Fog.
- if @client.user_agent.nil? or @client.user_agent.empty?
- @client.user_agent = ""
- elsif !@client.user_agent.include? "fog"
- @client.user_agent += "fog/#{Fog::VERSION}"
- end
-
+ @client = initialize_google_client(options)
@compute = @client.discovered_api('compute', api_version)
- end
-
- # Public: Create a Google::APIClient with a pkcs12 key and a user email.
- #
- # google_client_email - an @developer.gserviceaccount.com email address to use.
- # google_key_location - an absolute location to a pkcs12 key file.
- # app_name - an optional string to set as the app name in the user agent.
- # app_version - an optional string to set as the app version in the user agent.
- #
- # Returns a new Google::APIClient
- def new_pk12_google_client(google_client_email, google_key_location, app_name=nil, app_version=nil)
- # The devstorage scope is needed to be able to insert images
- # devstorage.read_only scope is not sufficient like you'd hope
- api_scope_url = 'https://www.googleapis.com/auth/compute https://www.googleapis.com/auth/devstorage.read_write'
-
- user_agent = ""
- if app_name
- user_agent = "#{app_name}/#{app_version || '0.0.0'} "
- end
- user_agent += "fog/#{Fog::VERSION}"
-
- api_client_options = {
- # https://github.com/google/google-api-ruby-client/blob/master/lib/google/api_client.rb#L98
- :application_name => "suppress warning",
- # https://github.com/google/google-api-ruby-client/blob/master/lib/google/api_client.rb#L100
- :user_agent => user_agent
- }
- local_client = ::Google::APIClient.new(api_client_options)
-
- key = ::Google::APIClient::KeyUtils.load_from_pkcs12(google_key_location, 'notasecret')
-
- local_client.authorization = Signet::OAuth2::Client.new({
- :audience => 'https://accounts.google.com/o/oauth2/token',
- :auth_provider_x509_cert_url => "https://www.googleapis.com/oauth2/v1/certs",
- :client_x509_cert_url => "https://www.googleapis.com/robot/v1/metadata/x509/#{google_client_email}",
- :issuer => google_client_email,
- :scope => api_scope_url,
- :signing_key => key,
- :token_credential_uri => 'https://accounts.google.com/o/oauth2/token',
- })
-
- local_client.authorization.fetch_access_token!
-
- return local_client
- end
-
- def build_result(api_method, parameters, body_object=nil)
- if body_object
- result = @client.execute(
- :api_method => api_method,
- :parameters => parameters,
- :body_object => body_object
- )
- else
- result = @client.execute(
- :api_method => api_method,
- :parameters => parameters
- )
- end
- end
-
- # result = Google::APIClient::Result
- # returns Excon::Response
- def build_response(result)
- build_excon_response(result.body.nil? || result.body.empty? ? nil : Fog::JSON.decode(result.body), result.status)
+ @resourceviews = @client.discovered_api('resourceviews', 'v1beta1')
end
end
RUNNING = 'RUNNING'
-
end
end
end
diff --git a/lib/fog/google/core.rb b/lib/fog/google/core.rb
index d7cbeb4..7a22d5f 100644
--- a/lib/fog/google/core.rb
+++ b/lib/fog/google/core.rb
@@ -3,14 +3,15 @@ require 'fog/xml'
module Fog
module Google
-
extend Fog::Provider
- service(:compute, 'Compute')
- service(:storage, 'Storage')
+ service(:compute, 'Compute')
+ service(:dns, 'DNS')
+ service(:monitoring, 'Monitoring')
+ service(:storage, 'Storage')
+ service(:sql, 'SQL')
class Mock
-
def self.etag
hex(32)
end
@@ -19,7 +20,161 @@ module Fog
max = ('f' * length).to_i(16)
rand(max).to_s(16)
end
+ end
+
+ module Shared
+ attr_reader :project, :api_version, :api_url
+
+ ##
+ # Initializes shared attributes
+ #
+ # @param [String] project Google Cloud Project
+ # @param [String] api_version Google API version
+ # @param [String] base_url Google API base url
+ # @return [void]
+ def shared_initialize(project, api_version, base_url)
+ @project = project
+ @api_version = api_version
+ @api_url = base_url + api_version + '/projects/'
+ end
+
+ ##
+ # Initializes the Google API Client
+ #
+ # @param [Hash] options Google API options
+ # @option options [String] :google_client_email A @developer.gserviceaccount.com email address to use
+ # @option options [String] :google_key_location The location of a pkcs12 key file
+ # @option options [String] :google_key_string The content of the pkcs12 key file
+ # @option options [String] :google_api_scope_url The access scope URLs
+ # @option options [String] :app_name The app name to set in the user agent
+ # @option options [String] :app_version The app version to set in the user agent
+ # @option options [Google::APIClient] :google_client Existing Google API Client
+ # @return [Google::APIClient] Google API Client
+ # @raises [ArgumentError] If there is any missing argument
+ def initialize_google_client(options)
+ # NOTE: loaded here to avoid requiring this as a core Fog dependency
+ begin
+ require 'google/api_client'
+ rescue LoadError => error
+ Fog::Logger.warning('Please install the google-api-client gem before using this provider')
+ raise error
+ end
+
+ # User can provide an existing Google API Client
+ client = options[:google_client]
+ return client unless client.nil?
+
+ # Validate required arguments
+ unless options[:google_client_email]
+ raise ArgumentError.new('Missing required arguments: google_client_email')
+ end
+
+ if options[:google_key_location]
+ google_key = File.expand_path(options[:google_key_location])
+ elsif options[:google_key_string]
+ google_key = options[:google_key_string]
+ else
+ raise ArgumentError.new('Missing required arguments: google_key_location or google_key_string')
+ end
+
+ unless options[:google_api_scope_url]
+ raise ArgumentError.new('Missing required arguments: google_api_scope_url')
+ end
+
+ # Create a new Google API Client
+ self.new_pk12_google_client(
+ options[:google_client_email],
+ google_key,
+ options[:google_api_scope_url],
+ options[:app_name],
+ options[:app_version]
+ )
+ end
+ ##
+ # Create a Google API Client with a user email and a pkcs12 key
+ #
+ # @param [String] google_client_email A @developer.gserviceaccount.com email address to use
+ # @param [String] google_key An absolute location to a pkcs12 key file or the content of the file itself
+ # @param [String] google_api_scope_url Access scope URLs
+ # @param [String] app_name The app name to set in the user agent
+ # @param [String] app_version The app version to set in the user agent
+ # @return [Google::APIClient] Google API Client
+ def new_pk12_google_client(google_client_email, google_key, google_api_scope_url, app_name = nil, app_version = nil)
+ application_name = app_name.nil? ? 'fog' : "#{app_name}/#{app_version || '0.0.0'} fog"
+ api_client_options = {
+ :application_name => application_name,
+ :application_version => Fog::VERSION,
+ }
+ client = ::Google::APIClient.new(api_client_options)
+
+ client.authorization = Signet::OAuth2::Client.new(
+ {
+ :audience => 'https://accounts.google.com/o/oauth2/token',
+ :auth_provider_x509_cert_url => 'https://www.googleapis.com/oauth2/v1/certs',
+ :client_x509_cert_url => "https://www.googleapis.com/robot/v1/metadata/x509/#{google_client_email}",
+ :issuer => google_client_email,
+ :scope => google_api_scope_url,
+ :signing_key => ::Google::APIClient::KeyUtils.load_from_pkcs12(google_key, 'notasecret'),
+ :token_credential_uri => 'https://accounts.google.com/o/oauth2/token',
+ }
+ )
+ client.authorization.fetch_access_token!
+
+ client
+ end
+
+ ##
+ # Executes a request and wraps it in a result object
+ #
+ # @param [Google::APIClient::Method] api_method The method object or the RPC name of the method being executed
+ # @param [Hash] parameters The parameters to send to the method
+ # @param [Hash] body_object The body object of the request
+ # @return [Excon::Response] The result from the API
+ def request(api_method, parameters, body_object = nil)
+ client_parms = {
+ :api_method => api_method,
+ :parameters => parameters,
+ }
+ client_parms[:body_object] = body_object if body_object
+
+ result = @client.execute(client_parms)
+
+ build_excon_response(result.body.nil? || result.body.empty? ? nil : Fog::JSON.decode(result.body), result.status)
+ end
+
+ ##
+ # Builds an Excon response
+ #
+ # @param [Hash] Response body
+ # @param [Integer] Response status
+ # @return [Excon::Response] Excon response
+ def build_excon_response(body, status = 200)
+ response = Excon::Response.new(:body => body, :status => status)
+ if body && body.has_key?('error')
+ msg = 'Google Cloud did not return an error message'
+
+ if body['error'].kind_of?(Hash)
+ response.status = body['error']['code']
+ if body['error'].has_key?('errors')
+ msg = body['error']['errors'].map{ |error| error['message'] }.join(', ')
+ elsif body['error'].has_key?('message')
+ msg = body['error']['message']
+ end
+ elsif body['error'].kind_of?(Array)
+ msg = body['error'].map{ |error| error['code'] }.join(', ')
+ end
+
+ case response.status
+ when 404
+ raise Fog::Errors::NotFound.new(msg)
+ else
+ raise Fog::Errors::Error.new(msg)
+ end
+ end
+
+ response
+ end
end
end
end
diff --git a/lib/fog/google/dns.rb b/lib/fog/google/dns.rb
new file mode 100644
index 0000000..f5fc898
--- /dev/null
+++ b/lib/fog/google/dns.rb
@@ -0,0 +1,63 @@
+require 'fog/google/core'
+
+module Fog
+ module DNS
+ class Google < Fog::Service
+ requires :google_project
+ recognizes :app_name, :app_version, :google_client_email, :google_key_location, :google_key_string, :google_client
+
+ GOOGLE_DNS_API_VERSION = 'v1beta1'
+ GOOGLE_DNS_BASE_URL = 'https://www.googleapis.com/dns/'
+ GOOGLE_DNS_API_SCOPE_URLS = %w(https://www.googleapis.com/auth/ndev.clouddns.readwrite)
+
+ request_path 'fog/google/requests/dns'
+ request :create_managed_zone
+ request :delete_managed_zone
+ request :get_managed_zone
+ request :list_managed_zones
+
+ class Mock
+ include Fog::Google::Shared
+
+ def initialize(options)
+ shared_initialize(options[:google_project], GOOGLE_DNS_API_VERSION, GOOGLE_DNS_BASE_URL)
+ end
+
+ def self.data(api_version)
+ @data ||= {}
+ end
+
+ def self.reset
+ @data = nil
+ end
+
+ def data(project=@project)
+ self.class.data(api_version)[project] ||= {
+ :managed_zones => {
+ :by_id => {},
+ :by_name => {},
+ },
+ }
+ end
+
+ def reset_data
+ self.class.data(api_version).delete(@project)
+ end
+ end
+
+ class Real
+ include Fog::Google::Shared
+
+ attr_accessor :client
+ attr_reader :dns
+
+ def initialize(options)
+ shared_initialize(options[:google_project], GOOGLE_DNS_API_VERSION, GOOGLE_DNS_BASE_URL)
+ options.merge!(:google_api_scope_url => GOOGLE_DNS_API_SCOPE_URLS.join(' '))
+ @client = initialize_google_client(options)
+ @dns = @client.discovered_api('dns', api_version)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/examples/backend_services.rb b/lib/fog/google/examples/backend_services.rb
new file mode 100644
index 0000000..4c9ad81
--- /dev/null
+++ b/lib/fog/google/examples/backend_services.rb
@@ -0,0 +1,22 @@
+require 'rubygems'
+require 'fog'
+
+def test
+ connection = Fog::Compute.new({:provider => "google"})
+ health = connection.http_health_checks.create({
+ :name => 'test-checks'
+ })
+ health.wait_for { health.ready? }
+ backend= connection.backend_services.create({
+ :name => 'backend-test',
+ :health_checks => [health.self_link],
+ :port => 8080,
+ :timeout_sec => 40,
+ :backends => [{'group' => 'resource_view self_link'}]
+ })
+ puts connection.backend_services.all
+ backend= connection.backend_services.get('backend-test')
+ backend.get_health
+end
+
+test
diff --git a/lib/fog/google/examples/create.rb b/lib/fog/google/examples/create.rb
index 1e9fb68..bef5134 100755
--- a/lib/fog/google/examples/create.rb
+++ b/lib/fog/google/examples/create.rb
@@ -16,9 +16,9 @@ def test
:name => "fog-smoke-test-#{Time.now.to_i}",
:disks => [disk],
:machine_type => "n1-standard-1",
- :zone_name => "us-central1-a",
:private_key_path => File.expand_path("~/.ssh/id_rsa"),
:public_key_path => File.expand_path("~/.ssh/id_rsa.pub"),
+ :zone_name => "us-central1-a",
:user => ENV['USER'],
:tags => ["fog"]
})
diff --git a/lib/fog/google/examples/eric-fail.rb b/lib/fog/google/examples/eric-fail.rb
index e55dae4..ca2a488 100755
--- a/lib/fog/google/examples/eric-fail.rb
+++ b/lib/fog/google/examples/eric-fail.rb
@@ -1,5 +1,5 @@
def test
- connection = Fog::Compute.new({ :provider => "Google" })
+ connection = Fog::Compute.new({ :provider => "Google" })
name = "fog-smoke-test-#{Time.now.to_i}"
zone = "us-central1-a"
diff --git a/lib/fog/google/examples/get_list_images.rb b/lib/fog/google/examples/get_list_images.rb
index dfad241..7a51793 100644
--- a/lib/fog/google/examples/get_list_images.rb
+++ b/lib/fog/google/examples/get_list_images.rb
@@ -14,7 +14,7 @@ def test
# puts img.inspect
# First, get the name of an image that is in the users 'project' (not global)
- custom_img_name = images.detect { |img| img.project == img.service.project }
+ custom_img_name = images.find { |img| img.project == img.service.project }
# Run the next test only if there is a custom image available
if custom_img_name
# puts 'Fetching a single image from the custom project'
diff --git a/lib/fog/google/examples/get_list_snapshots.rb b/lib/fog/google/examples/get_list_snapshots.rb
index 91f2651..2dcb67a 100644
--- a/lib/fog/google/examples/get_list_snapshots.rb
+++ b/lib/fog/google/examples/get_list_snapshots.rb
@@ -1,5 +1,4 @@
def test
-
connection = Fog::Compute.new({ :provider => "Google" })
# puts 'Listing snapshots...'
@@ -16,5 +15,4 @@ def test
raise 'Could not GET the snapshot' unless snap
# puts snap.inspect
end
-
end
diff --git a/lib/fog/google/examples/image_create.rb b/lib/fog/google/examples/image_create.rb
index edac143..ce7e550 100644
--- a/lib/fog/google/examples/image_create.rb
+++ b/lib/fog/google/examples/image_create.rb
@@ -9,7 +9,7 @@ def test
# Can't test this unless the 'source' points to a valid URL
return if rawdisk[:source].nil?
- img = connection.image.create(:name => 'test-image',
+ img = connection.images.create(:name => 'test-image',
:description => 'Test image (via fog)',
:raw_disk => rawdisk)
diff --git a/lib/fog/google/examples/l7_load_balance.rb b/lib/fog/google/examples/l7_load_balance.rb
new file mode 100644
index 0000000..6da4440
--- /dev/null
+++ b/lib/fog/google/examples/l7_load_balance.rb
@@ -0,0 +1,73 @@
+# This example assumes three instances have been created in the project.
+# They should each have Apache installed and distinct index.html files
+# in order to observe the results of the l7 load balancer. A firewall
+# rule should also have been created with a tag shared by the instances.
+# More info on Google's HTTP load balancing:
+# https://developers.google.com/compute/docs/load-balancing/http/
+
+def test
+ connection = Fog::Compute.new({:provider => "google"})
+ health = connection.http_health_checks.create({
+ :name => 'test-checks'
+ })
+ instance1 = connection.servers.get('fog-l7-instance-1')
+ instance2 = connection.servers.get('fog-l7-instance-2')
+ instance3 = connection.servers.get('fog-l7-instance-3')
+
+ resource_view1 = connection.resource_views.create({
+ :name => 'fog-l7-resource-view-1',
+ :numMembers => 1,
+ :members => [instance1.self_link],
+ :zone => 'us-central1-a'
+ })
+ resource_view1.add_resources(instance1.self_link)
+ resource_view2 = connection.resource_views.create({
+ :name => 'fog-l7-resource-view-2',
+ :numMembers => 1,
+ :members => [instance2.self_link],
+ :zone => 'us-central1-a'
+ })
+ resource_view2.add_resources(instance2.self_link)
+ resource_view3 = connection.resource_views.create({
+ :name => 'fog-l7-resource-view-3',
+ :members => [instance3.self_link],
+ :zone => 'us-central1-b' })
+ resource_view3.add_resources(instance3.self_link)
+ backend_service1 = connection.backend_services.create({
+ :name => 'fog-l7-backend-service-1',
+ :health_checks => [health.self_link],
+ :backends => [{'balancingMode' => 'RATE', 'maxRate' => 100, 'group' => resource_view1.self_link}]
+ })
+ backend_service2 = connection.backend_services.create({
+ :name => 'fog-l7-backend-service-2',
+ :health_checks => [health.self_link],
+ :backends => [{'balancingMode' => 'RATE', 'maxRate' => 100, 'group' => resource_view2.self_link}]
+ })
+ backend_service3 = connection.backend_services.create({
+ :name => 'fog-l7-backend-service-3',
+ :health_checks => [health.self_link],
+ :backends => [{'balancingMode' => 'RATE', 'maxRate' => 100, 'group' => resource_view3.self_link}]
+ })
+ url_map = connection.url_maps.create({
+ :name => 'fog-l7-url-map',
+ :pathMatchers => [{
+ 'name' => 'pathmatcher',
+ 'defaultService' => backend_service1.self_link,
+ 'pathRules' => [
+ { 'paths' => ["/one/*"],
+ "service" => backend_service1.self_link },
+ {'paths' => ["/two/*"],
+ "service" => backend_service2.self_link },
+ {'paths' => ["/three/*"],
+ 'service' => backend_service3.self_link }
+ ]
+ }],
+ :hostRules => [{ 'hosts' => ['*'], 'pathMatcher' => 'pathmatcher'}],
+ :defaultService => backend_service1.self_link,
+ })
+ proxy = connection.target_http_proxies.create({
+ :name => 'fog-l7-proxy',
+ :urlMap => url_map.self_link
+ })
+ fwd_rle = connection.global_forwarding_rules.create({:name => 'fog-l7-fwd-rule', :target => proxy.self_link })
+end
diff --git a/lib/fog/google/examples/load-balance.rb b/lib/fog/google/examples/load-balance.rb
index 96e331d..764658a 100644
--- a/lib/fog/google/examples/load-balance.rb
+++ b/lib/fog/google/examples/load-balance.rb
@@ -5,7 +5,6 @@ def test
zone = 'us-central1-b'
region = 'us-central1'
-
# Setup
gce = Fog::Compute.new provider: 'Google'
servers = []
@@ -22,7 +21,7 @@ def test
rescue
puts "Failed to create disk #{name}-#{i}"
end
-
+
begin
server = gce.servers.create(
name: "#{name}-#{i}",
@@ -68,11 +67,10 @@ def test
puts "Failed to create forwarding rule #{name}"
end
-
+
# TODO(bensonk): Install apache, create individualized htdocs, and run some
# actual requests through the load balancer.
-
# Cleanup
begin
rule.destroy
diff --git a/lib/fog/google/examples/monitoring/metric_descriptors.rb b/lib/fog/google/examples/monitoring/metric_descriptors.rb
new file mode 100644
index 0000000..f21056e
--- /dev/null
+++ b/lib/fog/google/examples/monitoring/metric_descriptors.rb
@@ -0,0 +1,11 @@
+def test
+ connection = Fog::Google::Monitoring.new
+
+ puts 'Listing all MetricDescriptors...'
+ puts '--------------------------------'
+ connection.metric_descriptors
+
+ puts 'Listing all MetricDescriptors related to Google Compute Engine...'
+ puts '-----------------------------------------------------------------'
+ connection.metric_descriptors.all(:query => 'compute')
+end
diff --git a/lib/fog/google/examples/monitoring/timeseries_collection.rb b/lib/fog/google/examples/monitoring/timeseries_collection.rb
new file mode 100644
index 0000000..d31bffc
--- /dev/null
+++ b/lib/fog/google/examples/monitoring/timeseries_collection.rb
@@ -0,0 +1,15 @@
+def test
+ connection = Fog::Google::Monitoring.new
+
+ puts 'Listing all Timeseries for the metric compute.googleapis.com/instance/uptime...'
+ puts '-------------------------------------------------------------------------------'
+ connection.timeseries_collection.all('compute.googleapis.com/instance/uptime',
+ DateTime.now.rfc3339)
+
+ puts 'Listing all Timeseries for the metric compute.googleapis.com/instance/uptime &'
+ puts 'the region us-central1...'
+ puts '------------------------------------------------------------------------------'
+ connection.timeseries_collection.all('compute.googleapis.com/instance/uptime',
+ DateTime.now.rfc3339,
+ :labels => 'cloud.googleapis.com/location=~us-central1.*')
+end
diff --git a/lib/fog/google/examples/monitoring/timeseries_descriptors.rb b/lib/fog/google/examples/monitoring/timeseries_descriptors.rb
new file mode 100644
index 0000000..4233915
--- /dev/null
+++ b/lib/fog/google/examples/monitoring/timeseries_descriptors.rb
@@ -0,0 +1,15 @@
+def test
+ connection = Fog::Google::Monitoring.new
+
+ puts 'Listing all TimeseriesDescriptors for the metric compute.googleapis.com/instance/uptime...'
+ puts '------------------------------------------------------------------------------------------'
+ connection.timeseries_descriptors.all('compute.googleapis.com/instance/uptime',
+ DateTime.now.rfc3339)
+
+ puts 'Listing all TimeseriesDescriptors for the metric compute.googleapis.com/instance/uptime &'
+ puts 'the region us-central1...'
+ puts '-----------------------------------------------------------------------------------------'
+ connection.timeseries_descriptors.all('compute.googleapis.com/instance/uptime',
+ DateTime.now.rfc3339,
+ :labels => 'cloud.googleapis.com/location=~us-central1.*')
+end
diff --git a/lib/fog/google/examples/sql/flags.rb b/lib/fog/google/examples/sql/flags.rb
new file mode 100644
index 0000000..cfa5371
--- /dev/null
+++ b/lib/fog/google/examples/sql/flags.rb
@@ -0,0 +1,7 @@
+def test
+ connection = Fog::Google::SQL.new
+
+ puts 'Listing all Flags...'
+ puts '--------------------'
+ connection.flags
+end
diff --git a/lib/fog/google/examples/sql/instances.rb b/lib/fog/google/examples/sql/instances.rb
new file mode 100644
index 0000000..59bbaf8
--- /dev/null
+++ b/lib/fog/google/examples/sql/instances.rb
@@ -0,0 +1,38 @@
+def test
+ connection = Fog::Google::SQL.new
+
+ puts 'Create a Instance...'
+ puts '--------------------'
+ instance = connection.instances.create(:instance => Fog::Mock.random_letters(16), :tier => 'D1')
+ instance.wait_for { ready? }
+
+ puts 'Get the Instance...'
+ puts '----------------------'
+ connection.instances.get(instance.instance)
+
+ puts 'List all Instances...'
+ puts '---------------------'
+ connection.instances.all
+
+ puts 'Update the Instance...'
+ puts '----------------------'
+ instance.activation_policy = 'ALWAYS'
+ instance.update
+ instance.wait_for { ready? }
+
+ puts 'Reset the Instance SSL configuration...'
+ puts '---------------------------------------'
+ instance.reset_ssl_config
+
+ puts 'Restart the Instance...'
+ puts '-----------------------'
+ instance.restart
+
+ puts 'Set the Instance root password...'
+ puts '---------------------------------'
+ instance.set_root_password(Fog::Mock.random_letters_and_numbers(8))
+
+ puts 'Delete the Instance...'
+ puts '----------------------'
+ instance.destroy
+end
diff --git a/lib/fog/google/examples/sql/operations.rb b/lib/fog/google/examples/sql/operations.rb
new file mode 100644
index 0000000..20f4ce0
--- /dev/null
+++ b/lib/fog/google/examples/sql/operations.rb
@@ -0,0 +1,20 @@
+def test
+ connection = Fog::Google::SQL.new
+
+ puts 'Create a Instance...'
+ puts '--------------------'
+ instance = connection.instances.create(:instance => Fog::Mock.random_letters(16), :tier => 'D1')
+ instance.wait_for { ready? }
+
+ puts 'Delete the Instance...'
+ puts '----------------------'
+ operation = instance.destroy
+
+ puts 'Get the Operation...'
+ puts '--------------------'
+ connection.operations.get(instance.identity, operation.identity)
+
+ puts 'Listing all Operations...'
+ puts '-------------------------'
+ connection.operations.all(instance.identity)
+end
diff --git a/lib/fog/google/examples/sql/ssl_certs.rb b/lib/fog/google/examples/sql/ssl_certs.rb
new file mode 100644
index 0000000..2233cf3
--- /dev/null
+++ b/lib/fog/google/examples/sql/ssl_certs.rb
@@ -0,0 +1,28 @@
+def test
+ connection = Fog::Google::SQL.new
+
+ puts 'Create a Instance...'
+ puts '--------------------'
+ instance = connection.instances.create(:instance => Fog::Mock.random_letters(16), :tier => 'D1')
+ instance.wait_for { ready? }
+
+ puts 'Create a SSL certificate...'
+ puts '---------------------------'
+ ssl_cert = connection.ssl_certs.create(:instance => instance.instance, :common_name => Fog::Mock.random_letters(16))
+
+ puts 'Get the SSL certificate...'
+ puts '--------------------------'
+ connection.ssl_certs.get(instance.instance, ssl_cert.sha1_fingerprint)
+
+ puts 'List all SSL certificate...'
+ puts '---------------------------'
+ connection.ssl_certs.all(instance.instance)
+
+ puts 'Delete the SSL certificate...'
+ puts '-----------------------------'
+ ssl_cert.destroy
+
+ puts 'Delete the Instance...'
+ puts '----------------------'
+ instance.destroy
+end
diff --git a/lib/fog/google/examples/sql/tiers.rb b/lib/fog/google/examples/sql/tiers.rb
new file mode 100644
index 0000000..dbdfe20
--- /dev/null
+++ b/lib/fog/google/examples/sql/tiers.rb
@@ -0,0 +1,7 @@
+def test
+ connection = Fog::Google::SQL.new
+
+ puts 'Listing all Tiers...'
+ puts '--------------------'
+ connection.tiers
+end
diff --git a/lib/fog/google/models/compute/address.rb b/lib/fog/google/models/compute/address.rb
index 5174100..eabc6b8 100755
--- a/lib/fog/google/models/compute/address.rb
+++ b/lib/fog/google/models/compute/address.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class Google
-
##
# Represents an Address resource
#
@@ -24,6 +23,17 @@ module Fog
IN_USE_STATE = 'IN_USE'
RESERVED_STATE = 'RESERVED'
+ def server
+ return nil if !in_use? || self.users.nil? || self.users.empty?
+
+ service.servers.get(self.users.first.split('/')[-1])
+ end
+
+ def server=(server)
+ requires :identity, :region
+ server ? associate(server) : disassociate
+ end
+
def save
requires :identity, :region
@@ -55,8 +65,30 @@ module Fog
def in_use?
self.status == IN_USE_STATE
end
- end
+ private
+
+ def associate(server)
+ nic = server.network_interfaces.first['name']
+ data = service.add_server_access_config(server.name, server.zone_name, nic, :address => self.address)
+ Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
+ end
+
+ def disassociate
+ return nil if !in_use? || self.users.nil? || self.users.empty?
+
+ # An address can only be associated with one server at a time
+ server = service.servers.get(self.users.first.split('/')[-1])
+ nic = server.network_interfaces.first['name']
+ unless server.network_interfaces.first['accessConfigs'].nil? ||
+ server.network_interfaces.first['accessConfigs'].empty?
+ access_config = server.network_interfaces.first['accessConfigs'].first['name']
+ data = service.delete_server_access_config(server.name, server.zone_name, nic,
+ :access_config => access_config)
+ Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
+ end
+ end
+ end
end
end
end
diff --git a/lib/fog/google/models/compute/addresses.rb b/lib/fog/google/models/compute/addresses.rb
index 7ac1287..33bf30f 100755
--- a/lib/fog/google/models/compute/addresses.rb
+++ b/lib/fog/google/models/compute/addresses.rb
@@ -4,7 +4,6 @@ require 'fog/google/models/compute/address'
module Fog
module Compute
class Google
-
class Addresses < Fog::Collection
model Fog::Compute::Google::Address
@@ -27,8 +26,15 @@ module Fog
rescue Fog::Errors::NotFound
nil
end
- end
+ def get_by_ip_address(ip_address)
+ addresses = service.list_aggregated_addresses(:filter => "address eq .*#{ip_address}").body['items']
+ address = addresses.each_value.select { |region| region.key?('addresses') }
+
+ return nil if address.empty?
+ new(address.first['addresses'].first)
+ end
+ end
end
end
end
diff --git a/lib/fog/google/models/compute/backend_service.rb b/lib/fog/google/models/compute/backend_service.rb
new file mode 100644
index 0000000..a8bb78e
--- /dev/null
+++ b/lib/fog/google/models/compute/backend_service.rb
@@ -0,0 +1,92 @@
+require 'fog/core/model'
+
+module Fog
+ module Compute
+ class Google
+ class BackendService < Fog::Model
+ identity :name
+
+ attribute :backends, :aliases => 'backends'
+ attribute :creation_timestamp, :aliases => 'kind'
+ attribute :description, :aliases => 'description'
+ attribute :fingerprint, :aliases => 'fingerprint'
+ attribute :health_checks, :aliases => 'healthChecks'
+ attribute :id, :aliases => 'id'
+ attribute :kind, :aliases => 'kind'
+ attribute :port, :aliases => 'port'
+ attribute :protocol, :aliases => 'protocol'
+ attribute :self_link, :aliases => 'selfLink'
+ attribute :timeout_sec, :aliases => 'timeoutSec'
+
+ def save
+ requires :name, :health_checks
+
+ options = {
+ 'description' => description,
+ 'backends' => backends,
+ 'fingerprint' => fingerprint,
+ 'healthChecks' => health_checks,
+ 'port' => port,
+ 'protocol' => protocol,
+ 'timeoutSec' => timeout_sec
+ }
+
+ data = service.insert_backend_service(name, options).body
+ operation = Fog::Compute::Google::Operations.new(:service => service).get(data['name'])
+ operation.wait_for { !pending? }
+ reload
+ end
+
+ def destroy(async=false)
+ requires :name
+
+ operation = service.delete_backend_service(name)
+ unless async
+ Fog.wait_for do
+ operation.body["status"] == "DONE"
+ end
+ end
+ operation
+ end
+
+ def get_health
+ service.get_backend_service_health self
+ end
+
+ def add_backend backend
+ # ensure backend is an array of hashes
+ backend = [backend] unless backend.class == Array
+ backend.map! { |resource| resource.class == String ? { 'group' => resource }: resource }
+ service.add_backend_service_backends(self, backend)
+ reload
+ end
+
+ def ready?
+ begin
+ service.get_backend_service(self.name)
+ true
+ rescue Fog::Errors::NotFound
+ false
+ end
+ end
+
+ def reload
+ requires :name
+
+ return unless data =
+ begin
+ collection.get(name)
+ rescue Excon::Errors::SocketError
+ nil
+ end
+
+ new_attributes = data.attributes
+ merge_attributes(new_attributes)
+ self
+ end
+
+ RUNNING_STATE = "READY"
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/compute/backend_services.rb b/lib/fog/google/models/compute/backend_services.rb
new file mode 100644
index 0000000..185957e
--- /dev/null
+++ b/lib/fog/google/models/compute/backend_services.rb
@@ -0,0 +1,22 @@
+require 'fog/core/collection'
+require 'fog/google/models/compute/backend_service'
+
+module Fog
+ module Compute
+ class Google
+ class BackendServices < Fog::Collection
+ model Fog::Compute::Google::BackendService
+
+ def all(filters={})
+ data = service.list_backend_services.body['items'] || []
+ load(data)
+ end
+
+ def get(identity)
+ response = service.get_backend_service(identity)
+ new(response.body) unless response.nil?
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/compute/disk.rb b/lib/fog/google/models/compute/disk.rb
index c56232f..8e80a14 100644
--- a/lib/fog/google/models/compute/disk.rb
+++ b/lib/fog/google/models/compute/disk.rb
@@ -3,26 +3,25 @@ require 'fog/core/model'
module Fog
module Compute
class Google
-
class Disk < Fog::Model
-
identity :name
- attribute :kind, :aliases => 'kind'
- attribute :id, :aliases => 'id'
+ attribute :kind
+ attribute :id
attribute :creation_timestamp, :aliases => 'creationTimestamp'
- attribute :zone_name, :aliases => 'zone'
- attribute :status, :aliases => 'status'
- attribute :description, :aliases => 'description'
+ attribute :zone, :aliases => :zone_name
+ attribute :status
+ attribute :description
attribute :size_gb, :aliases => 'sizeGb'
attribute :self_link, :aliases => 'selfLink'
attribute :source_image, :aliases => 'sourceImage'
+ attribute :source_image_id, :aliases => 'sourceImageId'
attribute :source_snapshot, :aliases => 'sourceSnapshot'
- attribute :source_snapshot_id, :aliases => 'sourceSnapshot'
+ attribute :source_snapshot_id, :aliases => 'sourceSnapshotId'
+ attribute :type
def save
- requires :name
- requires :zone_name
+ requires :name, :zone, :size_gb
options = {}
my_description = "Created with fog"
@@ -36,33 +35,27 @@ module Fog
options['sizeGb'] = size_gb
options['description'] = description || my_description
+ options['type'] = type
- data = service.insert_disk(name, zone_name, source_image, options).body
- data = service.backoff_if_unfound {service.get_disk(name, zone_name).body}
- service.disks.merge_attributes(data)
+ data = service.insert_disk(name, zone, source_image, options)
+ operation = Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
+ operation.wait_for { !pending? }
+ reload
end
def destroy(async=true)
- requires :name, :zone_name
- operation = service.delete_disk(name, zone_name)
- # wait until "DONE" to ensure the operation doesn't fail, raises exception on error
- if not async
- Fog.wait_for do
- operation = service.get_zone_operation(zone_name, operation.body["name"])
- operation.body["status"] == "DONE"
- end
+ requires :name, :zone
+
+ data = service.delete_disk(name, zone_name)
+ operation = Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
+ unless async
+ operation.wait_for { ready? }
end
operation
end
- def zone
- if self.zone_name.is_a? String
- service.get_zone(self.zone_name.split('/')[-1]).body["name"]
- elsif zone_name.is_a? Excon::Response
- service.get_zone(zone_name.body["name"]).body["name"]
- else
- self.zone_name
- end
+ def zone_name
+ zone.nil? ? nil : zone.split('/')[-1]
end
# auto_delete can only be applied to disks created before instance creation.
@@ -89,8 +82,7 @@ module Fog
end
def reload
- requires :identity
- requires :zone_name
+ requires :identity, :zone
return unless data = begin
collection.get(identity, zone_name)
@@ -104,8 +96,7 @@ module Fog
end
def create_snapshot(snapshot_name, snapshot_description="")
- requires :name
- requires :zone_name
+ requires :name, :zone
if snapshot_name.nil? or snapshot_name.empty?
raise ArgumentError, 'Invalid snapshot name'
@@ -116,18 +107,13 @@ module Fog
'description' => snapshot_description,
}
- service.insert_snapshot(name, self.zone, service.project, options)
- data = service.backoff_if_unfound {
- service.get_snapshot(snapshot_name, service.project).body
- }
- service.snapshots.merge_attributes(data)
-
- # Try to return the representation of the snapshot we created
+ data = service.insert_snapshot(name, zone_name, service.project, options)
+ operation = Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
+ operation.wait_for { !pending? }
service.snapshots.get(snapshot_name)
end
RUNNING_STATE = "READY"
-
end
end
end
diff --git a/lib/fog/google/models/compute/disk_type.rb b/lib/fog/google/models/compute/disk_type.rb
new file mode 100644
index 0000000..3198ad2
--- /dev/null
+++ b/lib/fog/google/models/compute/disk_type.rb
@@ -0,0 +1,28 @@
+require 'fog/core/model'
+
+module Fog
+ module Compute
+ class Google
+ class DiskType < Fog::Model
+ identity :name
+
+ attribute :kind
+ attribute :id
+ attribute :creation_timestamp, :aliases => 'creationTimestamp'
+ attribute :deprecated
+ attribute :description
+ attribute :self_link, :aliases => 'selfLink'
+ attribute :valid_disk_size, :aliases => 'validDiskSize'
+ attribute :zone
+
+ def reload
+ requires :identity, :zone
+
+ data = collection.get(identity, self.zone)
+ merge_attributes(data.attributes)
+ self
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/compute/disk_types.rb b/lib/fog/google/models/compute/disk_types.rb
new file mode 100644
index 0000000..5f6f8c3
--- /dev/null
+++ b/lib/fog/google/models/compute/disk_types.rb
@@ -0,0 +1,40 @@
+require 'fog/core/collection'
+require 'fog/google/models/compute/disk_type'
+
+module Fog
+ module Compute
+ class Google
+ class DiskTypes < Fog::Collection
+ model Fog::Compute::Google::DiskType
+
+ def all(filters = {})
+ if filters['zone']
+ data = service.list_disk_types(filters['zone']).body['items'] || []
+ else
+ data = []
+ service.list_aggregated_disk_types.body['items'].each_value do |zone|
+ data.concat(zone['diskTypes']) if zone['diskTypes']
+ end
+ end
+ load(data)
+ end
+
+ def get(identity, zone = nil)
+ response = nil
+ if zone
+ response = service.get_disk_type(identity, zone).body
+ else
+ disk_types = service.list_aggregated_disk_types(:filter => "name eq .*#{identity}").body['items'] || {}
+ disk_type = disk_types.each_value.detect { |zone| zone.key?('diskTypes') } || {}
+
+ response = disk_type['diskTypes'].first unless disk_type.empty?
+ end
+ return nil if response.nil?
+ new(response)
+ rescue Fog::Errors::NotFound
+ nil
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/compute/disks.rb b/lib/fog/google/models/compute/disks.rb
index 8309ad3..98658a9 100644
--- a/lib/fog/google/models/compute/disks.rb
+++ b/lib/fog/google/models/compute/disks.rb
@@ -4,42 +4,38 @@ require 'fog/google/models/compute/disk'
module Fog
module Compute
class Google
-
class Disks < Fog::Collection
-
model Fog::Compute::Google::Disk
def all(filters={})
- if filters['zone'].nil?
+ if filters['zone']
+ data = service.list_disks(filters['zone']).body['items'] || []
+ else
data = []
- service.list_zones.body['items'].each do |zone|
- data += service.list_disks(zone['name']).body["items"] || []
+ service.list_aggregated_disks.body['items'].each_value do |zone|
+ data.concat(zone['disks']) if zone['disks']
end
- else
- data = service.list_disks(filters['zone']).body["items"] || []
end
load(data)
end
def get(identity, zone=nil)
response = nil
- if zone.nil?
- service.list_zones.body['items'].each do |zone|
- begin
- response = service.get_disk(identity, zone['name'])
- break if response.status == 200
- rescue Fog::Errors::Error
- end
- end
+ if zone
+ response = service.get_disk(identity, zone).body
else
- response = service.get_disk(identity, zone)
+ disks = service.list_aggregated_disks(:filter => "name eq .*#{identity}").body['items']
+ disk = disks.each_value.select { |zone| zone.key?('disks') }
+
+ # It can only be 1 disk with the same name across all regions
+ response = disk.first['disks'].first unless disk.empty?
end
return nil if response.nil?
- new(response.body)
+ new(response)
+ rescue Fog::Errors::NotFound
+ nil
end
-
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/firewall.rb b/lib/fog/google/models/compute/firewall.rb
index 424c9bd..5bdbc9b 100644
--- a/lib/fog/google/models/compute/firewall.rb
+++ b/lib/fog/google/models/compute/firewall.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class Google
-
##
# Represents a Firewall resource
#
@@ -42,7 +41,6 @@ module Fog
operation
end
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/firewalls.rb b/lib/fog/google/models/compute/firewalls.rb
index 875e1a7..a12c44d 100644
--- a/lib/fog/google/models/compute/firewalls.rb
+++ b/lib/fog/google/models/compute/firewalls.rb
@@ -4,7 +4,6 @@ require 'fog/google/models/compute/firewall'
module Fog
module Compute
class Google
-
class Firewalls < Fog::Collection
model Fog::Compute::Google::Firewall
@@ -21,7 +20,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/flavor.rb b/lib/fog/google/models/compute/flavor.rb
index cd7870f..b0e0222 100644
--- a/lib/fog/google/models/compute/flavor.rb
+++ b/lib/fog/google/models/compute/flavor.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Google
-
class Flavor < Fog::Model
-
identity :name
attribute :kind
@@ -30,7 +28,6 @@ module Fog
self
end
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/flavors.rb b/lib/fog/google/models/compute/flavors.rb
index d85c15d..ede4398 100644
--- a/lib/fog/google/models/compute/flavors.rb
+++ b/lib/fog/google/models/compute/flavors.rb
@@ -4,9 +4,7 @@ require 'fog/google/models/compute/flavor'
module Fog
module Compute
class Google
-
class Flavors < Fog::Collection
-
model Fog::Compute::Google::Flavor
def all(filters = {})
@@ -27,9 +25,7 @@ module Fog
rescue Fog::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/forwarding_rule.rb b/lib/fog/google/models/compute/forwarding_rule.rb
index 64d5273..d633d0e 100644
--- a/lib/fog/google/models/compute/forwarding_rule.rb
+++ b/lib/fog/google/models/compute/forwarding_rule.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Google
-
class ForwardingRule < Fog::Model
-
identity :name
attribute :kind, :aliases => 'kind'
@@ -31,10 +29,10 @@ module Fog
'target' => target
}
- service.insert_forwarding_rule(name, region, options).body
- data = service.backoff_if_unfound {service.get_forwarding_rule(name, region).body}
- merge_attributes(data)
- self
+ data = service.insert_forwarding_rule(name, region, options).body
+ operation = Fog::Compute::Google::Operations.new(:service => service).get(data['name'], nil, data['region'])
+ operation.wait_for { !pending? }
+ reload
end
def set_target new_target
diff --git a/lib/fog/google/models/compute/forwarding_rules.rb b/lib/fog/google/models/compute/forwarding_rules.rb
index 2c4f4cb..0db9e2d 100644
--- a/lib/fog/google/models/compute/forwarding_rules.rb
+++ b/lib/fog/google/models/compute/forwarding_rules.rb
@@ -4,9 +4,7 @@ require 'fog/google/models/compute/forwarding_rule'
module Fog
module Compute
class Google
-
class ForwardingRules < Fog::Collection
-
model Fog::Compute::Google::ForwardingRule
def all(filters={})
@@ -37,9 +35,7 @@ module Fog
return nil if response.nil?
new(response.body)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/global_forwarding_rule.rb b/lib/fog/google/models/compute/global_forwarding_rule.rb
new file mode 100644
index 0000000..26c9136
--- /dev/null
+++ b/lib/fog/google/models/compute/global_forwarding_rule.rb
@@ -0,0 +1,86 @@
+require 'fog/core/model'
+
+module Fog
+ module Compute
+ class Google
+ class GlobalForwardingRule < Fog::Model
+ identity :name
+
+ attribute :kind, :aliases => 'kind'
+ attribute :self_link, :aliases => 'selfLink'
+ attribute :id, :aliases => 'id'
+ attribute :creation_timestamp, :aliases => 'creationTimestamp'
+ attribute :description, :aliases => 'description'
+ attribute :region, :aliases => 'region' # should always be 'global'
+ attribute :ip_address, :aliases => 'IPAddress' # string
+ attribute :ip_protocol, :aliases => 'IPProtocol' # string
+ attribute :port_range, :aliases => 'portRange' # string
+ attribute :target, :aliases => 'target' # string, URL of global target http proxy
+
+ def save
+ requires :name
+
+ options = {
+ 'description' => description,
+ 'region' => 'global',
+ 'IPAddress' => ip_address,
+ 'IPProtocol' => ip_protocol || "TCP",
+ 'portRange' => port_range || 80,
+ 'target' => target
+ }
+
+ data = service.insert_global_forwarding_rule(name, options).body
+ operation = Fog::Compute::Google::Operations.new(:service => service).get(data['name'], nil, data['region'])
+ operation.wait_for { !pending? }
+ reload
+ end
+
+ def destroy(async=true)
+ requires :name
+
+ operation = service.delete_global_forwarding_rule(name, 'global')
+ if not async
+ # wait until "RUNNING" or "DONE" to ensure the operation doesn't
+ # fail, raises exception on error
+ Fog.wait_for do
+ operation.body["status"] == "DONE"
+ end
+ end
+ operation
+ end
+
+ def set_target new_target
+ new_target = new_target.self_link unless new_target.class == String
+ self.target = new_target
+ service.set_global_forwarding_rule_target(self, new_target)
+ reload
+ end
+
+ def ready?
+ begin
+ service.get_global_forwarding_rule(self.name, 'global')
+ true
+ rescue Fog::Errors::NotFound
+ false
+ end
+ end
+
+ def reload
+ requires :name
+
+ return unless data = begin
+ collection.get(name, 'global')
+ rescue Excon::Errors::SocketError
+ nil
+ end
+
+ new_attributes = data.attributes
+ merge_attributes(new_attributes)
+ self
+ end
+
+ RUNNING_STATE = "READY"
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/compute/global_forwarding_rules.rb b/lib/fog/google/models/compute/global_forwarding_rules.rb
new file mode 100644
index 0000000..955a60e
--- /dev/null
+++ b/lib/fog/google/models/compute/global_forwarding_rules.rb
@@ -0,0 +1,23 @@
+require 'fog/core/collection'
+require 'fog/google/models/compute/global_forwarding_rule'
+
+module Fog
+ module Compute
+ class Google
+ class GlobalForwardingRules < Fog::Collection
+ model Fog::Compute::Google::GlobalForwardingRule
+
+ def all
+ data = service.list_global_forwarding_rules.body['items'] || []
+ load(data)
+ end
+
+ def get(identity, region='global')
+ response = service.get_global_forwarding_rule(identity, region)
+ return nil if response.nil?
+ new(response.body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/compute/http_health_check.rb b/lib/fog/google/models/compute/http_health_check.rb
index 08ef267..d014a33 100644
--- a/lib/fog/google/models/compute/http_health_check.rb
+++ b/lib/fog/google/models/compute/http_health_check.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Google
-
class HttpHealthCheck < Fog::Model
-
identity :name
attribute :kind, :aliases => 'kind'
@@ -35,9 +33,10 @@ module Fog
'healthyThreshold' => healthy_threshold || 2,
}
- service.insert_http_health_check(name, options).body
- data = service.backoff_if_unfound {service.get_http_health_check(name).body}
- merge_attributes(data)
+ data = service.insert_http_health_check(name, options).body
+ operation = Fog::Compute::Google::Operations.new(:service => service).get(data['name'], data['zone'])
+ operation.wait_for { !pending? }
+ reload
end
def destroy(async=true)
diff --git a/lib/fog/google/models/compute/http_health_checks.rb b/lib/fog/google/models/compute/http_health_checks.rb
index e6c0457..c92a78f 100644
--- a/lib/fog/google/models/compute/http_health_checks.rb
+++ b/lib/fog/google/models/compute/http_health_checks.rb
@@ -4,9 +4,7 @@ require 'fog/google/models/compute/http_health_check'
module Fog
module Compute
class Google
-
class HttpHealthChecks < Fog::Collection
-
model Fog::Compute::Google::HttpHealthCheck
def all(filters={})
@@ -15,12 +13,14 @@ module Fog
end
def get(identity)
+ resonse = nil
response = service.get_http_health_check(identity)
- new(response.body) unless response.nil?
+ return nil if response.nil?
+ new(response.body)
+ rescue Fog::Errors::NotFound
+ nil
end
-
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/image.rb b/lib/fog/google/models/compute/image.rb
index ee50070..db569bf 100644
--- a/lib/fog/google/models/compute/image.rb
+++ b/lib/fog/google/models/compute/image.rb
@@ -3,16 +3,19 @@ require 'fog/core/model'
module Fog
module Compute
class Google
-
class Image < Fog::Model
-
identity :name
attribute :id
attribute :kind
- attribute :self_link, :aliases => 'selfLink'
+ attribute :archive_size_bytes, :aliases => 'archiveSizeBytes'
attribute :creation_timestamp, :aliases => 'creationTimestamp'
+ attribute :deprecated
attribute :description
+ attribute :disk_size_gb, :aliases => 'diskSizeGb'
+ attribute :self_link, :aliases => 'selfLink'
+ attribute :source_type, :aliases => 'sourceType'
+ attribute :status
# This attribute is not available in the representation of an
# 'image' returned by the GCE servser (see GCE API). However,
@@ -27,21 +30,36 @@ module Fog
# :container_type => 'TAR',
# :sha1Checksum => ,
# }
- attribute :raw_disk
-
- attribute :status
+ attribute :raw_disk, :aliases => 'rawDisk'
def preferred_kernel=(args)
Fog::Logger.deprecation("preferred_kernel= is no longer used [light_black](#{caller.first})[/]")
end
+
def preferred_kernel
Fog::Logger.deprecation("preferred_kernel is no longer used [light_black](#{caller.first})[/]")
nil
end
+ READY_STATE = "READY"
+
+ def ready?
+ self.status == READY_STATE
+ end
+
+ def destroy(async=true)
+ data = service.delete_image(name)
+ operation = Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'])
+ unless async
+ operation.wait_for { ready? }
+ end
+ operation
+ end
+
def reload
requires :name
+ self.project = self.service.project
data = service.get_image(name, self.project).body
self.merge_attributes(data)
@@ -57,23 +75,15 @@ module Fog
'description' => description,
}
- service.insert_image(name, options)
-
- data = service.backoff_if_unfound {
- service.get_image(self.name).body
- }
-
- # Track the name of the project in which we insert the image
- data.merge!('project' => service.project)
- self.project = self.service.project
-
- service.images.merge_attributes(data)
+ data = service.insert_image(name, options)
+ operation = Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'])
+ operation.wait_for { !pending? }
+ reload
end
def resource_url
"#{self.project}/global/images/#{name}"
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/images.rb b/lib/fog/google/models/compute/images.rb
index 6d7ea2c..6de4c94 100644
--- a/lib/fog/google/models/compute/images.rb
+++ b/lib/fog/google/models/compute/images.rb
@@ -4,17 +4,18 @@ require 'fog/google/models/compute/image'
module Fog
module Compute
class Google
-
class Images < Fog::Collection
-
model Fog::Compute::Google::Image
# NOTE: Not everyone has access to these projects because of the
# licenses needed to use some of them.
# https://developers.google.com/compute/docs/premium-operating-systems
GLOBAL_PROJECTS = [
- 'debian-cloud',
'centos-cloud',
+ 'coreos-cloud',
+ 'debian-cloud',
+ 'google-containers',
+ 'opensuse-cloud',
'rhel-cloud',
'suse-cloud'
]
@@ -57,14 +58,14 @@ module Fog
end
# If it wasn't found in any project, raise
- if data.nil?
- raise Fog::Errors::NotFound.new(
- "Unable to find the image #{identity} in the following projects: #{all_projects.join(', ')}")
- end
+ return nil if data.nil?
new(data)
- end
+
+ rescue Fog::Errors::NotFound.new(
+ "Unable to find the image #{identity} in the following projects: #{all_projects.join(', ')}")
+ end
end
end
end
diff --git a/lib/fog/google/models/compute/network.rb b/lib/fog/google/models/compute/network.rb
index 5d129d9..735e166 100644
--- a/lib/fog/google/models/compute/network.rb
+++ b/lib/fog/google/models/compute/network.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class Google
-
##
# Represents a Network resource
#
@@ -39,7 +38,6 @@ module Fog
operation
end
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/networks.rb b/lib/fog/google/models/compute/networks.rb
index 6f58df5..3a9e5ac 100644
--- a/lib/fog/google/models/compute/networks.rb
+++ b/lib/fog/google/models/compute/networks.rb
@@ -4,7 +4,6 @@ require 'fog/google/models/compute/network'
module Fog
module Compute
class Google
-
class Networks < Fog::Collection
model Fog::Compute::Google::Network
@@ -21,7 +20,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/operation.rb b/lib/fog/google/models/compute/operation.rb
index e5ce118..8774699 100644
--- a/lib/fog/google/models/compute/operation.rb
+++ b/lib/fog/google/models/compute/operation.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Google
-
class Operation < Fog::Model
-
identity :name
attribute :kind
@@ -71,7 +69,6 @@ module Fog
PENDING_STATE = "PENDING"
RUNNING_STATE = "RUNNING"
DONE_STATE = "DONE"
-
end
end
end
diff --git a/lib/fog/google/models/compute/operations.rb b/lib/fog/google/models/compute/operations.rb
index 948f880..177ec71 100644
--- a/lib/fog/google/models/compute/operations.rb
+++ b/lib/fog/google/models/compute/operations.rb
@@ -4,9 +4,7 @@ require 'fog/google/models/compute/operation'
module Fog
module Compute
class Google
-
class Operations < Fog::Collection
-
model Fog::Compute::Google::Operation
def all(filters = {})
@@ -33,9 +31,7 @@ module Fog
rescue Fog::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/project.rb b/lib/fog/google/models/compute/project.rb
index 2dbf0c1..3a5adf3 100644
--- a/lib/fog/google/models/compute/project.rb
+++ b/lib/fog/google/models/compute/project.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class Google
-
##
# Represents a Project resource
#
@@ -26,7 +25,6 @@ module Fog
Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'])
end
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/projects.rb b/lib/fog/google/models/compute/projects.rb
index f027dff..371ac4c 100644
--- a/lib/fog/google/models/compute/projects.rb
+++ b/lib/fog/google/models/compute/projects.rb
@@ -4,7 +4,6 @@ require 'fog/google/models/compute/project'
module Fog
module Compute
class Google
-
class Projects < Fog::Collection
model Fog::Compute::Google::Project
@@ -16,7 +15,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/region.rb b/lib/fog/google/models/compute/region.rb
index b4e4c6f..6eb60a1 100755
--- a/lib/fog/google/models/compute/region.rb
+++ b/lib/fog/google/models/compute/region.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class Google
-
##
# Represents a Region resource
#
@@ -28,7 +27,6 @@ module Fog
self.status == UP_STATE
end
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/regions.rb b/lib/fog/google/models/compute/regions.rb
index 9684cbf..c33c307 100755
--- a/lib/fog/google/models/compute/regions.rb
+++ b/lib/fog/google/models/compute/regions.rb
@@ -4,7 +4,6 @@ require 'fog/google/models/compute/region'
module Fog
module Compute
class Google
-
class Regions < Fog::Collection
model Fog::Compute::Google::Region
@@ -21,7 +20,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/resource_view.rb b/lib/fog/google/models/compute/resource_view.rb
new file mode 100644
index 0000000..dda765d
--- /dev/null
+++ b/lib/fog/google/models/compute/resource_view.rb
@@ -0,0 +1,116 @@
+require 'fog/core/model'
+# the resource view model creates either a region view or zone view depending on which is parameter is passed
+
+module Fog
+ module Compute
+ class Google
+ class ResourceView < Fog::Model
+ identity :name
+
+ attribute :kind, :aliases => 'kind'
+ attribute :self_link, :aliases => 'selfLink'
+ attribute :id, :aliases => 'id'
+ attribute :creation_timestamp, :aliases => 'creationTimestamp'
+ attribute :description, :aliases => 'description'
+ attribute :region, :aliases => "region" # string, required for region views
+ attribute :labels, :aliases => "labels" # array of hashes including 'key' and 'value' as keys
+ attribute :zone, :aliases => "zone" # string, required for zone views
+ attribute :last_modified, :aliases => "lastModified"
+ attribute :members, :aliases => "members" # array of members of resource view
+ attribute :num_members, :aliases => "numMemebers" # integer
+
+ def save
+ requires :name
+ labels ||= []
+ members ||= []
+
+ if region then
+ options = {
+ 'description' => description,
+ 'labels' => labels,
+ 'lastModified' => last_modified,
+ 'members' => members,
+ 'numMembers' => num_members
+ }
+ @region = region
+ data = service.insert_region_view(name, region, options).body
+ operation = service.get_region_view(data['resource']['name'],nil, @region).body
+ end
+
+ if zone then
+ options = {
+ 'description' => description,
+ 'labels' => labels,
+ 'lastModified' => last_modified,
+ 'members' => members,
+ 'numMembers' => num_members
+ }
+ @zone = zone
+ data = service.insert_zone_view(name, zone, options).body
+ operation = service.get_zone_view(data['resource']['name'], @zone).body
+ end
+ reload
+ end
+
+ def destroy(async=false)
+ requires :name
+# parse the self link to get the zone or region
+ selflink = self.self_link.split('/')
+ if selflink[7]=='regions' then
+ operation = service.delete_region_view(name, selflink[8])
+ end
+
+ if selflink[7]== 'zones' then
+ operation= service.delete_zone_view(name, selflink[8])
+ end
+
+ if not async
+ # wait until "DONE" to ensure the operation doesn't fail, raises
+ # exception on error
+ Fog.wait_for do
+ operation.body == nil
+ end
+ end
+ operation
+ end
+
+ def add_resources resources
+ resources = [resources] unless resources.class == Array
+ resources.map { |resource| resource.class == String ? resource : resource.self_link }
+ if @zone then
+ service.add_zone_view_resources(self, resources, @zone)
+ end
+ if @region then
+ service.add_region_view_resources(self, reources, @region)
+ end
+ reload
+ end
+
+ def ready?
+ begin
+ if @zone then service.get_zone_view(self.name, @zone) end
+ if @region then service.get_region_view(self.name, @region) end
+ true
+ rescue Fog::Errors::NotFound
+ false
+ end
+ end
+
+ def reload
+ requires :name
+
+ return unless data = begin
+ collection.get(name, region, zone)
+ rescue Excon::Errors::SocketError
+ nil
+ end
+
+ new_attributes = data.attributes
+ merge_attributes(new_attributes)
+ self
+ end
+ RUNNING_STATE = "READY"
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/compute/resource_views.rb b/lib/fog/google/models/compute/resource_views.rb
new file mode 100644
index 0000000..7bc1d9a
--- /dev/null
+++ b/lib/fog/google/models/compute/resource_views.rb
@@ -0,0 +1,57 @@
+require 'fog/core/collection'
+require 'fog/google/models/compute/resource_view'
+
+module Fog
+ module Compute
+ class Google
+ class ResourceViews < Fog::Collection
+ model Fog::Compute::Google::ResourceView
+
+ def all(filters={})
+ if fliters['region'].nil? && filters['zone'].nil?
+ data = []
+ service.list_regions.body['items'].each do |region|
+ data += service.list_region_views(region['name']).body['items'] || []
+ end
+ service.list_zones.body['items'].each do |zone|
+ data += service.list_zone_views(zone['name']).body['items'] || []
+ end
+ elsif filters['zone']
+ data = service.list_zone_views(fliters['zone']).body['items'] || []
+ else
+ data = service.list_region_views(filters['region']).body['items'] || []
+ end
+ load(data)
+ end
+
+ def get(identity, region=nil, zone=nil)
+ response = nil
+
+ if region.nil? & zone.nil?
+ service.list_regions.body['items'].each do |region|
+ begin
+ response = service.get_region_view(identity, region['name'])
+ break if response.status == 200
+ rescue Fog::Errors::Error
+ end
+ end
+ service.list_zones.body['items'].each do |zone|
+ begin
+ response = service.get_zone_view(identity, zone['name'])
+ break if response.status == 200
+ rescue Fog::Errors::Error
+ end
+ end
+ elsif region
+ response = service.get_region_view(identity, region)
+ else
+ response = service.get_zone_view(identity, zone)
+ end
+
+ return nil if response.nil?
+ new(response.body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/compute/route.rb b/lib/fog/google/models/compute/route.rb
index 3468ccb..f21d5b2 100644
--- a/lib/fog/google/models/compute/route.rb
+++ b/lib/fog/google/models/compute/route.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class Google
-
##
# Represents a Route resource
#
@@ -46,7 +45,6 @@ module Fog
operation
end
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/routes.rb b/lib/fog/google/models/compute/routes.rb
index ff21a44..3e35a32 100644
--- a/lib/fog/google/models/compute/routes.rb
+++ b/lib/fog/google/models/compute/routes.rb
@@ -4,7 +4,6 @@ require 'fog/google/models/compute/route'
module Fog
module Compute
class Google
-
class Routes < Fog::Collection
model Fog::Compute::Google::Route
@@ -21,7 +20,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/server.rb b/lib/fog/google/models/compute/server.rb
index 0a888aa..f7e9403 100644
--- a/lib/fog/google/models/compute/server.rb
+++ b/lib/fog/google/models/compute/server.rb
@@ -4,22 +4,30 @@ require 'net/ssh/proxy/command'
module Fog
module Compute
class Google
-
class Server < Fog::Compute::Server
-
identity :name
- attribute :network_interfaces, :aliases => 'networkInterfaces'
- attribute :network, :aliases => 'network'
- attribute :external_ip, :aliases => 'externalIP'
- attribute :state, :aliases => 'status'
- attribute :zone_name, :aliases => 'zone'
+ attribute :kind
+ attribute :id
+ attribute :can_ip_forward, :aliases => 'canIpForward'
+ attribute :creation_timestamp, :aliases => 'creationTimestamp'
+ attribute :description
+ attribute :disks
attribute :machine_type, :aliases => 'machineType'
- attribute :disks, :aliases => 'disks'
attribute :metadata
+ attribute :network_interfaces, :aliases => 'networkInterfaces'
+ attribute :scheduling
+ attribute :self_link, :aliases => 'selfLink'
attribute :service_accounts, :aliases => 'serviceAccounts'
+ attribute :state, :aliases => 'status'
+ attribute :status_message, :aliases => 'statusMessage'
attribute :tags
- attribute :self_link, :aliases => 'selfLink'
+ attribute :zone, :aliases => :zone_name
+
+ # These attributes are not available in the representation of an 'instance' returned by the GCE API.
+ # They are useful only for the create process
+ attribute :network, :aliases => 'network'
+ attribute :external_ip, :aliases => 'externalIP'
attribute :auto_restart
attribute :on_host_maintenance
@@ -40,6 +48,7 @@ module Fog
def kernel=(args)
Fog::Logger.deprecation("kernel= is no longer used [light_black](#{caller.first})[/]")
end
+
def kernel
Fog::Logger.deprecation("kernel is no longer used [light_black](#{caller.first})[/]")
nil
@@ -55,14 +64,11 @@ module Fog
def destroy(async=true)
requires :name, :zone
- operation = service.delete_server(name, zone)
- if not async
- # wait until "RUNNING" or "DONE" to ensure the operation doesn't
- # fail, raises exception on error
- Fog.wait_for do
- operation = service.get_zone_operation(zone, operation.body["name"])
- operation.body["status"] == "DONE"
- end
+
+ data = service.delete_server(name, zone_name)
+ operation = Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
+ unless async
+ operation.wait_for { ready? }
end
operation
end
@@ -98,18 +104,72 @@ module Fog
ip
end
+ def addresses
+ [private_ip_address, public_ip_address]
+ end
+
+ def attach_disk(disk, options = {})
+ requires :identity, :zone
+
+ data = service.attach_disk(identity, zone_name, disk, options)
+ Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
+ end
+
+ def detach_disk(device_name)
+ requires :identity, :zone
+
+ data = service.detach_disk(identity, zone, device_name)
+ Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
+ end
+
+ def reboot
+ requires :identity, :zone
+
+ data = service.reset_server(identity, zone_name)
+ Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
+ end
+
+ def serial_port_output
+ requires :identity, :zone
+
+ data = service.get_server_serial_port_output(identity, zone_name)
+ data.body['contents']
+ end
+
+ def set_disk_auto_delete(auto_delete, device_name)
+ requires :identity, :zone
+
+ data = service.set_server_disk_auto_delete(identity, zone_name, auto_delete, device_name)
+ Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
+ end
+
+ def set_scheduling(on_host_maintenance, automatic_restart)
+ requires :identity, :zone
+
+ data = service.set_server_scheduling(identity, zone_name, on_host_maintenance, automatic_restart)
+ Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
+ end
+
+ def set_metadata(metadata = {})
+ requires :identity, :zone
+
+ data = service.set_metadata(identity, zone_name, self.metadata['fingerprint'], metadata)
+ Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
+ end
+
+ def set_tags(tags = [])
+ requires :identity, :zone
+
+ data = service.set_tags(identity, zone_name, self.tags['fingerprint'], tags)
+ Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
+ end
+
def ready?
self.state == RUNNING
end
- def zone
- if self.zone_name.is_a? String
- service.get_zone(self.zone_name.split('/')[-1]).body["name"]
- elsif zone_name.is_a? Excon::Response
- service.get_zone(zone_name.body["name"]).body["name"]
- else
- self.zone_name
- end
+ def zone_name
+ zone.nil? ? nil : zone.split('/')[-1]
end
def add_ssh_key username, key
@@ -132,9 +192,8 @@ module Fog
return self.metadata
end
-
def reload
- data = service.get_server(self.name, self.zone).body
+ data = service.get_server(self.name, zone_name).body
self.merge_attributes(data)
end
@@ -160,7 +219,8 @@ module Fog
'serviceAccounts' => service_accounts,
'tags' => tags,
'auto_restart' => auto_restart,
- 'on_host_maintenance' => on_host_maintenance
+ 'on_host_maintenance' => on_host_maintenance,
+ 'can_ip_forward' => can_ip_forward
}.delete_if {|key, value| value.nil?}
if service_accounts
@@ -173,12 +233,11 @@ module Fog
}]
end
- service.insert_server(name, zone_name, options)
- data = service.backoff_if_unfound {service.get_server(self.name, self.zone_name).body}
-
- service.servers.merge_attributes(data)
+ data = service.insert_server(name, zone_name, options)
+ operation = Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
+ operation.wait_for { !pending? }
+ reload
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/servers.rb b/lib/fog/google/models/compute/servers.rb
index b77fab3..cbe8029 100644
--- a/lib/fog/google/models/compute/servers.rb
+++ b/lib/fog/google/models/compute/servers.rb
@@ -4,42 +4,34 @@ require 'fog/google/models/compute/server'
module Fog
module Compute
class Google
-
class Servers < Fog::Collection
-
model Fog::Compute::Google::Server
def all(filters={})
- if filters['zone'].nil?
+ if filters['zone']
+ data = service.list_servers(filters['zone']).body['items'] || []
+ else
data = []
- service.list_zones.body['items'].each do |zone|
- data += service.list_servers(zone['name']).body["items"] || []
+ service.list_aggregated_servers.body['items'].each_value do |zone|
+ data.concat(zone['instances']) if zone['instances']
end
- else
- data = service.list_servers(filters['zone']).body["items"] || []
end
load(data)
end
def get(identity, zone=nil)
response = nil
- if zone.nil?
- service.list_zones.body['items'].each do |zone|
- begin
- response = service.get_server(identity, zone['name'])
- break if response.status == 200
- rescue Fog::Errors::Error
- end
- end
+ if zone
+ response = service.get_server(identity, zone).body
else
- response = service.get_server(identity, zone)
- end
+ servers = service.list_aggregated_servers(:filter => "name eq .*#{identity}").body['items']
+ server = servers.each_value.select { |zone| zone.key?('instances') }
- if response.nil? or response.status != 200
- nil
- else
- new(response.body)
+ # It can only be 1 server with the same name across all regions
+ response = server.first['instances'].first unless server.empty?
end
+ return nil if response.nil?
+ new(response)
rescue Fog::Errors::NotFound
nil
end
diff --git a/lib/fog/google/models/compute/snapshot.rb b/lib/fog/google/models/compute/snapshot.rb
index d99648e..e7f1199 100644
--- a/lib/fog/google/models/compute/snapshot.rb
+++ b/lib/fog/google/models/compute/snapshot.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Google
-
class Snapshot < Fog::Model
-
identity :name
attribute :kind
@@ -44,9 +42,7 @@ module Fog
def resource_url
"#{self.service.project}/global/snapshots/#{name}"
end
-
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/snapshots.rb b/lib/fog/google/models/compute/snapshots.rb
index 030c1e6..89050a0 100644
--- a/lib/fog/google/models/compute/snapshots.rb
+++ b/lib/fog/google/models/compute/snapshots.rb
@@ -4,9 +4,7 @@ require 'fog/google/models/compute/snapshot'
module Fog
module Compute
class Google
-
class Snapshots < Fog::Collection
-
model Fog::Compute::Google::Snapshot
def all
@@ -22,9 +20,7 @@ module Fog
rescue Fog::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/target_http_proxies.rb b/lib/fog/google/models/compute/target_http_proxies.rb
new file mode 100644
index 0000000..c0996eb
--- /dev/null
+++ b/lib/fog/google/models/compute/target_http_proxies.rb
@@ -0,0 +1,22 @@
+require 'fog/core/collection'
+require 'fog/google/models/compute/target_http_proxy'
+
+module Fog
+ module Compute
+ class Google
+ class TargetHttpProxies < Fog::Collection
+ model Fog::Compute::Google::TargetHttpProxy
+
+ def all(filters={})
+ data = service.list_target_http_proxies.body['items'] || []
+ load(data)
+ end
+
+ def get(identity)
+ response = service.get_target_http_proxy(identity)
+ new(response.body) unless response.nil?
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/compute/target_http_proxy.rb b/lib/fog/google/models/compute/target_http_proxy.rb
new file mode 100644
index 0000000..2872ba9
--- /dev/null
+++ b/lib/fog/google/models/compute/target_http_proxy.rb
@@ -0,0 +1,75 @@
+require 'fog/core/model'
+
+module Fog
+ module Compute
+ class Google
+ class TargetHttpProxy < Fog::Model
+ identity :name
+
+ attribute :kind, :aliases => 'kind'
+ attribute :self_link, :aliases => 'selfLink'
+ attribute :id, :aliases => 'id'
+ attribute :creation_timestamp, :aliases => 'creationTimestamp'
+ attribute :description, :aliases => 'description'
+ attribute :urlMap, :aliases => "urlMap"
+
+ def save
+ requires :name
+
+ options = {
+ 'description' => description,
+ 'urlMap' => urlMap
+ }
+
+ data = service.insert_target_http_proxy(name, options).body
+ operation = Fog::Compute::Google::Operations.new(:service => service).get(data['name'], data['zone'])
+ operation.wait_for { !pending? }
+ reload
+ end
+
+ def destroy(async=true)
+ requires :name
+ operation = service.delete_target_http_proxy(name)
+ if not async
+ # wait until "DONE" to ensure the operation doesn't fail, raises
+ # exception on error
+ Fog.wait_for do
+ operation.body["status"] == "DONE"
+ end
+ end
+ operation
+ end
+
+ def set_url_map urlMap
+ operation = service.set_target_http_proxy_url_map(self, urlMap)
+ reload
+ end
+
+ def ready?
+ begin
+ service.get_target_http_proxy(self.name)
+ true
+ rescue Fog::Errors::NotFound
+ false
+ end
+ end
+
+ def reload
+ requires :name
+
+ return unless data = begin
+ collection.get(name)
+ rescue Excon::Errors::SocketError
+ nil
+ end
+
+ new_attributes = data.attributes
+ merge_attributes(new_attributes)
+ self
+ end
+
+ RUNNING_STATE = "READY"
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/compute/target_instance.rb b/lib/fog/google/models/compute/target_instance.rb
new file mode 100644
index 0000000..87235ac
--- /dev/null
+++ b/lib/fog/google/models/compute/target_instance.rb
@@ -0,0 +1,74 @@
+require 'fog/core/model'
+
+module Fog
+ module Compute
+ class Google
+ class TargetInstance < Fog::Model
+ identity :name
+
+ attribute :kind, :aliases => 'kind'
+ attribute :self_link, :aliases => 'selfLink'
+ attribute :id, :aliases => 'id'
+ attribute :creation_timestamp, :aliases => 'creationTimestamp'
+ attribute :description, :aliases => 'description'
+ attribute :zone, :aliases => "zone"
+ attribute :instance, :aliases => "instance"
+ attribute :nat_policy, :aliases => "natPolicy"
+
+ def save
+ requires :name, :zone
+
+ options = {
+ 'description' => description,
+ 'zone' => zone,
+ 'natPolicy' => nat_policy,
+ 'instance' => instance,
+ }
+
+ data = service.insert_target_instance(name, zone, options).body
+ operation = Fog::Compute::Google::Operations.new(:service => service).get(data['name'])
+ operation.wait_for { !pending? }
+ reload
+ end
+
+ def destroy(async=true)
+ requires :name, :zone
+ operation = service.delete_target_instance(name, zone)
+ if not async
+ # wait until "DONE" to ensure the operation doesn't fail, raises
+ # exception on error
+ Fog.wait_for do
+ operation.body["status"] == "DONE"
+ end
+ end
+ operation
+ end
+
+ def ready?
+ begin
+ service.get_target_instance(self.name, self.zone)
+ true
+ rescue Fog::Errors::NotFound
+ false
+ end
+ end
+
+ def reload
+ requires :name, :zone
+
+ return unless data = begin
+ collection.get(name, zone)
+ rescue Excon::Errors::SocketError
+ nil
+ end
+
+ new_attributes = data.attributes
+ merge_attributes(new_attributes)
+ self
+ end
+
+ RUNNING_STATE = "READY"
+ end
+ end
+ end
+ end
diff --git a/lib/fog/google/models/compute/target_instances.rb b/lib/fog/google/models/compute/target_instances.rb
new file mode 100644
index 0000000..799a2a4
--- /dev/null
+++ b/lib/fog/google/models/compute/target_instances.rb
@@ -0,0 +1,28 @@
+require 'fog/core/collection'
+require 'fog/google/models/compute/target_instance'
+
+module Fog
+ module Compute
+ class Google
+ class TargetInstances < Fog::Collection
+ model Fog::Compute::Google::TargetInstance
+
+ def all(zone = nil)
+ if zone.nil?
+ data = []
+ data = service.list_target_instances.body['items'] || []
+
+ else
+ data = service.list_target_instances(zone).body['items'] || []
+ end
+ load(data)
+ end
+
+ def get(identity, zone=nil)
+ response = service.get_target_instance(identity, zone)
+ new(response.body) unless response.nil?
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/compute/target_pool.rb b/lib/fog/google/models/compute/target_pool.rb
index 1aa46ce..f1a267d 100644
--- a/lib/fog/google/models/compute/target_pool.rb
+++ b/lib/fog/google/models/compute/target_pool.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Google
-
class TargetPool < Fog::Model
-
identity :name
attribute :kind, :aliases => 'kind'
@@ -20,7 +18,6 @@ module Fog
attribute :failover_ratio, :aliases => "failoverRatio"
attribute :backup_pool, :aliases => "backupPool"
-
def save
requires :name, :region
@@ -34,10 +31,10 @@ module Fog
'backupPool' => backup_pool
}
- service.insert_target_pool(name, region, options).body
- data = service.backoff_if_unfound {service.get_target_pool(name, region).body}
- merge_attributes(data)
- self
+ data = service.insert_target_pool(name, region, options).body
+ operation = Fog::Compute::Google::Operations.new(:service => service).get(data['name'], nil, data['region'])
+ operation.wait_for { !pending? }
+ reload
end
def destroy(async=true)
@@ -91,6 +88,10 @@ module Fog
end
end
+ def region_name
+ region.nil? ? nil : region.split('/')[-1]
+ end
+
def reload
requires :name, :region
diff --git a/lib/fog/google/models/compute/target_pools.rb b/lib/fog/google/models/compute/target_pools.rb
index cc760f2..f407e23 100644
--- a/lib/fog/google/models/compute/target_pools.rb
+++ b/lib/fog/google/models/compute/target_pools.rb
@@ -4,9 +4,7 @@ require 'fog/google/models/compute/target_pool'
module Fog
module Compute
class Google
-
class TargetPools < Fog::Collection
-
model Fog::Compute::Google::TargetPool
def all(filters={})
@@ -24,9 +22,9 @@ module Fog
def get(identity, region=nil)
response = nil
if region.nil?
- service.list_regions.body['items'].each do |region|
+ service.regions.all.each do |region|
begin
- response = service.get_target_pool(identity, region['name'])
+ response = service.get_target_pool(identity, region.name)
break if response.status == 200
rescue Fog::Errors::Error
end
@@ -37,9 +35,7 @@ module Fog
return nil if response.nil?
new(response.body)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/url_map.rb b/lib/fog/google/models/compute/url_map.rb
new file mode 100644
index 0000000..2740a85
--- /dev/null
+++ b/lib/fog/google/models/compute/url_map.rb
@@ -0,0 +1,95 @@
+require 'fog/core/model'
+
+module Fog
+ module Compute
+ class Google
+ class UrlMap < Fog::Model
+ identity :name
+
+ attribute :kind, :aliases => 'kind'
+ attribute :creationTimestamp, :aliases => 'creation_timestamp'
+ attribute :defaultService, :aliases => 'default_service'
+ attribute :description, :aliases => 'description'
+ attribute :fingerprint, :aliases => 'fingerprint'
+ attribute :hostRules, :aliases => 'host_rules'
+ attribute :id, :aliases => 'id'
+ attribute :pathMatchers, :aliases => 'path_matchers'
+ attribute :self_link, :aliases => 'selfLink'
+ attribute :tests, :aliases => 'tests'
+
+ def save
+ requires :name, :defaultService
+
+ options = {
+ 'defaultService' => defaultService,
+ 'description' => description,
+ 'fingerprint' => fingerprint,
+ 'hostRules' => hostRules,
+ 'pathMatchers' => pathMatchers,
+ 'tests' => tests
+ }
+
+ data = service.insert_url_map(name, options).body
+ operation = Fog::Compute::Google::Operations.new(:service => service).get(data['name'])
+ operation.wait_for { !pending? }
+ reload
+ end
+
+ def destroy(async=true)
+ requires :name
+
+ operation = service.delete_url_map(name)
+ if not async
+ Fog.wait_for do
+ operation = service.get_global_operation(operation.body["name"])
+ operation.body["status"] == "DONE"
+ end
+ end
+ operation
+ end
+
+ def validate
+ service.validate_url_map self
+ end
+
+ def add_host_rules hostRules
+ hostRules= [hostRules] unless hostRules.class == Array
+ service.update_url_map(self, hostRules)
+ reload
+ end
+
+ def add_path_matchers(pathMatchers, hostRules)
+ pathMatchers = [pathMatchers] unless pathMatchers.class == Array
+ hostRules=[hostRules] unless hostRules.class == Array
+ service.update_url_map(self, hostRules, pathMatchers)
+ reload
+ end
+
+ def ready?
+ begin
+ service.get_url_map(self.name)
+ true
+ rescue Fog::Errors::NotFound
+ false
+ end
+ end
+
+ def reload
+ requires :name
+
+ return unless data = begin
+ collection.get(name)
+ rescue Excon::Errors::SocketError
+ nil
+ end
+
+ new_attributes = data.attributes
+ merge_attributes(new_attributes)
+ self
+ end
+
+ RUNNING_STATE ="READY"
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/compute/url_maps.rb b/lib/fog/google/models/compute/url_maps.rb
new file mode 100644
index 0000000..3cc3a19
--- /dev/null
+++ b/lib/fog/google/models/compute/url_maps.rb
@@ -0,0 +1,22 @@
+require 'fog/core/collection'
+require 'fog/google/models/compute/url_map'
+
+module Fog
+ module Compute
+ class Google
+ class UrlMaps < Fog::Collection
+ model Fog::Compute::Google::UrlMap
+
+ def all
+ data = service.list_url_maps.body['items'] || []
+ load(data)
+ end
+
+ def get(identity)
+ response = service.get_url_map(identity)
+ new(response.body) unless response.nil?
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/compute/zone.rb b/lib/fog/google/models/compute/zone.rb
index 5bb042f..8a1f9bf 100644
--- a/lib/fog/google/models/compute/zone.rb
+++ b/lib/fog/google/models/compute/zone.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Google
-
class Zone < Fog::Model
-
identity :name
attribute :description
attribute :status
@@ -19,7 +17,6 @@ module Fog
def up?
self.status == "UP"
end
-
end
end
end
diff --git a/lib/fog/google/models/compute/zones.rb b/lib/fog/google/models/compute/zones.rb
index 15712ab..2f9c85e 100644
--- a/lib/fog/google/models/compute/zones.rb
+++ b/lib/fog/google/models/compute/zones.rb
@@ -4,9 +4,7 @@ require 'fog/google/models/compute/zone'
module Fog
module Compute
class Google
-
class Zones < Fog::Collection
-
model Fog::Compute::Google::Zone
def all
@@ -20,7 +18,6 @@ module Fog
rescue Fog::Errors::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/google/models/monitoring/metric_descriptor.rb b/lib/fog/google/models/monitoring/metric_descriptor.rb
new file mode 100644
index 0000000..5f8826a
--- /dev/null
+++ b/lib/fog/google/models/monitoring/metric_descriptor.rb
@@ -0,0 +1,20 @@
+require 'fog/core/model'
+
+module Fog
+ module Google
+ class Monitoring
+ ##
+ # A metricDescriptor defines the name, label keys, and data type of a particular metric.
+ #
+ # @see https://developers.google.com/cloud-monitoring/v2beta1/metricDescriptors
+ class MetricDescriptor < Fog::Model
+ identity :name
+
+ attribute :description
+ attribute :labels
+ attribute :project
+ attribute :type_descriptor, :aliases => 'typeDescriptor'
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/monitoring/metric_descriptors.rb b/lib/fog/google/models/monitoring/metric_descriptors.rb
new file mode 100644
index 0000000..6034e3a
--- /dev/null
+++ b/lib/fog/google/models/monitoring/metric_descriptors.rb
@@ -0,0 +1,28 @@
+require 'fog/core/collection'
+require 'fog/google/models/monitoring/metric_descriptor'
+
+module Fog
+ module Google
+ class Monitoring
+ class MetricDescriptors < Fog::Collection
+ model Fog::Google::Monitoring::MetricDescriptor
+
+ ##
+ # Lists all Metric Descriptors.
+ #
+ # @param [Hash] options Optional query parameters.
+ # @option options [String] count Maximum number of time series descriptors per page. Used for pagination.
+ # @option options [String] page_token The pagination token, which is used to page through large result sets.
+ # @option options [String] query The query used to search against existing metrics. Separate keywords with a space;
+ # the service joins all keywords with AND, meaning that all keywords must match for a metric to be returned.
+ # If this field is omitted, all metrics are returned. If an empty string is passed with this field,
+ # no metrics are returned.
+ # @return [Array<Fog::Google::Monitoring::MetricDescriptor>] List of Metric Descriptors.
+ def all(options = {})
+ data = service.list_metric_descriptors(options).body['metrics'] || []
+ load(data)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/monitoring/timeseries.rb b/lib/fog/google/models/monitoring/timeseries.rb
new file mode 100644
index 0000000..fe9b495
--- /dev/null
+++ b/lib/fog/google/models/monitoring/timeseries.rb
@@ -0,0 +1,17 @@
+require 'fog/core/model'
+
+module Fog
+ module Google
+ class Monitoring
+ ##
+ # A time series is a collection of data points that represents the value of a metric of a project over time.
+ #
+ # @see https://developers.google.com/cloud-monitoring/v2beta1/timeseries
+ class Timeseries < Fog::Model
+ identity :time_series_desc, :aliases => 'timeseriesDesc'
+
+ attribute :points
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/monitoring/timeseries_collection.rb b/lib/fog/google/models/monitoring/timeseries_collection.rb
new file mode 100644
index 0000000..01f40e9
--- /dev/null
+++ b/lib/fog/google/models/monitoring/timeseries_collection.rb
@@ -0,0 +1,31 @@
+require 'fog/core/collection'
+require 'fog/google/models/monitoring/timeseries'
+
+module Fog
+ module Google
+ class Monitoring
+ class TimeseriesCollection < Fog::Collection
+ model Fog::Google::Monitoring::Timeseries
+
+ ##
+ # Lists all Timeseries.
+ #
+ # @param [String] metric The name of the metric (Metric names are protocol-free URLs).
+ # @param [String] youngest End of the time interval (inclusive), which is expressed as an RFC 3339 timestamp.
+ # @param [Hash] options Optional query parameters.
+ # @option options [String] count Maximum number of time series descriptors per page. Used for pagination.
+ # @option options [String] labels A collection of labels for the matching time series.
+ # @option options [String] oldest Start of the time interval (exclusive), which is expressed as an RFC 3339
+ # timestamp.
+ # @options options [String] page_token The pagination token, which is used to page through large result sets.
+ # @options options [String] timespan Length of the time interval to query, which is an alternative way to
+ # declare the interval.
+ # @return [Array<Fog::Google::Monitoring::Timeseries>] List of Timeseries.
+ def all(metric, youngest, options = {})
+ data = service.list_timeseries(metric, youngest, options).body['timeseries'] || []
+ load(data)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/monitoring/timeseries_descriptor.rb b/lib/fog/google/models/monitoring/timeseries_descriptor.rb
new file mode 100644
index 0000000..550fe7e
--- /dev/null
+++ b/lib/fog/google/models/monitoring/timeseries_descriptor.rb
@@ -0,0 +1,20 @@
+require 'fog/core/model'
+
+module Fog
+ module Google
+ class Monitoring
+ ##
+ # A time series is a collection of data points that represents the value of a metric of a project over time.
+ # The metric is described by the time-series descriptor. Each time-series descriptor is uniquely identified by
+ # its metric name and a set of labels.
+ #
+ # @see https://developers.google.com/cloud-monitoring/v2beta1/timeseriesDescriptors
+ class TimeseriesDescriptor < Fog::Model
+ identity :metric
+
+ attribute :labels
+ attribute :project
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/monitoring/timeseries_descriptors.rb b/lib/fog/google/models/monitoring/timeseries_descriptors.rb
new file mode 100644
index 0000000..59b2464
--- /dev/null
+++ b/lib/fog/google/models/monitoring/timeseries_descriptors.rb
@@ -0,0 +1,31 @@
+require 'fog/core/collection'
+require 'fog/google/models/monitoring/timeseries_descriptor'
+
+module Fog
+ module Google
+ class Monitoring
+ class TimeseriesDescriptors < Fog::Collection
+ model Fog::Google::Monitoring::TimeseriesDescriptor
+
+ ##
+ # Lists all Timeseries Descriptors.
+ #
+ # @param [String] metric The name of the metric (Metric names are protocol-free URLs).
+ # @param [String] youngest End of the time interval (inclusive), which is expressed as an RFC 3339 timestamp.
+ # @param [Hash] options Optional query parameters.
+ # @option options [String] count Maximum number of time series descriptors per page. Used for pagination.
+ # @option options [String] labels A collection of labels for the matching time series.
+ # @option options [String] oldest Start of the time interval (exclusive), which is expressed as an RFC 3339
+ # timestamp.
+ # @options options [String] page_token The pagination token, which is used to page through large result sets.
+ # @options options [String] timespan Length of the time interval to query, which is an alternative way to
+ # declare the interval.
+ # @return [Array<Fog::Google::Monitoring::TimeseriesDescriptor>] List of Timeseries Descriptors.
+ def all(metric, youngest, options = {})
+ data = service.list_timeseries_descriptors(metric, youngest, options).body['timeseries'] || []
+ load(data)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/sql/backup_run.rb b/lib/fog/google/models/sql/backup_run.rb
new file mode 100644
index 0000000..c3998c6
--- /dev/null
+++ b/lib/fog/google/models/sql/backup_run.rb
@@ -0,0 +1,34 @@
+require 'fog/core/model'
+
+module Fog
+ module Google
+ class SQL
+ ##
+ # A database instance backup run resource
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/backupRuns
+ class BackupRun < Fog::Model
+ identity :backup_configuration, :aliases => 'backupConfiguration'
+
+ attribute :due_time, :aliases => 'dueTime'
+ attribute :end_time, :aliases => 'endTime'
+ attribute :enqueued_time, :aliases => 'enqueuedTime'
+ attribute :error
+ attribute :instance
+ attribute :kind
+ attribute :start_time, :aliases => 'startTime'
+ attribute :status
+
+ DONE_STATE = 'DONE'
+
+ ##
+ # Checks if the instance backup run is done
+ #
+ # @return [Boolean] True if the backup run is done; False otherwise
+ def ready?
+ self.state == DONE_STATE
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/sql/backup_runs.rb b/lib/fog/google/models/sql/backup_runs.rb
new file mode 100644
index 0000000..515206f
--- /dev/null
+++ b/lib/fog/google/models/sql/backup_runs.rb
@@ -0,0 +1,38 @@
+require 'fog/core/collection'
+require 'fog/google/models/sql/backup_run'
+
+module Fog
+ module Google
+ class SQL
+ class BackupRuns < Fog::Collection
+ model Fog::Google::SQL::BackupRun
+
+ ##
+ # Lists all backup runs associated with a given instance and configuration
+ #
+ # @param [String] instance_id Instance ID
+ # @param [String] backup_configuration_id Backup Configuration ID
+ # @return [Array<Fog::Google::SQL::BackupRun>] List of Backup run resources
+ def all(instance_id, backup_configuration_id)
+ data = service.list_backup_runs(instance_id, backup_configuration_id).body['items'] || []
+ load(data)
+ end
+
+ ##
+ # Retrieves a resource containing information about a backup run
+ #
+ # @param [String] instance_id Instance ID
+ # @param [String] backup_configuration_id Backup Configuration ID
+ # @param [String] due_time The time when this run is due to start in RFC 3339 format
+ # @return [Fog::Google::SQL::BackupRun] Backup run resource
+ def get(instance_id, backup_configuration_id, due_time)
+ if backup_run = service.get_backup_run(instance_id, backup_configuration_id, due_time).body
+ new(backup_run)
+ end
+ rescue Fog::Errors::NotFound
+ nil
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/sql/flag.rb b/lib/fog/google/models/sql/flag.rb
new file mode 100644
index 0000000..afaaa2a
--- /dev/null
+++ b/lib/fog/google/models/sql/flag.rb
@@ -0,0 +1,22 @@
+require 'fog/core/model'
+
+module Fog
+ module Google
+ class SQL
+ ##
+ # A Google Cloud SQL service flag resource
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/flags
+ class Flag < Fog::Model
+ identity :name
+
+ attribute :allowed_string_values, :aliases => 'allowedStringValues'
+ attribute :applies_to, :aliases => 'appliesTo'
+ attribute :kind
+ attribute :max_value, :aliases => 'maxValue'
+ attribute :min_value, :aliases => 'minValue'
+ attribute :type
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/sql/flags.rb b/lib/fog/google/models/sql/flags.rb
new file mode 100644
index 0000000..faaf399
--- /dev/null
+++ b/lib/fog/google/models/sql/flags.rb
@@ -0,0 +1,21 @@
+require 'fog/core/collection'
+require 'fog/google/models/sql/flag'
+
+module Fog
+ module Google
+ class SQL
+ class Flags < Fog::Collection
+ model Fog::Google::SQL::Flag
+
+ ##
+ # List all available database flags
+ #
+ # @return [Array<Fog::Google::SQL::Flag>] List of flags
+ def all
+ data = service.list_flags.body['items'] || []
+ load(data)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/sql/instance.rb b/lib/fog/google/models/sql/instance.rb
new file mode 100644
index 0000000..90fe0be
--- /dev/null
+++ b/lib/fog/google/models/sql/instance.rb
@@ -0,0 +1,353 @@
+require 'fog/core/model'
+
+module Fog
+ module Google
+ class SQL
+ class Instance < Fog::Model
+ identity :instance
+
+ attribute :current_disk_size, :aliases => 'currentDiskSize'
+ attribute :database_version, :aliases => 'databaseVersion'
+ attribute :etag
+ attribute :ip_addresses, :aliases => 'ipAddresses'
+ attribute :kind
+ attribute :max_disk_size, :aliases => 'maxDiskSize'
+ attribute :project
+ attribute :region
+ attribute :server_ca_cert, :aliases => 'serverCaCert'
+ attribute :settings
+ attribute :state
+
+ # These attributes are not available in the representation of an 'Instance' returned by the Google SQL API.
+ attribute :activation_policy
+ attribute :autorized_gae_applications
+ attribute :backup_configuration
+ attribute :database_flags
+ attribute :ip_configuration_authorized_networks
+ attribute :ip_configuration_enabled
+ attribute :ip_configuration_require_ssl
+ attribute :location_preference_zone_follow_gae_application
+ attribute :location_preference_zone
+ attribute :pricing_plan
+ attribute :replication_type
+ attribute :settings_version
+ attribute :tier
+
+ MAINTENANCE_STATE = 'MAINTENANCE'
+ PENDING_CREATE_STATE = 'PENDING_CREATE'
+ RUNNABLE_STATE = 'RUNNABLE'
+ SUSPENDED_STATE = 'SUSPENDED'
+ UNKNOWN_STATE = 'UNKNOWN_STATE'
+
+ ##
+ # Returns the activation policy for this instance
+ #
+ # @return [String] The activation policy for this instance
+ def activation_policy
+ self.settings['activationPolicy']
+ end
+
+ ##
+ # Returns the AppEngine app ids that can access this instance
+ #
+ # @return [Array<String>] The AppEngine app ids that can access this instance
+ def autorized_gae_applications
+ self.settings['authorizedGaeApplications']
+ end
+
+ ##
+ # Returns the daily backup configuration for the instance
+ #
+ # @return [Array<Hash>] The daily backup configuration for the instance
+ def backup_configuration
+ self.settings['backupConfiguration']
+ end
+
+ ##
+ # Creates a Cloud SQL instance as a clone of the source instance
+ #
+ # @param [String] destination_name Name of the Cloud SQL instance to be created as a clone
+ # @param [Hash] options Method options
+ # @option options [String] :log_filename Name of the binary log file for a Cloud SQL instance
+ # @option options [Integer] :log_position Position (offset) within the binary log file
+ # @option options [Boolean] :async If the operation must be performed asynchronously (true by default)
+ # @return [Fog::Google::SQL::Operation] A Operation resource
+ def clone(destination_name, options = {})
+ requires :identity
+
+ data = service.clone_instance(self.identity, destination_name, options)
+ operation = Fog::Google::SQL::Operations.new(:service => service).get(self.instance, data.body['operation'])
+ unless options.fetch(:async, true)
+ operation.wait_for { ready? }
+ end
+ operation
+ end
+
+ ##
+ # Creates a Cloud SQL instance
+ #
+ # @return [Fog::Google::SQL::Instance] Instance resource
+ def create
+ requires :identity
+
+ data = service.insert_instance(self.identity, self.attributes[:tier], self.attributes)
+ operation = Fog::Google::SQL::Operations.new(:service => service).get(self.instance, data.body['operation'])
+ operation.wait_for { !pending? }
+ reload
+ end
+
+ ##
+ # Returns the database flags passed to the instance at startup
+ #
+ # @return [Array<Hash>] The database flags passed to the instance at startup
+ def database_flags
+ self.settings['databaseFlags']
+ end
+
+ ##
+ # Deletes a Cloud SQL instance
+ #
+ # @param [Hash] options Method options
+ # @option options [Boolean] :async If the operation must be performed asynchronously (true by default)
+ # @return [Fog::Google::SQL::Operation] A Operation resource
+ def destroy(options = {})
+ requires :identity
+
+ data = service.delete_instance(self.identity)
+ operation = Fog::Google::SQL::Operations.new(:service => service).get(self.instance, data.body['operation'])
+ unless options.fetch(:async, true)
+ # DISABLED: A delete instance operation never reachs a 'DONE' state (bug?)
+ # operation.wait_for { ready? }
+ end
+ operation
+ end
+
+ ##
+ # Exports data from a Cloud SQL instance to a Google Cloud Storage bucket as a MySQL dump file
+ #
+ # @param [String] uri The path to the file in Google Cloud Storage where the export will be stored,
+ # or where it was already stored
+ # @param [Hash] options Method options
+ # @option options [Array<String>] :databases Databases (for example, guestbook) from which the export is made.
+ # If unspecified, all databases are exported.
+ # @option options [Array<String>] :tables Tables to export, or that were exported, from the specified database.
+ # If you specify tables, specify one and only one database.
+ # @option options [Boolean] :async If the operation must be performed asynchronously (true by default)
+ # @return [Fog::Google::SQL::Operation] A Operation resource
+ def export(uri, options = {})
+ requires :identity
+
+ data = service.export_instance(self.identity, uri, options)
+ operation = Fog::Google::SQL::Operations.new(:service => service).get(self.instance, data.body['operation'])
+ unless options.fetch(:async, true)
+ operation.wait_for { ready? }
+ end
+ operation
+ end
+
+ ##
+ # Imports data into a Cloud SQL instance from a MySQL dump file in Google Cloud Storage
+ #
+ # @param [Array<String>] uri A path to the MySQL dump file in Google Cloud Storage from which the import is
+ # made
+ # @param [Hash] options Method options
+ # @option options [String] :database The database (for example, guestbook) to which the import is made.
+ # If not set, it is assumed that the database is specified in the file to be imported.
+ # @option options [Boolean] :async If the operation must be performed asynchronously (true by default)
+ # @return [Fog::Google::SQL::Operation] A Operation resource
+ def import(uri, options = {})
+ requires :identity
+
+ data = service.import_instance(self.identity, uri, options)
+ operation = Fog::Google::SQL::Operations.new(:service => service).get(self.instance, data.body['operation'])
+ unless options.fetch(:async, true)
+ operation.wait_for { ready? }
+ end
+ operation
+ end
+
+ ##
+ # Returns the list of external networks that are allowed to connect to the instance using the IP
+ #
+ # @return [Array<String>] The list of external networks that are allowed to connect to the instance using the IP
+ def ip_configuration_authorized_networks
+ self.settings.fetch('ipConfiguration', {})['authorizedNetworks']
+ end
+
+ ##
+ # Returns whether the instance should be assigned an IP address or not
+ #
+ # @return [Boolean] Whether the instance should be assigned an IP address or not
+ def ip_configuration_enabled
+ self.settings.fetch('ipConfiguration', {})['enabled']
+ end
+
+ ##
+ # Returns whether the mysqld should default to 'REQUIRE X509' for users connecting over IP
+ #
+ # @return [Boolean] Whether the mysqld should default to 'REQUIRE X509' for users connecting over IP
+ def ip_configuration_require_ssl
+ self.settings.fetch('ipConfiguration', {})['requireSsl']
+ end
+
+ ##
+ # Returns the AppEngine application to follow
+ #
+ # @return [String] The AppEngine application to follow
+ def location_preference_zone_follow_gae_application
+ self.settings.fetch('locationPreference', {})['followGaeApplication']
+ end
+
+ ##
+ # Returns the preferred Compute Engine zone
+ #
+ # @return [String] The preferred Compute Engine zone
+ def location_preference_zone
+ self.settings.fetch('locationPreference', {})['zone']
+ end
+
+ ##
+ # Returns the pricing plan for this instance
+ #
+ # @return [String] The pricing plan for this instance
+ def pricing_plan
+ self.settings['pricingPlan']
+ end
+
+ ##
+ # Checks if the instance is running
+ #
+ # @return [Boolean] True if the instance is running; False otherwise
+ def ready?
+ self.state == RUNNABLE_STATE
+ end
+
+ ##
+ # Returns the type of replication this instance uses
+ #
+ # @return [String] The type of replication this instance uses
+ def replication_type
+ self.settings['replicationType']
+ end
+
+ ##
+ # Deletes all client certificates and generates a new server SSL certificate for the instance
+ #
+ # @param [Hash] options Method options
+ # @option options [Boolean] :async If the operation must be performed asynchronously (true by default)
+ # @return [Fog::Google::SQL::Operation] A Operation resource
+ def reset_ssl_config(options = {})
+ requires :identity
+
+ data = service.reset_instance_ssl_config(self.identity)
+ operation = Fog::Google::SQL::Operations.new(:service => service).get(self.instance, data.body['operation'])
+ unless options.fetch(:async, true)
+ operation.wait_for { ready? }
+ end
+ operation
+ end
+
+ ##
+ # Restarts a Cloud SQL instance
+ #
+ # @param [Hash] options Method options
+ # @option options [Boolean] :async If the operation must be performed asynchronously (true by default)
+ # @return [Fog::Google::SQL::Operation] A Operation resource
+ def restart(options = {})
+ requires :identity
+
+ data = service.restart_instance(self.identity)
+ operation = Fog::Google::SQL::Operations.new(:service => service).get(self.instance, data.body['operation'])
+ unless options.fetch(:async, true)
+ operation.wait_for { ready? }
+ end
+ operation
+ end
+
+ ##
+ # Restores a backup of a Cloud SQL instance
+ #
+ # @param [String] backup_configuration The identifier of the backup configuration
+ # @param [String] due_time The time when this run is due to start in RFC 3339 format
+ # @param [Hash] options Method options
+ # @option options [Boolean] :async If the operation must be performed asynchronously (true by default)
+ # @return [Fog::Google::SQL::Operation] A Operation resource
+ def restore_backup(backup_configuration, due_time, options = {})
+ requires :identity
+
+ data = service.restore_instance_backup(self.identity, backup_configuration, due_time)
+ operation = Fog::Google::SQL::Operations.new(:service => service).get(self.instance, data.body['operation'])
+ unless options.fetch(:async, true)
+ operation.wait_for { ready? }
+ end
+ operation
+ end
+
+ ##
+ # Saves a Cloud SQL instance
+ #
+ # @return [Fog::Google::SQL::Instance] Instance resource
+ def save
+ self.etag ? update : create
+ end
+
+ ##
+ # Sets the password for the root user
+ #
+ # @param [String] password The password for the root user
+ # @param [Hash] options Method options
+ # @option options [Boolean] :async If the operation must be performed asynchronously (true by default)
+ # @return [Fog::Google::SQL::Operation] A Operation resource
+ def set_root_password(password, options = {})
+ requires :identity
+
+ data = service.set_instance_root_password(self.identity, password)
+ operation = Fog::Google::SQL::Operations.new(:service => service).get(self.instance, data.body['operation'])
+ unless options.fetch(:async, true)
+ operation.wait_for { ready? }
+ end
+ operation
+ end
+
+ ##
+ # Returns the version of instance settings
+ #
+ # @return [String] The version of instance settings
+ def settings_version
+ self.settings['settingsVersion']
+ end
+
+ ##
+ # Lists all of the current SSL certificates for the instance
+ #
+ # @return [Array<Fog::Google::SQL::SslCert>] List of SSL certificate resources
+ def ssl_certs
+ requires :identity
+
+ service.ssl_certs.all(self.identity)
+ end
+
+ ##
+ # Returns the tier of service for this instance
+ #
+ # @return [String] The tier of service for this instance
+ def tier
+ self.settings['tier']
+ end
+
+ ##
+ # Updates settings of a Cloud SQL instance
+ #
+ # @return [Fog::Google::SQL::Instance] Instance resource
+ def update
+ requires :identity
+
+ data = service.update_instance(self.identity, self.settings_version, self.tier, self.attributes)
+ operation = Fog::Google::SQL::Operations.new(:service => service).get(self.instance, data.body['operation'])
+ operation.wait_for { !pending? }
+ reload
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/sql/instances.rb b/lib/fog/google/models/sql/instances.rb
new file mode 100644
index 0000000..b822280
--- /dev/null
+++ b/lib/fog/google/models/sql/instances.rb
@@ -0,0 +1,39 @@
+require 'fog/core/collection'
+require 'fog/google/models/sql/instance'
+
+module Fog
+ module Google
+ class SQL
+ class Instances < Fog::Collection
+ model Fog::Google::SQL::Instance
+
+ ##
+ # Lists all instance
+ #
+ # @return [Array<Fog::Google::SQL::Instance>] List of instance resources
+ def all
+ data = service.list_instances.body['items'] || []
+ load(data)
+ end
+
+ ##
+ # Retrieves an instance
+ #
+ # @param [String] instance_id Instance ID
+ # @return [Fog::Google::SQL::Instance] Instance resource
+ def get(instance_id)
+ if instance = service.get_instance(instance_id).body
+ new(instance)
+ end
+ rescue Fog::Errors::NotFound
+ nil
+ rescue Fog::Errors::Error => e
+ # Google SQL returns a 403 if we try to access a non-existing resource
+ # The default behaviour in Fog is to return a nil
+ return nil if e.message == 'The client is not authorized to make this request.'
+ raise e
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/sql/operation.rb b/lib/fog/google/models/sql/operation.rb
new file mode 100644
index 0000000..89cec57
--- /dev/null
+++ b/lib/fog/google/models/sql/operation.rb
@@ -0,0 +1,61 @@
+require 'fog/core/model'
+
+module Fog
+ module Google
+ class SQL
+ ##
+ # An Operation resource contains information about database instance operations
+ # such as create, delete, and restart
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/operations
+ class Operation < Fog::Model
+ identity :operation
+
+ attribute :end_time, :aliases => 'endTime'
+ attribute :enqueued_time, :aliases => 'enqueuedTime'
+ attribute :error
+ attribute :export_context, :aliases => 'exportContext'
+ attribute :import_context, :aliases => 'importContext'
+ attribute :instance
+ attribute :kind
+ attribute :operation_type, :aliases => 'operationType'
+ attribute :start_time, :aliases => 'startTime'
+ attribute :state
+ attribute :user_email_address, :aliases => 'userEmailAddress'
+
+ DONE_STATE = 'DONE'
+ PENDING_STATE = 'PENDING'
+ RUNNING_STATE = 'RUNNING'
+ UNKNOWN_STATE = 'UNKNOWN'
+
+ ##
+ # Checks if the instance operation is pending
+ #
+ # @return [Boolean] True if the operation is pending; False otherwise
+ def pending?
+ self.state == PENDING_STATE
+ end
+
+ ##
+ # Checks if the instance operation is done
+ #
+ # @return [Boolean] True if the operation is done; False otherwise
+ def ready?
+ self.state == DONE_STATE
+ end
+
+ ##
+ # Reloads an instance operation
+ #
+ # @return [Fog::Google::SQL::Operation] Instance operation resource
+ def reload
+ requires :identity
+
+ data = collection.get(self.instance, self.identity)
+ merge_attributes(data.attributes)
+ self
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/sql/operations.rb b/lib/fog/google/models/sql/operations.rb
new file mode 100644
index 0000000..21069a5
--- /dev/null
+++ b/lib/fog/google/models/sql/operations.rb
@@ -0,0 +1,49 @@
+require 'fog/core/collection'
+require 'fog/google/models/sql/operation'
+
+module Fog
+ module Google
+ class SQL
+ class Operations < Fog::Collection
+ model Fog::Google::SQL::Operation
+
+ ##
+ # Lists all instance operations that have been performed on the given instance
+ #
+ # @param [String] instance_id Instance ID
+ # @return [Array<Fog::Google::SQL::Operation>] List of instance operation resources
+ def all(instance_id)
+ data = []
+ begin
+ data = service.list_operations(instance_id).body['items'] || []
+ rescue Fog::Errors::Error => e
+ # Google SQL returns a 403 if we try to access a non-existing resource
+ # The default behaviour in Fog is to return an empty Array
+ raise e unless e.message == 'The client is not authorized to make this request.'
+ end
+
+ load(data)
+ end
+
+ ##
+ # Retrieves an instance operation that has been performed on an instance
+ #
+ # @param [String] instance_id Instance ID
+ # @param [String] operation_id Instance operation ID
+ # @return [Fog::Google::SQL::Operation] Instance operation resource
+ def get(instance_id, operation_id)
+ if operation = service.get_operation(instance_id, operation_id).body
+ new(operation)
+ end
+ rescue Fog::Errors::NotFound
+ nil
+ rescue Fog::Errors::Error => e
+ # Google SQL returns a 403 if we try to access a non-existing resource
+ # The default behaviour in Fog is to return a nil
+ return nil if e.message == 'The client is not authorized to make this request.'
+ raise e
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/sql/ssl_cert.rb b/lib/fog/google/models/sql/ssl_cert.rb
new file mode 100644
index 0000000..2c37932
--- /dev/null
+++ b/lib/fog/google/models/sql/ssl_cert.rb
@@ -0,0 +1,73 @@
+require 'fog/core/model'
+
+module Fog
+ module Google
+ class SQL
+ ##
+ # A SSL certificate resource
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/sslCerts
+ class SslCert < Fog::Model
+ identity :sha1_fingerprint, :aliases => 'sha1Fingerprint'
+
+ attribute :cert
+ attribute :cert_serial_number, :aliases => 'certSerialNumber'
+ attribute :common_name, :aliases => 'commonName'
+ attribute :create_time, :aliases => 'createTime'
+ attribute :expiration_time, :aliases => 'expirationTime'
+ attribute :instance
+ attribute :kind
+
+ # These attributes are not available in the representation of a 'SSL Certificate' returned by the SQL API.
+ # These attributes are only available as a reponse to a create operation
+ attribute :server_ca_cert, :aliases => 'serverCaCert'
+ attribute :cert_private_key, :aliases => 'certPrivateKey'
+
+ ##
+ # Deletes a SSL certificate. The change will not take effect until the instance is restarted.
+ #
+ # @param [Hash] options Method options
+ # @option options [Boolean] :async If the operation must be performed asynchronously (true by default)
+ # @return [Fog::Google::SQL::Operation] A Operation resource
+ def destroy(options = {})
+ requires :instance, :identity
+
+ data = service.delete_ssl_cert(self.instance, self.identity)
+ operation = Fog::Google::SQL::Operations.new(:service => service).get(self.instance, data.body['operation'])
+ unless options.fetch(:async, true)
+ operation.wait_for { ready? }
+ end
+ operation
+ end
+
+ ##
+ # Reloads a SSL certificate
+ #
+ # @return [Fog::Google::SQL::SslCert] SSL certificate resource
+ def reload
+ requires :instance, :identity
+
+ data = collection.get(self.instance, self.identity)
+ merge_attributes(data.attributes)
+ self
+ end
+
+ ##
+ # Creates a SSL certificate. The new certificate will not be usable until the instance is restarted.
+ #
+ # @raise [Fog::Errors::Error] If SSL certificate already exists
+ def save
+ requires :instance, :common_name
+
+ raise Fog::Errors::Error.new('Resaving an existing object may create a duplicate') if persisted?
+
+ data = service.insert_ssl_cert(self.instance, self.common_name).body
+ merge_attributes(data['clientCert']['certInfo'])
+ self.server_ca_cert = Fog::Google::SQL::SslCert.new(data['serverCaCert'])
+ self.cert_private_key = data['clientCert']['certPrivateKey']
+ self
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/sql/ssl_certs.rb b/lib/fog/google/models/sql/ssl_certs.rb
new file mode 100644
index 0000000..67fbeb7
--- /dev/null
+++ b/lib/fog/google/models/sql/ssl_certs.rb
@@ -0,0 +1,49 @@
+require 'fog/core/collection'
+require 'fog/google/models/sql/ssl_cert'
+
+module Fog
+ module Google
+ class SQL
+ class SslCerts < Fog::Collection
+ model Fog::Google::SQL::SslCert
+
+ ##
+ # Lists all of the current SSL certificates for the instance
+ #
+ # @param [String] instance_id Instance ID
+ # @return [Array<Fog::Google::SQL::SslCert>] List of SSL certificate resources
+ def all(instance_id)
+ data = []
+ begin
+ data = service.list_ssl_certs(instance_id).body['items'] || []
+ rescue Fog::Errors::Error => e
+ # Google SQL returns a 403 if we try to access a non-existing resource
+ # The default behaviour in Fog is to return an empty Array
+ raise e unless e.message == 'The client is not authorized to make this request.'
+ end
+
+ load(data)
+ end
+
+ ##
+ # Retrieves a particular SSL certificate (does not include the private key)
+ #
+ # @param [String] instance_id Instance ID
+ # @param [String] sha1_fingerprint Sha1 FingerPrint
+ # @return [Fog::Google::SQL::SslCert] SSL certificate resource
+ def get(instance_id, sha1_fingerprint)
+ if ssl_cert = service.get_ssl_cert(instance_id, sha1_fingerprint).body
+ new(ssl_cert)
+ end
+ rescue Fog::Errors::NotFound
+ nil
+ rescue Fog::Errors::Error => e
+ # Google SQL returns a 403 if we try to access a non-existing resource
+ # The default behaviour in Fog is to return a nil
+ return nil if e.message == 'The client is not authorized to make this request.'
+ raise e
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/sql/tier.rb b/lib/fog/google/models/sql/tier.rb
new file mode 100644
index 0000000..2374b31
--- /dev/null
+++ b/lib/fog/google/models/sql/tier.rb
@@ -0,0 +1,20 @@
+require 'fog/core/model'
+
+module Fog
+ module Google
+ class SQL
+ ##
+ # A Google Cloud SQL service tier resource
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/tiers
+ class Tier < Fog::Model
+ identity :tier
+
+ attribute :disk_quota, :aliases => 'DiskQuota'
+ attribute :kind
+ attribute :ram, :aliases => 'RAM'
+ attribute :region
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/sql/tiers.rb b/lib/fog/google/models/sql/tiers.rb
new file mode 100644
index 0000000..d94e1c1
--- /dev/null
+++ b/lib/fog/google/models/sql/tiers.rb
@@ -0,0 +1,21 @@
+require 'fog/core/collection'
+require 'fog/google/models/sql/tier'
+
+module Fog
+ module Google
+ class SQL
+ class Tiers < Fog::Collection
+ model Fog::Google::SQL::Tier
+
+ ##
+ # Lists all available service tiers
+ #
+ # @return [Array<Fog::Google::SQL::Tier>] List of tiers
+ def all
+ data = service.list_tiers.body['items'] || []
+ load(data)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/models/storage/directories.rb b/lib/fog/google/models/storage/directories.rb
index bba238a..6112db6 100644
--- a/lib/fog/google/models/storage/directories.rb
+++ b/lib/fog/google/models/storage/directories.rb
@@ -4,9 +4,7 @@ require 'fog/google/models/storage/directory'
module Fog
module Storage
class Google
-
class Directories < Fog::Collection
-
model Fog::Storage::Google::Directory
def all
@@ -35,9 +33,7 @@ module Fog
rescue Excon::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/google/models/storage/directory.rb b/lib/fog/google/models/storage/directory.rb
index a80f2cc..9e0cbde 100644
--- a/lib/fog/google/models/storage/directory.rb
+++ b/lib/fog/google/models/storage/directory.rb
@@ -4,9 +4,7 @@ require 'fog/google/models/storage/files'
module Fog
module Storage
class Google
-
class Directory < Fog::Model
-
identity :key, :aliases => ['Name', 'name']
attribute :creation_date, :aliases => 'CreationDate'
@@ -47,7 +45,7 @@ module Fog
def public_url
requires :key
- if service.get_bucket_acl(key).body['AccessControlList'].detect {|entry| entry['Scope']['type'] == 'AllUsers' && entry['Permission'] == 'READ'}
+ if service.get_bucket_acl(key).body['AccessControlList'].find {|entry| entry['Scope']['type'] == 'AllUsers' && entry['Permission'] == 'READ'}
if key.to_s =~ /^(?:[a-z]|\d(?!\d{0,2}(?:\.\d{1,3}){3}$))(?:[a-z0-9]|\.(?![\.\-])|\-(?![\.])){1,61}[a-z0-9]$/
"https://#{key}.storage.googleapis.com"
else
@@ -70,9 +68,7 @@ module Fog
service.put_bucket(key, options)
true
end
-
end
-
end
end
end
diff --git a/lib/fog/google/models/storage/file.rb b/lib/fog/google/models/storage/file.rb
index d8317c4..200d906 100644
--- a/lib/fog/google/models/storage/file.rb
+++ b/lib/fog/google/models/storage/file.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Storage
class Google
-
class File < Fog::Model
-
identity :key, :aliases => 'Key'
attribute :cache_control, :aliases => 'Cache-Control'
@@ -94,7 +92,7 @@ module Fog
requires :directory, :key
acl = service.get_object_acl(directory.key, key).body['AccessControlList']
- access_granted = acl.detect do |entry|
+ access_granted = acl.find do |entry|
entry['Scope']['type'] == 'AllUsers' && entry['Permission'] == 'READ'
end
@@ -140,9 +138,7 @@ module Fog
def directory=(new_directory)
@directory = new_directory
end
-
end
-
end
end
end
diff --git a/lib/fog/google/models/storage/files.rb b/lib/fog/google/models/storage/files.rb
index 7b335d0..7a33c2e 100644
--- a/lib/fog/google/models/storage/files.rb
+++ b/lib/fog/google/models/storage/files.rb
@@ -4,7 +4,6 @@ require 'fog/google/models/storage/file'
module Fog
module Storage
class Google
-
class Files < Fog::Collection
extend Fog::Deprecation
deprecate :get_url, :get_https_url
@@ -41,7 +40,7 @@ module Fog
end
end
- alias :each_file_this_page :each
+ alias_method :each_file_this_page, :each
def each
if !block_given?
self
@@ -61,7 +60,11 @@ module Fog
def get(key, options = {}, &block)
requires :directory
data = service.get_object(directory.key, key, options, &block)
- file_data = data.headers.merge({
+ file_data = {}
+ data.headers.each do |key, value|
+ file_data[key] = value
+ end
+ file_data.merge({
:body => data.body,
:key => key
})
@@ -95,9 +98,7 @@ module Fog
requires :directory
super({ :directory => directory }.merge(attributes))
end
-
end
-
end
end
end
diff --git a/lib/fog/google/monitoring.rb b/lib/fog/google/monitoring.rb
new file mode 100644
index 0000000..de68bfb
--- /dev/null
+++ b/lib/fog/google/monitoring.rb
@@ -0,0 +1,89 @@
+require 'fog/google/core'
+
+module Fog
+ module Google
+ class Monitoring < Fog::Service
+ requires :google_project
+ recognizes :google_client_email, :google_key_location, :google_key_string, :google_client,
+ :app_name, :app_version
+
+ GOOGLE_MONITORING_API_VERSION = 'v2beta1'
+ GOOGLE_MONITORING_BASE_URL = 'https://www.googleapis.com/cloudmonitoring/'
+ GOOGLE_MONITORING_API_SCOPE_URLS = %w(https://www.googleapis.com/auth/monitoring.readonly)
+
+ ##
+ # MODELS
+ model_path 'fog/google/models/monitoring'
+
+ # Timeseries
+ model :timeseries
+ collection :timeseries_collection
+
+ # TimeseriesDescriptors
+ model :timeseries_descriptor
+ collection :timeseries_descriptors
+
+ # MetricDescriptors
+ model :metric_descriptor
+ collection :metric_descriptors
+
+ ##
+ # REQUESTS
+ request_path 'fog/google/requests/monitoring'
+
+ # Timeseries
+ request :list_timeseries
+
+ # TimeseriesDescriptors
+ request :list_timeseries_descriptors
+
+ # MetricDescriptors
+ request :list_metric_descriptors
+
+ class Mock
+ include Fog::Google::Shared
+
+ def initialize(options)
+ shared_initialize(options[:google_project], GOOGLE_MONITORING_API_VERSION, GOOGLE_MONITORING_BASE_URL)
+ end
+
+ def self.data
+ @data ||= Hash.new do |hash, key|
+ hash[key] = {
+ :timeseries => {},
+ :timeseries_descriptors => {},
+ :metric_descriptors => {},
+ }
+ end
+ end
+
+ def self.reset
+ @data = nil
+ end
+
+ def data
+ self.class.data[project]
+ end
+
+ def reset_data
+ self.class.data.delete(project)
+ end
+ end
+
+ class Real
+ include Fog::Google::Shared
+
+ attr_accessor :client
+ attr_reader :monitoring
+
+ def initialize(options)
+ shared_initialize(options[:google_project], GOOGLE_MONITORING_API_VERSION, GOOGLE_MONITORING_BASE_URL)
+ options.merge!(:google_api_scope_url => GOOGLE_MONITORING_API_SCOPE_URLS.join(' '))
+
+ @client = initialize_google_client(options)
+ @monitoring = @client.discovered_api('cloudmonitoring', api_version)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/parsers/storage/access_control_list.rb b/lib/fog/google/parsers/storage/access_control_list.rb
index 75811a8..b2f4e1e 100644
--- a/lib/fog/google/parsers/storage/access_control_list.rb
+++ b/lib/fog/google/parsers/storage/access_control_list.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module Google
-
class AccessControlList < Fog::Parsers::Base
-
def reset
@in_entries = false
@entry = { 'Scope' => {} }
@@ -39,9 +37,7 @@ module Fog
@entry[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/google/parsers/storage/copy_object.rb b/lib/fog/google/parsers/storage/copy_object.rb
index e127bcb..6b84f5a 100644
--- a/lib/fog/google/parsers/storage/copy_object.rb
+++ b/lib/fog/google/parsers/storage/copy_object.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module Google
-
class CopyObject < Fog::Parsers::Base
-
def end_element(name)
case name
when 'ETag'
@@ -13,9 +11,7 @@ module Fog
@response[name] = Time.parse(value)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/google/parsers/storage/get_bucket.rb b/lib/fog/google/parsers/storage/get_bucket.rb
index 1eb57c9..be29249 100644
--- a/lib/fog/google/parsers/storage/get_bucket.rb
+++ b/lib/fog/google/parsers/storage/get_bucket.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module Google
-
class GetBucket < Fog::Parsers::Base
-
def reset
@object = { 'Owner' => {} }
@response = { 'Contents' => [], 'CommonPrefixes' => [] }
@@ -53,9 +51,7 @@ module Fog
@object[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/google/parsers/storage/get_bucket_logging.rb b/lib/fog/google/parsers/storage/get_bucket_logging.rb
index 82d738e..65f1c87 100644
--- a/lib/fog/google/parsers/storage/get_bucket_logging.rb
+++ b/lib/fog/google/parsers/storage/get_bucket_logging.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module Google
-
class AccessControlList < Fog::Parsers::Base
-
def reset
@grant = { 'Grantee' => {} }
@response = { 'BucketLoggingStatus' => {} }
@@ -31,9 +29,7 @@ module Fog
@grant['Grantee'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/google/parsers/storage/get_bucket_object_versions.rb b/lib/fog/google/parsers/storage/get_bucket_object_versions.rb
index 641c2eb..289caa7 100644
--- a/lib/fog/google/parsers/storage/get_bucket_object_versions.rb
+++ b/lib/fog/google/parsers/storage/get_bucket_object_versions.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module Google
-
class GetBucketObjectVersions < Fog::Parsers::Base
-
def reset
@delete_marker = { 'Owner' => {} }
@version = { 'Owner' => {} }
@@ -79,9 +77,7 @@ module Fog
end[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/google/parsers/storage/get_bucket_versioning.rb b/lib/fog/google/parsers/storage/get_bucket_versioning.rb
index ba0a4ad..e54e621 100644
--- a/lib/fog/google/parsers/storage/get_bucket_versioning.rb
+++ b/lib/fog/google/parsers/storage/get_bucket_versioning.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module Google
-
class GetBucketVersioning < Fog::Parsers::Base
-
def reset
@response = { 'VersioningConfiguration' => {} }
end
@@ -15,9 +13,7 @@ module Fog
@response['VersioningConfiguration'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/google/parsers/storage/get_request_payment.rb b/lib/fog/google/parsers/storage/get_request_payment.rb
index 27e7b8d..a726d5c 100644
--- a/lib/fog/google/parsers/storage/get_request_payment.rb
+++ b/lib/fog/google/parsers/storage/get_request_payment.rb
@@ -2,18 +2,14 @@ module Fog
module Parsers
module Storage
module Google
-
class GetRequestPayment < Fog::Parsers::Base
-
def end_element(name)
case name
when 'Payer'
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/google/parsers/storage/get_service.rb b/lib/fog/google/parsers/storage/get_service.rb
index c31b943..8d96d86 100644
--- a/lib/fog/google/parsers/storage/get_service.rb
+++ b/lib/fog/google/parsers/storage/get_service.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module Google
-
class GetService < Fog::Parsers::Base
-
def reset
@bucket = {}
@response = { 'Owner' => {}, 'Buckets' => [] }
@@ -23,9 +21,7 @@ module Fog
@bucket[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/add_backend_service_backends.rb b/lib/fog/google/requests/compute/add_backend_service_backends.rb
new file mode 100644
index 0000000..b9f99b1
--- /dev/null
+++ b/lib/fog/google/requests/compute/add_backend_service_backends.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def add_backend_service_backends(backend_service, new_backends)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def add_backend_service_backends(backend_service, new_backends)
+ api_method = @compute.backend_services.patch
+ parameters = {
+ 'project' => @project,
+ 'backendService' => backend_service.name,
+ }
+ if backend_service.backends then
+ backend_service.backends.concat(new_backends)
+ else
+ backend_service.backends = new_backends
+ end
+ body_object = backend_service
+
+ request(api_method, parameters, body_object)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/add_region_view_resources.rb b/lib/fog/google/requests/compute/add_region_view_resources.rb
new file mode 100644
index 0000000..9bc8e10
--- /dev/null
+++ b/lib/fog/google/requests/compute/add_region_view_resources.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def add_region_view_resources(region_view, resources)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def add_region_view_resources(region_view, resources, region)
+ api_method = @resourceviews.region_views.add_resources
+ parameters = {
+ 'projectName' => @project,
+ 'resourceViewName' => region_view,
+ 'region' => region
+ }
+ body = {
+ 'resources' => resources
+ }
+
+ request(api_method, parameters, body_object=body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/add_server_access_config.rb b/lib/fog/google/requests/compute/add_server_access_config.rb
new file mode 100644
index 0000000..41a8eab
--- /dev/null
+++ b/lib/fog/google/requests/compute/add_server_access_config.rb
@@ -0,0 +1,32 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def add_server_access_config(identity, zone, nic, options = {})
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def add_server_access_config(identity, zone, nic, options = {})
+ api_method = @compute.instances.add_access_config
+ parameters = {
+ 'project' => @project,
+ 'instance' => identity,
+ 'zone' => zone.split('/')[-1],
+ 'networkInterface' => nic,
+ }
+
+ body_object = {
+ 'type' => 'ONE_TO_ONE_NAT',
+ }
+
+ body_object['name'] = options[:name] ? options[:name] : 'External NAT'
+ body_object['natIP'] = options[:address] if options[:address]
+
+ request(api_method, parameters, body_object)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/add_target_pool_health_checks.rb b/lib/fog/google/requests/compute/add_target_pool_health_checks.rb
index e2e723b..07a1bc5 100644
--- a/lib/fog/google/requests/compute/add_target_pool_health_checks.rb
+++ b/lib/fog/google/requests/compute/add_target_pool_health_checks.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def add_target_pool_health_checks(target_pool, health_checks)
Fog::Mock.not_implemented
end
-
end
class Real
-
def add_target_pool_health_checks(target_pool, health_checks)
api_method = @compute.target_pools.add_health_check
parameters = {
@@ -20,15 +16,12 @@ module Fog
'region' => target_pool.region.split('/')[-1]
}
body = {
- 'healthChecks' => health_checks.collect { |i| { 'healthCheck' => i } }
+ 'healthChecks' => health_checks.map { |i| { 'healthCheck' => i } }
}
- result = self.build_result(api_method, parameters, body_object=body)
- self.build_response(result)
+ request(api_method, parameters, body_object=body)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/add_target_pool_instances.rb b/lib/fog/google/requests/compute/add_target_pool_instances.rb
index 5a0924d..f8424a1 100644
--- a/lib/fog/google/requests/compute/add_target_pool_instances.rb
+++ b/lib/fog/google/requests/compute/add_target_pool_instances.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def add_target_pool_instances(target_pool, instances)
Fog::Mock.not_implemented
end
-
end
class Real
-
def add_target_pool_instances(target_pool, instances)
api_method = @compute.target_pools.add_instance
parameters = {
@@ -20,15 +16,12 @@ module Fog
'region' => target_pool.region.split('/')[-1]
}
body = {
- 'instances' => instances.collect { |i| { 'instance' => i } }
+ 'instances' => instances.map { |i| { 'instance' => i } }
}
- result = self.build_result(api_method, parameters, body_object=body)
- self.build_response(result)
+ request(api_method, parameters, body_object=body)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/add_url_map_host_rules.rb b/lib/fog/google/requests/compute/add_url_map_host_rules.rb
new file mode 100644
index 0000000..ae18894
--- /dev/null
+++ b/lib/fog/google/requests/compute/add_url_map_host_rules.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def add_url_map_host_rules(url_map, host_rules)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def add_url_map_host_rules(url_map, host_rules)
+ api_method = @compute.url_maps.update
+ parameters = {
+ 'project' => @project,
+ 'urlMap' => url_map.name
+ }
+ if url_map.hostRules then url_map.hostRules.concat( host_rules) else url_map.hostRules = host_rules end
+ body = url_map
+
+ request(api_method, parameters, body_object=body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/add_url_map_path_matchers.rb b/lib/fog/google/requests/compute/add_url_map_path_matchers.rb
new file mode 100644
index 0000000..396a15a
--- /dev/null
+++ b/lib/fog/google/requests/compute/add_url_map_path_matchers.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def add_url_map_path_matchers(url_map, path_matchers)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def add_url_map_path_matchers(url_map, path_matchers)
+ api_method = @compute.url_maps.update
+ parameters = {
+ 'project' => @project,
+ 'urlMap' => url_map.name
+ }
+
+ if url_map.pathMatchers then
+ url_map.pathMatchers.concat(path_matchers)
+ else
+ url_map.pathMatchers = path_matchers
+ end
+
+ request(api_method, parameters, body_object=url_map)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/add_zone_view_resources.rb b/lib/fog/google/requests/compute/add_zone_view_resources.rb
new file mode 100644
index 0000000..db81268
--- /dev/null
+++ b/lib/fog/google/requests/compute/add_zone_view_resources.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def add_zone_view_resources(zone_view, resources)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def add_zone_view_resources(zone_view, resources, zone)
+ api_method = @resourceviews.zone_views.addresources
+ parameters = {
+ 'projectName' => @project,
+ 'resourceViewName' => zone_view.name,
+ 'zone' => zone
+ }
+ body = {
+ 'resources' => resources
+ }
+
+ request(api_method, parameters, body_object=body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/attach_disk.rb b/lib/fog/google/requests/compute/attach_disk.rb
index e7a3aea..282f1ac 100644
--- a/lib/fog/google/requests/compute/attach_disk.rb
+++ b/lib/fog/google/requests/compute/attach_disk.rb
@@ -1,27 +1,32 @@
module Fog
module Compute
class Google
-
class Mock
- def attach_disk(instance, zone, deviceName)
+ def attach_disk(instance, zone, source, options = {})
Fog::Mock.not_implemented
end
end
class Real
-
- def attach_disk(instance, zone, deviceName)
+ def attach_disk(instance, zone, source, options = {})
api_method = @compute.instances.attach_disk
parameters = {
'project' => @project,
'instance' => instance,
- 'zone' => zone
+ 'zone' => zone.split('/')[-1],
}
+
+ writable = options.delete(:writable)
body_object = {
- "deviceName" => deviceName
+ 'type' => 'PERSISTENT',
+ 'source' => source,
+ 'mode' => writable ? 'READ_WRITE' : 'READ_ONLY',
+ 'deviceName' => options.delete(:deviceName),
+ 'boot' => options.delete(:boot),
+ 'autoDelete' => options.delete(:autoDelete),
}
- result = self.build_result(api_method, parameters, body_object=body_object)
- response = self.build_response(result)
+
+ request(api_method, parameters, body_object)
end
end
end
diff --git a/lib/fog/google/requests/compute/delete_address.rb b/lib/fog/google/requests/compute/delete_address.rb
index 9cef11f..21fb387 100644
--- a/lib/fog/google/requests/compute/delete_address.rb
+++ b/lib/fog/google/requests/compute/delete_address.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def delete_address(address_name, region_name)
Fog::Mock.not_implemented
end
-
end
class Real
-
def delete_address(address_name, region_name)
api_method = @compute.addresses.delete
parameters = {
@@ -20,12 +16,9 @@ module Fog
'region' => region_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/delete_backend_service.rb b/lib/fog/google/requests/compute/delete_backend_service.rb
new file mode 100644
index 0000000..ff92b6b
--- /dev/null
+++ b/lib/fog/google/requests/compute/delete_backend_service.rb
@@ -0,0 +1,43 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def delete_backend_service(backend_service_name, zone_name= nil)
+ get_backend_service(backend_service_name)
+ backend_service = self.data[:backend_services][backend_service_name]
+ backend_service["mock-deletionTimestamp"] = Time.now.iso8601
+ backend_service["status"] = "DONE"
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "zone" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global",
+ "operationType" => "delete",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/backendServices/#{backend_service_name}",
+ "targetId" => self.data[:backend_services][backend_service_name]["id"],
+ "status" => "DONE",
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/operations/#{operation}"
+ }
+ build_excon_response(self.data[:operations][operation])
+ end
+ end
+
+ class Real
+ def delete_backend_service(backend_service_name)
+ api_method = @compute.backend_services.delete
+ parameters = {
+ 'project' => @project,
+ 'backendService' => backend_service_name
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/delete_disk.rb b/lib/fog/google/requests/compute/delete_disk.rb
index feb43d0..432d6d3 100644
--- a/lib/fog/google/requests/compute/delete_disk.rb
+++ b/lib/fog/google/requests/compute/delete_disk.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Google
-
class Mock
-
def delete_disk(disk_name, zone_name)
get_disk(disk_name, zone_name)
@@ -25,13 +23,11 @@ module Fog
}
self.data[:disks].delete disk_name
- build_response(:body => self.data[:operations][operation])
+ build_excon_response(self.data[:operations][operation])
end
-
end
class Real
-
def delete_disk(disk_name, zone_name)
if zone_name.start_with? 'http'
zone_name = zone_name.split('/')[-1]
@@ -44,12 +40,9 @@ module Fog
'zone' => zone_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/delete_firewall.rb b/lib/fog/google/requests/compute/delete_firewall.rb
index aae2f31..a2ccf59 100644
--- a/lib/fog/google/requests/compute/delete_firewall.rb
+++ b/lib/fog/google/requests/compute/delete_firewall.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def delete_firewall(firewall_name)
Fog::Mock.not_implemented
end
-
end
class Real
-
def delete_firewall(firewall_name)
api_method = @compute.firewalls.delete
parameters = {
@@ -19,12 +15,9 @@ module Fog
'firewall' => firewall_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/delete_forwarding_rule.rb b/lib/fog/google/requests/compute/delete_forwarding_rule.rb
index 01bacc8..15b3380 100644
--- a/lib/fog/google/requests/compute/delete_forwarding_rule.rb
+++ b/lib/fog/google/requests/compute/delete_forwarding_rule.rb
@@ -1,13 +1,29 @@
module Fog
module Compute
class Google
-
class Mock
+ def delete_forwarding_rule(name, region_name)
+ get_forwarding_rule(name, region_name)
+ id = Fog::Mock.random_numbers(19).to_s
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "region" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}",
+ "operationType" => "delete",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}/forwardingRules/#{name}",
+ "targetId" => id,
+ "status" => "DONE",
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}/operations/#{operation}"
+ }
- def delete_forwarding_rule(forwarding_rule_name, region_name)
- Fog::Mock.not_implemented
+ build_excon_response(self.data[:operations][operation])
end
-
end
class Real
@@ -25,12 +41,9 @@ module Fog
'region' => region_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/delete_global_forwarding_rule.rb b/lib/fog/google/requests/compute/delete_global_forwarding_rule.rb
new file mode 100644
index 0000000..ce076cd
--- /dev/null
+++ b/lib/fog/google/requests/compute/delete_global_forwarding_rule.rb
@@ -0,0 +1,48 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def delete_global_forwarding_rule(name, region_name = 'global')
+ get_global_forwarding_rule(name)
+ global_forwarding_rule = self.data[:global_forwarding_rules][name]
+ global_forwarding_rule["mock-deletionTimestamp"] = Time.now.iso8601
+ global_forwarding_rule["status"] = "DONE"
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "zone" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global",
+ "operationType" => "delete",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/forwardingRules/#{name}",
+ "targetId" => self.data[:global_forwarding_rules][name]["id"],
+ "status" => "DONE",
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/operations/#{operation}"
+ }
+ build_excon_response(self.data[:operations][operation])
+ end
+ end
+
+ class Real
+ def delete_global_forwarding_rule(global_forwarding_rule_name, region_name = 'global')
+ if region_name.start_with? 'http'
+ region_name = region_name.split('/')[-1]
+ end
+
+ api_method = @compute.global_forwarding_rules.delete
+ parameters = {
+ 'project' => @project,
+ 'forwardingRule' => global_forwarding_rule_name,
+ 'region' => region_name
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/delete_global_operation.rb b/lib/fog/google/requests/compute/delete_global_operation.rb
index 09829f7..970ce9d 100644
--- a/lib/fog/google/requests/compute/delete_global_operation.rb
+++ b/lib/fog/google/requests/compute/delete_global_operation.rb
@@ -1,13 +1,10 @@
module Fog
module Compute
class Google
-
class Mock
-
def delete_global_operation(operation)
Fog::Mock.not_implemented
end
-
end
class Real
@@ -20,8 +17,7 @@ module Fog
'operation' => operation
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
end
diff --git a/lib/fog/google/requests/compute/delete_http_health_check.rb b/lib/fog/google/requests/compute/delete_http_health_check.rb
index 145f88e..04fe1b0 100644
--- a/lib/fog/google/requests/compute/delete_http_health_check.rb
+++ b/lib/fog/google/requests/compute/delete_http_health_check.rb
@@ -1,17 +1,31 @@
module Fog
module Compute
class Google
-
class Mock
-
def delete_http_health_check(name)
- Fog::Mock.not_implemented
+ get_http_health_check(name)
+ check = self.data[:http_health_checks][name]
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "zone" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global",
+ "operationType" => "delete",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/httpHealthChecks/#{name}",
+ "targetId" => self.data[:http_health_checks][name]["id"],
+ "status" => "DONE",
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/operations/#{operation}"
+ }
+ build_excon_response(self.data[:operations][operation])
end
-
end
class Real
-
def delete_http_health_check(name)
api_method = @compute.http_health_checks.delete
parameters = {
@@ -19,12 +33,9 @@ module Fog
'httpHealthCheck' => name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/delete_image.rb b/lib/fog/google/requests/compute/delete_image.rb
index b68f835..5346bec 100644
--- a/lib/fog/google/requests/compute/delete_image.rb
+++ b/lib/fog/google/requests/compute/delete_image.rb
@@ -1,17 +1,32 @@
module Fog
module Compute
class Google
-
class Mock
-
def delete_image(image_name)
- Fog::Mock.not_implemented
- end
+ get_image(image_name)
+
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "operationType" => "delete",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/images/#{image_name}",
+ "targetId" => self.data[:images][image_name]["id"],
+ "status" => Fog::Compute::Google::Operation::PENDING_STATE,
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/operations/#{operation}"
+ }
+ self.data[:images].delete image_name
+ build_excon_response(self.data[:operations][operation])
+ end
end
class Real
-
def delete_image(image_name)
api_method = @compute.images.delete
parameters = {
@@ -19,12 +34,9 @@ module Fog
'image' => image_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/delete_network.rb b/lib/fog/google/requests/compute/delete_network.rb
index 0ffed6f..8792ea1 100644
--- a/lib/fog/google/requests/compute/delete_network.rb
+++ b/lib/fog/google/requests/compute/delete_network.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def delete_network(network_name)
Fog::Mock.not_implemented
end
-
end
class Real
-
def delete_network(network_name)
api_method = @compute.networks.delete
parameters = {
@@ -19,12 +15,9 @@ module Fog
'network' => network_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/delete_region_operation.rb b/lib/fog/google/requests/compute/delete_region_operation.rb
index 7a7c548..66596b1 100644
--- a/lib/fog/google/requests/compute/delete_region_operation.rb
+++ b/lib/fog/google/requests/compute/delete_region_operation.rb
@@ -1,13 +1,10 @@
module Fog
module Compute
class Google
-
class Mock
-
def delete_region_operation(region, operation)
Fog::Mock.not_implemented
end
-
end
class Real
@@ -24,8 +21,7 @@ module Fog
'operation' => operation
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
end
diff --git a/lib/fog/google/requests/compute/delete_region_view.rb b/lib/fog/google/requests/compute/delete_region_view.rb
new file mode 100644
index 0000000..ce5ebcd
--- /dev/null
+++ b/lib/fog/google/requests/compute/delete_region_view.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def delete_region_view(region_view)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def delete_region_view(region_view, region)
+ api_method = @resourceviews.region_views.delete
+ parameters = {
+ 'projectName' => @project,
+ 'resourceViewName' => region_view,
+ 'region' => region
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/delete_route.rb b/lib/fog/google/requests/compute/delete_route.rb
index a5788c6..903f3ca 100644
--- a/lib/fog/google/requests/compute/delete_route.rb
+++ b/lib/fog/google/requests/compute/delete_route.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Google
-
class Mock
def delete_route(identity)
Fog::Mock.not_implemented
@@ -16,11 +15,9 @@ module Fog
'route' => identity,
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/delete_server.rb b/lib/fog/google/requests/compute/delete_server.rb
index 8c18685..d0888e4 100644
--- a/lib/fog/google/requests/compute/delete_server.rb
+++ b/lib/fog/google/requests/compute/delete_server.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Google
-
module Shared
def find_zone(zone_name)
if zone_name.nil?
@@ -46,9 +45,8 @@ module Fog
"selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone_name}/operations/#{operation}"
}
- build_response(:body => self.data[:operations][operation])
+ build_excon_response(self.data[:operations][operation])
end
-
end
class Real
@@ -63,12 +61,9 @@ module Fog
'instance' => server_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/delete_server_access_config.rb b/lib/fog/google/requests/compute/delete_server_access_config.rb
new file mode 100644
index 0000000..e12d9a3
--- /dev/null
+++ b/lib/fog/google/requests/compute/delete_server_access_config.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def delete_server_access_config(identity, zone, nic, options = {})
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def delete_server_access_config(identity, zone, nic, options = {})
+ api_method = @compute.instances.delete_access_config
+ parameters = {
+ 'project' => @project,
+ 'instance' => identity,
+ 'zone' => zone.split('/')[-1],
+ 'networkInterface' => nic,
+ 'accessConfig' => options[:access_config].nil? ? 'External NAT' : options[:access_config],
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/delete_snapshot.rb b/lib/fog/google/requests/compute/delete_snapshot.rb
index 3991321..fee8f5c 100644
--- a/lib/fog/google/requests/compute/delete_snapshot.rb
+++ b/lib/fog/google/requests/compute/delete_snapshot.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def delete_snapshot(snapshot_name)
Fog::Mock.not_implemented
end
-
end
class Real
-
def delete_snapshot(snapshot_name)
api_method = @compute.snapshots.delete
parameters = {
@@ -19,12 +15,9 @@ module Fog
'snapshot' => snapshot_name,
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/delete_target_http_proxy.rb b/lib/fog/google/requests/compute/delete_target_http_proxy.rb
new file mode 100644
index 0000000..d856b3f
--- /dev/null
+++ b/lib/fog/google/requests/compute/delete_target_http_proxy.rb
@@ -0,0 +1,43 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def delete_target_http_proxy(name)
+ get_target_http_proxy(name)
+ target_http_proxy = self.data[:target_http_proxies][name]
+ target_http_proxy["mock-deletionTimestamp"] = Time.now.iso8601
+ target_http_proxy["status"] = "DONE"
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "zone" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global",
+ "operationType" => "delete",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/targetHttpProxies/#{name}",
+ "targetId" => self.data[:target_http_proxies][name]["id"],
+ "status" => "DONE",
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/operations/#{operation}"
+ }
+ build_excon_response(self.data[:operations][operation])
+ end
+ end
+
+ class Real
+ def delete_target_http_proxy(name)
+ api_method = @compute.target_http_proxies.delete
+ parameters = {
+ 'project' => @project,
+ 'targetHttpProxy' => name
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/delete_target_instance.rb b/lib/fog/google/requests/compute/delete_target_instance.rb
new file mode 100644
index 0000000..bafea9a
--- /dev/null
+++ b/lib/fog/google/requests/compute/delete_target_instance.rb
@@ -0,0 +1,48 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def delete_target_instance(name, zone)
+ get_target_instance(name, zone)
+ target_instance = self.data[:target_instances][name]
+ target_instance["mock-deletionTimestamp"] = Time.now.iso8601
+ target_instance["status"] = "DONE"
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "zone" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone}",
+ "operationType" => "delete",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone}/targetInstances/#{name}",
+ "targetId" => self.data[:target_instances][name]["id"],
+ "status" => "DONE",
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone}/operations/#{operation}"
+ }
+ build_excon_response(self.data[:operations][operation])
+ end
+ end
+
+ class Real
+ def delete_target_instance(target_instance_name, zone_name)
+ if zone_name.start_with? 'http'
+ zone_name = zone_name.split('/')[-1]
+ end
+
+ api_method = @compute.target_instances.delete
+ parameters = {
+ 'project' => @project,
+ 'targetInstance' => target_instance_name,
+ 'zone' => zone_name
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/delete_target_pool.rb b/lib/fog/google/requests/compute/delete_target_pool.rb
index 2371aca..1e5133a 100644
--- a/lib/fog/google/requests/compute/delete_target_pool.rb
+++ b/lib/fog/google/requests/compute/delete_target_pool.rb
@@ -1,13 +1,29 @@
module Fog
module Compute
class Google
-
class Mock
+ def delete_target_pool(name, region_name)
+ get_target_pool(name, region_name)
+ id = Fog::Mock.random_numbers(19).to_s
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "region" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}",
+ "operationType" => "delete",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}/targetPools/#{name}",
+ "targetId" => id,
+ "status" => "DONE",
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}/operations/#{operation}"
+ }
- def delete_target_pool(target_pool_name, region_name)
- Fog::Mock.not_implemented
+ build_excon_response(self.data[:operations][operation])
end
-
end
class Real
@@ -25,12 +41,9 @@ module Fog
'region' => region_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/delete_url_map.rb b/lib/fog/google/requests/compute/delete_url_map.rb
new file mode 100644
index 0000000..484eebf
--- /dev/null
+++ b/lib/fog/google/requests/compute/delete_url_map.rb
@@ -0,0 +1,43 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def delete_url_map(name)
+ get_url_map(name)
+ url_map = self.data[:url_maps][name]
+ url_map["mock-deletionTimestamp"] = Time.now.iso8601
+ url_map["status"] = "DONE"
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "zone" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global",
+ "operationType" => "delete",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/urlMaps/#{name}",
+ "targetId" => self.data[:url_maps][name]["id"],
+ "status" => "DONE",
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/operations/#{operation}"
+ }
+ build_excon_response(self.data[:operations][operation])
+ end
+ end
+
+ class Real
+ def delete_url_map(name)
+ api_method = @compute.url_maps.delete
+ parameters = {
+ 'project' => @project,
+ 'urlMap' => name
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/delete_zone_operation.rb b/lib/fog/google/requests/compute/delete_zone_operation.rb
index 7b93db7..97a0626 100644
--- a/lib/fog/google/requests/compute/delete_zone_operation.rb
+++ b/lib/fog/google/requests/compute/delete_zone_operation.rb
@@ -1,13 +1,10 @@
module Fog
module Compute
class Google
-
class Mock
-
def delete_zone_operation(zone, operation)
Fog::Mock.not_implemented
end
-
end
class Real
@@ -24,8 +21,7 @@ module Fog
'operation' => operation
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
end
diff --git a/lib/fog/google/requests/compute/delete_zone_view.rb b/lib/fog/google/requests/compute/delete_zone_view.rb
new file mode 100644
index 0000000..788ba51
--- /dev/null
+++ b/lib/fog/google/requests/compute/delete_zone_view.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def delete_zone_view(zone_view)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def delete_zone_view(zone_view, zone)
+ api_method = @resourceviews.zone_views.delete
+ parameters = {
+ 'projectName' => @project,
+ 'resourceViewName' => zone_view,
+ 'zone' => zone
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/detach_disk.rb b/lib/fog/google/requests/compute/detach_disk.rb
index a615979..ec8ade1 100644
--- a/lib/fog/google/requests/compute/detach_disk.rb
+++ b/lib/fog/google/requests/compute/detach_disk.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Google
-
class Mock
def detach_disk(instance, zone, deviceName)
Fog::Mock.not_implemented
@@ -9,21 +8,18 @@ module Fog
end
class Real
-
def detach_disk(instance, zone, deviceName)
api_method = @compute.instances.detach_disk
parameters = {
'project' => @project,
'instance' => instance,
- 'zone' => zone,
+ 'zone' => zone.split('/')[-1],
+ 'deviceName' => deviceName
}
- body_object = { "deviceName" => deviceName }
- result = self.build_result(api_method, parameters, body_object=body_object)
- response = self.build_response(result)
- end
+ request(api_method, parameters)
+ end
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_address.rb b/lib/fog/google/requests/compute/get_address.rb
index 48c6221..162a2ed 100644
--- a/lib/fog/google/requests/compute/get_address.rb
+++ b/lib/fog/google/requests/compute/get_address.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def get_address(address_name, region_name)
Fog::Mock.not_implemented
end
-
end
class Real
-
def get_address(address_name, region_name)
api_method = @compute.addresses.get
parameters = {
@@ -20,12 +16,9 @@ module Fog
'region' => region_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_backend_service.rb b/lib/fog/google/requests/compute/get_backend_service.rb
new file mode 100644
index 0000000..d4df087
--- /dev/null
+++ b/lib/fog/google/requests/compute/get_backend_service.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def get_backend_service(service_name)
+ backend_service = self.data[:backend_services][service_name]
+ if backend_service.nil?
+ return nil
+ end
+ build_excon_response(backend_service)
+ end
+ end
+
+ class Real
+ def get_backend_service(service_name)
+ api_method = @compute.backend_services.get
+ parameters = {
+ 'project' => @project,
+ 'backendService' => service_name
+ }
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/get_backend_service_health.rb b/lib/fog/google/requests/compute/get_backend_service_health.rb
new file mode 100644
index 0000000..2186923
--- /dev/null
+++ b/lib/fog/google/requests/compute/get_backend_service_health.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def get_backend_service_health(backend_service)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def get_backend_service_health(backend_service)
+ api_method = @compute.backend_services.get_health
+ parameters = {
+ 'project' => @project,
+ 'backendService' => backend_service.name
+ }
+ health_results = backend_service.backends.map do |backend|
+ body = { 'group' => backend['group'] }
+ resp = request(api_method, parameters, body_object= body)
+ [backend['group'], resp.data[:body]['healthStatus']]
+ end
+ Hash[health_results]
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/get_backend_services.rb b/lib/fog/google/requests/compute/get_backend_services.rb
new file mode 100644
index 0000000..19504b3
--- /dev/null
+++ b/lib/fog/google/requests/compute/get_backend_services.rb
@@ -0,0 +1,23 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def get_backend_services(service_name)
+ Fog::Mock::not_implemented
+ end
+ end
+
+ class Real
+ def get_backend_services(service_name)
+ api_method = @compute.backend_services.get
+ parameters = {
+ 'project' => @project,
+ 'backendService' => service_name
+ }
+ result = self.build_result(api_method, parameters)
+ response = self.build_response(result)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/get_disk.rb b/lib/fog/google/requests/compute/get_disk.rb
index 9a21e83..a5b6e89 100644
--- a/lib/fog/google/requests/compute/get_disk.rb
+++ b/lib/fog/google/requests/compute/get_disk.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Google
-
class Mock
-
def get_disk(disk_name, zone_name)
disk = self.data[:disks][disk_name]
if zone_name.start_with? 'http'
@@ -12,7 +10,7 @@ module Fog
get_zone(zone_name)
zone = self.data[:zones][zone_name]
if disk.nil? or disk["zone"] != zone["selfLink"]
- return build_response(:body => {
+ return build_excon_response({
"error" => {
"errors" => [
{
@@ -29,13 +27,11 @@ module Fog
# TODO transition the disk through the states
- build_response(:body => disk)
+ build_excon_response(disk)
end
-
end
class Real
-
def get_disk(disk_name, zone_name)
if zone_name.start_with? 'http'
zone_name = zone_name.split('/')[-1]
@@ -48,12 +44,9 @@ module Fog
'zone' => zone_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_disk_type.rb b/lib/fog/google/requests/compute/get_disk_type.rb
new file mode 100644
index 0000000..71f3730
--- /dev/null
+++ b/lib/fog/google/requests/compute/get_disk_type.rb
@@ -0,0 +1,42 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def get_disk_type(identity, zone)
+ disk_types = list_disk_types(zone).body['items']
+ disk_type = disk_types.select { |dt| dt['name'] == identity } || []
+ if disk_type.empty?
+ return build_excon_response({
+ 'error' => {
+ 'errors' => [
+ {
+ 'domain' => 'global',
+ 'reason' => 'notFound',
+ 'message' => "The resource 'projects/#{@project}/zones/#{zone}/diskTypes/#{identity}' was not found",
+ }
+ ],
+ 'code' => 404,
+ 'message' => "The resource 'projects/#{@project}/zones/#{zone}/diskTypes/#{identity}' was not found",
+ }
+ })
+ end
+
+ build_excon_response(disk_type.first)
+ end
+ end
+
+ class Real
+ def get_disk_type(identity, zone)
+ api_method = @compute.disk_types.get
+ parameters = {
+ 'project' => @project,
+ 'zone' => zone.split('/')[-1],
+ 'diskType' => identity,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/get_firewall.rb b/lib/fog/google/requests/compute/get_firewall.rb
index 0836d36..2c1018c 100644
--- a/lib/fog/google/requests/compute/get_firewall.rb
+++ b/lib/fog/google/requests/compute/get_firewall.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def get_firewall(firewall_name)
Fog::Mock.not_implemented
end
-
end
class Real
-
def get_firewall(firewall_name)
api_method = @compute.firewalls.get
parameters = {
@@ -19,12 +15,9 @@ module Fog
'firewall' => firewall_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_forwarding_rule.rb b/lib/fog/google/requests/compute/get_forwarding_rule.rb
index 23919b3..35a547f 100644
--- a/lib/fog/google/requests/compute/get_forwarding_rule.rb
+++ b/lib/fog/google/requests/compute/get_forwarding_rule.rb
@@ -1,15 +1,31 @@
module Fog
module Compute
class Google
-
class Mock
- def get_forwarding_rule(forwarding_rule_name, region_name)
- Fog::Mock.not_implemented
+ def get_forwarding_rule(name, region_name)
+ forwarding_rule = self.data[:forwarding_rules][name]
+ region_name = get_region(region_name).body["name"]
+ region = self.data[:regions][region_name]
+ if forwarding_rule.nil? or forwarding_rule["region"] != region["selfLink"]
+ return build_excon_response({
+ "error" => {
+ "errors" => [
+ {
+ "domain" => "global",
+ "reason" => "notFound",
+ "message" => "The resource 'projects/#{@project}/regions/#{region_name}/forwarding_rules/#{name}' was not found"
+ }
+ ],
+ "code" => 404,
+ "message" => "The resource 'projects/#{@project}/regions/#{region_name}/forwarding_rules/#{name}' was not found"
+ }
+ })
+ end
+ build_excon_response(forwarding_rule)
end
end
class Real
-
def get_forwarding_rule(forwarding_rule_name, region_name)
if region_name.start_with? 'http'
region_name = region_name.split('/')[-1]
@@ -22,12 +38,9 @@ module Fog
'region' => region_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_global_forwarding_rule.rb b/lib/fog/google/requests/compute/get_global_forwarding_rule.rb
new file mode 100644
index 0000000..bef3953
--- /dev/null
+++ b/lib/fog/google/requests/compute/get_global_forwarding_rule.rb
@@ -0,0 +1,32 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def get_global_forwarding_rule(name, region_name = 'global')
+ global_forwarding_rule = self.data[:global_forwarding_rules][name]
+ if global_forwarding_rule.nil?
+ return nil
+ end
+ build_excon_response(global_forwarding_rule)
+ end
+ end
+
+ class Real
+ def get_global_forwarding_rule(global_forwarding_rule_name, region_name = 'global')
+ if region_name.start_with? 'http'
+ region_name = region_name.split('/')[-1]
+ end
+
+ api_method = @compute.global_forwarding_rules.get
+ parameters = {
+ 'project' => @project,
+ 'forwardingRule' => global_forwarding_rule_name,
+ 'region' => region_name
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/get_global_operation.rb b/lib/fog/google/requests/compute/get_global_operation.rb
index 1872e1c..d26f5e4 100644
--- a/lib/fog/google/requests/compute/get_global_operation.rb
+++ b/lib/fog/google/requests/compute/get_global_operation.rb
@@ -1,13 +1,35 @@
module Fog
module Compute
class Google
-
class Mock
-
def get_global_operation(operation)
- Fog::Mock.not_implemented
+ operation = self.data[:operations][operation]
+ if operation
+ case operation["status"]
+ when Fog::Compute::Google::Operation::PENDING_STATE
+ operation["status"] = Fog::Compute::Google::Operation::RUNNING_STATE
+ operation["progress"] = 50
+ else
+ operation["status"] = Fog::Compute::Google::Operation::DONE_STATE
+ operation["progress"] = 100
+ end
+ else
+ operation = {
+ "error" => {
+ "errors" => [
+ {
+ "domain" => "global",
+ "reason" => "notFound",
+ "message" => "The resource 'projects/#{project}/global/operations/#{operation}' was not found"
+ }
+ ],
+ "code" => 404,
+ "message" => "The resource 'projects/#{project}/global/operations/#{operation}' was not found"
+ }
+ }
+ end
+ build_excon_response(operation)
end
-
end
class Real
@@ -20,8 +42,7 @@ module Fog
'operation' => operation
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
end
diff --git a/lib/fog/google/requests/compute/get_http_health_check.rb b/lib/fog/google/requests/compute/get_http_health_check.rb
index b85400c..8915cf3 100644
--- a/lib/fog/google/requests/compute/get_http_health_check.rb
+++ b/lib/fog/google/requests/compute/get_http_health_check.rb
@@ -1,17 +1,29 @@
module Fog
module Compute
class Google
-
class Mock
-
def get_http_health_check(name)
- Fog::Mock.not_implemented
+ http_health_check = self.data[:http_health_checks][name]
+ if http_health_check.nil?
+ return build_excon_response({
+ "error" => {
+ "errors" => [
+ {
+ "domain" => "global",
+ "reason" => "notFound",
+ "message" => "The resource 'projects/#{@project}/global/httpHealthChecks/#{name}' was not found"
+ }
+ ],
+ "code" => 404,
+ "message" => "The resource 'projects/#{@project}/global/httpHealthChecks/#{name}' was not found"
+ }
+ })
+ end
+ build_excon_response(http_health_check)
end
-
end
class Real
-
def get_http_health_check(name)
api_method = @compute.http_health_checks.get
parameters = {
@@ -19,12 +31,9 @@ module Fog
'httpHealthCheck' => name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_image.rb b/lib/fog/google/requests/compute/get_image.rb
index 3b19fc4..7ae5169 100644
--- a/lib/fog/google/requests/compute/get_image.rb
+++ b/lib/fog/google/requests/compute/get_image.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Google
-
class Mock
-
def get_image(image_name, project=@project)
image = data(project)[:images][image_name] || {
"error" => {
@@ -18,13 +16,11 @@ module Fog
"message" => "The resource 'projects/#{project}/global/images/#{image_name}' was not found"
}
}
- build_response(:body => image)
+ build_excon_response(image)
end
-
end
class Real
-
def get_image(image_name, project=@project)
api_method = @compute.images.get
parameters = {
@@ -32,12 +28,9 @@ module Fog
'project' => project,
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_machine_type.rb b/lib/fog/google/requests/compute/get_machine_type.rb
index fb32555..6f103eb 100644
--- a/lib/fog/google/requests/compute/get_machine_type.rb
+++ b/lib/fog/google/requests/compute/get_machine_type.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Google
-
class Mock
-
def get_machine_type(machine_type_name, zone_name = nil)
zone_name = self.data[:zones].keys.first if zone_name.nil?
get_zone(zone_name)
@@ -13,20 +11,18 @@ module Fog
{
"domain" => "global",
"reason" => "notFound",
- "message" => "The resource 'projects/google/zones/#{zone_name}/machineTypes/#{machine_type_name}' was not found"
+ "message" => "The resource 'projects/#{@project}/zones/#{zone_name}/machineTypes/#{machine_type_name}' was not found"
}
],
"code" => 404,
- "message" => "The resource 'projects/google/zones/#{zone_name}/machineTypes/#{machine_type_name}' was not found"
+ "message" => "The resource 'projects/#{@project}/zones/#{zone_name}/machineTypes/#{machine_type_name}' was not found"
}
}
- build_response(:body => machine_type)
+ build_excon_response(machine_type)
end
-
end
class Real
-
def get_machine_type(machine_type_name, zone_name = nil)
zone_name = list_zones.body['items'].first['name'] if zone_name.nil?
if zone_name.start_with? 'http'
@@ -35,16 +31,13 @@ module Fog
api_method = @compute.machine_types.get
parameters = {
'zone' => zone_name,
- 'project' => 'google',
+ 'project' => @project,
'machineType' => machine_type_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_network.rb b/lib/fog/google/requests/compute/get_network.rb
index 3982f1c..390fd61 100644
--- a/lib/fog/google/requests/compute/get_network.rb
+++ b/lib/fog/google/requests/compute/get_network.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def get_network(network_name)
Fog::Mock.not_implemented
end
-
end
class Real
-
def get_network(network_name)
api_method = @compute.networks.get
parameters = {
@@ -19,12 +15,9 @@ module Fog
'network' => network_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_project.rb b/lib/fog/google/requests/compute/get_project.rb
index e70dddf..ecb2b74 100644
--- a/lib/fog/google/requests/compute/get_project.rb
+++ b/lib/fog/google/requests/compute/get_project.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Google
-
class Mock
def get_project(identity)
Fog::Mock.not_implemented
@@ -15,11 +14,9 @@ module Fog
:project => identity,
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_region.rb b/lib/fog/google/requests/compute/get_region.rb
index 9a222c5..87c5f39 100755
--- a/lib/fog/google/requests/compute/get_region.rb
+++ b/lib/fog/google/requests/compute/get_region.rb
@@ -1,10 +1,23 @@
module Fog
module Compute
class Google
-
class Mock
def get_region(identity)
- Fog::Mock.not_implemented
+ rname = identity.split('/')[-1]
+ region = self.data[:regions][rname] || {
+ "error" => {
+ "errors" => [
+ {
+ "domain" => "global",
+ "reason" => "notFound",
+ "message" => "The resource 'projects/#{project}/regions/#{rname}' was not found"
+ }
+ ],
+ "code" => 404,
+ "message" => "The resource 'projects/#{project}/regions/#{rname}' was not found"
+ }
+ }
+ build_excon_response(region)
end
end
@@ -16,11 +29,9 @@ module Fog
'region' => identity.split('/')[-1],
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_region_operation.rb b/lib/fog/google/requests/compute/get_region_operation.rb
index 9a933ee..6730a24 100644
--- a/lib/fog/google/requests/compute/get_region_operation.rb
+++ b/lib/fog/google/requests/compute/get_region_operation.rb
@@ -1,13 +1,35 @@
module Fog
module Compute
class Google
-
class Mock
-
def get_region_operation(region_name, operation)
- Fog::Mock.not_implemented
+ operation = self.data[:operations][operation]
+ if operation
+ case operation["status"]
+ when Fog::Compute::Google::Operation::PENDING_STATE
+ operation["status"] = Fog::Compute::Google::Operation::RUNNING_STATE
+ operation["progress"] = 50
+ else
+ operation["status"] = Fog::Compute::Google::Operation::DONE_STATE
+ operation["progress"] = 100
+ end
+ else
+ operation = {
+ "error" => {
+ "errors" => [
+ {
+ "domain" => "global",
+ "reason" => "notFound",
+ "message" => "The resource 'projects/#{project}/regions/#{region_name}/operations/#{operation}' was not found"
+ }
+ ],
+ "code" => 404,
+ "message" => "The resource 'projects/#{project}/regions/#{region_name}/operations/#{operation}' was not found"
+ }
+ }
+ end
+ build_excon_response(operation)
end
-
end
class Real
@@ -25,12 +47,9 @@ module Fog
'operation' => operation
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_region_view.rb b/lib/fog/google/requests/compute/get_region_view.rb
new file mode 100644
index 0000000..30e514e
--- /dev/null
+++ b/lib/fog/google/requests/compute/get_region_view.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def get_region_view(region_view_name, region)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def get_region_view(region_view_name, region)
+ api_method = @resourceviews.region_views.get
+ parameters = {
+ 'projectName' => @project,
+ 'resourceViewName' => region_view_name,
+ 'region' => region
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/get_route.rb b/lib/fog/google/requests/compute/get_route.rb
index 14575b1..ff84558 100644
--- a/lib/fog/google/requests/compute/get_route.rb
+++ b/lib/fog/google/requests/compute/get_route.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Google
-
class Mock
def get_route(identity)
Fog::Mock.not_implemented
@@ -16,11 +15,9 @@ module Fog
'route' => identity,
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_server.rb b/lib/fog/google/requests/compute/get_server.rb
index 10a65ae..524e42a 100644
--- a/lib/fog/google/requests/compute/get_server.rb
+++ b/lib/fog/google/requests/compute/get_server.rb
@@ -1,15 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def get_server(server_name, zone_name)
server = self.data[:servers][server_name]
get_zone(zone_name)
zone = self.data[:zones][zone_name]
if server.nil? or server["zone"] != zone["selfLink"]
- return build_response(:body => {
+ return build_excon_response({
"error" => {
"errors" => [
{
@@ -50,13 +48,11 @@ module Fog
end
end
- build_response(:body => server)
+ build_excon_response(server)
end
-
end
class Real
-
def get_server(server_name, zone_name)
if zone_name.is_a? Excon::Response
zone = zone_name.body["name"]
@@ -71,12 +67,9 @@ module Fog
'instance' => server_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_server_serial_port_output.rb b/lib/fog/google/requests/compute/get_server_serial_port_output.rb
new file mode 100644
index 0000000..13b83a3
--- /dev/null
+++ b/lib/fog/google/requests/compute/get_server_serial_port_output.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def get_server_serial_port_output(identity, zone)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def get_server_serial_port_output(identity, zone)
+ api_method = @compute.instances.get_serial_port_output
+ parameters = {
+ 'project' => @project,
+ 'instance' => identity,
+ 'zone' => zone.split('/')[-1],
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/get_snapshot.rb b/lib/fog/google/requests/compute/get_snapshot.rb
index 1b3a2ba..e757e9d 100644
--- a/lib/fog/google/requests/compute/get_snapshot.rb
+++ b/lib/fog/google/requests/compute/get_snapshot.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def get_snapshot(snap_name)
Fog::Mock.not_implemented
end
-
end
class Real
-
def get_snapshot(snap_name, project=@project)
if snap_name.nil?
raise ArgumentError.new "snap_name must not be nil."
@@ -23,12 +19,9 @@ module Fog
'project' => project,
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_target_http_proxy.rb b/lib/fog/google/requests/compute/get_target_http_proxy.rb
new file mode 100644
index 0000000..e501062
--- /dev/null
+++ b/lib/fog/google/requests/compute/get_target_http_proxy.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def get_target_http_proxy(name)
+ proxy = self.data[:target_http_proxies][name]
+ if proxy.nil?
+ return nil
+ end
+ build_excon_response(proxy)
+ end
+ end
+
+ class Real
+ def get_target_http_proxy(name)
+ api_method = @compute.target_http_proxies.get
+ parameters = {
+ 'project' => @project,
+ 'targetHttpProxy' => name
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/get_target_instance.rb b/lib/fog/google/requests/compute/get_target_instance.rb
new file mode 100644
index 0000000..dc16210
--- /dev/null
+++ b/lib/fog/google/requests/compute/get_target_instance.rb
@@ -0,0 +1,32 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def get_target_instance(name, zone_name)
+ target_instance = self.data[:target_instances][name]
+ if target_instance.nil?
+ return nil
+ end
+ build_excon_response(target_instance)
+ end
+ end
+
+ class Real
+ def get_target_instance(target_instance_name, zone_name)
+ if zone_name.start_with? 'http'
+ zone_name = zone_name.split('/')[-1]
+ end
+
+ api_method = @compute.target_instances.get
+ parameters = {
+ 'project' => @project,
+ 'targetInstance' => target_instance_name,
+ 'zone' => zone_name
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/get_target_pool.rb b/lib/fog/google/requests/compute/get_target_pool.rb
index fd9b8e3..8c79293 100644
--- a/lib/fog/google/requests/compute/get_target_pool.rb
+++ b/lib/fog/google/requests/compute/get_target_pool.rb
@@ -1,15 +1,25 @@
module Fog
module Compute
class Google
-
class Mock
- def get_target_pool(target_pool_name, region_name)
- Fog::Mock.not_implemented
+ def get_target_pool(name, region_name)
+ region = get_region(region_name)
+ target_pool = self.data[:target_pools][name] || {
+ "error" => {
+ "errors" => [{
+ "domain" => "global",
+ "reason" => "notFound",
+ "message" => "The resource 'projects/#{project}/regions/#{region_name}/targetPools/#{name}' was not found"
+ }],
+ "code" => 404,
+ "message" => "The resource 'projects/#{project}/regions/#{region_name}/targetPools/#{name}' was not found"
+ }
+ }
+ build_excon_response(target_pool)
end
end
class Real
-
def get_target_pool(target_pool_name, region_name)
if region_name.start_with? 'http'
region_name = region_name.split('/')[-1]
@@ -22,12 +32,9 @@ module Fog
'region' => region_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_target_pool_health.rb b/lib/fog/google/requests/compute/get_target_pool_health.rb
index 4f6e788..5ba3bcd 100644
--- a/lib/fog/google/requests/compute/get_target_pool_health.rb
+++ b/lib/fog/google/requests/compute/get_target_pool_health.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def get_target_pool_health(target_pool)
Fog::Mock.not_implemented
end
-
end
class Real
-
def get_target_pool_health(target_pool)
api_method = @compute.target_pools.get_health
parameters = {
@@ -20,16 +16,14 @@ module Fog
'region' => target_pool.region.split('/')[-1]
}
- health_results = target_pool.instances.collect do |instance|
+ health_results = target_pool.instances.map do |instance|
body = { 'instance' => instance }
- resp = build_response(build_result(api_method, parameters, body_object=body))
+ resp = request(api_method, parameters, body_object=body)
[instance, resp.data[:body]['healthStatus']]
end
Hash[health_results]
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_url_map.rb b/lib/fog/google/requests/compute/get_url_map.rb
new file mode 100644
index 0000000..77ef9b5
--- /dev/null
+++ b/lib/fog/google/requests/compute/get_url_map.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def get_url_map(name)
+ url_map = self.data[:url_maps][name]
+ if url_map.nil?
+ return nil
+ end
+ build_excon_response(url_map)
+ end
+ end
+
+ class Real
+ def get_url_map(name)
+ api_method = @compute.url_maps.get
+ parameters = {
+ 'project' => @project,
+ 'urlMap' => name
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/get_zone.rb b/lib/fog/google/requests/compute/get_zone.rb
index 3ffe992..8a7c4c2 100644
--- a/lib/fog/google/requests/compute/get_zone.rb
+++ b/lib/fog/google/requests/compute/get_zone.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Google
-
class Mock
-
def get_zone(zone_name)
zone = self.data[:zones][zone_name] || {
"error" => {
@@ -18,13 +16,11 @@ module Fog
"message" => "The resource 'projects/#{project}/zones/#{zone_name}' was not found"
}
}
- build_response(:body => zone)
+ build_excon_response(zone)
end
-
end
class Real
-
def get_zone(zone_name)
api_method = @compute.zones.get
parameters = {
@@ -32,12 +28,9 @@ module Fog
'zone' => zone_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/get_zone_operation.rb b/lib/fog/google/requests/compute/get_zone_operation.rb
index a119dcf..4e045bf 100644
--- a/lib/fog/google/requests/compute/get_zone_operation.rb
+++ b/lib/fog/google/requests/compute/get_zone_operation.rb
@@ -1,11 +1,9 @@
module Fog
module Compute
class Google
-
class Mock
-
def get_zone_operation(zone_name, operation)
- operation = self.data[:operations][operation]
+ operation = self.data[:operations][operation]
if operation
case operation["status"]
when Fog::Compute::Google::Operation::PENDING_STATE
@@ -30,7 +28,7 @@ module Fog
}
}
end
- build_response(:body => operation)
+ build_excon_response(operation)
end
end
@@ -49,8 +47,7 @@ module Fog
'operation' => operation
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
end
diff --git a/lib/fog/google/requests/compute/get_zone_view.rb b/lib/fog/google/requests/compute/get_zone_view.rb
new file mode 100644
index 0000000..cb05eb2
--- /dev/null
+++ b/lib/fog/google/requests/compute/get_zone_view.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def get_zone_view(zone_view)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def get_zone_view(zone_view_name, zone)
+ api_method = @resourceviews.zone_views.get
+ parameters = {
+ 'projectName' => @project,
+ 'resourceViewName' => zone_view_name,
+ 'zone' => zone
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/insert_address.rb b/lib/fog/google/requests/compute/insert_address.rb
index 469219a..48d714d 100644
--- a/lib/fog/google/requests/compute/insert_address.rb
+++ b/lib/fog/google/requests/compute/insert_address.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def insert_address(address_name, region_name, options = {})
Fog::Mock.not_implemented
end
-
end
class Real
-
def insert_address(address_name, region_name, options = {})
api_method = @compute.addresses.insert
parameters = {
@@ -21,8 +17,7 @@ module Fog
body_object = { 'name' => address_name }
body_object['description'] = options[:description] if options[:description]
- result = self.build_result(api_method, parameters, body_object)
- response = self.build_response(result)
+ request(api_method, parameters, body_object)
end
end
end
diff --git a/lib/fog/google/requests/compute/insert_backend_service.rb b/lib/fog/google/requests/compute/insert_backend_service.rb
new file mode 100644
index 0000000..b58eda9
--- /dev/null
+++ b/lib/fog/google/requests/compute/insert_backend_service.rb
@@ -0,0 +1,63 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def insert_backend_service(backend_service_name, opts ={})
+ id = Fog::Mock.random_numbers(19).to_s
+ self.data[:backend_services][backend_service_name] = {
+ "kind" => "compute#backendService",
+ "id" => id,
+ "creationTimestamp" => Time.now.iso8601,
+ "name" => backend_service_name,
+ "description" => '',
+ "backends" => [
+ {
+ "description" => '',
+ "group" => 'https://www.googleapis.com/resourceviews/v1beta1/projects#{@project}/zones/us-central1-a/zoneViews/name',
+ "balancingMode" => "RATE",
+ "capacityScaler" => 1.1,
+ "maxRate" => 0.5,
+ }],
+ "healthChecks" => [ opts["health_check"] ],
+ "timeoutSec" => 30,
+ "port" => 80,
+ "protocol" => "TCP",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/backendServices/#{backend_service_name}"
+ }
+
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "zone" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global",
+ "operationType" => "insert",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/backendServces/#{backend_service_name}",
+ "targetId" => id,
+ "status" => Fog::Compute::Google::Operation::PENDING_STATE,
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/operations/#{operation}"
+ }
+
+ build_excon_response(self.data[:operations][operation])
+ end
+ end
+
+ class Real
+ def insert_backend_service(backend_service_name, opts = {})
+ api_method = @compute.backend_services.insert
+ parameters = {
+ 'project' => @project
+ }
+ body_object = { 'name' => backend_service_name }
+ body_object.merge!(opts)
+
+ request(api_method, parameters, body_object=body_object)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/insert_disk.rb b/lib/fog/google/requests/compute/insert_disk.rb
index 00c6fe9..777ab75 100644
--- a/lib/fog/google/requests/compute/insert_disk.rb
+++ b/lib/fog/google/requests/compute/insert_disk.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Google
-
class Mock
-
def insert_disk(disk_name, zone_name, image_name=nil, options={})
# check that image and zone exist
image = nil
@@ -38,6 +36,11 @@ module Fog
"sourceImageId" => image.id
})
end
+ if disk_type = options.delete(:type)
+ object["type"] = type
+ else
+ object["type"] = "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone_name}/diskTypes/pd-standard"
+ end
self.data[:disks][disk_name] = object
operation = self.random_operation
@@ -57,13 +60,11 @@ module Fog
"selfLink" => "#{object["zone"]}/operations/#{operation}"
}
- build_response(:body => self.data[:operations][operation])
+ build_excon_response(self.data[:operations][operation])
end
-
end
class Real
-
def insert_disk(disk_name, zone_name, image_name=nil, opts={})
api_method = @compute.disks.insert
parameters = {
@@ -80,17 +81,18 @@ module Fog
end
body_object = { 'name' => disk_name }
+ body_object['type'] = opts.delete('type')
# According to Google docs, if image name is not present, only one of
# sizeGb or sourceSnapshot need to be present, one will create blank
# disk of desired size, other will create disk from snapshot
if image_name.nil?
- if opts.has_key?('sourceSnapshot')
+ if opts.key?('sourceSnapshot')
# New disk from snapshot
snap = snapshots.get(opts.delete('sourceSnapshot'))
raise ArgumentError.new('Invalid source snapshot') unless snap
body_object['sourceSnapshot'] = @api_url + snap.resource_url
- elsif opts.has_key?('sizeGb')
+ elsif opts.key?('sizeGb')
# New blank disk
body_object['sizeGb'] = opts.delete('sizeGb')
else
@@ -103,13 +105,9 @@ module Fog
# Merge in any remaining options (only 'description' should remain)
body_object.merge!(opts)
- result = self.build_result(api_method, parameters,
- body_object)
- response = self.build_response(result)
+ request(api_method, parameters, body_object)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/insert_firewall.rb b/lib/fog/google/requests/compute/insert_firewall.rb
index 03f0699..f1147a3 100644
--- a/lib/fog/google/requests/compute/insert_firewall.rb
+++ b/lib/fog/google/requests/compute/insert_firewall.rb
@@ -1,17 +1,14 @@
module Fog
module Compute
class Google
-
class Mock
- def insert_firewall(firewall_name, allowed, network = @default_network, options = {})
+ def insert_firewall(firewall_name, allowed, network = GOOGLE_COMPUTE_DEFAULT_NETWORK, options = {})
Fog::Mock.not_implemented
end
-
end
class Real
-
- def insert_firewall(firewall_name, allowed, network = @default_network, options = {})
+ def insert_firewall(firewall_name, allowed, network = GOOGLE_COMPUTE_DEFAULT_NETWORK, options = {})
unless network.start_with? 'http'
network = "#{@api_url}#{@project}/global/networks/#{network}"
end
@@ -38,12 +35,9 @@ module Fog
body_object["targetTags"] = options[:target_tags]
end
- result = self.build_result(api_method, parameters, body_object)
- response = self.build_response(result)
+ request(api_method, parameters, body_object)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/insert_forwarding_rule.rb b/lib/fog/google/requests/compute/insert_forwarding_rule.rb
index d8c4df3..f39b615 100644
--- a/lib/fog/google/requests/compute/insert_forwarding_rule.rb
+++ b/lib/fog/google/requests/compute/insert_forwarding_rule.rb
@@ -1,17 +1,48 @@
module Fog
module Compute
class Google
-
class Mock
+ def insert_forwarding_rule(name, region_name, opts = {})
+ # check that region exists
+ get_region(region_name)
- def insert_forwarding_rule(forwarding_rule_name, region_name)
- Fog::Mock.not_implemented
- end
+ id = Fog::Mock.random_numbers(19).to_s
+ self.data[:forwarding_rules][name] = {
+ "kind" => "compute#forwardingRule",
+ "id" => id,
+ "creationTimestamp" => Time.now.iso8601,
+ "name" => name,
+ "description" => '',
+ "region" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}",
+ "IPAddress" => '',
+ "IPProtocol" => '',
+ "portRange" => '',
+ "target" => opts['target'],
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}/forwardingRules/#{name}"
+ }
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "region" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}",
+ "operationType" => "insert",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}/forwardingRules/#{name}",
+ "targetId" => id,
+ "status" => Fog::Compute::Google::Operation::PENDING_STATE,
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}/operations/#{operation}"
+ }
+
+ build_excon_response(self.data[:operations][operation])
+ end
end
class Real
-
def insert_forwarding_rule(forwarding_rule_name, region_name, opts = {})
api_method = @compute.forwarding_rules.insert
parameters = {
@@ -21,9 +52,7 @@ module Fog
body_object = { 'name' => forwarding_rule_name }
body_object.merge!(opts)
- result = self.build_result(api_method, parameters,
- body_object=body_object)
- response = self.build_response(result)
+ request(api_method, parameters, body_object=body_object)
end
end
end
diff --git a/lib/fog/google/requests/compute/insert_global_forwarding_rule.rb b/lib/fog/google/requests/compute/insert_global_forwarding_rule.rb
new file mode 100644
index 0000000..02f21b8
--- /dev/null
+++ b/lib/fog/google/requests/compute/insert_global_forwarding_rule.rb
@@ -0,0 +1,56 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def insert_global_forwarding_rule(name, opts = {})
+ id = Fog::Mock.random_numbers(19).to_s
+ self.data[:global_forwarding_rules][name] = {
+ "kind" => "compute#forwardingRule",
+ "id" => id,
+ "creationTimestamp" => Time.now.iso8601,
+ "name" => name,
+ "description" => '',
+ "region" => 'global',
+ "IPAddress" => '',
+ "IPProtocol" => '',
+ "portRange" => '',
+ "target" => opts['target'],
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/forwardingRules/#{name}"
+ }
+
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "zone" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global",
+ "operationType" => "insert",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/forwardingRules/#{name}",
+ "targetId" => id,
+ "status" => Fog::Compute::Google::Operation::PENDING_STATE,
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/operations/#{operation}"
+ }
+
+ build_excon_response(self.data[:operations][operation])
+ end
+ end
+
+ class Real
+ def insert_global_forwarding_rule(global_forwarding_rule_name, opts = {})
+ api_method = @compute.global_forwarding_rules.insert
+ parameters = {
+ 'project' => @project,
+ }
+ body_object = { 'name' => global_forwarding_rule_name, 'region' => 'global' }
+ body_object.merge!(opts)
+
+ request(api_method, parameters,body_object=body_object)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/insert_http_health_check.rb b/lib/fog/google/requests/compute/insert_http_health_check.rb
index 08320d0..7220beb 100644
--- a/lib/fog/google/requests/compute/insert_http_health_check.rb
+++ b/lib/fog/google/requests/compute/insert_http_health_check.rb
@@ -1,17 +1,47 @@
module Fog
module Compute
class Google
-
class Mock
-
def insert_http_health_check(name, options={})
- Fog::Mock.not_implemented
- end
+ id = Fog::Mock.random_numbers(19).to_s
+ self.data[:http_health_checks][name] = {
+ "kind" => "compute#httpHealthCheck",
+ "id" => id,
+ "creationTimestamp" => Time.now.iso8601,
+ "name" => name,
+ "description" => '',
+ "host" => '0.00.0.0',
+ "requestPath" => '/',
+ "port" => 80,
+ "checkIntervalSec" => 5,
+ "timeoutSec" => 5,
+ "unhealthyThreshold" => 2,
+ "healthyThreshold" => 2,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/httpHealthChecks/#{name}"
+ }
+
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "zone" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global",
+ "operationType" => "insert",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/httpHealthChecks/#{name}",
+ "targetId" => id,
+ "status" => Fog::Compute::Google::Operation::PENDING_STATE,
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/operations/#{operation}"
+ }
+ build_excon_response(self.data[:operations][operation])
+ end
end
class Real
-
def insert_http_health_check(name, opts={})
api_method = @compute.http_health_checks.insert
parameters = {
@@ -21,12 +51,9 @@ module Fog
body_object = { 'name' => name }
body_object.merge!(opts)
- result = self.build_result(api_method, parameters, body_object)
- response = self.build_response(result)
+ request(api_method, parameters, body_object)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/insert_image.rb b/lib/fog/google/requests/compute/insert_image.rb
index 607f79f..6d97c23 100644
--- a/lib/fog/google/requests/compute/insert_image.rb
+++ b/lib/fog/google/requests/compute/insert_image.rb
@@ -1,17 +1,46 @@
module Fog
module Compute
class Google
-
class Mock
-
def insert_image(image_name, options={})
- Fog::Mock.not_implemented
- end
+ id = Fog::Mock.random_numbers(19).to_s
+ object = {
+ "kind" => "compute#image",
+ "id" => id,
+ "creationTimestamp" => Time.now.iso8601,
+ "sourceType" => '',
+ "rawDisk" => {
+ "source" => options ["source"],
+ "shal1Checksum" => '',
+ "containerType" => ''
+ },
+ "status" => "READY",
+ "name" => image_name,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/images/#{image_name}"
+ }
+ self.data[:images][image_name] = object
+
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "operationType" => "insert",
+ "targetLink" => object["selfLink"],
+ "targetId" => id,
+ "status" => Fog::Compute::Google::Operation::PENDING_STATE,
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/operations/#{operation}"
+ }
+ build_excon_response(self.data[:operations][operation])
+ end
end
class Real
-
def insert_image(image_name, options={})
api_method = @compute.images.insert
@@ -22,20 +51,14 @@ module Fog
body_object = {
'sourceType' => 'RAW',
'name' => image_name,
- 'rawDisk' => options.delete('rawDisk')
}
- # Merge in the remaining params (only 'description' should remain)
+ # Merge in the remaining params
body_object.merge!(options)
- result = self.build_result(api_method,
- parameters,
- body_object=body_object)
- response = self.build_response(result)
+ request(api_method, parameters, body_object=body_object)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/insert_network.rb b/lib/fog/google/requests/compute/insert_network.rb
index 17dfb8a..defc871 100644
--- a/lib/fog/google/requests/compute/insert_network.rb
+++ b/lib/fog/google/requests/compute/insert_network.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def insert_network(network_name, ip_range, options = {})
Fog::Mock.not_implemented
end
-
end
class Real
-
def insert_network(network_name, ip_range, options = {})
api_method = @compute.networks.insert
parameters = {
@@ -25,12 +21,9 @@ module Fog
body_object['description'] = options[:description] if options[:description]
body_object['gatewayIPv4'] = options[:gateway_ipv4] if options[:gateway_ipv4]
- result = self.build_result(api_method, parameters, body_object)
- response = self.build_response(result)
+ request(api_method, parameters, body_object)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/insert_region_view.rb b/lib/fog/google/requests/compute/insert_region_view.rb
new file mode 100644
index 0000000..4472d67
--- /dev/null
+++ b/lib/fog/google/requests/compute/insert_region_view.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def insert_region_view(region_view_name, region_name)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def insert_region_view(region_view_name, region_name, opts = {})
+ api_method = @resourceviews.region_views.insert
+ parameters = {
+ 'projectName' => @project,
+ 'region' => region_name
+ }
+ body_object = { 'name' => region_view_name }
+ body_object.merge!(opts)
+
+ request(api_method, parameters, body_object=body_object)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/insert_route.rb b/lib/fog/google/requests/compute/insert_route.rb
index eac2e31..16108d8 100644
--- a/lib/fog/google/requests/compute/insert_route.rb
+++ b/lib/fog/google/requests/compute/insert_route.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Google
-
class Mock
def insert_route(name, network, dest_range, priority, options = {})
Fog::Mock.not_implemented
@@ -28,11 +27,9 @@ module Fog
body_object['nextHopGateway'] = options[:next_hop_gateway] if options[:next_hop_gateway]
body_object['nextHopIp'] = options[:next_hop_ip] if options[:next_hop_ip]
- result = self.build_result(api_method, parameters, body_object)
- response = self.build_response(result)
+ request(api_method, parameters, body_object)
end
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/insert_server.rb b/lib/fog/google/requests/compute/insert_server.rb
index 5ce835e..0176fef 100644
--- a/lib/fog/google/requests/compute/insert_server.rb
+++ b/lib/fog/google/requests/compute/insert_server.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Google
-
class Mock
include Shared
@@ -25,14 +24,12 @@ module Fog
end
def insert_server(server_name, zone_name, options={}, *deprecated_args)
-
# check that zone exists
get_zone(zone_name)
if options['disks'].nil? or options['disks'].empty?
raise ArgumentError.new "Empty value for field 'disks'. Boot disk must be specified"
end
-
id = Fog::Mock.random_numbers(19).to_s
self.data[:servers][server_name] = {
"kind" => "compute#instance",
@@ -90,9 +87,8 @@ module Fog
"selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone_name}/operations/#{operation}"
}
- build_response(:body => self.data[:operations][operation])
+ build_excon_response(self.data[:operations][operation])
end
-
end
class Real
@@ -131,23 +127,25 @@ module Fog
body_object['machineType'] = @api_url + @project + "/zones/#{zone_name}/machineTypes/#{options.delete 'machineType'}"
network = nil
- if options.has_key? 'network'
+ if options.key? 'network'
network = options.delete 'network'
- elsif @default_network
- network = @default_network
+ else
+ network = GOOGLE_COMPUTE_DEFAULT_NETWORK
end
# ExternalIP is default value for server creation
access_config = {'type' => 'ONE_TO_ONE_NAT', 'name' => 'External NAT'}
# leave natIP undefined to use an IP from a shared ephemeral IP address pool
- if options.has_key? 'externalIp'
+ if options.key? 'externalIp'
access_config['natIP'] = options.delete 'externalIp'
+ # If set to 'false', that would mean user does no want to allocate an external IP
+ access_config = nil if access_config['natIP'] == false
end
networkInterfaces = []
if ! network.nil?
networkInterface = { 'network' => @api_url + @project + "/global/networks/#{network}" }
- networkInterface['accessConfigs'] = [access_config]
+ networkInterface['accessConfigs'] = [access_config] if access_config
networkInterfaces << networkInterface
end
@@ -155,17 +153,22 @@ module Fog
'automaticRestart' => false,
'onHostMaintenance' => "MIGRATE"
}
- if options.has_key? 'auto_restart'
+ if options.key? 'auto_restart'
scheduling['automaticRestart'] = options.delete 'auto_restart'
scheduling['automaticRestart'] = scheduling['automaticRestart'].class == TrueClass
end
- if options.has_key? 'on_host_maintenance'
+ if options.key? 'on_host_maintenance'
ohm = options.delete 'on_host_maintenance'
scheduling['onHostMaintenance'] = (ohm.respond_to?("upcase") &&
ohm.upcase == "MIGRATE" && "MIGRATE") || "TERMINATE"
end
body_object['scheduling'] = scheduling
+ # @see https://developers.google.com/compute/docs/networking#canipforward
+ if options.key? 'can_ip_forward'
+ body_object['canIpForward'] = options.delete 'can_ip_forward'
+ end
+
# TODO: add other networks
body_object['networkInterfaces'] = networkInterfaces
@@ -180,9 +183,7 @@ module Fog
body_object.merge!(options) # Adds in all remaining options that weren't explicitly handled.
- result = self.build_result(api_method, parameters,
- body_object=body_object)
- response = self.build_response(result)
+ request(api_method, parameters, body_object=body_object)
end
end
end
diff --git a/lib/fog/google/requests/compute/insert_snapshot.rb b/lib/fog/google/requests/compute/insert_snapshot.rb
index 5e8c83a..9c32c76 100644
--- a/lib/fog/google/requests/compute/insert_snapshot.rb
+++ b/lib/fog/google/requests/compute/insert_snapshot.rb
@@ -1,19 +1,14 @@
module Fog
module Compute
class Google
-
class Mock
-
def insert_snapshot(snap_name)
Fog::Mock.not_implemented
end
-
end
class Real
-
def insert_snapshot(disk_name, zone_name, project=@project, opts={})
-
# This is unfortunate, since we might be called from 2 contexts
# 1. disk.snapshot <-- here validation of disk_name is not needed
# 2. snapshot.create <-- here we must validate the disk_name
@@ -35,15 +30,11 @@ module Fog
body_object = { 'name' => snap_name }
# Merge in any remaining options (description)
- body_object.merge(opts)
+ body_object.merge!(opts)
- result = self.build_result(api_method, parameters,
- body_object)
- response = self.build_response(result)
+ request(api_method, parameters, body_object)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/insert_target_http_proxy.rb b/lib/fog/google/requests/compute/insert_target_http_proxy.rb
new file mode 100644
index 0000000..a5effc4
--- /dev/null
+++ b/lib/fog/google/requests/compute/insert_target_http_proxy.rb
@@ -0,0 +1,52 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def insert_target_http_proxy(name, options={})
+ id = Fog::Mock.random_numbers(19).to_s
+ self.data[:target_http_proxies][name] = {
+ "kind" => "compute#targetHttpProxy",
+ "id" => id,
+ "creationTimestamp" => Time.now.iso8601,
+ "name" => name,
+ "description" => '',
+ "urlMap" => options["urlMap"],
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/targetHttpProxies/#{name}"
+ }
+
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "zone" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global",
+ "operationType" => "insert",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/targetHttpProxies/#{name}",
+ "targetId" => id,
+ "status" => Fog::Compute::Google::Operation::PENDING_STATE,
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/operations/#{operation}"
+ }
+
+ build_excon_response(self.data[:operations][operation])
+ end
+ end
+
+ class Real
+ def insert_target_http_proxy(name, opts={})
+ api_method = @compute.target_http_proxies.insert
+ parameters = {
+ 'project' => @project
+ }
+ body_object = { 'name' => name }
+ body_object.merge!(opts)
+
+ request(api_method, parameters, body_object)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/insert_target_instance.rb b/lib/fog/google/requests/compute/insert_target_instance.rb
new file mode 100644
index 0000000..bf21616
--- /dev/null
+++ b/lib/fog/google/requests/compute/insert_target_instance.rb
@@ -0,0 +1,55 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def insert_target_instance(target_instance, zone_name, opts = {})
+ id = Fog::Mock.random_numbers(19).to_s
+ self.data[:target_instances][target_instance] = {
+ "kind" => "compute#targetInstance",
+ "id" => id,
+ "creationTimestamp" => Time.now.iso8601,
+ "name" => target_instance,
+ "description" => '',
+ "natPolicy" => '',
+ "zone" => zone_name,
+ "instance" => opts['instance'],
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone_name}/targetInstances/#{target_instance}"
+ }
+
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "zone" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone_name}",
+ "operationType" => "insert",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone_name}/targetInstances/#{target_instance}",
+ "targetId" => id,
+ "status" => Fog::Compute::Google::Operation::PENDING_STATE,
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone_name}/operations/#{operation}"
+ }
+
+ build_excon_response(self.data[:operations][operation])
+ end
+ end
+
+ class Real
+ def insert_target_instance(target_instance_name, zone_name, opts = {})
+ api_method = @compute.target_instances.insert
+ parameters = {
+ 'project' => @project,
+ 'zone' => zone_name,
+ }
+ body_object = { 'name' => target_pool_name }
+ body_object.merge!(opts)
+
+ request(api_method, parameters, body_object=body_object)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/insert_target_pool.rb b/lib/fog/google/requests/compute/insert_target_pool.rb
index f5c1b66..7480cb5 100644
--- a/lib/fog/google/requests/compute/insert_target_pool.rb
+++ b/lib/fog/google/requests/compute/insert_target_pool.rb
@@ -1,17 +1,46 @@
module Fog
module Compute
class Google
-
class Mock
+ def insert_target_pool(name, region_name, opts = {})
+ # check that region exists
+ get_region(region_name)
- def insert_target_pool(target_pool_name, region_name)
- Fog::Mock.not_implemented
- end
+ id = Fog::Mock.random_numbers(19).to_s
+ self.data[:target_pools][name] = {
+ "kind" => "compute#targetPools",
+ "id" => id,
+ "creationTimestamp" => Time.now.iso8601,
+ "name" => name,
+ "description" => '',
+ "region" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}",
+ "instances" => opts['instances'],
+ "healthChecks" => opts['healthChecks'],
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}/targetPools/#{name}"
+ }
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "region" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}",
+ "operationType" => "insert",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}/targetPools/#{name}",
+ "targetId" => id,
+ "status" => Fog::Compute::Google::Operation::PENDING_STATE,
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}/operations/#{operation}"
+ }
+
+ build_excon_response(self.data[:operations][operation])
+ end
end
class Real
-
def insert_target_pool(target_pool_name, region_name, opts = {})
api_method = @compute.target_pools.insert
parameters = {
@@ -21,9 +50,7 @@ module Fog
body_object = { 'name' => target_pool_name }
body_object.merge!(opts)
- result = self.build_result(api_method, parameters,
- body_object=body_object)
- response = self.build_response(result)
+ request(api_method, parameters, body_object=body_object)
end
end
end
diff --git a/lib/fog/google/requests/compute/insert_url_map.rb b/lib/fog/google/requests/compute/insert_url_map.rb
new file mode 100644
index 0000000..d3554f7
--- /dev/null
+++ b/lib/fog/google/requests/compute/insert_url_map.rb
@@ -0,0 +1,55 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def insert_url_map(url_map_name, opts)
+ id = Fog::Mock.random_numbers(19).to_s
+ self.data[:url_maps][url_map_name] = {
+ "kind" => "compute#urlMap",
+ "id" => id,
+ "creationTimestamp" => Time.now.iso8601,
+ "name" => url_map_name,
+ "description" => '',
+ "hostRules" => [],
+ "pathMatchers" => [],
+ "tests" => [],
+ "defaultService" => opts['defaultService'],
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/urlMaps/#{url_map_name}"
+ }
+
+ operation = self.random_operation
+ self.data[:operations][operation] = {
+ "kind" => "compute#operation",
+ "id" => Fog::Mock.random_numbers(19).to_s,
+ "name" => operation,
+ "zone" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global",
+ "operationType" => "insert",
+ "targetLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/urlMaps/#{url_map_name}",
+ "targetId" => id,
+ "status" => Fog::Compute::Google::Operation::PENDING_STATE,
+ "user" => "123456789012-qwertyuiopasdfghjkl1234567890qwe at developer.gserviceaccount.com",
+ "progress" => 0,
+ "insertTime" => Time.now.iso8601,
+ "startTime" => Time.now.iso8601,
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/operations/#{operation}"
+ }
+
+ build_excon_response(self.data[:operations][operation])
+ end
+ end
+
+ class Real
+ def insert_url_map(url_map_name, opts = {})
+ api_method = @compute.url_maps.insert
+ parameters = {
+ 'project' => @project,
+ }
+ body_object = { 'name' => url_map_name }
+ body_object.merge!(opts)
+
+ request(api_method, parameters, body_object=body_object)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/insert_zone_view.rb b/lib/fog/google/requests/compute/insert_zone_view.rb
new file mode 100644
index 0000000..72ca0a6
--- /dev/null
+++ b/lib/fog/google/requests/compute/insert_zone_view.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def insert_zone_view(zone_view_name, zone_name)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def insert_zone_view(zone_view_name, zone_name, opts = {})
+ api_method = @resourceviews.zone_views.insert
+ parameters = {
+ 'projectName' => @project,
+ 'zone' => zone_name
+# 'zone' => zone_name
+ }
+ body_object = { 'name' => zone_view_name }
+ body_object.merge!(opts)
+
+ request(api_method, parameters, body_object=body_object)
+ end
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/google/requests/compute/list_addresses.rb b/lib/fog/google/requests/compute/list_addresses.rb
index 5b62fb0..484c106 100644
--- a/lib/fog/google/requests/compute/list_addresses.rb
+++ b/lib/fog/google/requests/compute/list_addresses.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_addresses(region_name)
Fog::Mock.not_implemented
end
-
end
class Real
-
def list_addresses(region_name)
api_method = @compute.addresses.list
parameters = {
@@ -19,8 +15,7 @@ module Fog
'region' => region_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
end
diff --git a/lib/fog/google/requests/compute/list_aggregated_addresses.rb b/lib/fog/google/requests/compute/list_aggregated_addresses.rb
index 65d2f95..22635f9 100644
--- a/lib/fog/google/requests/compute/list_aggregated_addresses.rb
+++ b/lib/fog/google/requests/compute/list_aggregated_addresses.rb
@@ -1,25 +1,23 @@
module Fog
module Compute
class Google
-
class Mock
- def list_aggregated_addresses
+ def list_aggregated_addresses(options = {})
Fog::Mock.not_implemented
end
end
class Real
- def list_aggregated_addresses
+ def list_aggregated_addresses(options = {})
api_method = @compute.addresses.aggregated_list
parameters = {
'project' => @project,
}
+ parameters['filter'] = options[:filter] if options[:filter]
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/list_aggregated_disk_types.rb b/lib/fog/google/requests/compute/list_aggregated_disk_types.rb
new file mode 100644
index 0000000..5546fa6
--- /dev/null
+++ b/lib/fog/google/requests/compute/list_aggregated_disk_types.rb
@@ -0,0 +1,40 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def list_aggregated_disk_types(options = {})
+ disk_types_items = {}
+ if options[:filter]
+ disk_type = options[:filter].gsub(/name eq \.\*/, '')
+ self.data[:zones].keys.each do |zone|
+ disk_types = list_disk_types(zone).body['items'].select { |dt| dt['name'] == disk_type } || []
+ disk_types_items["zones/#{zone}"] = { 'diskTypes' => disk_types } unless disk_types.empty?
+ end
+ else
+ self.data[:zones].keys.each do |zone|
+ disk_types = list_disk_types(zone).body['items']
+ disk_types_items["zones/#{zone}"] = { 'diskTypes' => disk_types }
+ end
+ end
+ build_excon_response({
+ 'kind' => 'compute#diskTypeAggregatedList',
+ 'selfLink' => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/aggregated/diskTypes",
+ 'items' => disk_types_items,
+ })
+ end
+ end
+
+ class Real
+ def list_aggregated_disk_types(options = {})
+ api_method = @compute.disk_types.aggregated_list
+ parameters = {
+ 'project' => @project,
+ }
+ parameters['filter'] = options[:filter] if options[:filter]
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/list_aggregated_disks.rb b/lib/fog/google/requests/compute/list_aggregated_disks.rb
new file mode 100644
index 0000000..266e837
--- /dev/null
+++ b/lib/fog/google/requests/compute/list_aggregated_disks.rb
@@ -0,0 +1,40 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def list_aggregated_disks(options = {})
+ # Create a Hash of unique zones from the disks Array previously filled when disks are created
+ zones = Hash[self.data[:disks].values.map { |disk| ["zones/#{disk['zone'].split('/')[-1]}", {'disks' => [] }] }]
+ if options[:filter]
+ # Look up for the disk name
+ disk = self.data[:disks][options[:filter].gsub(/name eq \.\*/, '')]
+ # Fill the zones Hash with the disk (if it's found)
+ zones["zones/#{disk['zone'].split('/')[-1]}"]['disks'].concat([disk]) if disk
+ else
+ # Fill the zones Hash with the disks attached to each zone
+ self.data[:disks].values.each { |disk| zones["zones/#{disk['zone'].split('/')[-1]}"]['disks'].concat([disk]) }
+ end
+ build_excon_response({
+ "kind" => "compute#diskAggregatedList",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/aggregated/disks",
+ "id" => "projects/#{@project}/aggregated/disks",
+ "items" => zones
+
+ })
+ end
+ end
+
+ class Real
+ def list_aggregated_disks(options = {})
+ api_method = @compute.disks.aggregated_list
+ parameters = {
+ 'project' => @project,
+ }
+ parameters['filter'] = options[:filter] if options[:filter]
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/list_aggregated_machine_types.rb b/lib/fog/google/requests/compute/list_aggregated_machine_types.rb
index bdbf08b..5b566aa 100644
--- a/lib/fog/google/requests/compute/list_aggregated_machine_types.rb
+++ b/lib/fog/google/requests/compute/list_aggregated_machine_types.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Google
-
class Mock
def list_aggregated_machine_types
Fog::Mock.not_implemented
@@ -15,11 +14,9 @@ module Fog
'project' => @project,
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/list_aggregated_servers.rb b/lib/fog/google/requests/compute/list_aggregated_servers.rb
new file mode 100644
index 0000000..e0abd2a
--- /dev/null
+++ b/lib/fog/google/requests/compute/list_aggregated_servers.rb
@@ -0,0 +1,40 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def list_aggregated_servers(options = {})
+ # Create a Hash of unique zones from the servers Array previously filled when servers are created
+ zones = Hash[self.data[:servers].values.map { |server| ["zones/#{server['zone'].split('/')[-1]}", {'instances' => [] }] }]
+ if options[:filter]
+ # Look up for the server name
+ server = self.data[:servers][options[:filter].gsub(/name eq \.\*/, '')]
+ # Fill the zones Hash with the server (if it's found)
+ zones["zones/#{server['zone'].split('/')[-1]}"]['instances'].concat([server]) if server
+ else
+ # Fill the zones Hash with the servers attached to each zone
+ self.data[:servers].values.each { |server| zones["zones/#{server['zone'].split('/')[-1]}"]['instances'].concat([server]) }
+ end
+ build_excon_response({
+ "kind" => "compute#instanceAggregatedList",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/aggregated/instances",
+ "id" => "projects/#{@project}/aggregated/instances",
+ "items" => zones
+
+ })
+ end
+ end
+
+ class Real
+ def list_aggregated_servers(options = {})
+ api_method = @compute.instances.aggregated_list
+ parameters = {
+ 'project' => @project,
+ }
+ parameters['filter'] = options[:filter] if options[:filter]
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/list_backend_services.rb b/lib/fog/google/requests/compute/list_backend_services.rb
new file mode 100644
index 0000000..805e379
--- /dev/null
+++ b/lib/fog/google/requests/compute/list_backend_services.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def list_backend_services
+ backend_services = self.data[:backend_services].values
+
+ build_excon_response({
+ "kind" => "compute#backendServiceList",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/backendServices",
+ "id" => "projects/#{@project}/global/backendServices",
+ "items" => backend_services
+ })
+ end
+ end
+
+ class Real
+ def list_backend_services
+ api_method = @compute.backend_services.list
+ parameters = {
+ 'project' => @project,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/list_disk_types.rb b/lib/fog/google/requests/compute/list_disk_types.rb
new file mode 100644
index 0000000..284d3be
--- /dev/null
+++ b/lib/fog/google/requests/compute/list_disk_types.rb
@@ -0,0 +1,46 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def list_disk_types(zone)
+ build_excon_response({
+ 'kind' => 'compute#diskTypeList',
+ 'selfLink' => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone}/diskTypes",
+ 'items' => [
+ {
+ 'kind' => 'compute#diskType',
+ 'creationTimestamp' => '2014-06-02T18:07:28.530Z',
+ 'name' => 'pd-standard',
+ 'description' => 'Standard Persistent Disk',
+ 'validDiskSize' => '10GB-10TB',
+ 'zone' => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone}",
+ 'selfLink' => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone}/diskTypes/pd-standard",
+ },
+ {
+ 'kind' => 'compute#diskType',
+ 'creationTimestamp' => '2014-06-02T18:07:28.529Z',
+ 'name' => 'pd-ssd',
+ 'description' => 'SSD Persistent Disk',
+ 'validDiskSize' => '10GB-1TB',
+ "zone" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone}",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone}/diskTypes/pd-ssd",
+ }
+ ]
+ })
+ end
+ end
+
+ class Real
+ def list_disk_types(zone)
+ api_method = @compute.disk_types.list
+ parameters = {
+ 'project' => @project,
+ 'zone' => zone.split('/')[-1],
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/list_disks.rb b/lib/fog/google/requests/compute/list_disks.rb
index c3ad5ed..ce46aa1 100644
--- a/lib/fog/google/requests/compute/list_disks.rb
+++ b/lib/fog/google/requests/compute/list_disks.rb
@@ -1,23 +1,19 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_disks(zone_name)
disks = self.data[:disks].values.select{|d| d["zone"].split("/")[-1] == zone_name}
- build_response(:body => {
+ build_excon_response({
"kind" => "compute#diskList",
"selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone_name}/disks",
"id" => "projects/#{@project}/zones/#{zone_name}/disks",
"items" => disks
})
end
-
end
class Real
-
def list_disks(zone_name)
api_method = @compute.disks.list
parameters = {
@@ -25,12 +21,9 @@ module Fog
'zone' => zone_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/list_firewalls.rb b/lib/fog/google/requests/compute/list_firewalls.rb
index 7b0bc61..5131b11 100644
--- a/lib/fog/google/requests/compute/list_firewalls.rb
+++ b/lib/fog/google/requests/compute/list_firewalls.rb
@@ -1,29 +1,22 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_firewalls
Fog::Mock.not_implemented
end
-
end
class Real
-
def list_firewalls
api_method = @compute.firewalls.list
parameters = {
'project' => @project
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/list_forwarding_rules.rb b/lib/fog/google/requests/compute/list_forwarding_rules.rb
index fd9d9ef..9f4b138 100644
--- a/lib/fog/google/requests/compute/list_forwarding_rules.rb
+++ b/lib/fog/google/requests/compute/list_forwarding_rules.rb
@@ -1,23 +1,19 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_forwarding_rules(region_name)
forwarding_rules = self.data[:forwarding_rules].values.select{|d| d["region"].split("/")[-1] == region_name}
- build_response(:body => {
+ build_excon_response({
"kind" => "compute#forwardingRuleList",
"selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}/forwardingRules",
"id" => "projects/#{@project}/regions/#{region_name}/regions",
"items" => forwarding_rules
})
end
-
end
class Real
-
def list_forwarding_rules(region_name)
api_method = @compute.forwarding_rules.list
parameters = {
@@ -25,12 +21,9 @@ module Fog
'region' => region_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/list_global_forwarding_rules.rb b/lib/fog/google/requests/compute/list_global_forwarding_rules.rb
new file mode 100644
index 0000000..6f11c08
--- /dev/null
+++ b/lib/fog/google/requests/compute/list_global_forwarding_rules.rb
@@ -0,0 +1,30 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def list_global_forwarding_rules(region_name = 'global')
+ global_forwarding_rules = self.data[:global_forwarding_rules].values
+
+ build_excon_response({
+ "kind" => "compute#forwardingRuleList",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/forwardingRules",
+ "id" => "projects/#{@project}/global/forwardingRules",
+ "items" => global_forwarding_rules
+ })
+ end
+ end
+
+ class Real
+ def list_global_forwarding_rules(region_name = 'global')
+ api_method = @compute.global_forwarding_rules.list
+ parameters = {
+ 'project' => @project,
+ 'region' => region_name
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/list_global_operations.rb b/lib/fog/google/requests/compute/list_global_operations.rb
index 97a5bf4..8377cee 100644
--- a/lib/fog/google/requests/compute/list_global_operations.rb
+++ b/lib/fog/google/requests/compute/list_global_operations.rb
@@ -1,13 +1,10 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_global_operations
Fog::Mock.not_implemented
end
-
end
class Real
@@ -19,8 +16,7 @@ module Fog
'project' => @project
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
end
diff --git a/lib/fog/google/requests/compute/list_http_health_checks.rb b/lib/fog/google/requests/compute/list_http_health_checks.rb
index 29a986a..98e5344 100644
--- a/lib/fog/google/requests/compute/list_http_health_checks.rb
+++ b/lib/fog/google/requests/compute/list_http_health_checks.rb
@@ -1,29 +1,29 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_http_health_checks
- Fog::Mock.not_implemented
+ health_checks = self.data[:http_health_checks].values
+
+ build_excon_response({
+ "kind" => "compute#urlMapList",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/httpHealthChecks",
+ "id" => "projects/#{@project}/global/httpHealthChecks",
+ "items" => health_checks
+ })
end
-
end
class Real
-
def list_http_health_checks
api_method = @compute.http_health_checks.list
parameters = {
'project' => @project
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/list_images.rb b/lib/fog/google/requests/compute/list_images.rb
index c5f89b0..09ae880 100644
--- a/lib/fog/google/requests/compute/list_images.rb
+++ b/lib/fog/google/requests/compute/list_images.rb
@@ -1,23 +1,19 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_images(project=@project)
images = data(project)[:images].values
- build_response(:body => {
+ build_excon_response({
"kind" => "compute#imageList",
"selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{project}/global/images",
"id" => "projects/#{project}/global/images",
"items" => images
})
end
-
end
class Real
-
def list_images(project=nil)
api_method = @compute.images.list
project=@project if project.nil?
@@ -25,12 +21,9 @@ module Fog
'project' => project
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/list_machine_types.rb b/lib/fog/google/requests/compute/list_machine_types.rb
index c680645..eb926c4 100644
--- a/lib/fog/google/requests/compute/list_machine_types.rb
+++ b/lib/fog/google/requests/compute/list_machine_types.rb
@@ -1,24 +1,20 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_machine_types(zone_name)
get_zone(zone_name)
machine_types = data[:machine_types][zone_name].values
- build_response(:body => {
+ build_excon_response({
"kind" => "compute#machineTypeList",
"selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone_name}/machineTypes",
"id" => "projects/high-cistern-340/zones/us-central1-a/machineTypes",
"items" => machine_types
})
end
-
end
class Real
-
def list_machine_types(zone_name)
api_method = @compute.machine_types.list
parameters = {
@@ -26,12 +22,9 @@ module Fog
'zone' => zone_name,
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/list_networks.rb b/lib/fog/google/requests/compute/list_networks.rb
index 29ee281..2e3daec 100644
--- a/lib/fog/google/requests/compute/list_networks.rb
+++ b/lib/fog/google/requests/compute/list_networks.rb
@@ -1,29 +1,22 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_networks
Fog::Mock.not_implemented
end
-
end
class Real
-
def list_networks
api_method = @compute.networks.list
parameters = {
'project' => @project
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/list_region_operations.rb b/lib/fog/google/requests/compute/list_region_operations.rb
index 45a127e..1d1d214 100644
--- a/lib/fog/google/requests/compute/list_region_operations.rb
+++ b/lib/fog/google/requests/compute/list_region_operations.rb
@@ -1,13 +1,10 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_region_operations(region)
Fog::Mock.not_implemented
end
-
end
class Real
@@ -20,8 +17,7 @@ module Fog
'project' => @project,
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
end
diff --git a/lib/fog/google/requests/compute/list_region_view_resources.rb b/lib/fog/google/requests/compute/list_region_view_resources.rb
new file mode 100644
index 0000000..25a4ff8
--- /dev/null
+++ b/lib/fog/google/requests/compute/list_region_view_resources.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def list_region_view_resources(region_view)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def list_region_view_resources(region_view)
+ api_method = @resourceviews.region_views.list_resources
+ parameters = {
+ 'projectName' => @project,
+ 'region' => region_view.region,
+ 'resourceViewName' => region_view.name
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/google/requests/compute/list_region_views.rb b/lib/fog/google/requests/compute/list_region_views.rb
new file mode 100644
index 0000000..dfa0bd9
--- /dev/null
+++ b/lib/fog/google/requests/compute/list_region_views.rb
@@ -0,0 +1,23 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def list_region_views(region_name)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def list_region_views(region_name)
+ api_method = @resourceviews.region_views.list
+ parameters = {
+ 'projectName' => @project,
+ 'region' => region_name,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/list_regions.rb b/lib/fog/google/requests/compute/list_regions.rb
index 5de08a4..3d0654e 100644
--- a/lib/fog/google/requests/compute/list_regions.rb
+++ b/lib/fog/google/requests/compute/list_regions.rb
@@ -1,29 +1,85 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_regions
- Fog::Mock.not_implemented
+ build_excon_response({
+ "kind" => "compute#regionList",
+ "selfLink" => "https://www.googleapis.com/compute/v1/projects/#{@project}/regions",
+ "id" => "projects/#{@project}/regions",
+ "items" => [
+ {
+ "kind" => "compute#region",
+ "selfLink" => "https://www.googleapis.com/compute/v1/projects/#{@project}/regions/asia-east1",
+ "id" => "2699746309412936080",
+ "creationTimestamp" => "2014-01-28T04:12:16.138-08:00",
+ "name" => "asia-east1",
+ "description" => "asia-east1",
+ "status" => "UP",
+ "zones" => [
+ "https://www.googleapis.com/compute/v1/projects/#{@project}/zones/asia-east1-a",
+ "https://www.googleapis.com/compute/v1/projects/#{@project}/zones/asia-east1-b"
+ ],
+ "quotas" => [
+ { "metric" => "CPUS", "limit" => 24.0, "usage" => 0.0 },
+ { "metric" => "DISKS_TOTAL_GB", "limit" => 5120.0, "usage" => 0.0 },
+ { "metric" => "STATIC_ADDRESSES", "limit" => 7.0, "usage" => 0.0 },
+ { "metric" => "IN_USE_ADDRESSES", "limit" => 23.0, "usage" => 0.0 }
+ ]
+ },
+ {
+ "kind" => "compute#region",
+ "selfLink" => "https://www.googleapis.com/compute/v1/projects/#{@project}/regions/europe-west1",
+ "id" => "10546209748879352030",
+ "creationTimestamp" => "2014-01-14T18:36:29.094-08:00",
+ "name" => "europe-west1",
+ "description" => "europe-west1",
+ "status" => "UP",
+ "zones" => [
+ "https://www.googleapis.com/compute/v1/projects/#{@project}/zones/europe-west1-a",
+ "https://www.googleapis.com/compute/v1/projects/#{@project}/zones/europe-west1-b"
+ ],
+ "quotas" => [
+ { "metric" => "CPUS", "limit" => 24.0, "usage" => 0.0 },
+ { "metric" => "DISKS_TOTAL_GB", "limit" => 5120.0, "usage" => 0.0 },
+ { "metric" => "STATIC_ADDRESSES", "limit" => 7.0, "usage" => 0.0 },
+ { "metric" => "IN_USE_ADDRESSES", "limit" => 23.0, "usage" => 0.0 }
+ ]
+ },
+ {
+ "kind" => "compute#region",
+ "selfLink" => "https://www.googleapis.com/compute/v1/projects/#{@project}/regions/us-central1",
+ "id" => "17971001795365542305",
+ "creationTimestamp" => "2014-01-14T18:36:29.094-08:00",
+ "name" => "us-central1",
+ "description" => "us-central1",
+ "status" => "UP",
+ "zones" => [
+ "https://www.googleapis.com/compute/v1/projects/#{@project}/zones/us-central1-a",
+ "https://www.googleapis.com/compute/v1/projects/#{@project}/zones/us-central1-b"
+ ],
+ "quotas" => [
+ { "metric" => "CPUS", "limit" => 24.0, "usage" => 0.0 },
+ { "metric" => "DISKS_TOTAL_GB", "limit" => 5120.0, "usage" => 0.0 },
+ { "metric" => "STATIC_ADDRESSES", "limit" => 7.0, "usage" => 0.0 },
+ { "metric" => "IN_USE_ADDRESSES", "limit" => 23.0, "usage" => 0.0 }
+ ]
+ }
+ ]
+ })
end
-
end
class Real
-
def list_regions
api_method = @compute.regions.list
parameters = {
'project' => @project
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/list_routes.rb b/lib/fog/google/requests/compute/list_routes.rb
index a4eb0b8..44cf763 100644
--- a/lib/fog/google/requests/compute/list_routes.rb
+++ b/lib/fog/google/requests/compute/list_routes.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Google
-
class Mock
def list_routes(options = {})
Fog::Mock.not_implemented
@@ -15,11 +14,9 @@ module Fog
'project' => @project,
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/list_servers.rb b/lib/fog/google/requests/compute/list_servers.rb
index 4735aeb..f58e029 100644
--- a/lib/fog/google/requests/compute/list_servers.rb
+++ b/lib/fog/google/requests/compute/list_servers.rb
@@ -1,25 +1,21 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_servers(zone_name)
get_zone(zone_name)
zone = self.data[:zones][zone_name]
servers = self.data[:servers].values.select{|s| s["zone"] == zone["selfLink"]}
- build_response(:body => {
+ build_excon_response({
"kind" => "compute#instanceList",
"selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone_name}/instances",
"id" => "projects/#{@project}/zones/#{zone_name}/instances",
"items" => servers
})
end
-
end
class Real
-
def list_servers(zone_name)
api_method = @compute.instances.list
parameters = {
@@ -27,12 +23,9 @@ module Fog
'zone' => zone_name,
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/list_snapshots.rb b/lib/fog/google/requests/compute/list_snapshots.rb
index 2c3a982..63a2b2d 100644
--- a/lib/fog/google/requests/compute/list_snapshots.rb
+++ b/lib/fog/google/requests/compute/list_snapshots.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_snapshots
Fog::Mock.not_implemented
end
-
end
class Real
-
def list_snapshots(project=nil)
api_method = @compute.snapshots.list
project=@project if project.nil?
@@ -19,12 +15,9 @@ module Fog
'project' => project
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/list_target_http_proxies.rb b/lib/fog/google/requests/compute/list_target_http_proxies.rb
new file mode 100644
index 0000000..105a007
--- /dev/null
+++ b/lib/fog/google/requests/compute/list_target_http_proxies.rb
@@ -0,0 +1,30 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def list_target_http_proxies
+ proxies = self.data[:target_http_proxies].values
+
+ build_excon_response({
+ "kind" => "compute#targetHttpProxyList",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/targetHttpProxies",
+ "id" => "projects/#{@project}/global/targetHttpProxies",
+ "items" => proxies
+ })
+ end
+ end
+
+ class Real
+ def list_target_http_proxies
+ api_method = @compute.target_http_proxies.list
+ parameters = {
+ 'project' => @project
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/google/requests/compute/list_target_instances.rb b/lib/fog/google/requests/compute/list_target_instances.rb
new file mode 100644
index 0000000..fa3ea51
--- /dev/null
+++ b/lib/fog/google/requests/compute/list_target_instances.rb
@@ -0,0 +1,30 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def list_target_instances(zone_name='us-central1-a')
+ zone = self.data[:zones][zone_name]
+ target_instances = self.data[:target_instances].values.select{|s| s["zone"] == zone_name}
+ build_excon_response({
+ "kind" => "compute#targetInstanceList",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones/#{zone_name}/targetInstances",
+ "id" => "projects/#{@project}/zones/#{zone_name}/targetInstances",
+ "items" => target_instances
+ })
+ end
+ end
+
+ class Real
+ def list_target_instances(zone_name)
+ api_method = @compute.target_instances.list
+ parameters = {
+ 'project' => @project,
+ 'zone' => zone_name
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/list_target_pools.rb b/lib/fog/google/requests/compute/list_target_pools.rb
index f9aa036..a747375 100644
--- a/lib/fog/google/requests/compute/list_target_pools.rb
+++ b/lib/fog/google/requests/compute/list_target_pools.rb
@@ -1,17 +1,19 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_target_pools(region_name)
- Fog::Mock.not_implemented
+ target_pools = self.data[:target_pools].values.select{|d| d["region"].split("/")[-1] == region_name}
+ build_excon_response({
+ "kind" => "compute#forwardingRuleList",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/regions/#{region_name}/targetPools",
+ "id" => "projects/#{@project}/regions/#{region_name}/regions",
+ "items" => target_pools
+ })
end
-
end
class Real
-
def list_target_pools(region_name)
api_method = @compute.target_pools.list
parameters = {
@@ -19,12 +21,9 @@ module Fog
'region' => region_name
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/list_url_maps.rb b/lib/fog/google/requests/compute/list_url_maps.rb
new file mode 100644
index 0000000..53aac2e
--- /dev/null
+++ b/lib/fog/google/requests/compute/list_url_maps.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def list_url_maps
+ url_maps = self.data[:url_maps].values
+
+ build_excon_response({
+ "kind" => "compute#urlMapList",
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/urlMaps",
+ "id" => "projects/#{@project}/global/urlMaps",
+ "items" => url_maps
+ })
+ end
+ end
+
+ class Real
+ def list_url_maps
+ api_method = @compute.url_maps.list
+ parameters = {
+ 'project' => @project
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/list_zone_operations.rb b/lib/fog/google/requests/compute/list_zone_operations.rb
index 13898bc..0bc25af 100644
--- a/lib/fog/google/requests/compute/list_zone_operations.rb
+++ b/lib/fog/google/requests/compute/list_zone_operations.rb
@@ -1,13 +1,10 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_zone_operations(zone)
Fog::Mock.not_implemented
end
-
end
class Real
@@ -20,8 +17,7 @@ module Fog
'project' => @project,
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
end
end
diff --git a/lib/fog/google/requests/compute/list_zone_view_resources.rb b/lib/fog/google/requests/compute/list_zone_view_resources.rb
new file mode 100644
index 0000000..7521d73
--- /dev/null
+++ b/lib/fog/google/requests/compute/list_zone_view_resources.rb
@@ -0,0 +1,25 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def list_zone_view_resources(zone_view)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def list_zone_view_resources(zone_view)
+ api_method = @resourceviews.zone_views.list_resources
+ parameters = {
+ 'projectName' => @project,
+ 'zone' => zone_view.zone,
+ 'resourceViewName' => zone_view.name
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/google/requests/compute/list_zone_views.rb b/lib/fog/google/requests/compute/list_zone_views.rb
new file mode 100644
index 0000000..ccd2db2
--- /dev/null
+++ b/lib/fog/google/requests/compute/list_zone_views.rb
@@ -0,0 +1,23 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def list_zone_views(zone_name)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def list_zone_views(zone_name)
+ api_method = @resourceviews.zone_views.list
+ parameters = {
+ 'projectName' => @project,
+ 'zone' => zone_name,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/list_zones.rb b/lib/fog/google/requests/compute/list_zones.rb
index 9ab2429..86d9468 100644
--- a/lib/fog/google/requests/compute/list_zones.rb
+++ b/lib/fog/google/requests/compute/list_zones.rb
@@ -1,35 +1,28 @@
module Fog
module Compute
class Google
-
class Mock
-
def list_zones
zones = self.data[:zones].values
- build_response(:body => {
+ build_excon_response({
"kind" => "compute#zoneList",
"selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/zones",
"id" => "projects/#{@project}/zones",
"items" => zones
})
end
-
end
class Real
-
def list_zones
api_method = @compute.zones.list
parameters = {
'project' => @project
}
- result = self.build_result(api_method, parameters)
- response = self.build_response(result)
+ request(api_method, parameters)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/remove_target_pool_health_checks.rb b/lib/fog/google/requests/compute/remove_target_pool_health_checks.rb
index c338bf9..1e37964 100644
--- a/lib/fog/google/requests/compute/remove_target_pool_health_checks.rb
+++ b/lib/fog/google/requests/compute/remove_target_pool_health_checks.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def remove_target_pool_health_checks(target_pool, health_checks)
Fog::Mock.not_implemented
end
-
end
class Real
-
def remove_target_pool_health_checks(target_pool, health_checks)
api_method = @compute.target_pools.remove_health_check
parameters = {
@@ -20,15 +16,12 @@ module Fog
'region' => target_pool.region.split('/')[-1]
}
body = {
- 'healthChecks' => health_checks.collect { |i| { 'healthCheck' => i } }
+ 'healthChecks' => health_checks.map { |i| { 'healthCheck' => i } }
}
- result = self.build_result(api_method, parameters, body_object=body)
- self.build_response(result)
+ request(api_method, parameters, body_object=body)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/remove_target_pool_instance.rb b/lib/fog/google/requests/compute/remove_target_pool_instance.rb
index 0019431..f0593eb 100644
--- a/lib/fog/google/requests/compute/remove_target_pool_instance.rb
+++ b/lib/fog/google/requests/compute/remove_target_pool_instance.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def set_metadata(instance, zone, fingerprint, metadata={})
Fog::Mock.not_implemented
end
-
end
class Real
-
def remove_target_pool_instances(target_pool, instances)
api_method = @compute.target_pools.remove_instance
parameters = {
@@ -20,15 +16,12 @@ module Fog
'region' => target_pool.region.split('/')[-1]
}
body = {
- 'instances' => instances.collect { |i| { 'instance' => i } }
+ 'instances' => instances.map { |i| { 'instance' => i } }
}
- result = self.build_result(api_method, parameters, body_object=body)
- self.build_response(result)
+ request(api_method, parameters, body_object=body)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/remove_target_pool_instances.rb b/lib/fog/google/requests/compute/remove_target_pool_instances.rb
index f882d84..7d31e7c 100644
--- a/lib/fog/google/requests/compute/remove_target_pool_instances.rb
+++ b/lib/fog/google/requests/compute/remove_target_pool_instances.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def remove_target_pool_instances(target_pool, instances)
Fog::Mock.not_implemented
end
-
end
class Real
-
def remove_target_pool_instances(target_pool, instances)
api_method = @compute.target_pools.remove_instance
parameters = {
@@ -20,15 +16,12 @@ module Fog
'region' => target_pool.region.split('/')[-1]
}
body = {
- 'instances' => instances.collect { |i| { 'instance' => i } }
+ 'instances' => instances.map { |i| { 'instance' => i } }
}
- result = self.build_result(api_method, parameters, body_object=body)
- self.build_response(result)
+ request(api_method, parameters, body_object=body)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/reset_server.rb b/lib/fog/google/requests/compute/reset_server.rb
new file mode 100644
index 0000000..f0bc76e
--- /dev/null
+++ b/lib/fog/google/requests/compute/reset_server.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def reset_server(identity, zone)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def reset_server(identity, zone)
+ api_method = @compute.instances.reset
+ parameters = {
+ 'project' => @project,
+ 'instance' => identity,
+ 'zone' => zone.split('/')[-1],
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/set_common_instance_metadata.rb b/lib/fog/google/requests/compute/set_common_instance_metadata.rb
index f760af5..b1f636b 100644
--- a/lib/fog/google/requests/compute/set_common_instance_metadata.rb
+++ b/lib/fog/google/requests/compute/set_common_instance_metadata.rb
@@ -1,12 +1,10 @@
module Fog
module Compute
class Google
-
class Mock
def set_common_instance_metadata(identity, current_fingerprint, metadata = {})
Fog::Mock.not_implemented
end
-
end
class Real
@@ -20,11 +18,9 @@ module Fog
:items => Array(metadata).map { |pair| { :key => pair[0], :value => pair[1] } },
}
- result = self.build_result(api_method, parameters, body_object)
- response = self.build_response(result)
+ request(api_method, parameters, body_object)
end
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/set_forwarding_rule_target.rb b/lib/fog/google/requests/compute/set_forwarding_rule_target.rb
index e6cfad6..2c673a2 100644
--- a/lib/fog/google/requests/compute/set_forwarding_rule_target.rb
+++ b/lib/fog/google/requests/compute/set_forwarding_rule_target.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Google
-
class Mock
def set_forwarding_rule_target(rule, target)
Fog::Mock.not_implemented
@@ -9,7 +8,6 @@ module Fog
end
class Real
-
def set_forwarding_rule_target(rule, target)
api_method = @compute.forwarding_rules.set_target
parameters = {
@@ -21,12 +19,9 @@ module Fog
'target' => target
}
- result = self.build_result(api_method, parameters, body_object=body)
- self.build_response(result)
+ request(api_method, parameters, body_object=body)
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/compute/set_global_forwarding_rule_target.rb b/lib/fog/google/requests/compute/set_global_forwarding_rule_target.rb
new file mode 100644
index 0000000..0862f08
--- /dev/null
+++ b/lib/fog/google/requests/compute/set_global_forwarding_rule_target.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def set_global_forwarding_rule_target(rule, target)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def set_global_forwarding_rule_target(rule, target)
+ api_method = @compute.global_forwarding_rules.set_target
+ parameters = {
+ 'project' => @project,
+ 'forwardingRule' => rule.name,
+ 'region' => 'global'
+ }
+ body = {
+ 'target' => target
+ }
+
+ request(api_method, parameters, body_object=body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/set_metadata.rb b/lib/fog/google/requests/compute/set_metadata.rb
index 5a231d7..8df149d 100644
--- a/lib/fog/google/requests/compute/set_metadata.rb
+++ b/lib/fog/google/requests/compute/set_metadata.rb
@@ -1,17 +1,13 @@
module Fog
module Compute
class Google
-
class Mock
-
def set_metadata(instance, zone, fingerprint, metadata={})
Fog::Mock.not_implemented
end
-
end
class Real
-
# Set an instance metadata
#
# ==== Parameters
@@ -35,12 +31,7 @@ module Fog
'fingerprint' => fingerprint,
"items" => metadata.to_a.map {|pair| { :key => pair[0], :value => pair[1] } }
}
- result = self.build_result(
- api_method,
- parameters,
- body_object=body_object
- )
- response = self.build_response(result)
+ request(api_method, parameters, body_object=body_object)
end
end
end
diff --git a/lib/fog/google/requests/compute/set_server_disk_auto_delete.rb b/lib/fog/google/requests/compute/set_server_disk_auto_delete.rb
new file mode 100644
index 0000000..95b8875
--- /dev/null
+++ b/lib/fog/google/requests/compute/set_server_disk_auto_delete.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def set_server_disk_auto_delete(identity, zone, auto_delete, device_name)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def set_server_disk_auto_delete(identity, zone, auto_delete, device_name)
+ api_method = @compute.instances.set_disk_auto_delete
+ parameters = {
+ 'project' => @project,
+ 'instance' => identity,
+ 'zone' => zone.split('/')[-1],
+ 'autoDelete' => auto_delete,
+ 'deviceName' => device_name,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/set_server_scheduling.rb b/lib/fog/google/requests/compute/set_server_scheduling.rb
new file mode 100644
index 0000000..038962a
--- /dev/null
+++ b/lib/fog/google/requests/compute/set_server_scheduling.rb
@@ -0,0 +1,29 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def set_server_scheduling(identity, zone, on_host_maintenance, automatic_restart)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def set_server_scheduling(identity, zone, on_host_maintenance, automatic_restart)
+ api_method = @compute.instances.set_scheduling
+ parameters = {
+ 'project' => @project,
+ 'instance' => identity,
+ 'zone' => zone.split('/')[-1],
+ }
+
+ body_object = {
+ 'onHostMaintenance' => on_host_maintenance,
+ 'automaticRestart' => automatic_restart,
+ }
+
+ request(api_method, parameters, body_object)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/set_tags.rb b/lib/fog/google/requests/compute/set_tags.rb
index 7df2e03..94ddc38 100644
--- a/lib/fog/google/requests/compute/set_tags.rb
+++ b/lib/fog/google/requests/compute/set_tags.rb
@@ -1,34 +1,22 @@
module Fog
module Compute
class Google
-
class Mock
-
def set_tags(instance, zone, tags=[])
Fog::Mock.not_implemented
end
-
end
class Real
-
- def set_tags(instance, zone, tags=[])
- me = self.servers.get(instance, zone)
- fp = me.tags["fingerprint"]
-
+ def set_tags(instance, zone, fingerprint, tags=[])
api_method = @compute.instances.set_tags
parameters = {
'project' => @project,
'instance' => instance,
'zone' => zone
}
- body_object = { "fingerprint" => fp, "items" => tags }
- result = self.build_result(
- api_method,
- parameters,
- body_object=body_object
- )
- response = self.build_response(result)
+ body_object = { "fingerprint" => fingerprint, "items" => tags }
+ request(api_method, parameters, body_object=body_object)
end
end
end
diff --git a/lib/fog/google/requests/compute/set_target_http_proxy_url_map.rb b/lib/fog/google/requests/compute/set_target_http_proxy_url_map.rb
new file mode 100644
index 0000000..fb02d05
--- /dev/null
+++ b/lib/fog/google/requests/compute/set_target_http_proxy_url_map.rb
@@ -0,0 +1,27 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def set_target_http_proxy_url_map(target_http_proxy, url_map)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def set_target_http_proxy_url_map(target_http_proxy, url_map)
+ api_method = @compute.target_http_proxies.set_url_map
+ parameters = {
+ 'project' => @project,
+ 'targetHttpProxy' => target_http_proxy.name,
+ }
+ url_map = url_map.self_link unless url_map.class == String
+ body = {
+ 'urlMap' => url_map
+ }
+
+ request(api_method, parameters, body_object=body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/update_url_map.rb b/lib/fog/google/requests/compute/update_url_map.rb
new file mode 100644
index 0000000..eb6e0da
--- /dev/null
+++ b/lib/fog/google/requests/compute/update_url_map.rb
@@ -0,0 +1,39 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def update_url_map(url_map, host_rules)
+ Fog::Mock.not_implemented
+ end
+ end
+
+ class Real
+ def update_url_map(url_map, host_rules, path_matchers = nil)
+ api_method = @compute.url_maps.update
+ parameters = {
+ 'project' => @project,
+ 'urlMap' => url_map.name
+ }
+
+ # add new properties to the url_map resource
+ if url_map.hostRules then
+ url_map.hostRules.concat(host_rules)
+ else
+ url_map.hostRules = host_rules
+ end
+
+ # a path matcher can only be created with a host rule that uses it
+ if path_matchers then
+ if url_map.pathMatchers then
+ url_map.pathMatchers.concat(path_matchers)
+ else
+ url_map.pathMatchers = path_matchers
+ end
+ end
+
+ request(api_method, parameters, body_object=url_map)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/compute/validate_url_map.rb b/lib/fog/google/requests/compute/validate_url_map.rb
new file mode 100644
index 0000000..b86c16d
--- /dev/null
+++ b/lib/fog/google/requests/compute/validate_url_map.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class Google
+ class Mock
+ def validate_url_map(url_map)
+ Fog::Mock::not_implemented
+ end
+ end
+
+ class Real
+ def validate_url_map(url_map)
+ api_method = @compute.url_maps.validate
+ parameters = {
+ 'project' => @project,
+ 'urlMap' => url_map.name
+ }
+ body = { 'resource' => url_map }
+
+ request(api_method, parameters, body_object = body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/dns/create_managed_zone.rb b/lib/fog/google/requests/dns/create_managed_zone.rb
new file mode 100644
index 0000000..a6040ca
--- /dev/null
+++ b/lib/fog/google/requests/dns/create_managed_zone.rb
@@ -0,0 +1,49 @@
+require 'date'
+module Fog
+ module DNS
+ class Google
+
+ class Mock
+ def create_managed_zone(zone_name, dns_name, descr='')
+ id = Fog::Mock.random_numbers(19).to_s
+ object = {
+ "kind" => "dns#managedZone",
+ "id" => id,
+ "creationTime" => DateTime.now.strftime('%FT%T.%LZ'),
+ "name" => zone_name,
+ "dnsName" => dns_name,
+ "description" => descr,
+ "nameServers" => [
+ "ns-cloud-e1.googledomains.com.",
+ "ns-cloud-e2.googledomains.com.",
+ "ns-cloud-e3.googledomains.com.",
+ "ns-cloud-e4.googledomains.com.",
+ ],
+ }
+ self.data[:managed_zones][:by_name][zone_name] = object
+ self.data[:managed_zones][:by_id][id] = object
+
+ build_excon_response(object)
+ end
+
+ end
+
+ class Real
+ def create_managed_zone(zone_name, dns_name, descr='')
+ api_method = @dns.managed_zones.create
+ parameters = {
+ 'project' => @project,
+ }
+
+ body_object = {
+ 'name' => zone_name,
+ 'dnsName' => dns_name,
+ }
+ body_object['description'] = descr unless descr.nil?
+
+ request(api_method, parameters, body_object)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/dns/delete_managed_zone.rb b/lib/fog/google/requests/dns/delete_managed_zone.rb
new file mode 100644
index 0000000..3a1e7c1
--- /dev/null
+++ b/lib/fog/google/requests/dns/delete_managed_zone.rb
@@ -0,0 +1,39 @@
+module Fog
+ module DNS
+ class Google
+
+ class Mock
+ def delete_managed_zone(zone_name_or_id)
+ if self.data[:managed_zones][:by_name].has_key?(zone_name_or_id)
+ zone_name = zone_name_or_id
+ zone = self.data[:managed_zones][:by_name][zone_name]
+ zone_id = zone['id']
+ elsif self.data[:managed_zones][:by_id].has_key?(zone_name_or_id)
+ zone_id = zone_name_or_id
+ zone = self.data[:managed_zones][:by_name][zone_id]
+ zone_name = zone['name']
+ else
+ raise Fog::Errors::NotFound, "The 'parameters.managedZone' resource named '#{zone_name_or_id}' does not exist."
+ end
+ self.data[:managed_zones][:by_name].delete(zone_name)
+ self.data[:managed_zones][:by_id].delete(zone_id)
+
+ build_excon_response(nil)
+ end
+
+ end
+
+ class Real
+ def delete_managed_zone(zone_name_or_id)
+ api_method = @dns.managed_zones.delete
+ parameters = {
+ 'project' => @project,
+ 'managedZone' => zone_name_or_id,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/dns/get_managed_zone.rb b/lib/fog/google/requests/dns/get_managed_zone.rb
new file mode 100644
index 0000000..3ec2881
--- /dev/null
+++ b/lib/fog/google/requests/dns/get_managed_zone.rb
@@ -0,0 +1,31 @@
+module Fog
+ module DNS
+ class Google
+
+ class Mock
+ def get_managed_zone(zone_name_or_id)
+ if self.data[:managed_zones][:by_name].has_key?(zone_name_or_id)
+ build_excon_response(self.data[:managed_zones][:by_name][zone_name_or_id])
+ elsif self.data[:managed_zones][:by_id].has_key?(zone_name_or_id)
+ build_excon_response(self.data[:managed_zones][:by_id][zone_name_or_id])
+ else
+ raise Fog::Errors::NotFound, "The 'parameters.managedZone' resource named '#{zone_name_or_id}' does not exist."
+ end
+ end
+
+ end
+
+ class Real
+ def get_managed_zone(zone_name_or_id)
+ api_method = @dns.managed_zones.get
+ parameters = {
+ 'project' => @project,
+ 'managedZone' => zone_name_or_id,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/dns/list_managed_zones.rb b/lib/fog/google/requests/dns/list_managed_zones.rb
new file mode 100644
index 0000000..680f132
--- /dev/null
+++ b/lib/fog/google/requests/dns/list_managed_zones.rb
@@ -0,0 +1,26 @@
+module Fog
+ module DNS
+ class Google
+ class Mock
+ def list_managed_zones()
+ zones = self.data[:managed_zones][:by_id].values
+ build_excon_response({
+ "kind" => "dns#managedZonesListResponse",
+ "managedZones" => zones,
+ })
+ end
+ end
+
+ class Real
+ def list_managed_zones()
+ api_method = @dns.managed_zones.list
+ parameters = {
+ 'project' => @project,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/monitoring/list_metric_descriptors.rb b/lib/fog/google/requests/monitoring/list_metric_descriptors.rb
new file mode 100644
index 0000000..af111a2
--- /dev/null
+++ b/lib/fog/google/requests/monitoring/list_metric_descriptors.rb
@@ -0,0 +1,191 @@
+module Fog
+ module Google
+ class Monitoring
+ ##
+ # List metric descriptors that match the query. If the query is not set, then all of the metric descriptors
+ # will be returned.
+ #
+ # @see https://developers.google.com/cloud-monitoring/v2beta1/metricDescriptors/list
+ class Real
+ def list_metric_descriptors(options = {})
+ api_method = @monitoring.metric_descriptors.list
+ parameters = {
+ 'project' => @project,
+ }
+
+ parameters['count'] = options[:count] if options.key?(:count)
+ parameters['pageToken'] = options[:page_token] if options.key?(:page_token)
+ parameters['query'] = options[:query] if options.key?(:query)
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def list_metric_descriptors(options = {})
+ body = {
+ 'kind' => 'cloudmonitoring#listMetricDescriptorsResponse',
+ 'metrics' => [
+ { 'name' => 'compute.googleapis.com/instance/cpu/reserved_cores',
+ 'project' => @project,
+ 'labels' => [
+ { 'key' => 'compute.googleapis.com/instance_name' },
+ { 'key' => 'cloud.googleapis.com/location' },
+ { 'key' => 'compute.googleapis.com/resource_id' },
+ { 'key' => 'compute.googleapis.com/resource_type' },
+ { 'key' => 'cloud.googleapis.com/service' }
+ ],
+ 'typeDescriptor' => { 'metricType' => 'gauge', 'valueType' => 'double' },
+ 'description' => 'Number of cores reserved on the host of the instance.'
+ },
+ {
+ 'name' => 'compute.googleapis.com/instance/cpu/usage_time',
+ 'project' => @project,
+ 'labels' => [
+ { 'key' => 'compute.googleapis.com/instance_name' },
+ { 'key' => 'cloud.googleapis.com/location' },
+ { 'key' => 'compute.googleapis.com/resource_id' },
+ { 'key' => 'compute.googleapis.com/resource_type' },
+ { 'key' => 'cloud.googleapis.com/service' }
+ ],
+ 'typeDescriptor' => { 'metricType' => 'delta', 'valueType' => 'double' },
+ 'description' => 'Delta CPU usage time. Units are seconds. You can get the per-core CPU utilization ratio by performing a rate operation on a point: doubleValue/(end-start), then divide by compute.googleapis.com/instance/cpu/reserved_cores at the corresponding end timestamp.'
+ },
+ {
+ 'name' => 'compute.googleapis.com/instance/disk/read_bytes_count',
+ 'project' => @project,
+ 'labels' => [
+ { 'key' => 'compute.googleapis.com/instance_name' },
+ { 'key' => 'compute.googleapis.com/device_name' },
+ { 'key' => 'compute.googleapis.com/device_type' },
+ { 'key' => 'cloud.googleapis.com/location' },
+ { 'key' => 'compute.googleapis.com/resource_id' },
+ { 'key' => 'compute.googleapis.com/resource_type' },
+ { 'key' => 'cloud.googleapis.com/service' }
+ ],
+ 'typeDescriptor' => { 'metricType' => 'delta', 'valueType' => 'int64' },
+ 'description' => 'Delta count of bytes read from disk.'
+ },
+ {
+ 'name' => 'compute.googleapis.com/instance/disk/read_ops_count',
+ 'project' => @project,
+ 'labels' => [
+ { 'key' => 'compute.googleapis.com/instance_name' },
+ { 'key' => 'compute.googleapis.com/device_name' },
+ { 'key' => 'compute.googleapis.com/device_type' },
+ { 'key' => 'cloud.googleapis.com/location' },
+ { 'key' => 'compute.googleapis.com/resource_id' },
+ { 'key' => 'compute.googleapis.com/resource_type' },
+ { 'key' => 'cloud.googleapis.com/service' }
+ ],
+ 'typeDescriptor' => { 'metricType' => 'delta', 'valueType' => 'int64' },
+ 'description' => 'Delta count of disk read IO operations.'
+ },
+ {
+ 'name' => 'compute.googleapis.com/instance/disk/write_bytes_count',
+ 'project' => @project,
+ 'labels' => [
+ { 'key' => 'compute.googleapis.com/instance_name' },
+ { 'key' => 'compute.googleapis.com/device_name' },
+ { 'key' => 'compute.googleapis.com/device_type' },
+ { 'key' => 'cloud.googleapis.com/location' },
+ { 'key' => '"compute.googleapis.com/resource_id' },
+ { 'key' => 'compute.googleapis.com/resource_type' },
+ { 'key' => 'cloud.googleapis.com/service' }
+ ],
+ 'typeDescriptor' => { 'metricType' => 'delta', 'valueType' => 'int64' },
+ 'description' => 'Delta count of bytes written to disk.'
+ },
+ {
+ 'name' => 'compute.googleapis.com/instance/disk/write_ops_count',
+ 'project' => @project,
+ 'labels' => [
+ { 'key' => 'compute.googleapis.com/instance_name' },
+ { 'key' => 'compute.googleapis.com/device_name' },
+ { 'key' => '"compute.googleapis.com/device_type' },
+ { 'key' => 'cloud.googleapis.com/location' },
+ { 'key' => 'compute.googleapis.com/resource_id' },
+ { 'key' => 'compute.googleapis.com/resource_type' },
+ { 'key' => 'cloud.googleapis.com/service' }
+ ],
+ 'typeDescriptor' => { 'metricType' => 'delta', 'valueType' => 'int64' },
+ 'description' => 'Delta count of disk write IO operations.'
+ },
+ {
+ 'name' => 'compute.googleapis.com/instance/network/received_bytes_count',
+ 'project' => @project,
+ 'labels' => [
+ { 'key' => 'compute.googleapis.com/instance_name' },
+ { 'key' => 'compute.googleapis.com/loadbalanced' },
+ { 'key' => 'cloud.googleapis.com/location' },
+ { 'key' => 'compute.googleapis.com/resource_id' },
+ { 'key' => 'compute.googleapis.com/resource_type' },
+ { 'key' => 'cloud.googleapis.com/service' }
+ ],
+ 'typeDescriptor' => { 'metricType' => 'delta', 'valueType' => 'int64' },
+ 'description' => 'Delta count of bytes received from network.'
+ },
+ {
+ 'name' => 'compute.googleapis.com/instance/network/received_packets_count',
+ 'project' => @project,
+ 'labels' => [
+ { 'key' => 'compute.googleapis.com/instance_name' },
+ { 'key' => 'compute.googleapis.com/loadbalanced' },
+ { 'key' => 'cloud.googleapis.com/location' },
+ { 'key' => 'compute.googleapis.com/resource_id' },
+ { 'key' => 'compute.googleapis.com/resource_type' },
+ { 'key' => 'cloud.googleapis.com/service' }
+ ],
+ 'typeDescriptor' => { 'metricType' => 'delta', 'valueType' => 'int64' },
+ 'description' => 'Delta count of packets received from network.'
+ },
+ {
+ 'name' => 'compute.googleapis.com/instance/network/sent_bytes_count',
+ 'project' => @project,
+ 'labels' => [
+ { 'key' => 'compute.googleapis.com/instance_name' },
+ { 'key' => 'compute.googleapis.com/loadbalanced' },
+ { 'key' => 'cloud.googleapis.com/location' },
+ { 'key' => 'compute.googleapis.com/resource_id' },
+ { 'key' => 'compute.googleapis.com/resource_type' },
+ { 'key' => 'cloud.googleapis.com/service' }
+ ],
+ 'typeDescriptor' => { 'metricType' => 'delta', 'valueType' => 'int64' },
+ 'description' => 'Delta count of bytes sent over network.'
+ },
+ {
+ 'name' => 'compute.googleapis.com/instance/network/sent_packets_count',
+ 'project' => @project,
+ 'labels' => [
+ { 'key' => 'compute.googleapis.com/instance_name' },
+ { 'key' => 'compute.googleapis.com/loadbalanced' },
+ { 'key' => 'cloud.googleapis.com/location' },
+ { 'key' => 'compute.googleapis.com/resource_id' },
+ { 'key' => 'compute.googleapis.com/resource_type' },
+ { 'key' => 'cloud.googleapis.com/service' }
+ ],
+ 'typeDescriptor' => { 'metricType' => 'delta', 'valueType' => 'int64' },
+ 'description' => 'Delta count of packets sent over network.'
+ },
+ {
+ 'name' => 'compute.googleapis.com/instance/uptime',
+ 'project' => @project,
+ 'labels' => [
+ { 'key' => 'compute.googleapis.com/instance_name' },
+ { 'key' => 'cloud.googleapis.com/location' },
+ { 'key' => 'compute.googleapis.com/resource_id' },
+ { 'key' => 'compute.googleapis.com/resource_type' },
+ { 'key' => 'cloud.googleapis.com/service' }
+ ],
+ 'typeDescriptor' => { 'metricType' => 'delta', 'valueType' => 'double' },
+ 'description' => 'Indicates the VM running time in seconds.'
+ },
+ ]
+ }
+
+ build_excon_response(body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/monitoring/list_timeseries.rb b/lib/fog/google/requests/monitoring/list_timeseries.rb
new file mode 100644
index 0000000..3b18cef
--- /dev/null
+++ b/lib/fog/google/requests/monitoring/list_timeseries.rb
@@ -0,0 +1,68 @@
+module Fog
+ module Google
+ class Monitoring
+ ##
+ # List the data points of the time series that match the metric and labels values and that have data points
+ # in the interval
+ #
+ # https://developers.google.com/cloud-monitoring/v2beta1/timeseries
+ class Real
+ def list_timeseries(metric, youngest, options = {})
+ api_method = @monitoring.timeseries.list
+ parameters = {
+ 'project' => @project,
+ 'metric' => metric,
+ 'youngest' => youngest,
+ }
+
+ parameters['count'] = options[:count] if options.key?(:count)
+ parameters['labels'] = options[:labels] if options.key?(:labels)
+ parameters['oldest'] = options[:oldest] if options.key?(:oldest)
+ parameters['pageToken'] = options[:page_token] if options.key?(:page_token)
+ parameters['timespan'] = options[:timespan] if options.key?(:timespan)
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def list_timeseries(metric, youngest, options = {})
+ body = {
+ 'kind' => 'cloudmonitoring#listTimeseriesResponse',
+ 'youngest' => youngest,
+ 'oldest' => youngest,
+ 'timeseries' => [
+ {
+ 'timeseriesDesc' => {
+ 'project' => @project,
+ 'metric' => metric,
+ 'labels' => {
+ 'cloud.googleapis.com/service' => 'compute.googleapis.com',
+ 'compute.googleapis.com/resource_type' => 'instance',
+ 'cloud.googleapis.com/location' => 'us-central1-a',
+ 'compute.googleapis.com/resource_id' => Fog::Mock.random_numbers(20).to_s,
+ 'compute.googleapis.com/instance_name' => Fog::Mock.random_hex(40),
+ },
+ },
+ 'points' => [
+ {
+ 'start' => '2014-07-17T20:06:58.000Z',
+ 'end' => '2014-07-17T20:07:58.000Z',
+ 'doubleValue' => 60.0
+ },
+ {
+ 'start' => '2014-07-17T20:05:58.000Z',
+ 'end' => '2014-07-17T20:06:58.000Z',
+ 'doubleValue' => 60.0
+ },
+ ],
+ }
+ ]
+ }
+
+ build_excon_response(body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/monitoring/list_timeseries_descriptors.rb b/lib/fog/google/requests/monitoring/list_timeseries_descriptors.rb
new file mode 100644
index 0000000..60bfd27
--- /dev/null
+++ b/lib/fog/google/requests/monitoring/list_timeseries_descriptors.rb
@@ -0,0 +1,87 @@
+module Fog
+ module Google
+ class Monitoring
+ ##
+ # List the descriptors of the time series that match the metric and labels values and that have data points
+ # in the interval.
+ #
+ # @see https://developers.google.com/cloud-monitoring/v2beta1/timeseriesDescriptors/list
+ class Real
+ def list_timeseries_descriptors(metric, youngest, options = {})
+ api_method = @monitoring.timeseries_descriptors.list
+ parameters = {
+ 'project' => @project,
+ 'metric' => metric,
+ 'youngest' => youngest,
+ }
+
+ parameters['count'] = options[:count] if options.key?(:count)
+ parameters['labels'] = options[:labels] if options.key?(:labels)
+ parameters['oldest'] = options[:oldest] if options.key?(:oldest)
+ parameters['pageToken'] = options[:page_token] if options.key?(:page_token)
+ parameters['timespan'] = options[:timespan] if options.key?(:timespan)
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def list_timeseries_descriptors(metric, youngest, options = {})
+ body = {
+ 'kind' => 'cloudmonitoring#listTimeseriesDescriptorsResponse',
+ 'youngest' => youngest,
+ 'oldest' => youngest,
+ 'timeseries' => [
+ {
+ 'project' => @project,
+ 'metric' => metric,
+ 'labels' => {
+ 'cloud.googleapis.com/service' => 'compute.googleapis.com',
+ 'compute.googleapis.com/resource_type' => 'instance',
+ 'cloud.googleapis.com/location' => 'us-central1-a',
+ 'compute.googleapis.com/resource_id' => Fog::Mock.random_numbers(20).to_s,
+ 'compute.googleapis.com/instance_name' => Fog::Mock.random_hex(40),
+ },
+ },
+ {
+ 'project' => @project,
+ 'metric' => metric,
+ 'labels' => {
+ 'cloud.googleapis.com/service' => 'compute.googleapis.com',
+ 'compute.googleapis.com/resource_type' => 'instance',
+ 'cloud.googleapis.com/location' => 'us-central1-a',
+ 'compute.googleapis.com/resource_id' => Fog::Mock.random_numbers(20).to_s,
+ 'compute.googleapis.com/instance_name' => Fog::Mock.random_hex(40),
+ },
+ },
+ {
+ 'project' => @project,
+ 'metric' => metric,
+ 'labels' => {
+ 'cloud.googleapis.com/service' => 'compute.googleapis.com',
+ 'compute.googleapis.com/resource_type' => 'instance',
+ 'cloud.googleapis.com/location' => 'us-central1-a',
+ 'compute.googleapis.com/resource_id' => Fog::Mock.random_numbers(20).to_s,
+ 'compute.googleapis.com/instance_name' => Fog::Mock.random_hex(40),
+ },
+ },
+ {
+ 'project' => @project,
+ 'metric' => metric,
+ 'labels' => {
+ 'cloud.googleapis.com/service' => 'compute.googleapis.com',
+ 'compute.googleapis.com/resource_type' => 'instance',
+ 'cloud.googleapis.com/location' => 'us-central1-a',
+ 'compute.googleapis.com/resource_id' => Fog::Mock.random_numbers(20).to_s,
+ 'compute.googleapis.com/instance_name' => Fog::Mock.random_hex(40),
+ },
+ },
+ ]
+ }
+
+ build_excon_response(body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/clone_instance.rb b/lib/fog/google/requests/sql/clone_instance.rb
new file mode 100644
index 0000000..308ade4
--- /dev/null
+++ b/lib/fog/google/requests/sql/clone_instance.rb
@@ -0,0 +1,84 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Creates a Cloud SQL instance as a clone of the source instance
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/instances/clone
+
+ class Real
+ def clone_instance(instance_id, destination_name, options = {})
+ # The @sql.instances.clone method is overrided by the standard Ruby clone method
+ # so we cannot call it because it will just clone the @sql.instances instance.
+ # Instead we need to find the proper method trough the discovered_methods.
+ api_method = @sql.instances.discovered_methods.find { |x| x.id == 'sql.instances.clone' }
+ parameters = {
+ 'project' => @project,
+ }
+
+ body = {
+ 'cloneContext' => {
+ 'kind' => 'sql#cloneContext',
+ 'sourceInstanceName' => instance_id,
+ 'destinationInstanceName' => destination_name,
+ }
+ }
+
+ if options[:log_position]
+ body['cloneContext']['binLogCoordinates'] = {
+ 'kind' => 'sql#binLogCoordinates',
+ 'binLogFileName' => options[:log_filename],
+ 'binLogPosition' => options[:log_position],
+ }
+ end
+
+ request(api_method, parameters, body)
+ end
+ end
+
+ class Mock
+ def clone_instance(instance_id, destination_name, options = {})
+ self.data[:instances][destination_name] = self.data[:instances][instance_id]
+ self.data[:instances][destination_name]['instance'] = destination_name
+ self.data[:ssl_certs][destination_name] = {}
+ self.data[:backup_runs][destination_name] = {}
+
+ operation = self.random_operation
+ self.data[:operations][destination_name] ||= {}
+ self.data[:operations][destination_name][operation] = {
+ 'kind' => 'sql#instanceOperation',
+ 'instance' => destination_name,
+ 'operation' => operation,
+ 'operationType' => 'CREATE',
+ 'state' => Fog::Google::SQL::Operation::DONE_STATE,
+ 'userEmailAddress' => 'google_client_email at developer.gserviceaccount.com',
+ 'enqueuedTime' => Time.now.iso8601,
+ 'startTime' => Time.now.iso8601,
+ 'endTime' => Time.now.iso8601,
+ }
+
+ operation = self.random_operation
+ self.data[:operations][instance_id] ||= {}
+ self.data[:operations][instance_id][operation] = {
+ 'kind' => 'sql#instanceOperation',
+ 'instance' => instance_id,
+ 'operation' => operation,
+ 'operationType' => 'CLONE',
+ 'state' => Fog::Google::SQL::Operation::DONE_STATE,
+ 'userEmailAddress' => 'google_client_email at developer.gserviceaccount.com',
+ 'enqueuedTime' => Time.now.iso8601,
+ 'startTime' => Time.now.iso8601,
+ 'endTime' => Time.now.iso8601,
+ }
+
+ body = {
+ 'kind' => 'sql#instancesClone',
+ 'operation' => operation,
+ }
+
+ build_excon_response(body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/delete_instance.rb b/lib/fog/google/requests/sql/delete_instance.rb
new file mode 100644
index 0000000..d662fb8
--- /dev/null
+++ b/lib/fog/google/requests/sql/delete_instance.rb
@@ -0,0 +1,67 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Deletes a Cloud SQL instance
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/instances/delete
+
+ class Real
+ def delete_instance(instance_id)
+ api_method = @sql.instances.delete
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def delete_instance(instance_id)
+ if self.data[:instances].has_key?(instance_id)
+ self.data[:instances].delete(instance_id)
+ self.data[:ssl_certs].delete(instance_id)
+ self.data[:backup_runs].delete(instance_id)
+
+ operation = self.random_operation
+ self.data[:operations][instance_id] ||= {}
+ self.data[:operations][instance_id][operation] = {
+ 'kind' => 'sql#instanceOperation',
+ 'instance' => instance_id,
+ 'operation' => operation,
+ 'operationType' => 'DELETE',
+ 'state' => Fog::Google::SQL::Operation::PENDING_STATE,
+ 'userEmailAddress' => 'google_client_email at developer.gserviceaccount.com',
+ 'enqueuedTime' => Time.now.iso8601,
+ }
+
+ body = {
+ 'kind' => 'sql#instancesDelete',
+ 'operation' => operation,
+ }
+ status = 200
+ else
+ body = {
+ 'error' => {
+ 'errors' => [
+ {
+ 'domain' => 'global',
+ 'reason' => 'notAuthorized',
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ ],
+ 'code' => 403,
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ }
+ status = 403
+ end
+
+ build_excon_response(body, status)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/delete_ssl_cert.rb b/lib/fog/google/requests/sql/delete_ssl_cert.rb
new file mode 100644
index 0000000..07cc1b0
--- /dev/null
+++ b/lib/fog/google/requests/sql/delete_ssl_cert.rb
@@ -0,0 +1,68 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Deletes a SSL certificate. The change will not take effect until the instance is restarted.
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/sslCerts/delete
+
+ class Real
+ def delete_ssl_cert(instance_id, sha1_fingerprint)
+ api_method = @sql.ssl_certs.delete
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ 'sha1Fingerprint' => sha1_fingerprint,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def delete_ssl_cert(instance_id, sha1_fingerprint)
+ if self.data[:ssl_certs].has_key?(instance_id)
+ self.data[:ssl_certs][instance_id].delete(sha1_fingerprint)
+
+ operation = self.random_operation
+ self.data[:operations][instance_id] ||= {}
+ self.data[:operations][instance_id][operation] = {
+ 'kind' => 'sql#instanceOperation',
+ 'instance' => instance_id,
+ 'operation' => operation,
+ 'operationType' => 'UPDATE',
+ 'state' => Fog::Google::SQL::Operation::DONE_STATE,
+ 'userEmailAddress' => 'google_client_email at developer.gserviceaccount.com',
+ 'enqueuedTime' => Time.now.iso8601,
+ 'startTime' => Time.now.iso8601,
+ 'endTime' => Time.now.iso8601,
+ }
+
+ body = {
+ 'kind' => 'sql#sslCertsDelete',
+ 'operation' => operation,
+ }
+ status = 200
+ else
+ body = {
+ 'error' => {
+ 'errors' => [
+ {
+ 'domain' => 'global',
+ 'reason' => 'notAuthorized',
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ ],
+ 'code' => 403,
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ }
+ status = 403
+ end
+
+ build_excon_response(body, status)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/export_instance.rb b/lib/fog/google/requests/sql/export_instance.rb
new file mode 100644
index 0000000..8bce35d
--- /dev/null
+++ b/lib/fog/google/requests/sql/export_instance.rb
@@ -0,0 +1,56 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Exports data from a Cloud SQL instance to a Google Cloud Storage bucket as a MySQL dump file
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/instances/export
+
+ class Real
+ def export_instance(instance_id, uri, options = {})
+ api_method = @sql.instances.export
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ }
+
+ body = {
+ 'exportContext' => {
+ 'kind' => 'sql#exportContext',
+ 'uri' => uri,
+ 'database' => Array(options[:databases]),
+ 'table' => Array(options[:tables]),
+ }
+ }
+
+ request(api_method, parameters, body)
+ end
+ end
+
+ class Mock
+ def export_instance(instance_id, uri, options = {})
+ operation = self.random_operation
+ self.data[:operations][instance_id] ||= {}
+ self.data[:operations][instance_id][operation] = {
+ 'kind' => 'sql#instanceOperation',
+ 'instance' => instance_id,
+ 'operation' => operation,
+ 'operationType' => 'EXPORT',
+ 'state' => Fog::Google::SQL::Operation::DONE_STATE,
+ 'userEmailAddress' => 'google_client_email at developer.gserviceaccount.com',
+ 'enqueuedTime' => Time.now.iso8601,
+ 'startTime' => Time.now.iso8601,
+ 'endTime' => Time.now.iso8601,
+ }
+
+ body = {
+ 'kind' => 'sql#instancesExport',
+ 'operation' => operation,
+ }
+
+ build_excon_response(body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/get_backup_run.rb b/lib/fog/google/requests/sql/get_backup_run.rb
new file mode 100644
index 0000000..d7edb4d
--- /dev/null
+++ b/lib/fog/google/requests/sql/get_backup_run.rb
@@ -0,0 +1,30 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Retrieves a resource containing information about a backup run
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/backupRuns/get
+
+ class Real
+ def get_backup_run(instance_id, backup_configuration_id, due_time)
+ api_method = @sql.backup_runs.get
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ 'backupConfiguration' => backup_configuration_id,
+ 'dueTime' => due_time,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def get_backup_run(instance_id, backup_configuration_id, due_time)
+ Fog::Mock.not_implemented
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/get_instance.rb b/lib/fog/google/requests/sql/get_instance.rb
new file mode 100644
index 0000000..2b84b2d
--- /dev/null
+++ b/lib/fog/google/requests/sql/get_instance.rb
@@ -0,0 +1,48 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Retrieves a resource containing information about a Cloud SQL instance
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/instances/get
+
+ class Real
+ def get_instance(instance_id)
+ api_method = @sql.instances.get
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def get_instance(instance_id)
+ if self.data[:instances].has_key?(instance_id)
+ body = self.data[:instances][instance_id]
+ status = 200
+ else
+ body = {
+ 'error' => {
+ 'errors' => [
+ {
+ 'domain' => 'global',
+ 'reason' => 'notAuthorized',
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ ],
+ 'code' => 403,
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ }
+ status = 403
+ end
+
+ build_excon_response(body, status)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/get_operation.rb b/lib/fog/google/requests/sql/get_operation.rb
new file mode 100644
index 0000000..87043d6
--- /dev/null
+++ b/lib/fog/google/requests/sql/get_operation.rb
@@ -0,0 +1,66 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Retrieves an instance operation that has been performed on an instance
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/operations/get
+
+ class Real
+ def get_operation(instance_id, operation_id)
+ api_method = @sql.operations.get
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ 'operation' => operation_id,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def get_operation(instance_id, operation_id)
+ if self.data[:operations].has_key?(instance_id)
+ if self.data[:operations][instance_id].has_key?(operation_id)
+ body = self.data[:operations][instance_id][operation_id]
+ status = 200
+ else
+ body = {
+ 'error' => {
+ 'errors' => [
+ {
+ 'domain' => 'global',
+ 'reason' => 'operationDoesNotExist',
+ 'message' => 'The Cloud SQL instance operation does not exist.',
+ }
+ ],
+ 'code' => 404,
+ 'message' => 'The Cloud SQL instance operation does not exist.',
+ }
+ }
+ status = 404
+ end
+ else
+ body = {
+ 'error' => {
+ 'errors' => [
+ {
+ 'domain' => 'global',
+ 'reason' => 'notAuthorized',
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ ],
+ 'code' => 403,
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ }
+ status = 403
+ end
+
+ build_excon_response(body, status)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/get_ssl_cert.rb b/lib/fog/google/requests/sql/get_ssl_cert.rb
new file mode 100644
index 0000000..f4783ef
--- /dev/null
+++ b/lib/fog/google/requests/sql/get_ssl_cert.rb
@@ -0,0 +1,66 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Retrieves a particular SSL certificate (does not include the private key)
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/sslCerts/get
+
+ class Real
+ def get_ssl_cert(instance_id, sha1_fingerprint)
+ api_method = @sql.ssl_certs.get
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ 'sha1Fingerprint' => sha1_fingerprint,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def get_ssl_cert(instance_id, sha1_fingerprint)
+ if self.data[:ssl_certs].has_key?(instance_id)
+ if self.data[:ssl_certs][instance_id].has_key?(sha1_fingerprint)
+ body = self.data[:ssl_certs][instance_id][sha1_fingerprint]
+ status = 200
+ else
+ body = {
+ 'error' => {
+ 'errors' => [
+ {
+ 'domain' => 'global',
+ 'reason' => 'sslCertificateDoesNotExist',
+ 'message' => 'The SSL certificate does not exist.',
+ }
+ ],
+ 'code' => 404,
+ 'message' => 'The SSL certificate does not exist.',
+ }
+ }
+ status = 404
+ end
+ else
+ body = {
+ 'error' => {
+ 'errors' => [
+ {
+ 'domain' => 'global',
+ 'reason' => 'notAuthorized',
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ ],
+ 'code' => 403,
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ }
+ status = 403
+ end
+
+ build_excon_response(body, status)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/import_instance.rb b/lib/fog/google/requests/sql/import_instance.rb
new file mode 100644
index 0000000..f817b6b
--- /dev/null
+++ b/lib/fog/google/requests/sql/import_instance.rb
@@ -0,0 +1,55 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Imports data into a Cloud SQL instance from a MySQL dump file in Google Cloud Storage
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/instances/import
+
+ class Real
+ def import_instance(instance_id, uri, options = {})
+ api_method = @sql.instances.import
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ }
+
+ body = {
+ 'importContext' => {
+ 'kind' => 'sql#importContext',
+ 'uri' => Array(uri),
+ 'database' => options[:database],
+ }
+ }
+
+ request(api_method, parameters, body)
+ end
+ end
+
+ class Mock
+ def import_instance(instance_id, uri, options = {})
+ operation = self.random_operation
+ self.data[:operations][instance_id] ||= {}
+ self.data[:operations][instance_id][operation] = {
+ 'kind' => 'sql#instanceOperation',
+ 'instance' => instance_id,
+ 'operation' => operation,
+ 'operationType' => 'IMPORT',
+ 'state' => Fog::Google::SQL::Operation::DONE_STATE,
+ 'userEmailAddress' => 'google_client_email at developer.gserviceaccount.com',
+ 'enqueuedTime' => Time.now.iso8601,
+ 'startTime' => Time.now.iso8601,
+ 'endTime' => Time.now.iso8601,
+ }
+
+ body = {
+ 'kind' => 'sql#instancesImport',
+ 'operation' => operation,
+ }
+
+ build_excon_response(body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/insert_instance.rb b/lib/fog/google/requests/sql/insert_instance.rb
new file mode 100644
index 0000000..8daf54f
--- /dev/null
+++ b/lib/fog/google/requests/sql/insert_instance.rb
@@ -0,0 +1,165 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Creates a new Cloud SQL instance
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/instances/insert
+
+ class Real
+ def insert_instance(name, tier, options = {})
+ api_method = @sql.instances.insert
+ parameters = {
+ 'project' => @project,
+ }
+
+ body = {
+ 'project' => @project,
+ 'instance' => name,
+ 'settings' => {
+ 'tier' => tier,
+ }
+ }
+
+ if options[:region]
+ body['region'] = options[:region]
+ end
+ if options[:activation_policy]
+ body['settings']['activationPolicy'] = options[:activation_policy]
+ end
+ if options[:autorized_gae_applications]
+ body['settings']['authorizedGaeApplications'] = Array(options[:autorized_gae_applications])
+ end
+ if options[:backup_configuration]
+ body['settings']['backupConfiguration'] = options[:backup_configuration]
+ end
+ if options[:ip_configuration_authorized_networks]
+ body['settings']['ipConfiguration'] ||= {}
+ body['settings']['ipConfiguration']['authorizedNetworks'] = Array(options[:ip_configuration_authorized_networks])
+ end
+ if options[:ip_configuration_enabled]
+ body['settings']['ipConfiguration'] ||= {}
+ body['settings']['ipConfiguration']['enabled'] = options[:ip_configuration_enabled]
+ end
+ if options[:ip_configuration_require_ssl]
+ body['settings']['ipConfiguration'] ||= {}
+ body['settings']['ipConfiguration']['requireSsl'] = options[:ip_configuration_require_ssl]
+ end
+ if options[:location_preference_zone_follow_gae_application]
+ body['settings']['locationPreference'] ||= {}
+ body['settings']['locationPreference']['followGaeApplication'] = options[:location_preference_zone_follow_gae_application]
+ end
+ if options[:location_preference_zone]
+ body['settings']['locationPreference'] ||= {}
+ body['settings']['locationPreference']['zone'] = options[:location_preference_zone]
+ end
+ if options[:pricing_plan]
+ body['settings']['pricingPlan'] = options[:pricing_plan]
+ end
+ if options[:replication_type]
+ body['settings']['replicationType'] = options[:replication_type]
+ end
+
+ request(api_method, parameters, body)
+ end
+ end
+
+ class Mock
+ def insert_instance(name, tier, options = {})
+ data = {
+ 'kind' => 'sql#instance',
+ 'instance' => name,
+ 'etag' => Fog::Mock.random_base64(32),
+ 'project' => @project,
+ 'state' => Fog::Google::SQL::Instance::RUNNABLE_STATE ,
+ 'databaseVersion' => 'MYSQL_5_5',
+ 'region' => options[:region] || 'us-central',
+ 'currentDiskSize' => '86245269',
+ 'maxDiskSize' => '268435456000',
+ 'settings' => {
+ 'kind' => 'sql#settings',
+ 'settingsVersion' => '1',
+ 'tier' => tier,
+ 'backupConfiguration' => [
+ {
+ 'kind' => 'sql#backupConfiguration',
+ 'startTime' => '04:00',
+ 'enabled' => false,
+ 'id' => Fog::Mock.random_hex(32),
+ 'binaryLogEnabled' => false
+ }
+ ],
+ 'pricingPlan' => options[:pricing_plan] || 'PER_USE',
+ 'replicationType' => options[:replication_type] || 'SYNCHRONOUS',
+ 'activationPolicy' => options[:activation_policy] || 'ON_DEMAND',
+ 'ipConfiguration' => {
+ 'enabled' => false,
+ },
+ 'locationPreference' => {
+ 'kind' => 'sql#locationPreference',
+ }
+ },
+ 'serverCaCert' => {
+ 'kind' => 'sql#sslCert',
+ 'instance' => name,
+ 'sha1Fingerprint' => Fog::Mock.random_hex(40),
+ 'commonName' => 'C=US,O=Google\\, Inc,CN=Google Cloud SQL Server CA',
+ 'certSerialNumber' => '0',
+ 'cert' => "-----BEGIN CERTIFICATE-----\nMIIDITCCAgmgAwIBAgIBADANBgkqhkiG9w0BAQUFADBIMSMwIQYDVQQDExpHb29n\nbGUgQ2xvdWQgU1FMIFNlcnZlciBDQTEUMBIGA1UEChMLR29vZ2xlLCBJbmMxCzAJ\nBgNVBAYTAlVTMB4XDTE0MDYwNDA1MjkxMVoXDTI0MDYwMTA1MjkxMVowSDEjMCEG\nA1UEAxMaR29vZ2xlIENsb3VkIFNRTCBTZXJ2ZXIgQ0ExFDASBgNVBAoTC0dvb2ds\nZSwgSW5jMQswCQYDVQQGEwJVUzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC\nggEBALlRjq3zccH5ed6NMfCFcTYd9XxYXyvLurxxjDIA6A7/ymVM9qdQC0uckf7C\nsi4uMi2yfK+PHZ0jXC+g0uPx5RTm+nbKl4I++VOh2g [...]
+ 'createTime' => Time.now.iso8601,
+ 'expirationTime' => Time.now.iso8601,
+ }
+ }
+
+ if options[:autorized_gae_applications]
+ data['settings']['authorizedGaeApplications'] = Array(options[:autorized_gae_applications])
+ end
+ if options[:backup_configuration]
+ data['settings']['backupConfiguration'] = options[:backup_configuration]
+ end
+ if options[:ip_configuration_authorized_networks]
+ data['settings']['ipConfiguration']['authorizedNetworks'] = Array(options[:ip_configuration_authorized_networks])
+ end
+ if options[:ip_configuration_enabled]
+ data['settings']['ipConfiguration']['enabled'] = options[:ip_configuration_enabled]
+ end
+ if options[:ip_configuration_require_ssl]
+ data['settings']['ipConfiguration']['requireSsl'] = options[:ip_configuration_require_ssl]
+ end
+ if options[:location_preference_zone_follow_gae_application]
+ data['settings']['locationPreference']['followGaeApplication'] = options[:location_preference_zone_follow_gae_application]
+ end
+ if options[:location_preference_zone]
+ data['settings']['locationPreference']['zone'] = options[:location_preference_zone]
+ end
+
+ self.data[:instances][name] = data
+ self.data[:ssl_certs][name] = {}
+ self.data[:backup_runs][name] = {}
+
+ operation = self.random_operation
+ self.data[:operations][name] ||= {}
+ self.data[:operations][name][operation] = {
+ 'kind' => 'sql#instanceOperation',
+ 'instance' => name,
+ 'operation' => operation,
+ 'operationType' => 'CREATE',
+ 'state' => Fog::Google::SQL::Operation::DONE_STATE,
+ 'userEmailAddress' => 'google_client_email at developer.gserviceaccount.com',
+ 'enqueuedTime' => Time.now.iso8601,
+ 'startTime' => Time.now.iso8601,
+ 'endTime' => Time.now.iso8601,
+ }
+
+ body = {
+ 'kind' => 'sql#instancesInsert',
+ 'operation' => operation,
+ }
+ status = 200
+
+ build_excon_response(body, status)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/insert_ssl_cert.rb b/lib/fog/google/requests/sql/insert_ssl_cert.rb
new file mode 100644
index 0000000..3b4639e
--- /dev/null
+++ b/lib/fog/google/requests/sql/insert_ssl_cert.rb
@@ -0,0 +1,80 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Creates an SSL certificate. The new certificate will not be usable until the instance is restarted.
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/sslCerts/insert
+
+ class Real
+ def insert_ssl_cert(instance_id, common_name)
+ api_method = @sql.ssl_certs.insert
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ }
+
+ body = {
+ 'commonName' => common_name
+ }
+
+ request(api_method, parameters, body)
+ end
+ end
+
+ class Mock
+ def insert_ssl_cert(instance_id, common_name)
+ if self.data[:ssl_certs].has_key?(instance_id)
+ sha1_fingerprint = Fog::Mock.random_hex(40)
+ data = {
+ 'kind' => 'sql#sslCert',
+ 'instance' => instance_id,
+ 'sha1Fingerprint' => sha1_fingerprint,
+ 'commonName' => common_name,
+ 'certSerialNumber' => Fog::Mock.random_numbers(9),
+ 'cert' => "-----BEGIN CERTIFICATE-----\nMIIC/zCCAeegAwIBAgIELAk5vzANBgkqhkiG9w0BAQUFADBNMSgwJgYDVQQDEx9H\nb29nbGUgQ2xvdWQgU1FMIENsaWVudCBDQSB0ZXN0MRQwEgYDVQQKEwtHb29nbGUs\nIEluYzELMAkGA1UEBhMCVVMwHhcNMTQwNjA0MDY1MjAwWhcNMjQwNjAxMDY1MjAw\nWjAyMQ0wCwYDVQQDEwR0ZXN0MRQwEgYDVQQKEwtHb29nbGUsIEluYzELMAkGA1UE\nBhMCVVMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC9G9ZG19n978EW\n5bQ/TM1Fnb4fd/FRT8XMs2D5C7+dKLEgbeUOvZQt4EsQ6cC+UVhoK7N6DvnXAZ1M\ng+B159Xlqjv8Mh5RihfGjPCdlw2pF7Pu68LyYghvQL [...]
+ 'createTime' => Time.now.iso8601,
+ 'expirationTime' => Time.now.iso8601,
+ }
+ self.data[:ssl_certs][instance_id][sha1_fingerprint] = data
+ body = {
+ 'kind' => 'sql#sslCertsInsert',
+ 'serverCaCert' => {
+ 'kind' => 'sql#sslCert',
+ 'instance' => instance_id,
+ 'sha1Fingerprint' => Fog::Mock.random_hex(40),
+ 'commonName' => 'C=US,O=Google\\, Inc,CN=Google Cloud SQL Server CA',
+ 'certSerialNumber' => '0',
+ 'cert' => "-----BEGIN CERTIFICATE-----\nMIIDITCCAgmgAwIBAgIBADANBgkqhkiG9w0BAQUFADBIMSMwIQYDVQQDExpHb29n\nbGUgQ2xvdWQgU1FMIFNlcnZlciBDQTEUMBIGA1UEChMLR29vZ2xlLCBJbmMxCzAJ\nBgNVBAYTAlVTMB4XDTE0MDYwNDA1MjkxMVoXDTI0MDYwMTA1MjkxMVowSDEjMCEG\nA1UEAxMaR29vZ2xlIENsb3VkIFNRTCBTZXJ2ZXIgQ0ExFDASBgNVBAoTC0dvb2ds\nZSwgSW5jMQswCQYDVQQGEwJVUzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC\nggEBALlRjq3zccH5ed6NMfCFcTYd9XxYXyvLurxxjDIA6A7/ymVM9qdQC0uckf7C\nsi4uMi2yfK+PHZ0jXC+g0uPx5RTm+nbKl4I++VOh [...]
+ 'createTime' => Time.now.iso8601,
+ 'expirationTime' => Time.now.iso8601,
+ },
+ 'clientCert' => {
+ 'certInfo' => data,
+ 'certPrivateKey' => "-----BEGIN RSA PRIVATE KEY-----\nMIIEpAIBAAKCAQEAvRvWRtfZ/e/BFuW0P0zNRZ2+H3fxUU/FzLNg+Qu/nSixIG3l\nDr2ULeBLEOnAvlFYaCuzeg751wGdTIPgdefV5ao7/DIeUYoXxozwnZcNqRez7uvC\n8mIIb0C4Yu8objXmjfhQXir43FvZNIueADPFG9mv5MQMDLV5tZBrYHNfqpFJcgcX\n59VKCiOQ4b8PyJ8YCNZEv1VJJJPZL9Kv6Mj626BP77korQ6vqR40RcKyEHEuj8/Q\n2B4WVcgw5EyIe7y1zNCREEU9UogPJPuIcFyN1gaj0WUSOB9SpmEkiCr2bXIut0mz\nP6x4rV5BoqRRdZcNIEqn6TPIBt+n5WiEwTyPewIDAQABAoIBAH89e6+vDL4P05vU\ncrMkufldac9CpNxREIXrLBRmE0 [...]
+ }
+ }
+ status = 200
+ else
+ body = {
+ 'error' => {
+ 'errors' => [
+ {
+ 'domain' => 'global',
+ 'reason' => 'notAuthorized',
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ ],
+ 'code' => 403,
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ }
+ status = 403
+ end
+
+ build_excon_response(body, status)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/list_backup_runs.rb b/lib/fog/google/requests/sql/list_backup_runs.rb
new file mode 100644
index 0000000..17606be
--- /dev/null
+++ b/lib/fog/google/requests/sql/list_backup_runs.rb
@@ -0,0 +1,30 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Lists all backup runs associated with a given instance and configuration in the
+ # reverse chronological order of the enqueued time
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/backupRuns/list
+
+ class Real
+ def list_backup_runs(instance_id, backup_configuration_id)
+ api_method = @sql.backup_runs.list
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ 'backupConfiguration' => backup_configuration_id,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def list_backup_runs(instance_id, backup_configuration_id)
+ Fog::Mock.not_implemented
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/list_flags.rb b/lib/fog/google/requests/sql/list_flags.rb
new file mode 100644
index 0000000..ac34a9d
--- /dev/null
+++ b/lib/fog/google/requests/sql/list_flags.rb
@@ -0,0 +1,143 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # List all available database flags for Google Cloud SQL instances
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/flags/list
+
+ class Real
+ def list_flags
+ api_method = @sql.flags.list
+ parameters = {}
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def list_flags
+ body = {
+ 'kind' => 'sql#flagsList',
+ 'items' => [
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'log_output',
+ 'type' => 'STRING',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ 'allowedStringValues' => ['TABLE', 'NONE'],
+ },
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'general_log',
+ 'type' => 'BOOLEAN',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ },
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'log_queries_not_using_indexes',
+ 'type' => 'BOOLEAN',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ },
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'log_bin_trust_function_creators',
+ 'type' => 'BOOLEAN',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ },
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'slow_query_log',
+ 'type' => 'BOOLEAN',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ },
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'read_only',
+ 'type' => 'BOOLEAN',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ },
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'max_allowed_packet',
+ 'type' => 'INTEGER',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ 'minValue' => '16384',
+ 'maxValue' => '1073741824',
+ },
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'long_query_time',
+ 'type' => 'INTEGER',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ 'minValue' => '0',
+ 'maxValue' => '30000000',
+ },
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'group_concat_max_len',
+ 'type' => 'INTEGER',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ 'minValue' => '4',
+ 'maxValue' => '17179869184',
+ },
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'wait_timeout',
+ 'type' => 'INTEGER',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ 'minValue' => '1',
+ 'maxValue' => '31536000',
+ },
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'innodb_lock_wait_timeout',
+ 'type' => 'INTEGER',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ 'minValue' => '1',
+ 'maxValue' => '1073741824',
+ },
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'lower_case_table_names',
+ 'type' => 'INTEGER',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ 'minValue' => '0',
+ 'maxValue' => '2',
+ },
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'innodb_flush_log_at_trx_commit',
+ 'type' => 'INTEGER',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ 'minValue' => '0',
+ 'maxValue' => '2',
+ },
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'skip_show_database',
+ 'type' => 'NONE',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ },
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'event_scheduler',
+ 'type' => 'BOOLEAN',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ },
+ {
+ 'kind' => 'sql#flag',
+ 'name' => 'character_set_server',
+ 'type' => 'STRING',
+ 'appliesTo' => ['MYSQL_5_5', 'MYSQL_5_6'],
+ 'allowedStringValues' => ['utf8', 'utf8mb4'],
+ },
+ ]
+ }
+
+ build_excon_response(body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/list_instances.rb b/lib/fog/google/requests/sql/list_instances.rb
new file mode 100644
index 0000000..beb81d2
--- /dev/null
+++ b/lib/fog/google/requests/sql/list_instances.rb
@@ -0,0 +1,32 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Lists instances under a given project in the alphabetical order of the instance name
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/instances/list
+
+ class Real
+ def list_instances
+ api_method = @sql.instances.list
+ parameters = {
+ 'project' => @project,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def list_instances
+ body = {
+ 'kind' => 'sql#instancesList',
+ 'items' => self.data[:instances].values,
+ }
+
+ build_excon_response(body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/list_operations.rb b/lib/fog/google/requests/sql/list_operations.rb
new file mode 100644
index 0000000..6150594
--- /dev/null
+++ b/lib/fog/google/requests/sql/list_operations.rb
@@ -0,0 +1,52 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Lists all instance operations that have been performed on the given Cloud SQL instance
+ # in the reverse chronological order of the start time
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/operations/list
+
+ class Real
+ def list_operations(instance_id)
+ api_method = @sql.operations.list
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def list_operations(instance_id)
+ if self.data[:operations].has_key?(instance_id)
+ body = {
+ 'kind' => 'sql#operationsList',
+ 'items' => self.data[:operations][instance_id].values,
+ }
+ status = 200
+ else
+ body = {
+ 'error' => {
+ 'errors' => [
+ {
+ 'domain' => 'global',
+ 'reason' => 'notAuthorized',
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ ],
+ 'code' => 403,
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ }
+ status = 403
+ end
+
+ build_excon_response(body, status)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/list_ssl_certs.rb b/lib/fog/google/requests/sql/list_ssl_certs.rb
new file mode 100644
index 0000000..3e62842
--- /dev/null
+++ b/lib/fog/google/requests/sql/list_ssl_certs.rb
@@ -0,0 +1,51 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Lists all of the current SSL certificates for the instance
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/sslCerts/list
+
+ class Real
+ def list_ssl_certs(instance_id)
+ api_method = @sql.ssl_certs.list
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def list_ssl_certs(instance_id)
+ if self.data[:ssl_certs].has_key?(instance_id)
+ body = {
+ 'kind' => 'sql#sslCertsList',
+ 'items' => self.data[:ssl_certs][instance_id].values,
+ }
+ status = 200
+ else
+ body = {
+ 'error' => {
+ 'errors' => [
+ {
+ 'domain' => 'global',
+ 'reason' => 'notAuthorized',
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ ],
+ 'code' => 403,
+ 'message' => 'The client is not authorized to make this request.',
+ }
+ }
+ status = 403
+ end
+
+ build_excon_response(body, status)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/list_tiers.rb b/lib/fog/google/requests/sql/list_tiers.rb
new file mode 100644
index 0000000..cd6d9a9
--- /dev/null
+++ b/lib/fog/google/requests/sql/list_tiers.rb
@@ -0,0 +1,82 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Lists all available service tiers for Google Cloud SQL
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/tiers/list
+
+ class Real
+ def list_tiers
+ api_method = @sql.tiers.list
+ parameters = {
+ 'project' => @project,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def list_tiers
+ body = {
+ 'kind' => 'sql#tiersList',
+ 'items' => [
+ {
+ 'kind' => 'sql#tier',
+ 'tier' => 'D0',
+ 'RAM' => '134217728',
+ 'DiskQuota' => '268435456000',
+ 'region' => ['us-central', 'europe-west1', 'asia-east1'],
+ },
+ {
+ 'kind' => 'sql#tier',
+ 'tier' => 'D1',
+ 'RAM' => '536870912',
+ 'DiskQuota' => '268435456000',
+ 'region' => ['us-central', 'europe-west1', 'asia-east1'],
+ },
+ {
+ 'kind' => 'sql#tier',
+ 'tier' => 'D2',
+ 'RAM' => '1073741824',
+ 'DiskQuota' => '268435456000',
+ 'region' => ['us-central', 'europe-west1', 'asia-east1'],
+ },
+ {
+ 'kind' => 'sql#tier',
+ 'tier' => 'D4',
+ 'RAM' => '2147483648',
+ 'DiskQuota' => '268435456000',
+ 'region' => ['us-central', 'europe-west1', 'asia-east1'],
+ },
+ {
+ 'kind' => 'sql#tier',
+ 'tier' => 'D8',
+ 'RAM' => '4294967296',
+ 'DiskQuota' => '268435456000',
+ 'region' => ['us-central', 'europe-west1', 'asia-east1'],
+ },
+ {
+ 'kind' => 'sql#tier',
+ 'tier' => 'D16',
+ 'RAM' => '8589934592',
+ 'DiskQuota' => '268435456000',
+ 'region' => ['us-central', 'europe-west1', 'asia-east1'],
+ },
+ {
+ 'kind' => 'sql#tier',
+ 'tier' => 'D32',
+ 'RAM' => '17179869184',
+ 'DiskQuota' => '268435456000',
+ 'region' => ['us-central'],
+ },
+ ]
+ }
+
+ build_excon_response(body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/reset_instance_ssl_config.rb b/lib/fog/google/requests/sql/reset_instance_ssl_config.rb
new file mode 100644
index 0000000..bf39d84
--- /dev/null
+++ b/lib/fog/google/requests/sql/reset_instance_ssl_config.rb
@@ -0,0 +1,49 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Deletes all client certificates and generates a new server SSL certificate for the instance.
+ # The changes will not take effect until the instance is restarted. Existing instances without
+ # a server certificate will need to call this once to set a server certificate
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/instances/resetSslConfig
+
+ class Real
+ def reset_instance_ssl_config(instance_id)
+ api_method = @sql.instances.reset_ssl_config
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def reset_instance_ssl_config(instance_id)
+ operation = self.random_operation
+ self.data[:operations][instance_id] ||= {}
+ self.data[:operations][instance_id][operation] = {
+ 'kind' => 'sql#instanceOperation',
+ 'instance' => instance_id,
+ 'operation' => operation,
+ 'operationType' => 'UPDATE',
+ 'state' => Fog::Google::SQL::Operation::DONE_STATE,
+ 'userEmailAddress' => 'google_client_email at developer.gserviceaccount.com',
+ 'enqueuedTime' => Time.now.iso8601,
+ 'startTime' => Time.now.iso8601,
+ 'endTime' => Time.now.iso8601,
+ }
+
+ body = {
+ 'kind' => 'sql#instancesResetSslConfig',
+ 'operation' => operation,
+ }
+
+ build_excon_response(body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/restart_instance.rb b/lib/fog/google/requests/sql/restart_instance.rb
new file mode 100644
index 0000000..0cd77cd
--- /dev/null
+++ b/lib/fog/google/requests/sql/restart_instance.rb
@@ -0,0 +1,47 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Restarts a Cloud SQL instance
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/instances/restart
+
+ class Real
+ def restart_instance(instance_id)
+ api_method = @sql.instances.restart
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def restart_instance(instance_id)
+ operation = self.random_operation
+ self.data[:operations][instance_id] ||= {}
+ self.data[:operations][instance_id][operation] = {
+ 'kind' => 'sql#instanceOperation',
+ 'instance' => instance_id,
+ 'operation' => operation,
+ 'operationType' => 'RESTART',
+ 'state' => Fog::Google::SQL::Operation::DONE_STATE,
+ 'userEmailAddress' => 'google_client_email at developer.gserviceaccount.com',
+ 'enqueuedTime' => Time.now.iso8601,
+ 'startTime' => Time.now.iso8601,
+ 'endTime' => Time.now.iso8601,
+ }
+
+ body = {
+ 'kind' => 'sql#instancesRestart',
+ 'operation' => operation,
+ }
+
+ build_excon_response(body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/restore_instance_backup.rb b/lib/fog/google/requests/sql/restore_instance_backup.rb
new file mode 100644
index 0000000..73a3135
--- /dev/null
+++ b/lib/fog/google/requests/sql/restore_instance_backup.rb
@@ -0,0 +1,30 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Restores a backup of a Cloud SQL instance
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/instances/restoreBackup
+
+ class Real
+ def restore_instance_backup(identity, backup_configuration, due_time)
+ api_method = @sql.instances.reset_ssl_config
+ parameters = {
+ 'project' => @project,
+ 'instance' => identity,
+ 'backupConfiguration' => backup_configuration,
+ 'dueTime' => due_time,
+ }
+
+ request(api_method, parameters)
+ end
+ end
+
+ class Mock
+ def restore_instance_backup(identity, backup_configuration, due_time)
+ Fog::Mock.not_implemented
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/set_instance_root_password.rb b/lib/fog/google/requests/sql/set_instance_root_password.rb
new file mode 100644
index 0000000..6be9426
--- /dev/null
+++ b/lib/fog/google/requests/sql/set_instance_root_password.rb
@@ -0,0 +1,54 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Sets the password for the root user
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/instances/setRootPassword
+
+ class Real
+ def set_instance_root_password(instance_id, password)
+ api_method = @sql.instances.set_root_password
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ }
+
+ body = {
+ 'setRootPasswordContext' => {
+ 'kind' => 'sql#setRootUserContext',
+ 'password' => password,
+ }
+ }
+
+ request(api_method, parameters, body)
+ end
+ end
+
+ class Mock
+ def set_instance_root_password(instance_id, password)
+ operation = self.random_operation
+ self.data[:operations][instance_id] ||= {}
+ self.data[:operations][instance_id][operation] = {
+ 'kind' => 'sql#instanceOperation',
+ 'instance' => instance_id,
+ 'operation' => operation,
+ 'operationType' => 'INJECT_USER',
+ 'state' => Fog::Google::SQL::Operation::DONE_STATE,
+ 'userEmailAddress' => 'google_client_email at developer.gserviceaccount.com',
+ 'enqueuedTime' => Time.now.iso8601,
+ 'startTime' => Time.now.iso8601,
+ 'endTime' => Time.now.iso8601,
+ }
+
+ body = {
+ 'kind' => 'sql#instancesSetRootPassword',
+ 'operation' => operation,
+ }
+
+ build_excon_response(body)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/requests/sql/update_instance.rb b/lib/fog/google/requests/sql/update_instance.rb
new file mode 100644
index 0000000..360188c
--- /dev/null
+++ b/lib/fog/google/requests/sql/update_instance.rb
@@ -0,0 +1,132 @@
+module Fog
+ module Google
+ class SQL
+ ##
+ # Updates settings of a Cloud SQL instance
+ #
+ # @see https://developers.google.com/cloud-sql/docs/admin-api/v1beta3/instances/update
+
+ class Real
+ def update_instance(instance_id, settings_version, tier, options = {})
+ api_method = @sql.instances.update
+ parameters = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ }
+
+ body = {
+ 'project' => @project,
+ 'instance' => instance_id,
+ 'settings' => {
+ 'settingsVersion' => settings_version,
+ 'tier' => tier,
+ }
+ }
+
+ if options[:activation_policy]
+ body['settings']['activationPolicy'] = options[:activation_policy]
+ end
+ if options[:autorized_gae_applications]
+ body['settings']['authorizedGaeApplications'] = Array(options[:autorized_gae_applications])
+ end
+ if options[:backup_configuration]
+ body['settings']['backupConfiguration'] = options[:backup_configuration]
+ end
+ if options[:ip_configuration_authorized_networks]
+ body['settings']['ipConfiguration'] ||= {}
+ body['settings']['ipConfiguration']['authorizedNetworks'] = Array(options[:ip_configuration_authorized_networks])
+ end
+ if options[:ip_configuration_enabled]
+ body['settings']['ipConfiguration'] ||= {}
+ body['settings']['ipConfiguration']['enabled'] = options[:ip_configuration_enabled]
+ end
+ if options[:ip_configuration_require_ssl]
+ body['settings']['ipConfiguration'] ||= {}
+ body['settings']['ipConfiguration']['requireSsl'] = options[:ip_configuration_require_ssl]
+ end
+ if options[:location_preference_zone_follow_gae_application]
+ body['settings']['locationPreference'] ||= {}
+ body['settings']['locationPreference']['followGaeApplication'] = options[:location_preference_zone_follow_gae_application]
+ end
+ if options[:location_preference_zone]
+ body['settings']['locationPreference'] ||= {}
+ body['settings']['locationPreference']['zone'] = options[:location_preference_zone]
+ end
+ if options[:pricing_plan]
+ body['settings']['pricingPlan'] = options[:pricing_plan]
+ end
+ if options[:replication_type]
+ body['settings']['replicationType'] = options[:replication_type]
+ end
+
+ request(api_method, parameters, body)
+ end
+ end
+
+ class Mock
+ def update_instance(instance_id, settings_version, tier, options = {})
+ data = self.data[:instances][instance_id]
+ data['tier'] = tier
+ if options[:activation_policy]
+ data['settings']['activationPolicy'] = options[:activation_policy]
+ end
+ if options[:autorized_gae_applications]
+ data['settings']['authorizedGaeApplications'] = Array(options[:autorized_gae_applications])
+ end
+ if options[:backup_configuration]
+ data['settings']['backupConfiguration'] = options[:backup_configuration]
+ end
+ if options[:ip_configuration_authorized_networks]
+ data['settings']['ipConfiguration'] ||= {}
+ data['settings']['ipConfiguration']['authorizedNetworks'] = Array(options[:ip_configuration_authorized_networks])
+ end
+ if options[:ip_configuration_enabled]
+ data['settings']['ipConfiguration'] ||= {}
+ data['settings']['ipConfiguration']['enabled'] = options[:ip_configuration_enabled]
+ end
+ if options[:ip_configuration_require_ssl]
+ data['settings']['ipConfiguration'] ||= {}
+ data['settings']['ipConfiguration']['requireSsl'] = options[:ip_configuration_require_ssl]
+ end
+ if options[:location_preference_zone_follow_gae_application]
+ data['settings']['locationPreference'] ||= {}
+ data['settings']['locationPreference']['followGaeApplication'] = options[:location_preference_zone_follow_gae_application]
+ end
+ if options[:location_preference_zone]
+ data['settings']['locationPreference'] ||= {}
+ data['settings']['locationPreference']['zone'] = options[:location_preference_zone]
+ end
+ if options[:pricing_plan]
+ data['settings']['pricingPlan'] = options[:pricing_plan]
+ end
+ if options[:replication_type]
+ data['settings']['replicationType'] = options[:replication_type]
+ end
+ self.data[:instances][instance_id] = data
+
+ operation = self.random_operation
+ self.data[:operations][instance_id] ||= {}
+ self.data[:operations][instance_id][operation] = {
+ 'kind' => 'sql#instanceOperation',
+ 'instance' => instance_id,
+ 'operation' => operation,
+ 'operationType' => 'UPDATE',
+ 'state' => Fog::Google::SQL::Operation::DONE_STATE,
+ 'userEmailAddress' => 'google_client_email at developer.gserviceaccount.com',
+ 'enqueuedTime' => Time.now.iso8601,
+ 'startTime' => Time.now.iso8601,
+ 'endTime' => Time.now.iso8601,
+ }
+
+ body = {
+ 'kind' => 'sql#instancesUpdate',
+ 'operation' => operation,
+ }
+ status = 200
+
+ build_excon_response(body, status)
+ end
+ end
+ end
+ end
+end
\ No newline at end of file
diff --git a/lib/fog/google/requests/storage/copy_object.rb b/lib/fog/google/requests/storage/copy_object.rb
index b8eb5a6..f18effe 100644
--- a/lib/fog/google/requests/storage/copy_object.rb
+++ b/lib/fog/google/requests/storage/copy_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Google
class Real
-
require 'fog/google/parsers/storage/copy_object'
# Copy an object from one Google Storage bucket to another
@@ -36,11 +35,9 @@ module Fog
:path => CGI.escape(target_object_name)
})
end
-
end
class Mock
-
def copy_object(source_bucket_name, source_object_name, target_bucket_name, target_object_name, options = {})
response = Excon::Response.new
source_bucket = self.data[:buckets][source_bucket_name]
@@ -65,7 +62,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/google/requests/storage/delete_bucket.rb b/lib/fog/google/requests/storage/delete_bucket.rb
index 101acbb..cdd3c5a 100644
--- a/lib/fog/google/requests/storage/delete_bucket.rb
+++ b/lib/fog/google/requests/storage/delete_bucket.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Google
class Real
-
# Delete an Google Storage bucket
#
# ==== Parameters
@@ -19,11 +18,9 @@ module Fog
:method => 'DELETE'
})
end
-
end
class Mock
-
def delete_bucket(bucket_name)
response = Excon::Response.new
if self.data[:buckets][bucket_name].nil?
@@ -38,9 +35,7 @@ module Fog
end
response
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/storage/delete_object.rb b/lib/fog/google/requests/storage/delete_object.rb
index 3343751..85068d2 100644
--- a/lib/fog/google/requests/storage/delete_object.rb
+++ b/lib/fog/google/requests/storage/delete_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Google
class Real
-
# Delete an object from Google Storage
#
# ==== Parameters
@@ -22,11 +21,9 @@ module Fog
:path => CGI.escape(object_name)
})
end
-
end
class Mock
-
def delete_object(bucket_name, object_name)
response = Excon::Response.new
if bucket = self.data[:buckets][bucket_name]
@@ -43,7 +40,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/google/requests/storage/get_bucket.rb b/lib/fog/google/requests/storage/get_bucket.rb
index 212e735..5bf9427 100644
--- a/lib/fog/google/requests/storage/get_bucket.rb
+++ b/lib/fog/google/requests/storage/get_bucket.rb
@@ -3,7 +3,6 @@ module Fog
module Storage
class Google
class Real
-
require 'fog/google/parsers/storage/get_bucket'
# List information about objects in an Google Storage bucket
@@ -51,11 +50,9 @@ module Fog
:query => options
})
end
-
end
class Mock
-
def get_bucket(bucket_name, options = {})
unless bucket_name
raise ArgumentError.new('bucket_name is required')
@@ -103,7 +100,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/google/requests/storage/get_bucket_acl.rb b/lib/fog/google/requests/storage/get_bucket_acl.rb
index b6930cc..4a2b5c5 100644
--- a/lib/fog/google/requests/storage/get_bucket_acl.rb
+++ b/lib/fog/google/requests/storage/get_bucket_acl.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Google
class Real
-
require 'fog/google/parsers/storage/access_control_list'
# Get access control list for an Google Storage bucket
@@ -40,11 +39,9 @@ module Fog
:query => {'acl' => nil}
})
end
-
end
class Mock
-
def get_bucket_acl(bucket_name)
response = Excon::Response.new
if acl = self.data[:acls][:bucket][bucket_name]
@@ -56,7 +53,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/google/requests/storage/get_object.rb b/lib/fog/google/requests/storage/get_object.rb
index a2ac287..fb89ed7 100644
--- a/lib/fog/google/requests/storage/get_object.rb
+++ b/lib/fog/google/requests/storage/get_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Google
class Real
-
# Get an object from Google Storage
#
# ==== Parameters
@@ -57,11 +56,9 @@ module Fog
:path => CGI.escape(object_name),
}))
end
-
end
class Mock
-
def get_object(bucket_name, object_name, options = {}, &block)
unless bucket_name
raise ArgumentError.new('bucket_name is required')
@@ -105,7 +102,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/google/requests/storage/get_object_acl.rb b/lib/fog/google/requests/storage/get_object_acl.rb
index 0023ad8..2f70a7e 100644
--- a/lib/fog/google/requests/storage/get_object_acl.rb
+++ b/lib/fog/google/requests/storage/get_object_acl.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Google
class Real
-
require 'fog/google/parsers/storage/access_control_list'
# Get access control list for an Google Storage object
@@ -51,11 +50,9 @@ module Fog
:query => query
})
end
-
end
class Mock
-
def get_object_acl(bucket_name, object_name)
response = Excon::Response.new
if acl = self.data[:acls][:object][bucket_name] && self.data[:acls][:object][bucket_name][object_name]
@@ -67,7 +64,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/google/requests/storage/get_object_http_url.rb b/lib/fog/google/requests/storage/get_object_http_url.rb
index e6b0fbf..b11a331 100644
--- a/lib/fog/google/requests/storage/get_object_http_url.rb
+++ b/lib/fog/google/requests/storage/get_object_http_url.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Google
-
module GetObjectHttpUrl
-
def get_object_http_url(bucket_name, object_name, expires)
unless bucket_name
raise ArgumentError.new('bucket_name is required')
@@ -18,11 +16,9 @@ module Fog
:path => "#{bucket_name}/#{object_name}"
}, expires)
end
-
end
class Real
-
# Get an expiring object http url from S3
#
# ==== Parameters
@@ -38,13 +34,10 @@ module Fog
# http://docs.amazonwebservices.com/AmazonS3/latest/dev/S3_QSAuth.html
include GetObjectHttpUrl
-
end
class Mock # :nodoc:all
-
include GetObjectHttpUrl
-
end
end
end
diff --git a/lib/fog/google/requests/storage/get_object_https_url.rb b/lib/fog/google/requests/storage/get_object_https_url.rb
index 07f7ad2..9bb9226 100644
--- a/lib/fog/google/requests/storage/get_object_https_url.rb
+++ b/lib/fog/google/requests/storage/get_object_https_url.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Google
-
module GetObjectHttpsUrl
-
def get_object_https_url(bucket_name, object_name, expires)
unless bucket_name
raise ArgumentError.new('bucket_name is required')
@@ -18,11 +16,9 @@ module Fog
:path => "#{bucket_name}/#{object_name}"
}, expires)
end
-
end
class Real
-
# Get an expiring object https url from Google Storage
#
# ==== Parameters
@@ -38,13 +34,10 @@ module Fog
# http://docs.amazonwebservices.com/AmazonS3/latest/dev/S3_QSAuth.html
include GetObjectHttpsUrl
-
end
class Mock # :nodoc:all
-
include GetObjectHttpsUrl
-
end
end
end
diff --git a/lib/fog/google/requests/storage/get_object_torrent.rb b/lib/fog/google/requests/storage/get_object_torrent.rb
index 08c51be..98d8e40 100644
--- a/lib/fog/google/requests/storage/get_object_torrent.rb
+++ b/lib/fog/google/requests/storage/get_object_torrent.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Google
class Real
-
# Get torrent for an Google Storage object
#
# ==== Parameters
@@ -40,7 +39,6 @@ module Fog
:query => {'torrent' => nil}
})
end
-
end
end
end
diff --git a/lib/fog/google/requests/storage/get_object_url.rb b/lib/fog/google/requests/storage/get_object_url.rb
index 40f085a..ebfb437 100644
--- a/lib/fog/google/requests/storage/get_object_url.rb
+++ b/lib/fog/google/requests/storage/get_object_url.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Google
class Real
-
# Get an expiring object url from Google Storage
#
# ==== Parameters
@@ -21,16 +20,13 @@ module Fog
Fog::Logger.deprecation("Fog::Storage::Google => ##{get_object_url} is deprecated, use ##{get_object_https_url} instead[/] [light_black](#{caller.first})")
get_object_https_url(bucket_name, object_name, expires)
end
-
end
class Mock # :nodoc:all
-
def get_object_url(bucket_name, object_name, expires)
Fog::Logger.deprecation("Fog::Storage::Google => ##{get_object_url} is deprecated, use ##{get_object_https_url} instead[/] [light_black](#{caller.first})")
get_object_https_url(bucket_name, object_name, expires)
end
-
end
end
end
diff --git a/lib/fog/google/requests/storage/get_service.rb b/lib/fog/google/requests/storage/get_service.rb
index bbbb2f9..ea7913f 100644
--- a/lib/fog/google/requests/storage/get_service.rb
+++ b/lib/fog/google/requests/storage/get_service.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Google
class Real
-
require 'fog/google/parsers/storage/get_service'
# List information about Google Storage buckets for authorized user
@@ -23,15 +22,12 @@ module Fog
:host => @host,
:idempotent => true,
:method => 'GET',
- :parser => Fog::Parsers::Storage::Google::GetService.new,
- :url => @host
+ :parser => Fog::Parsers::Storage::Google::GetService.new
})
end
-
end
class Mock
-
def get_service
response = Excon::Response.new
response.headers['Status'] = 200
@@ -46,7 +42,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/google/requests/storage/head_object.rb b/lib/fog/google/requests/storage/head_object.rb
index 16e0352..8fa7e6d 100644
--- a/lib/fog/google/requests/storage/head_object.rb
+++ b/lib/fog/google/requests/storage/head_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Google
class Real
-
# Get headers for an object from Google Storage
#
# ==== Parameters
@@ -47,17 +46,14 @@ module Fog
:query => query
})
end
-
end
class Mock
-
def head_object(bucket_name, object_name, options = {})
response = get_object(bucket_name, object_name, options)
response.body = nil
response
end
-
end
end
end
diff --git a/lib/fog/google/requests/storage/put_bucket.rb b/lib/fog/google/requests/storage/put_bucket.rb
index 6980aad..29b74ad 100644
--- a/lib/fog/google/requests/storage/put_bucket.rb
+++ b/lib/fog/google/requests/storage/put_bucket.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Google
class Real
-
# Create an Google Storage bucket
#
# ==== Parameters
@@ -34,11 +33,9 @@ DATA
:method => 'PUT'
})
end
-
end
class Mock
-
def put_bucket(bucket_name, options = {})
acl = options['x-goog-acl'] || 'private'
if !['private', 'public-read', 'public-read-write', 'authenticated-read'].include?(acl)
@@ -68,7 +65,6 @@ DATA
end
response
end
-
end
end
end
diff --git a/lib/fog/google/requests/storage/put_bucket_acl.rb b/lib/fog/google/requests/storage/put_bucket_acl.rb
index f168d38..7fb0673 100644
--- a/lib/fog/google/requests/storage/put_bucket_acl.rb
+++ b/lib/fog/google/requests/storage/put_bucket_acl.rb
@@ -1,7 +1,6 @@
module Fog
module Storage
class Google
-
class Mock
def put_bucket_acl(bucket_name, acl)
Fog::Mock.not_implemented
@@ -9,10 +8,8 @@ module Fog
end
class Real
-
# Change access control list for an Google Storage bucket
def put_bucket_acl(bucket_name, acl)
-
data = <<-DATA
<AccessControlList>
<Owner>
@@ -34,8 +31,7 @@ DATA
})
end
-
- private
+ private
def tag(name, value)
"<#{name}>#{value}</#{name}>"
@@ -56,9 +52,7 @@ DATA
tag('Entry', scope_tag(entry['Scope']) + tag('Permission', entry['Permission']))
end.join("\n")
end
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/storage/put_object.rb b/lib/fog/google/requests/storage/put_object.rb
index ec5ceff..a061c9d 100644
--- a/lib/fog/google/requests/storage/put_object.rb
+++ b/lib/fog/google/requests/storage/put_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Google
class Real
-
# Create an object in an Google Storage bucket
#
# ==== Parameters
@@ -36,11 +35,9 @@ module Fog
:path => CGI.escape(object_name)
})
end
-
end
class Mock
-
def put_object(bucket_name, object_name, data, options = {})
acl = options['x-goog-acl'] || 'private'
if !['private', 'public-read', 'public-read-write', 'authenticated-read'].include?(acl)
@@ -86,7 +83,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/google/requests/storage/put_object_acl.rb b/lib/fog/google/requests/storage/put_object_acl.rb
index 3dfd479..7b1e3f6 100644
--- a/lib/fog/google/requests/storage/put_object_acl.rb
+++ b/lib/fog/google/requests/storage/put_object_acl.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Google
class Real
-
# TODO: move this methods to helper to use them with put_bucket_acl request
def tag(name, value)
"<#{name}>#{value}</#{name}>"
@@ -25,7 +24,6 @@ module Fog
end
def put_object_acl(bucket_name, object_name, acl)
-
data = <<-DATA
<AccessControlList>
<Owner>
@@ -46,9 +44,7 @@ DATA
:query => {'acl' => nil},
:path => CGI.escape(object_name)
})
-
end
-
end
end
end
diff --git a/lib/fog/google/requests/storage/put_object_url.rb b/lib/fog/google/requests/storage/put_object_url.rb
index 6674a45..796ffe4 100644
--- a/lib/fog/google/requests/storage/put_object_url.rb
+++ b/lib/fog/google/requests/storage/put_object_url.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Google
class Real
-
# Get an expiring object url from Google Storage for putting an object
#
# ==== Parameters
@@ -28,11 +27,9 @@ module Fog
:path => "#{bucket_name}/#{object_name}"
}, expires)
end
-
end
class Mock
-
def put_object_url(bucket_name, object_name, expires, headers = {})
unless bucket_name
raise ArgumentError.new('bucket_name is required')
@@ -47,7 +44,6 @@ module Fog
:path => "#{bucket_name}/#{object_name}"
}, expires)
end
-
end
end
end
diff --git a/lib/fog/google/sql.rb b/lib/fog/google/sql.rb
new file mode 100644
index 0000000..9d36d00
--- /dev/null
+++ b/lib/fog/google/sql.rb
@@ -0,0 +1,132 @@
+require 'fog/google/core'
+
+module Fog
+ module Google
+ class SQL < Fog::Service
+ requires :google_project
+ recognizes :google_client_email, :google_key_location, :google_key_string, :google_client,
+ :app_name, :app_version
+
+ GOOGLE_SQL_API_VERSION = 'v1beta3'
+ GOOGLE_SQL_BASE_URL = 'https://www.googleapis.com/sql/'
+ GOOGLE_SQL_API_SCOPE_URLS = %w(https://www.googleapis.com/auth/sqlservice.admin
+ https://www.googleapis.com/auth/cloud-platform)
+
+ ##
+ # MODELS
+ model_path 'fog/google/models/sql'
+
+ # Backup Run
+ model :backup_run
+ collection :backup_runs
+
+ # Flag
+ model :flag
+ collection :flags
+
+ # Instance
+ model :instance
+ collection :instances
+
+ # Operation
+ model :operation
+ collection :operations
+
+ # SSL Certificate
+ model :ssl_cert
+ collection :ssl_certs
+
+ # Tier
+ model :tier
+ collection :tiers
+
+ ##
+ # REQUESTS
+ request_path 'fog/google/requests/sql'
+
+ # Backup Run
+ request :get_backup_run
+ request :list_backup_runs
+
+ # Flag
+ request :list_flags
+
+ # Instance
+ request :clone_instance
+ request :delete_instance
+ request :export_instance
+ request :get_instance
+ request :import_instance
+ request :insert_instance
+ request :list_instances
+ request :reset_instance_ssl_config
+ request :restart_instance
+ request :restore_instance_backup
+ request :set_instance_root_password
+ request :update_instance
+
+ # Operation
+ request :get_operation
+ request :list_operations
+
+ # SSL Certificate
+ request :delete_ssl_cert
+ request :get_ssl_cert
+ request :insert_ssl_cert
+ request :list_ssl_certs
+
+ # Tier
+ request :list_tiers
+
+ class Mock
+ include Fog::Google::Shared
+
+ def initialize(options)
+ shared_initialize(options[:google_project], GOOGLE_SQL_API_VERSION, GOOGLE_SQL_BASE_URL)
+ end
+
+ def self.data
+ @data ||= Hash.new do |hash, key|
+ hash[key] = {
+ :backup_runs => {},
+ :instances => {},
+ :operations => {},
+ :ssl_certs => {},
+ }
+ end
+ end
+
+ def self.reset
+ @data = nil
+ end
+
+ def data
+ self.class.data[project]
+ end
+
+ def reset_data
+ self.class.data.delete(project)
+ end
+
+ def random_operation
+ "operation-#{Fog::Mock.random_numbers(13)}-#{Fog::Mock.random_hex(13)}-#{Fog::Mock.random_hex(8)}"
+ end
+ end
+
+ class Real
+ include Fog::Google::Shared
+
+ attr_accessor :client
+ attr_reader :sql
+
+ def initialize(options)
+ shared_initialize(options[:google_project], GOOGLE_SQL_API_VERSION, GOOGLE_SQL_BASE_URL)
+ options.merge!(:google_api_scope_url => GOOGLE_SQL_API_SCOPE_URLS.join(' '))
+
+ @client = initialize_google_client(options)
+ @sql = @client.discovered_api('sqladmin', api_version)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/google/storage.rb b/lib/fog/google/storage.rb
index 3b330fd..94cc7f0 100644
--- a/lib/fog/google/storage.rb
+++ b/lib/fog/google/storage.rb
@@ -3,9 +3,8 @@ require 'fog/google/core'
module Fog
module Storage
class Google < Fog::Service
-
requires :google_storage_access_key_id, :google_storage_secret_access_key
- recognizes :host, :port, :scheme, :persistent
+ recognizes :host, :port, :scheme, :persistent, :path_style
model_path 'fog/google/models/storage'
collection :directories
@@ -34,8 +33,6 @@ module Fog
request :put_object_url
module Utils
-
-
def http_url(params, expires)
"http://" << host_path_query(params, expires)
end
@@ -63,7 +60,7 @@ module Fog
def request_params(params)
subdomain = params[:host].split(".#{@host}").first
- unless subdomain =~ /^(?!goog)(?:[a-z]|\d(?!\d{0,2}(?:\.\d{1,3}){3}$))(?:[a-z0-9]|\.(?![\.\-])|\-(?![\.])){1,61}[a-z0-9]$/
+ if @path_style or subdomain !~ /^(?!goog)(?:[a-z]|\d(?!\d{0,2}(?:\.\d{1,3}){3}$))(?:[a-z0-9]|\.(?![\.\-])|\-(?![\.])){1,61}[a-z0-9]$/
if subdomain =~ /_/
# https://github.com/fog/fog/pull/1258#issuecomment-10248620.
Fog::Logger.warning("fog: the specified google storage bucket name (#{subdomain}) is not DNS compliant (only characters a through z, digits 0 through 9, and the hyphen).")
@@ -74,8 +71,9 @@ module Fog
# - Bucket names cannot be represented as an IP address in dotted-decimal notation (for example, 192.168.5.4).
# - Bucket names cannot begin with the "goog" prefix.
# - Also, for DNS compliance, you should not have a period adjacent to another period or dash. For example, ".." or "-." or ".-" are not acceptable.
- Fog::Logger.warning("fog: the specified google storage bucket name (#{subdomain}) is not a valid dns name. See: https://developers.google.com/storage/docs/bucketnaming")
+ Fog::Logger.warning("fog: the specified google storage bucket name (#{subdomain}) is not a valid dns name. See: https://developers.google.com/storage/docs/bucketnaming") unless @path_style
end
+
params[:host] = params[:host].split("#{subdomain}.")[-1]
if params[:path]
params[:path] = "#{subdomain}/#{params[:path]}"
@@ -93,7 +91,6 @@ module Fog
params[:port] ||= @port
params
end
-
end
class Mock
@@ -191,10 +188,8 @@ module Fog
def signature(params)
"foo"
end
-
end
-
class Real
include Utils
@@ -226,6 +221,7 @@ module Fog
@persistent = options.fetch(:persistent, true)
@port = options[:port] || 443
@scheme = options[:scheme] || 'https'
+ @path_style = options[:path_style] || false
end
def reload
diff --git a/lib/fog/hp/block_storage.rb b/lib/fog/hp/block_storage.rb
index 9789066..34723df 100644
--- a/lib/fog/hp/block_storage.rb
+++ b/lib/fog/hp/block_storage.rb
@@ -3,7 +3,6 @@ require 'fog/hp/core'
module Fog
module HP
class BlockStorage < Fog::Service
-
requires :hp_secret_key, :hp_tenant_id, :hp_avl_zone
recognizes :hp_auth_uri, :credentials, :hp_service_type
recognizes :persistent, :connection_options
@@ -34,7 +33,6 @@ module Fog
request :list_snapshots
module Utils
-
def compute
@compute ||= Fog::Compute.new(
:provider => 'HP',
@@ -47,7 +45,6 @@ module Fog
:connection_options => @connection_options
)
end
-
end
class Mock
@@ -85,7 +82,6 @@ module Fog
def reset_data
self.class.data.delete(@hp_access_key)
end
-
end
class Real
@@ -168,7 +164,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/block_storage_v2.rb b/lib/fog/hp/block_storage_v2.rb
index 904be49..95605d2 100644
--- a/lib/fog/hp/block_storage_v2.rb
+++ b/lib/fog/hp/block_storage_v2.rb
@@ -3,7 +3,6 @@ require 'fog/hp/core'
module Fog
module HP
class BlockStorageV2 < Fog::Service
-
requires :hp_access_key, :hp_secret_key, :hp_tenant_id, :hp_avl_zone
recognizes :hp_auth_uri, :credentials, :hp_service_type
recognizes :persistent, :connection_options
@@ -40,7 +39,6 @@ module Fog
request :restore_volume_backup
module Utils
-
def compute
@compute ||= Fog::Compute.new(
:provider => 'HP',
@@ -54,7 +52,6 @@ module Fog
:connection_options => @connection_options
)
end
-
end
class Mock
@@ -85,7 +82,6 @@ module Fog
def reset_data
self.class.data.delete(@hp_access_key)
end
-
end
class Real
@@ -100,7 +96,7 @@ module Fog
### Set an option to use the style of authentication desired; :v1 or :v2 (default)
auth_version = options[:hp_auth_version] || :v2
### Pass the service name for block storage to the authentication call
- options[:hp_service_type] ||= "Block Storage"
+ options[:hp_service_type] ||= "volume"
@hp_tenant_id = options[:hp_tenant_id]
@hp_avl_zone = options[:hp_avl_zone]
@@ -157,7 +153,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/cdn.rb b/lib/fog/hp/cdn.rb
index 1f8da9b..464c20a 100644
--- a/lib/fog/hp/cdn.rb
+++ b/lib/fog/hp/cdn.rb
@@ -4,7 +4,6 @@ require 'fog/cdn'
module Fog
module CDN
class HP < Fog::Service
-
requires :hp_secret_key, :hp_tenant_id, :hp_avl_zone
recognizes :hp_auth_uri, :hp_cdn_uri, :credentials, :hp_service_type
recognizes :hp_use_upass_auth_style, :hp_auth_version, :user_agent
@@ -23,7 +22,6 @@ module Fog
request :delete_container
module Utils
-
end
class Mock
@@ -60,7 +58,6 @@ module Fog
def reset_data
self.class.data.delete(@hp_access_key)
end
-
end
class Real
@@ -151,7 +148,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/compute.rb b/lib/fog/hp/compute.rb
index 50286bc..fdd270c 100644
--- a/lib/fog/hp/compute.rb
+++ b/lib/fog/hp/compute.rb
@@ -3,7 +3,6 @@ require 'fog/hp/core'
module Fog
module Compute
class HP < Fog::Service
-
requires :hp_secret_key, :hp_tenant_id, :hp_avl_zone
recognizes :hp_auth_uri, :credentials, :hp_service_type
recognizes :hp_use_upass_auth_style, :hp_auth_version, :user_agent
@@ -83,7 +82,6 @@ module Fog
request :update_server
module Utils
-
# extract windows password from log
def extract_password_from_log(log_text)
encrypted_text = ""
@@ -121,7 +119,6 @@ module Fog
from_base64 = Base64.decode64(encrypted_text)
private_key.private_decrypt(from_base64).strip
end
-
end
class Mock
@@ -169,7 +166,6 @@ module Fog
def reset_data
self.class.data.delete(@hp_access_key)
end
-
end
class Real
@@ -250,7 +246,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/compute_v2.rb b/lib/fog/hp/compute_v2.rb
index a7abc7f..7d68889 100644
--- a/lib/fog/hp/compute_v2.rb
+++ b/lib/fog/hp/compute_v2.rb
@@ -3,7 +3,6 @@ require 'fog/hp/core'
module Fog
module Compute
class HPV2 < Fog::Service
-
requires :hp_secret_key, :hp_tenant_id, :hp_avl_zone
recognizes :hp_auth_uri, :credentials, :hp_service_type
recognizes :hp_use_upass_auth_style, :hp_auth_version, :user_agent
@@ -83,7 +82,6 @@ module Fog
request :update_server
module Utils
-
# extract windows password from log
def extract_password_from_log(log_text)
encrypted_text = ""
@@ -121,7 +119,6 @@ module Fog
from_base64 = Base64.decode64(encrypted_text)
private_key.private_decrypt(from_base64).strip
end
-
end
class Mock
@@ -226,7 +223,6 @@ module Fog
def reset_data
self.class.data.delete(@hp_access_key)
end
-
end
class Real
@@ -248,7 +244,7 @@ module Fog
### Set an option to use the style of authentication desired; :v1 or :v2 (default)
auth_version = options[:hp_auth_version] || :v2
### Pass the service name for compute via the options hash
- options[:hp_service_type] ||= "Compute"
+ options[:hp_service_type] ||= "compute"
@hp_tenant_id = options[:hp_tenant_id]
### Make the authentication call
@@ -304,7 +300,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/core.rb b/lib/fog/hp/core.rb
index 4971656..7c2d303 100644
--- a/lib/fog/hp/core.rb
+++ b/lib/fog/hp/core.rb
@@ -4,7 +4,6 @@ require 'fog/hp/simple_http_instrumentor'
module Fog
module HP
-
# define a specific version for the HP Provider
unless const_defined?(:VERSION)
VERSION = '0.0.22'
@@ -255,21 +254,22 @@ module Fog
raise "Unable to parse service catalog." unless body
service_catalog = {}
body.each do |s|
- name = s["name"]
- next if name.nil?
- name = name.to_sym
+ type = s["type"]
+ next if type.nil?
+ type = type.to_sym
next if s['endpoints'].nil?
- service_catalog[name] = {}
+ service_catalog[type] = {}
+ service_catalog[type]['name'] = s['name']
s['endpoints'].each do |ep|
next if ep['region'].nil?
next if ep['publicURL'].nil?
next if ep['publicURL'].empty?
- service_catalog[name][ep['region'].to_sym] = ep['publicURL']
+ service_catalog[type][ep['region'].to_sym] = ep['publicURL']
end
end
return service_catalog
end
-
+ #//http://10.23.67.66:9696/
def self.get_endpoint_url(service_catalog, service_type, avl_zone)
return nil if service_type.nil?
service_type = service_type.to_sym
@@ -279,6 +279,7 @@ module Fog
return service_catalog[service_type][avl_zone]
end
end
+
raise "Unable to retrieve endpoint service url for availability zone '#{avl_zone}' from service catalog. "
end
@@ -346,8 +347,6 @@ module Fog
end
mac_add.join(':')
end
-
end
-
end
end
diff --git a/lib/fog/hp/dns.rb b/lib/fog/hp/dns.rb
index 6397711..0d0ee7e 100644
--- a/lib/fog/hp/dns.rb
+++ b/lib/fog/hp/dns.rb
@@ -3,7 +3,6 @@ require 'fog/hp/core'
module Fog
module HP
class DNS < Fog::Service
-
requires :hp_access_key, :hp_secret_key, :hp_tenant_id, :hp_avl_zone
recognizes :hp_auth_uri, :credentials, :hp_service_type
recognizes :persistent, :connection_options
@@ -31,7 +30,6 @@ module Fog
request :update_record
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {
@@ -56,7 +54,6 @@ module Fog
def reset_data
self.class.data.delete(@hp_access_key)
end
-
end
class Real
@@ -70,7 +67,7 @@ module Fog
### Set an option to use the style of authentication desired; :v1 or :v2 (default)
auth_version = options[:hp_auth_version] || :v2
### Pass the service name for object storage to the authentication call
- options[:hp_service_type] ||= "DNS"
+ options[:hp_service_type] ||= "hpext:dns"
@hp_tenant_id = options[:hp_tenant_id]
@hp_avl_zone = options[:hp_avl_zone]
@@ -127,9 +124,7 @@ module Fog
end
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/docs/connect.md b/lib/fog/hp/docs/connect.md
index 2c83243..ff202f5 100755
--- a/lib/fog/hp/docs/connect.md
+++ b/lib/fog/hp/docs/connect.md
@@ -39,12 +39,12 @@ Where `SERVICE-NAME` can be [Compute](https://github.com/fog/fog/blob/master/lib
**Note**: You must use the `:hp_access_key` parameter rather than the now-deprecated `:hp_account_id` parameter you might have used in previous versions of the HP Cloud Services Extensions to Ruby Fog.
-You can find the values the access key, secret key, and other values by clicking the [`API Keys`](https://console.hpcloud.com/account/api_keys) button in the [Console Dashboard](https://console.hpcloud.com/dashboard).
+You can find the values the access key, secret key, and other values by clicking the Manage Access Keys drop down in the [Console Dashboard](https://horizon.hpcloud.com/landing).
## Availability Zones
-You cannot specify an availability zone if you have not activated it. To activate an availability zone, go to the [Management Console dashboard](https://console.hpcloud.com/) and click the `**Activate`** button. You are required to set an availability zone to establish a connection; there is no default availability zone value.
+You cannot specify an availability zone if you have not activated it. To activate an availability zone, go to the [Management Console dashboard](https://horizon.hpcloud.com/) and click the `**Activate**` button. You are required to set an availability zone to establish a connection; there is no default availability zone value.
The current usable availability zones for the compute service:
diff --git a/lib/fog/hp/lb.rb b/lib/fog/hp/lb.rb
index e066d20..9be34ce 100644
--- a/lib/fog/hp/lb.rb
+++ b/lib/fog/hp/lb.rb
@@ -3,7 +3,6 @@ require 'fog/hp/core'
module Fog
module HP
class LB < Fog::Service
-
requires :hp_access_key, :hp_secret_key, :hp_tenant_id, :hp_avl_zone
recognizes :hp_auth_uri, :credentials, :hp_service_type
recognizes :persistent, :connection_options
@@ -41,8 +40,6 @@ module Fog
request :update_load_balancer_node
class Mock
-
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {
@@ -91,13 +88,11 @@ module Fog
def reset_data
self.class.data.delete(@hp_access_key)
end
-
end
class Real
attr_reader :credentials
-
def initialize(options={})
@hp_access_key = options[:hp_access_key]
@hp_secret_key = options[:hp_secret_key]
@@ -106,7 +101,7 @@ module Fog
### Set an option to use the style of authentication desired; :v1 or :v2 (default)
auth_version = options[:hp_auth_version] || :v2
### Pass the service name for object storage to the authentication call
- options[:hp_service_type] ||= "Load Balancer"
+ options[:hp_service_type] ||= "hpext:lbaas"
@hp_tenant_id = options[:hp_tenant_id]
@hp_avl_zone = options[:hp_avl_zone]
@@ -162,9 +157,7 @@ module Fog
end
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/block_storage/bootable_volumes.rb b/lib/fog/hp/models/block_storage/bootable_volumes.rb
index f40eb17..e6bb9a1 100644
--- a/lib/fog/hp/models/block_storage/bootable_volumes.rb
+++ b/lib/fog/hp/models/block_storage/bootable_volumes.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/block_storage/volume'
module Fog
module HP
class BlockStorage
-
class BootableVolumes < Fog::Collection
-
model Fog::HP::BlockStorage::Volume
def all
@@ -20,9 +18,7 @@ module Fog
rescue Fog::HP::BlockStorage::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/block_storage/snapshot.rb b/lib/fog/hp/models/block_storage/snapshot.rb
index 39c4dcf..773ae97 100644
--- a/lib/fog/hp/models/block_storage/snapshot.rb
+++ b/lib/fog/hp/models/block_storage/snapshot.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module HP
class BlockStorage
-
class Snapshot < Fog::Model
-
identity :id
attribute :name, :aliases => 'displayName'
@@ -48,9 +46,7 @@ module Fog
merge_attributes(data.body['snapshot'])
true
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/block_storage/snapshots.rb b/lib/fog/hp/models/block_storage/snapshots.rb
index c0a7135..c2ab459 100644
--- a/lib/fog/hp/models/block_storage/snapshots.rb
+++ b/lib/fog/hp/models/block_storage/snapshots.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/block_storage/snapshot'
module Fog
module HP
class BlockStorage
-
class Snapshots < Fog::Collection
-
model Fog::HP::BlockStorage::Snapshot
def all
@@ -21,9 +19,7 @@ module Fog
rescue Fog::HP::BlockStorage::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/block_storage/volume.rb b/lib/fog/hp/models/block_storage/volume.rb
index 88a3427..177df84 100644
--- a/lib/fog/hp/models/block_storage/volume.rb
+++ b/lib/fog/hp/models/block_storage/volume.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module HP
class BlockStorage
-
class Volume < Fog::Model
-
identity :id
attribute :name, :aliases => 'displayName'
@@ -94,9 +92,7 @@ module Fog
merge_attributes(data.body['volume'])
true
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/block_storage/volumes.rb b/lib/fog/hp/models/block_storage/volumes.rb
index a9db397..3160c6d 100644
--- a/lib/fog/hp/models/block_storage/volumes.rb
+++ b/lib/fog/hp/models/block_storage/volumes.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/block_storage/volume'
module Fog
module HP
class BlockStorage
-
class Volumes < Fog::Collection
-
model Fog::HP::BlockStorage::Volume
def all
@@ -20,9 +18,7 @@ module Fog
rescue Fog::HP::BlockStorage::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/block_storage_v2/snapshot.rb b/lib/fog/hp/models/block_storage_v2/snapshot.rb
index 07baaca..38b49c4 100644
--- a/lib/fog/hp/models/block_storage_v2/snapshot.rb
+++ b/lib/fog/hp/models/block_storage_v2/snapshot.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module HP
class BlockStorageV2
-
class Snapshot < Fog::Model
-
identity :id
attribute :name, :aliases => 'display_name'
@@ -68,9 +66,7 @@ module Fog
merge_attributes(data.body['snapshot'])
true
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/block_storage_v2/snapshots.rb b/lib/fog/hp/models/block_storage_v2/snapshots.rb
index ad02174..423d17d 100644
--- a/lib/fog/hp/models/block_storage_v2/snapshots.rb
+++ b/lib/fog/hp/models/block_storage_v2/snapshots.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/block_storage_v2/snapshot'
module Fog
module HP
class BlockStorageV2
-
class Snapshots < Fog::Collection
-
attribute :filters
model Fog::HP::BlockStorageV2::Snapshot
@@ -35,9 +33,7 @@ module Fog
rescue Fog::HP::BlockStorageV2::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/block_storage_v2/volume.rb b/lib/fog/hp/models/block_storage_v2/volume.rb
index 528d167..e56d823 100644
--- a/lib/fog/hp/models/block_storage_v2/volume.rb
+++ b/lib/fog/hp/models/block_storage_v2/volume.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module HP
class BlockStorageV2
-
class Volume < Fog::Model
-
identity :id
attribute :name, :aliases => 'display_name'
@@ -55,7 +53,7 @@ module Fog
def in_use?
self.status == 'in-use'
end
- alias :attached? :in_use?
+ alias_method :attached?, :in_use?
def backing_up?
self.status == 'backing-up'
@@ -131,9 +129,7 @@ module Fog
merge_attributes(data.body['volume'])
true
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/block_storage_v2/volume_backup.rb b/lib/fog/hp/models/block_storage_v2/volume_backup.rb
index 65a1b91..499b302 100644
--- a/lib/fog/hp/models/block_storage_v2/volume_backup.rb
+++ b/lib/fog/hp/models/block_storage_v2/volume_backup.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module HP
class BlockStorageV2
-
class VolumeBackup < Fog::Model
-
identity :id
attribute :name
@@ -50,9 +48,7 @@ module Fog
merge_attributes(service.create_volume_backup(volume_id, attributes).body['backup'])
true
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/block_storage_v2/volume_backups.rb b/lib/fog/hp/models/block_storage_v2/volume_backups.rb
index c0c527f..22949ad 100644
--- a/lib/fog/hp/models/block_storage_v2/volume_backups.rb
+++ b/lib/fog/hp/models/block_storage_v2/volume_backups.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/block_storage_v2/volume_backup'
module Fog
module HP
class BlockStorageV2
-
class VolumeBackups < Fog::Collection
-
attribute :filters
model Fog::HP::BlockStorageV2::VolumeBackup
@@ -34,9 +32,7 @@ module Fog
rescue Fog::HP::BlockStorageV2::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/block_storage_v2/volumes.rb b/lib/fog/hp/models/block_storage_v2/volumes.rb
index 7e38731..6ec4729 100644
--- a/lib/fog/hp/models/block_storage_v2/volumes.rb
+++ b/lib/fog/hp/models/block_storage_v2/volumes.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/block_storage_v2/volume'
module Fog
module HP
class BlockStorageV2
-
class Volumes < Fog::Collection
-
attribute :filters
model Fog::HP::BlockStorageV2::Volume
@@ -34,9 +32,7 @@ module Fog
rescue Fog::HP::BlockStorageV2::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute/address.rb b/lib/fog/hp/models/compute/address.rb
index d8d9156..a6b44d2 100644
--- a/lib/fog/hp/models/compute/address.rb
+++ b/lib/fog/hp/models/compute/address.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class HP
-
class Address < Fog::Model
-
identity :id
attribute :ip
@@ -62,9 +60,7 @@ module Fog
end
self.instance_id = nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute/addresses.rb b/lib/fog/hp/models/compute/addresses.rb
index 1d75e62..d156300 100644
--- a/lib/fog/hp/models/compute/addresses.rb
+++ b/lib/fog/hp/models/compute/addresses.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute/address'
module Fog
module Compute
class HP
-
class Addresses < Fog::Collection
-
model Fog::Compute::HP::Address
def all
@@ -21,9 +19,7 @@ module Fog
rescue Fog::Compute::HP::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute/flavor.rb b/lib/fog/hp/models/compute/flavor.rb
index ebf47f7..731af3d 100644
--- a/lib/fog/hp/models/compute/flavor.rb
+++ b/lib/fog/hp/models/compute/flavor.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class HP
-
class Flavor < Fog::Model
-
identity :id
attribute :disk
@@ -16,9 +14,7 @@ module Fog
#def bits
# 64
#end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute/flavors.rb b/lib/fog/hp/models/compute/flavors.rb
index e20b152..4ddfe53 100644
--- a/lib/fog/hp/models/compute/flavors.rb
+++ b/lib/fog/hp/models/compute/flavors.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute/flavor'
module Fog
module Compute
class HP
-
class Flavors < Fog::Collection
-
model Fog::Compute::HP::Flavor
def all
@@ -20,9 +18,7 @@ module Fog
rescue Fog::Compute::HP::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute/image.rb b/lib/fog/hp/models/compute/image.rb
index cd78d5b..efafbc1 100644
--- a/lib/fog/hp/models/compute/image.rb
+++ b/lib/fog/hp/models/compute/image.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute/metadata'
module Fog
module Compute
class HP
-
class Image < Fog::Model
-
identity :id
attribute :name
@@ -68,9 +66,7 @@ module Fog
def ready?
status == 'ACTIVE'
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute/images.rb b/lib/fog/hp/models/compute/images.rb
index 9ce22f1..7bf4a4b 100644
--- a/lib/fog/hp/models/compute/images.rb
+++ b/lib/fog/hp/models/compute/images.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute/image'
module Fog
module Compute
class HP
-
class Images < Fog::Collection
-
model Fog::Compute::HP::Image
def all
@@ -21,9 +19,7 @@ module Fog
rescue Fog::Compute::HP::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute/key_pair.rb b/lib/fog/hp/models/compute/key_pair.rb
index 95204cf..8722545 100644
--- a/lib/fog/hp/models/compute/key_pair.rb
+++ b/lib/fog/hp/models/compute/key_pair.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class HP
-
class KeyPair < Fog::Model
-
identity :name
attribute :fingerprint
@@ -45,9 +43,8 @@ module Fog
end
def writable?
- !!(private_key && ENV.has_key?('HOME'))
+ !!(private_key && ENV.key?('HOME'))
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute/key_pairs.rb b/lib/fog/hp/models/compute/key_pairs.rb
index ba4c2af..ae6413c 100644
--- a/lib/fog/hp/models/compute/key_pairs.rb
+++ b/lib/fog/hp/models/compute/key_pairs.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute/key_pair'
module Fog
module Compute
class HP
-
class KeyPairs < Fog::Collection
-
model Fog::Compute::HP::KeyPair
def all
@@ -24,7 +22,6 @@ module Fog
rescue Fog::Compute::HP::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute/meta.rb b/lib/fog/hp/models/compute/meta.rb
index df8f7f4..265ecbb 100644
--- a/lib/fog/hp/models/compute/meta.rb
+++ b/lib/fog/hp/models/compute/meta.rb
@@ -5,7 +5,6 @@ module Fog
module Compute
class HP
class Meta < Fog::Model
-
include Fog::Compute::HP::MetaParent
identity :key
@@ -22,7 +21,6 @@ module Fog
service.update_meta(collection_name, @parent.id, key, value)
true
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute/metadata.rb b/lib/fog/hp/models/compute/metadata.rb
index f7c911b..454f0d5 100644
--- a/lib/fog/hp/models/compute/metadata.rb
+++ b/lib/fog/hp/models/compute/metadata.rb
@@ -7,9 +7,7 @@ require 'fog/hp/models/compute/server'
module Fog
module Compute
class HP
-
class Metadata < Fog::Collection
-
model Fog::Compute::HP::Meta
include Fog::Compute::HP::MetaParent
@@ -56,7 +54,6 @@ module Fog
service.update_metadata(collection_name, @parent.id, meta_hash(data))
end
-
private
def meta_hash(data=nil)
if data.nil?
@@ -71,9 +68,7 @@ module Fog
end
data
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute/security_group.rb b/lib/fog/hp/models/compute/security_group.rb
index d6e6d9a..d6d025a 100644
--- a/lib/fog/hp/models/compute/security_group.rb
+++ b/lib/fog/hp/models/compute/security_group.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class HP
-
class SecurityGroup < Fog::Model
-
identity :id
attribute :name
diff --git a/lib/fog/hp/models/compute/security_groups.rb b/lib/fog/hp/models/compute/security_groups.rb
index f8f40a0..3cabbf4 100644
--- a/lib/fog/hp/models/compute/security_groups.rb
+++ b/lib/fog/hp/models/compute/security_groups.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute/security_group'
module Fog
module Compute
class HP
-
class SecurityGroups < Fog::Collection
-
model Fog::Compute::HP::SecurityGroup
def all
@@ -22,7 +20,6 @@ module Fog
rescue Fog::Compute::HP::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute/server.rb b/lib/fog/hp/models/compute/server.rb
index 5821211..853f1cf 100644
--- a/lib/fog/hp/models/compute/server.rb
+++ b/lib/fog/hp/models/compute/server.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute/metadata'
module Fog
module Compute
class HP
-
class Server < Fog::Compute::Server
-
identity :id
attribute :addresses
@@ -289,10 +287,7 @@ module Fog
def adminPass=(new_admin_pass)
@password = new_admin_pass
end
-
end
-
end
end
-
end
diff --git a/lib/fog/hp/models/compute/servers.rb b/lib/fog/hp/models/compute/servers.rb
index a0de0f1..b115a8f 100644
--- a/lib/fog/hp/models/compute/servers.rb
+++ b/lib/fog/hp/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute/server'
module Fog
module Compute
class HP
-
class Servers < Fog::Collection
-
model Fog::Compute::HP::Server
def all
@@ -28,9 +26,7 @@ module Fog
rescue Fog::Compute::HP::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute_v2/address.rb b/lib/fog/hp/models/compute_v2/address.rb
index 711b541..d55a00f 100644
--- a/lib/fog/hp/models/compute_v2/address.rb
+++ b/lib/fog/hp/models/compute_v2/address.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class HPV2
-
class Address < Fog::Model
-
identity :id
attribute :ip
@@ -62,9 +60,7 @@ module Fog
end
self.instance_id = nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute_v2/addresses.rb b/lib/fog/hp/models/compute_v2/addresses.rb
index 139c44b..f88e3d3 100644
--- a/lib/fog/hp/models/compute_v2/addresses.rb
+++ b/lib/fog/hp/models/compute_v2/addresses.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute_v2/address'
module Fog
module Compute
class HPV2
-
class Addresses < Fog::Collection
-
model Fog::Compute::HPV2::Address
def all
@@ -21,9 +19,7 @@ module Fog
rescue Fog::Compute::HPV2::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute_v2/availability_zone.rb b/lib/fog/hp/models/compute_v2/availability_zone.rb
index 48893f8..f3d1548 100644
--- a/lib/fog/hp/models/compute_v2/availability_zone.rb
+++ b/lib/fog/hp/models/compute_v2/availability_zone.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class HPV2
-
class AvailabilityZone < Fog::Model
-
identity :name, :aliases => 'zoneName'
attribute :zoneState
@@ -14,9 +12,7 @@ module Fog
def available?
zoneState['available']
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute_v2/availability_zones.rb b/lib/fog/hp/models/compute_v2/availability_zones.rb
index caf9608..9ae0507 100644
--- a/lib/fog/hp/models/compute_v2/availability_zones.rb
+++ b/lib/fog/hp/models/compute_v2/availability_zones.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute_v2/availability_zone'
module Fog
module Compute
class HPV2
-
class AvailabilityZones < Fog::Collection
-
model Fog::Compute::HPV2::AvailabilityZone
def all
@@ -21,9 +19,7 @@ module Fog
rescue Fog::Compute::HPV2::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute_v2/flavor.rb b/lib/fog/hp/models/compute_v2/flavor.rb
index e0f0055..1f394c3 100644
--- a/lib/fog/hp/models/compute_v2/flavor.rb
+++ b/lib/fog/hp/models/compute_v2/flavor.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class HPV2
-
class Flavor < Fog::Model
-
identity :id
attribute :name
@@ -14,9 +12,7 @@ module Fog
attribute :cores, :aliases => 'vcpus'
attribute :ephemeral_disk, :aliases => 'OS-FLV-EXT-DATA:ephemeral'
attribute :links
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute_v2/flavors.rb b/lib/fog/hp/models/compute_v2/flavors.rb
index 014b82e..1e87a51 100644
--- a/lib/fog/hp/models/compute_v2/flavors.rb
+++ b/lib/fog/hp/models/compute_v2/flavors.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute_v2/flavor'
module Fog
module Compute
class HPV2
-
class Flavors < Fog::Collection
-
attribute :filters
model Fog::Compute::HPV2::Flavor
@@ -34,9 +32,7 @@ module Fog
rescue Fog::Compute::HPV2::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute_v2/image.rb b/lib/fog/hp/models/compute_v2/image.rb
index 31e316a..734e55b 100644
--- a/lib/fog/hp/models/compute_v2/image.rb
+++ b/lib/fog/hp/models/compute_v2/image.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute_v2/metadata'
module Fog
module Compute
class HPV2
-
class Image < Fog::Model
-
identity :id
attribute :name
@@ -45,43 +43,40 @@ module Fog
# The following are built-in metadata for each image, exposed as helpers
def bootable_volume?
- m = @metadata.detect {|md| md.key == 'com.hp__1__bootable_volume'}
+ m = @metadata.find {|md| md.key == 'com.hp__1__bootable_volume'}
m.value unless m.nil?
end
def provider
- m = @metadata.detect {|md| md.key == 'com.hp__1__provider'}
+ m = @metadata.find {|md| md.key == 'com.hp__1__provider'}
m.value unless m.nil?
end
def os_distro
- m = @metadata.detect {|md| md.key == 'com.hp__1__os_distro'}
+ m = @metadata.find {|md| md.key == 'com.hp__1__os_distro'}
m.value unless m.nil?
end
def os_version
- m = @metadata.detect {|md| md.key == 'com.hp__1__os_version'}
+ m = @metadata.find {|md| md.key == 'com.hp__1__os_version'}
m.value unless m.nil?
end
def license
- m = @metadata.detect {|md| md.key == 'hp_image_license'}
+ m = @metadata.find {|md| md.key == 'hp_image_license'}
m.value unless m.nil?
end
def type
- m = @metadata.detect {|md| md.key == 'com.hp__1__image_type'}
+ m = @metadata.find {|md| md.key == 'com.hp__1__image_type'}
m.value unless m.nil?
end
def architecture
- m = @metadata.detect {|md| md.key == 'architecture'}
+ m = @metadata.find {|md| md.key == 'architecture'}
m.value unless m.nil?
end
-
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute_v2/images.rb b/lib/fog/hp/models/compute_v2/images.rb
index 1c0c081..6423883 100644
--- a/lib/fog/hp/models/compute_v2/images.rb
+++ b/lib/fog/hp/models/compute_v2/images.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute_v2/image'
module Fog
module Compute
class HPV2
-
class Images < Fog::Collection
-
attribute :filters
model Fog::Compute::HPV2::Image
@@ -35,9 +33,7 @@ module Fog
rescue Fog::Compute::HPV2::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute_v2/key_pair.rb b/lib/fog/hp/models/compute_v2/key_pair.rb
index 4936ed2..7b80a14 100644
--- a/lib/fog/hp/models/compute_v2/key_pair.rb
+++ b/lib/fog/hp/models/compute_v2/key_pair.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class HPV2
-
class KeyPair < Fog::Model
-
identity :name
attribute :fingerprint
@@ -45,9 +43,8 @@ module Fog
end
def writable?
- !!(private_key && ENV.has_key?('HOME'))
+ !!(private_key && ENV.key?('HOME'))
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute_v2/key_pairs.rb b/lib/fog/hp/models/compute_v2/key_pairs.rb
index ce80c61..e8bb4cd 100644
--- a/lib/fog/hp/models/compute_v2/key_pairs.rb
+++ b/lib/fog/hp/models/compute_v2/key_pairs.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute_v2/key_pair'
module Fog
module Compute
class HPV2
-
class KeyPairs < Fog::Collection
-
model Fog::Compute::HPV2::KeyPair
def all
@@ -24,7 +22,6 @@ module Fog
rescue Fog::Compute::HPV2::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute_v2/meta.rb b/lib/fog/hp/models/compute_v2/meta.rb
index ea276b2..16044f6 100644
--- a/lib/fog/hp/models/compute_v2/meta.rb
+++ b/lib/fog/hp/models/compute_v2/meta.rb
@@ -5,7 +5,6 @@ module Fog
module Compute
class HPV2
class Meta < Fog::Model
-
include Fog::Compute::HPV2::MetaParent
identity :key
@@ -22,7 +21,6 @@ module Fog
service.update_meta(collection_name, @parent.id, key, value)
true
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute_v2/meta_parent.rb b/lib/fog/hp/models/compute_v2/meta_parent.rb
index 1020bfb..4931806 100644
--- a/lib/fog/hp/models/compute_v2/meta_parent.rb
+++ b/lib/fog/hp/models/compute_v2/meta_parent.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
module MetaParent
-
def parent
@parent
end
@@ -26,7 +25,6 @@ module Fog
metas.each { |meta| hash.store(meta.key, meta.value) }
hash
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute_v2/metadata.rb b/lib/fog/hp/models/compute_v2/metadata.rb
index 88fc265..9b5640c 100644
--- a/lib/fog/hp/models/compute_v2/metadata.rb
+++ b/lib/fog/hp/models/compute_v2/metadata.rb
@@ -7,9 +7,7 @@ require 'fog/hp/models/compute_v2/server'
module Fog
module Compute
class HPV2
-
class Metadata < Fog::Collection
-
model Fog::Compute::HPV2::Meta
include Fog::Compute::HPV2::MetaParent
@@ -56,7 +54,6 @@ module Fog
service.update_metadata(collection_name, @parent.id, meta_hash(data))
end
-
private
def meta_hash(data=nil)
if data.nil?
@@ -71,9 +68,7 @@ module Fog
end
data
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute_v2/server.rb b/lib/fog/hp/models/compute_v2/server.rb
index 1ab4b02..9b709eb 100644
--- a/lib/fog/hp/models/compute_v2/server.rb
+++ b/lib/fog/hp/models/compute_v2/server.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute_v2/metadata'
module Fog
module Compute
class HPV2
-
class Server < Fog::Compute::Server
-
identity :id
attribute :addresses
@@ -330,10 +328,7 @@ module Fog
return '' if net.first.nil?
net.first[0]
end
-
end
-
end
end
-
end
diff --git a/lib/fog/hp/models/compute_v2/servers.rb b/lib/fog/hp/models/compute_v2/servers.rb
index e00b509..7150df2 100644
--- a/lib/fog/hp/models/compute_v2/servers.rb
+++ b/lib/fog/hp/models/compute_v2/servers.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/compute_v2/server'
module Fog
module Compute
class HPV2
-
class Servers < Fog::Collection
-
attribute :filters
model Fog::Compute::HPV2::Server
@@ -48,9 +46,7 @@ module Fog
rescue Fog::Compute::HPV2::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/compute_v2/volume_attachment.rb b/lib/fog/hp/models/compute_v2/volume_attachment.rb
index 45cda0d..34fbaf4 100644
--- a/lib/fog/hp/models/compute_v2/volume_attachment.rb
+++ b/lib/fog/hp/models/compute_v2/volume_attachment.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class HPV2
class VolumeAttachment < Fog::Model
-
identity :id
attribute :server_id, :aliases => 'serverId'
@@ -30,9 +29,9 @@ module Fog
service.detach_volume(server_id, volume_id)
true
end
- alias :detach :destroy
+ alias_method :detach, :destroy
- private
+ private
def server
collection.server
end
diff --git a/lib/fog/hp/models/compute_v2/volume_attachments.rb b/lib/fog/hp/models/compute_v2/volume_attachments.rb
index a2e33ab..3152611 100644
--- a/lib/fog/hp/models/compute_v2/volume_attachments.rb
+++ b/lib/fog/hp/models/compute_v2/volume_attachments.rb
@@ -5,7 +5,6 @@ module Fog
module Compute
class HPV2
class VolumeAttachments < Fog::Collection
-
model Fog::Compute::HPV2::VolumeAttachment
attr_accessor :server
diff --git a/lib/fog/hp/models/dns/domain.rb b/lib/fog/hp/models/dns/domain.rb
index ff5d04d..04af968 100644
--- a/lib/fog/hp/models/dns/domain.rb
+++ b/lib/fog/hp/models/dns/domain.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module HP
class DNS
-
class Domain < Fog::Model
identity :id
@@ -48,7 +47,6 @@ module Fog
merge_attributes(service.update_domain(id, attributes).body)
true
end
-
end
end
end
diff --git a/lib/fog/hp/models/dns/domains.rb b/lib/fog/hp/models/dns/domains.rb
index 4f1aa98..ddc5af3 100644
--- a/lib/fog/hp/models/dns/domains.rb
+++ b/lib/fog/hp/models/dns/domains.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/dns/domain'
module Fog
module HP
class DNS
-
class Domains < Fog::Collection
-
model Fog::HP::DNS::Domain
def all
@@ -21,7 +19,6 @@ module Fog
rescue Fog::HP::DNS::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/dns/record.rb b/lib/fog/hp/models/dns/record.rb
index cce958a..f4f6200 100644
--- a/lib/fog/hp/models/dns/record.rb
+++ b/lib/fog/hp/models/dns/record.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module HP
class DNS
-
class Record < Fog::Model
identity :id
@@ -52,7 +51,6 @@ module Fog
merge_attributes(service.update_record(self.domain_id, id, attributes).body)
true
end
-
end
end
end
diff --git a/lib/fog/hp/models/dns/records.rb b/lib/fog/hp/models/dns/records.rb
index 7752e4d..377948d 100644
--- a/lib/fog/hp/models/dns/records.rb
+++ b/lib/fog/hp/models/dns/records.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/dns/record'
module Fog
module HP
class DNS
-
class Records < Fog::Collection
-
model Fog::HP::DNS::Record
attr_accessor :domain
@@ -25,7 +23,6 @@ module Fog
rescue Fog::HP::DNS::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/lb/algorithm.rb b/lib/fog/hp/models/lb/algorithm.rb
index c7ba60f..751d86a 100644
--- a/lib/fog/hp/models/lb/algorithm.rb
+++ b/lib/fog/hp/models/lb/algorithm.rb
@@ -17,7 +17,6 @@ module Fog
def save
raise Fog::HP::LB::NotFound.new('Operation not allowed.')
end
-
end
end
end
diff --git a/lib/fog/hp/models/lb/algorithms.rb b/lib/fog/hp/models/lb/algorithms.rb
index 6a97a2c..e9726ce 100644
--- a/lib/fog/hp/models/lb/algorithms.rb
+++ b/lib/fog/hp/models/lb/algorithms.rb
@@ -14,12 +14,11 @@ module Fog
def get(name)
data = service.list_algorithms.body['algorithms']
- algorithm = data.detect {|algo| algo['name'] == name}
+ algorithm = data.find {|algo| algo['name'] == name}
new(algorithm)
rescue Fog::HP::LB::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/lb/load_balancer.rb b/lib/fog/hp/models/lb/load_balancer.rb
index cc64141..6ed91b1 100644
--- a/lib/fog/hp/models/lb/load_balancer.rb
+++ b/lib/fog/hp/models/lb/load_balancer.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module HP
class LB
-
class LoadBalancer < Fog::Model
identity :id
@@ -72,7 +71,7 @@ module Fog
def nodes_to_hash
if nodes
- nodes.collect do |node|
+ nodes.map do |node|
{ 'address' => node.address, 'port' => node.port, 'condition' => node.condition }
end
end
diff --git a/lib/fog/hp/models/lb/load_balancers.rb b/lib/fog/hp/models/lb/load_balancers.rb
index 490e1e8..5e9a409 100644
--- a/lib/fog/hp/models/lb/load_balancers.rb
+++ b/lib/fog/hp/models/lb/load_balancers.rb
@@ -19,7 +19,6 @@ module Fog
rescue Fog::HP::LB::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/lb/node.rb b/lib/fog/hp/models/lb/node.rb
index a6d4800..df91aad 100644
--- a/lib/fog/hp/models/lb/node.rb
+++ b/lib/fog/hp/models/lb/node.rb
@@ -4,7 +4,6 @@ module Fog
module HP
class LB
class Node < Fog::Model
-
identity :id
attribute :address
@@ -46,7 +45,6 @@ module Fog
service.update_load_balancer_node(load_balancer.id, id, condition)
true
end
-
end
end
end
diff --git a/lib/fog/hp/models/lb/nodes.rb b/lib/fog/hp/models/lb/nodes.rb
index 443e83a..4358016 100644
--- a/lib/fog/hp/models/lb/nodes.rb
+++ b/lib/fog/hp/models/lb/nodes.rb
@@ -5,7 +5,6 @@ module Fog
module HP
class LB
class Nodes < Fog::Collection
-
model Fog::HP::LB::Node
attr_accessor :load_balancer
@@ -23,7 +22,6 @@ module Fog
rescue Fog::HP::LB::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/lb/protocol.rb b/lib/fog/hp/models/lb/protocol.rb
index 2ff0bdb..dc44c89 100644
--- a/lib/fog/hp/models/lb/protocol.rb
+++ b/lib/fog/hp/models/lb/protocol.rb
@@ -18,7 +18,6 @@ module Fog
def save
raise Fog::HP::LB::NotFound.new('Operation not allowed.')
end
-
end
end
end
diff --git a/lib/fog/hp/models/lb/protocols.rb b/lib/fog/hp/models/lb/protocols.rb
index dbb94a3..465ce66 100644
--- a/lib/fog/hp/models/lb/protocols.rb
+++ b/lib/fog/hp/models/lb/protocols.rb
@@ -14,12 +14,11 @@ module Fog
def get(name)
data = service.list_protocols.body['protocols']
- protocol = data.detect {|p| p['name'] == name}
+ protocol = data.find {|p| p['name'] == name}
new(protocol)
rescue Fog::HP::LB::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/lb/virtual_ip.rb b/lib/fog/hp/models/lb/virtual_ip.rb
index f52b1a9..177c2f8 100644
--- a/lib/fog/hp/models/lb/virtual_ip.rb
+++ b/lib/fog/hp/models/lb/virtual_ip.rb
@@ -27,7 +27,6 @@ module Fog
def load_balancer
collection.load_balancer
end
-
end
end
end
diff --git a/lib/fog/hp/models/lb/virtual_ips.rb b/lib/fog/hp/models/lb/virtual_ips.rb
index 95d84e3..fda504b 100644
--- a/lib/fog/hp/models/lb/virtual_ips.rb
+++ b/lib/fog/hp/models/lb/virtual_ips.rb
@@ -5,7 +5,6 @@ module Fog
module HP
class LB
class VirtualIps < Fog::Collection
-
model Fog::HP::LB::VirtualIp
attr_accessor :load_balancer
@@ -21,12 +20,11 @@ module Fog
requires :load_balancer
data = service.list_load_balancer_virtual_ips(load_balancer.id).body['virtualIps']
- vip = data.detect {|vip| vip['id'].to_s == vip_id}
+ vip = data.find {|vip| vip['id'].to_s == vip_id}
new(vip)
rescue Fog::HP::LB::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/meta_parent.rb b/lib/fog/hp/models/meta_parent.rb
index 108e595..02ef7cb 100644
--- a/lib/fog/hp/models/meta_parent.rb
+++ b/lib/fog/hp/models/meta_parent.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
module MetaParent
-
def parent
@parent
end
@@ -26,7 +25,6 @@ module Fog
metas.each { |meta| hash.store(meta.key, meta.value) }
hash
end
-
end
end
end
diff --git a/lib/fog/hp/models/network/floating_ip.rb b/lib/fog/hp/models/network/floating_ip.rb
index d59405b..fc705c2 100644
--- a/lib/fog/hp/models/network/floating_ip.rb
+++ b/lib/fog/hp/models/network/floating_ip.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module HP
class Network
-
class FloatingIp < Fog::Model
identity :id
@@ -38,7 +37,6 @@ module Fog
merge_attributes(service.create_floating_ip(floating_network_id, attributes).body['floatingip'])
true
end
-
end
end
end
diff --git a/lib/fog/hp/models/network/floating_ips.rb b/lib/fog/hp/models/network/floating_ips.rb
index 5a75d4a..872096e 100644
--- a/lib/fog/hp/models/network/floating_ips.rb
+++ b/lib/fog/hp/models/network/floating_ips.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/network/floating_ip'
module Fog
module HP
class Network
-
class FloatingIps < Fog::Collection
-
attribute :filters
model Fog::HP::Network::FloatingIp
@@ -29,7 +27,6 @@ module Fog
rescue Fog::HP::Network::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/network/network.rb b/lib/fog/hp/models/network/network.rb
index 63b4cfc..cfeaeb4 100644
--- a/lib/fog/hp/models/network/network.rb
+++ b/lib/fog/hp/models/network/network.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module HP
class Network
-
class Network < Fog::Model
identity :id
@@ -49,7 +48,6 @@ module Fog
merge_attributes(service.update_network(id, attributes).body['network'])
true
end
-
end
end
end
diff --git a/lib/fog/hp/models/network/networks.rb b/lib/fog/hp/models/network/networks.rb
index fc574ce..976da9f 100644
--- a/lib/fog/hp/models/network/networks.rb
+++ b/lib/fog/hp/models/network/networks.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/network/network'
module Fog
module HP
class Network
-
class Networks < Fog::Collection
-
attribute :filters
model Fog::HP::Network::Network
@@ -29,7 +27,6 @@ module Fog
rescue Fog::HP::Network::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/network/port.rb b/lib/fog/hp/models/network/port.rb
index 7c33566..3124860 100644
--- a/lib/fog/hp/models/network/port.rb
+++ b/lib/fog/hp/models/network/port.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module HP
class Network
-
class Port < Fog::Model
identity :id
@@ -46,8 +45,6 @@ module Fog
merge_attributes(service.update_port(id, attributes).body['port'])
true
end
-
-
end
end
end
diff --git a/lib/fog/hp/models/network/ports.rb b/lib/fog/hp/models/network/ports.rb
index 4fc32ba..d2399a4 100644
--- a/lib/fog/hp/models/network/ports.rb
+++ b/lib/fog/hp/models/network/ports.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/network/port'
module Fog
module HP
class Network
-
class Ports < Fog::Collection
-
attribute :filters
model Fog::HP::Network::Port
@@ -29,7 +27,6 @@ module Fog
rescue Fog::HP::Network::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/network/router.rb b/lib/fog/hp/models/network/router.rb
index 131e8a8..5f612bc 100644
--- a/lib/fog/hp/models/network/router.rb
+++ b/lib/fog/hp/models/network/router.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module HP
class Network
-
class Router < Fog::Model
identity :id
@@ -59,7 +58,6 @@ module Fog
merge_attributes(service.update_router(id, attributes).body['router'])
true
end
-
end
end
end
diff --git a/lib/fog/hp/models/network/routers.rb b/lib/fog/hp/models/network/routers.rb
index 236e45e..89b8192 100644
--- a/lib/fog/hp/models/network/routers.rb
+++ b/lib/fog/hp/models/network/routers.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/network/router'
module Fog
module HP
class Network
-
class Routers < Fog::Collection
-
attribute :filters
model Fog::HP::Network::Router
@@ -29,7 +27,6 @@ module Fog
rescue Fog::HP::Network::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/network/security_group.rb b/lib/fog/hp/models/network/security_group.rb
index 6e20ecc..7bfd348 100644
--- a/lib/fog/hp/models/network/security_group.rb
+++ b/lib/fog/hp/models/network/security_group.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module HP
class Network
-
class SecurityGroup < Fog::Model
identity :id
@@ -23,7 +22,6 @@ module Fog
merge_attributes(service.create_security_group(attributes).body['security_group'])
true
end
-
end
end
end
diff --git a/lib/fog/hp/models/network/security_group_rule.rb b/lib/fog/hp/models/network/security_group_rule.rb
index b8f192d..60b4a6e 100644
--- a/lib/fog/hp/models/network/security_group_rule.rb
+++ b/lib/fog/hp/models/network/security_group_rule.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module HP
class Network
-
class SecurityGroupRule < Fog::Model
identity :id
@@ -28,7 +27,6 @@ module Fog
merge_attributes(service.create_security_group_rule(security_group_id, direction, attributes).body['security_group_rule'])
true
end
-
end
end
end
diff --git a/lib/fog/hp/models/network/security_group_rules.rb b/lib/fog/hp/models/network/security_group_rules.rb
index f960779..ecdebf6 100644
--- a/lib/fog/hp/models/network/security_group_rules.rb
+++ b/lib/fog/hp/models/network/security_group_rules.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/network/security_group_rule'
module Fog
module HP
class Network
-
class SecurityGroupRules < Fog::Collection
-
attribute :filters
model Fog::HP::Network::SecurityGroupRule
@@ -29,7 +27,6 @@ module Fog
rescue Fog::HP::Network::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/network/security_groups.rb b/lib/fog/hp/models/network/security_groups.rb
index c2fe1b4..76b8647 100644
--- a/lib/fog/hp/models/network/security_groups.rb
+++ b/lib/fog/hp/models/network/security_groups.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/network/security_group'
module Fog
module HP
class Network
-
class SecurityGroups < Fog::Collection
-
attribute :filters
model Fog::HP::Network::SecurityGroup
@@ -29,7 +27,6 @@ module Fog
rescue Fog::HP::Network::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/network/subnet.rb b/lib/fog/hp/models/network/subnet.rb
index 69406a8..ed8b40a 100644
--- a/lib/fog/hp/models/network/subnet.rb
+++ b/lib/fog/hp/models/network/subnet.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module HP
class Network
-
class Subnet < Fog::Model
identity :id
@@ -42,7 +41,6 @@ module Fog
merge_attributes(service.update_subnet(id, attributes).body['subnet'])
true
end
-
end
end
end
diff --git a/lib/fog/hp/models/network/subnets.rb b/lib/fog/hp/models/network/subnets.rb
index 7e233a1..a305a77 100644
--- a/lib/fog/hp/models/network/subnets.rb
+++ b/lib/fog/hp/models/network/subnets.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/network/subnet'
module Fog
module HP
class Network
-
class Subnets < Fog::Collection
-
attribute :filters
model Fog::HP::Network::Subnet
@@ -29,7 +27,6 @@ module Fog
rescue Fog::HP::Network::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/hp/models/storage/directories.rb b/lib/fog/hp/models/storage/directories.rb
index 5db1dc6..35b0503 100644
--- a/lib/fog/hp/models/storage/directories.rb
+++ b/lib/fog/hp/models/storage/directories.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/storage/directory'
module Fog
module Storage
class HP
-
class Directories < Fog::Collection
-
model Fog::Storage::HP::Directory
def all
@@ -67,9 +65,7 @@ module Fog
end
directory
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/storage/directory.rb b/lib/fog/hp/models/storage/directory.rb
index a03f57c..f92fd54 100644
--- a/lib/fog/hp/models/storage/directory.rb
+++ b/lib/fog/hp/models/storage/directory.rb
@@ -5,9 +5,7 @@ require 'fog/hp/models/storage/metadata'
module Fog
module Storage
class HP
-
class Directory < Fog::Model
-
identity :key, :aliases => 'name'
attribute :bytes, :aliases => 'X-Container-Bytes-Used'
@@ -301,9 +299,7 @@ module Fog
end
true
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/storage/file.rb b/lib/fog/hp/models/storage/file.rb
index 7c234bf..dd5ff3b 100644
--- a/lib/fog/hp/models/storage/file.rb
+++ b/lib/fog/hp/models/storage/file.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Storage
class HP
-
class File < Fog::Model
-
identity :key, :aliases => 'name'
attribute :content_length, :aliases => ['bytes', 'Content-Length'], :type => :integer
@@ -101,9 +99,7 @@ module Fog
def directory=(new_directory)
@directory = new_directory
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/storage/files.rb b/lib/fog/hp/models/storage/files.rb
index e628bb2..7aa3618 100644
--- a/lib/fog/hp/models/storage/files.rb
+++ b/lib/fog/hp/models/storage/files.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/storage/file'
module Fog
module Storage
class HP
-
class Files < Fog::Collection
-
attribute :directory
attribute :limit
attribute :marker
@@ -35,7 +33,7 @@ module Fog
end
end
- alias :each_file_this_page :each
+ alias_method :each_file_this_page, :each
def each
if !block_given?
self
@@ -125,9 +123,7 @@ module Fog
requires :directory
super({ :directory => directory }.merge!(attributes))
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/storage/meta.rb b/lib/fog/hp/models/storage/meta.rb
index 6c348dc..623c7d6 100644
--- a/lib/fog/hp/models/storage/meta.rb
+++ b/lib/fog/hp/models/storage/meta.rb
@@ -5,7 +5,6 @@ module Fog
module Storage
class HP
class Meta < Fog::Model
-
include Fog::Storage::HP::MetaParent
identity :key
@@ -22,7 +21,6 @@ module Fog
true
end
end
-
end
end
end
diff --git a/lib/fog/hp/models/storage/meta_parent.rb b/lib/fog/hp/models/storage/meta_parent.rb
index b45cc03..acae253 100644
--- a/lib/fog/hp/models/storage/meta_parent.rb
+++ b/lib/fog/hp/models/storage/meta_parent.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
module MetaParent
-
def parent
@parent
end
@@ -16,7 +15,6 @@ module Fog
metas.each { |meta| hash.store(meta.key, meta.value) }
hash
end
-
end
end
end
diff --git a/lib/fog/hp/models/storage/metadata.rb b/lib/fog/hp/models/storage/metadata.rb
index d29a05f..bb05cd8 100644
--- a/lib/fog/hp/models/storage/metadata.rb
+++ b/lib/fog/hp/models/storage/metadata.rb
@@ -5,9 +5,7 @@ require 'fog/hp/models/storage/meta'
module Fog
module Storage
class HP
-
class Metadata < Fog::Collection
-
model Fog::Storage::HP::Meta
include Fog::Storage::HP::MetaParent
@@ -59,7 +57,6 @@ module Fog
end
end
-
private
def meta_hash(data=nil)
if data.nil?
@@ -74,9 +71,7 @@ module Fog
end
data
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/storage/shared_directories.rb b/lib/fog/hp/models/storage/shared_directories.rb
index c105b68..d0bcdcb 100644
--- a/lib/fog/hp/models/storage/shared_directories.rb
+++ b/lib/fog/hp/models/storage/shared_directories.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/storage/shared_directory'
module Fog
module Storage
class HP
-
class SharedDirectories < Fog::Collection
-
model Fog::Storage::HP::SharedDirectory
def all
@@ -47,9 +45,7 @@ module Fog
rescue Fog::Storage::HP::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/models/storage/shared_directory.rb b/lib/fog/hp/models/storage/shared_directory.rb
index fed94c1..8de71a6 100644
--- a/lib/fog/hp/models/storage/shared_directory.rb
+++ b/lib/fog/hp/models/storage/shared_directory.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/storage/shared_files'
module Fog
module Storage
class HP
-
class SharedDirectory < Fog::Model
-
identity :url
attribute :bytes, :aliases => 'X-Container-Bytes-Used'
@@ -33,7 +31,6 @@ module Fog
false
end
end
-
end
end
end
diff --git a/lib/fog/hp/models/storage/shared_file.rb b/lib/fog/hp/models/storage/shared_file.rb
index a1e1bee..8832950 100644
--- a/lib/fog/hp/models/storage/shared_file.rb
+++ b/lib/fog/hp/models/storage/shared_file.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Storage
class HP
-
class SharedFile < Fog::Model
-
identity :key, :aliases => 'name'
attribute :url
@@ -61,7 +59,6 @@ module Fog
@shared_directory = new_shared_directory
end
end
-
end
end
end
diff --git a/lib/fog/hp/models/storage/shared_files.rb b/lib/fog/hp/models/storage/shared_files.rb
index da65392..5039013 100644
--- a/lib/fog/hp/models/storage/shared_files.rb
+++ b/lib/fog/hp/models/storage/shared_files.rb
@@ -4,9 +4,7 @@ require 'fog/hp/models/storage/shared_file'
module Fog
module Storage
class HP
-
class SharedFiles < Fog::Collection
-
attribute :shared_directory
model Fog::Storage::HP::SharedFile
@@ -56,9 +54,7 @@ module Fog
requires :shared_directory
super({ :shared_directory => shared_directory }.merge!(attributes))
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/network.rb b/lib/fog/hp/network.rb
index 994e233..24748ea 100644
--- a/lib/fog/hp/network.rb
+++ b/lib/fog/hp/network.rb
@@ -3,7 +3,6 @@ require 'fog/hp/core'
module Fog
module HP
class Network < Fog::Service
-
requires :hp_access_key, :hp_secret_key, :hp_tenant_id, :hp_avl_zone
recognizes :hp_auth_uri, :credentials, :hp_service_type
recognizes :persistent, :connection_options
@@ -66,7 +65,6 @@ module Fog
request :update_subnet
module Utils
-
end
class Mock
@@ -113,7 +111,6 @@ module Fog
def reset_data
self.class.data.delete(@hp_access_key)
end
-
end
class Real
@@ -128,7 +125,7 @@ module Fog
### Set an option to use the style of authentication desired; :v1 or :v2 (default)
auth_version = options[:hp_auth_version] || :v2
### Pass the service name for network to the authentication call
- options[:hp_service_type] ||= "Networking"
+ options[:hp_service_type] ||= "network"
@hp_tenant_id = options[:hp_tenant_id]
@hp_avl_zone = options[:hp_avl_zone]
@@ -137,6 +134,7 @@ module Fog
# Call the control services authentication
credentials = Fog::HP.authenticate_v2(options, @connection_options)
# the CS service catalog returns the network endpoint
+
@hp_network_uri = credentials[:endpoint_url]
@credentials = credentials
else
@@ -155,6 +153,7 @@ module Fog
@port = uri.port
@scheme = uri.scheme
+
@connection = Fog::XML::Connection.new("#{@scheme}://#{@host}:#{@port}", @persistent, @connection_options)
end
@@ -164,13 +163,19 @@ module Fog
def request(params, parse_json = true, &block)
begin
+ if @path == "/"
+ #helion network @path is "/"
+ @calculated_path = "v2.0/#{params[:path]}"
+ else
+ @calculated_path = "#{@path}/v2.0/#{params[:path]}"
+ end
response = @connection.request(params.merge!({
:headers => {
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'X-Auth-Token' => @auth_token
}.merge!(params[:headers] || {}),
- :path => "#{@path}/v2.0/#{params[:path]}"
+ :path => @calculated_path
}), &block)
rescue Excon::Errors::HTTPStatusError => error
raise case error
@@ -189,10 +194,7 @@ module Fog
end
response
end
-
end
-
end
end
end
-
diff --git a/lib/fog/hp/requests/block_storage/create_snapshot.rb b/lib/fog/hp/requests/block_storage/create_snapshot.rb
index eb117f7..1f3d08e 100644
--- a/lib/fog/hp/requests/block_storage/create_snapshot.rb
+++ b/lib/fog/hp/requests/block_storage/create_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorage
class Real
-
# Create a new block storage snapshot
#
# ==== Parameters
@@ -44,11 +43,9 @@ module Fog
:path => "os-snapshots"
)
end
-
end
class Mock # :nodoc:all
-
def create_snapshot(name, description, volume_id, options={})
response = Excon::Response.new
if self.data[:volumes][volume_id]
@@ -70,7 +67,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage/create_volume.rb b/lib/fog/hp/requests/block_storage/create_volume.rb
index 9ee592e..8fb9952 100644
--- a/lib/fog/hp/requests/block_storage/create_volume.rb
+++ b/lib/fog/hp/requests/block_storage/create_volume.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorage
class Real
-
# Create a new block storage volume
#
# ==== Parameters
@@ -50,11 +49,9 @@ module Fog
:path => "os-volumes"
)
end
-
end
class Mock # :nodoc:all
-
def create_volume(name, description, size, options={})
if options['snapshotId'] && options['imageRef']
raise Fog::Errors::BadRequest.new("Snapshot and image cannot be specified together.")
@@ -81,7 +78,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage/delete_snapshot.rb b/lib/fog/hp/requests/block_storage/delete_snapshot.rb
index 6b18f3a..ccfa9e9 100644
--- a/lib/fog/hp/requests/block_storage/delete_snapshot.rb
+++ b/lib/fog/hp/requests/block_storage/delete_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorage
class Real
-
# Delete an existing block storage snapshot
#
# ==== Parameters
@@ -16,11 +15,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def delete_snapshot(snapshot_id)
response = Excon::Response.new
if self.data[:snapshots][snapshot_id]
@@ -32,7 +29,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage/delete_volume.rb b/lib/fog/hp/requests/block_storage/delete_volume.rb
index 00ff202..3460b9f 100644
--- a/lib/fog/hp/requests/block_storage/delete_volume.rb
+++ b/lib/fog/hp/requests/block_storage/delete_volume.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorage
class Real
-
# Delete an existing block storage volume
#
# ==== Parameters
@@ -16,11 +15,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def delete_volume(volume_id)
response = Excon::Response.new
if self.data[:volumes][volume_id]
@@ -32,7 +29,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage/get_bootable_volume_details.rb b/lib/fog/hp/requests/block_storage/get_bootable_volume_details.rb
index f77af01..a857003 100644
--- a/lib/fog/hp/requests/block_storage/get_bootable_volume_details.rb
+++ b/lib/fog/hp/requests/block_storage/get_bootable_volume_details.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorage
class Real
-
# Get details for existing block storage bootable volume
#
# ==== Parameters
@@ -33,11 +32,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def get_bootable_volume_details(volume_id)
unless volume_id
raise ArgumentError.new('volume_id is required')
@@ -50,10 +47,8 @@ module Fog
else
raise Fog::HP::BlockStorage::NotFound
end
-
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage/get_snapshot_details.rb b/lib/fog/hp/requests/block_storage/get_snapshot_details.rb
index beecefd..8152014 100644
--- a/lib/fog/hp/requests/block_storage/get_snapshot_details.rb
+++ b/lib/fog/hp/requests/block_storage/get_snapshot_details.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorage
class Real
-
# Get details for existing block storage snapshot
#
# ==== Parameters
@@ -28,11 +27,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def get_snapshot_details(snapshot_id)
unless snapshot_id
raise ArgumentError.new('snapshot_id is required')
@@ -45,10 +42,8 @@ module Fog
else
raise Fog::HP::BlockStorage::NotFound
end
-
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage/get_volume_details.rb b/lib/fog/hp/requests/block_storage/get_volume_details.rb
index 0eff5b6..7237a5a 100644
--- a/lib/fog/hp/requests/block_storage/get_volume_details.rb
+++ b/lib/fog/hp/requests/block_storage/get_volume_details.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorage
class Real
-
# Get details for existing block storage volume
#
# ==== Parameters
@@ -32,11 +31,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def get_volume_details(volume_id)
unless volume_id
raise ArgumentError.new('volume_id is required')
@@ -49,10 +46,8 @@ module Fog
else
raise Fog::HP::BlockStorage::NotFound
end
-
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage/list_bootable_volumes.rb b/lib/fog/hp/requests/block_storage/list_bootable_volumes.rb
index 8621aed..caa47a3 100644
--- a/lib/fog/hp/requests/block_storage/list_bootable_volumes.rb
+++ b/lib/fog/hp/requests/block_storage/list_bootable_volumes.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorage
class Real
-
# List existing block storage bootbale volumes
#
# ==== Parameters
@@ -32,11 +31,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def list_bootable_volumes
response = Excon::Response.new
volumes = []
@@ -47,7 +44,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage/list_snapshots.rb b/lib/fog/hp/requests/block_storage/list_snapshots.rb
index b90a38e..83f5596 100644
--- a/lib/fog/hp/requests/block_storage/list_snapshots.rb
+++ b/lib/fog/hp/requests/block_storage/list_snapshots.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorage
class Real
-
# List existing block storage snapshots
#
# ==== Parameters
@@ -27,11 +26,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def list_snapshots
response = Excon::Response.new
snapshots = []
@@ -42,7 +39,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage/list_volumes.rb b/lib/fog/hp/requests/block_storage/list_volumes.rb
index 0f84c31..6cb1f0a 100644
--- a/lib/fog/hp/requests/block_storage/list_volumes.rb
+++ b/lib/fog/hp/requests/block_storage/list_volumes.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorage
class Real
-
# List existing block storage volumes
#
# ==== Parameters
@@ -31,11 +30,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def list_volumes
response = Excon::Response.new
volumes = []
@@ -46,7 +43,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/create_snapshot.rb b/lib/fog/hp/requests/block_storage_v2/create_snapshot.rb
index 70e4ab0..fe2c6df 100644
--- a/lib/fog/hp/requests/block_storage_v2/create_snapshot.rb
+++ b/lib/fog/hp/requests/block_storage_v2/create_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# Create a new block storage snapshot
# The snapshot is created in the same availability_zone as the specified volume
#
@@ -44,11 +43,9 @@ module Fog
:path => 'snapshots'
)
end
-
end
class Mock # :nodoc:all
-
def create_snapshot(volume_id, options={})
response = Excon::Response.new
if self.data[:volumes][volume_id]
@@ -70,7 +67,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/create_volume.rb b/lib/fog/hp/requests/block_storage_v2/create_volume.rb
index e996dfc..7067408 100644
--- a/lib/fog/hp/requests/block_storage_v2/create_volume.rb
+++ b/lib/fog/hp/requests/block_storage_v2/create_volume.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# Create a new block storage volume
#
# ==== Parameters
@@ -52,11 +51,9 @@ module Fog
:path => 'volumes'
)
end
-
end
class Mock # :nodoc:all
-
def create_volume(options={})
if options['snapshot_id'] && options['imageRef'] && options['source_volid']
raise Fog::Errors::BadRequest.new('The snapshot_id, imageRef and the source_volid parameters are mutually exclusive, and only one should be specified in the request.')
@@ -84,7 +81,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/create_volume_backup.rb b/lib/fog/hp/requests/block_storage_v2/create_volume_backup.rb
index 4889bc4..e95faa2 100644
--- a/lib/fog/hp/requests/block_storage_v2/create_volume_backup.rb
+++ b/lib/fog/hp/requests/block_storage_v2/create_volume_backup.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# Create a new block storage volume backup
#
# ==== Parameters
@@ -38,11 +37,9 @@ module Fog
:path => 'backups'
)
end
-
end
class Mock # :nodoc:all
-
def create_volume_backup(volume_id, options={})
response = Excon::Response.new
tenant_id = Fog::Mock.random_numbers(14).to_s
@@ -77,7 +74,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/delete_snapshot.rb b/lib/fog/hp/requests/block_storage_v2/delete_snapshot.rb
index 15cfd8b..572c0d8 100644
--- a/lib/fog/hp/requests/block_storage_v2/delete_snapshot.rb
+++ b/lib/fog/hp/requests/block_storage_v2/delete_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# Delete an existing block storage snapshot
#
# ==== Parameters
@@ -16,11 +15,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def delete_snapshot(snapshot_id)
response = Excon::Response.new
if self.data[:snapshots][snapshot_id]
@@ -32,7 +29,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/delete_volume.rb b/lib/fog/hp/requests/block_storage_v2/delete_volume.rb
index b87ae8b..b026320 100644
--- a/lib/fog/hp/requests/block_storage_v2/delete_volume.rb
+++ b/lib/fog/hp/requests/block_storage_v2/delete_volume.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# Delete an existing block storage volume
#
# ==== Parameters
@@ -16,11 +15,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def delete_volume(volume_id)
response = Excon::Response.new
if self.data[:volumes][volume_id]
@@ -32,7 +29,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/delete_volume_backup.rb b/lib/fog/hp/requests/block_storage_v2/delete_volume_backup.rb
index a571960..d3a2345 100644
--- a/lib/fog/hp/requests/block_storage_v2/delete_volume_backup.rb
+++ b/lib/fog/hp/requests/block_storage_v2/delete_volume_backup.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# Delete an existing block storage volume backup
#
# ==== Parameters
@@ -16,11 +15,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def delete_volume_backup(backup_id)
response = Excon::Response.new
if self.data[:volume_backups][backup_id]
@@ -32,7 +29,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/get_snapshot_details.rb b/lib/fog/hp/requests/block_storage_v2/get_snapshot_details.rb
index 8ba2525..aa38a97 100644
--- a/lib/fog/hp/requests/block_storage_v2/get_snapshot_details.rb
+++ b/lib/fog/hp/requests/block_storage_v2/get_snapshot_details.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# Get details for existing block storage snapshot
#
# ==== Parameters
@@ -28,11 +27,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def get_snapshot_details(snapshot_id)
unless snapshot_id
raise ArgumentError.new('snapshot_id is required')
@@ -45,10 +42,8 @@ module Fog
else
raise Fog::HP::BlockStorageV2::NotFound
end
-
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/get_volume_backup_details.rb b/lib/fog/hp/requests/block_storage_v2/get_volume_backup_details.rb
index 279312e..f945578 100644
--- a/lib/fog/hp/requests/block_storage_v2/get_volume_backup_details.rb
+++ b/lib/fog/hp/requests/block_storage_v2/get_volume_backup_details.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# Get details for existing block storage volume backup
#
# ==== Parameters
@@ -32,11 +31,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def get_volume_backup_details(backup_id)
response = Excon::Response.new
if backup = self.data[:volume_backups][backup_id]
@@ -46,10 +43,8 @@ module Fog
else
raise Fog::HP::BlockStorageV2::NotFound
end
-
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/get_volume_details.rb b/lib/fog/hp/requests/block_storage_v2/get_volume_details.rb
index 4683156..0c2bfd2 100644
--- a/lib/fog/hp/requests/block_storage_v2/get_volume_details.rb
+++ b/lib/fog/hp/requests/block_storage_v2/get_volume_details.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# Get details for existing block storage volume
#
# ==== Parameters
@@ -32,11 +31,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def get_volume_details(volume_id)
unless volume_id
raise ArgumentError.new('volume_id is required')
@@ -49,10 +46,8 @@ module Fog
else
raise Fog::HP::BlockStorageV2::NotFound
end
-
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/list_snapshots.rb b/lib/fog/hp/requests/block_storage_v2/list_snapshots.rb
index 81ac53b..f60009a 100644
--- a/lib/fog/hp/requests/block_storage_v2/list_snapshots.rb
+++ b/lib/fog/hp/requests/block_storage_v2/list_snapshots.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# List existing block storage snapshots
#
# ==== Parameters
@@ -33,11 +32,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def list_snapshots(options={})
response = Excon::Response.new
snapshots = []
@@ -51,7 +48,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/list_snapshots_detail.rb b/lib/fog/hp/requests/block_storage_v2/list_snapshots_detail.rb
index 8db74da..919bfdf 100644
--- a/lib/fog/hp/requests/block_storage_v2/list_snapshots_detail.rb
+++ b/lib/fog/hp/requests/block_storage_v2/list_snapshots_detail.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# List existing block storage snapshots with details
#
# ==== Parameters
@@ -33,11 +32,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def list_snapshots_detail(options={})
response = Excon::Response.new
snapshots = []
@@ -48,7 +45,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/list_volume_backups.rb b/lib/fog/hp/requests/block_storage_v2/list_volume_backups.rb
index 89054dd..79f5ccc 100644
--- a/lib/fog/hp/requests/block_storage_v2/list_volume_backups.rb
+++ b/lib/fog/hp/requests/block_storage_v2/list_volume_backups.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# List existing block storage volume backups
#
# ==== Parameters
@@ -28,11 +27,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def list_volume_backups(options = {})
response = Excon::Response.new
backups = []
@@ -46,7 +43,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/list_volume_backups_detail.rb b/lib/fog/hp/requests/block_storage_v2/list_volume_backups_detail.rb
index 8ad031c..2525996 100644
--- a/lib/fog/hp/requests/block_storage_v2/list_volume_backups_detail.rb
+++ b/lib/fog/hp/requests/block_storage_v2/list_volume_backups_detail.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# List details about existing block storage volume backups
#
# ==== Parameters
@@ -37,11 +36,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def list_volume_backups_detail(options = {})
response = Excon::Response.new
backups = []
@@ -52,7 +49,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/list_volumes.rb b/lib/fog/hp/requests/block_storage_v2/list_volumes.rb
index 654dd51..fe035d3 100644
--- a/lib/fog/hp/requests/block_storage_v2/list_volumes.rb
+++ b/lib/fog/hp/requests/block_storage_v2/list_volumes.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# List existing block storage volumes
#
# ==== Parameters
@@ -37,11 +36,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def list_volumes(options = {})
response = Excon::Response.new
volumes = []
@@ -55,7 +52,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/list_volumes_detail.rb b/lib/fog/hp/requests/block_storage_v2/list_volumes_detail.rb
index cac7733..1abafed 100644
--- a/lib/fog/hp/requests/block_storage_v2/list_volumes_detail.rb
+++ b/lib/fog/hp/requests/block_storage_v2/list_volumes_detail.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# List details about existing block storage volumes
#
# ==== Parameters
@@ -38,11 +37,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def list_volumes_detail(options = {})
response = Excon::Response.new
volumes = []
@@ -53,7 +50,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/restore_volume_backup.rb b/lib/fog/hp/requests/block_storage_v2/restore_volume_backup.rb
index e741e1f..4c59ba1 100644
--- a/lib/fog/hp/requests/block_storage_v2/restore_volume_backup.rb
+++ b/lib/fog/hp/requests/block_storage_v2/restore_volume_backup.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# Restore an existing block storage volume backup to an existing or new volume
#
# If a volume is specified, that volume will be overwritten with the backup data from the backup.
@@ -32,11 +31,9 @@ module Fog
:path => "backups/#{backup_id}/restore"
)
end
-
end
class Mock # :nodoc:all
-
def restore_volume_backup(backup_id, options={})
volume_id = options['volume_id']
@@ -91,7 +88,6 @@ module Fog
}
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/update_snapshot.rb b/lib/fog/hp/requests/block_storage_v2/update_snapshot.rb
index 8394e40..23d9a71 100644
--- a/lib/fog/hp/requests/block_storage_v2/update_snapshot.rb
+++ b/lib/fog/hp/requests/block_storage_v2/update_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# Update an existing block storage snapshot
#
# ==== Parameters
@@ -40,11 +39,9 @@ module Fog
:path => "snapshots/#{snapshot_id}"
)
end
-
end
class Mock # :nodoc:all
-
def update_snapshot(snapshot_id, options={})
unless snapshot_id
raise ArgumentError.new('snapshot_id is required')
@@ -60,10 +57,8 @@ module Fog
else
raise Fog::HP::BlockStorageV2::NotFound
end
-
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/block_storage_v2/update_volume.rb b/lib/fog/hp/requests/block_storage_v2/update_volume.rb
index 432ba8b..d05d9e0 100644
--- a/lib/fog/hp/requests/block_storage_v2/update_volume.rb
+++ b/lib/fog/hp/requests/block_storage_v2/update_volume.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class BlockStorageV2
class Real
-
# Update an existing block storage volume
#
# ==== Parameters
@@ -45,11 +44,9 @@ module Fog
:path => "volumes/#{volume_id}"
)
end
-
end
class Mock # :nodoc:all
-
def update_volume(volume_id, options={})
response = Excon::Response.new
if volume = self.data[:volumes][volume_id]
@@ -64,7 +61,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/cdn/delete_container.rb b/lib/fog/hp/requests/cdn/delete_container.rb
index 3ff4be9..ef4b21a 100644
--- a/lib/fog/hp/requests/cdn/delete_container.rb
+++ b/lib/fog/hp/requests/cdn/delete_container.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class HP
class Real
-
# Delete an existing container
#
# ==== Parameters
@@ -16,7 +15,6 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
@@ -32,7 +30,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/cdn/get_containers.rb b/lib/fog/hp/requests/cdn/get_containers.rb
index 6e78c26..53dd541 100644
--- a/lib/fog/hp/requests/cdn/get_containers.rb
+++ b/lib/fog/hp/requests/cdn/get_containers.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class HP
class Real
-
# List existing cdn-enabled storage containers
#
# ==== Parameters
@@ -24,11 +23,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def get_containers(options = {})
response = Excon::Response.new
data = self.data[:cdn_containers].map {|_,v| v}
@@ -36,9 +33,7 @@ module Fog
response.status = 200
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/cdn/head_container.rb b/lib/fog/hp/requests/cdn/head_container.rb
index c9c0434..14601a8 100644
--- a/lib/fog/hp/requests/cdn/head_container.rb
+++ b/lib/fog/hp/requests/cdn/head_container.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class HP
class Real
-
# List cdn properties for a container
#
# ==== Parameters
@@ -24,7 +23,6 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
@@ -44,7 +42,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/cdn/post_container.rb b/lib/fog/hp/requests/cdn/post_container.rb
index fd99c59..f102622 100644
--- a/lib/fog/hp/requests/cdn/post_container.rb
+++ b/lib/fog/hp/requests/cdn/post_container.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class HP
class Real
-
# modify CDN properties for a container
#
# ==== Parameters
@@ -21,7 +20,6 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
@@ -46,7 +44,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/cdn/put_container.rb b/lib/fog/hp/requests/cdn/put_container.rb
index 66eda20..ec96dbe 100644
--- a/lib/fog/hp/requests/cdn/put_container.rb
+++ b/lib/fog/hp/requests/cdn/put_container.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class HP
class Real
-
# enable CDN for a container
#
# ==== Parameters
@@ -21,7 +20,6 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
@@ -47,7 +45,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/allocate_address.rb b/lib/fog/hp/requests/compute/allocate_address.rb
index 9627a1f..cc1cca5 100644
--- a/lib/fog/hp/requests/compute/allocate_address.rb
+++ b/lib/fog/hp/requests/compute/allocate_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Acquires a floating IP address
#
# ==== Returns
@@ -14,7 +13,6 @@ module Fog
# * 'instance_id'<~String> - Id of the associated server instance
# * 'fixed_ip'<~String> - Fixed IP of the address
def allocate_address
-
request(
:body => nil,
:expects => 200,
@@ -22,11 +20,9 @@ module Fog
:path => 'os-floating-ips.json'
)
end
-
end
class Mock
-
def allocate_address
response = Excon::Response.new
response.status = 200
@@ -42,7 +38,6 @@ module Fog
response.body = { 'floating_ip' => data }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/associate_address.rb b/lib/fog/hp/requests/compute/associate_address.rb
index cf9c838..14bce3b 100644
--- a/lib/fog/hp/requests/compute/associate_address.rb
+++ b/lib/fog/hp/requests/compute/associate_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Associate a floating IP address with existing server
#
# ==== Parameters
@@ -13,11 +12,9 @@ module Fog
body = { 'addFloatingIp' => { 'server' => server_id, 'address' => ip_address }}
server_action(server_id, body)
end
-
end
class Mock
-
def associate_address(server_id, ip_address)
response = Excon::Response.new
if server = self.data[:servers][server_id]
@@ -35,7 +32,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/attach_volume.rb b/lib/fog/hp/requests/compute/attach_volume.rb
index 7635b6d..103865d 100644
--- a/lib/fog/hp/requests/compute/attach_volume.rb
+++ b/lib/fog/hp/requests/compute/attach_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Attach a block storage volume to an existing server
#
# ==== Parameters
@@ -31,11 +30,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def attach_volume(server_id, volume_id, device)
response = Excon::Response.new
if server = self.data[:servers][server_id]
@@ -71,7 +68,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/change_password_server.rb b/lib/fog/hp/requests/compute/change_password_server.rb
index 677b6bc..67d87b6 100644
--- a/lib/fog/hp/requests/compute/change_password_server.rb
+++ b/lib/fog/hp/requests/compute/change_password_server.rb
@@ -2,19 +2,16 @@ module Fog
module Compute
class HP
class Real
-
def change_password_server(server_id, admin_password)
body = { 'changePassword' => { 'adminPass' => admin_password }}
server_action(server_id, body)
end
-
end
class Mock
-
def change_password_server(server_id, admin_password)
response = Excon::Response.new
- if list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
if admin_password
response.body = { 'changePassword' => { 'adminPass' => admin_password }}
end
@@ -26,7 +23,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/confirm_resized_server.rb b/lib/fog/hp/requests/compute/confirm_resized_server.rb
index 78df7df..ba9ecc9 100644
--- a/lib/fog/hp/requests/compute/confirm_resized_server.rb
+++ b/lib/fog/hp/requests/compute/confirm_resized_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Confirm resizing
#
# ==== Parameters
@@ -12,11 +11,9 @@ module Fog
body = { 'confirmResize' => nil }
server_action(server_id, body, 204)
end
-
end
class Mock
-
def confirm_resized_server(server_id)
response = Excon::Response.new
response.status = 204
@@ -27,7 +24,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/create_image.rb b/lib/fog/hp/requests/compute/create_image.rb
index 5ca03bf..cad7496 100644
--- a/lib/fog/hp/requests/compute/create_image.rb
+++ b/lib/fog/hp/requests/compute/create_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Create an image from an existing server
#
# ==== Parameters
@@ -23,11 +22,9 @@ module Fog
}
server_action(server_id, body)
end
-
end
class Mock
-
def create_image(server_id, name, metadata = {})
response = Excon::Response.new
response.status = 202
@@ -52,9 +49,7 @@ module Fog
response.body = "" # { 'image' => data } no data is sent
response
end
-
end
end
end
end
-
diff --git a/lib/fog/hp/requests/compute/create_key_pair.rb b/lib/fog/hp/requests/compute/create_key_pair.rb
index 4205515..baed65a 100644
--- a/lib/fog/hp/requests/compute/create_key_pair.rb
+++ b/lib/fog/hp/requests/compute/create_key_pair.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Create a new keypair
#
# ==== Parameters
@@ -43,11 +42,9 @@ module Fog
:path => 'os-keypairs.json'
)
end
-
end
class Mock
-
def create_key_pair(key_name, public_key = nil)
response = Excon::Response.new
unless self.data[:key_pairs][key_name]
@@ -73,9 +70,7 @@ module Fog
end
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/create_persistent_server.rb b/lib/fog/hp/requests/compute/create_persistent_server.rb
index 87186fa..7095b6e 100644
--- a/lib/fog/hp/requests/compute/create_persistent_server.rb
+++ b/lib/fog/hp/requests/compute/create_persistent_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Create a new persistent server i.e. use a bootable volume instead of an image
#
# ==== Parameters
@@ -113,11 +112,9 @@ module Fog
:path => 'os-volumes_boot'
)
end
-
end
class Mock
-
def create_persistent_server(name, flavor_id, block_device_mapping = [], options = {})
response = Excon::Response.new
@@ -159,9 +156,7 @@ module Fog
response.status = 400
raise(Excon::Errors::BadRequest, "No boot volume or boot image specified")
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/create_security_group.rb b/lib/fog/hp/requests/compute/create_security_group.rb
index ad024bf..3c734d6 100644
--- a/lib/fog/hp/requests/compute/create_security_group.rb
+++ b/lib/fog/hp/requests/compute/create_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Create a new security group
#
# ==== Parameters
@@ -44,18 +43,16 @@ module Fog
:path => 'os-security-groups.json'
)
end
-
end
class Mock
-
def create_security_group(name, description)
# all spaces are removed
name = name.strip
description = description.strip
response = Excon::Response.new
- if self.data[:security_groups].detect {|_,v| v['name'] == name}
+ if self.data[:security_groups].find {|_,v| v['name'] == name}
response.status = 400
response.body = { "badRequest" => {"message" => "Security group #{name} already exists", "code" => 400}}
raise(Excon::Errors.status_error({:expects => 200}, response))
@@ -75,9 +72,7 @@ module Fog
end
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/create_security_group_rule.rb b/lib/fog/hp/requests/compute/create_security_group_rule.rb
index 2cba1c6..7c23132 100644
--- a/lib/fog/hp/requests/compute/create_security_group_rule.rb
+++ b/lib/fog/hp/requests/compute/create_security_group_rule.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Create a new security group rule and attach it to a security group
#
# ==== Parameters
@@ -37,11 +36,9 @@ module Fog
:path => 'os-security-group-rules.json'
)
end
-
end
class Mock
-
def create_security_group_rule(parent_group_id, ip_protocol, from_port, to_port, cidr, group_id=nil)
response = Excon::Response.new
group = self.data[:security_groups][parent_group_id]
@@ -67,9 +64,7 @@ module Fog
raise Fog::Compute::HP::NotFound
end
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/create_server.rb b/lib/fog/hp/requests/compute/create_server.rb
index 26e10c6..75c32f6 100644
--- a/lib/fog/hp/requests/compute/create_server.rb
+++ b/lib/fog/hp/requests/compute/create_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Create a new server
#
# ==== Parameters
@@ -98,11 +97,9 @@ module Fog
:path => 'servers.json'
)
end
-
end
class Mock
-
def create_server(name, flavor_id, image_id, options = {})
response = Excon::Response.new
response.status = 202
@@ -139,7 +136,6 @@ module Fog
response.body = { 'server' => data.merge({'adminPass' => 'password'}) }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/delete_image.rb b/lib/fog/hp/requests/compute/delete_image.rb
index 0664417..c791aa9 100644
--- a/lib/fog/hp/requests/compute/delete_image.rb
+++ b/lib/fog/hp/requests/compute/delete_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Delete an image
#
# ==== Parameters
@@ -15,14 +14,12 @@ module Fog
:path => "images/#{image_id}"
)
end
-
end
class Mock
-
def delete_image(image_id)
response = Excon::Response.new
- if image = list_images_detail.body['images'].detect {|_| _['id'] == image_id}
+ if image = list_images_detail.body['images'].find {|_| _['id'] == image_id}
if image['status'] == 'SAVING'
response.status = 409
raise(Excon::Errors.status_error({:expects => 202}, response))
@@ -36,9 +33,7 @@ module Fog
response.status = 500
raise(Excon::Errors.status_error({:expects => 202}, response))
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/delete_key_pair.rb b/lib/fog/hp/requests/compute/delete_key_pair.rb
index 8e02fc3..c4b8f48 100644
--- a/lib/fog/hp/requests/compute/delete_key_pair.rb
+++ b/lib/fog/hp/requests/compute/delete_key_pair.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Delete a keypair
#
# ==== Parameters
@@ -15,11 +14,9 @@ module Fog
:path => "os-keypairs/#{key_name}"
)
end
-
end
class Mock
-
def delete_key_pair(key_name)
response = Excon::Response.new
if self.data[:key_pairs][key_name]
@@ -32,7 +29,6 @@ module Fog
raise Fog::Compute::HP::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/delete_meta.rb b/lib/fog/hp/requests/compute/delete_meta.rb
index 7c71f24..1e39d98 100644
--- a/lib/fog/hp/requests/compute/delete_meta.rb
+++ b/lib/fog/hp/requests/compute/delete_meta.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Delete metadata item for specific collections
#
# ==== Parameters
@@ -21,11 +20,9 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata/#{key}"
)
end
-
end
class Mock
-
def delete_meta(collection_name, parent_id, key)
if collection_name == "images" then
if get_image_details(parent_id)
@@ -47,9 +44,7 @@ module Fog
response.status = 204
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/delete_security_group.rb b/lib/fog/hp/requests/compute/delete_security_group.rb
index 4c14c2f..64dd472 100644
--- a/lib/fog/hp/requests/compute/delete_security_group.rb
+++ b/lib/fog/hp/requests/compute/delete_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Delete a security group
#
# ==== Parameters
@@ -17,11 +16,9 @@ module Fog
:path => "os-security-groups/#{security_group_id}"
)
end
-
end
class Mock
-
def delete_security_group(security_group_id)
response = Excon::Response.new
if self.data[:security_groups][security_group_id]
@@ -34,7 +31,6 @@ module Fog
raise Fog::Compute::HP::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/delete_security_group_rule.rb b/lib/fog/hp/requests/compute/delete_security_group_rule.rb
index af74d6f..2bb271c 100644
--- a/lib/fog/hp/requests/compute/delete_security_group_rule.rb
+++ b/lib/fog/hp/requests/compute/delete_security_group_rule.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Delete a security group rule
#
# ==== Parameters
@@ -16,11 +15,9 @@ module Fog
:path => "os-security-group-rules/#{security_group_rule_id}"
)
end
-
end
class Mock
-
def delete_security_group_rule(security_group_rule_id)
response = Excon::Response.new
@@ -40,9 +37,7 @@ module Fog
else
raise Fog::Compute::HP::NotFound
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/delete_server.rb b/lib/fog/hp/requests/compute/delete_server.rb
index 9b5d554..716680d 100644
--- a/lib/fog/hp/requests/compute/delete_server.rb
+++ b/lib/fog/hp/requests/compute/delete_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Delete an existing server
#
# ==== Parameters
@@ -15,14 +14,12 @@ module Fog
:path => "servers/#{server_id}"
)
end
-
end
class Mock
-
def delete_server(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
if server['status'] == 'BUILD'
response.status = 409
raise(Excon::Errors.status_error({:expects => 202}, response))
@@ -36,7 +33,6 @@ module Fog
raise Fog::Compute::HP::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/detach_volume.rb b/lib/fog/hp/requests/compute/detach_volume.rb
index 0f07c5e..b734224 100644
--- a/lib/fog/hp/requests/compute/detach_volume.rb
+++ b/lib/fog/hp/requests/compute/detach_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Detach a block storage volume from an existing server
#
# ==== Parameters
@@ -20,11 +19,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def detach_volume(server_id, volume_id)
response = Excon::Response.new
if server = self.data[:servers][server_id]
@@ -40,7 +37,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/disassociate_address.rb b/lib/fog/hp/requests/compute/disassociate_address.rb
index 4b2964e..e4d47ae 100644
--- a/lib/fog/hp/requests/compute/disassociate_address.rb
+++ b/lib/fog/hp/requests/compute/disassociate_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Disassociate a floating IP address with existing server
#
# ==== Parameters
@@ -13,11 +12,9 @@ module Fog
body = { 'removeFloatingIp' => { 'server' => server_id, 'address' => ip_address }}
server_action(server_id, body)
end
-
end
class Mock
-
def disassociate_address(server_id, ip_address)
response = Excon::Response.new
if server = self.data[:servers][server_id]
@@ -32,7 +29,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/get_address.rb b/lib/fog/hp/requests/compute/get_address.rb
index e7ceb72..8c2720e 100644
--- a/lib/fog/hp/requests/compute/get_address.rb
+++ b/lib/fog/hp/requests/compute/get_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Get details about an existing floating IP address
#
# ==== Parameters
@@ -23,11 +22,9 @@ module Fog
:path => "os-floating-ips/#{address_id}"
)
end
-
end
class Mock
-
def get_address(address_id)
response = Excon::Response.new
if address = self.data[:addresses][address_id]
@@ -38,7 +35,6 @@ module Fog
raise Fog::Compute::HP::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/get_console_output.rb b/lib/fog/hp/requests/compute/get_console_output.rb
index 475cc97..a2a294b 100644
--- a/lib/fog/hp/requests/compute/get_console_output.rb
+++ b/lib/fog/hp/requests/compute/get_console_output.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Retrieve console output for specified instance
#
# ==== Parameters
@@ -17,15 +16,13 @@ module Fog
body = { 'os-getConsoleOutput' => { 'length' => num_lines }}
server_action(server_id, body, 200)
end
-
end
class Mock
-
def get_console_output(server_id, num_lines)
output = ""
response = Excon::Response.new
- if list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
(1..num_lines).each {|i| output += "Console Output Line #{i} \r\n"}
response.body = { 'output' => output }
response.status = 200
@@ -34,7 +31,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/get_flavor_details.rb b/lib/fog/hp/requests/compute/get_flavor_details.rb
index b8a1127..6bae124 100644
--- a/lib/fog/hp/requests/compute/get_flavor_details.rb
+++ b/lib/fog/hp/requests/compute/get_flavor_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Get details for flavor by id
#
# ==== Returns
@@ -19,11 +18,9 @@ module Fog
:path => "flavors/#{flavor_id}.json"
)
end
-
end
class Mock
-
def get_flavor_details(flavor_id)
response = Excon::Response.new
flavor = {
@@ -44,7 +41,6 @@ module Fog
raise Fog::Compute::HP::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/get_image_details.rb b/lib/fog/hp/requests/compute/get_image_details.rb
index e1b264a..4f2037d 100644
--- a/lib/fog/hp/requests/compute/get_image_details.rb
+++ b/lib/fog/hp/requests/compute/get_image_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Get details for image by id
#
# ==== Returns
@@ -20,14 +19,12 @@ module Fog
:path => "images/#{image_id}.json"
)
end
-
end
class Mock
-
def get_image_details(image_id)
response = Excon::Response.new
- if image = list_images_detail.body['images'].detect {|_| _['id'] == image_id}
+ if image = list_images_detail.body['images'].find {|_| _['id'] == image_id}
response.status = [200, 203][rand(1)]
response.body = { 'image' => image }
response
@@ -35,9 +32,7 @@ module Fog
raise Fog::Compute::HP::NotFound
end
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/get_meta.rb b/lib/fog/hp/requests/compute/get_meta.rb
index 17ea323..fe3ad9b 100644
--- a/lib/fog/hp/requests/compute/get_meta.rb
+++ b/lib/fog/hp/requests/compute/get_meta.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Get metadata item for specific collections
#
# ==== Parameters
@@ -22,11 +21,9 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata/#{key}"
)
end
-
end
class Mock
-
def get_meta(collection_name, parent_id, key)
if collection_name == "images" then
if get_image_details(parent_id)
@@ -49,9 +46,7 @@ module Fog
response.body = { 'meta' => { key => midata } }
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/get_security_group.rb b/lib/fog/hp/requests/compute/get_security_group.rb
index 7362d1d..7ca20a7 100644
--- a/lib/fog/hp/requests/compute/get_security_group.rb
+++ b/lib/fog/hp/requests/compute/get_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Get details about a security group
#
# ==== Parameters
@@ -35,11 +34,9 @@ module Fog
:path => "os-security-groups/#{security_group_id}"
)
end
-
end
class Mock
-
def get_security_group(security_group_id)
response = Excon::Response.new
if sec_group = self.data[:security_groups][security_group_id]
@@ -50,7 +47,6 @@ module Fog
raise Fog::Compute::HP::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/get_server_details.rb b/lib/fog/hp/requests/compute/get_server_details.rb
index 823c026..3b74e22 100644
--- a/lib/fog/hp/requests/compute/get_server_details.rb
+++ b/lib/fog/hp/requests/compute/get_server_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Get details about a server
#
# ==== Parameters
@@ -30,14 +29,12 @@ module Fog
:path => "servers/#{server_id}.json"
)
end
-
end
class Mock
-
def get_server_details(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.status = [200, 203][rand(1)]
response.body = { 'server' => server }
response
@@ -45,7 +42,6 @@ module Fog
raise Fog::Compute::HP::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/get_vnc_console.rb b/lib/fog/hp/requests/compute/get_vnc_console.rb
index d034057..b7023c8 100644
--- a/lib/fog/hp/requests/compute/get_vnc_console.rb
+++ b/lib/fog/hp/requests/compute/get_vnc_console.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Retrieve VNC console for the specified instance
#
# ==== Parameters
@@ -19,18 +18,16 @@ module Fog
body = { 'os-getVNCConsole' => { 'type' => type }}
server_action(server_id, body, 200)
end
-
end
class Mock
-
def get_vnc_console(server_id, type='novnc')
output = {
'type' => type,
'url' => 'https://region.compute.hpcloud.com/vnc_auto.html?token=123ABX234'
}
response = Excon::Response.new
- if list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.body = { 'console' => output }
response.status = 200
else
@@ -38,7 +35,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/get_windows_password.rb b/lib/fog/hp/requests/compute/get_windows_password.rb
index 58aebbf..46c2b5c 100644
--- a/lib/fog/hp/requests/compute/get_windows_password.rb
+++ b/lib/fog/hp/requests/compute/get_windows_password.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Retrieves the encrypted administrator password for a server running Windows.
#
# ==== Parameters
@@ -17,11 +16,9 @@ module Fog
# decrypt the log output to extract the encrypted, base64-encoded password
encrypted_password = extract_password_from_log(log_output)
end
-
end
class Mock
-
def get_windows_password(server_id)
# need to mock out the private key as well
private_key = OpenSSL::PKey::RSA.generate(1024)
@@ -29,7 +26,7 @@ module Fog
### The original password is Passw0rd
encoded_password = encrypt_using_public_key("Passw0rd", public_key)
- if list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
# mock output for this call get_console_output(server_id, 400).body['output']
log_output = "start junk [cloud-init] Encrypt random password\n-----BEGIN BASE64-ENCODED ENCRYPTED PASSWORD-----\n#{encoded_password}-----END BASE64-ENCODED ENCRYPTED PASSWORD-----\nend junk [cloud-init] Done\n"
encrypted_password = extract_password_from_log(log_output)
diff --git a/lib/fog/hp/requests/compute/list_addresses.rb b/lib/fog/hp/requests/compute/list_addresses.rb
index 1d5d683..7c48e75 100644
--- a/lib/fog/hp/requests/compute/list_addresses.rb
+++ b/lib/fog/hp/requests/compute/list_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# List all floating IP addresses
#
# ==== Returns
@@ -20,11 +19,9 @@ module Fog
:path => "os-floating-ips.json"
)
end
-
end
class Mock
-
def list_addresses
response = Excon::Response.new
addresses = []
@@ -34,7 +31,6 @@ module Fog
response.body = { 'floating_ips' => addresses }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/list_flavors.rb b/lib/fog/hp/requests/compute/list_flavors.rb
index fc17593..6fd6ae3 100644
--- a/lib/fog/hp/requests/compute/list_flavors.rb
+++ b/lib/fog/hp/requests/compute/list_flavors.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# List all flavors (IDs and names only)
#
# ==== Returns
@@ -17,11 +16,9 @@ module Fog
:path => 'flavors.json'
)
end
-
end
class Mock
-
def list_flavors
response = Excon::Response.new
response.status = 200
@@ -37,7 +34,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/list_flavors_detail.rb b/lib/fog/hp/requests/compute/list_flavors_detail.rb
index 890ef92..7eee9f7 100644
--- a/lib/fog/hp/requests/compute/list_flavors_detail.rb
+++ b/lib/fog/hp/requests/compute/list_flavors_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# List all flavors
#
# ==== Returns
@@ -19,11 +18,9 @@ module Fog
:path => 'flavors/detail.json'
)
end
-
end
class Mock
-
def list_flavors_detail
response = Excon::Response.new
response.status = 200
@@ -39,7 +36,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/list_images.rb b/lib/fog/hp/requests/compute/list_images.rb
index 4f96fd8..5e2efb2 100644
--- a/lib/fog/hp/requests/compute/list_images.rb
+++ b/lib/fog/hp/requests/compute/list_images.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# List all images (IDs and names only)
#
# ==== Returns
@@ -17,11 +16,9 @@ module Fog
:path => 'images.json'
)
end
-
end
class Mock
-
def list_images
response = Excon::Response.new
data = list_images_detail.body['images']
@@ -33,7 +30,6 @@ module Fog
response.body = { 'images' => images }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/list_images_detail.rb b/lib/fog/hp/requests/compute/list_images_detail.rb
index b70d38b..6bb4056 100644
--- a/lib/fog/hp/requests/compute/list_images_detail.rb
+++ b/lib/fog/hp/requests/compute/list_images_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# List all images
#
# ==== Returns
@@ -20,11 +19,9 @@ module Fog
:path => 'images/detail.json'
)
end
-
end
class Mock
-
def list_images_detail
response = Excon::Response.new
@@ -42,7 +39,6 @@ module Fog
response.body = { 'images' => images.map {|image| image.reject {|key, value| !['id', 'name', 'links', 'metadata', 'progress' ,'status', 'created', 'updated'].include?(key)}} }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/list_key_pairs.rb b/lib/fog/hp/requests/compute/list_key_pairs.rb
index 77adeba..9f20982 100644
--- a/lib/fog/hp/requests/compute/list_key_pairs.rb
+++ b/lib/fog/hp/requests/compute/list_key_pairs.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# List all key pairs
#
# ==== Returns
@@ -22,11 +21,9 @@ module Fog
:path => 'os-keypairs.json'
)
end
-
end
class Mock
-
def list_key_pairs
response = Excon::Response.new
@@ -37,7 +34,6 @@ module Fog
response.body = { 'keypairs' => key_pairs }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/list_metadata.rb b/lib/fog/hp/requests/compute/list_metadata.rb
index cd27836..0c35aa1 100644
--- a/lib/fog/hp/requests/compute/list_metadata.rb
+++ b/lib/fog/hp/requests/compute/list_metadata.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# List metadata for specific collections
#
# ==== Parameters
@@ -21,11 +20,9 @@ module Fog
:path => "/#{collection_name}/#{parent_id}/metadata.json"
)
end
-
end
class Mock
-
def list_metadata(collection_name, parent_id)
mdata = {}
if collection_name == "images" then
@@ -49,7 +46,6 @@ module Fog
response.body = {'metadata' => mdata}
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/list_security_groups.rb b/lib/fog/hp/requests/compute/list_security_groups.rb
index 5b05384..b330002 100644
--- a/lib/fog/hp/requests/compute/list_security_groups.rb
+++ b/lib/fog/hp/requests/compute/list_security_groups.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# List all security groups
#
# ==== Returns
@@ -32,11 +31,9 @@ module Fog
:path => 'os-security-groups.json'
)
end
-
end
class Mock
-
def list_security_groups
response = Excon::Response.new
@@ -47,7 +44,6 @@ module Fog
response.body = { 'security_groups' => sec_groups }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/list_server_addresses.rb b/lib/fog/hp/requests/compute/list_server_addresses.rb
index 5a364b2..78cbf1f 100644
--- a/lib/fog/hp/requests/compute/list_server_addresses.rb
+++ b/lib/fog/hp/requests/compute/list_server_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# List all server addresses
#
# ==== Parameters
@@ -20,14 +19,12 @@ module Fog
:path => "servers/#{server_id}/ips.json"
)
end
-
end
class Mock
-
def list_server_addresses(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.status = 200
response.body = { 'addresses' => server['addresses'] }
response
@@ -35,7 +32,6 @@ module Fog
raise Fog::Compute::HP::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/list_server_private_addresses.rb b/lib/fog/hp/requests/compute/list_server_private_addresses.rb
index bbb0238..b8e2dcc 100644
--- a/lib/fog/hp/requests/compute/list_server_private_addresses.rb
+++ b/lib/fog/hp/requests/compute/list_server_private_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# List private server addresses
#
# ==== Parameters
@@ -29,14 +28,12 @@ module Fog
response.body = { 'private' => private_address }
response
end
-
end
class Mock
-
def list_server_private_addresses(server_id, network_name)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
private_address = []
data = nil
data = server['addresses']["#{network_name}"][0] if server['addresses']["#{network_name}"]
@@ -51,7 +48,6 @@ module Fog
raise Fog::Compute::HP::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/list_server_public_addresses.rb b/lib/fog/hp/requests/compute/list_server_public_addresses.rb
index d5eaf68..c592d41 100644
--- a/lib/fog/hp/requests/compute/list_server_public_addresses.rb
+++ b/lib/fog/hp/requests/compute/list_server_public_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# List public server addresses
#
# ==== Parameters
@@ -29,14 +28,12 @@ module Fog
response.body = { 'public' => public_address }
response
end
-
end
class Mock
-
def list_server_public_addresses(server_id, network_name)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
# return everything except the first address
data = server['addresses']["#{network_name}"]
if data
@@ -51,7 +48,6 @@ module Fog
raise Fog::Compute::HP::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/list_server_volumes.rb b/lib/fog/hp/requests/compute/list_server_volumes.rb
index e8422dd..ad2b313 100644
--- a/lib/fog/hp/requests/compute/list_server_volumes.rb
+++ b/lib/fog/hp/requests/compute/list_server_volumes.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# List all volumes attached to a server
#
# ==== Parameters
@@ -25,11 +24,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def list_server_volumes(server_id)
response = Excon::Response.new
volumes = []
@@ -42,7 +39,6 @@ module Fog
raise Fog::Compute::HP::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/list_servers.rb b/lib/fog/hp/requests/compute/list_servers.rb
index 83e87a4..54029fc 100644
--- a/lib/fog/hp/requests/compute/list_servers.rb
+++ b/lib/fog/hp/requests/compute/list_servers.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# List all servers (IDs and names only)
#
# ==== Returns
@@ -18,11 +17,9 @@ module Fog
:path => 'servers.json'
)
end
-
end
class Mock
-
def list_servers
response = Excon::Response.new
data = list_servers_detail.body['servers']
@@ -34,7 +31,6 @@ module Fog
response.body = { 'servers' => servers }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/list_servers_detail.rb b/lib/fog/hp/requests/compute/list_servers_detail.rb
index 320f31c..9b105e8 100644
--- a/lib/fog/hp/requests/compute/list_servers_detail.rb
+++ b/lib/fog/hp/requests/compute/list_servers_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# List all servers details
#
# ==== Returns
@@ -27,11 +26,9 @@ module Fog
:path => 'servers/detail.json'
)
end
-
end
class Mock
-
def list_servers_detail
response = Excon::Response.new
@@ -49,7 +46,6 @@ module Fog
response.body = { 'servers' => servers }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/reboot_server.rb b/lib/fog/hp/requests/compute/reboot_server.rb
index 082f920..b472943 100644
--- a/lib/fog/hp/requests/compute/reboot_server.rb
+++ b/lib/fog/hp/requests/compute/reboot_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Reboot an existing server
#
# ==== Parameters
@@ -13,21 +12,18 @@ module Fog
body = { 'reboot' => { 'type' => type }}
server_action(server_id, body)
end
-
end
class Mock
-
def reboot_server(server_id, type = 'SOFT')
response = Excon::Response.new
- if list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.status = 202
response
else
raise Fog::Compute::HP::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/rebuild_server.rb b/lib/fog/hp/requests/compute/rebuild_server.rb
index 8752987..c1b4f6c 100644
--- a/lib/fog/hp/requests/compute/rebuild_server.rb
+++ b/lib/fog/hp/requests/compute/rebuild_server.rb
@@ -2,9 +2,7 @@ module Fog
module Compute
class HP
class Real
-
def rebuild_server(server_id, image_ref, name, admin_pass=nil, metadata=nil, personality=nil)
-
body = { 'rebuild' => {
'imageRef' => image_ref,
'name' => name
@@ -14,18 +12,15 @@ module Fog
body['rebuild']['personality'] = personality if personality
server_action(server_id, body, 202)
end
-
end
class Mock
-
def rebuild_server(server_id, image_ref, name, admin_pass=nil, metadata=nil, personality=nil)
response = get_server_details(server_id)
response.body['server']['status'] = "REBUILD"
response.status = 202
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/release_address.rb b/lib/fog/hp/requests/compute/release_address.rb
index 586c661..ae1e072 100644
--- a/lib/fog/hp/requests/compute/release_address.rb
+++ b/lib/fog/hp/requests/compute/release_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Release an existing floating IP address
#
# ==== Parameters
@@ -15,11 +14,9 @@ module Fog
:path => "os-floating-ips/#{address_id}"
)
end
-
end
class Mock
-
def release_address(address_id)
response = Excon::Response.new
if self.data[:addresses][address_id]
@@ -32,7 +29,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/resize_server.rb b/lib/fog/hp/requests/compute/resize_server.rb
index 24000d1..1af5d9f 100644
--- a/lib/fog/hp/requests/compute/resize_server.rb
+++ b/lib/fog/hp/requests/compute/resize_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Reboot an existing server
#
# ==== Parameters
@@ -13,11 +12,9 @@ module Fog
body = { 'resize' => { 'flavorRef' => flavor_id }}
server_action(server_id, body)
end
-
end
class Mock
-
# FIXME: should probably transition instead of skipping to VERIFY_RESIZE
def resize_server(server_id, flavor_id)
response = Excon::Response.new
@@ -32,7 +29,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/revert_resized_server.rb b/lib/fog/hp/requests/compute/revert_resized_server.rb
index fa5514f..30e0a75 100644
--- a/lib/fog/hp/requests/compute/revert_resized_server.rb
+++ b/lib/fog/hp/requests/compute/revert_resized_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Revert resizing
#
# ==== Parameters
@@ -12,11 +11,9 @@ module Fog
body = { 'revertResize' => nil }
server_action(server_id, body)
end
-
end
class Mock
-
def revert_resized_server(server_id)
response = Excon::Response.new
response.status = 202
@@ -28,7 +25,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/server_action.rb b/lib/fog/hp/requests/compute/server_action.rb
index debe1c1..0e59122 100644
--- a/lib/fog/hp/requests/compute/server_action.rb
+++ b/lib/fog/hp/requests/compute/server_action.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Server actions for an existing server
#
# ==== Parameters
@@ -18,7 +17,6 @@ module Fog
:path => "servers/#{server_id}/action.json"
)
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/set_metadata.rb b/lib/fog/hp/requests/compute/set_metadata.rb
index 09ac0fe..9f69e52 100644
--- a/lib/fog/hp/requests/compute/set_metadata.rb
+++ b/lib/fog/hp/requests/compute/set_metadata.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Set metadata for specific collections
#
# ==== Parameters
@@ -23,13 +22,10 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata"
)
end
-
end
class Mock
-
def set_metadata(collection_name, parent_id, metadata = {})
-
if collection_name == "images" then
if get_image_details(parent_id)
self.data[:images][parent_id]['metadata'] = metadata
@@ -50,11 +46,8 @@ module Fog
response.body = { "metadata" => metadata }
response.status = 200
response
-
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/update_meta.rb b/lib/fog/hp/requests/compute/update_meta.rb
index f03f8c8..7896931 100644
--- a/lib/fog/hp/requests/compute/update_meta.rb
+++ b/lib/fog/hp/requests/compute/update_meta.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Set or update metadata item for specific collections
#
# ==== Parameters
@@ -24,13 +23,10 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata/#{key}"
)
end
-
end
class Mock
-
def update_meta(collection_name, parent_id, key, value)
-
if collection_name == "images" then
if get_image_details(parent_id)
self.data[:images][parent_id]['metadata'][key] = value
@@ -51,11 +47,8 @@ module Fog
response.body = { "meta" => { key => value } }
response.status = 200
response
-
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/update_metadata.rb b/lib/fog/hp/requests/compute/update_metadata.rb
index cac456e..fbd9041 100644
--- a/lib/fog/hp/requests/compute/update_metadata.rb
+++ b/lib/fog/hp/requests/compute/update_metadata.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Update metadata for specific collections
#
# ==== Parameters
@@ -23,13 +22,10 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata.json"
)
end
-
end
class Mock
-
def update_metadata(collection_name, parent_id, metadata = {})
-
if collection_name == "images" then
if get_image_details(parent_id)
newmetadata = self.data[:images][parent_id]['metadata'].merge!(metadata)
@@ -50,11 +46,8 @@ module Fog
response.body = { "metadata" => newmetadata }
response.status = 200
response
-
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute/update_server.rb b/lib/fog/hp/requests/compute/update_server.rb
index 3641f81..feae5dd 100644
--- a/lib/fog/hp/requests/compute/update_server.rb
+++ b/lib/fog/hp/requests/compute/update_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HP
class Real
-
# Update an existing server
#
# ==== Parameters
@@ -18,14 +17,12 @@ module Fog
:path => "servers/#{server_id}.json"
)
end
-
end
class Mock
-
def update_server(server_id, options)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
if options['name']
server['name'] = options['name']
end
@@ -35,7 +32,6 @@ module Fog
raise Fog::Compute::HP::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/add_security_group.rb b/lib/fog/hp/requests/compute_v2/add_security_group.rb
index 5d4a336..142b024 100644
--- a/lib/fog/hp/requests/compute_v2/add_security_group.rb
+++ b/lib/fog/hp/requests/compute_v2/add_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Add an existing security group to an existing server
#
# ==== Parameters
@@ -13,11 +12,9 @@ module Fog
body = { 'addSecurityGroup' => { 'name' => sg_name }}
server_action(server_id, body)
end
-
end
class Mock
-
def add_security_group(server_id, sg_name)
response = Excon::Response.new
if server = self.data[:servers][server_id]
@@ -33,7 +30,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/allocate_address.rb b/lib/fog/hp/requests/compute_v2/allocate_address.rb
index 6358008..526c194 100644
--- a/lib/fog/hp/requests/compute_v2/allocate_address.rb
+++ b/lib/fog/hp/requests/compute_v2/allocate_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Acquires a floating IP address
#
# Note: This method will proxy the call to the Network (Quantum) service,
@@ -18,7 +17,6 @@ module Fog
# * 'instance_id'<~String> - Id of the associated server instance
# * 'fixed_ip'<~String> - Fixed IP of the address
def allocate_address
-
request(
:body => nil,
:expects => 200,
@@ -26,11 +24,9 @@ module Fog
:path => 'os-floating-ips'
)
end
-
end
class Mock
-
def allocate_address
response = Excon::Response.new
response.status = 200
@@ -46,7 +42,6 @@ module Fog
response.body = { 'floating_ip' => data }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/associate_address.rb b/lib/fog/hp/requests/compute_v2/associate_address.rb
index 5e865c3..054e54f 100644
--- a/lib/fog/hp/requests/compute_v2/associate_address.rb
+++ b/lib/fog/hp/requests/compute_v2/associate_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Associate a floating IP address with an existing server
#
# Note: This method will proxy the call to the Network (Quantum) service,
@@ -17,11 +16,9 @@ module Fog
body = { 'addFloatingIp' => { 'server' => server_id, 'address' => ip_address }}
server_action(server_id, body)
end
-
end
class Mock
-
def associate_address(server_id, ip_address)
response = Excon::Response.new
if server = self.data[:servers][server_id]
@@ -39,7 +36,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/attach_volume.rb b/lib/fog/hp/requests/compute_v2/attach_volume.rb
index a83eaf2..6e764b1 100644
--- a/lib/fog/hp/requests/compute_v2/attach_volume.rb
+++ b/lib/fog/hp/requests/compute_v2/attach_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Attach a block storage volume to an existing server
#
# ==== Parameters
@@ -31,11 +30,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def attach_volume(server_id, volume_id, device)
response = Excon::Response.new
if server = self.data[:servers][server_id]
@@ -73,7 +70,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/create_image.rb b/lib/fog/hp/requests/compute_v2/create_image.rb
index f3f3ab6..8db4ce9 100644
--- a/lib/fog/hp/requests/compute_v2/create_image.rb
+++ b/lib/fog/hp/requests/compute_v2/create_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Create an image from an existing server
#
# ==== Parameters
@@ -20,14 +19,12 @@ module Fog
}
server_action(server_id, body)
end
-
end
class Mock
-
def create_image(server_id, name, metadata = {})
response = Excon::Response.new
- if list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.status = 202
image_id = Fog::HP::Mock.uuid.to_s
@@ -55,9 +52,7 @@ module Fog
raise Fog::Compute::HPV2::NotFound
end
end
-
end
end
end
end
-
diff --git a/lib/fog/hp/requests/compute_v2/create_key_pair.rb b/lib/fog/hp/requests/compute_v2/create_key_pair.rb
index 3aea8f2..bb7e772 100644
--- a/lib/fog/hp/requests/compute_v2/create_key_pair.rb
+++ b/lib/fog/hp/requests/compute_v2/create_key_pair.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Create a new keypair
#
# ==== Parameters
@@ -41,11 +40,9 @@ module Fog
:path => 'os-keypairs'
)
end
-
end
class Mock
-
def create_key_pair(key_name, public_key = nil)
response = Excon::Response.new
response.status = 200
@@ -65,9 +62,7 @@ module Fog
end
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/create_persistent_server.rb b/lib/fog/hp/requests/compute_v2/create_persistent_server.rb
index 2123c3a..c502a6d 100644
--- a/lib/fog/hp/requests/compute_v2/create_persistent_server.rb
+++ b/lib/fog/hp/requests/compute_v2/create_persistent_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Create a new persistent server i.e. use a bootable volume instead of an image
#
# ==== Parameters
@@ -111,7 +110,6 @@ module Fog
end
end
-
request(
:body => Fog::JSON.encode(data),
:expects => 202,
@@ -119,11 +117,9 @@ module Fog
:path => 'os-volumes_boot'
)
end
-
end
class Mock
-
def create_persistent_server(name, flavor_id, block_device_mapping, options = {})
response = Excon::Response.new
@@ -174,9 +170,7 @@ module Fog
response.status = 400
raise(Excon::Errors::BadRequest, 'No boot volume or boot image specified')
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/create_server.rb b/lib/fog/hp/requests/compute_v2/create_server.rb
index 383047f..3f10323 100644
--- a/lib/fog/hp/requests/compute_v2/create_server.rb
+++ b/lib/fog/hp/requests/compute_v2/create_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Create a new server
#
# ==== Parameters
@@ -110,11 +109,9 @@ module Fog
:path => 'servers'
)
end
-
end
class Mock
-
def create_server(name, flavor_id, image_id, options = {})
response = Excon::Response.new
response.status = 202
@@ -161,7 +158,6 @@ module Fog
response.body = { 'server' => data.merge({'adminPass' => 'password'}) }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/delete_image.rb b/lib/fog/hp/requests/compute_v2/delete_image.rb
index 6cf1017..86bb90c 100644
--- a/lib/fog/hp/requests/compute_v2/delete_image.rb
+++ b/lib/fog/hp/requests/compute_v2/delete_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Delete an image
#
# ==== Parameters
@@ -15,14 +14,12 @@ module Fog
:path => "images/#{image_id}"
)
end
-
end
class Mock
-
def delete_image(image_id)
response = Excon::Response.new
- if image = list_images_detail.body['images'].detect {|_| _['id'] == image_id}
+ if image = list_images_detail.body['images'].find {|_| _['id'] == image_id}
if image['status'] == 'SAVING'
response.status = 409
raise(Excon::Errors.status_error({:expects => 202}, response))
@@ -35,9 +32,7 @@ module Fog
else
raise Fog::Compute::HPV2::NotFound
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/delete_key_pair.rb b/lib/fog/hp/requests/compute_v2/delete_key_pair.rb
index 3101e77..c50f78c 100644
--- a/lib/fog/hp/requests/compute_v2/delete_key_pair.rb
+++ b/lib/fog/hp/requests/compute_v2/delete_key_pair.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Delete a keypair
#
# ==== Parameters
@@ -15,11 +14,9 @@ module Fog
:path => "os-keypairs/#{key_name}"
)
end
-
end
class Mock
-
def delete_key_pair(key_name)
response = Excon::Response.new
if self.data[:key_pairs][key_name]
@@ -31,7 +28,6 @@ module Fog
raise Fog::Compute::HPV2::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/delete_meta.rb b/lib/fog/hp/requests/compute_v2/delete_meta.rb
index 54ccbf6..084b2aa 100644
--- a/lib/fog/hp/requests/compute_v2/delete_meta.rb
+++ b/lib/fog/hp/requests/compute_v2/delete_meta.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Delete metadata item for specific collections
#
# ==== Parameters
@@ -21,11 +20,9 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata/#{key}"
)
end
-
end
class Mock
-
def delete_meta(collection_name, parent_id, key)
if collection_name == "images" then
if get_image_details(parent_id)
@@ -47,9 +44,7 @@ module Fog
response.status = 204
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/delete_server.rb b/lib/fog/hp/requests/compute_v2/delete_server.rb
index 9199d46..9381513 100644
--- a/lib/fog/hp/requests/compute_v2/delete_server.rb
+++ b/lib/fog/hp/requests/compute_v2/delete_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Delete an existing server
#
# ==== Parameters
@@ -15,14 +14,12 @@ module Fog
:path => "servers/#{server_id}"
)
end
-
end
class Mock
-
def delete_server(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
if server['status'] == 'BUILD'
response.status = 409
raise(Excon::Errors.status_error({:expects => 202}, response))
@@ -36,7 +33,6 @@ module Fog
raise Fog::Compute::HPV2::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/detach_volume.rb b/lib/fog/hp/requests/compute_v2/detach_volume.rb
index 27612d0..db7bb68 100644
--- a/lib/fog/hp/requests/compute_v2/detach_volume.rb
+++ b/lib/fog/hp/requests/compute_v2/detach_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Detach a block storage volume from an existing server
#
# ==== Parameters
@@ -20,11 +19,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def detach_volume(server_id, volume_id)
response = Excon::Response.new
if server = self.data[:servers][server_id]
@@ -40,7 +37,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/disassociate_address.rb b/lib/fog/hp/requests/compute_v2/disassociate_address.rb
index a1a5f45..c74977e 100644
--- a/lib/fog/hp/requests/compute_v2/disassociate_address.rb
+++ b/lib/fog/hp/requests/compute_v2/disassociate_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Disassociate a floating IP address with an existing server
#
# ==== Parameters
@@ -13,11 +12,9 @@ module Fog
body = { 'removeFloatingIp' => { 'server' => server_id, 'address' => ip_address }}
server_action(server_id, body)
end
-
end
class Mock
-
def disassociate_address(server_id, ip_address)
response = Excon::Response.new
if server = self.data[:servers][server_id]
@@ -32,7 +29,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/get_address.rb b/lib/fog/hp/requests/compute_v2/get_address.rb
index 104b2e4..5eb35a0 100644
--- a/lib/fog/hp/requests/compute_v2/get_address.rb
+++ b/lib/fog/hp/requests/compute_v2/get_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Get details about an existing floating IP address
#
# Note: This method will proxy the call to the Network (Quantum) service,
@@ -26,11 +25,9 @@ module Fog
:path => "os-floating-ips/#{address_id}"
)
end
-
end
class Mock
-
def get_address(address_id)
response = Excon::Response.new
if address = self.data[:addresses][address_id]
@@ -41,7 +38,6 @@ module Fog
raise Fog::Compute::HPV2::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/get_console_output.rb b/lib/fog/hp/requests/compute_v2/get_console_output.rb
index 2c08539..d4b85c2 100644
--- a/lib/fog/hp/requests/compute_v2/get_console_output.rb
+++ b/lib/fog/hp/requests/compute_v2/get_console_output.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Retrieve console output for specified instance
#
# ==== Parameters
@@ -17,15 +16,13 @@ module Fog
body = { 'os-getConsoleOutput' => { 'length' => num_lines }}
server_action(server_id, body, 200)
end
-
end
class Mock
-
def get_console_output(server_id, num_lines)
output = ""
response = Excon::Response.new
- if list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
(1..num_lines).each {|i| output += "Console Output Line #{i} \r\n"}
response.body = { 'output' => output }
response.status = 200
@@ -34,7 +31,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/get_flavor_details.rb b/lib/fog/hp/requests/compute_v2/get_flavor_details.rb
index 551f71e..f2b292c 100644
--- a/lib/fog/hp/requests/compute_v2/get_flavor_details.rb
+++ b/lib/fog/hp/requests/compute_v2/get_flavor_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Get details for flavor by id
#
# ==== Parameters
@@ -25,11 +24,9 @@ module Fog
:path => "flavors/#{flavor_id}"
)
end
-
end
class Mock
-
def get_flavor_details(flavor_id)
response = Excon::Response.new
flavor = {
@@ -50,7 +47,6 @@ module Fog
raise Fog::Compute::HPV2::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/get_image_details.rb b/lib/fog/hp/requests/compute_v2/get_image_details.rb
index 7bf26fb..fd93f2b 100644
--- a/lib/fog/hp/requests/compute_v2/get_image_details.rb
+++ b/lib/fog/hp/requests/compute_v2/get_image_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Get details for image by id
#
# ==== Parameters
@@ -32,14 +31,12 @@ module Fog
:path => "images/#{image_id}"
)
end
-
end
class Mock
-
def get_image_details(image_id)
response = Excon::Response.new
- if image = list_images_detail.body['images'].detect {|_| _['id'] == image_id}
+ if image = list_images_detail.body['images'].find {|_| _['id'] == image_id}
response.status = [200, 203][rand(1)]
response.body = { 'image' => image }
response
@@ -47,9 +44,7 @@ module Fog
raise Fog::Compute::HPV2::NotFound
end
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/get_key_pair.rb b/lib/fog/hp/requests/compute_v2/get_key_pair.rb
index f5b3a5d..1da0408 100644
--- a/lib/fog/hp/requests/compute_v2/get_key_pair.rb
+++ b/lib/fog/hp/requests/compute_v2/get_key_pair.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Get details about a key pair
#
# ==== Parameters
@@ -22,11 +21,9 @@ module Fog
:path => "os-keypairs/#{key_name}"
)
end
-
end
class Mock
-
def get_key_pair(key_name)
response = Excon::Response.new
if key_pair = self.data[:key_pairs][key_name]
@@ -37,7 +34,6 @@ module Fog
raise Fog::Compute::HPV2::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/get_meta.rb b/lib/fog/hp/requests/compute_v2/get_meta.rb
index feefa0d..fb39081 100644
--- a/lib/fog/hp/requests/compute_v2/get_meta.rb
+++ b/lib/fog/hp/requests/compute_v2/get_meta.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Get metadata item for specific collections
#
# ==== Parameters
@@ -22,11 +21,9 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata/#{key}"
)
end
-
end
class Mock
-
def get_meta(collection_name, parent_id, key)
if collection_name == "images" then
if get_image_details(parent_id)
@@ -49,9 +46,7 @@ module Fog
response.body = { 'meta' => { key => midata } }
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/get_server_details.rb b/lib/fog/hp/requests/compute_v2/get_server_details.rb
index f7ba1de..ae05f76 100644
--- a/lib/fog/hp/requests/compute_v2/get_server_details.rb
+++ b/lib/fog/hp/requests/compute_v2/get_server_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Get details about a server
#
# ==== Parameters
@@ -50,14 +49,12 @@ module Fog
:path => "servers/#{server_id}"
)
end
-
end
class Mock
-
def get_server_details(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.status = 200
response.body = { 'server' => server }
response
@@ -65,7 +62,6 @@ module Fog
raise Fog::Compute::HPV2::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/get_server_volume_details.rb b/lib/fog/hp/requests/compute_v2/get_server_volume_details.rb
index 41ce083..5c7b860 100644
--- a/lib/fog/hp/requests/compute_v2/get_server_volume_details.rb
+++ b/lib/fog/hp/requests/compute_v2/get_server_volume_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Get a block storage volume attachments for an existing server
#
# ==== Parameters
@@ -20,11 +19,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def get_server_volume_details(server_id, volume_id)
response = Excon::Response.new
if server = self.data[:servers][server_id]
@@ -40,7 +37,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/get_vnc_console.rb b/lib/fog/hp/requests/compute_v2/get_vnc_console.rb
index e177819..2131eff 100644
--- a/lib/fog/hp/requests/compute_v2/get_vnc_console.rb
+++ b/lib/fog/hp/requests/compute_v2/get_vnc_console.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Retrieve VNC console for the specified instance
#
# ==== Parameters
@@ -19,18 +18,16 @@ module Fog
body = { 'os-getVNCConsole' => { 'type' => type }}
server_action(server_id, body, 200)
end
-
end
class Mock
-
def get_vnc_console(server_id, type='novnc')
output = {
'type' => type,
'url' => 'https://region.compute.hpcloud.com/vnc_auto.html?token=123ABX234'
}
response = Excon::Response.new
- if list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.body = { 'console' => output }
response.status = 200
else
@@ -38,7 +35,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/get_windows_password.rb b/lib/fog/hp/requests/compute_v2/get_windows_password.rb
index 956eb9d..b3eb66a 100644
--- a/lib/fog/hp/requests/compute_v2/get_windows_password.rb
+++ b/lib/fog/hp/requests/compute_v2/get_windows_password.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Retrieves the encrypted administrator password for a server running Windows.
#
# ==== Parameters
@@ -17,11 +16,9 @@ module Fog
# decrypt the log output to extract the encrypted, base64-encoded password
encrypted_password = extract_password_from_log(log_output)
end
-
end
class Mock
-
def get_windows_password(server_id)
# need to mock out the private key as well
private_key = OpenSSL::PKey::RSA.generate(1024)
@@ -29,7 +26,7 @@ module Fog
### The original password is Passw0rd
encoded_password = encrypt_using_public_key("Passw0rd", public_key)
- if list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
# mock output for this call get_console_output(server_id, 400).body['output']
log_output = "start junk [cloud-init] Encrypt random password\n-----BEGIN BASE64-ENCODED ENCRYPTED PASSWORD-----\n#{encoded_password}-----END BASE64-ENCODED ENCRYPTED PASSWORD-----\nend junk [cloud-init] Done\n"
encrypted_password = extract_password_from_log(log_output)
diff --git a/lib/fog/hp/requests/compute_v2/list_addresses.rb b/lib/fog/hp/requests/compute_v2/list_addresses.rb
index 0a3fa62..4d80215 100644
--- a/lib/fog/hp/requests/compute_v2/list_addresses.rb
+++ b/lib/fog/hp/requests/compute_v2/list_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# List all Floating IP addresses
#
# Note: This method will proxy the call to the Network (Quantum) service,
@@ -23,11 +22,9 @@ module Fog
:path => 'os-floating-ips'
)
end
-
end
class Mock
-
def list_addresses
response = Excon::Response.new
addresses = []
@@ -37,7 +34,6 @@ module Fog
response.body = { 'floating_ips' => addresses }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/list_availability_zones.rb b/lib/fog/hp/requests/compute_v2/list_availability_zones.rb
index f0133b4..239709c 100644
--- a/lib/fog/hp/requests/compute_v2/list_availability_zones.rb
+++ b/lib/fog/hp/requests/compute_v2/list_availability_zones.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# List all availability zones
#
# ==== Returns
@@ -20,11 +19,9 @@ module Fog
:path => 'os-availability-zone'
)
end
-
end
class Mock
-
def list_availability_zones
response = Excon::Response.new
response.status = 200
@@ -40,7 +37,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/list_flavors.rb b/lib/fog/hp/requests/compute_v2/list_flavors.rb
index b010c65..9afc32d 100644
--- a/lib/fog/hp/requests/compute_v2/list_flavors.rb
+++ b/lib/fog/hp/requests/compute_v2/list_flavors.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# List all flavors (IDs and names only)
#
# ==== Parameters
@@ -26,11 +25,9 @@ module Fog
:query => options
)
end
-
end
class Mock
-
def list_flavors
response = Excon::Response.new
response.status = 200
@@ -46,7 +43,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/list_flavors_detail.rb b/lib/fog/hp/requests/compute_v2/list_flavors_detail.rb
index f1a7637..b8b0307 100644
--- a/lib/fog/hp/requests/compute_v2/list_flavors_detail.rb
+++ b/lib/fog/hp/requests/compute_v2/list_flavors_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# List all flavors
#
# ==== Parameters
@@ -26,11 +25,9 @@ module Fog
:query => options
)
end
-
end
class Mock
-
def list_flavors_detail(options = {})
response = Excon::Response.new
response.status = 200
@@ -46,7 +43,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/list_images.rb b/lib/fog/hp/requests/compute_v2/list_images.rb
index 2dd93f3..c1d1cd5 100644
--- a/lib/fog/hp/requests/compute_v2/list_images.rb
+++ b/lib/fog/hp/requests/compute_v2/list_images.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# List all images (IDs and names only)
#
# ==== Parameters
@@ -29,11 +28,9 @@ module Fog
:query => options
)
end
-
end
class Mock
-
def list_images(options = {})
response = Excon::Response.new
data = list_images_detail.body['images']
@@ -45,7 +42,6 @@ module Fog
response.body = { 'images' => images }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/list_images_detail.rb b/lib/fog/hp/requests/compute_v2/list_images_detail.rb
index 168f6b4..cf6e768 100644
--- a/lib/fog/hp/requests/compute_v2/list_images_detail.rb
+++ b/lib/fog/hp/requests/compute_v2/list_images_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# List all images
#
# ==== Parameters
@@ -39,11 +38,9 @@ module Fog
:query => options
)
end
-
end
class Mock
-
def list_images_detail(options = {})
response = Excon::Response.new
@@ -59,7 +56,6 @@ module Fog
response.body = { 'images' => images }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/list_key_pairs.rb b/lib/fog/hp/requests/compute_v2/list_key_pairs.rb
index 2e710d6..849d162 100644
--- a/lib/fog/hp/requests/compute_v2/list_key_pairs.rb
+++ b/lib/fog/hp/requests/compute_v2/list_key_pairs.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# List all key pairs
#
# ==== Returns
@@ -20,11 +19,9 @@ module Fog
:path => 'os-keypairs'
)
end
-
end
class Mock
-
def list_key_pairs
response = Excon::Response.new
@@ -35,7 +32,6 @@ module Fog
response.body = { 'keypairs' => key_pairs }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/list_limits.rb b/lib/fog/hp/requests/compute_v2/list_limits.rb
index d214ab2..464fae3 100644
--- a/lib/fog/hp/requests/compute_v2/list_limits.rb
+++ b/lib/fog/hp/requests/compute_v2/list_limits.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# List the limits on resources on a per tenant basis (absolute and rate limits)
#
# ==== Returns
@@ -42,11 +41,9 @@ module Fog
:path => 'limits'
)
end
-
end
class Mock
-
def list_limits
response = Excon::Response.new
limits = self.data[:limits].values
@@ -55,7 +52,6 @@ module Fog
response.body = { 'limits' => limits }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/list_metadata.rb b/lib/fog/hp/requests/compute_v2/list_metadata.rb
index 1dbe464..5883209 100644
--- a/lib/fog/hp/requests/compute_v2/list_metadata.rb
+++ b/lib/fog/hp/requests/compute_v2/list_metadata.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# List metadata for specific collections
#
# ==== Parameters
@@ -21,11 +20,9 @@ module Fog
:path => "/#{collection_name}/#{parent_id}/metadata"
)
end
-
end
class Mock
-
def list_metadata(collection_name, parent_id)
mdata = {}
if collection_name == "images" then
@@ -49,7 +46,6 @@ module Fog
response.body = {'metadata' => mdata}
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/list_server_addresses.rb b/lib/fog/hp/requests/compute_v2/list_server_addresses.rb
index 9e7bd76..8a91246 100644
--- a/lib/fog/hp/requests/compute_v2/list_server_addresses.rb
+++ b/lib/fog/hp/requests/compute_v2/list_server_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# List all server addresses
#
# ==== Parameters
@@ -20,14 +19,12 @@ module Fog
:path => "servers/#{server_id}/ips"
)
end
-
end
class Mock
-
def list_server_addresses(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.status = 200
response.body = { 'addresses' => server['addresses'] }
response
@@ -35,7 +32,6 @@ module Fog
raise Fog::Compute::HPV2::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/list_server_addresses_by_network.rb b/lib/fog/hp/requests/compute_v2/list_server_addresses_by_network.rb
index b02fdaf..fb7be61 100644
--- a/lib/fog/hp/requests/compute_v2/list_server_addresses_by_network.rb
+++ b/lib/fog/hp/requests/compute_v2/list_server_addresses_by_network.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# List private server addresses
#
# ==== Parameters
@@ -22,14 +21,12 @@ module Fog
:path => "servers/#{server_id}/ips/#{Fog::HP.escape(network_name)}"
)
end
-
end
class Mock
-
def list_server_addresses_by_network(server_id, network_name)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.status = 200
# get the addresses for the network, which is 'custom' in case of mocks
address = server['addresses'].select { |key, _| key == network_name}
@@ -39,7 +36,6 @@ module Fog
raise Fog::Compute::HPV2::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/list_server_volumes.rb b/lib/fog/hp/requests/compute_v2/list_server_volumes.rb
index 7ea7c59..90e556a 100644
--- a/lib/fog/hp/requests/compute_v2/list_server_volumes.rb
+++ b/lib/fog/hp/requests/compute_v2/list_server_volumes.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# List all volumes attached to a server
#
# ==== Parameters
@@ -25,11 +24,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def list_server_volumes(server_id)
response = Excon::Response.new
volumes = []
@@ -42,7 +39,6 @@ module Fog
raise Fog::Compute::HPV2::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/list_servers.rb b/lib/fog/hp/requests/compute_v2/list_servers.rb
index 889faf5..bfec09b 100644
--- a/lib/fog/hp/requests/compute_v2/list_servers.rb
+++ b/lib/fog/hp/requests/compute_v2/list_servers.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# List all servers (IDs and names only)
#
# ==== Parameters
@@ -30,11 +29,9 @@ module Fog
:query => options
)
end
-
end
class Mock
-
def list_servers(options = {})
response = Excon::Response.new
data = list_servers_detail.body['servers']
@@ -46,7 +43,6 @@ module Fog
response.body = { 'servers' => servers }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/list_servers_detail.rb b/lib/fog/hp/requests/compute_v2/list_servers_detail.rb
index f56b099..1e6b311 100644
--- a/lib/fog/hp/requests/compute_v2/list_servers_detail.rb
+++ b/lib/fog/hp/requests/compute_v2/list_servers_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# List all servers details
#
# ==== Parameters
@@ -51,11 +50,9 @@ module Fog
:query => options
)
end
-
end
class Mock
-
def list_servers_detail(options = {})
response = Excon::Response.new
@@ -73,7 +70,6 @@ module Fog
response.body = { 'servers' => servers }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/reboot_server.rb b/lib/fog/hp/requests/compute_v2/reboot_server.rb
index c518d0d..375139b 100644
--- a/lib/fog/hp/requests/compute_v2/reboot_server.rb
+++ b/lib/fog/hp/requests/compute_v2/reboot_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Reboot an existing server
#
# ==== Parameters
@@ -12,14 +11,12 @@ module Fog
body = { 'reboot' => { 'type' => type }}
server_action(server_id, body)
end
-
end
class Mock
-
def reboot_server(server_id, type = 'SOFT')
response = Excon::Response.new
- if list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
self.data[:servers][server_id]['status'] = (type == 'SOFT') ? 'REBOOT' : 'HARD_REBOOT'
response.status = 202
response
@@ -27,7 +24,6 @@ module Fog
raise Fog::Compute::HPV2::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/rebuild_server.rb b/lib/fog/hp/requests/compute_v2/rebuild_server.rb
index 3c21e4b..0403d7b 100644
--- a/lib/fog/hp/requests/compute_v2/rebuild_server.rb
+++ b/lib/fog/hp/requests/compute_v2/rebuild_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Rebuild an existing server
#
# ==== Parameters
@@ -19,7 +18,6 @@ module Fog
# * 'contents'<~String> - Contents of file (10kb total of contents)
# * 'path'<~String> - Path to file (255 bytes total of path strings)
def rebuild_server(server_id, image_id, name, options={})
-
body = { 'rebuild' => {
'imageRef' => image_id,
'name' => name
@@ -39,13 +37,11 @@ module Fog
end
server_action(server_id, body, 202)
end
-
end
class Mock
-
def rebuild_server(server_id, image_id, name, options={})
- if image = list_images_detail.body['images'].detect {|_| _['id'] == image_id}
+ if image = list_images_detail.body['images'].find {|_| _['id'] == image_id}
if response = get_server_details(server_id)
response.body['server']['name'] = name
response.body['server']['image']['id'] = image_id
@@ -75,7 +71,6 @@ module Fog
raise Fog::Compute::HPV2::NotFound.new("Image with image_id #{image_id} not found.")
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/release_address.rb b/lib/fog/hp/requests/compute_v2/release_address.rb
index e379d9f..06e63f8 100644
--- a/lib/fog/hp/requests/compute_v2/release_address.rb
+++ b/lib/fog/hp/requests/compute_v2/release_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Release an existing floating IP address
#
# ==== Parameters
@@ -15,11 +14,9 @@ module Fog
:path => "os-floating-ips/#{address_id}"
)
end
-
end
class Mock
-
def release_address(address_id)
response = Excon::Response.new
if self.data[:addresses][address_id]
@@ -31,7 +28,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/remove_security_group.rb b/lib/fog/hp/requests/compute_v2/remove_security_group.rb
index 5275c37..0c5c409 100644
--- a/lib/fog/hp/requests/compute_v2/remove_security_group.rb
+++ b/lib/fog/hp/requests/compute_v2/remove_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Remove an existing security group from an existing server
#
# ==== Parameters
@@ -13,11 +12,9 @@ module Fog
body = { 'removeSecurityGroup' => { 'name' => sg_name }}
server_action(server_id, body)
end
-
end
class Mock
-
def remove_security_group(server_id, sg_name)
response = Excon::Response.new
if server = self.data[:servers][server_id]
@@ -30,7 +27,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/server_action.rb b/lib/fog/hp/requests/compute_v2/server_action.rb
index 7845a23..751b3e5 100644
--- a/lib/fog/hp/requests/compute_v2/server_action.rb
+++ b/lib/fog/hp/requests/compute_v2/server_action.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Server actions for an existing server
#
# ==== Parameters
@@ -18,7 +17,6 @@ module Fog
:path => "servers/#{server_id}/action"
)
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/set_metadata.rb b/lib/fog/hp/requests/compute_v2/set_metadata.rb
index edfd5ee..0d48be7 100644
--- a/lib/fog/hp/requests/compute_v2/set_metadata.rb
+++ b/lib/fog/hp/requests/compute_v2/set_metadata.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Set metadata for specific collections
#
# ==== Parameters
@@ -23,13 +22,10 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata"
)
end
-
end
class Mock
-
def set_metadata(collection_name, parent_id, metadata = {})
-
if collection_name == "images" then
if get_image_details(parent_id)
self.data[:images][parent_id]['metadata'] = metadata
@@ -50,11 +46,8 @@ module Fog
response.body = { "metadata" => metadata }
response.status = 200
response
-
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/update_meta.rb b/lib/fog/hp/requests/compute_v2/update_meta.rb
index ecd3180..c12a666 100644
--- a/lib/fog/hp/requests/compute_v2/update_meta.rb
+++ b/lib/fog/hp/requests/compute_v2/update_meta.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Set or update metadata item for specific collections
#
# ==== Parameters
@@ -24,13 +23,10 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata/#{key}"
)
end
-
end
class Mock
-
def update_meta(collection_name, parent_id, key, value)
-
if collection_name == "images" then
if get_image_details(parent_id)
self.data[:images][parent_id]['metadata'][key] = value
@@ -51,11 +47,8 @@ module Fog
response.body = { "meta" => { key => value } }
response.status = 200
response
-
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/update_metadata.rb b/lib/fog/hp/requests/compute_v2/update_metadata.rb
index cf4e8a3..a7461c7 100644
--- a/lib/fog/hp/requests/compute_v2/update_metadata.rb
+++ b/lib/fog/hp/requests/compute_v2/update_metadata.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Update metadata for specific collections
#
# ==== Parameters
@@ -23,13 +22,10 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata"
)
end
-
end
class Mock
-
def update_metadata(collection_name, parent_id, metadata = {})
-
if collection_name == "images" then
if get_image_details(parent_id)
newmetadata = self.data[:images][parent_id]['metadata'].merge!(metadata)
@@ -50,11 +46,8 @@ module Fog
response.body = { "metadata" => newmetadata }
response.status = 200
response
-
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/compute_v2/update_server.rb b/lib/fog/hp/requests/compute_v2/update_server.rb
index ee99426..8cb62b2 100644
--- a/lib/fog/hp/requests/compute_v2/update_server.rb
+++ b/lib/fog/hp/requests/compute_v2/update_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class HPV2
class Real
-
# Update an existing server
#
# ==== Parameters
@@ -46,14 +45,12 @@ module Fog
:path => "servers/#{server_id}"
)
end
-
end
class Mock
-
def update_server(server_id, options)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
if options['name']
server['name'] = options['name']
end
@@ -66,7 +63,6 @@ module Fog
raise Fog::Compute::HPV2::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/dns/create_domain.rb b/lib/fog/hp/requests/dns/create_domain.rb
index a0d2488..94212c5 100644
--- a/lib/fog/hp/requests/dns/create_domain.rb
+++ b/lib/fog/hp/requests/dns/create_domain.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class DNS
-
# Create a new DNS domain
#
# ==== Parameters
diff --git a/lib/fog/hp/requests/dns/create_record.rb b/lib/fog/hp/requests/dns/create_record.rb
index 614a974..1679b37 100644
--- a/lib/fog/hp/requests/dns/create_record.rb
+++ b/lib/fog/hp/requests/dns/create_record.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class DNS
class Real
-
# Create a new DNS record
#
# ==== Parameters
@@ -45,13 +44,12 @@ module Fog
:method => 'POST',
:path => "domains/#{domain_id}/records"
)
-
end
end
class Mock
def create_record(domain_id, name, type, data, options={})
response = Excon::Response.new
- if list_domains.body['domains'].detect {|_| _['id'] == domain_id}
+ if list_domains.body['domains'].find {|_| _['id'] == domain_id}
response.status = 200
data = {
'id' => Fog::HP::Mock.uuid.to_s,
@@ -76,4 +74,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/hp/requests/dns/delete_domain.rb b/lib/fog/hp/requests/dns/delete_domain.rb
index 81acd27..bcd4fc9 100644
--- a/lib/fog/hp/requests/dns/delete_domain.rb
+++ b/lib/fog/hp/requests/dns/delete_domain.rb
@@ -1,9 +1,7 @@
module Fog
module HP
class DNS
-
class Real
-
# Delete a DNS domain
#
# ==== Parameters
@@ -16,22 +14,19 @@ module Fog
:path => "domains/#{domain_id}"
)
end
-
end
class Mock
def delete_domain(domain_id)
response = Excon::Response.new
- if list_domains.body['domains'].detect { |_| _['id'] == domain_id }
+ if list_domains.body['domains'].find { |_| _['id'] == domain_id }
response.status = 202
response
else
raise Fog::HP::DNS::NotFound
end
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/dns/delete_record.rb b/lib/fog/hp/requests/dns/delete_record.rb
index ff868af..bab757d 100644
--- a/lib/fog/hp/requests/dns/delete_record.rb
+++ b/lib/fog/hp/requests/dns/delete_record.rb
@@ -20,7 +20,7 @@ module Fog
class Mock
def delete_record(domain_id, record_id)
response = Excon::Response.new
- if list_records_in_a_domain(domain_id).body['records'].detect { |_| _['id'] == record_id }
+ if list_records_in_a_domain(domain_id).body['records'].find { |_| _['id'] == record_id }
response.status = 200
response
else
@@ -28,9 +28,7 @@ module Fog
end
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/dns/get_domain.rb b/lib/fog/hp/requests/dns/get_domain.rb
index 80ed188..534b805 100644
--- a/lib/fog/hp/requests/dns/get_domain.rb
+++ b/lib/fog/hp/requests/dns/get_domain.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class DNS
-
# Get details for existing DNS domain
#
# ==== Parameters
@@ -26,10 +25,9 @@ module Fog
end
end
class Mock
-
def get_domain(domain_id)
response = Excon::Response.new
- if domain = list_domains.body['domains'].detect { |_| _['id'] == domain_id }
+ if domain = list_domains.body['domains'].find { |_| _['id'] == domain_id }
response.status = 200
response.body = domain
response
diff --git a/lib/fog/hp/requests/dns/get_record.rb b/lib/fog/hp/requests/dns/get_record.rb
index ecef4ae..6accd2d 100644
--- a/lib/fog/hp/requests/dns/get_record.rb
+++ b/lib/fog/hp/requests/dns/get_record.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class DNS
class Real
-
# Get details of an existing DNS record
#
# ==== Parameters
@@ -33,7 +32,7 @@ module Fog
class Mock
def get_record(domain_id, record_id)
response = Excon::Response.new
- if record = list_records_in_a_domain(domain_id).body['records'].detect { |_| _['id'] == record_id }
+ if record = list_records_in_a_domain(domain_id).body['records'].find { |_| _['id'] == record_id }
response.status = 200
response.body = record
response
diff --git a/lib/fog/hp/requests/dns/get_servers_hosting_domain.rb b/lib/fog/hp/requests/dns/get_servers_hosting_domain.rb
index 0ef6b33..4e0a1b7 100644
--- a/lib/fog/hp/requests/dns/get_servers_hosting_domain.rb
+++ b/lib/fog/hp/requests/dns/get_servers_hosting_domain.rb
@@ -24,14 +24,12 @@ module Fog
:path => "domains/#{domain_id}/servers"
)
end
-
end
class Mock
-
def get_servers_hosting_domain(domain_id)
response = Excon::Response.new
- if list_domains.body['domains'].detect { |_| _['id'] == domain_id }
+ if list_domains.body['domains'].find { |_| _['id'] == domain_id }
response.status = 200
response.body = { 'servers' => dummy_servers }
response
diff --git a/lib/fog/hp/requests/dns/list_domains.rb b/lib/fog/hp/requests/dns/list_domains.rb
index 2dff79a..60c7bf2 100644
--- a/lib/fog/hp/requests/dns/list_domains.rb
+++ b/lib/fog/hp/requests/dns/list_domains.rb
@@ -20,7 +20,6 @@ module Fog
:path => 'domains'
)
end
-
end
class Mock
@@ -31,7 +30,6 @@ module Fog
response.body = { 'domains' => domains }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/dns/list_records_in_a_domain.rb b/lib/fog/hp/requests/dns/list_records_in_a_domain.rb
index 35bb783..50831e8 100644
--- a/lib/fog/hp/requests/dns/list_records_in_a_domain.rb
+++ b/lib/fog/hp/requests/dns/list_records_in_a_domain.rb
@@ -28,12 +28,11 @@ module Fog
:path => "domains/#{domain_id}/records"
)
end
-
end
class Mock
def list_records_in_a_domain(domain_id)
response = Excon::Response.new
- if domain = list_domains.body['domains'].detect { |_| _['id'] == domain_id }
+ if domain = list_domains.body['domains'].find { |_| _['id'] == domain_id }
response.status = 200
response.body = { 'records' => records_for_domain(domain_id) }
else
@@ -49,7 +48,6 @@ module Fog
records
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/dns/update_domain.rb b/lib/fog/hp/requests/dns/update_domain.rb
index 0873522..5fe1811 100644
--- a/lib/fog/hp/requests/dns/update_domain.rb
+++ b/lib/fog/hp/requests/dns/update_domain.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class DNS
-
class Real
# Update an existing DNS domain
#
@@ -42,7 +41,7 @@ module Fog
class Mock
def update_domain(domain_id, options={})
response = Excon::Response.new
- if domain = list_domains.body['domains'].detect { |_| _['id'] == domain_id }
+ if domain = list_domains.body['domains'].find { |_| _['id'] == domain_id }
domain['name'] = options[:name] if options[:name]
domain['description'] = options[:description] if options[:description]
diff --git a/lib/fog/hp/requests/dns/update_record.rb b/lib/fog/hp/requests/dns/update_record.rb
index 9b60886..265c6c0 100644
--- a/lib/fog/hp/requests/dns/update_record.rb
+++ b/lib/fog/hp/requests/dns/update_record.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class DNS
-
class Real
# Update an existing DNS record
#
@@ -43,13 +42,12 @@ module Fog
:path => "domains/#{domain_id}/records/#{record_id}"
)
end
-
end
class Mock
def update_record(domain_id, record_id, options)
response = Excon::Response.new
- if record = list_records_in_a_domain(domain_id).body['records'].detect { |_| _['id'] == record_id }
+ if record = list_records_in_a_domain(domain_id).body['records'].find { |_| _['id'] == record_id }
record['name'] = options[:name] if options[:name]
record['type'] = options[:type] if options[:type]
record['data'] = options[:data] if options[:data]
@@ -62,9 +60,7 @@ module Fog
raise Fog::HP::DNS::NotFound
end
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/lb/create_load_balancer.rb b/lib/fog/hp/requests/lb/create_load_balancer.rb
index 1743a44..d03e523 100644
--- a/lib/fog/hp/requests/lb/create_load_balancer.rb
+++ b/lib/fog/hp/requests/lb/create_load_balancer.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class LB
-
# Create a new load balancer
#
# ==== Parameters
diff --git a/lib/fog/hp/requests/lb/create_load_balancer_node.rb b/lib/fog/hp/requests/lb/create_load_balancer_node.rb
index 316c4c7..5b787be 100644
--- a/lib/fog/hp/requests/lb/create_load_balancer_node.rb
+++ b/lib/fog/hp/requests/lb/create_load_balancer_node.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class LB
-
# Create a new load balancer node
#
# ==== Parameters
@@ -40,7 +39,6 @@ module Fog
:method => 'POST',
:path => "loadbalancers/#{load_balancer_id}/nodes"
)
-
end
end
class Mock
@@ -63,10 +61,8 @@ module Fog
else
raise Fog::HP::LB::NotFound
end
-
end
end
end
-
end
end
diff --git a/lib/fog/hp/requests/lb/delete_load_balancer.rb b/lib/fog/hp/requests/lb/delete_load_balancer.rb
index 1b62f53..e6c1b56 100644
--- a/lib/fog/hp/requests/lb/delete_load_balancer.rb
+++ b/lib/fog/hp/requests/lb/delete_load_balancer.rb
@@ -1,14 +1,12 @@
module Fog
module HP
class LB
-
# Delete an existing load balancer
#
# ==== Parameters
# * 'load_balancer_id'<~String> - UUId of load balancer to delete
#
class Real
-
def delete_load_balancer(load_balancer_id)
request(
:expects => 202,
@@ -16,20 +14,18 @@ module Fog
:path => "loadbalancers/#{load_balancer_id}"
)
end
-
end
class Mock
def delete_load_balancer(load_balancer_id)
response = Excon::Response.new
- if list_load_balancers.body['loadBalancers'].detect { |_| _['id'] == load_balancer_id }
+ if list_load_balancers.body['loadBalancers'].find { |_| _['id'] == load_balancer_id }
response.status = 202
response
else
raise Fog::HP::LB::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/lb/delete_load_balancer_node.rb b/lib/fog/hp/requests/lb/delete_load_balancer_node.rb
index fd7d6d3..e518c9e 100644
--- a/lib/fog/hp/requests/lb/delete_load_balancer_node.rb
+++ b/lib/fog/hp/requests/lb/delete_load_balancer_node.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class LB
-
# Delete an existing load balancer node
#
# ==== Parameters
@@ -9,7 +8,6 @@ module Fog
# * 'node_id'<~String> - UUId of node to delete
#
class Real
-
def delete_load_balancer_node(load_balancer_id, node_id)
request(
:expects => 202,
@@ -17,10 +15,8 @@ module Fog
:path => "loadbalancers/#{load_balancer_id}/nodes/#{node_id}"
)
end
-
end
class Mock
-
def delete_load_balancer_node(load_balancer_id, node_id)
response = Excon::Response.new
if get_load_balancer(load_balancer_id)
diff --git a/lib/fog/hp/requests/lb/get_load_balancer.rb b/lib/fog/hp/requests/lb/get_load_balancer.rb
index 508615b..493eb6c 100644
--- a/lib/fog/hp/requests/lb/get_load_balancer.rb
+++ b/lib/fog/hp/requests/lb/get_load_balancer.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class LB
-
# Get details for an existing load balancer
#
# ==== Parameters
@@ -40,12 +39,11 @@ module Fog
:path => "loadbalancers/#{load_balancer_id}"
)
end
-
end
class Mock
def get_load_balancer(load_balancer_id)
response = Excon::Response.new
- if lb = list_load_balancers.body['loadBalancers'].detect { |_| _['id'] == load_balancer_id }
+ if lb = list_load_balancers.body['loadBalancers'].find { |_| _['id'] == load_balancer_id }
response.status = 200
response.body = lb
response
@@ -53,7 +51,6 @@ module Fog
raise Fog::HP::LB::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/lb/get_load_balancer_node.rb b/lib/fog/hp/requests/lb/get_load_balancer_node.rb
index 7ed11bb..ee91821 100644
--- a/lib/fog/hp/requests/lb/get_load_balancer_node.rb
+++ b/lib/fog/hp/requests/lb/get_load_balancer_node.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class LB
class Real
-
# Get details for an existing load balancer node
#
# ==== Parameters
@@ -40,14 +39,12 @@ module Fog
else
raise Fog::HP::LB::NotFound
end
-
end
def find_node(load_balancer_id, node_id)
nodes = list_load_balancer_nodes(load_balancer_id).body['nodes']
- nodes.detect {|n| n['id'] == node_id}
+ nodes.find {|n| n['id'] == node_id}
end
-
end
end
end
diff --git a/lib/fog/hp/requests/lb/list_algorithms.rb b/lib/fog/hp/requests/lb/list_algorithms.rb
index 8842b5f..e10e673 100644
--- a/lib/fog/hp/requests/lb/list_algorithms.rb
+++ b/lib/fog/hp/requests/lb/list_algorithms.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class LB
-
# List algorithms
#
# ==== Returns
diff --git a/lib/fog/hp/requests/lb/list_limits.rb b/lib/fog/hp/requests/lb/list_limits.rb
index ea3476b..58cce9e 100644
--- a/lib/fog/hp/requests/lb/list_limits.rb
+++ b/lib/fog/hp/requests/lb/list_limits.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class LB
-
# List limits
#
# ==== Returns
@@ -15,7 +14,6 @@ module Fog
# * 'maxVIPsPerLoadBalancer'<~Integer> - Limit of the virtual IPs per load balancer
# * 'maxNodesPerLoadBalancer'<~Integer> - Limit of the nodes per load balancer
class Real
-
def list_limits
request(
:expects => 200,
@@ -23,7 +21,6 @@ module Fog
:path => 'limits'
)
end
-
end
class Mock
def list_limits
@@ -33,7 +30,6 @@ module Fog
response.body = { 'limits' => limits }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/lb/list_load_balancer_nodes.rb b/lib/fog/hp/requests/lb/list_load_balancer_nodes.rb
index de68ee5..97d62c7 100644
--- a/lib/fog/hp/requests/lb/list_load_balancer_nodes.rb
+++ b/lib/fog/hp/requests/lb/list_load_balancer_nodes.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class LB
-
# List all load balancer nodes
#
# ==== Returns
@@ -34,7 +33,6 @@ module Fog
raise Fog::HP::LB::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/lb/list_load_balancer_virtual_ips.rb b/lib/fog/hp/requests/lb/list_load_balancer_virtual_ips.rb
index 9d2f18d..5dbcca1 100644
--- a/lib/fog/hp/requests/lb/list_load_balancer_virtual_ips.rb
+++ b/lib/fog/hp/requests/lb/list_load_balancer_virtual_ips.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class LB
-
# List virtual IPs for an existing load balancer
#
# ==== Parameters
@@ -23,7 +22,6 @@ module Fog
:path => "loadbalancers/#{load_balancer_id}/virtualips"
)
end
-
end
class Mock
def list_load_balancer_virtual_ips(load_balancer_id)
@@ -37,7 +35,6 @@ module Fog
raise Fog::HP::LB::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/lb/list_load_balancers.rb b/lib/fog/hp/requests/lb/list_load_balancers.rb
index 534dd64..fa17369 100644
--- a/lib/fog/hp/requests/lb/list_load_balancers.rb
+++ b/lib/fog/hp/requests/lb/list_load_balancers.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class LB
-
# List all load balancers
#
# ==== Returns
@@ -25,7 +24,6 @@ module Fog
:path => 'loadbalancers'
)
end
-
end
class Mock
def list_load_balancers
diff --git a/lib/fog/hp/requests/lb/list_protocols.rb b/lib/fog/hp/requests/lb/list_protocols.rb
index e083079..5ad76db 100644
--- a/lib/fog/hp/requests/lb/list_protocols.rb
+++ b/lib/fog/hp/requests/lb/list_protocols.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class LB
-
# List protocols
#
# ==== Returns
diff --git a/lib/fog/hp/requests/lb/list_versions.rb b/lib/fog/hp/requests/lb/list_versions.rb
index dd262b0..989cf58 100644
--- a/lib/fog/hp/requests/lb/list_versions.rb
+++ b/lib/fog/hp/requests/lb/list_versions.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class LB
class Real
-
def list_versions
request(
:expects => 200,
@@ -12,7 +11,6 @@ module Fog
end
end
class Mock
-
def list_versions
response = Excon::Response.new
versions = self.data[:versions].values
@@ -20,7 +18,6 @@ module Fog
response.body = { 'versions' => versions }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/lb/update_load_balancer.rb b/lib/fog/hp/requests/lb/update_load_balancer.rb
index 0ce4786..4052ff9 100644
--- a/lib/fog/hp/requests/lb/update_load_balancer.rb
+++ b/lib/fog/hp/requests/lb/update_load_balancer.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class LB
-
# Update an existing load balancer
#
# ==== Parameters
@@ -24,12 +23,11 @@ module Fog
:path => "loadbalancers/#{load_balancer_id}"
)
end
-
end
class Mock
def update_load_balancer(load_balancer_id, options={})
response = Excon::Response.new
- if lb = list_load_balancers.body['loadBalancers'].detect { |_| _['id'] == load_balancer_id }
+ if lb = list_load_balancers.body['loadBalancers'].find { |_| _['id'] == load_balancer_id }
lb['name'] = options['name'] if options['name']
lb['algorithm'] = options['algorithm'] if options['algorithm']
diff --git a/lib/fog/hp/requests/lb/update_load_balancer_node.rb b/lib/fog/hp/requests/lb/update_load_balancer_node.rb
index 3846394..44cff33 100644
--- a/lib/fog/hp/requests/lb/update_load_balancer_node.rb
+++ b/lib/fog/hp/requests/lb/update_load_balancer_node.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class LB
-
# Update an existing load balancer node
#
# ==== Parameters
@@ -10,7 +9,6 @@ module Fog
# * options<~Hash>:
# * 'condition'<~String> - Condition for the node. Valid values are []'ENABLED', 'DISABLED']
class Real
-
def update_load_balancer_node(load_balancer_id, node_id, condition)
data = {
'condition' => condition
@@ -21,7 +19,6 @@ module Fog
:method => 'PUT',
:path => "loadbalancers/#{load_balancer_id}/nodes/#{node_id}"
)
-
end
end
class Mock
@@ -52,7 +49,6 @@ module Fog
new_nodes = nodes.reject {|n| n['id'] == node_id}
new_nodes << node
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/add_router_interface.rb b/lib/fog/hp/requests/network/add_router_interface.rb
index 99c0b86..96e2f38 100644
--- a/lib/fog/hp/requests/network/add_router_interface.rb
+++ b/lib/fog/hp/requests/network/add_router_interface.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Add an internal router interface, thus attaching a subnet or a port to an existing router
#
@@ -38,7 +37,7 @@ module Fog
class Mock
def add_router_interface(router_id, subnet_id=nil, port_id=nil, options = {})
response = Excon::Response.new
- if list_routers.body['routers'].detect {|_| _['id'] == router_id}
+ if list_routers.body['routers'].find {|_| _['id'] == router_id}
# Either a subnet or a port can be passed, not both
if (subnet_id && port_id) || (subnet_id.nil? && port_id.nil?)
raise ArgumentError.new('Either a subnet or a port can be passed, not both')
@@ -69,7 +68,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/associate_floating_ip.rb b/lib/fog/hp/requests/network/associate_floating_ip.rb
index b79b0d5..f8f8e18 100644
--- a/lib/fog/hp/requests/network/associate_floating_ip.rb
+++ b/lib/fog/hp/requests/network/associate_floating_ip.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Associate port with floating ip
#
@@ -45,7 +44,7 @@ module Fog
class Mock
def associate_floating_ip(floating_ip_id, port_id, options = {})
response = Excon::Response.new
- if list_floating_ips.body['floatingips'].detect {|_| _['id'] == floating_ip_id}
+ if list_floating_ips.body['floatingips'].find {|_| _['id'] == floating_ip_id}
response.status = 201
data = {
'id' => floating_ip_id,
@@ -65,7 +64,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/create_floating_ip.rb b/lib/fog/hp/requests/network/create_floating_ip.rb
index 5658eda..5226236 100644
--- a/lib/fog/hp/requests/network/create_floating_ip.rb
+++ b/lib/fog/hp/requests/network/create_floating_ip.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Create a new floating ip
#
@@ -63,7 +62,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/create_network.rb b/lib/fog/hp/requests/network/create_network.rb
index c864adc..cec0d43 100644
--- a/lib/fog/hp/requests/network/create_network.rb
+++ b/lib/fog/hp/requests/network/create_network.rb
@@ -1,9 +1,7 @@
module Fog
module HP
class Network
-
class Real
-
# Create a new server
#
# ==== Parameters
@@ -62,7 +60,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/create_port.rb b/lib/fog/hp/requests/network/create_port.rb
index 1a3f08d..0c3b0e7 100644
--- a/lib/fog/hp/requests/network/create_port.rb
+++ b/lib/fog/hp/requests/network/create_port.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Create a new port
#
@@ -62,7 +61,7 @@ module Fog
class Mock
def create_port(network_id, options = {})
response = Excon::Response.new
- if list_networks.body['networks'].detect {|_| _['id'] == network_id}
+ if list_networks.body['networks'].find {|_| _['id'] == network_id}
response.status = 201
data = {
'id' => Fog::HP::Mock.uuid.to_s,
@@ -86,7 +85,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/create_router.rb b/lib/fog/hp/requests/network/create_router.rb
index c4bb996..b06c725 100644
--- a/lib/fog/hp/requests/network/create_router.rb
+++ b/lib/fog/hp/requests/network/create_router.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Create a new router
#
@@ -58,7 +57,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/create_security_group.rb b/lib/fog/hp/requests/network/create_security_group.rb
index 07584e4..21b2418 100644
--- a/lib/fog/hp/requests/network/create_security_group.rb
+++ b/lib/fog/hp/requests/network/create_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class Network
class Real
-
# Create a new security group
#
# ==== Parameters
@@ -45,11 +44,9 @@ module Fog
:path => 'security-groups'
)
end
-
end
class Mock
-
def create_security_group(options = {})
# Spaces are NOT removed from name and description, as in case of compute sec groups
tenant_id = Fog::Mock.random_numbers(14).to_s
@@ -92,9 +89,7 @@ module Fog
response.body = { 'security_group' => data }
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/create_security_group_rule.rb b/lib/fog/hp/requests/network/create_security_group_rule.rb
index 51c0335..d10dedb 100644
--- a/lib/fog/hp/requests/network/create_security_group_rule.rb
+++ b/lib/fog/hp/requests/network/create_security_group_rule.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class Network
class Real
-
# Create a new security group rule
#
# ==== Parameters
@@ -51,11 +50,9 @@ module Fog
:path => 'security-group-rules'
)
end
-
end
class Mock
-
def create_security_group_rule(security_group_id, direction, options = {})
response = Excon::Response.new
data = {
@@ -75,9 +72,7 @@ module Fog
response.body = { 'security_group_rule' => data }
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/create_subnet.rb b/lib/fog/hp/requests/network/create_subnet.rb
index 76f8089..a823bc2 100644
--- a/lib/fog/hp/requests/network/create_subnet.rb
+++ b/lib/fog/hp/requests/network/create_subnet.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Create a new subnet
#
@@ -64,7 +63,7 @@ module Fog
class Mock
def create_subnet(network_id, cidr, ip_version, options = {})
- if list_networks.body['networks'].detect {|_| _['id'] == network_id}
+ if list_networks.body['networks'].find {|_| _['id'] == network_id}
response = Excon::Response.new
response.status = 201
data = {
@@ -91,7 +90,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/delete_floating_ip.rb b/lib/fog/hp/requests/network/delete_floating_ip.rb
index 3530753..427a2a9 100644
--- a/lib/fog/hp/requests/network/delete_floating_ip.rb
+++ b/lib/fog/hp/requests/network/delete_floating_ip.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Delete an existing floating ip
#
@@ -19,7 +18,7 @@ module Fog
class Mock
def delete_floating_ip(floating_ip_id)
response = Excon::Response.new
- if list_floating_ips.body['floatingips'].detect {|_| _['id'] == floating_ip_id}
+ if list_floating_ips.body['floatingips'].find {|_| _['id'] == floating_ip_id}
self.data[:floating_ips].delete(floating_ip_id)
response.status = 204
response
@@ -28,7 +27,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/delete_network.rb b/lib/fog/hp/requests/network/delete_network.rb
index 1ba2ee2..4f062af 100644
--- a/lib/fog/hp/requests/network/delete_network.rb
+++ b/lib/fog/hp/requests/network/delete_network.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Delete an existing network
#
@@ -19,7 +18,7 @@ module Fog
class Mock
def delete_network(network_id)
response = Excon::Response.new
- if list_networks.body['networks'].detect {|_| _['id'] == network_id}
+ if list_networks.body['networks'].find {|_| _['id'] == network_id}
self.data[:networks].delete(network_id)
response.status = 204
response
@@ -28,7 +27,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/delete_port.rb b/lib/fog/hp/requests/network/delete_port.rb
index 57bb69a..c2a0599 100644
--- a/lib/fog/hp/requests/network/delete_port.rb
+++ b/lib/fog/hp/requests/network/delete_port.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Delete an existing port
#
@@ -19,7 +18,7 @@ module Fog
class Mock
def delete_port(port_id)
response = Excon::Response.new
- if list_ports.body['ports'].detect {|_| _['id'] == port_id}
+ if list_ports.body['ports'].find {|_| _['id'] == port_id}
self.data[:ports].delete(port_id)
response.status = 204
response
@@ -28,7 +27,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/delete_router.rb b/lib/fog/hp/requests/network/delete_router.rb
index 96ce974..4bdff02 100644
--- a/lib/fog/hp/requests/network/delete_router.rb
+++ b/lib/fog/hp/requests/network/delete_router.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Delete an existing router
#
@@ -19,7 +18,7 @@ module Fog
class Mock
def delete_router(router_id)
response = Excon::Response.new
- if list_routers.body['routers'].detect {|_| _['id'] == router_id}
+ if list_routers.body['routers'].find {|_| _['id'] == router_id}
self.data[:routers].delete(router_id)
response.status = 204
response
@@ -28,7 +27,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/delete_security_group.rb b/lib/fog/hp/requests/network/delete_security_group.rb
index 3eadcb1..bf7c2cd 100644
--- a/lib/fog/hp/requests/network/delete_security_group.rb
+++ b/lib/fog/hp/requests/network/delete_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class Network
class Real
-
# Delete a security group
#
# ==== Parameters
@@ -14,11 +13,9 @@ module Fog
:path => "security-groups/#{security_group_id}"
)
end
-
end
class Mock
-
def delete_security_group(security_group_id)
response = Excon::Response.new
if self.data[:security_groups][security_group_id]
@@ -29,7 +26,6 @@ module Fog
raise Fog::HP::Network::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/delete_security_group_rule.rb b/lib/fog/hp/requests/network/delete_security_group_rule.rb
index c38a7a2..2865463 100644
--- a/lib/fog/hp/requests/network/delete_security_group_rule.rb
+++ b/lib/fog/hp/requests/network/delete_security_group_rule.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class Network
class Real
-
# Delete a security group rule
#
# ==== Parameters
@@ -14,11 +13,9 @@ module Fog
:path => "security-group-rules/#{security_group_rule_id}"
)
end
-
end
class Mock
-
def delete_security_group_rule(security_group_rule_id)
response = Excon::Response.new
if self.data[:security_group_rules][security_group_rule_id]
@@ -29,7 +26,6 @@ module Fog
raise Fog::HP::Network::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/delete_subnet.rb b/lib/fog/hp/requests/network/delete_subnet.rb
index 08a9eee..55733f8 100644
--- a/lib/fog/hp/requests/network/delete_subnet.rb
+++ b/lib/fog/hp/requests/network/delete_subnet.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Delete an existing subnet
#
@@ -19,7 +18,7 @@ module Fog
class Mock
def delete_subnet(subnet_id)
response = Excon::Response.new
- if list_subnets.body['subnets'].detect {|_| _['id'] == subnet_id}
+ if list_subnets.body['subnets'].find {|_| _['id'] == subnet_id}
self.data[:subnets].delete(subnet_id)
response.status = 204
response
@@ -28,7 +27,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/disassociate_floating_ip.rb b/lib/fog/hp/requests/network/disassociate_floating_ip.rb
index c0940b7..976dd1e 100644
--- a/lib/fog/hp/requests/network/disassociate_floating_ip.rb
+++ b/lib/fog/hp/requests/network/disassociate_floating_ip.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Associate port with floating ip
#
@@ -45,7 +44,7 @@ module Fog
class Mock
def disassociate_floating_ip(floating_ip_id, options = {})
response = Excon::Response.new
- if list_floating_ips.body['floatingips'].detect {|_| _['id'] == floating_ip_id}
+ if list_floating_ips.body['floatingips'].find {|_| _['id'] == floating_ip_id}
response.status = 200
data = {
'id' => floating_ip_id,
@@ -65,7 +64,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/get_floating_ip.rb b/lib/fog/hp/requests/network/get_floating_ip.rb
index 8a3cf40..5b06bcd 100644
--- a/lib/fog/hp/requests/network/get_floating_ip.rb
+++ b/lib/fog/hp/requests/network/get_floating_ip.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Get details for an existing floating ip by id
#
@@ -31,7 +30,7 @@ module Fog
class Mock
def get_floating_ip(floating_ip_id)
response = Excon::Response.new
- if floating_ip = list_floating_ips.body['floatingips'].detect {|_| _['id'] == floating_ip_id}
+ if floating_ip = list_floating_ips.body['floatingips'].find {|_| _['id'] == floating_ip_id}
response.status = 200
response.body = { 'floatingip' => floating_ip }
response
@@ -40,8 +39,6 @@ module Fog
end
end
end
-
-
end
end
end
diff --git a/lib/fog/hp/requests/network/get_network.rb b/lib/fog/hp/requests/network/get_network.rb
index a310f3c..fb181aa 100644
--- a/lib/fog/hp/requests/network/get_network.rb
+++ b/lib/fog/hp/requests/network/get_network.rb
@@ -1,9 +1,7 @@
module Fog
module HP
class Network
-
class Real
-
# Get details for an existing network by id
#
# ==== Parameters
@@ -34,7 +32,7 @@ module Fog
class Mock
def get_network(network_id)
response = Excon::Response.new
- if network = list_networks.body['networks'].detect {|_| _['id'] == network_id}
+ if network = list_networks.body['networks'].find {|_| _['id'] == network_id}
response.status = 200
response.body = { 'network' => network }
response
@@ -43,7 +41,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/get_port.rb b/lib/fog/hp/requests/network/get_port.rb
index 73f6153..9fd3348 100644
--- a/lib/fog/hp/requests/network/get_port.rb
+++ b/lib/fog/hp/requests/network/get_port.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Get details for an existing port by id
#
@@ -38,7 +37,7 @@ module Fog
class Mock
def get_port(port_id)
response = Excon::Response.new
- if port = list_ports.body['ports'].detect {|_| _['id'] == port_id}
+ if port = list_ports.body['ports'].find {|_| _['id'] == port_id}
response.status = 200
response.body = { 'port' => port }
response
@@ -47,7 +46,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/get_router.rb b/lib/fog/hp/requests/network/get_router.rb
index b19c557..1d6aeb3 100644
--- a/lib/fog/hp/requests/network/get_router.rb
+++ b/lib/fog/hp/requests/network/get_router.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Get details for an existing router by id
#
@@ -31,7 +30,7 @@ module Fog
class Mock
def get_router(router_id)
response = Excon::Response.new
- if router = list_routers.body['routers'].detect {|_| _['id'] == router_id}
+ if router = list_routers.body['routers'].find {|_| _['id'] == router_id}
response.status = 200
response.body = { 'router' => router }
response
@@ -40,7 +39,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/get_security_group.rb b/lib/fog/hp/requests/network/get_security_group.rb
index 4fca93c..ded8c92 100644
--- a/lib/fog/hp/requests/network/get_security_group.rb
+++ b/lib/fog/hp/requests/network/get_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class Network
class Real
-
# Get details about a security group
#
# ==== Parameters
@@ -34,11 +33,9 @@ module Fog
:path => "security-groups/#{security_group_id}"
)
end
-
end
class Mock
-
def get_security_group(security_group_id)
response = Excon::Response.new
if sec_group = self.data[:security_groups][security_group_id]
@@ -49,7 +46,6 @@ module Fog
raise Fog::HP::Network::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/get_security_group_rule.rb b/lib/fog/hp/requests/network/get_security_group_rule.rb
index 6250585..b97dcef 100644
--- a/lib/fog/hp/requests/network/get_security_group_rule.rb
+++ b/lib/fog/hp/requests/network/get_security_group_rule.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class Network
class Real
-
# Get details about a security group rule
#
# ==== Parameters
@@ -29,11 +28,9 @@ module Fog
:path => "security-group-rules/#{security_group_rule_id}"
)
end
-
end
class Mock
-
def get_security_group_rule(security_group_rule_id)
response = Excon::Response.new
if sec_group_rule = self.data[:security_group_rules][security_group_rule_id]
@@ -44,7 +41,6 @@ module Fog
raise Fog::HP::Network::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/get_subnet.rb b/lib/fog/hp/requests/network/get_subnet.rb
index 2871a7d..4b33cbf 100644
--- a/lib/fog/hp/requests/network/get_subnet.rb
+++ b/lib/fog/hp/requests/network/get_subnet.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Gets an existing subnet by id
#
@@ -37,7 +36,7 @@ module Fog
class Mock
def get_subnet(subnet_id)
response = Excon::Response.new
- if subnet = list_subnets.body['subnets'].detect {|_| _['id'] == subnet_id}
+ if subnet = list_subnets.body['subnets'].find {|_| _['id'] == subnet_id}
response.status = 200
response.body = { 'subnet' => subnet }
response
@@ -46,7 +45,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/list_floating_ips.rb b/lib/fog/hp/requests/network/list_floating_ips.rb
index 2ff9b89..ecba8b6 100644
--- a/lib/fog/hp/requests/network/list_floating_ips.rb
+++ b/lib/fog/hp/requests/network/list_floating_ips.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# List existing floating ips
#
@@ -40,7 +39,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/list_networks.rb b/lib/fog/hp/requests/network/list_networks.rb
index 4f2eb6a..35cafb0 100644
--- a/lib/fog/hp/requests/network/list_networks.rb
+++ b/lib/fog/hp/requests/network/list_networks.rb
@@ -1,9 +1,7 @@
module Fog
module HP
class Network
-
class Real
-
# List existing networks
#
# ==== Parameters
@@ -23,12 +21,25 @@ module Fog
# * 'admin_state_up'<~Boolean>: - true or false
# * 'shared'<~Boolean>: - true or false
def list_networks(options = {})
- request(
- :expects => 200,
- :method => 'GET',
- :path => 'networks',
- :query => options
- )
+ begin
+ request(
+ :expects => 200,
+ :method => 'GET',
+ :path => 'networks',
+ :query => options
+ )
+ rescue Fog::HP::Network::NotFound
+ begin
+ request(
+ :expects => 200,
+ :method => 'GET',
+ :path => 'os-networks',
+ :query => options
+ )
+ rescue Exception => e
+ throw e
+ end
+ end
end
end
@@ -42,7 +53,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/list_ports.rb b/lib/fog/hp/requests/network/list_ports.rb
index 5b878ee..3660d49 100644
--- a/lib/fog/hp/requests/network/list_ports.rb
+++ b/lib/fog/hp/requests/network/list_ports.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# List existing ports
#
@@ -46,7 +45,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/list_routers.rb b/lib/fog/hp/requests/network/list_routers.rb
index c58fd51..1de1d82 100644
--- a/lib/fog/hp/requests/network/list_routers.rb
+++ b/lib/fog/hp/requests/network/list_routers.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# List existing routers
#
@@ -39,7 +38,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/list_security_group_rules.rb b/lib/fog/hp/requests/network/list_security_group_rules.rb
index be525f5..7b18cfd 100644
--- a/lib/fog/hp/requests/network/list_security_group_rules.rb
+++ b/lib/fog/hp/requests/network/list_security_group_rules.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class Network
class Real
-
# List all security group rules
#
# ==== Parameters
@@ -30,11 +29,9 @@ module Fog
:query => options
)
end
-
end
class Mock
-
def list_security_group_rules(options = {})
response = Excon::Response.new
@@ -45,7 +42,6 @@ module Fog
response.body = { 'security_group_rules' => sec_group_rules }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/list_security_groups.rb b/lib/fog/hp/requests/network/list_security_groups.rb
index c765512..d73da33 100644
--- a/lib/fog/hp/requests/network/list_security_groups.rb
+++ b/lib/fog/hp/requests/network/list_security_groups.rb
@@ -2,7 +2,6 @@ module Fog
module HP
class Network
class Real
-
# List all security groups
#
# ==== Parameters
@@ -35,11 +34,9 @@ module Fog
:query => options
)
end
-
end
class Mock
-
def list_security_groups(options = {})
response = Excon::Response.new
@@ -50,7 +47,6 @@ module Fog
response.body = { 'security_groups' => sec_groups }
response
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/list_subnets.rb b/lib/fog/hp/requests/network/list_subnets.rb
index 0aca735..3f7715d 100644
--- a/lib/fog/hp/requests/network/list_subnets.rb
+++ b/lib/fog/hp/requests/network/list_subnets.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# List existing subnets
#
@@ -45,7 +44,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/remove_router_interface.rb b/lib/fog/hp/requests/network/remove_router_interface.rb
index 69e2836..045141e 100644
--- a/lib/fog/hp/requests/network/remove_router_interface.rb
+++ b/lib/fog/hp/requests/network/remove_router_interface.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Remove an internal router interface, thus detaching a subnet or a port from an existing router
#
@@ -38,7 +37,7 @@ module Fog
class Mock
def remove_router_interface(router_id, subnet_id=nil, port_id=nil, options = {})
response = Excon::Response.new
- if list_routers.body['routers'].detect {|_| _['id'] == router_id}
+ if list_routers.body['routers'].find {|_| _['id'] == router_id}
# Either a subnet or a port can be passed, not both
if (subnet_id && port_id) || (subnet_id.nil? && port_id.nil?)
raise ArgumentError.new('Either a subnet or a port can be passed, not both')
@@ -61,7 +60,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/update_network.rb b/lib/fog/hp/requests/network/update_network.rb
index 65c746f..b5cc70c 100644
--- a/lib/fog/hp/requests/network/update_network.rb
+++ b/lib/fog/hp/requests/network/update_network.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Update attributes for an existing network
#
@@ -44,7 +43,7 @@ module Fog
class Mock
def update_network(network_id, options = {})
response = Excon::Response.new
- if network = list_networks.body['networks'].detect {|_| _['id'] == network_id}
+ if network = list_networks.body['networks'].find {|_| _['id'] == network_id}
network['name'] = options[:name]
network['shared'] = options[:shared]
network['admin_state_up'] = options[:admin_state_up]
@@ -56,7 +55,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/update_port.rb b/lib/fog/hp/requests/network/update_port.rb
index 0062c76..090583c 100644
--- a/lib/fog/hp/requests/network/update_port.rb
+++ b/lib/fog/hp/requests/network/update_port.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Update an existing port by id
#
@@ -55,7 +54,7 @@ module Fog
class Mock
def update_port(port_id, options = {})
response = Excon::Response.new
- if port = list_ports.body['ports'].detect { |_| _['id'] == port_id }
+ if port = list_ports.body['ports'].find { |_| _['id'] == port_id }
port['name'] = options[:name]
port['fixed_ips'] = options[:fixed_ips]
port['device_owner'] = options[:device_owner]
@@ -69,7 +68,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/update_router.rb b/lib/fog/hp/requests/network/update_router.rb
index e9c748b..ae45818 100644
--- a/lib/fog/hp/requests/network/update_router.rb
+++ b/lib/fog/hp/requests/network/update_router.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Update an existing router by id
#
@@ -44,7 +43,7 @@ module Fog
class Mock
def update_router(router_id, options = {})
response = Excon::Response.new
- if router = list_routers.body['routers'].detect {|_| _['id'] == router_id}
+ if router = list_routers.body['routers'].find {|_| _['id'] == router_id}
router['name'] = options[:name]
router['admin_state_up'] = options[:admin_state_up]
router['external_gateway_info'] = options[:external_gateway_info]
@@ -56,7 +55,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/network/update_subnet.rb b/lib/fog/hp/requests/network/update_subnet.rb
index 16b359a..092fff2 100644
--- a/lib/fog/hp/requests/network/update_subnet.rb
+++ b/lib/fog/hp/requests/network/update_subnet.rb
@@ -1,7 +1,6 @@
module Fog
module HP
class Network
-
class Real
# Update an existing subnet
#
@@ -52,7 +51,7 @@ module Fog
class Mock
def update_subnet(subnet_id, options = {})
response = Excon::Response.new
- if subnet = list_subnets.body['subnets'].detect {|_| _['id'] == subnet_id}
+ if subnet = list_subnets.body['subnets'].find {|_| _['id'] == subnet_id}
subnet['name'] = options[:name]
subnet['gateway_ip'] = options[:gateway_ip]
subnet['dns_nameservers'] = options[:dns_nameservers]
@@ -66,7 +65,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/delete_container.rb b/lib/fog/hp/requests/storage/delete_container.rb
index 636c720..d63127c 100644
--- a/lib/fog/hp/requests/storage/delete_container.rb
+++ b/lib/fog/hp/requests/storage/delete_container.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# Delete an existing container
#
# ==== Parameters
@@ -16,11 +15,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def delete_container(container_name)
response = Excon::Response.new
if self.data[:containers][container_name].nil?
@@ -35,9 +32,7 @@ module Fog
end
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/delete_object.rb b/lib/fog/hp/requests/storage/delete_object.rb
index 8ed7867..1dbda24 100644
--- a/lib/fog/hp/requests/storage/delete_object.rb
+++ b/lib/fog/hp/requests/storage/delete_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# Delete an existing object
#
# ==== Parameters
@@ -17,11 +16,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def delete_object(container_name, object_name, options = {})
response = Excon::Response.new
if container = self.data[:containers][container_name]
@@ -36,9 +33,7 @@ module Fog
end
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/delete_shared_object.rb b/lib/fog/hp/requests/storage/delete_shared_object.rb
index f17c5f9..164f2b0 100644
--- a/lib/fog/hp/requests/storage/delete_shared_object.rb
+++ b/lib/fog/hp/requests/storage/delete_shared_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# Delete a shared object
#
# ==== Parameters
@@ -20,19 +19,15 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def delete_shared_object(shared_object_url)
response = Excon::Response.new
response.status = 204
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/get_container.rb b/lib/fog/hp/requests/storage/get_container.rb
index 0dd9c27..3d5a3b5 100644
--- a/lib/fog/hp/requests/storage/get_container.rb
+++ b/lib/fog/hp/requests/storage/get_container.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# Get details for container and total bytes stored
#
# ==== Parameters
@@ -38,11 +37,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def get_container(container_name, options = {})
unless container_name
raise ArgumentError.new('container_name is required')
@@ -84,9 +81,7 @@ module Fog
raise Fog::Storage::HP::NotFound
end
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/get_containers.rb b/lib/fog/hp/requests/storage/get_containers.rb
index b94dcf8..9beb13d 100644
--- a/lib/fog/hp/requests/storage/get_containers.rb
+++ b/lib/fog/hp/requests/storage/get_containers.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# List existing storage containers
#
# ==== Parameters
@@ -27,11 +26,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def get_containers(options = {})
response = Excon::Response.new
acc_cont_count = 0
@@ -63,9 +60,7 @@ module Fog
response.status = 200
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/get_object.rb b/lib/fog/hp/requests/storage/get_object.rb
index 9695ae6..18e2e42 100644
--- a/lib/fog/hp/requests/storage/get_object.rb
+++ b/lib/fog/hp/requests/storage/get_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# Get details for an object
#
# ==== Parameters
@@ -26,11 +25,9 @@ module Fog
end
response
end
-
end
class Mock # :nodoc:all
-
def get_object(container_name, object_name, options = {}, &block)
unless container_name
raise ArgumentError.new('container_name is required')
@@ -77,9 +74,7 @@ module Fog
end
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/get_object_temp_url.rb b/lib/fog/hp/requests/storage/get_object_temp_url.rb
index 9781f10..3188632 100644
--- a/lib/fog/hp/requests/storage/get_object_temp_url.rb
+++ b/lib/fog/hp/requests/storage/get_object_temp_url.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class HP
-
class Real
-
# Generate a temporary url for an object
#
# ==== Parameters
@@ -14,18 +12,15 @@ module Fog
def get_object_temp_url(container, object, expires, method)
generate_object_temp_url(container, object, expires, method)
end
-
end
class Mock # :nodoc:all
-
def get_object_temp_url(container, object, expires, method)
@hp_storage_uri = "https://swift-cluster.example.com:443/v1/account"
generate_object_temp_url(container, object, expires, method)
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/get_shared_container.rb b/lib/fog/hp/requests/storage/get_shared_container.rb
index 6410f46..a49cf19 100644
--- a/lib/fog/hp/requests/storage/get_shared_container.rb
+++ b/lib/fog/hp/requests/storage/get_shared_container.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# Get details for a shared container
#
# ==== Parameters
@@ -40,11 +39,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def get_shared_container(shared_container_url, options = {})
response = Excon::Response.new
data = {
@@ -65,11 +62,8 @@ module Fog
'X-Trans-Id' => "tx#{Fog::Mock.random_hex(32)}"
}
response
-
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/get_shared_object.rb b/lib/fog/hp/requests/storage/get_shared_object.rb
index f2a7add..da84342 100644
--- a/lib/fog/hp/requests/storage/get_shared_object.rb
+++ b/lib/fog/hp/requests/storage/get_shared_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# Get details for a shared object
#
# ==== Parameters
@@ -29,11 +28,9 @@ module Fog
end
response
end
-
end
class Mock # :nodoc:all
-
def get_shared_object(shared_object_url, &block)
response = Excon::Response.new
response.status = 200
@@ -58,9 +55,7 @@ module Fog
end
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/head_container.rb b/lib/fog/hp/requests/storage/head_container.rb
index 2208645..c180770 100644
--- a/lib/fog/hp/requests/storage/head_container.rb
+++ b/lib/fog/hp/requests/storage/head_container.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# List number of objects and total bytes stored
#
# ==== Parameters
@@ -22,20 +21,16 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def head_container(container_name)
response = get_container(container_name)
response.body = nil
response.status = 204
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/head_containers.rb b/lib/fog/hp/requests/storage/head_containers.rb
index fc6bfc4..053a94e 100644
--- a/lib/fog/hp/requests/storage/head_containers.rb
+++ b/lib/fog/hp/requests/storage/head_containers.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# List number of containers and total bytes stored
#
# ==== Returns
@@ -19,19 +18,15 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def head_containers
response = get_containers
response.body = nil
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/head_object.rb b/lib/fog/hp/requests/storage/head_object.rb
index badbd21..a669dd2 100644
--- a/lib/fog/hp/requests/storage/head_object.rb
+++ b/lib/fog/hp/requests/storage/head_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# Get headers for object
#
# ==== Parameters
@@ -17,20 +16,16 @@ module Fog
}, false)
response
end
-
end
class Mock # :nodoc:all
-
def head_object(container_name, object_name, options = {})
response = get_object(container_name, object_name, options)
response.body = nil
response.status = 200
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/head_shared_container.rb b/lib/fog/hp/requests/storage/head_shared_container.rb
index cf16a5d..fe2071f 100644
--- a/lib/fog/hp/requests/storage/head_shared_container.rb
+++ b/lib/fog/hp/requests/storage/head_shared_container.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# List number of objects and total bytes stored for a shared container
#
# ==== Parameters
@@ -26,20 +25,16 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def head_shared_container(shared_container_url)
response = get_shared_container(shared_container_url)
response.body = nil
response.status = 204
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/head_shared_object.rb b/lib/fog/hp/requests/storage/head_shared_object.rb
index 855d280..f87b2ec 100644
--- a/lib/fog/hp/requests/storage/head_shared_object.rb
+++ b/lib/fog/hp/requests/storage/head_shared_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# Get headers for shared object
#
# ==== Parameters
@@ -20,20 +19,16 @@ module Fog
}, false)
response
end
-
end
class Mock # :nodoc:all
-
def head_shared_object(shared_object_url)
response = get_shared_object(shared_object_url)
response.body = nil
response.status = 200
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/post_container.rb b/lib/fog/hp/requests/storage/post_container.rb
index ac213ca..2f6fe2a 100644
--- a/lib/fog/hp/requests/storage/post_container.rb
+++ b/lib/fog/hp/requests/storage/post_container.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# Create or update metadata for an existing container
#
# ==== Parameters
@@ -17,11 +16,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def post_container(container_name, headers = {})
if self.data[:containers][container_name].nil?
raise Fog::Storage::HP::NotFound
@@ -30,9 +27,7 @@ module Fog
response.status = 204
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/post_object.rb b/lib/fog/hp/requests/storage/post_object.rb
index 9183a77..a6b0e67 100644
--- a/lib/fog/hp/requests/storage/post_object.rb
+++ b/lib/fog/hp/requests/storage/post_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# Create or update metadata for an existing object
#
# ==== Parameters
@@ -18,11 +17,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def post_object(container_name, object_name, headers = {})
response = Excon::Response.new
if container = self.data[:containers][container_name]
@@ -48,9 +45,7 @@ module Fog
end
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/put_container.rb b/lib/fog/hp/requests/storage/put_container.rb
index 7bbb95d..74f47e7 100644
--- a/lib/fog/hp/requests/storage/put_container.rb
+++ b/lib/fog/hp/requests/storage/put_container.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# Create a new container
#
# ==== Parameters
@@ -17,7 +16,6 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
@@ -42,7 +40,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/put_object.rb b/lib/fog/hp/requests/storage/put_object.rb
index 3a30d7d..3009981 100644
--- a/lib/fog/hp/requests/storage/put_object.rb
+++ b/lib/fog/hp/requests/storage/put_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# Create a new object
#
# ==== Parameters
@@ -22,7 +21,7 @@ module Fog
:path => "#{Fog::HP.escape(container)}/#{Fog::HP.escape(object)}"
)
end
- if headers.has_key?('Transfer-Encoding')
+ if headers.key?('Transfer-Encoding')
headers.delete('Content-Length')
end
response = request(
@@ -34,11 +33,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def put_object(container_name, object_name, data, options = {})
response = Excon::Response.new
### Take care of case of copy operation
@@ -97,9 +94,7 @@ module Fog
end
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/requests/storage/put_shared_object.rb b/lib/fog/hp/requests/storage/put_shared_object.rb
index cee3a9d..3f85367 100644
--- a/lib/fog/hp/requests/storage/put_shared_object.rb
+++ b/lib/fog/hp/requests/storage/put_shared_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class HP
class Real
-
# Create a new object in a shared container
#
# ==== Parameters
@@ -28,7 +27,7 @@ module Fog
:path => "#{path}/#{Fog::HP.escape(object_name)}"
)
end
- if headers.has_key?('Transfer-Encoding')
+ if headers.key?('Transfer-Encoding')
headers.delete('Content-Length')
end
response = shared_request(
@@ -40,11 +39,9 @@ module Fog
)
response
end
-
end
class Mock # :nodoc:all
-
def put_shared_object(shared_container_url, object_name, data, options = {}, &block)
response = Excon::Response.new
data = Fog::Storage.parse_data(data)
@@ -77,9 +74,7 @@ module Fog
response
end
-
end
-
end
end
end
diff --git a/lib/fog/hp/simple_http_instrumentor.rb b/lib/fog/hp/simple_http_instrumentor.rb
index f536b73..66cbe29 100644
--- a/lib/fog/hp/simple_http_instrumentor.rb
+++ b/lib/fog/hp/simple_http_instrumentor.rb
@@ -5,18 +5,18 @@ module Excon
def instrument(name, params = {}, &block)
params = params.dup
- if params.has_key?(:headers) && params[:headers].has_key?('Authorization')
+ if params.key?(:headers) && params[:headers].key?('Authorization')
params[:headers] = params[:headers].dup
params[:headers]['Authorization'] = REDACTED
end
- if params.has_key?(:password)
+ if params.key?(:password)
params[:password] = REDACTED
end
$stderr.puts("--- #{name} ---")
if name.include?('.request')
query = ''
tmp_query = ''
- if params.has_key?(:query) && !params[:query].nil?
+ if params.key?(:query) && !params[:query].nil?
params[:query].each do |key, value|
tmp_query += "#{key}=#{value}&"
end
@@ -53,7 +53,6 @@ module Excon
yield
end
end
-
end
end
end
diff --git a/lib/fog/hp/storage.rb b/lib/fog/hp/storage.rb
index 24784b3..19683f8 100644
--- a/lib/fog/hp/storage.rb
+++ b/lib/fog/hp/storage.rb
@@ -3,7 +3,6 @@ require 'fog/hp/core'
module Fog
module Storage
class HP < Fog::Service
-
requires :hp_secret_key, :hp_tenant_id, :hp_avl_zone
recognizes :hp_auth_uri, :hp_cdn_ssl, :hp_cdn_uri, :credentials, :hp_service_type
recognizes :persistent, :connection_options
@@ -47,7 +46,6 @@ module Fog
request :put_shared_object
module Utils
-
def cdn
unless @hp_cdn_uri.nil?
@cdn ||= Fog::CDN.new(
@@ -207,7 +205,6 @@ module Fog
# * body<~String> - url for object
def create_temp_url(container, object, expires, method, options = {})
raise ArgumentError, "Insufficient parameters specified." unless (container && object && expires && method)
- raise ArgumentError, "Storage must my instantiated with the :os_account_meta_temp_url_key option" if @os_account_meta_temp_url_key.nil?
# POST not allowed
allowed_methods = %w{GET PUT HEAD}
@@ -233,6 +230,11 @@ module Fog
hmac = OpenSSL::HMAC.new(@os_account_meta_temp_url_key, OpenSSL::Digest::SHA1.new)
signature= hmac.update(string_to_sign).hexdigest
else
+ #Note if the value of the @hp_secret_key is really a password, this will NOT work
+ #HP Public Cloud FormPost and Temporary URL hashing algorithms require the secret key NOT password.
+ if Fog::HP.instance_variable_get("@hp_use_upass_auth_style")
+ raise ArgumentError, "Temporary URLS cannot be generated unless you login via access_key/secret_key"
+ end
# Only works with 1.9+ Not compatible with 1.8.7
#signed_string = Digest::HMAC.hexdigest(string_to_sign, @hp_secret_key, Digest::SHA1)
@@ -293,7 +295,6 @@ module Fog
def reset_data
self.class.data.delete(@hp_access_key)
end
-
end
class Real
@@ -311,6 +312,10 @@ module Fog
unless @hp_access_key
raise ArgumentError.new("Missing required arguments: hp_access_key. :hp_account_id is deprecated, please use :hp_access_key instead.")
end
+ if options[:os_account_meta_temp_url_key]
+ Fog::Logger.deprecation(":os_account_meta_temp_url_key is deprecated, and will be removed in a future release. please use the :openstack provider instead.")
+ @os_account_meta_temp_url_key = options.delete(:os_account_meta_temp_url_key)
+ end
@hp_secret_key = options[:hp_secret_key]
@hp_auth_uri = options[:hp_auth_uri]
@hp_cdn_ssl = options[:hp_cdn_ssl]
@@ -321,10 +326,9 @@ module Fog
auth_version = auth_version.to_s.downcase.to_sym
### Pass the service name for object storage to the authentication call
- options[:hp_service_type] ||= "Object Storage"
+ options[:hp_service_type] ||= " object-store"
@hp_tenant_id = options[:hp_tenant_id]
@hp_avl_zone = options[:hp_avl_zone]
- @os_account_meta_temp_url_key = options[:os_account_meta_temp_url_key]
### Make the authentication call
if (auth_version == :v2)
@@ -408,7 +412,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/ibm/compute.rb b/lib/fog/ibm/compute.rb
index 592bae4..3c4e008 100644
--- a/lib/fog/ibm/compute.rb
+++ b/lib/fog/ibm/compute.rb
@@ -3,7 +3,6 @@ require 'fog/ibm/core'
module Fog
module Compute
class IBM < Fog::Service
-
requires :ibm_username, :ibm_password
recognizes :location
@@ -81,7 +80,6 @@ module Fog
end
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {
@@ -226,9 +224,7 @@ module Fog
}
locations
end
-
end
-
end
end
end
diff --git a/lib/fog/ibm/core.rb b/lib/fog/ibm/core.rb
index 7f2b14d..088d3d8 100644
--- a/lib/fog/ibm/core.rb
+++ b/lib/fog/ibm/core.rb
@@ -3,7 +3,6 @@ require 'fog/json'
module Fog
module IBM
-
extend Fog::Provider
service(:compute, 'Compute')
@@ -17,7 +16,6 @@ module Fog
end
class Connection < Fog::XML::Connection
-
def initialize(user, password)
@user = user
@password = password
@@ -54,12 +52,11 @@ module Fog
class Mock
class << self
-
def id
Fog::Mock.random_numbers(7).to_i.to_s
end
- alias :instance_id :id
- alias :request_id :id
+ alias_method :instance_id, :id
+ alias_method :request_id, :id
def primary_ip
{ "type" => 0, "ip" => Fog::IBM::Mock.ip_address, "hostname" => Fog::IBM::Mock.hostname }
@@ -169,9 +166,7 @@ module Fog
"state" => 0
}
end
-
end
end
-
end
end
diff --git a/lib/fog/ibm/models/compute/address.rb b/lib/fog/ibm/models/compute/address.rb
index ce40ddc..2ab7c35 100644
--- a/lib/fog/ibm/models/compute/address.rb
+++ b/lib/fog/ibm/models/compute/address.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class IBM
class Address < Fog::Model
-
STATES = {
0 => 'New',
1 => 'Allocating',
diff --git a/lib/fog/ibm/models/compute/addresses.rb b/lib/fog/ibm/models/compute/addresses.rb
index 68a849a..061289a 100644
--- a/lib/fog/ibm/models/compute/addresses.rb
+++ b/lib/fog/ibm/models/compute/addresses.rb
@@ -4,9 +4,7 @@ require 'fog/ibm/models/compute/address'
module Fog
module Compute
class IBM
-
class Addresses < Fog::Collection
-
model Fog::Compute::IBM::Address
def all
@@ -21,7 +19,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/ibm/models/compute/image.rb b/lib/fog/ibm/models/compute/image.rb
index f8eb833..175391c 100644
--- a/lib/fog/ibm/models/compute/image.rb
+++ b/lib/fog/ibm/models/compute/image.rb
@@ -5,7 +5,6 @@ module Fog
module Compute
class IBM
class Image < Fog::Model
-
STATES = {
0 => 'New',
1 => 'Available',
@@ -63,7 +62,6 @@ module Fog
requires :id
service.delete_image(id).body['success']
end
-
end
end
end
diff --git a/lib/fog/ibm/models/compute/images.rb b/lib/fog/ibm/models/compute/images.rb
index 5c23043..5d19ac8 100644
--- a/lib/fog/ibm/models/compute/images.rb
+++ b/lib/fog/ibm/models/compute/images.rb
@@ -4,9 +4,7 @@ require 'fog/ibm/models/compute/image'
module Fog
module Compute
class IBM
-
class Images < Fog::Collection
-
model Fog::Compute::IBM::Image
def all
@@ -20,7 +18,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/ibm/models/compute/instance-types.rb b/lib/fog/ibm/models/compute/instance-types.rb
index 694dcc2..c8e2dd1 100644
--- a/lib/fog/ibm/models/compute/instance-types.rb
+++ b/lib/fog/ibm/models/compute/instance-types.rb
@@ -4,11 +4,8 @@ require 'fog/ibm/models/compute/instance-type'
module Fog
module Compute
class IBM
-
class InstanceTypes < Fog::Collection
-
model Fog::Compute::IBM::InstanceType
-
end
end
end
diff --git a/lib/fog/ibm/models/compute/keys.rb b/lib/fog/ibm/models/compute/keys.rb
index 253aa04..9fed64b 100644
--- a/lib/fog/ibm/models/compute/keys.rb
+++ b/lib/fog/ibm/models/compute/keys.rb
@@ -4,9 +4,7 @@ require 'fog/ibm/models/compute/key'
module Fog
module Compute
class IBM
-
class Keys < Fog::Collection
-
model Fog::Compute::IBM::Key
def all
@@ -28,7 +26,6 @@ module Fog
def default=(key_name)
service.modify_key(key_name, 'default' => true)
end
-
end
end
end
diff --git a/lib/fog/ibm/models/compute/locations.rb b/lib/fog/ibm/models/compute/locations.rb
index eba4cd0..8e6794e 100644
--- a/lib/fog/ibm/models/compute/locations.rb
+++ b/lib/fog/ibm/models/compute/locations.rb
@@ -4,9 +4,7 @@ require 'fog/ibm/models/compute/location'
module Fog
module Compute
class IBM
-
class Locations < Fog::Collection
-
model Fog::Compute::IBM::Location
def all
@@ -20,7 +18,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/ibm/models/compute/server.rb b/lib/fog/ibm/models/compute/server.rb
index d335b36..956b9ba 100644
--- a/lib/fog/ibm/models/compute/server.rb
+++ b/lib/fog/ibm/models/compute/server.rb
@@ -3,9 +3,7 @@ require 'fog/compute/models/server'
module Fog
module Compute
class IBM
-
class Server < Fog::Compute::Server
-
STATES = {
0 => 'New',
1 => 'Provisioning',
@@ -184,10 +182,8 @@ module Fog
}.merge(opts)
service.create_image(id, options[:name], options[:description]).body
end
- alias :create_image :to_image
+ alias_method :create_image, :to_image
end
-
end
end
-
end
diff --git a/lib/fog/ibm/models/compute/servers.rb b/lib/fog/ibm/models/compute/servers.rb
index af38fb3..cea5d45 100644
--- a/lib/fog/ibm/models/compute/servers.rb
+++ b/lib/fog/ibm/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/ibm/models/compute/server'
module Fog
module Compute
class IBM
-
class Servers < Fog::Collection
-
model Fog::Compute::IBM::Server
def all
@@ -20,7 +18,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/ibm/models/compute/vlan.rb b/lib/fog/ibm/models/compute/vlan.rb
index 446a05b..aefb0f7 100644
--- a/lib/fog/ibm/models/compute/vlan.rb
+++ b/lib/fog/ibm/models/compute/vlan.rb
@@ -4,11 +4,9 @@ module Fog
module Compute
class IBM
class Vlan < Fog::Model
-
identity :id
attribute :name
attribute :location
-
end
end
end
diff --git a/lib/fog/ibm/models/compute/vlans.rb b/lib/fog/ibm/models/compute/vlans.rb
index 58b75e1..080e235 100644
--- a/lib/fog/ibm/models/compute/vlans.rb
+++ b/lib/fog/ibm/models/compute/vlans.rb
@@ -4,9 +4,7 @@ require 'fog/ibm/models/compute/vlan'
module Fog
module Compute
class IBM
-
class Vlans < Fog::Collection
-
model Fog::Compute::IBM::Vlan
def all
@@ -21,7 +19,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/ibm/models/storage/offerings.rb b/lib/fog/ibm/models/storage/offerings.rb
index 009cc5a..05171c3 100644
--- a/lib/fog/ibm/models/storage/offerings.rb
+++ b/lib/fog/ibm/models/storage/offerings.rb
@@ -4,15 +4,12 @@ require 'fog/ibm/models/storage/offering'
module Fog
module Storage
class IBM
-
class Offerings < Fog::Collection
-
model Fog::Storage::IBM::Offering
def all
load(service.list_offerings.body['volumes'])
end
-
end
end
end
diff --git a/lib/fog/ibm/models/storage/volume.rb b/lib/fog/ibm/models/storage/volume.rb
index 49f94c1..eead192 100644
--- a/lib/fog/ibm/models/storage/volume.rb
+++ b/lib/fog/ibm/models/storage/volume.rb
@@ -4,7 +4,6 @@ module Fog
module Storage
class IBM
class Volume < Fog::Model
-
STATES = {
0 => 'New',
1 => 'Creating',
@@ -91,7 +90,6 @@ module Fog
def state
STATES[attributes[:state]]
end
-
end
end
end
diff --git a/lib/fog/ibm/models/storage/volumes.rb b/lib/fog/ibm/models/storage/volumes.rb
index 3bba521..9bcb37d 100644
--- a/lib/fog/ibm/models/storage/volumes.rb
+++ b/lib/fog/ibm/models/storage/volumes.rb
@@ -4,9 +4,7 @@ require 'fog/ibm/models/storage/volume'
module Fog
module Storage
class IBM
-
class Volumes < Fog::Collection
-
model Fog::Storage::IBM::Volume
def all
@@ -20,7 +18,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/clone_image.rb b/lib/fog/ibm/requests/compute/clone_image.rb
index 00546a3..50d3aad 100644
--- a/lib/fog/ibm/requests/compute/clone_image.rb
+++ b/lib/fog/ibm/requests/compute/clone_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Clones image specified by image_id
#
# ==== Parameters
@@ -25,10 +24,8 @@ module Fog
}
)
end
-
end
class Mock
-
def clone_image(image_id, name, description)
response = Excon::Response.new
if image_exists? image_id
@@ -41,7 +38,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/create_address.rb b/lib/fog/ibm/requests/compute/create_address.rb
index 19c5613..7416153 100644
--- a/lib/fog/ibm/requests/compute/create_address.rb
+++ b/lib/fog/ibm/requests/compute/create_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Requests a new static IP address to be created
#
# ==== Parameters
@@ -30,11 +29,9 @@ module Fog
}
)
end
-
end
class Mock
-
def create_address(location_id, offering_id="20001223", options={})
address = Fog::IBM::Mock.create_address(location_id, offering_id, options)
self.data[:addresses][address['id']] = address
@@ -43,7 +40,6 @@ module Fog
response.body = address
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/create_image.rb b/lib/fog/ibm/requests/compute/create_image.rb
index a694ee3..07ce2a5 100644
--- a/lib/fog/ibm/requests/compute/create_image.rb
+++ b/lib/fog/ibm/requests/compute/create_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Requests an image to be created from an Instance
#
# ==== Parameters
@@ -32,11 +31,9 @@ module Fog
}
)
end
-
end
class Mock
-
def create_image(instance_id, name, description)
response = Excon::Response.new
if instance_exists? instance_id
@@ -49,7 +46,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/create_instance.rb b/lib/fog/ibm/requests/compute/create_instance.rb
index 7f9c29d..77f0672 100644
--- a/lib/fog/ibm/requests/compute/create_instance.rb
+++ b/lib/fog/ibm/requests/compute/create_instance.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Requests a new Instance to be created.
#
# ==== Parameters
@@ -57,11 +56,9 @@ module Fog
:body => body_data
)
end
-
end
class Mock
-
def create_instance(name, image_id, instance_type, location, options={})
response = Excon::Response.new
# Since we want to test error conditions, we have a little regex that traps specially formed
@@ -78,7 +75,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/create_key.rb b/lib/fog/ibm/requests/compute/create_key.rb
index 2d3fecc..85bd055 100644
--- a/lib/fog/ibm/requests/compute/create_key.rb
+++ b/lib/fog/ibm/requests/compute/create_key.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Requests a new keypair to be created
#
# ==== Parameters
@@ -27,11 +26,9 @@ module Fog
}
)
end
-
end
class Mock
-
# SmartCloud returns the private key when create_key is called
# We need to store both the private and public key for later use
def create_key(name, public_key=nil)
@@ -54,7 +51,6 @@ module Fog
self.data[:private_keys][name] = attributes.merge("keyMaterial" => private_key.to_s)
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/delete_address.rb b/lib/fog/ibm/requests/compute/delete_address.rb
index 9ca8079..c0b8ad6 100644
--- a/lib/fog/ibm/requests/compute/delete_address.rb
+++ b/lib/fog/ibm/requests/compute/delete_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Deletes the Address that the authenticated user manages with the specified :address_id
#
# ==== Parameters
@@ -19,11 +18,9 @@ module Fog
:path => "/addresses/#{address_id}"
)
end
-
end
class Mock
-
def delete_address(address_id)
response = Excon::Response.new
if address_exists? address_id
@@ -39,7 +36,6 @@ module Fog
def address_exists?(address_id)
self.data[:addresses].key? address_id
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/delete_image.rb b/lib/fog/ibm/requests/compute/delete_image.rb
index 7db3b95..f9e548d 100644
--- a/lib/fog/ibm/requests/compute/delete_image.rb
+++ b/lib/fog/ibm/requests/compute/delete_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Deletes the image that the authenticated user manages with the specified :image_id
#
# ==== Parameters
@@ -19,10 +18,8 @@ module Fog
:path => "/offerings/image/#{image_id}"
)
end
-
end
class Mock
-
def delete_image(image_id)
response = Excon::Response.new
# TODO: We should probably check that an image is deleteable.
@@ -36,7 +33,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/delete_instance.rb b/lib/fog/ibm/requests/compute/delete_instance.rb
index 3b7dcc0..d595399 100644
--- a/lib/fog/ibm/requests/compute/delete_instance.rb
+++ b/lib/fog/ibm/requests/compute/delete_instance.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Deletes the Instance that the authenticated user manages with the specified :instance_id
#
# ==== Parameters
@@ -19,11 +18,9 @@ module Fog
:path => "/instances/#{instance_id}"
)
end
-
end
class Mock
-
def delete_instance(instance_id)
response = Excon::Response.new
if deleteable? instance_id
@@ -45,7 +42,6 @@ module Fog
return false if [0, 1, 7, 14, 15].include?(instance["status"].to_i)
true
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/delete_key.rb b/lib/fog/ibm/requests/compute/delete_key.rb
index 9ab1388..4a27cdc 100644
--- a/lib/fog/ibm/requests/compute/delete_key.rb
+++ b/lib/fog/ibm/requests/compute/delete_key.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Deletes the key specified with key_name
#
# ==== Parameters
@@ -19,10 +18,8 @@ module Fog
:path => "/keys/#{key_name}"
)
end
-
end
class Mock
-
def delete_key(key_name)
response = Excon::Response.new
if key_exists? key_name
@@ -34,7 +31,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/get_image.rb b/lib/fog/ibm/requests/compute/get_image.rb
index 58e380d..ada13a5 100644
--- a/lib/fog/ibm/requests/compute/get_image.rb
+++ b/lib/fog/ibm/requests/compute/get_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Returns details of image specified by id
#
# ==== Parameters
@@ -39,11 +38,9 @@ module Fog
:path => "/offerings/image/#{image_id}"
)
end
-
end
class Mock
-
def get_image(image_id)
response = Excon::Response.new
if image_exists? image_id
@@ -60,7 +57,6 @@ module Fog
def image_exists?(image_id)
self.data[:images].key? image_id
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/get_image_agreement.rb b/lib/fog/ibm/requests/compute/get_image_agreement.rb
index a7571f2..8825335 100644
--- a/lib/fog/ibm/requests/compute/get_image_agreement.rb
+++ b/lib/fog/ibm/requests/compute/get_image_agreement.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Returns license agreement of image specified by id
#
# ==== Parameters
@@ -24,11 +23,9 @@ module Fog
:path => "/offerings/image/#{image_id}/agreement"
)
end
-
end
class Mock
-
# TODO: Fix this so they work.
def get_image_agreement(image_id)
response = Excon::Response.new
@@ -59,7 +56,6 @@ module Fog
"type"=>2}]}
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/get_image_manifest.rb b/lib/fog/ibm/requests/compute/get_image_manifest.rb
index fa034f6..2046254 100644
--- a/lib/fog/ibm/requests/compute/get_image_manifest.rb
+++ b/lib/fog/ibm/requests/compute/get_image_manifest.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Returns manifest of image specified by id
#
# ==== Parameters
@@ -19,11 +18,9 @@ module Fog
:path => "/offerings/image/#{image_id}/manifest"
)
end
-
end
class Mock
-
# TODO: Create a data store for this.
def get_image_manifest(image_id)
response = Excon::Response.new
@@ -32,7 +29,6 @@ module Fog
"<?xml version=\"1.0\" encoding=\"UTF-8\"?><parameters xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:noNamespaceSchemaLocation=\"platform:/resource/com.ibm.ccl.devcloud.client/schema/parameters.xsd\">\n\t<firewall>\n\t\t<rule>\n\t\t\t<source>0.0.0.0/0</source>\n\t\t\t<minport>1</minport>\n\t\t\t<maxport>65535</maxport>\n\t\t</rule>\n\t</firewall>\n</parameters>"}
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/get_instance.rb b/lib/fog/ibm/requests/compute/get_instance.rb
index b8b2e4b..f948357 100644
--- a/lib/fog/ibm/requests/compute/get_instance.rb
+++ b/lib/fog/ibm/requests/compute/get_instance.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Returns the Instance that the authenticated user manages with the specified :instance_id
#
# ==== Parameters
@@ -38,11 +37,9 @@ module Fog
:path => "/instances/#{instance_id}"
)
end
-
end
class Mock
-
def get_instance(instance_id)
response = Excon::Response.new
if instance_exists? instance_id
@@ -69,7 +66,6 @@ module Fog
def instance_active?(instance_id)
self.data[:instances][instance_id]["status"] == 5
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/get_instance_logs.rb b/lib/fog/ibm/requests/compute/get_instance_logs.rb
index d805517..08fff8d 100644
--- a/lib/fog/ibm/requests/compute/get_instance_logs.rb
+++ b/lib/fog/ibm/requests/compute/get_instance_logs.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Get an instance's logs
#
# ==== Returns
@@ -18,7 +17,6 @@ module Fog
(start_index ? "?startIndex=#{start_index}" : '')
)
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/get_key.rb b/lib/fog/ibm/requests/compute/get_key.rb
index 589ad4c..cda64ac 100644
--- a/lib/fog/ibm/requests/compute/get_key.rb
+++ b/lib/fog/ibm/requests/compute/get_key.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Returns details of key by name specified
#
# ==== Parameters
@@ -23,11 +22,9 @@ module Fog
:path => "/keys/#{key_name}"
)
end
-
end
class Mock
-
def get_key(key_name)
response = Excon::Response.new
if key_exists? key_name
@@ -42,7 +39,6 @@ module Fog
def key_exists?(name)
self.data[:keys].key? name
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/get_location.rb b/lib/fog/ibm/requests/compute/get_location.rb
index baa81e0..c5364ab 100644
--- a/lib/fog/ibm/requests/compute/get_location.rb
+++ b/lib/fog/ibm/requests/compute/get_location.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Get a location
#
# ==== Parameters
@@ -29,11 +28,9 @@ module Fog
:path => "/locations/#{location_id}"
)
end
-
end
class Mock
-
def get_location(location_id)
response = Excon::Response.new
if location_exists? location_id
@@ -48,7 +45,6 @@ module Fog
def location_exists?(location_id)
self.data[:locations].key? location_id
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/get_request.rb b/lib/fog/ibm/requests/compute/get_request.rb
index a569aa2..dab0a1b 100644
--- a/lib/fog/ibm/requests/compute/get_request.rb
+++ b/lib/fog/ibm/requests/compute/get_request.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Returns list of instances created with request specified by request_id
#
# ==== Parameters
@@ -39,11 +38,9 @@ module Fog
:path => "computecloud/enterprise/api/rest/20100331/requests/#{request_id}"
)
end
-
end
class Mock
-
def get_request(request_id)
response = Excon::Response.new
response.status = 200
@@ -71,7 +68,6 @@ module Fog
"owner"=>"user at example.com"}]}
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/list_address_offerings.rb b/lib/fog/ibm/requests/compute/list_address_offerings.rb
index f3a27c8..76f4c4e 100644
--- a/lib/fog/ibm/requests/compute/list_address_offerings.rb
+++ b/lib/fog/ibm/requests/compute/list_address_offerings.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Returns the offerings of static address types/pricing for the authenticated user
#
# ==== Parameters
@@ -30,11 +29,9 @@ module Fog
:path => '/offerings/address'
)
end
-
end
class Mock
-
def list_address_offerings
response = Excon::Response.new
response.status = 200
@@ -51,7 +48,6 @@ module Fog
"id"=>"20001223"}]}
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/list_addresses.rb b/lib/fog/ibm/requests/compute/list_addresses.rb
index 0ba2bff..eee3b2f 100644
--- a/lib/fog/ibm/requests/compute/list_addresses.rb
+++ b/lib/fog/ibm/requests/compute/list_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Returns the list of static IP addresses for current user
#
# ==== Parameters
@@ -27,11 +26,9 @@ module Fog
:path => '/addresses'
)
end
-
end
class Mock
-
def list_addresses
# Loop through addresses and update states and values if they aren't set
self.data[:addresses].values.each do |address|
@@ -46,7 +43,6 @@ module Fog
response.body = { 'addresses' => self.data[:addresses].values }
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/list_images.rb b/lib/fog/ibm/requests/compute/list_images.rb
index 7f66eff..ea735d8 100644
--- a/lib/fog/ibm/requests/compute/list_images.rb
+++ b/lib/fog/ibm/requests/compute/list_images.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Returns the list of Images available to be provisioned on the IBM DeveloperCloud.
#
# ==== Parameters
@@ -40,18 +39,15 @@ module Fog
:path => '/offerings/image'
)
end
-
end
class Mock
-
def list_images
response = Excon::Response.new
response.status = 200
response.body = {'images' => self.data[:images].values}
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/list_instances.rb b/lib/fog/ibm/requests/compute/list_instances.rb
index 4f8defa..55a6087 100644
--- a/lib/fog/ibm/requests/compute/list_instances.rb
+++ b/lib/fog/ibm/requests/compute/list_instances.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Returns list of instances that the authenticated user manages.
#
# ==== Parameters
@@ -39,18 +38,15 @@ module Fog
:path => '/instances'
)
end
-
end
class Mock
-
def list_instances
response = Excon::Response.new
response.status = 200
response.body = { 'instances' => self.data[:instances].values }
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/list_keys.rb b/lib/fog/ibm/requests/compute/list_keys.rb
index 2734926..1ff2ed4 100644
--- a/lib/fog/ibm/requests/compute/list_keys.rb
+++ b/lib/fog/ibm/requests/compute/list_keys.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Returns list of instances that the authenticated user manages.
#
# ==== Parameters
@@ -39,18 +38,15 @@ module Fog
:path => '/keys'
)
end
-
end
class Mock
-
def list_keys
response = Excon::Response.new
response.status = 200
response.body = {'keys' => self.data[:keys].values}
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/list_locations.rb b/lib/fog/ibm/requests/compute/list_locations.rb
index a802ee2..5215734 100644
--- a/lib/fog/ibm/requests/compute/list_locations.rb
+++ b/lib/fog/ibm/requests/compute/list_locations.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Returns the list of Images available to be provisioned on the IBM DeveloperCloud.
#
# ==== Parameters
@@ -19,18 +18,15 @@ module Fog
:path => "/locations"
)
end
-
end
class Mock
-
def list_locations
response = Excon::Response.new
response.status = 200
response.body = { "locations" => self.data[:locations].values }
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/list_vlans.rb b/lib/fog/ibm/requests/compute/list_vlans.rb
index bb4a087..3fdb58a 100644
--- a/lib/fog/ibm/requests/compute/list_vlans.rb
+++ b/lib/fog/ibm/requests/compute/list_vlans.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Returns the vlan offerings for user
#
# ==== Parameters
@@ -27,10 +26,8 @@ module Fog
:path => '/offerings/vlan'
)
end
-
end
class Mock
-
def list_vlans
response = Excon::Response.new
response.status = 200
@@ -40,7 +37,6 @@ module Fog
"name"=>"FOG-VLAN1"}]}
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/modify_instance.rb b/lib/fog/ibm/requests/compute/modify_instance.rb
index 1210999..bb73e9f 100644
--- a/lib/fog/ibm/requests/compute/modify_instance.rb
+++ b/lib/fog/ibm/requests/compute/modify_instance.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Modify an instance
#
# ==== Parameters
@@ -35,7 +34,6 @@ module Fog
end
class Mock
-
def modify_instance(instance_id, params={})
response = Excon::Response.new
if instance_exists? instance_id
@@ -64,7 +62,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/compute/modify_key.rb b/lib/fog/ibm/requests/compute/modify_key.rb
index f95287e..42c06f5 100644
--- a/lib/fog/ibm/requests/compute/modify_key.rb
+++ b/lib/fog/ibm/requests/compute/modify_key.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class IBM
class Real
-
# Modify a key
#
# ==== Parameters
@@ -21,10 +20,8 @@ module Fog
:body => params
)
end
-
end
class Mock
-
def modify_key(key_name, params={})
response = Excon::Response.new
if key_exists? key_name
@@ -45,7 +42,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/storage/create_volume.rb b/lib/fog/ibm/requests/storage/create_volume.rb
index 2ebeec8..dd34626 100644
--- a/lib/fog/ibm/requests/storage/create_volume.rb
+++ b/lib/fog/ibm/requests/storage/create_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class IBM
class Real
-
# Requests a new Storage Volume be created.
#
# ==== Parameters
@@ -43,7 +42,6 @@ module Fog
end
class Mock
-
def create_volume(name, offering_id, format, location_id, size)
volume = Fog::IBM::Mock.create_volume(name, offering_id, format, location_id, size)
self.data[:volumes][volume['id']] = volume
@@ -59,7 +57,6 @@ module Fog
ready_volume(volume_id) unless volume_attached? volume_id
self.data[:volumes][volume_id].reject { |k,v| k == 'ioPrice' }
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/storage/delete_volume.rb b/lib/fog/ibm/requests/storage/delete_volume.rb
index 7008331..d44db66 100644
--- a/lib/fog/ibm/requests/storage/delete_volume.rb
+++ b/lib/fog/ibm/requests/storage/delete_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class IBM
class Real
-
# Deletes the storage that the authenticated user manages with the specified :storage_id
#
# ==== Parameters
@@ -19,11 +18,9 @@ module Fog
:path => "/storage/#{volume_id}"
)
end
-
end
class Mock
-
def delete_volume(volume_id)
response = Excon::Response.new
if volume_exists? volume_id
@@ -35,7 +32,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/storage/get_volume.rb b/lib/fog/ibm/requests/storage/get_volume.rb
index 531bb30..6d7d2cb 100644
--- a/lib/fog/ibm/requests/storage/get_volume.rb
+++ b/lib/fog/ibm/requests/storage/get_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class IBM
class Real
-
# Used to retrieve the specified storage volume for specified volume_id
#
# ==== Parameters
@@ -18,11 +17,9 @@ module Fog
:path => "/storage/#{volume_id}"
)
end
-
end
class Mock
-
# For whatever reason, get_volume returns different data than an entry in list_volumes
def get_volume(volume_id)
response = Excon::Response.new
@@ -65,7 +62,6 @@ module Fog
# If not ready, make ready
self.data[:volumes][volume_id]['state'] = 4
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/storage/list_offerings.rb b/lib/fog/ibm/requests/storage/list_offerings.rb
index 5143e8c..2238367 100644
--- a/lib/fog/ibm/requests/storage/list_offerings.rb
+++ b/lib/fog/ibm/requests/storage/list_offerings.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class IBM
class Real
-
# Returns the offerings of storage for the authenticated user
#
# ==== Parameters
@@ -32,11 +31,9 @@ module Fog
:path => '/offerings/storage'
)
end
-
end
class Mock
-
def list_offerings
response = Excon::Response.new
response.status = 200
@@ -69,7 +66,6 @@ module Fog
"capacity"=>256}]},
response
end
-
end
end
end
diff --git a/lib/fog/ibm/requests/storage/list_volumes.rb b/lib/fog/ibm/requests/storage/list_volumes.rb
index 4e229d7..099ded3 100644
--- a/lib/fog/ibm/requests/storage/list_volumes.rb
+++ b/lib/fog/ibm/requests/storage/list_volumes.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class IBM
class Real
-
# Returns the list of storage volumes
#
# ==== Parameters
@@ -29,18 +28,15 @@ module Fog
:path => '/storage'
)
end
-
end
class Mock
-
def list_volumes
response = Excon::Response.new
response.status = 200
response.body = { 'volumes' => format_list_volumes_response }
response
end
-
end
end
end
diff --git a/lib/fog/ibm/storage.rb b/lib/fog/ibm/storage.rb
index 27851c3..430b542 100644
--- a/lib/fog/ibm/storage.rb
+++ b/lib/fog/ibm/storage.rb
@@ -3,7 +3,6 @@ require 'fog/ibm/core'
module Fog
module Storage
class IBM < Fog::Service
-
requires :ibm_username, :ibm_password
recognizes :location
@@ -42,11 +41,9 @@ module Fog
end
end
end
-
end
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {
@@ -73,9 +70,7 @@ module Fog
@ibm_password = options[:ibm_password]
@data = self.class.data[@ibm_username]
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/core.rb b/lib/fog/internet_archive/core.rb
index ec7f342..8a3218e 100644
--- a/lib/fog/internet_archive/core.rb
+++ b/lib/fog/internet_archive/core.rb
@@ -4,7 +4,6 @@ require 'fog/internet_archive/signaturev4'
module Fog
module InternetArchive
-
COMPLIANT_BUCKET_NAMES = /^(?:[a-z]|\d(?!\d{0,2}(?:\.\d{1,3}){3}$))(?:[a-z0-9]|\-(?![\.])){1,61}[a-z0-9]$/
DOMAIN_NAME = 'archive.org'
@@ -52,7 +51,7 @@ module Fog
def self.indexed_request_param(name, values)
idx = -1
- Array(values).inject({}) do |params, value|
+ Array(values).reduce({}) do |params, value|
params["#{name}.#{idx += 1}"] = value
params
end
@@ -104,7 +103,6 @@ module Fog
end
class Mock
-
def self.arn(vendor, account_id, path, region = nil)
"arn:aws:#{vendor}:#{region}:#{account_id}:#{path}"
end
@@ -206,10 +204,10 @@ module Fog
request_id.join('-')
end
class << self
- alias :reserved_instances_id :request_id
- alias :reserved_instances_offering_id :request_id
- alias :sqs_message_id :request_id
- alias :sqs_sender_id :request_id
+ alias_method :reserved_instances_id, :request_id
+ alias_method :reserved_instances_offering_id, :request_id
+ alias_method :sqs_message_id, :request_id
+ alias_method :sqs_sender_id, :request_id
end
def self.reservation_id
diff --git a/lib/fog/internet_archive/models/storage/directories.rb b/lib/fog/internet_archive/models/storage/directories.rb
index c1a0790..34c4080 100644
--- a/lib/fog/internet_archive/models/storage/directories.rb
+++ b/lib/fog/internet_archive/models/storage/directories.rb
@@ -4,9 +4,7 @@ require 'fog/internet_archive/models/storage/directory'
module Fog
module Storage
class InternetArchive
-
class Directories < Fog::Collection
-
model Fog::Storage::InternetArchive::Directory
def all
@@ -35,9 +33,7 @@ module Fog
rescue Excon::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/models/storage/directory.rb b/lib/fog/internet_archive/models/storage/directory.rb
index 167d730..2e5d1fa 100644
--- a/lib/fog/internet_archive/models/storage/directory.rb
+++ b/lib/fog/internet_archive/models/storage/directory.rb
@@ -5,9 +5,7 @@ require 'fog/internet_archive/models/storage/ia_attributes.rb'
module Fog
module Storage
class InternetArchive
-
class Directory < Fog::Model
-
extend Fog::Storage::IAAttributes::ClassMethods
include Fog::Storage::IAAttributes::InstanceMethods
@@ -101,9 +99,7 @@ module Fog
data = service.get_bucket_location(key)
data.body['LocationConstraint']
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/models/storage/file.rb b/lib/fog/internet_archive/models/storage/file.rb
index c83a4a1..41d99b5 100644
--- a/lib/fog/internet_archive/models/storage/file.rb
+++ b/lib/fog/internet_archive/models/storage/file.rb
@@ -4,9 +4,7 @@ require 'fog/internet_archive/models/storage/ia_attributes.rb'
module Fog
module Storage
class InternetArchive
-
class File < Fog::Model
-
extend Fog::Storage::IAAttributes::ClassMethods
include Fog::Storage::IAAttributes::InstanceMethods
@@ -18,7 +16,6 @@ module Fog
attr_writer :body
-
identity :key, :aliases => 'Key'
attribute :cache_control, :aliases => 'Cache-Control'
@@ -66,7 +63,6 @@ module Fog
end
end
-
# Set body attribute.
#
# @param [File] new_body
@@ -76,7 +72,6 @@ module Fog
attributes[:body] = new_body
end
-
# Get the file instance's directory.
#
# @return [Fog::InternetArchive::Storage::Directory]
@@ -85,7 +80,6 @@ module Fog
@directory
end
-
# Copy object from one bucket to other bucket.
#
# required attributes: directory, key
@@ -102,7 +96,6 @@ module Fog
target_directory.files.head(target_file_key)
end
-
# Destroy file via http DELETE.
#
# required attributes: directory, key
@@ -127,7 +120,6 @@ module Fog
merge_attributes(new_metadata)
end
-
remove_method :owner=
def owner=(new_owner)
if new_owner
@@ -138,7 +130,6 @@ module Fog
end
end
-
# Set Access-Control-List permissions.
#
# valid new_publics: public_read, private
@@ -150,7 +141,6 @@ module Fog
'public-read'
end
-
# Get publicly acessible url via http GET.
#
# required attributes: directory, key
@@ -212,7 +202,6 @@ module Fog
true
end
-
# Get a url for file.
#
# required attributes: key
@@ -259,9 +248,7 @@ module Fog
# Complete the upload
service.complete_multipart_upload(directory.key, key, upload_id, part_tags)
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/models/storage/files.rb b/lib/fog/internet_archive/models/storage/files.rb
index 267db71..b307513 100644
--- a/lib/fog/internet_archive/models/storage/files.rb
+++ b/lib/fog/internet_archive/models/storage/files.rb
@@ -4,7 +4,6 @@ require 'fog/internet_archive/models/storage/file'
module Fog
module Storage
class InternetArchive
-
class Files < Fog::Collection
extend Fog::Deprecation
deprecate :get_url, :get_https_url
@@ -41,7 +40,7 @@ module Fog
end
end
- alias :each_file_this_page :each
+ alias_method :each_file_this_page, :each
def each
if !block_given?
self
@@ -114,9 +113,7 @@ module Fog
data.headers['Last-Modified'] = Time.parse(data.get_header('Last-Modified'))
data.headers['ETag'] = data.get_header('ETag').gsub('"','')
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/models/storage/ia_attributes.rb b/lib/fog/internet_archive/models/storage/ia_attributes.rb
index fe56554..9c26fab 100644
--- a/lib/fog/internet_archive/models/storage/ia_attributes.rb
+++ b/lib/fog/internet_archive/models/storage/ia_attributes.rb
@@ -1,7 +1,6 @@
module Fog
module Storage
module IAAttributes
-
# you can add other x-archive-metadata-* values, but these are standard
IA_STANDARD_METADATA_FIELDS = %q[hidden, title, collection, creator, mediatype, description, date, subject, licenseurl, pick, noindex, notes, rights, contributor, language, coverage, credits]
@@ -10,7 +9,7 @@ module Fog
module ClassMethods
def ia_metadata_attribute(name)
- attribute(name, :aliases=>['amz','archive'].collect{|p|"x-#{p}-#{name.to_s.tr('_','-')}"})
+ attribute(name, :aliases=>['amz','archive'].map{|p|"x-#{p}-#{name.to_s.tr('_','-')}"})
end
end
@@ -18,7 +17,7 @@ module Fog
# set_metadata_array_headers(:collections, options)
def set_metadata_array_headers(array_attribute, options={})
attr_values = Array(self.send(array_attribute))
- opt_values = options.collect do |key,value|
+ opt_values = options.map do |key,value|
options.delete(key) if (key.to_s =~ /^x-(amz||archive)-meta(\d*)-#{array_attribute.to_s[0..-2]}/)
end
values = (attr_values + opt_values).compact.sort.uniq
@@ -30,10 +29,8 @@ module Fog
options["x-archive-meta#{format("%02d", i+1)}-#{array_attribute.to_s[0..-2]}"] = value
end
end
-
end
end
-
end
end
end
diff --git a/lib/fog/internet_archive/parsers/storage/access_control_list.rb b/lib/fog/internet_archive/parsers/storage/access_control_list.rb
index 900757c..c3b96fd 100644
--- a/lib/fog/internet_archive/parsers/storage/access_control_list.rb
+++ b/lib/fog/internet_archive/parsers/storage/access_control_list.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module InternetArchive
-
class AccessControlList < Fog::Parsers::Base
-
def reset
@in_access_control_list = false
@grant = { 'Grantee' => {} }
@@ -37,9 +35,7 @@ module Fog
@grant['Grantee'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/parsers/storage/complete_multipart_upload.rb b/lib/fog/internet_archive/parsers/storage/complete_multipart_upload.rb
index 432870f..a9dbf0e 100644
--- a/lib/fog/internet_archive/parsers/storage/complete_multipart_upload.rb
+++ b/lib/fog/internet_archive/parsers/storage/complete_multipart_upload.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module InternetArchive
-
class CompleteMultipartUpload < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/parsers/storage/copy_object.rb b/lib/fog/internet_archive/parsers/storage/copy_object.rb
index 5cc58a1..cd02e32 100644
--- a/lib/fog/internet_archive/parsers/storage/copy_object.rb
+++ b/lib/fog/internet_archive/parsers/storage/copy_object.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module InternetArchive
-
class CopyObject < Fog::Parsers::Base
-
def end_element(name)
case name
when 'ETag'
@@ -13,9 +11,7 @@ module Fog
@response[name] = Time.parse(value)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/parsers/storage/cors_configuration.rb b/lib/fog/internet_archive/parsers/storage/cors_configuration.rb
index 8d0b615..9cd3b0d 100644
--- a/lib/fog/internet_archive/parsers/storage/cors_configuration.rb
+++ b/lib/fog/internet_archive/parsers/storage/cors_configuration.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Storage
module InternetArchive
-
class CorsConfiguration < Fog::Parsers::Base
def reset
@in_cors_configuration_list = false
@@ -32,9 +31,7 @@ module Fog
(@cors_rule[name] ||= []) << value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/parsers/storage/delete_multiple_objects.rb b/lib/fog/internet_archive/parsers/storage/delete_multiple_objects.rb
index 0ff7de3..0e93418 100644
--- a/lib/fog/internet_archive/parsers/storage/delete_multiple_objects.rb
+++ b/lib/fog/internet_archive/parsers/storage/delete_multiple_objects.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module InternetArchive
-
class DeleteMultipleObjects < Fog::Parsers::Base
-
def reset
@deleted = { 'Deleted' => {} }
@error = { 'Error' => {} }
@@ -40,11 +38,8 @@ module Fog
@error['Error'][name] = value
end
end
-
end
-
end
end
end
end
-
diff --git a/lib/fog/internet_archive/parsers/storage/get_bucket.rb b/lib/fog/internet_archive/parsers/storage/get_bucket.rb
index 8866772..d82012e 100644
--- a/lib/fog/internet_archive/parsers/storage/get_bucket.rb
+++ b/lib/fog/internet_archive/parsers/storage/get_bucket.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module InternetArchive
-
class GetBucket < Fog::Parsers::Base
-
def reset
@object = { 'Owner' => {} }
@response = { 'Contents' => [], 'CommonPrefixes' => [] }
@@ -53,9 +51,7 @@ module Fog
@object[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/parsers/storage/get_bucket_lifecycle.rb b/lib/fog/internet_archive/parsers/storage/get_bucket_lifecycle.rb
index 6ae5dac..4b2e8bc 100644
--- a/lib/fog/internet_archive/parsers/storage/get_bucket_lifecycle.rb
+++ b/lib/fog/internet_archive/parsers/storage/get_bucket_lifecycle.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module InternetArchive
-
class GetBucketLifecycle < Fog::Parsers::Base
-
def reset
@expiration = {}
@transition = {}
diff --git a/lib/fog/internet_archive/parsers/storage/get_bucket_location.rb b/lib/fog/internet_archive/parsers/storage/get_bucket_location.rb
index 393cf6c..5803873 100644
--- a/lib/fog/internet_archive/parsers/storage/get_bucket_location.rb
+++ b/lib/fog/internet_archive/parsers/storage/get_bucket_location.rb
@@ -2,18 +2,14 @@ module Fog
module Parsers
module Storage
module InternetArchive
-
class GetBucketLocation < Fog::Parsers::Base
-
def end_element(name)
case name
when 'LocationConstraint'
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/parsers/storage/get_bucket_logging.rb b/lib/fog/internet_archive/parsers/storage/get_bucket_logging.rb
index d495228..0978cde 100644
--- a/lib/fog/internet_archive/parsers/storage/get_bucket_logging.rb
+++ b/lib/fog/internet_archive/parsers/storage/get_bucket_logging.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module InternetArchive
-
class GetBucketLogging < Fog::Parsers::Base
-
def reset
@grant = { 'Grantee' => {} }
@response = { 'BucketLoggingStatus' => {} }
@@ -31,9 +29,7 @@ module Fog
@grant['Grantee'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/parsers/storage/get_bucket_website.rb b/lib/fog/internet_archive/parsers/storage/get_bucket_website.rb
index 7d50089..d1def46 100644
--- a/lib/fog/internet_archive/parsers/storage/get_bucket_website.rb
+++ b/lib/fog/internet_archive/parsers/storage/get_bucket_website.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module InternetArchive
-
class GetBucketWebsite < Fog::Parsers::Base
-
def reset
@response = { 'ErrorDocument' => {}, 'IndexDocument' => {} }
end
@@ -17,9 +15,7 @@ module Fog
@response['IndexDocument'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/parsers/storage/get_request_payment.rb b/lib/fog/internet_archive/parsers/storage/get_request_payment.rb
index 20855d4..b2f680c 100644
--- a/lib/fog/internet_archive/parsers/storage/get_request_payment.rb
+++ b/lib/fog/internet_archive/parsers/storage/get_request_payment.rb
@@ -2,18 +2,14 @@ module Fog
module Parsers
module Storage
module InternetArchive
-
class GetRequestPayment < Fog::Parsers::Base
-
def end_element(name)
case name
when 'Payer'
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/parsers/storage/get_service.rb b/lib/fog/internet_archive/parsers/storage/get_service.rb
index 401b2db..ccd0aee 100644
--- a/lib/fog/internet_archive/parsers/storage/get_service.rb
+++ b/lib/fog/internet_archive/parsers/storage/get_service.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module InternetArchive
-
class GetService < Fog::Parsers::Base
-
def reset
@bucket = {}
@response = { 'Owner' => {}, 'Buckets' => [] }
@@ -23,9 +21,7 @@ module Fog
@bucket[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/parsers/storage/initiate_multipart_upload.rb b/lib/fog/internet_archive/parsers/storage/initiate_multipart_upload.rb
index f5e439d..584b7ec 100644
--- a/lib/fog/internet_archive/parsers/storage/initiate_multipart_upload.rb
+++ b/lib/fog/internet_archive/parsers/storage/initiate_multipart_upload.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module InternetArchive
-
class InitiateMultipartUpload < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/parsers/storage/list_multipart_uploads.rb b/lib/fog/internet_archive/parsers/storage/list_multipart_uploads.rb
index 82fbd27..6792796 100644
--- a/lib/fog/internet_archive/parsers/storage/list_multipart_uploads.rb
+++ b/lib/fog/internet_archive/parsers/storage/list_multipart_uploads.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module InternetArchive
-
class ListMultipartUploads < Fog::Parsers::Base
-
def reset
@upload = { 'Initiator' => {}, 'Owner' => {} }
@response = { 'Upload' => [] }
@@ -47,9 +45,7 @@ module Fog
@upload = { 'Initiator' => {}, 'Owner' => {} }
end
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/parsers/storage/list_parts.rb b/lib/fog/internet_archive/parsers/storage/list_parts.rb
index 229ee7c..d779fc8 100644
--- a/lib/fog/internet_archive/parsers/storage/list_parts.rb
+++ b/lib/fog/internet_archive/parsers/storage/list_parts.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Storage
module InternetArchive
-
class ListParts < Fog::Parsers::Base
-
def reset
@part = {}
@response = { 'Initiator' => {}, 'Part' => [] }
@@ -31,9 +29,7 @@ module Fog
@part[name] = value.to_i
end
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/abort_multipart_upload.rb b/lib/fog/internet_archive/requests/storage/abort_multipart_upload.rb
index 6a1e345..f57c398 100644
--- a/lib/fog/internet_archive/requests/storage/abort_multipart_upload.rb
+++ b/lib/fog/internet_archive/requests/storage/abort_multipart_upload.rb
@@ -21,7 +21,6 @@ module Fog
:query => {'uploadId' => upload_id}
})
end
-
end # Real
end # Storage
end # InternetArchive
diff --git a/lib/fog/internet_archive/requests/storage/acl_utils.rb b/lib/fog/internet_archive/requests/storage/acl_utils.rb
index 1523a33..11dc8cd 100644
--- a/lib/fog/internet_archive/requests/storage/acl_utils.rb
+++ b/lib/fog/internet_archive/requests/storage/acl_utils.rb
@@ -1,7 +1,6 @@
module Fog
module Storage
class InternetArchive
-
require 'fog/internet_archive/parsers/storage/access_control_list'
private
@@ -22,11 +21,11 @@ module Fog
data << " <Grant>\n"
grantee = grant['Grantee']
type = case
- when grantee.has_key?('ID')
+ when grantee.key?('ID')
'CanonicalUser'
- when grantee.has_key?('EmailAddress')
+ when grantee.key?('EmailAddress')
'AmazonCustomerByEmail'
- when grantee.has_key?('URI')
+ when grantee.key?('URI')
'Group'
end
@@ -56,7 +55,6 @@ module Fog
Nokogiri::XML::SAX::Parser.new(parser).parse(acl_xml)
parser.response
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/complete_multipart_upload.rb b/lib/fog/internet_archive/requests/storage/complete_multipart_upload.rb
index f6e2c63..99daec0 100644
--- a/lib/fog/internet_archive/requests/storage/complete_multipart_upload.rb
+++ b/lib/fog/internet_archive/requests/storage/complete_multipart_upload.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/complete_multipart_upload'
# Complete a multipart upload
@@ -41,7 +40,6 @@ module Fog
:query => {'uploadId' => upload_id}
})
end
-
end # Real
end # Storage
end # InternetArchive
diff --git a/lib/fog/internet_archive/requests/storage/copy_object.rb b/lib/fog/internet_archive/requests/storage/copy_object.rb
index ee5a95d..5b86e31 100644
--- a/lib/fog/internet_archive/requests/storage/copy_object.rb
+++ b/lib/fog/internet_archive/requests/storage/copy_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/copy_object'
# Copy an object from one S3 bucket to another
@@ -39,11 +38,9 @@ module Fog
:path => CGI.escape(target_object_name)
})
end
-
end
class Mock # :nodoc:all
-
def copy_object(source_bucket_name, source_object_name, target_bucket_name, target_object_name, options = {})
response = Excon::Response.new
source_bucket = self.data[:buckets][source_bucket_name]
@@ -74,7 +71,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/cors_utils.rb b/lib/fog/internet_archive/requests/storage/cors_utils.rb
index b2b8001..d56d25d 100644
--- a/lib/fog/internet_archive/requests/storage/cors_utils.rb
+++ b/lib/fog/internet_archive/requests/storage/cors_utils.rb
@@ -1,7 +1,6 @@
module Fog
module Storage
class InternetArchive
-
require 'fog/internet_archive/parsers/storage/cors_configuration'
private
@@ -35,7 +34,6 @@ module Fog
Nokogiri::XML::SAX::Parser.new(parser).parse(cors_xml)
parser.response
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/delete_bucket.rb b/lib/fog/internet_archive/requests/storage/delete_bucket.rb
index 91f6049..b6166c6 100644
--- a/lib/fog/internet_archive/requests/storage/delete_bucket.rb
+++ b/lib/fog/internet_archive/requests/storage/delete_bucket.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Delete an S3 bucket
#
# @param bucket_name [String] name of bucket to delete
@@ -20,11 +19,9 @@ module Fog
:method => 'DELETE'
})
end
-
end
class Mock # :nodoc:all
-
def delete_bucket(bucket_name)
response = Excon::Response.new
if self.data[:buckets][bucket_name].nil?
@@ -39,9 +36,7 @@ module Fog
end
response
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/delete_bucket_cors.rb b/lib/fog/internet_archive/requests/storage/delete_bucket_cors.rb
index 6ec2121..b880beb 100644
--- a/lib/fog/internet_archive/requests/storage/delete_bucket_cors.rb
+++ b/lib/fog/internet_archive/requests/storage/delete_bucket_cors.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Deletes the cors configuration information set for the bucket.
#
# @param bucket_name [String] name of bucket to delete cors rules from
@@ -21,9 +20,7 @@ module Fog
:query => {'cors' => nil}
})
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/delete_bucket_lifecycle.rb b/lib/fog/internet_archive/requests/storage/delete_bucket_lifecycle.rb
index 3a6b1e2..e07af56 100644
--- a/lib/fog/internet_archive/requests/storage/delete_bucket_lifecycle.rb
+++ b/lib/fog/internet_archive/requests/storage/delete_bucket_lifecycle.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Delete lifecycle configuration for a bucket
#
# @param bucket_name [String] name of bucket to delete lifecycle configuration from
diff --git a/lib/fog/internet_archive/requests/storage/delete_bucket_policy.rb b/lib/fog/internet_archive/requests/storage/delete_bucket_policy.rb
index 9cf6d20..d528434 100644
--- a/lib/fog/internet_archive/requests/storage/delete_bucket_policy.rb
+++ b/lib/fog/internet_archive/requests/storage/delete_bucket_policy.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Delete policy for a bucket
#
# @param bucket_name [String] name of bucket to delete policy from
@@ -21,9 +20,7 @@ module Fog
:query => {'policy' => nil}
})
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/delete_bucket_website.rb b/lib/fog/internet_archive/requests/storage/delete_bucket_website.rb
index 7c90bb6..748f444 100644
--- a/lib/fog/internet_archive/requests/storage/delete_bucket_website.rb
+++ b/lib/fog/internet_archive/requests/storage/delete_bucket_website.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Delete website configuration for a bucket
#
# @param bucket_name [String] name of bucket to delete website configuration from
@@ -21,9 +20,7 @@ module Fog
:query => {'website' => nil}
})
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/delete_multiple_objects.rb b/lib/fog/internet_archive/requests/storage/delete_multiple_objects.rb
index f076892..362bab7 100644
--- a/lib/fog/internet_archive/requests/storage/delete_multiple_objects.rb
+++ b/lib/fog/internet_archive/requests/storage/delete_multiple_objects.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/delete_multiple_objects'
# Delete multiple objects from S3
@@ -56,11 +55,9 @@ module Fog
:query => {'delete' => nil}
})
end
-
end
class Mock # :nodoc:all
-
def delete_multiple_objects(bucket_name, object_names, options = {})
response = Excon::Response.new
if bucket = self.data[:buckets][bucket_name]
@@ -85,9 +82,7 @@ module Fog
response['Deleted'] = { 'Key' => object_name }
response
end
-
end
end
end
end
-
diff --git a/lib/fog/internet_archive/requests/storage/delete_object.rb b/lib/fog/internet_archive/requests/storage/delete_object.rb
index a5a6eb4..856bc51 100644
--- a/lib/fog/internet_archive/requests/storage/delete_object.rb
+++ b/lib/fog/internet_archive/requests/storage/delete_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Delete an object from S3
#
# @param bucket_name [String] Name of bucket containing object to delete
@@ -26,11 +25,9 @@ module Fog
:path => path
})
end
-
end
class Mock # :nodoc:all
-
def delete_object(bucket_name, object_name, options = {})
response = Excon::Response.new
if bucket = self.data[:buckets][bucket_name]
@@ -43,7 +40,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/get_bucket.rb b/lib/fog/internet_archive/requests/storage/get_bucket.rb
index 8078d4d..7fdb6de 100644
--- a/lib/fog/internet_archive/requests/storage/get_bucket.rb
+++ b/lib/fog/internet_archive/requests/storage/get_bucket.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/get_bucket'
# List information about objects in an S3 bucket
@@ -51,11 +50,9 @@ module Fog
:query => options
})
end
-
end
class Mock # :nodoc:all
-
def get_bucket(bucket_name, options = {})
prefix, marker, delimiter, max_keys = \
options['prefix'], options['marker'], options['delimiter'], options['max-keys']
@@ -66,12 +63,12 @@ module Fog
end
response = Excon::Response.new
if bucket = self.data[:buckets][bucket_name]
- contents = bucket[:objects].values.collect(&:first).sort {|x,y| x['Key'] <=> y['Key']}.reject do |object|
+ contents = bucket[:objects].values.map(&:first).sort {|x,y| x['Key'] <=> y['Key']}.reject do |object|
(prefix && object['Key'][0...prefix.length] != prefix) ||
(marker && object['Key'] <= marker) ||
(delimiter && object['Key'][(prefix ? prefix.length : 0)..-1].include?(delimiter) \
&& common_prefixes << object['Key'].sub(/^(#{prefix}[^#{delimiter}]+.).*/, '\1')) ||
- object.has_key?(:delete_marker)
+ object.key?(:delete_marker)
end.map do |object|
data = object.reject {|key, value| !['ETag', 'Key', 'StorageClass'].include?(key)}
data.merge!({
@@ -105,7 +102,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/get_bucket_acl.rb b/lib/fog/internet_archive/requests/storage/get_bucket_acl.rb
index 709a684..aae0875 100644
--- a/lib/fog/internet_archive/requests/storage/get_bucket_acl.rb
+++ b/lib/fog/internet_archive/requests/storage/get_bucket_acl.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/access_control_list'
# Get access control list for an S3 bucket
@@ -40,11 +39,9 @@ module Fog
:query => {'acl' => nil}
})
end
-
end
class Mock # :nodoc:all
-
require 'fog/internet_archive/requests/storage/acl_utils'
def get_bucket_acl(bucket_name)
@@ -62,7 +59,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/get_bucket_cors.rb b/lib/fog/internet_archive/requests/storage/get_bucket_cors.rb
index 4cd1e22..86e4ecd 100644
--- a/lib/fog/internet_archive/requests/storage/get_bucket_cors.rb
+++ b/lib/fog/internet_archive/requests/storage/get_bucket_cors.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/cors_configuration'
# Gets the CORS configuration for an S3 bucket
@@ -36,11 +35,9 @@ module Fog
:query => {'cors' => nil}
})
end
-
end
class Mock # :nodoc:all
-
require 'fog/internet_archive/requests/storage/cors_utils'
def get_bucket_cors(bucket_name)
@@ -58,7 +55,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/get_bucket_lifecycle.rb b/lib/fog/internet_archive/requests/storage/get_bucket_lifecycle.rb
index 67176f0..2845854 100644
--- a/lib/fog/internet_archive/requests/storage/get_bucket_lifecycle.rb
+++ b/lib/fog/internet_archive/requests/storage/get_bucket_lifecycle.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/get_bucket_lifecycle'
# Get bucket lifecycle configuration
@@ -30,9 +29,7 @@ module Fog
:query => {'lifecycle' => nil}
})
end
-
end
end
end
end
-
diff --git a/lib/fog/internet_archive/requests/storage/get_bucket_location.rb b/lib/fog/internet_archive/requests/storage/get_bucket_location.rb
index fffbe5e..2e1ef0b 100644
--- a/lib/fog/internet_archive/requests/storage/get_bucket_location.rb
+++ b/lib/fog/internet_archive/requests/storage/get_bucket_location.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/get_bucket_location'
# Get location constraint for an S3 bucket
@@ -26,11 +25,9 @@ module Fog
:query => {'location' => nil}
})
end
-
end
class Mock # :nodoc:all
-
def get_bucket_location(bucket_name)
response = Excon::Response.new
if bucket = self.data[:buckets][bucket_name]
@@ -51,7 +48,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/get_bucket_logging.rb b/lib/fog/internet_archive/requests/storage/get_bucket_logging.rb
index 18bfbed..1ebd808 100644
--- a/lib/fog/internet_archive/requests/storage/get_bucket_logging.rb
+++ b/lib/fog/internet_archive/requests/storage/get_bucket_logging.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/get_bucket_logging'
# Get logging status for an S3 bucket
@@ -40,7 +39,6 @@ module Fog
:query => {'logging' => nil}
})
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/get_bucket_policy.rb b/lib/fog/internet_archive/requests/storage/get_bucket_policy.rb
index d021e8a..10f9699 100644
--- a/lib/fog/internet_archive/requests/storage/get_bucket_policy.rb
+++ b/lib/fog/internet_archive/requests/storage/get_bucket_policy.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Get bucket policy for an S3 bucket
#
# @param bucket_name [String] name of bucket to get policy for
@@ -26,9 +25,7 @@ module Fog
})
response.body = Fog::JSON.decode(response.body) unless response.body.nil?
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/get_bucket_website.rb b/lib/fog/internet_archive/requests/storage/get_bucket_website.rb
index f359730..1ed3d64 100644
--- a/lib/fog/internet_archive/requests/storage/get_bucket_website.rb
+++ b/lib/fog/internet_archive/requests/storage/get_bucket_website.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/get_bucket_website'
# Get website configuration for an S3 bucket
@@ -33,7 +32,6 @@ module Fog
:query => {'website' => nil}
})
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/get_object.rb b/lib/fog/internet_archive/requests/storage/get_object.rb
index 1cbeed7..e2decd9 100644
--- a/lib/fog/internet_archive/requests/storage/get_object.rb
+++ b/lib/fog/internet_archive/requests/storage/get_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Get an object from S3
#
# @param bucket_name [String] Name of bucket to read from
@@ -53,13 +52,10 @@ module Fog
:path => CGI.escape(object_name),
}))
end
-
end
class Mock # :nodoc:all
-
def get_object(bucket_name, object_name, options = {}, &block)
-
unless bucket_name
raise ArgumentError.new('bucket_name is required')
end
@@ -71,7 +67,7 @@ module Fog
response = Excon::Response.new
if (bucket = self.data[:buckets][bucket_name])
object = nil
- if bucket[:objects].has_key?(object_name)
+ if bucket[:objects].key?(object_name)
object = bucket[:objects][object_name].first
end
diff --git a/lib/fog/internet_archive/requests/storage/get_object_acl.rb b/lib/fog/internet_archive/requests/storage/get_object_acl.rb
index 4850027..c09c9dc 100644
--- a/lib/fog/internet_archive/requests/storage/get_object_acl.rb
+++ b/lib/fog/internet_archive/requests/storage/get_object_acl.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/access_control_list'
# Get access control list for an S3 object
@@ -47,11 +46,9 @@ module Fog
:query => query
})
end
-
end
class Mock # :nodoc:all
-
require 'fog/internet_archive/requests/storage/acl_utils'
def get_object_acl(bucket_name, object_name, options = {})
@@ -69,7 +66,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/get_object_http_url.rb b/lib/fog/internet_archive/requests/storage/get_object_http_url.rb
index c43e561..4268eac 100644
--- a/lib/fog/internet_archive/requests/storage/get_object_http_url.rb
+++ b/lib/fog/internet_archive/requests/storage/get_object_http_url.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class InternetArchive
-
module GetObjectHttpUrl
-
def get_object_http_url(bucket_name, object_name, expires, options = {})
unless bucket_name
raise ArgumentError.new('bucket_name is required')
@@ -25,11 +23,9 @@ module Fog
:query => options[:query]
}, expires)
end
-
end
class Real
-
# Get an expiring object http url from S3
#
# @param bucket_name [String] Name of bucket containing object
@@ -42,13 +38,10 @@ module Fog
# @see http://docs.amazonwebservices.com/AmazonS3/latest/dev/S3_QSAuth.html
include GetObjectHttpUrl
-
end
class Mock # :nodoc:all
-
include GetObjectHttpUrl
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/get_object_https_url.rb b/lib/fog/internet_archive/requests/storage/get_object_https_url.rb
index 94c24ed..0b39379 100644
--- a/lib/fog/internet_archive/requests/storage/get_object_https_url.rb
+++ b/lib/fog/internet_archive/requests/storage/get_object_https_url.rb
@@ -1,17 +1,13 @@
module Fog
module Storage
class InternetArchive
-
module GetObjectHttpsUrl
-
def get_object_https_url(bucket_name, object_name, expires, options = {})
get_object_url(bucket_name, object_name, expires, options.merge(:scheme => 'https'))
end
-
end
class Real
-
# Get an expiring object https url from S3
#
# @param bucket_name [String] Name of bucket containing object
@@ -24,13 +20,10 @@ module Fog
# @see http://docs.amazonwebservices.com/AmazonS3/latest/dev/S3_QSAuth.html
include GetObjectHttpsUrl
-
end
class Mock # :nodoc:all
-
include GetObjectHttpsUrl
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/get_object_torrent.rb b/lib/fog/internet_archive/requests/storage/get_object_torrent.rb
index 1231d87..6115d0c 100644
--- a/lib/fog/internet_archive/requests/storage/get_object_torrent.rb
+++ b/lib/fog/internet_archive/requests/storage/get_object_torrent.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Get torrent for an S3 object
#
# @param bucket_name [String] name of bucket containing object
@@ -40,7 +39,6 @@ module Fog
:query => {'torrent' => nil}
})
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/get_object_url.rb b/lib/fog/internet_archive/requests/storage/get_object_url.rb
index 1deb2f3..3bf9592 100644
--- a/lib/fog/internet_archive/requests/storage/get_object_url.rb
+++ b/lib/fog/internet_archive/requests/storage/get_object_url.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class InternetArchive
-
module GetObjectUrl
-
def get_object_url(bucket_name, object_name, expires, options = {})
unless bucket_name
raise ArgumentError.new('bucket_name is required')
@@ -29,7 +27,6 @@ module Fog
end
class Real
-
# Get an expiring object url from S3
#
# @param bucket_name [String] Name of bucket containing object
@@ -42,13 +39,10 @@ module Fog
# @see http://docs.amazonwebservices.com/AmazonS3/latest/dev/S3_QSAuth.html
include GetObjectUrl
-
end
class Mock # :nodoc:all
-
include GetObjectUrl
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/get_request_payment.rb b/lib/fog/internet_archive/requests/storage/get_request_payment.rb
index 5babd5a..6a90ff5 100644
--- a/lib/fog/internet_archive/requests/storage/get_request_payment.rb
+++ b/lib/fog/internet_archive/requests/storage/get_request_payment.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/get_request_payment'
# Get configured payer for an S3 bucket
@@ -26,11 +25,9 @@ module Fog
:query => {'requestPayment' => nil}
})
end
-
end
class Mock # :nodoc:all
-
def get_request_payment(bucket_name)
response = Excon::Response.new
if bucket = self.data[:buckets][bucket_name]
@@ -42,7 +39,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/get_service.rb b/lib/fog/internet_archive/requests/storage/get_service.rb
index 6525dc2..469a2be 100644
--- a/lib/fog/internet_archive/requests/storage/get_service.rb
+++ b/lib/fog/internet_archive/requests/storage/get_service.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/get_service'
# List information about S3 buckets for authorized user
@@ -28,11 +27,9 @@ module Fog
:parser => Fog::Parsers::Storage::InternetArchive::GetService.new
})
end
-
end
class Mock # :nodoc:all
-
def get_service
response = Excon::Response.new
response.headers['Status'] = 200
@@ -47,7 +44,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/head_object.rb b/lib/fog/internet_archive/requests/storage/head_object.rb
index 628d4e2..036ce54 100644
--- a/lib/fog/internet_archive/requests/storage/head_object.rb
+++ b/lib/fog/internet_archive/requests/storage/head_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Get headers for an object from S3
#
# @param bucket_name [String] Name of bucket to read from
@@ -44,17 +43,14 @@ module Fog
:path => CGI.escape(object_name)
})
end
-
end
class Mock # :nodoc:all
-
def head_object(bucket_name, object_name, options = {})
response = get_object(bucket_name, object_name, options)
response.body = nil
response
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/initiate_multipart_upload.rb b/lib/fog/internet_archive/requests/storage/initiate_multipart_upload.rb
index b84d7d0..5991008 100644
--- a/lib/fog/internet_archive/requests/storage/initiate_multipart_upload.rb
+++ b/lib/fog/internet_archive/requests/storage/initiate_multipart_upload.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/initiate_multipart_upload'
# Initiate a multipart upload to an S3 bucket
@@ -37,7 +36,6 @@ module Fog
:query => {'uploads' => nil}
})
end
-
end # Real
end # Storage
end # InternetArchive
diff --git a/lib/fog/internet_archive/requests/storage/list_multipart_uploads.rb b/lib/fog/internet_archive/requests/storage/list_multipart_uploads.rb
index 65dab3c..2f6cea9 100644
--- a/lib/fog/internet_archive/requests/storage/list_multipart_uploads.rb
+++ b/lib/fog/internet_archive/requests/storage/list_multipart_uploads.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/list_multipart_uploads'
# List multipart uploads for a bucket
@@ -47,7 +46,6 @@ module Fog
:query => options.merge!({'uploads' => nil})
})
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/list_parts.rb b/lib/fog/internet_archive/requests/storage/list_parts.rb
index b3c4485..b636585 100644
--- a/lib/fog/internet_archive/requests/storage/list_parts.rb
+++ b/lib/fog/internet_archive/requests/storage/list_parts.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/parsers/storage/list_parts'
# List parts for a multipart upload
@@ -48,7 +47,6 @@ module Fog
:query => options.merge!({'uploadId' => upload_id})
})
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/post_object_hidden_fields.rb b/lib/fog/internet_archive/requests/storage/post_object_hidden_fields.rb
index 9d1b66a..054c01e 100644
--- a/lib/fog/internet_archive/requests/storage/post_object_hidden_fields.rb
+++ b/lib/fog/internet_archive/requests/storage/post_object_hidden_fields.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Get a hash of hidden fields for form uploading to S3, in the form {:field_name => :field_value}
# Form should look like: <form action="http://#{bucket_name}.#{Fog::InternetArchive::API_DOMAIN_NAME}/" method="post" enctype="multipart/form-data">
# These hidden fields should then appear, followed by a field named 'file' which is either a textarea or file input.
@@ -31,7 +30,6 @@ module Fog
end
options
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/put_bucket.rb b/lib/fog/internet_archive/requests/storage/put_bucket.rb
index a447d5c..bcdce73 100644
--- a/lib/fog/internet_archive/requests/storage/put_bucket.rb
+++ b/lib/fog/internet_archive/requests/storage/put_bucket.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Create an S3 bucket
#
# @param bucket_name [String] name of bucket to create
@@ -35,11 +34,9 @@ DATA
:method => 'PUT'
})
end
-
end
class Mock # :nodoc:all
-
def put_bucket(bucket_name, options = {})
acl = options['x-amz-acl'] || 'private'
if !['private', 'public-read', 'public-read-write', 'authenticated-read'].include?(acl)
@@ -67,7 +64,6 @@ DATA
end
response
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/put_bucket_acl.rb b/lib/fog/internet_archive/requests/storage/put_bucket_acl.rb
index 08ab7fe..77c7496 100644
--- a/lib/fog/internet_archive/requests/storage/put_bucket_acl.rb
+++ b/lib/fog/internet_archive/requests/storage/put_bucket_acl.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/requests/storage/acl_utils'
# Change access control list for an S3 bucket
@@ -65,7 +64,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/put_bucket_cors.rb b/lib/fog/internet_archive/requests/storage/put_bucket_cors.rb
index 6644806..80732cc 100644
--- a/lib/fog/internet_archive/requests/storage/put_bucket_cors.rb
+++ b/lib/fog/internet_archive/requests/storage/put_bucket_cors.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/requests/storage/cors_utils'
# Sets the cors configuration for your bucket. If the configuration exists, Amazon S3 replaces it.
@@ -43,7 +42,6 @@ module Fog
self.data[:cors][:bucket][bucket_name] = Fog::Storage::InternetArchive.hash_to_cors(cors)
end
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/put_bucket_lifecycle.rb b/lib/fog/internet_archive/requests/storage/put_bucket_lifecycle.rb
index 7f5e28d..f38a7c8 100644
--- a/lib/fog/internet_archive/requests/storage/put_bucket_lifecycle.rb
+++ b/lib/fog/internet_archive/requests/storage/put_bucket_lifecycle.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Change lifecycle configuration for an S3 bucket
#
# @param bucket_name [String] name of bucket to set lifecycle configuration for
diff --git a/lib/fog/internet_archive/requests/storage/put_bucket_logging.rb b/lib/fog/internet_archive/requests/storage/put_bucket_logging.rb
index 21cad53..4cb2378 100644
--- a/lib/fog/internet_archive/requests/storage/put_bucket_logging.rb
+++ b/lib/fog/internet_archive/requests/storage/put_bucket_logging.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Change logging status for an S3 bucket
#
# @param bucket_name [String] name of bucket to modify
@@ -74,7 +73,6 @@ DATA
:query => {'logging' => nil}
})
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/put_bucket_policy.rb b/lib/fog/internet_archive/requests/storage/put_bucket_policy.rb
index 83f5834..c770834 100644
--- a/lib/fog/internet_archive/requests/storage/put_bucket_policy.rb
+++ b/lib/fog/internet_archive/requests/storage/put_bucket_policy.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Change bucket policy for an S3 bucket
#
# @param bucket_name [String] name of bucket to modify
@@ -20,9 +19,7 @@ module Fog
:query => {'policy' => nil}
})
end
-
end
end
end
end
-
diff --git a/lib/fog/internet_archive/requests/storage/put_bucket_website.rb b/lib/fog/internet_archive/requests/storage/put_bucket_website.rb
index 97cda54..3634d70 100644
--- a/lib/fog/internet_archive/requests/storage/put_bucket_website.rb
+++ b/lib/fog/internet_archive/requests/storage/put_bucket_website.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Change website configuration for an S3 bucket
#
# @param bucket_name [String] name of bucket to modify
@@ -40,11 +39,9 @@ DATA
:query => {'website' => nil}
})
end
-
end
class Mock # :nodoc:all
-
def put_bucket_website(bucket_name, suffix, options = {})
response = Excon::Response.new
if self.data[:buckets][bucket_name]
@@ -56,9 +53,7 @@ DATA
response
end
-
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/put_object.rb b/lib/fog/internet_archive/requests/storage/put_object.rb
index 06c2e99..9089dab 100644
--- a/lib/fog/internet_archive/requests/storage/put_object.rb
+++ b/lib/fog/internet_archive/requests/storage/put_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Create an object in an S3 bucket
#
# @param bucket_name [String] Name of bucket to create object in
@@ -39,11 +38,9 @@ module Fog
:path => CGI.escape(object_name)
})
end
-
end
class Mock # :nodoc:all
-
def put_object(bucket_name, object_name, data, options = {})
acl = options['x-amz-acl'] || 'private'
if !['private', 'public-read', 'public-read-write', 'authenticated-read'].include?(acl)
@@ -91,7 +88,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/put_object_acl.rb b/lib/fog/internet_archive/requests/storage/put_object_acl.rb
index c6c6093..8e25de7 100644
--- a/lib/fog/internet_archive/requests/storage/put_object_acl.rb
+++ b/lib/fog/internet_archive/requests/storage/put_object_acl.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
require 'fog/internet_archive/requests/storage/acl_utils'
# Change access control list for an S3 object
@@ -69,7 +68,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/put_object_url.rb b/lib/fog/internet_archive/requests/storage/put_object_url.rb
index d5ca461..1a76c06 100644
--- a/lib/fog/internet_archive/requests/storage/put_object_url.rb
+++ b/lib/fog/internet_archive/requests/storage/put_object_url.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
module PutObjectUrl
-
def put_object_url(bucket_name, object_name, expires, headers = {}, options = {})
unless bucket_name
raise ArgumentError.new('bucket_name is required')
@@ -22,7 +21,6 @@ module Fog
end
class Real
-
# Get an expiring object url from S3 for putting an object
#
# @param bucket_name [String] Name of bucket containing object
@@ -35,13 +33,10 @@ module Fog
# @see http://docs.amazonwebservices.com/AmazonS3/latest/dev/S3_QSAuth.html
include PutObjectUrl
-
end
class Mock # :nodoc:all
-
include PutObjectUrl
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/put_request_payment.rb b/lib/fog/internet_archive/requests/storage/put_request_payment.rb
index 4f2752e..06c7b31 100644
--- a/lib/fog/internet_archive/requests/storage/put_request_payment.rb
+++ b/lib/fog/internet_archive/requests/storage/put_request_payment.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Change who pays for requests to an S3 bucket
#
# @param bucket_name [String] name of bucket to modify
@@ -26,11 +25,9 @@ DATA
:query => {'requestPayment' => nil}
})
end
-
end
class Mock # :nodoc:all
-
def put_request_payment(bucket_name, payer)
response = Excon::Response.new
if bucket = self.data[:buckets][bucket_name]
@@ -42,7 +39,6 @@ DATA
end
response
end
-
end
end
end
diff --git a/lib/fog/internet_archive/requests/storage/sync_clock.rb b/lib/fog/internet_archive/requests/storage/sync_clock.rb
index 7137b0e..9ed4dcf 100644
--- a/lib/fog/internet_archive/requests/storage/sync_clock.rb
+++ b/lib/fog/internet_archive/requests/storage/sync_clock.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Sync clock against S3 to avoid skew errors
#
def sync_clock
@@ -13,15 +12,12 @@ module Fog
end
Fog::Time.now = Time.parse(response.headers['Date'])
end
-
end # Real
class Mock # :nodoc:all
-
def sync_clock
true
end
-
end # Mock
end # Storage
end # InternetArchive
diff --git a/lib/fog/internet_archive/requests/storage/upload_part.rb b/lib/fog/internet_archive/requests/storage/upload_part.rb
index b77f69c..10fd759 100644
--- a/lib/fog/internet_archive/requests/storage/upload_part.rb
+++ b/lib/fog/internet_archive/requests/storage/upload_part.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class InternetArchive
class Real
-
# Upload a part for a multipart upload
#
# @param bucket_name [String] Name of bucket to add part to
@@ -34,7 +33,6 @@ module Fog
:query => {'uploadId' => upload_id, 'partNumber' => part_number}
})
end
-
end # Real
end # Storage
end # InternetArchive
diff --git a/lib/fog/internet_archive/signaturev4.rb b/lib/fog/internet_archive/signaturev4.rb
index 16c8f43..d3201c3 100644
--- a/lib/fog/internet_archive/signaturev4.rb
+++ b/lib/fog/internet_archive/signaturev4.rb
@@ -56,7 +56,7 @@ DATA
end
def signed_headers(headers)
- headers.keys.collect {|key| key.to_s}.sort.collect {|key| key.downcase}.join(';')
+ headers.keys.map {|key| key.to_s}.sort.map {|key| key.downcase}.join(';')
end
def derived_hmac(date)
@@ -66,8 +66,6 @@ DATA
kSigning = Fog::HMAC.new('sha256', kService).sign('aws4_request')
Fog::HMAC.new('sha256', kSigning)
end
-
-
end
end
end
diff --git a/lib/fog/internet_archive/storage.rb b/lib/fog/internet_archive/storage.rb
index f0b8ffa..dffd8d5 100644
--- a/lib/fog/internet_archive/storage.rb
+++ b/lib/fog/internet_archive/storage.rb
@@ -3,7 +3,6 @@ require 'fog/internet_archive/core'
module Fog
module Storage
class InternetArchive < Fog::Service
-
requires :ia_access_key_id, :ia_secret_access_key
recognizes :endpoint, :region, :host, :path, :port, :scheme, :persistent, :ia_session_token, :ia_credentials_expire_at
@@ -62,7 +61,6 @@ module Fog
request :upload_part
module Utils
-
attr_accessor :region
def http_url(params, expires)
@@ -78,7 +76,6 @@ module Fog
http_url(params, expires)
end
-
private
def scheme_host_path_query(params, expires)
@@ -106,7 +103,6 @@ module Fog
port_part = params[:port] && ":#{params[:port]}"
"#{params[:scheme]}://#{params[:host]}#{port_part}/#{params[:path]}?#{query.join('&')}"
end
-
end
class Mock
@@ -220,7 +216,6 @@ module Fog
@ia_session_token = options[:ia_session_token]
@ia_credentials_expire_at = options[:ia_credentials_expire_at]
end
-
end
class Real
diff --git a/lib/fog/joyent.rb b/lib/fog/joyent.rb
index 88be77f..660c3f4 100644
--- a/lib/fog/joyent.rb
+++ b/lib/fog/joyent.rb
@@ -8,6 +8,5 @@ module Fog
service(:analytics, 'Analytics')
service(:compute, 'Compute')
-
end
end
diff --git a/lib/fog/joyent/analytics.rb b/lib/fog/joyent/analytics.rb
index 49c9dfb..8742d7b 100644
--- a/lib/fog/joyent/analytics.rb
+++ b/lib/fog/joyent/analytics.rb
@@ -46,7 +46,6 @@ module Fog
model :value
-
class Mock
def self.data
@data ||= Hash.new do |hash, key|
@@ -167,7 +166,7 @@ module Fog
@header_method = method(:header_for_signature_auth)
if options[:joyent_keyfile]
- if File.exists?(options[:joyent_keyfile])
+ if File.exist?(options[:joyent_keyfile])
@joyent_keyfile = options[:joyent_keyfile]
@key_manager.add(@joyent_keyfile)
else
@@ -206,7 +205,6 @@ module Fog
opts[:body] = Fog::JSON.encode(opts[:body])
end
-
response = @connection.request(opts)
if response.headers["Content-Type"] == "application/json"
response.body = json_decode(response.body)
@@ -306,7 +304,6 @@ module Fog
raise Fog::Compute::Joyent::Errors::ServiceUnavailable.new('Either there\'s no capacity in this datacenter, or we\'re in a maintenance window', request, response)
end
end
-
end # Real
end
end
diff --git a/lib/fog/joyent/compute.rb b/lib/fog/joyent/compute.rb
index 3d46993..c3965fe 100644
--- a/lib/fog/joyent/compute.rb
+++ b/lib/fog/joyent/compute.rb
@@ -5,7 +5,6 @@ require 'net/ssh'
module Fog
module Compute
class Joyent < Fog::Service
-
requires :joyent_username
recognizes :joyent_password
@@ -115,7 +114,6 @@ module Fog
attr_accessor :joyent_url
def initialize(options = {})
-
@connection_options = options[:connection_options] || {}
@persistent = options[:persistent] || false
@@ -137,7 +135,7 @@ module Fog
@header_method = method(:header_for_signature_auth)
if options[:joyent_keyfile]
- if File.exists?(options[:joyent_keyfile])
+ if File.exist?(options[:joyent_keyfile])
@joyent_keyfile = options[:joyent_keyfile]
@key_manager.add(@joyent_keyfile)
else
@@ -176,7 +174,6 @@ module Fog
opts[:body] = Fog::JSON.encode(opts[:body])
end
-
response = @connection.request(opts)
if response.headers["Content-Type"] == "application/json"
response.body = json_decode(response.body)
@@ -274,7 +271,6 @@ module Fog
raise Joyent::Errors::ServiceUnavailable.new('Either there\'s no capacity in this datacenter, or we\'re in a maintenance window', request, response)
end
end
-
end # Real
end
end
diff --git a/lib/fog/joyent/core.rb b/lib/fog/joyent/core.rb
index debd99f..ffdec81 100644
--- a/lib/fog/joyent/core.rb
+++ b/lib/fog/joyent/core.rb
@@ -6,6 +6,5 @@ module Fog
extend Fog::Provider
service(:compute, 'Compute')
-
end
end
diff --git a/lib/fog/joyent/errors.rb b/lib/fog/joyent/errors.rb
index 8e7541b..13c8dd9 100644
--- a/lib/fog/joyent/errors.rb
+++ b/lib/fog/joyent/errors.rb
@@ -3,7 +3,6 @@ require 'fog/joyent/core'
module Fog
module Compute
class Joyent < Fog::Service
-
class Errors
module MessageParserMixin
def message
diff --git a/lib/fog/joyent/models/analytics/field.rb b/lib/fog/joyent/models/analytics/field.rb
index 02815b0..d4c51aa 100644
--- a/lib/fog/joyent/models/analytics/field.rb
+++ b/lib/fog/joyent/models/analytics/field.rb
@@ -7,7 +7,6 @@ module Fog
attribute :name
attribute :label
attribute :type
-
end
end
end
diff --git a/lib/fog/joyent/models/analytics/fields.rb b/lib/fog/joyent/models/analytics/fields.rb
index 5b3ae3e..a2eac31 100644
--- a/lib/fog/joyent/models/analytics/fields.rb
+++ b/lib/fog/joyent/models/analytics/fields.rb
@@ -4,7 +4,6 @@ module Fog
module Joyent
class Analytics
class Fields < Fog::Collection
-
model Fog::Joyent::Analytics::Field
def all
@@ -19,7 +18,6 @@ module Fog
name, other_attributes = attributes
super(other_attributes.merge('name' => name))
end
-
end
end
end
diff --git a/lib/fog/joyent/models/analytics/instrumentation.rb b/lib/fog/joyent/models/analytics/instrumentation.rb
index a932e58..e2fea88 100644
--- a/lib/fog/joyent/models/analytics/instrumentation.rb
+++ b/lib/fog/joyent/models/analytics/instrumentation.rb
@@ -76,7 +76,6 @@ module Fog
Fog::Joyent::Analytics::Value.new(datum)
end
end
-
end
end
end
diff --git a/lib/fog/joyent/models/analytics/instrumentations.rb b/lib/fog/joyent/models/analytics/instrumentations.rb
index 5a54ac8..6795e3f 100644
--- a/lib/fog/joyent/models/analytics/instrumentations.rb
+++ b/lib/fog/joyent/models/analytics/instrumentations.rb
@@ -4,7 +4,6 @@ module Fog
module Joyent
class Analytics
class Instrumentations < Fog::Collection
-
model Fog::Joyent::Analytics::Instrumentation
def all
@@ -18,8 +17,6 @@ module Fog
rescue Fog::Compute::Joyent::Errors::NotFound
nil
end
-
-
end
end
end
diff --git a/lib/fog/joyent/models/analytics/joyent_module.rb b/lib/fog/joyent/models/analytics/joyent_module.rb
index 4eab489..417e132 100644
--- a/lib/fog/joyent/models/analytics/joyent_module.rb
+++ b/lib/fog/joyent/models/analytics/joyent_module.rb
@@ -1,6 +1,5 @@
require 'fog/core/model'
-
# named 'JoyentModule' to avoid name conflicts with ruby's 'Module'
module Fog
module Joyent
@@ -8,7 +7,6 @@ module Fog
class JoyentModule < Fog::Model
attribute :name
attribute :label
-
end
end
end
diff --git a/lib/fog/joyent/models/analytics/joyent_modules.rb b/lib/fog/joyent/models/analytics/joyent_modules.rb
index e2e9c4b..6972c7e 100644
--- a/lib/fog/joyent/models/analytics/joyent_modules.rb
+++ b/lib/fog/joyent/models/analytics/joyent_modules.rb
@@ -4,7 +4,6 @@ module Fog
module Joyent
class Analytics
class JoyentModules < Fog::Collection
-
model Fog::Joyent::Analytics::JoyentModule
def all
@@ -19,7 +18,6 @@ module Fog
name, other_attributes = attributes
super(other_attributes.merge('name' => name))
end
-
end
end
end
diff --git a/lib/fog/joyent/models/analytics/metric.rb b/lib/fog/joyent/models/analytics/metric.rb
index 396cb61..f497322 100644
--- a/lib/fog/joyent/models/analytics/metric.rb
+++ b/lib/fog/joyent/models/analytics/metric.rb
@@ -11,7 +11,6 @@ module Fog
attribute :fields
attribute :unit
attribute :type
-
end
end
end
diff --git a/lib/fog/joyent/models/analytics/metrics.rb b/lib/fog/joyent/models/analytics/metrics.rb
index 833707a..ad2f000 100644
--- a/lib/fog/joyent/models/analytics/metrics.rb
+++ b/lib/fog/joyent/models/analytics/metrics.rb
@@ -4,14 +4,12 @@ module Fog
module Joyent
class Analytics
class Metrics < Fog::Collection
-
model Fog::Joyent::Analytics::Metric
def all
data = service.describe_analytics.body['metrics']
load(data)
end
-
end
end
end
diff --git a/lib/fog/joyent/models/analytics/transformations.rb b/lib/fog/joyent/models/analytics/transformations.rb
index 39dc908..78cb769 100644
--- a/lib/fog/joyent/models/analytics/transformations.rb
+++ b/lib/fog/joyent/models/analytics/transformations.rb
@@ -4,7 +4,6 @@ module Fog
module Joyent
class Analytics
class Transformations < Fog::Collection
-
model Fog::Joyent::Analytics::Transformation
def all
@@ -19,7 +18,6 @@ module Fog
name, other_attributes = attributes
super(other_attributes.merge('name' => name))
end
-
end
end
end
diff --git a/lib/fog/joyent/models/analytics/types.rb b/lib/fog/joyent/models/analytics/types.rb
index bd2a146..8e026c3 100644
--- a/lib/fog/joyent/models/analytics/types.rb
+++ b/lib/fog/joyent/models/analytics/types.rb
@@ -4,7 +4,6 @@ module Fog
module Joyent
class Analytics
class Types < Fog::Collection
-
model Fog::Joyent::Analytics::Type
def all
@@ -19,7 +18,6 @@ module Fog
name, other_attributes = attributes
super(other_attributes.merge('name' => name))
end
-
end
end
end
diff --git a/lib/fog/joyent/models/compute/datacenter.rb b/lib/fog/joyent/models/compute/datacenter.rb
index 14cc42a..25734b5 100644
--- a/lib/fog/joyent/models/compute/datacenter.rb
+++ b/lib/fog/joyent/models/compute/datacenter.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Joyent
class Datacenter < Fog::Model
-
identity :name
attribute :url
diff --git a/lib/fog/joyent/models/compute/datacenters.rb b/lib/fog/joyent/models/compute/datacenters.rb
index d66d78a..370c82c 100644
--- a/lib/fog/joyent/models/compute/datacenters.rb
+++ b/lib/fog/joyent/models/compute/datacenters.rb
@@ -3,10 +3,8 @@ require 'fog/joyent/models/compute/datacenter'
module Fog
module Compute
-
class Joyent
class Datacenters < Fog::Collection
-
model Fog::Compute::Joyent::Datacenter
def all
@@ -17,9 +15,7 @@ module Fog
def get(id)
all[id]
end
-
end
end # Joyent
-
end # Compute
end # Fog
diff --git a/lib/fog/joyent/models/compute/flavor.rb b/lib/fog/joyent/models/compute/flavor.rb
index 090ae06..f3d6ad9 100644
--- a/lib/fog/joyent/models/compute/flavor.rb
+++ b/lib/fog/joyent/models/compute/flavor.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Joyent
class Flavor < Fog::Model
-
identity :id
attribute :name
@@ -14,7 +13,6 @@ module Fog
attribute :description
attribute :version
attribute :group
-
end
end
end
diff --git a/lib/fog/joyent/models/compute/flavors.rb b/lib/fog/joyent/models/compute/flavors.rb
index 782a351..e842b81 100644
--- a/lib/fog/joyent/models/compute/flavors.rb
+++ b/lib/fog/joyent/models/compute/flavors.rb
@@ -3,10 +3,8 @@ require 'fog/joyent/models/compute/flavor'
module Fog
module Compute
-
class Joyent
class Flavors < Fog::Collection
-
model Fog::Compute::Joyent::Flavor
def all
@@ -17,9 +15,7 @@ module Fog
data = service.get_package(id).body
new(data)
end
-
end
end # Joyent
-
end # Compute
end # Fog
diff --git a/lib/fog/joyent/models/compute/image.rb b/lib/fog/joyent/models/compute/image.rb
index e4ff4b3..75c587d 100644
--- a/lib/fog/joyent/models/compute/image.rb
+++ b/lib/fog/joyent/models/compute/image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Joyent
class Image < Fog::Model
-
identity :id
attribute :name
@@ -21,7 +20,6 @@ module Fog
attribute :acl
attribute :created, :type => :time
attribute :default, :type => :boolean
-
end
end
end
diff --git a/lib/fog/joyent/models/compute/images.rb b/lib/fog/joyent/models/compute/images.rb
index 579742e..164a8aa 100644
--- a/lib/fog/joyent/models/compute/images.rb
+++ b/lib/fog/joyent/models/compute/images.rb
@@ -3,10 +3,8 @@ require 'fog/joyent/models/compute/image'
module Fog
module Compute
-
class Joyent
class Images < Fog::Collection
-
model Fog::Compute::Joyent::Image
def all
@@ -26,9 +24,7 @@ module Fog
end
new(data)
end
-
end # Images
end # Joyent
-
end # Compute
end # Fog
diff --git a/lib/fog/joyent/models/compute/keys.rb b/lib/fog/joyent/models/compute/keys.rb
index c9a0ed1..7bbdba7 100644
--- a/lib/fog/joyent/models/compute/keys.rb
+++ b/lib/fog/joyent/models/compute/keys.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Joyent
class Keys < Fog::Collection
-
model Fog::Compute::Joyent::Key
def all
@@ -27,7 +26,6 @@ module Fog
service.create_key(params)
end
-
end
end
end
diff --git a/lib/fog/joyent/models/compute/network.rb b/lib/fog/joyent/models/compute/network.rb
index 4696ebe..4e87033 100644
--- a/lib/fog/joyent/models/compute/network.rb
+++ b/lib/fog/joyent/models/compute/network.rb
@@ -6,7 +6,6 @@ module Fog
attribute :name
attribute :public
-
end
end
end
diff --git a/lib/fog/joyent/models/compute/networks.rb b/lib/fog/joyent/models/compute/networks.rb
index 521bcc3..d5bf1cc 100644
--- a/lib/fog/joyent/models/compute/networks.rb
+++ b/lib/fog/joyent/models/compute/networks.rb
@@ -3,7 +3,6 @@ module Fog
module Compute
class Joyent
class Networks < Fog::Collection
-
model Fog::Compute::Joyent::Network
def all
diff --git a/lib/fog/joyent/models/compute/server.rb b/lib/fog/joyent/models/compute/server.rb
index a0d3b0f..2196dc7 100644
--- a/lib/fog/joyent/models/compute/server.rb
+++ b/lib/fog/joyent/models/compute/server.rb
@@ -2,7 +2,6 @@ require 'fog/compute/models/server'
module Fog
module Compute
class Joyent
-
class Server < Fog::Compute::Server
identity :id
@@ -119,7 +118,6 @@ module Fog
service.delete_all_machine_tags(self.id)
true
end
-
end
end
end
diff --git a/lib/fog/joyent/models/compute/servers.rb b/lib/fog/joyent/models/compute/servers.rb
index 1e99f05..fe942c9 100644
--- a/lib/fog/joyent/models/compute/servers.rb
+++ b/lib/fog/joyent/models/compute/servers.rb
@@ -3,7 +3,6 @@ require 'fog/joyent/models/compute/server'
module Fog
module Compute
-
class Joyent
class Servers < Fog::Collection
model Fog::Compute::Joyent::Server
@@ -30,9 +29,7 @@ module Fog
server.tags = server.list_tags if server.tags.nil?
server
end
-
end
end # Joyent
-
end # Compute
end # Fog
diff --git a/lib/fog/joyent/models/compute/snapshot.rb b/lib/fog/joyent/models/compute/snapshot.rb
index be2717d..c28575c 100644
--- a/lib/fog/joyent/models/compute/snapshot.rb
+++ b/lib/fog/joyent/models/compute/snapshot.rb
@@ -38,7 +38,6 @@ module Fog
service.servers.get(self.machine_id)
end
-
end
end
end
diff --git a/lib/fog/joyent/models/compute/snapshots.rb b/lib/fog/joyent/models/compute/snapshots.rb
index 946ce0b..7e39c78 100644
--- a/lib/fog/joyent/models/compute/snapshots.rb
+++ b/lib/fog/joyent/models/compute/snapshots.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Joyent
class Snapshots < Fog::Collection
-
model Fog::Compute::Joyent::Snapshot
def create(machine_id, snapshot_name)
@@ -30,7 +29,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/joyent/requests/compute/add_machine_tags.rb b/lib/fog/joyent/requests/compute/add_machine_tags.rb
index 28eafd1..cc5fad5 100644
--- a/lib/fog/joyent/requests/compute/add_machine_tags.rb
+++ b/lib/fog/joyent/requests/compute/add_machine_tags.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Joyent
-
class Real
# https://us-west-1.api.joyentcloud.com/docs#AddMachineTags
def add_machine_tags(machine_id, tags={})
diff --git a/lib/fog/joyent/requests/compute/create_key.rb b/lib/fog/joyent/requests/compute/create_key.rb
index 4975f36..5bde09b 100644
--- a/lib/fog/joyent/requests/compute/create_key.rb
+++ b/lib/fog/joyent/requests/compute/create_key.rb
@@ -26,7 +26,6 @@ module Fog
end # Mock
class Real
-
# Creates a new SSH Key
# ==== Parameters
# * name<~String> - Name to assign to this key
@@ -49,7 +48,6 @@ module Fog
:expects => 201
)
end
-
end
end
end
diff --git a/lib/fog/joyent/requests/compute/create_machine_snapshot.rb b/lib/fog/joyent/requests/compute/create_machine_snapshot.rb
index dee83bb..daf9f95 100644
--- a/lib/fog/joyent/requests/compute/create_machine_snapshot.rb
+++ b/lib/fog/joyent/requests/compute/create_machine_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Joyent
class Real
-
def create_machine_snapshot(machine_id, snapshot_name)
request(
:method => "POST",
@@ -11,7 +10,6 @@ module Fog
:expects => [201]
)
end
-
end
end
end
diff --git a/lib/fog/joyent/requests/compute/delete_key.rb b/lib/fog/joyent/requests/compute/delete_key.rb
index 3c5a6fb..f841a4e 100644
--- a/lib/fog/joyent/requests/compute/delete_key.rb
+++ b/lib/fog/joyent/requests/compute/delete_key.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Joyent
-
class Mock
def delete_key(keyname)
if self.data[:keys].delete(keyname)
@@ -23,7 +22,6 @@ module Fog
)
end
end # Real
-
end
end
end
diff --git a/lib/fog/joyent/requests/compute/delete_machine_metadata.rb b/lib/fog/joyent/requests/compute/delete_machine_metadata.rb
index bf13f61..b158da4 100644
--- a/lib/fog/joyent/requests/compute/delete_machine_metadata.rb
+++ b/lib/fog/joyent/requests/compute/delete_machine_metadata.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
-
class Joyent
class Real
-
# https://us-west-1.api.joyentcloud.com/docs#DeleteAllMachineMetadata
def delete_machine_metadata(machine_id, key)
request(
diff --git a/lib/fog/joyent/requests/compute/delete_machine_snapshot.rb b/lib/fog/joyent/requests/compute/delete_machine_snapshot.rb
index be5aecd..0ff5487 100644
--- a/lib/fog/joyent/requests/compute/delete_machine_snapshot.rb
+++ b/lib/fog/joyent/requests/compute/delete_machine_snapshot.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Joyent
-
class Real
def delete_machine_snapshot(machine_id, snapshot)
request(
@@ -13,9 +12,7 @@ module Fog
end
class Mock
-
end
-
end
end
end
diff --git a/lib/fog/joyent/requests/compute/get_dataset.rb b/lib/fog/joyent/requests/compute/get_dataset.rb
index fb0b7ae..3656a02 100644
--- a/lib/fog/joyent/requests/compute/get_dataset.rb
+++ b/lib/fog/joyent/requests/compute/get_dataset.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Joyent
-
class Mock
def get_dataset(id)
if ds = self.data[:datasets][id]
@@ -23,7 +22,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/joyent/requests/compute/get_image.rb b/lib/fog/joyent/requests/compute/get_image.rb
index e53c178..0d54fef 100644
--- a/lib/fog/joyent/requests/compute/get_image.rb
+++ b/lib/fog/joyent/requests/compute/get_image.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Joyent
-
class Mock
def get_image(id)
if ds = self.data[:datasets][id]
@@ -24,7 +23,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/joyent/requests/compute/get_key.rb b/lib/fog/joyent/requests/compute/get_key.rb
index 79f551b..f48cd23 100644
--- a/lib/fog/joyent/requests/compute/get_key.rb
+++ b/lib/fog/joyent/requests/compute/get_key.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Joyent
class Mock
-
def get_key(keyid)
if key = self.data[:keys][keyid]
response = Excon::Response.new
diff --git a/lib/fog/joyent/requests/compute/get_machine.rb b/lib/fog/joyent/requests/compute/get_machine.rb
index c1dccfc..12ae0e0 100644
--- a/lib/fog/joyent/requests/compute/get_machine.rb
+++ b/lib/fog/joyent/requests/compute/get_machine.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Joyent
-
class Mock
def get_machine(uuid)
if machine = self.data[:machines][uuid]
diff --git a/lib/fog/joyent/requests/compute/get_machine_metadata.rb b/lib/fog/joyent/requests/compute/get_machine_metadata.rb
index 8e3c485..3730fe2 100644
--- a/lib/fog/joyent/requests/compute/get_machine_metadata.rb
+++ b/lib/fog/joyent/requests/compute/get_machine_metadata.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Joyent
class Real
-
def get_machine_metadata(machine_id, options = {})
query = {}
if options[:credentials]
@@ -19,7 +18,6 @@ module Fog
:idempotent => true
)
end
-
end
end
end
diff --git a/lib/fog/joyent/requests/compute/get_machine_tag.rb b/lib/fog/joyent/requests/compute/get_machine_tag.rb
index e2d2542..7d91c8e 100644
--- a/lib/fog/joyent/requests/compute/get_machine_tag.rb
+++ b/lib/fog/joyent/requests/compute/get_machine_tag.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Joyent
class Real
-
# https://us-west-1.api.joyentcloud.com/docs#GetMachineTag
def get_machine_tag(machine_id, tagname)
request(
@@ -13,7 +12,6 @@ module Fog
:idempotent => true
)
end
-
end
end
end
diff --git a/lib/fog/joyent/requests/compute/get_package.rb b/lib/fog/joyent/requests/compute/get_package.rb
index b09c5f0..a1085da 100644
--- a/lib/fog/joyent/requests/compute/get_package.rb
+++ b/lib/fog/joyent/requests/compute/get_package.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class Joyent
class Mock
-
def get_package(name)
if pkg = self.data[:packages][name]
response = Excon::Response.new
@@ -27,7 +26,6 @@ module Fog
:idempotent => true
)
end
-
end
end
end
diff --git a/lib/fog/joyent/requests/compute/list_datacenters.rb b/lib/fog/joyent/requests/compute/list_datacenters.rb
index 608fa92..3bfaf77 100644
--- a/lib/fog/joyent/requests/compute/list_datacenters.rb
+++ b/lib/fog/joyent/requests/compute/list_datacenters.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Joyent
-
class Real
def list_datacenters
request(
@@ -12,7 +11,6 @@ module Fog
)
end
end # Real
-
end
end
end
diff --git a/lib/fog/joyent/requests/compute/list_datasets.rb b/lib/fog/joyent/requests/compute/list_datasets.rb
index dea3ceb..450b80c 100644
--- a/lib/fog/joyent/requests/compute/list_datasets.rb
+++ b/lib/fog/joyent/requests/compute/list_datasets.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Joyent
-
class Mock
def list_datasets
res = Excon::Response.new
diff --git a/lib/fog/joyent/requests/compute/list_images.rb b/lib/fog/joyent/requests/compute/list_images.rb
index c1ad428..c449313 100644
--- a/lib/fog/joyent/requests/compute/list_images.rb
+++ b/lib/fog/joyent/requests/compute/list_images.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Joyent
-
class Mock
def list_images
res = Excon::Response.new
diff --git a/lib/fog/joyent/requests/compute/list_keys.rb b/lib/fog/joyent/requests/compute/list_keys.rb
index d93e329..0e7f890 100644
--- a/lib/fog/joyent/requests/compute/list_keys.rb
+++ b/lib/fog/joyent/requests/compute/list_keys.rb
@@ -20,7 +20,6 @@ module Fog
)
end
end # Real
-
end
end
end
diff --git a/lib/fog/joyent/requests/compute/list_machine_tags.rb b/lib/fog/joyent/requests/compute/list_machine_tags.rb
index fca539e..159e1c7 100644
--- a/lib/fog/joyent/requests/compute/list_machine_tags.rb
+++ b/lib/fog/joyent/requests/compute/list_machine_tags.rb
@@ -14,7 +14,6 @@ module Fog
end
class Mock
-
end
end
end
diff --git a/lib/fog/joyent/requests/compute/list_machines.rb b/lib/fog/joyent/requests/compute/list_machines.rb
index b5436a7..89e8777 100644
--- a/lib/fog/joyent/requests/compute/list_machines.rb
+++ b/lib/fog/joyent/requests/compute/list_machines.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Joyent
-
class Mock
def list_machines(options={})
res = Excon::Response.new
diff --git a/lib/fog/joyent/requests/compute/list_networks.rb b/lib/fog/joyent/requests/compute/list_networks.rb
index d17371d..2d86f5e 100644
--- a/lib/fog/joyent/requests/compute/list_networks.rb
+++ b/lib/fog/joyent/requests/compute/list_networks.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Joyent
-
class Mock
def list_networks(options={})
res = Excon::Response.new
diff --git a/lib/fog/joyent/requests/compute/list_packages.rb b/lib/fog/joyent/requests/compute/list_packages.rb
index bc6a879..9603697 100644
--- a/lib/fog/joyent/requests/compute/list_packages.rb
+++ b/lib/fog/joyent/requests/compute/list_packages.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Joyent
-
class Mock
def list_packages
response = Excon::Response.new()
@@ -30,8 +29,6 @@ module Fog
)
end
end # Real
-
end
-
end
end
diff --git a/lib/fog/libvirt/compute.rb b/lib/fog/libvirt/compute.rb
index 1987ece..bbd7ea3 100644
--- a/lib/fog/libvirt/compute.rb
+++ b/lib/fog/libvirt/compute.rb
@@ -5,7 +5,6 @@ require 'fog/libvirt/models/compute/util/uri'
module Fog
module Compute
class Libvirt < Fog::Service
-
requires :libvirt_uri
recognizes :libvirt_username, :libvirt_password
recognizes :libvirt_ip_command
@@ -76,7 +75,6 @@ module Fog
attr_reader :uri
attr_reader :ip_command
-
def initialize(options={})
@uri = ::Fog::Compute::LibvirtUtil::URI.new(enhance_uri(options[:libvirt_uri]))
@ip_command = options[:libvirt_ip_command]
@@ -106,7 +104,6 @@ module Fog
rescue ::Libvirt::ConnectionError
raise Fog::Errors::Error.new("Error making a connection to libvirt URI #{uri.uri}:\n#{$!}")
end
-
end
def terminate
@@ -127,14 +124,13 @@ module Fog
if querystring.nil?
append="?socket=/var/run/libvirt/libvirt-sock"
else
- if !::CGI.parse(querystring).has_key?("socket")
+ if !::CGI.parse(querystring).key?("socket")
append="&socket=/var/run/libvirt/libvirt-sock"
end
end
end
uri+append
end
-
end
end
end
diff --git a/lib/fog/libvirt/core.rb b/lib/fog/libvirt/core.rb
index d7ec9ab..73fce10 100644
--- a/lib/fog/libvirt/core.rb
+++ b/lib/fog/libvirt/core.rb
@@ -4,10 +4,8 @@ require 'fog/json'
module Fog
module Libvirt
-
extend Fog::Provider
service(:compute, 'Compute')
-
end
end
diff --git a/lib/fog/libvirt/models/compute/interface.rb b/lib/fog/libvirt/models/compute/interface.rb
index cc01fed..a7ebde6 100644
--- a/lib/fog/libvirt/models/compute/interface.rb
+++ b/lib/fog/libvirt/models/compute/interface.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Libvirt
-
class Interface < Fog::Model
-
identity :name
attribute :mac
attribute :active
@@ -22,7 +20,6 @@ module Fog
active
end
end
-
end
end
end
diff --git a/lib/fog/libvirt/models/compute/interfaces.rb b/lib/fog/libvirt/models/compute/interfaces.rb
index d01d22c..48f696d 100644
--- a/lib/fog/libvirt/models/compute/interfaces.rb
+++ b/lib/fog/libvirt/models/compute/interfaces.rb
@@ -4,9 +4,7 @@ require 'fog/libvirt/models/compute/interface'
module Fog
module Compute
class Libvirt
-
class Interfaces < Fog::Collection
-
model Fog::Compute::Libvirt::Interface
def all(filter={})
@@ -16,9 +14,7 @@ module Fog
def get(name)
self.all(:name => name).first
end
-
end
-
end
end
end
diff --git a/lib/fog/libvirt/models/compute/network.rb b/lib/fog/libvirt/models/compute/network.rb
index 122181c..6a80247 100644
--- a/lib/fog/libvirt/models/compute/network.rb
+++ b/lib/fog/libvirt/models/compute/network.rb
@@ -4,9 +4,7 @@ require 'fog/libvirt/models/compute/util/util'
module Fog
module Compute
class Libvirt
-
class Network < Fog::Model
-
include Fog::Compute::LibvirtUtil
identity :uuid
@@ -25,10 +23,7 @@ module Fog
def shutdown
service.destroy_network(uuid)
end
-
end
-
end
end
-
end
diff --git a/lib/fog/libvirt/models/compute/networks.rb b/lib/fog/libvirt/models/compute/networks.rb
index 233e433..760ccf2 100644
--- a/lib/fog/libvirt/models/compute/networks.rb
+++ b/lib/fog/libvirt/models/compute/networks.rb
@@ -4,9 +4,7 @@ require 'fog/libvirt/models/compute/network'
module Fog
module Compute
class Libvirt
-
class Networks < Fog::Collection
-
model Fog::Compute::Libvirt::Network
def all(filter={})
@@ -16,9 +14,7 @@ module Fog
def get(uuid)
self.all(:uuid => uuid).first
end
-
end
-
end
end
end
diff --git a/lib/fog/libvirt/models/compute/nic.rb b/lib/fog/libvirt/models/compute/nic.rb
index 225f914..485b417 100644
--- a/lib/fog/libvirt/models/compute/nic.rb
+++ b/lib/fog/libvirt/models/compute/nic.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Libvirt
-
class Nic < Fog::Model
-
identity :mac
attribute :id
attribute :type
@@ -46,10 +44,7 @@ module Fog
:model => "virtio"
}
end
-
end
-
end
end
-
end
diff --git a/lib/fog/libvirt/models/compute/nics.rb b/lib/fog/libvirt/models/compute/nics.rb
index 7686bef..7a326f3 100644
--- a/lib/fog/libvirt/models/compute/nics.rb
+++ b/lib/fog/libvirt/models/compute/nics.rb
@@ -4,13 +4,9 @@ require 'fog/libvirt/models/compute/nic'
module Fog
module Compute
class Libvirt
-
class Nics < Fog::Collection
-
model Fog::Compute::Libvirt::Nic
-
end
-
end
end
end
diff --git a/lib/fog/libvirt/models/compute/node.rb b/lib/fog/libvirt/models/compute/node.rb
index 43d3721..02d3fc7 100644
--- a/lib/fog/libvirt/models/compute/node.rb
+++ b/lib/fog/libvirt/models/compute/node.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Libvirt
-
class Node < Fog::Model
-
identity :uuid
attribute :model
@@ -25,10 +23,7 @@ module Fog
attribute :product
attribute :serial
attribute :hostname
-
end
-
end
end
-
end
diff --git a/lib/fog/libvirt/models/compute/nodes.rb b/lib/fog/libvirt/models/compute/nodes.rb
index f1386c7..72d6d7b 100644
--- a/lib/fog/libvirt/models/compute/nodes.rb
+++ b/lib/fog/libvirt/models/compute/nodes.rb
@@ -4,9 +4,7 @@ require 'fog/libvirt/models/compute/node'
module Fog
module Compute
class Libvirt
-
class Nodes < Fog::Collection
-
model Fog::Compute::Libvirt::Node
def all(filter={ })
@@ -16,7 +14,6 @@ module Fog
def get
all.first
end
-
end
end
end
diff --git a/lib/fog/libvirt/models/compute/pool.rb b/lib/fog/libvirt/models/compute/pool.rb
index 1d9b568..d186b86 100644
--- a/lib/fog/libvirt/models/compute/pool.rb
+++ b/lib/fog/libvirt/models/compute/pool.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class Libvirt
-
class Pool < Fog::Model
attr_reader :xml
@@ -79,10 +78,7 @@ module Fog
def volumes
service.list_pool_volumes uuid
end
-
end
-
end
end
-
end
diff --git a/lib/fog/libvirt/models/compute/pools.rb b/lib/fog/libvirt/models/compute/pools.rb
index 78e1672..2f3f73f 100644
--- a/lib/fog/libvirt/models/compute/pools.rb
+++ b/lib/fog/libvirt/models/compute/pools.rb
@@ -4,9 +4,7 @@ require 'fog/libvirt/models/compute/pool'
module Fog
module Compute
class Libvirt
-
class Pools < Fog::Collection
-
model Fog::Compute::Libvirt::Pool
def all(filter = {})
@@ -16,9 +14,7 @@ module Fog
def get(uuid)
self.all(:uuid => uuid).first
end
-
end
-
end
end
end
diff --git a/lib/fog/libvirt/models/compute/server.rb b/lib/fog/libvirt/models/compute/server.rb
index 598bd8d..43e95df 100644
--- a/lib/fog/libvirt/models/compute/server.rb
+++ b/lib/fog/libvirt/models/compute/server.rb
@@ -5,9 +5,7 @@ require 'net/ssh/proxy/command'
module Fog
module Compute
class Libvirt
-
class Server < Fog::Compute::Server
-
include Fog::Compute::LibvirtUtil
attr_reader :xml
@@ -117,9 +115,9 @@ module Fog
end
#alias methods
- alias :halt :poweroff
- alias :stop :shutdown
- alias :active? :active
+ alias_method :halt, :poweroff
+ alias_method :stop, :shutdown
+ alias_method :active?, :active
def volumes
# lazy loading of volumes
@@ -241,7 +239,6 @@ module Fog
ssh_options[:port]=port unless keyfile.nil?
ssh_options[:paranoid]=true if service.uri.no_verify?
-
begin
result=Fog::SSH.new(host, user, ssh_options).run(ip_command)
rescue Errno::ECONNREFUSED
@@ -250,7 +247,6 @@ module Fog
raise Fog::Errors::Error.new("Error authenticating over ssh to host #{host} and user #{user}")
end
-
# Check for a clean exit code
if result.first.status == 0
ip_address=result.first.stdout.strip
@@ -283,7 +279,6 @@ module Fog
ip_address=ip_address.chomp
end
-
# The Ip-address command has been run either local or remote now
if ip_address==""
@@ -390,10 +385,7 @@ module Fog
def default_display
{:port => '-1', :listen => '127.0.0.1', :type => 'vnc', :password => '' }
end
-
end
-
end
end
-
end
diff --git a/lib/fog/libvirt/models/compute/servers.rb b/lib/fog/libvirt/models/compute/servers.rb
index e2fc279..a28db2f 100644
--- a/lib/fog/libvirt/models/compute/servers.rb
+++ b/lib/fog/libvirt/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/libvirt/models/compute/server'
module Fog
module Compute
class Libvirt
-
class Servers < Fog::Collection
-
model Fog::Compute::Libvirt::Server
def all(filter={})
@@ -17,7 +15,6 @@ module Fog
data = service.list_domains(:uuid => uuid)
new data.first if data
end
-
end
end
end
diff --git a/lib/fog/libvirt/models/compute/util/uri.rb b/lib/fog/libvirt/models/compute/util/uri.rb
index d84949e..cbb2e86 100644
--- a/lib/fog/libvirt/models/compute/util/uri.rb
+++ b/lib/fog/libvirt/models/compute/util/uri.rb
@@ -4,9 +4,7 @@ require 'cgi'
module Fog
module Compute
module LibvirtUtil
-
class URI
-
attr_reader :uri
def initialize(uri)
@@ -109,7 +107,6 @@ module Fog
else
return true
end
-
end
def tty?
@@ -120,14 +117,13 @@ module Fog
value("pkipath")
end
-
# A libvirt URI allows you to specify extra params
# http://libvirt.org/remote.html
private
def value(name)
unless @parsed_uri.query.nil?
params=CGI.parse(@parsed_uri.query)
- if params.has_key?(name)
+ if params.key?(name)
return params[name].first
else
return nil
@@ -136,10 +132,7 @@ module Fog
return nil
end
end
-
-
end
end
end
end
-
diff --git a/lib/fog/libvirt/models/compute/util/util.rb b/lib/fog/libvirt/models/compute/util/util.rb
index d668e46..28aadf7 100644
--- a/lib/fog/libvirt/models/compute/util/util.rb
+++ b/lib/fog/libvirt/models/compute/util/util.rb
@@ -6,7 +6,6 @@ require 'securerandom'
module Fog
module Compute
module LibvirtUtil
-
def xml_element(xml, path, attribute=nil)
xml = Nokogiri::XML(xml)
attribute.nil? ? (xml/path).first.text : (xml/path).first[attribute.to_sym]
diff --git a/lib/fog/libvirt/models/compute/volume.rb b/lib/fog/libvirt/models/compute/volume.rb
index 7bb0ccc..5bf2759 100644
--- a/lib/fog/libvirt/models/compute/volume.rb
+++ b/lib/fog/libvirt/models/compute/volume.rb
@@ -4,9 +4,7 @@ require 'fog/libvirt/models/compute/util/util'
module Fog
module Compute
class Libvirt
-
class Volume < Fog::Model
-
attr_reader :xml
include Fog::Compute::LibvirtUtil
@@ -119,8 +117,6 @@ module Fog
[size, unit]
end
end
-
end
end
-
end
diff --git a/lib/fog/libvirt/models/compute/volumes.rb b/lib/fog/libvirt/models/compute/volumes.rb
index 512f498..a29a0b4 100644
--- a/lib/fog/libvirt/models/compute/volumes.rb
+++ b/lib/fog/libvirt/models/compute/volumes.rb
@@ -4,9 +4,7 @@ require 'fog/libvirt/models/compute/volume'
module Fog
module Compute
class Libvirt
-
class Volumes < Fog::Collection
-
model Fog::Compute::Libvirt::Volume
def all(filter = {})
@@ -16,9 +14,7 @@ module Fog
def get(key)
self.all(:key => key).first
end
-
end
-
end
end
end
diff --git a/lib/fog/libvirt/requests/compute/create_volume.rb b/lib/fog/libvirt/requests/compute/create_volume.rb
index 0623ec3..f1f90d8 100644
--- a/lib/fog/libvirt/requests/compute/create_volume.rb
+++ b/lib/fog/libvirt/requests/compute/create_volume.rb
@@ -9,7 +9,6 @@ module Fog
class Mock
def create_volume(pool_name, xml)
-
end
end
end
diff --git a/lib/fog/libvirt/requests/compute/define_pool.rb b/lib/fog/libvirt/requests/compute/define_pool.rb
index 24b5328..8874bf4 100644
--- a/lib/fog/libvirt/requests/compute/define_pool.rb
+++ b/lib/fog/libvirt/requests/compute/define_pool.rb
@@ -9,7 +9,6 @@ module Fog
class Mock
def define_pool(xml)
-
end
end
end
diff --git a/lib/fog/libvirt/requests/compute/get_node_info.rb b/lib/fog/libvirt/requests/compute/get_node_info.rb
index 9903d76..9d5aa67 100644
--- a/lib/fog/libvirt/requests/compute/get_node_info.rb
+++ b/lib/fog/libvirt/requests/compute/get_node_info.rb
@@ -26,12 +26,10 @@ module Fog
def node_attr attr, xml
xml_element(xml, "sysinfo/system/entry[@name='#{attr}']").strip
end
-
end
class Mock
def get_node_info
-
end
end
end
diff --git a/lib/fog/libvirt/requests/compute/list_domains.rb b/lib/fog/libvirt/requests/compute/list_domains.rb
index 0516040..c756b32 100644
--- a/lib/fog/libvirt/requests/compute/list_domains.rb
+++ b/lib/fog/libvirt/requests/compute/list_domains.rb
@@ -5,9 +5,9 @@ module Fog
def list_domains(filter = { })
data=[]
- if filter.has_key?(:uuid)
+ if filter.key?(:uuid)
data << client.lookup_domain_by_uuid(filter[:uuid])
- elsif filter.has_key?(:name)
+ elsif filter.key?(:name)
data << client.lookup_domain_by_name(filter[:name])
else
client.list_defined_domains.each { |name| data << client.lookup_domain_by_name(name) } unless filter[:defined] == false
@@ -69,7 +69,6 @@ module Fog
:state => states[dom.info.state]
}
end
-
end
class Mock
diff --git a/lib/fog/libvirt/requests/compute/list_interfaces.rb b/lib/fog/libvirt/requests/compute/list_interfaces.rb
index 2af2ff6..d938437 100644
--- a/lib/fog/libvirt/requests/compute/list_interfaces.rb
+++ b/lib/fog/libvirt/requests/compute/list_interfaces.rb
@@ -25,7 +25,6 @@ module Fog
when :name
client.lookup_interface_by_name(filter[:name])
end
-
end
def interface_to_attributes(net)
@@ -36,7 +35,6 @@ module Fog
:active => net.active?
}
end
-
end
class Mock
diff --git a/lib/fog/libvirt/requests/compute/list_networks.rb b/lib/fog/libvirt/requests/compute/list_networks.rb
index 508fd99..5f55c2a 100644
--- a/lib/fog/libvirt/requests/compute/list_networks.rb
+++ b/lib/fog/libvirt/requests/compute/list_networks.rb
@@ -3,7 +3,6 @@ module Fog
class Libvirt
class Real
def list_networks(filter = { })
-
data=[]
if filter.keys.empty?
(client.list_networks + client.list_defined_networks).each do |network_name|
@@ -24,7 +23,6 @@ module Fog
when :name
client.lookup_network_by_name(filter[:name])
end
-
end
def network_to_attributes(net)
@@ -35,7 +33,6 @@ module Fog
:bridge_name => net.bridge_name
}
end
-
end
class Mock
diff --git a/lib/fog/libvirt/requests/compute/list_pool_volumes.rb b/lib/fog/libvirt/requests/compute/list_pool_volumes.rb
index d3b15da..6faba30 100644
--- a/lib/fog/libvirt/requests/compute/list_pool_volumes.rb
+++ b/lib/fog/libvirt/requests/compute/list_pool_volumes.rb
@@ -8,12 +8,10 @@ module Fog
volume_to_attributes(pool.lookup_volume_by_name(volume_name))
end
end
-
end
class Mock
def list_pool_volumes(uuid)
-
end
end
end
diff --git a/lib/fog/libvirt/requests/compute/list_pools.rb b/lib/fog/libvirt/requests/compute/list_pools.rb
index e4b2220..8113b6a 100644
--- a/lib/fog/libvirt/requests/compute/list_pools.rb
+++ b/lib/fog/libvirt/requests/compute/list_pools.rb
@@ -4,9 +4,9 @@ module Fog
class Real
def list_pools(filter = { })
data=[]
- if filter.has_key?(:name)
+ if filter.key?(:name)
data << find_pool_by_name(filter[:name])
- elsif filter.has_key?(:uuid)
+ elsif filter.key?(:uuid)
data << find_pool_by_uuid(filter[:uuid])
else
(client.list_storage_pools + client.list_defined_storage_pools).each do |name|
@@ -43,7 +43,6 @@ module Fog
rescue ::Libvirt::RetrieveError
nil
end
-
end
class Mock
diff --git a/lib/fog/libvirt/requests/compute/list_volumes.rb b/lib/fog/libvirt/requests/compute/list_volumes.rb
index af8723e..8c7ac6a 100644
--- a/lib/fog/libvirt/requests/compute/list_volumes.rb
+++ b/lib/fog/libvirt/requests/compute/list_volumes.rb
@@ -19,7 +19,6 @@ module Fog
private
def volume_to_attributes(vol)
-
format_type = xml_element(vol.xml_desc, "/volume/target/format", "type") rescue nil # not all volumes have types, e.g. LVM
return nil if format_type == "dir"
diff --git a/lib/fog/libvirt/requests/compute/update_display.rb b/lib/fog/libvirt/requests/compute/update_display.rb
index 7d44cd9..a2141e1 100644
--- a/lib/fog/libvirt/requests/compute/update_display.rb
+++ b/lib/fog/libvirt/requests/compute/update_display.rb
@@ -3,7 +3,7 @@ module Fog
class Libvirt
class Real
def update_display(options = { })
- raise ArgumentError, "uuid is a required parameter" unless options.has_key? :uuid
+ raise ArgumentError, "uuid is a required parameter" unless options.key? :uuid
display = { }
display[:type] = options[:type] || 'vnc'
display[:port] = (options[:port] || -1).to_s
@@ -22,7 +22,7 @@ module Fog
class Mock
def update_display(options = { })
- raise ArgumentError, "uuid is a required parameter" unless options.has_key? :uuid
+ raise ArgumentError, "uuid is a required parameter" unless options.key? :uuid
true
end
end
diff --git a/lib/fog/linode/compute.rb b/lib/fog/linode/compute.rb
index 5b823ac..4447c52 100644
--- a/lib/fog/linode/compute.rb
+++ b/lib/fog/linode/compute.rb
@@ -3,7 +3,6 @@ require 'fog/linode/core'
module Fog
module Compute
class Linode < Fog::Service
-
requires :linode_api_key
recognizes :port, :scheme, :persistent
@@ -40,6 +39,8 @@ module Fog
request :linode_ip_addprivate
request :linode_config_list
request :linode_config_create
+ request :linode_config_delete
+ request :linode_config_update
request :linode_create
request :linode_delete
request :linode_list
@@ -51,7 +52,6 @@ module Fog
# request :linode_resize
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {}
@@ -73,11 +73,9 @@ module Fog
def reset_data
self.class.data.delete(@linode_api_key)
end
-
end
class Real
-
def initialize(options={})
@linode_api_key = options[:linode_api_key]
@host = options[:host] || "api.linode.com"
@@ -110,7 +108,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/linode/core.rb b/lib/fog/linode/core.rb
index 948a19a..5734aab 100644
--- a/lib/fog/linode/core.rb
+++ b/lib/fog/linode/core.rb
@@ -8,4 +8,3 @@ module Fog
service(:dns, 'DNS')
end
end
-
diff --git a/lib/fog/linode/dns.rb b/lib/fog/linode/dns.rb
index 144ec7f..d49edd3 100644
--- a/lib/fog/linode/dns.rb
+++ b/lib/fog/linode/dns.rb
@@ -3,7 +3,6 @@ require 'fog/linode/core'
module Fog
module DNS
class Linode < Fog::Service
-
requires :linode_api_key
recognizes :port, :scheme, :persistent
@@ -24,7 +23,6 @@ module Fog
request :domain_resource_update
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {}
@@ -46,11 +44,9 @@ module Fog
def reset_data
self.class.data.delete(@linode_api_key)
end
-
end
class Real
-
def initialize(options={})
@connection_options = options[:connection_options] || {}
@host = options[:host] || "api.linode.com"
@@ -85,7 +81,6 @@ module Fog
end
response
end
-
end
end
end
diff --git a/lib/fog/linode/models/compute/disks.rb b/lib/fog/linode/models/compute/disks.rb
index 06ff71c..f92fe9f 100644
--- a/lib/fog/linode/models/compute/disks.rb
+++ b/lib/fog/linode/models/compute/disks.rb
@@ -16,7 +16,7 @@ module Fog
def get(id)
requires :server
new disks(server.id, id).first
- rescue Fog::Linode::Compute::NotFound
+ rescue Fog::Compute::Linode::NotFound
nil
end
diff --git a/lib/fog/linode/models/compute/flavor.rb b/lib/fog/linode/models/compute/flavor.rb
index d41c62c..5a19a0c 100644
--- a/lib/fog/linode/models/compute/flavor.rb
+++ b/lib/fog/linode/models/compute/flavor.rb
@@ -9,10 +9,7 @@ module Fog
attribute :name
attribute :ram
attribute :price
-
- def cores
- 4 # linode always has 4 cores
- end
+ attribute :cores
def bits
0 # these are determined by images you select not the hardware
diff --git a/lib/fog/linode/models/compute/flavors.rb b/lib/fog/linode/models/compute/flavors.rb
index d989b48..530ec32 100644
--- a/lib/fog/linode/models/compute/flavors.rb
+++ b/lib/fog/linode/models/compute/flavors.rb
@@ -13,7 +13,7 @@ module Fog
def get(id)
new flavors(id).first
- rescue Fog::Linode::Compute::NotFound
+ rescue Fog::Compute::Linode::NotFound
nil
end
diff --git a/lib/fog/linode/models/compute/server.rb b/lib/fog/linode/models/compute/server.rb
index c660338..41fd8a1 100644
--- a/lib/fog/linode/models/compute/server.rb
+++ b/lib/fog/linode/models/compute/server.rb
@@ -66,6 +66,10 @@ module Fog
service.linode_delete id
end
+ def ready?
+ status == 1
+ end
+
private
def config
service.linode_config_list(id).body['DATA'].first['ConfigID']
@@ -79,9 +83,9 @@ module Fog
end
def create_disks
- @swap = disks.create :type => :swap, :name => @name, :size => @flavor.ram
+ @swap = disks.create :type => :swap, :name => @name, :size => 256
@disk = disks.create(:type => @type, :image => @image, :stack_script => @stack_script,
- :password => @password, :name => @name, :size => (@flavor.disk*1024)- at flavor.ram)
+ :password => @password, :name => @name, :size => (@flavor.disk*1024)-256)
end
def create_config
diff --git a/lib/fog/linode/models/dns/record.rb b/lib/fog/linode/models/dns/record.rb
index f2019a4..48ebbdf 100644
--- a/lib/fog/linode/models/dns/record.rb
+++ b/lib/fog/linode/models/dns/record.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module DNS
class Linode
-
class Record < Fog::Model
extend Fog::Deprecation
deprecate :ip, :value
@@ -63,9 +62,7 @@ module Fog
def zone=(new_zone)
@zone = new_zone
end
-
end
-
end
end
end
diff --git a/lib/fog/linode/models/dns/records.rb b/lib/fog/linode/models/dns/records.rb
index 33b41e8..340dc3a 100644
--- a/lib/fog/linode/models/dns/records.rb
+++ b/lib/fog/linode/models/dns/records.rb
@@ -4,9 +4,7 @@ require 'fog/linode/models/dns/record'
module Fog
module DNS
class Linode
-
class Records < Fog::Collection
-
attribute :zone
model Fog::DNS::Linode::Record
@@ -29,9 +27,7 @@ module Fog
requires :zone
super({ :zone => zone }.merge!(attributes))
end
-
end
-
end
end
end
diff --git a/lib/fog/linode/models/dns/zone.rb b/lib/fog/linode/models/dns/zone.rb
index bd9d5fb..80f9232 100644
--- a/lib/fog/linode/models/dns/zone.rb
+++ b/lib/fog/linode/models/dns/zone.rb
@@ -4,9 +4,7 @@ require 'fog/linode/models/dns/records'
module Fog
module DNS
class Linode
-
class Zone < Fog::Model
-
identity :id, :aliases => ['DomainID', 'DOMAINID', 'ResourceID']
attribute :description, :aliases => 'DESCRIPTION'
@@ -75,9 +73,7 @@ module Fog
merge_attributes(response.body['DATA'])
true
end
-
end
-
end
end
end
diff --git a/lib/fog/linode/models/dns/zones.rb b/lib/fog/linode/models/dns/zones.rb
index fd2e085..cbd467c 100644
--- a/lib/fog/linode/models/dns/zones.rb
+++ b/lib/fog/linode/models/dns/zones.rb
@@ -4,9 +4,7 @@ require 'fog/linode/models/dns/zone'
module Fog
module DNS
class Linode
-
class Zones < Fog::Collection
-
model Fog::DNS::Linode::Zone
def all
@@ -21,9 +19,7 @@ module Fog
nil
end
end
-
end
-
end
end
end
diff --git a/lib/fog/linode/requests/compute/avail_datacenters.rb b/lib/fog/linode/requests/compute/avail_datacenters.rb
index 26bf5f9..c048c3b 100644
--- a/lib/fog/linode/requests/compute/avail_datacenters.rb
+++ b/lib/fog/linode/requests/compute/avail_datacenters.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
# Get available data centers
#
# ==== Returns
@@ -16,7 +15,6 @@ module Fog
:query => { :api_action => 'avail.datacenters' }
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/avail_distributions.rb b/lib/fog/linode/requests/compute/avail_distributions.rb
index 940dd63..8308d00 100644
--- a/lib/fog/linode/requests/compute/avail_distributions.rb
+++ b/lib/fog/linode/requests/compute/avail_distributions.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
# Get available distributions
#
# ==== Parameters
@@ -23,7 +22,6 @@ module Fog
:query => { :api_action => 'avail.distributions' }.merge!(options)
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/avail_kernels.rb b/lib/fog/linode/requests/compute/avail_kernels.rb
index 3d695ef..6c0c125 100644
--- a/lib/fog/linode/requests/compute/avail_kernels.rb
+++ b/lib/fog/linode/requests/compute/avail_kernels.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
# Get available kernels
#
# ==== Parameters
@@ -23,7 +22,6 @@ module Fog
:query => { :api_action => 'avail.kernels' }.merge!(options)
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/avail_linodeplans.rb b/lib/fog/linode/requests/compute/avail_linodeplans.rb
index 111d3a7..7cda177 100644
--- a/lib/fog/linode/requests/compute/avail_linodeplans.rb
+++ b/lib/fog/linode/requests/compute/avail_linodeplans.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
# Get available plans
#
# ==== Parameters
@@ -23,11 +22,8 @@ module Fog
:query => { :api_action => 'avail.linodeplans' }.merge!(options)
)
- #hack for plans not filtering by id like they should above, remove when they fix it.
- result.body["DATA"] = result.body["DATA"].select { |item| item['PLANID'] == linodeplan_id } if linodeplan_id
result
end
-
end
class Mock
@@ -58,6 +54,7 @@ module Fog
{ "PRICE" => 19.95, "RAM" => 512, "XFER" => 200,
"PLANID" => linodeplan_id, "LABEL" => "Linode #{linodeplan_id}",
"DISK" => 20,
+ "CORES" => 1,
"AVAIL" => {
"3"=>48, "2"=>207, "7"=>161, "6"=>143, "4"=>108, "8"=>60
}
diff --git a/lib/fog/linode/requests/compute/avail_stackscripts.rb b/lib/fog/linode/requests/compute/avail_stackscripts.rb
index 0b0d8df..88df620 100644
--- a/lib/fog/linode/requests/compute/avail_stackscripts.rb
+++ b/lib/fog/linode/requests/compute/avail_stackscripts.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
def avail_stackscripts(options={})
result = request(
:expects => 200,
@@ -12,7 +11,6 @@ module Fog
result.body['DATA'].each { |r| r['DISTRIBUTIONIDLIST'] = r['DISTRIBUTIONIDLIST'].to_s }
result
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/linode_boot.rb b/lib/fog/linode/requests/compute/linode_boot.rb
index 48db21c..8b8f269 100644
--- a/lib/fog/linode/requests/compute/linode_boot.rb
+++ b/lib/fog/linode/requests/compute/linode_boot.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
def linode_boot(linode_id, config_id)
request(
:expects => 200,
@@ -10,7 +9,6 @@ module Fog
:query => { :api_action => 'linode.boot', :linodeId => linode_id, :configId => config_id }
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/linode_config_create.rb b/lib/fog/linode/requests/compute/linode_config_create.rb
index e603d43..19431c0 100644
--- a/lib/fog/linode/requests/compute/linode_config_create.rb
+++ b/lib/fog/linode/requests/compute/linode_config_create.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
def linode_config_create(linode_id, kernel_id, name, disk_list)
request(
:expects => 200,
@@ -16,7 +15,6 @@ module Fog
}
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/linode_config_delete.rb b/lib/fog/linode/requests/compute/linode_config_delete.rb
new file mode 100644
index 0000000..27bc212
--- /dev/null
+++ b/lib/fog/linode/requests/compute/linode_config_delete.rb
@@ -0,0 +1,32 @@
+module Fog
+ module Compute
+ class Linode
+ class Real
+ def linode_config_delete(linode_id, config_id)
+ request(
+ :expects => 200,
+ :method => 'GET',
+ :query => {
+ :api_action => 'linode.config.delete',
+ :linodeId => linode_id,
+ :configId => config_id
+ }
+ )
+ end
+ end
+
+ class Mock
+ def linode_config_delete(linode_id, config_id)
+ response = Excon::Response.new
+ response.status = 200
+ response.body = {
+ "ERRORARRAY" => [],
+ "ACTION" => "linode.config.delete",
+ "DATA" => { "ConfigID" => rand(10000..99999) }
+ }
+ response
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/linode/requests/compute/linode_config_list.rb b/lib/fog/linode/requests/compute/linode_config_list.rb
index 3b66526..d73c8e1 100644
--- a/lib/fog/linode/requests/compute/linode_config_list.rb
+++ b/lib/fog/linode/requests/compute/linode_config_list.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
def linode_config_list(linode_id, config_id=nil, options={})
if config_id
options.merge!(:configid => config_id)
@@ -13,7 +12,6 @@ module Fog
:query => { :api_action => 'linode.config.list', :linodeId => linode_id }.merge!(options)
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/linode_config_update.rb b/lib/fog/linode/requests/compute/linode_config_update.rb
new file mode 100644
index 0000000..dd7df8f
--- /dev/null
+++ b/lib/fog/linode/requests/compute/linode_config_update.rb
@@ -0,0 +1,33 @@
+module Fog
+ module Compute
+ class Linode
+ class Real
+ # api docs say LinodeID is optional, turns out its required
+ def linode_config_update(linode_id, config_id, options={})
+ request(
+ :expects => 200,
+ :method => 'GET',
+ :query => {
+ :api_action => 'linode.config.update',
+ :configId => config_id,
+ :linodeID => linode_id
+ }.merge!(options)
+ )
+ end
+ end
+
+ class Mock
+ def linode_config_update(linode_id, config_id, options={})
+ response = Excon::Response.new
+ response.status = 200
+ response.body = {
+ "ERRORARRAY" => [],
+ "ACTION" => "linode.config.update",
+ "DATA" => { "ConfigID" => rand(10000..99999) }
+ }
+ response
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/linode/requests/compute/linode_create.rb b/lib/fog/linode/requests/compute/linode_create.rb
index 8361127..9860d0f 100644
--- a/lib/fog/linode/requests/compute/linode_create.rb
+++ b/lib/fog/linode/requests/compute/linode_create.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
# Creates a linode and assigns you full privileges
#
# ==== Parameters
@@ -26,7 +25,6 @@ module Fog
}
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/linode_delete.rb b/lib/fog/linode/requests/compute/linode_delete.rb
index b915a65..414c8ac 100644
--- a/lib/fog/linode/requests/compute/linode_delete.rb
+++ b/lib/fog/linode/requests/compute/linode_delete.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
# List all linodes user has access or delete to
#
# ==== Parameters
@@ -21,7 +20,6 @@ module Fog
:query => { :api_action => 'linode.delete', :linodeId => linode_id }.merge!(options)
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/linode_disk_create.rb b/lib/fog/linode/requests/compute/linode_disk_create.rb
index 2e8a2dc..c877185 100644
--- a/lib/fog/linode/requests/compute/linode_disk_create.rb
+++ b/lib/fog/linode/requests/compute/linode_disk_create.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
def linode_disk_create(linode_id, name, type, size)
request(
:expects => 200,
@@ -16,7 +15,6 @@ module Fog
}
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/linode_disk_createfromdistribution.rb b/lib/fog/linode/requests/compute/linode_disk_createfromdistribution.rb
index 0b4b2ce..d3dfc19 100644
--- a/lib/fog/linode/requests/compute/linode_disk_createfromdistribution.rb
+++ b/lib/fog/linode/requests/compute/linode_disk_createfromdistribution.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
def linode_disk_createfromdistribution(linode_id, distro_id, name, size, password)
request(
:expects => 200,
@@ -17,7 +16,6 @@ module Fog
}
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/linode_disk_createfromstackscript.rb b/lib/fog/linode/requests/compute/linode_disk_createfromstackscript.rb
index 7d0d964..26f03b8 100644
--- a/lib/fog/linode/requests/compute/linode_disk_createfromstackscript.rb
+++ b/lib/fog/linode/requests/compute/linode_disk_createfromstackscript.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
def linode_disk_createfromstackscript(linode_id, script_id, distro_id, name, size, password, options={})
request(
:expects => 200,
@@ -19,7 +18,6 @@ module Fog
}
)
end
-
end
end
end
diff --git a/lib/fog/linode/requests/compute/linode_disk_delete.rb b/lib/fog/linode/requests/compute/linode_disk_delete.rb
index e4d7929..182e0f8 100644
--- a/lib/fog/linode/requests/compute/linode_disk_delete.rb
+++ b/lib/fog/linode/requests/compute/linode_disk_delete.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
def linode_disk_delete(linode_id, disk_id)
request(
:expects => 200,
@@ -14,7 +13,6 @@ module Fog
}
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/linode_disk_list.rb b/lib/fog/linode/requests/compute/linode_disk_list.rb
index 6cf383a..6ecd9cf 100644
--- a/lib/fog/linode/requests/compute/linode_disk_list.rb
+++ b/lib/fog/linode/requests/compute/linode_disk_list.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
def linode_disk_list(linode_id, disk_id=nil)
options = {}
if disk_id
@@ -14,7 +13,6 @@ module Fog
:query => { :api_action => 'linode.disk.list', :linodeId => linode_id }.merge!(options)
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/linode_ip_addprivate.rb b/lib/fog/linode/requests/compute/linode_ip_addprivate.rb
index a627ba0..8cc1169 100644
--- a/lib/fog/linode/requests/compute/linode_ip_addprivate.rb
+++ b/lib/fog/linode/requests/compute/linode_ip_addprivate.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
def linode_ip_addprivate(linode_id)
request(
:expects => 200,
@@ -10,7 +9,6 @@ module Fog
:query => { :api_action => 'linode.ip.addprivate', :linodeId => linode_id }
)
end
-
end
end
end
diff --git a/lib/fog/linode/requests/compute/linode_ip_list.rb b/lib/fog/linode/requests/compute/linode_ip_list.rb
index ba2998d..fd909cd 100644
--- a/lib/fog/linode/requests/compute/linode_ip_list.rb
+++ b/lib/fog/linode/requests/compute/linode_ip_list.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
def linode_ip_list(linode_id, ip_id=nil)
options = {}
if ip_id
@@ -14,7 +13,6 @@ module Fog
:query => { :api_action => 'linode.ip.list', :linodeId => linode_id }.merge!(options)
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/linode_list.rb b/lib/fog/linode/requests/compute/linode_list.rb
index 0f1beda..1ef8835 100644
--- a/lib/fog/linode/requests/compute/linode_list.rb
+++ b/lib/fog/linode/requests/compute/linode_list.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
# List all linodes user has access or delete to
#
# ==== Parameters
@@ -23,7 +22,6 @@ module Fog
:query => { :api_action => 'linode.list' }.merge!(options)
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/linode_reboot.rb b/lib/fog/linode/requests/compute/linode_reboot.rb
index f9657e5..f7572c6 100644
--- a/lib/fog/linode/requests/compute/linode_reboot.rb
+++ b/lib/fog/linode/requests/compute/linode_reboot.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
# Issues a shutdown, and then a boot job for a given linode
#
# ==== Parameters
@@ -21,7 +20,6 @@ module Fog
:query => { :api_action => 'linode.reboot', :linodeId => linode_id }.merge!(options)
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/linode_shutdown.rb b/lib/fog/linode/requests/compute/linode_shutdown.rb
index 736d1d4..4efa4c5 100644
--- a/lib/fog/linode/requests/compute/linode_shutdown.rb
+++ b/lib/fog/linode/requests/compute/linode_shutdown.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
def linode_shutdown(linode_id)
request(
:expects => 200,
@@ -10,7 +9,6 @@ module Fog
:query => { :api_action => 'linode.shutdown', :linodeId => linode_id }
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/linode_update.rb b/lib/fog/linode/requests/compute/linode_update.rb
index 50ce94a..b080449 100644
--- a/lib/fog/linode/requests/compute/linode_update.rb
+++ b/lib/fog/linode/requests/compute/linode_update.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
def linode_update(linode_id, options={})
request(
:expects => 200,
@@ -10,7 +9,6 @@ module Fog
:query => { :api_action => 'linode.update', :linodeId => linode_id }.merge!(options)
)
end
-
end
class Mock
diff --git a/lib/fog/linode/requests/compute/stackscript_list.rb b/lib/fog/linode/requests/compute/stackscript_list.rb
index b98119d..a5e135c 100644
--- a/lib/fog/linode/requests/compute/stackscript_list.rb
+++ b/lib/fog/linode/requests/compute/stackscript_list.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Linode
class Real
-
# Get available stack scripts
#
# ==== Parameters
@@ -25,7 +24,6 @@ module Fog
result.body['DATA'].each { |r| r['DISTRIBUTIONIDLIST'] = r['DISTRIBUTIONIDLIST'].to_s }
result
end
-
end
end
end
diff --git a/lib/fog/linode/requests/dns/domain_create.rb b/lib/fog/linode/requests/dns/domain_create.rb
index 0164600..79e93fa 100644
--- a/lib/fog/linode/requests/dns/domain_create.rb
+++ b/lib/fog/linode/requests/dns/domain_create.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Linode
class Real
-
# Creates a domain record
#
# ==== Parameters
@@ -36,7 +35,6 @@ module Fog
}.merge!( options)
)
end
-
end
end
end
diff --git a/lib/fog/linode/requests/dns/domain_delete.rb b/lib/fog/linode/requests/dns/domain_delete.rb
index 47ec126..f554c25 100644
--- a/lib/fog/linode/requests/dns/domain_delete.rb
+++ b/lib/fog/linode/requests/dns/domain_delete.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Linode
class Real
-
# Delete the given domain from the list Linode hosts
#
# ==== Parameters
@@ -20,7 +19,6 @@ module Fog
:query => { :api_action => 'domain.delete', :domainId => domain_id }
)
end
-
end
end
end
diff --git a/lib/fog/linode/requests/dns/domain_list.rb b/lib/fog/linode/requests/dns/domain_list.rb
index e7f99ae..435514a 100644
--- a/lib/fog/linode/requests/dns/domain_list.rb
+++ b/lib/fog/linode/requests/dns/domain_list.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Linode
class Real
-
# List of domains (you have access to)
#
# ==== Parameters
@@ -35,7 +34,6 @@ module Fog
:query => { :api_action => 'domain.list' }.merge!(options)
)
end
-
end
end
end
diff --git a/lib/fog/linode/requests/dns/domain_resource_create.rb b/lib/fog/linode/requests/dns/domain_resource_create.rb
index 52df564..0291e22 100644
--- a/lib/fog/linode/requests/dns/domain_resource_create.rb
+++ b/lib/fog/linode/requests/dns/domain_resource_create.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Linode
class Real
-
# Creates a resource record in a domain
#
# ==== Parameters
@@ -37,7 +36,6 @@ module Fog
}.merge!( options)
)
end
-
end
end
end
diff --git a/lib/fog/linode/requests/dns/domain_resource_delete.rb b/lib/fog/linode/requests/dns/domain_resource_delete.rb
index 40de204..7917cf1 100644
--- a/lib/fog/linode/requests/dns/domain_resource_delete.rb
+++ b/lib/fog/linode/requests/dns/domain_resource_delete.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Linode
class Real
-
# Delete the given resource from a domain
#
# ==== Parameters
@@ -21,7 +20,6 @@ module Fog
:query => { :api_action => 'domain.resource.delete', :domainId => domain_id, :resourceID => resource_id }
)
end
-
end
end
end
diff --git a/lib/fog/linode/requests/dns/domain_resource_list.rb b/lib/fog/linode/requests/dns/domain_resource_list.rb
index 4a8fb1b..8b5d3b9 100644
--- a/lib/fog/linode/requests/dns/domain_resource_list.rb
+++ b/lib/fog/linode/requests/dns/domain_resource_list.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Linode
class Real
-
# List of resource records for a domain
#
# ==== Parameters
@@ -36,7 +35,6 @@ module Fog
:query => query
)
end
-
end
end
end
diff --git a/lib/fog/linode/requests/dns/domain_resource_update.rb b/lib/fog/linode/requests/dns/domain_resource_update.rb
index 236b658..44bc585 100644
--- a/lib/fog/linode/requests/dns/domain_resource_update.rb
+++ b/lib/fog/linode/requests/dns/domain_resource_update.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Linode
class Real
-
# Updates a resource record in a domain
#
# ==== Parameters
@@ -27,7 +26,6 @@ module Fog
# * DATA<~Hash>:
# * 'ResourceID'<~Integer>: ID of the resource record updated
def domain_resource_update(domain_id, resource_id, options = {})
-
query= {}
request(
:expects => 200,
@@ -39,7 +37,6 @@ module Fog
}.merge!( options)
)
end
-
end
end
end
diff --git a/lib/fog/linode/requests/dns/domain_update.rb b/lib/fog/linode/requests/dns/domain_update.rb
index c5d0a03..e6ea534 100644
--- a/lib/fog/linode/requests/dns/domain_update.rb
+++ b/lib/fog/linode/requests/dns/domain_update.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Linode
class Real
-
# Update a domain record
#
# ==== Parameters
@@ -25,15 +24,12 @@ module Fog
# * DATA<~Hash>:
# * 'DomainID'<~Integer>: domain ID
def domain_update(domain_id, options = {})
-
request(
:expects => 200,
:method => 'GET',
:query => { :api_action => 'domain.update', :domainId => domain_id }.merge!(options)
)
-
end
-
end
end
end
diff --git a/lib/fog/local/core.rb b/lib/fog/local/core.rb
index 89567c1..7212b18 100644
--- a/lib/fog/local/core.rb
+++ b/lib/fog/local/core.rb
@@ -2,10 +2,8 @@ require 'fog/core'
module Fog
module Local
-
extend Fog::Provider
service(:storage, 'Storage')
-
end
end
diff --git a/lib/fog/local/models/storage/directories.rb b/lib/fog/local/models/storage/directories.rb
index 97b37e6..d974263 100644
--- a/lib/fog/local/models/storage/directories.rb
+++ b/lib/fog/local/models/storage/directories.rb
@@ -4,9 +4,7 @@ require 'fog/local/models/storage/directory'
module Fog
module Storage
class Local
-
class Directories < Fog::Collection
-
model Fog::Storage::Local::Directory
def all
@@ -29,9 +27,7 @@ module Fog
nil
end
end
-
end
-
end
end
end
diff --git a/lib/fog/local/models/storage/directory.rb b/lib/fog/local/models/storage/directory.rb
index 4ce8e3f..8ed9d13 100644
--- a/lib/fog/local/models/storage/directory.rb
+++ b/lib/fog/local/models/storage/directory.rb
@@ -4,9 +4,7 @@ require 'fog/local/models/storage/files'
module Fog
module Storage
class Local
-
class Directory < Fog::Model
-
identity :key
def destroy
@@ -49,9 +47,7 @@ module Fog
def path
service.path_to(key)
end
-
end
-
end
end
end
diff --git a/lib/fog/local/models/storage/file.rb b/lib/fog/local/models/storage/file.rb
index 82bfa52..bc7e80b 100644
--- a/lib/fog/local/models/storage/file.rb
+++ b/lib/fog/local/models/storage/file.rb
@@ -4,9 +4,7 @@ require 'fog/core/model'
module Fog
module Storage
class Local
-
class File < Fog::Model
-
identity :key, :aliases => 'Key'
attribute :content_length, :aliases => 'Content-Length', :type => :integer
@@ -48,7 +46,7 @@ module Fog
def destroy
requires :directory, :key
- ::File.delete(path) if ::File.exists?(path)
+ ::File.delete(path) if ::File.exist?(path)
dirs = path.split(::File::SEPARATOR)[0...-1]
dirs.length.times do |index|
dir_path = dirs[0..-index].join(::File::SEPARATOR)
@@ -60,7 +58,7 @@ module Fog
break
end
pwd = Dir.pwd
- if ::File.exists?(dir_path) && ::File.directory?(dir_path)
+ if ::File.exist?(dir_path) && ::File.directory?(dir_path)
Dir.chdir(dir_path)
if Dir.glob('*').empty?
Dir.rmdir(dir_path)
@@ -97,14 +95,16 @@ module Fog
next
end
# create directory if it doesn't already exist
- unless ::File.directory?(dir_path)
+ begin
Dir.mkdir(dir_path)
+ rescue Errno::EEXIST
+ raise unless ::File.directory?(dir_path)
end
end
file = ::File.new(path, 'wb')
if body.is_a?(String)
file.write(body)
- elsif body.kind_of? ::File and ::File.exists?(body.path)
+ elsif body.kind_of? ::File and ::File.exist?(body.path)
FileUtils.cp(body.path, path)
else
file.write(body.read)
@@ -126,9 +126,7 @@ module Fog
def path
service.path_to(::File.join(directory.key, key))
end
-
end
-
end
end
end
diff --git a/lib/fog/local/models/storage/files.rb b/lib/fog/local/models/storage/files.rb
index 498190c..e701202 100644
--- a/lib/fog/local/models/storage/files.rb
+++ b/lib/fog/local/models/storage/files.rb
@@ -4,9 +4,7 @@ require 'fog/local/models/storage/file'
module Fog
module Storage
class Local
-
class Files < Fog::Collection
-
attribute :directory
model Fog::Storage::Local::File
@@ -36,7 +34,7 @@ module Fog
def get(key, &block)
requires :directory
path = file_path(key)
- if ::File.exists?(path)
+ if ::File.exist?(path)
data = {
:content_length => ::File.size(path),
:key => key,
@@ -59,7 +57,7 @@ module Fog
def head(key)
requires :directory
path = file_path(key)
- if ::File.exists?(path)
+ if ::File.exist?(path)
new({
:content_length => ::File.size(path),
:key => key,
@@ -80,7 +78,6 @@ module Fog
def file_path(key)
service.path_to(::File.join(directory.key, key))
end
-
end
end
end
diff --git a/lib/fog/local/storage.rb b/lib/fog/local/storage.rb
index 713a856..55aaacf 100644
--- a/lib/fog/local/storage.rb
+++ b/lib/fog/local/storage.rb
@@ -3,7 +3,6 @@ require 'fog/local/core'
module Fog
module Storage
class Local < Fog::Service
-
requires :local_root
recognizes :endpoint, :scheme, :host, :port, :path
@@ -16,7 +15,6 @@ module Fog
require 'uri'
class Mock
-
attr_reader :endpoint
def self.data
@@ -62,7 +60,6 @@ module Fog
end
class Real
-
attr_reader :endpoint
def initialize(options={})
@@ -94,7 +91,6 @@ module Fog
URI::Generic.build(options).to_s
end
end
-
end
end
end
diff --git a/lib/fog/ninefold/compute.rb b/lib/fog/ninefold/compute.rb
index 0ee6522..946d1f8 100644
--- a/lib/fog/ninefold/compute.rb
+++ b/lib/fog/ninefold/compute.rb
@@ -3,7 +3,6 @@ require 'fog/ninefold/core'
module Fog
module Compute
class Ninefold < Fog::Service
-
API_URL = "http://api.ninefold.com/compute/v1.0/"
requires :ninefold_compute_key, :ninefold_compute_secret
@@ -69,7 +68,6 @@ module Fog
request :update_load_balancer_rule
class Mock
-
def initialize(options)
@api_url = options[:ninefold_api_url] || API_URL
@ninefold_compute_key = options[:ninefold_compute_key]
@@ -82,7 +80,6 @@ module Fog
end
class Real
-
def initialize(options)
@api_url = options[:ninefold_api_url] || API_URL
@ninefold_compute_key = options[:ninefold_compute_key]
@@ -96,7 +93,7 @@ module Fog
params['response'] = "json"
# convert params to strings for sort
req_params = params.merge('apiKey' => @ninefold_compute_key, 'command' => command)
- req = URI.escape(req_params.sort_by{|k,v| k.to_s }.collect{|e| "#{e[0].to_s}=#{e[1].to_s}"}.join('&'))
+ req = URI.escape(req_params.sort_by{|k,v| k.to_s }.map{|e| "#{e[0].to_s}=#{e[1].to_s}"}.join('&'))
encoded_signature = url_escape(encode_signature(req))
options = {
@@ -113,7 +110,7 @@ module Fog
# the values out with a prefix, and if there is an empty data entry return an
# empty version of the expected type (if provided)
response = Fog::JSON.decode(response.body)
- if options.has_key? :response_prefix
+ if options.key? :response_prefix
keys = options[:response_prefix].split('/')
keys.each do |k|
if response[k]
@@ -131,7 +128,7 @@ module Fog
end
end
- private
+ private
def url_escape(string)
string.gsub(/([^ a-zA-Z0-9_.-]+)/n) do
'%' + $1.unpack('H2' * $1.size).join('%').upcase
diff --git a/lib/fog/ninefold/core.rb b/lib/fog/ninefold/core.rb
index 42cf0a1..261e195 100644
--- a/lib/fog/ninefold/core.rb
+++ b/lib/fog/ninefold/core.rb
@@ -3,11 +3,9 @@ require 'fog/json'
module Fog
module Ninefold
-
extend Fog::Provider
service(:compute, 'Compute')
service(:storage, 'Storage')
-
end
end
diff --git a/lib/fog/ninefold/models/compute/address.rb b/lib/fog/ninefold/models/compute/address.rb
index 8dd50e1..02a0588 100644
--- a/lib/fog/ninefold/models/compute/address.rb
+++ b/lib/fog/ninefold/models/compute/address.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Ninefold
-
class Address < Fog::Model
-
identity :id
attribute :account
@@ -96,7 +94,6 @@ module Fog
def to_boolean(val)
val && (val.to_s.match(/(true|t|yes|y|1)$/i) != nil)
end
-
end
end
end
diff --git a/lib/fog/ninefold/models/compute/addresses.rb b/lib/fog/ninefold/models/compute/addresses.rb
index 15f7e78..6e2b852 100644
--- a/lib/fog/ninefold/models/compute/addresses.rb
+++ b/lib/fog/ninefold/models/compute/addresses.rb
@@ -4,9 +4,7 @@ require 'fog/ninefold/models/compute/address'
module Fog
module Compute
class Ninefold
-
class Addresses < Fog::Collection
-
model Fog::Compute::Ninefold::Address
def all
@@ -23,9 +21,7 @@ module Fog
new(data[0])
end
end
-
end
-
end
end
end
diff --git a/lib/fog/ninefold/models/compute/flavor.rb b/lib/fog/ninefold/models/compute/flavor.rb
index 9294b95..89d0376 100644
--- a/lib/fog/ninefold/models/compute/flavor.rb
+++ b/lib/fog/ninefold/models/compute/flavor.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Ninefold
-
class Flavor < Fog::Model
-
identity :id
attribute :cpunumber
@@ -20,10 +18,7 @@ module Fog
attribute :offerha
attribute :storagetype
attribute :tags
-
-
end
-
end
end
end
diff --git a/lib/fog/ninefold/models/compute/flavors.rb b/lib/fog/ninefold/models/compute/flavors.rb
index 4212ab3..c624a06 100644
--- a/lib/fog/ninefold/models/compute/flavors.rb
+++ b/lib/fog/ninefold/models/compute/flavors.rb
@@ -4,9 +4,7 @@ require 'fog/ninefold/models/compute/flavor'
module Fog
module Compute
class Ninefold
-
class Flavors < Fog::Collection
-
model Fog::Compute::Ninefold::Flavor
def all
@@ -22,9 +20,7 @@ module Fog
new(data[0])
end
end
-
end
-
end
end
end
diff --git a/lib/fog/ninefold/models/compute/image.rb b/lib/fog/ninefold/models/compute/image.rb
index ceb7ed8..ddaad1d 100644
--- a/lib/fog/ninefold/models/compute/image.rb
+++ b/lib/fog/ninefold/models/compute/image.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Ninefold
-
class Image < Fog::Model
-
identity :id
attribute :account
@@ -34,9 +32,7 @@ module Fog
attribute :templatetype
attribute :zoneid
attribute :zonename
-
end
-
end
end
end
diff --git a/lib/fog/ninefold/models/compute/images.rb b/lib/fog/ninefold/models/compute/images.rb
index 41ea913..650a40c 100644
--- a/lib/fog/ninefold/models/compute/images.rb
+++ b/lib/fog/ninefold/models/compute/images.rb
@@ -4,9 +4,7 @@ require 'fog/ninefold/models/compute/image'
module Fog
module Compute
class Ninefold
-
class Images < Fog::Collection
-
model Fog::Compute::Ninefold::Image
def all(offering = 'executable')
@@ -22,9 +20,7 @@ module Fog
new(data[0])
end
end
-
end
-
end
end
end
diff --git a/lib/fog/ninefold/models/compute/ip_forwarding_rule.rb b/lib/fog/ninefold/models/compute/ip_forwarding_rule.rb
index 3853c42..b01d844 100644
--- a/lib/fog/ninefold/models/compute/ip_forwarding_rule.rb
+++ b/lib/fog/ninefold/models/compute/ip_forwarding_rule.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Ninefold
-
class IpForwardingRule < Fog::Model
-
identity :id
attribute :protocol
@@ -72,7 +70,6 @@ module Fog
job['jobid'] || job['id']
end
end
-
end
end
end
diff --git a/lib/fog/ninefold/models/compute/ip_forwarding_rules.rb b/lib/fog/ninefold/models/compute/ip_forwarding_rules.rb
index ae0826c..36078ff 100644
--- a/lib/fog/ninefold/models/compute/ip_forwarding_rules.rb
+++ b/lib/fog/ninefold/models/compute/ip_forwarding_rules.rb
@@ -4,9 +4,7 @@ require 'fog/ninefold/models/compute/ip_forwarding_rule'
module Fog
module Compute
class Ninefold
-
class IpForwardingRules < Fog::Collection
-
model Fog::Compute::Ninefold::IpForwardingRule
def all
@@ -23,9 +21,7 @@ module Fog
new(data[0])
end
end
-
end
-
end
end
end
diff --git a/lib/fog/ninefold/models/compute/server.rb b/lib/fog/ninefold/models/compute/server.rb
index 42d709b..76ece1a 100644
--- a/lib/fog/ninefold/models/compute/server.rb
+++ b/lib/fog/ninefold/models/compute/server.rb
@@ -3,7 +3,6 @@ require 'fog/compute/models/server'
module Fog
module Compute
class Ninefold
-
class Server < Fog::Compute::Server
extend Fog::Deprecation
deprecate :serviceofferingid, :flavor_id
@@ -66,7 +65,6 @@ module Fog
#attribute :flavor_id, :aliases => "server_type", :squash => "id"
#attribute :zone_id, :aliases => "zone", :squash => "id"
-
def initialize(attributes={})
merge_attributes({
:flavor_id => 105, # '1CPU, 384MB, 80GB HDD'
@@ -178,7 +176,6 @@ module Fog
job['jobid'] || job['id']
end
end
-
end
end
end
diff --git a/lib/fog/ninefold/models/compute/servers.rb b/lib/fog/ninefold/models/compute/servers.rb
index 6293bbd..e0e26d6 100644
--- a/lib/fog/ninefold/models/compute/servers.rb
+++ b/lib/fog/ninefold/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/ninefold/models/compute/server'
module Fog
module Compute
class Ninefold
-
class Servers < Fog::Collection
-
model Fog::Compute::Ninefold::Server
def all
@@ -23,9 +21,7 @@ module Fog
new(data[0])
end
end
-
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/assign_to_load_balancer_rule.rb b/lib/fog/ninefold/requests/compute/assign_to_load_balancer_rule.rb
index 9c46622..5044a9f 100644
--- a/lib/fog/ninefold/requests/compute/assign_to_load_balancer_rule.rb
+++ b/lib/fog/ninefold/requests/compute/assign_to_load_balancer_rule.rb
@@ -9,5 +9,3 @@ module Fog
end
end
end
-
-
diff --git a/lib/fog/ninefold/requests/compute/associate_ip_address.rb b/lib/fog/ninefold/requests/compute/associate_ip_address.rb
index 1d5113a..dea4d95 100644
--- a/lib/fog/ninefold/requests/compute/associate_ip_address.rb
+++ b/lib/fog/ninefold/requests/compute/associate_ip_address.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def associate_ip_address(options = {})
request('associateIpAddress', options, :expects => [200],
:response_prefix => 'associateipaddressresponse', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/change_service_for_virtual_machine.rb b/lib/fog/ninefold/requests/compute/change_service_for_virtual_machine.rb
index c59bb73..1842454 100644
--- a/lib/fog/ninefold/requests/compute/change_service_for_virtual_machine.rb
+++ b/lib/fog/ninefold/requests/compute/change_service_for_virtual_machine.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def change_service_for_virtual_machine(options = {})
request('changeServiceForVirtualMachine', options, :expects => [200],
:response_prefix => 'changeserviceforvirtualmachineresponse/virtualmachine', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/create_ip_forwarding_rule.rb b/lib/fog/ninefold/requests/compute/create_ip_forwarding_rule.rb
index d1ddcf1..8d207bc 100644
--- a/lib/fog/ninefold/requests/compute/create_ip_forwarding_rule.rb
+++ b/lib/fog/ninefold/requests/compute/create_ip_forwarding_rule.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def create_ip_forwarding_rule(options = {})
request('createIpForwardingRule', options, :expects => [200],
:response_prefix => 'createipforwardingruleresponse', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/delete_ip_forwarding_rule.rb b/lib/fog/ninefold/requests/compute/delete_ip_forwarding_rule.rb
index bd97345..5121bad 100644
--- a/lib/fog/ninefold/requests/compute/delete_ip_forwarding_rule.rb
+++ b/lib/fog/ninefold/requests/compute/delete_ip_forwarding_rule.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def delete_ip_forwarding_rule(options = {})
request('deleteIpForwardingRule', options, :expects => [200],
:response_prefix => 'deleteipforwardingruleresponse', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/deploy_virtual_machine.rb b/lib/fog/ninefold/requests/compute/deploy_virtual_machine.rb
index 084c142..9517d97 100644
--- a/lib/fog/ninefold/requests/compute/deploy_virtual_machine.rb
+++ b/lib/fog/ninefold/requests/compute/deploy_virtual_machine.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def deploy_virtual_machine(options = {})
request('deployVirtualMachine', options, :expects => [200],
:response_prefix => 'deployvirtualmachineresponse', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/destroy_virtual_machine.rb b/lib/fog/ninefold/requests/compute/destroy_virtual_machine.rb
index a4bd514..4666f9c 100644
--- a/lib/fog/ninefold/requests/compute/destroy_virtual_machine.rb
+++ b/lib/fog/ninefold/requests/compute/destroy_virtual_machine.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def destroy_virtual_machine(options = {})
request('destroyVirtualMachine', options, :expects => [200],
:response_prefix => 'destroyvirtualmachineresponse', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/disable_static_nat.rb b/lib/fog/ninefold/requests/compute/disable_static_nat.rb
index b982dfc..a1905d4 100644
--- a/lib/fog/ninefold/requests/compute/disable_static_nat.rb
+++ b/lib/fog/ninefold/requests/compute/disable_static_nat.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def disable_static_nat(options = {})
request('disableStaticNat', options, :expects => [200],
:response_prefix => 'disablestaticnatresponse', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/disassociate_ip_address.rb b/lib/fog/ninefold/requests/compute/disassociate_ip_address.rb
index d31f162..bd8e899 100644
--- a/lib/fog/ninefold/requests/compute/disassociate_ip_address.rb
+++ b/lib/fog/ninefold/requests/compute/disassociate_ip_address.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def disassociate_ip_address(options = {})
request('disassociateIpAddress', options, :expects => [200],
:response_prefix => 'disassociateipaddressresponse', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/enable_static_nat.rb b/lib/fog/ninefold/requests/compute/enable_static_nat.rb
index eddd6b4..c883d81 100644
--- a/lib/fog/ninefold/requests/compute/enable_static_nat.rb
+++ b/lib/fog/ninefold/requests/compute/enable_static_nat.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def enable_static_nat(options = {})
request('enableStaticNat', options, :expects => [200],
:response_prefix => 'enablestaticnatresponse', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/list_accounts.rb b/lib/fog/ninefold/requests/compute/list_accounts.rb
index 866fdb2..337af07 100644
--- a/lib/fog/ninefold/requests/compute/list_accounts.rb
+++ b/lib/fog/ninefold/requests/compute/list_accounts.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def list_accounts(options = {})
request('listAccounts', options, :expects => [200],
:response_prefix => 'listaccountsresponse/account', :response_type => Array)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/list_async_jobs.rb b/lib/fog/ninefold/requests/compute/list_async_jobs.rb
index c96b570..e8ecde5 100644
--- a/lib/fog/ninefold/requests/compute/list_async_jobs.rb
+++ b/lib/fog/ninefold/requests/compute/list_async_jobs.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def list_async_jobs(options = {})
request('listAsyncJobs', options, :expects => [200],
:response_prefix => 'listasyncjobsresponse/asyncjobs', :response_type => Array)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/list_capabilities.rb b/lib/fog/ninefold/requests/compute/list_capabilities.rb
index 7a50069..748e44f 100644
--- a/lib/fog/ninefold/requests/compute/list_capabilities.rb
+++ b/lib/fog/ninefold/requests/compute/list_capabilities.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def list_capabilities(options = {})
request('listCapabilities', options, :expects => [200],
:response_prefix => 'listcapabilitiesresponse/capability', :response_type => Array)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/list_disk_offerings.rb b/lib/fog/ninefold/requests/compute/list_disk_offerings.rb
index fa64094..dcd08bc 100644
--- a/lib/fog/ninefold/requests/compute/list_disk_offerings.rb
+++ b/lib/fog/ninefold/requests/compute/list_disk_offerings.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def list_disk_offerings(options = {})
request('listDiskOfferings', options, :expects => [200],
:response_prefix => 'listdiskofferingsresponse/diskoffering', :response_type => Array)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/list_events.rb b/lib/fog/ninefold/requests/compute/list_events.rb
index fe775b4..3c697a1 100644
--- a/lib/fog/ninefold/requests/compute/list_events.rb
+++ b/lib/fog/ninefold/requests/compute/list_events.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def list_events(options = {})
request('listEvents', options, :expects => [200],
:response_prefix => 'listeventsresponse/event', :response_type => Array)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/list_hypervisors.rb b/lib/fog/ninefold/requests/compute/list_hypervisors.rb
index 5f8dd67..a3541b7 100644
--- a/lib/fog/ninefold/requests/compute/list_hypervisors.rb
+++ b/lib/fog/ninefold/requests/compute/list_hypervisors.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def list_hypervisors(options = {})
request('listHypervisors', options, :expects => [200],
:response_prefix => 'listhypervisorsresponse/hypervisor', :response_type => Array)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/list_ip_forwarding_rules.rb b/lib/fog/ninefold/requests/compute/list_ip_forwarding_rules.rb
index 70a774d..72b4ae2 100644
--- a/lib/fog/ninefold/requests/compute/list_ip_forwarding_rules.rb
+++ b/lib/fog/ninefold/requests/compute/list_ip_forwarding_rules.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def list_ip_forwarding_rules(options = {})
request('listIpForwardingRules', options, :expects => [200],
:response_prefix => 'listipforwardingrulesresponse/ipforwardingrule', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/list_load_balancer_rule_instances.rb b/lib/fog/ninefold/requests/compute/list_load_balancer_rule_instances.rb
index 535d648..b88f0c9 100644
--- a/lib/fog/ninefold/requests/compute/list_load_balancer_rule_instances.rb
+++ b/lib/fog/ninefold/requests/compute/list_load_balancer_rule_instances.rb
@@ -9,7 +9,3 @@ module Fog
end
end
end
-
-
-
-
diff --git a/lib/fog/ninefold/requests/compute/list_load_balancer_rules.rb b/lib/fog/ninefold/requests/compute/list_load_balancer_rules.rb
index cb2f1aa..1361972 100644
--- a/lib/fog/ninefold/requests/compute/list_load_balancer_rules.rb
+++ b/lib/fog/ninefold/requests/compute/list_load_balancer_rules.rb
@@ -9,6 +9,3 @@ module Fog
end
end
end
-
-
-
diff --git a/lib/fog/ninefold/requests/compute/list_network_offerings.rb b/lib/fog/ninefold/requests/compute/list_network_offerings.rb
index 30e900c..7abd3d4 100644
--- a/lib/fog/ninefold/requests/compute/list_network_offerings.rb
+++ b/lib/fog/ninefold/requests/compute/list_network_offerings.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def list_network_offerings(options = {})
request('listNetworkOfferings', options, :expects => [200],
:response_prefix => 'listnetworkofferingsresponse/networkoffering', :response_type => Array)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/list_networks.rb b/lib/fog/ninefold/requests/compute/list_networks.rb
index bc7fb8b..5a7813b 100644
--- a/lib/fog/ninefold/requests/compute/list_networks.rb
+++ b/lib/fog/ninefold/requests/compute/list_networks.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def list_networks(options = {})
request('listNetworks', options, :expects => [200],
:response_prefix => 'listnetworksresponse/network', :response_type => Array)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/list_public_ip_addresses.rb b/lib/fog/ninefold/requests/compute/list_public_ip_addresses.rb
index f060b6b..3902dbb 100644
--- a/lib/fog/ninefold/requests/compute/list_public_ip_addresses.rb
+++ b/lib/fog/ninefold/requests/compute/list_public_ip_addresses.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def list_public_ip_addresses(options = {})
request('listPublicIpAddresses', options, :expects => [200],
:response_prefix => 'listpublicipaddressesresponse/publicipaddress', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/list_resource_limits.rb b/lib/fog/ninefold/requests/compute/list_resource_limits.rb
index 757443f..e38aaca 100644
--- a/lib/fog/ninefold/requests/compute/list_resource_limits.rb
+++ b/lib/fog/ninefold/requests/compute/list_resource_limits.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def list_resource_limits(options = {})
request('listResourceLimits', options, :expects => [200],
:response_prefix => 'listresourcelimitsresponse/resourcelimit', :response_type => Array)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/list_service_offerings.rb b/lib/fog/ninefold/requests/compute/list_service_offerings.rb
index 4f57fe0..93c4615 100644
--- a/lib/fog/ninefold/requests/compute/list_service_offerings.rb
+++ b/lib/fog/ninefold/requests/compute/list_service_offerings.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def list_service_offerings(options = {})
request('listServiceOfferings', options, :expects => [200],
:response_prefix => 'listserviceofferingsresponse/serviceoffering', :response_type => Array)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/list_templates.rb b/lib/fog/ninefold/requests/compute/list_templates.rb
index 2d2eab6..86b34da 100644
--- a/lib/fog/ninefold/requests/compute/list_templates.rb
+++ b/lib/fog/ninefold/requests/compute/list_templates.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def list_templates(options = {})
request('listTemplates', options, :expects => [200],
:response_prefix => 'listtemplatesresponse/template', :response_type => Array)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/list_virtual_machines.rb b/lib/fog/ninefold/requests/compute/list_virtual_machines.rb
index b9e1f1b..99544d6 100644
--- a/lib/fog/ninefold/requests/compute/list_virtual_machines.rb
+++ b/lib/fog/ninefold/requests/compute/list_virtual_machines.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def list_virtual_machines(options = {})
request('listVirtualMachines', options, :expects => [200],
:response_prefix => 'listvirtualmachinesresponse/virtualmachine', :response_type => Array)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/list_zones.rb b/lib/fog/ninefold/requests/compute/list_zones.rb
index e8c623a..b37a417 100644
--- a/lib/fog/ninefold/requests/compute/list_zones.rb
+++ b/lib/fog/ninefold/requests/compute/list_zones.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def list_zones(options = {})
request('listZones', options, :expects => [200],
:response_prefix => 'listzonesresponse/zone', :response_type => Array)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/query_async_job_result.rb b/lib/fog/ninefold/requests/compute/query_async_job_result.rb
index ab916ad..a091f94 100644
--- a/lib/fog/ninefold/requests/compute/query_async_job_result.rb
+++ b/lib/fog/ninefold/requests/compute/query_async_job_result.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def query_async_job_result(options = {})
request('queryAsyncJobResult', options, :expects => [200],
:response_prefix => 'queryasyncjobresultresponse', :response_type => Array)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/reboot_virtual_machine.rb b/lib/fog/ninefold/requests/compute/reboot_virtual_machine.rb
index 85963cc..64d2c48 100644
--- a/lib/fog/ninefold/requests/compute/reboot_virtual_machine.rb
+++ b/lib/fog/ninefold/requests/compute/reboot_virtual_machine.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def reboot_virtual_machine(options = {})
request('rebootVirtualMachine', options, :expects => [200],
:response_prefix => 'rebootvirtualmachineresponse', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/remove_from_load_balancer_rule.rb b/lib/fog/ninefold/requests/compute/remove_from_load_balancer_rule.rb
index a4fb7b3..8bfb6d8 100644
--- a/lib/fog/ninefold/requests/compute/remove_from_load_balancer_rule.rb
+++ b/lib/fog/ninefold/requests/compute/remove_from_load_balancer_rule.rb
@@ -9,4 +9,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/ninefold/requests/compute/reset_password_for_virtual_machine.rb b/lib/fog/ninefold/requests/compute/reset_password_for_virtual_machine.rb
index 7fe6747..1d30c24 100644
--- a/lib/fog/ninefold/requests/compute/reset_password_for_virtual_machine.rb
+++ b/lib/fog/ninefold/requests/compute/reset_password_for_virtual_machine.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def reset_password_for_virtual_machine(options = {})
request('resetPasswordForVirtualMachine', options, :expects => [200],
:response_prefix => 'resetpasswordforvirtualmachineresponse', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/start_virtual_machine.rb b/lib/fog/ninefold/requests/compute/start_virtual_machine.rb
index fd86d9e..a38c397 100644
--- a/lib/fog/ninefold/requests/compute/start_virtual_machine.rb
+++ b/lib/fog/ninefold/requests/compute/start_virtual_machine.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def start_virtual_machine(options = {})
request('startVirtualMachine', options, :expects => [200],
:response_prefix => 'startvirtualmachineresponse', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/stop_virtual_machine.rb b/lib/fog/ninefold/requests/compute/stop_virtual_machine.rb
index 542eec5..44823b2 100644
--- a/lib/fog/ninefold/requests/compute/stop_virtual_machine.rb
+++ b/lib/fog/ninefold/requests/compute/stop_virtual_machine.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def stop_virtual_machine(options = {})
request('stopVirtualMachine', options, :expects => [200],
:response_prefix => 'stopvirtualmachineresponse', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/requests/compute/update_load_balancer_rule.rb b/lib/fog/ninefold/requests/compute/update_load_balancer_rule.rb
index 86e4563..71f5703 100644
--- a/lib/fog/ninefold/requests/compute/update_load_balancer_rule.rb
+++ b/lib/fog/ninefold/requests/compute/update_load_balancer_rule.rb
@@ -9,7 +9,3 @@ module Fog
end
end
end
-
-
-
-
diff --git a/lib/fog/ninefold/requests/compute/update_virtual_machine.rb b/lib/fog/ninefold/requests/compute/update_virtual_machine.rb
index 6254e9d..eaebea8 100644
--- a/lib/fog/ninefold/requests/compute/update_virtual_machine.rb
+++ b/lib/fog/ninefold/requests/compute/update_virtual_machine.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class Ninefold
class Real
-
def update_virtual_machine(options = {})
request('updateVirtualMachine', options, :expects => [200],
:response_prefix => 'updatevirtualmachineresponse', :response_type => Hash)
end
-
end
end
end
diff --git a/lib/fog/ninefold/storage.rb b/lib/fog/ninefold/storage.rb
index 7c955f6..70a28ee 100644
--- a/lib/fog/ninefold/storage.rb
+++ b/lib/fog/ninefold/storage.rb
@@ -32,7 +32,6 @@ module Fog
def request(options)
raise "Ninefold Storage mocks not implemented"
end
-
end
class Real < Fog::Storage::Atmos::Real
diff --git a/lib/fog/opennebula.rb b/lib/fog/opennebula.rb
new file mode 100644
index 0000000..eecf9fa
--- /dev/null
+++ b/lib/fog/opennebula.rb
@@ -0,0 +1 @@
+require 'fog/opennebula/compute'
diff --git a/lib/fog/opennebula/README.md b/lib/fog/opennebula/README.md
new file mode 100755
index 0000000..f897d63
--- /dev/null
+++ b/lib/fog/opennebula/README.md
@@ -0,0 +1,113 @@
+# Getting started with OpenNebula (one) Fog provider
+
+[OpenNebula](http://www.opennebula.org) provides ruby bindings to access the xml-rpc
+
+The opennebula fog extensions provides examples for using Fog with OpenNebula (4.4).
+
+**Note:** This provider is under construction! This means everything that is provided should work without problems, but there are many features not available yet. Please contribute!
+
+## Requirements
+
+For working with this provider the following pre-requisites are needed:
+
+* Ruby version 1.8.x or 1.9.x
+* `fog` gem
+* Working OpenNebula instance with XML-RPC and credentials
+* This version is tested with OpenNebula 4.4 and the opennebula gem dependency is hardcoded to this version. it should work with version 4.6, but is not tested.
+
+
+## Examples
+
+General proceeding:
+
+* Connect to one-rpc
+* create new vm object
+* fetch a template/flavor from one (this template should be predefined)
+* assigne the flavor/template to the vm
+* change the attributes of this flavor/template (name, cpu, memory, nics....)
+* save/instantiate the vm
+
+```ruby
+require 'fog'
+
+# connect to your one rpc
+con = Fog::Compute.new(
+ {
+ :provider => 'OpenNebula',
+ :opennebula_username => 'user',
+ :opennebula_password => 'password',
+ :opennebula_endpoint => 'http://oned.domain:2633/RPC2'
+ }
+ )
+
+
+# list all vms
+con.servers
+
+# list all flavors (templates in OpenNebula slang)
+con.flavors
+
+# get flavor with id 4
+con.flavors.get 4
+
+# list all Virtual Networks
+con.networks
+con.networks.get 2
+
+# get all usergroups
+con.groups
+
+# create a new vm (creates the object, the vm is not instantiated yet)
+newvm = con.servers.new
+
+# set the flavor of the vm
+newvm.flavor = con.flavors.get 4
+
+# set the name of the vm
+newvm.name = "FooBarVM"
+
+# set the groupid of the vm
+newvm.gid = 0
+
+# set cores and memory (MB)
+newvm.flavor.vcpu = 2
+newvm.flavor.memory = 256
+
+# create a new network interface attached to the network with id 1 and virtio as driver/model
+network = client.networks.get(1)
+nic = con.interfaces.new({ :vnet => network, :model => "virtio"})
+
+# Attach the new nic to our vm
+newvm.flavor.nic = [ nic ]
+
+# instantiat the new vm
+newvm.save
+```
+
+## Features
+
+tbd
+
+## not working yet
+
+* con.groups.get 4
+
+_AND_ everything not mentioned in features or examples ;)
+
+
+## Troubleshooting
+
+* ArgumentError: opennebula is not a recognized compute provider
+ * is the correct gem version included?
+
+## Additional Resources
+* [Fog cloud library](http://fog.io)
+* [Fog documentation](http://rubydoc.info/gems/fog)
+* [Fog Github repo](https://github.com/fog/fog)
+* [Fog Release Notes](https://github.com/fog/fog/blob/master/changelog.txt)
+* [Ruby OpenNebula Cloud API](http://docs.opennebula.org/stable/integration/system_interfaces/ruby.html)
+* [OpenNebula ruby bindings](http://docs.opennebula.org/doc/stable/oca/ruby/)
+
+## Support and Feedback
+
+Please contribute and send feedback! Just do it here!
diff --git a/lib/fog/opennebula/compute.rb b/lib/fog/opennebula/compute.rb
new file mode 100644
index 0000000..4f94e79
--- /dev/null
+++ b/lib/fog/opennebula/compute.rb
@@ -0,0 +1,57 @@
+require 'fog/opennebula/core'
+
+module Fog
+ module Compute
+ class OpenNebula < Fog::Service
+ requires :opennebula_endpoint
+ recognizes :opennebula_username, :opennebula_password
+
+ model_path 'fog/opennebula/models/compute'
+ model :server
+ collection :servers
+ model :network
+ collection :networks
+ model :flavor
+ collection :flavors
+ model :interface
+ collection :interfaces
+ model :group
+ collection :groups
+
+ request_path 'fog/opennebula/requests/compute'
+ request :list_vms
+ request :list_groups
+ request :list_networks
+ request :vm_allocate
+ request :vm_destroy
+ request :get_vnc_console
+ request :vm_resume
+ request :vm_stop
+ request :template_pool
+
+ class Mock
+ include Collections
+ def initialize(options={})
+ require 'opennebula'
+ end
+
+ def client
+ return @client
+ end
+ end
+
+ class Real
+ include Collections
+
+ def client
+ return @client
+ end
+
+ def initialize(options={})
+ require 'opennebula'
+ @client = ::OpenNebula::Client.new("#{options[:opennebula_username]}:#{options[:opennebula_password]}", options[:opennebula_endpoint])
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/opennebula/core.rb b/lib/fog/opennebula/core.rb
new file mode 100644
index 0000000..8fa3394
--- /dev/null
+++ b/lib/fog/opennebula/core.rb
@@ -0,0 +1,8 @@
+require 'fog/core'
+
+module Fog
+ module OpenNebula
+ extend Fog::Provider
+ service(:compute, 'Compute')
+ end
+end
diff --git a/lib/fog/opennebula/models/compute/flavor.rb b/lib/fog/opennebula/models/compute/flavor.rb
new file mode 100644
index 0000000..69ae14d
--- /dev/null
+++ b/lib/fog/opennebula/models/compute/flavor.rb
@@ -0,0 +1,133 @@
+require 'fog/core/model'
+
+module Fog
+ module Compute
+ class OpenNebula
+ class Flavor < Fog::Model
+ identity :id
+ attribute :name
+ attribute :content
+ attribute :cpu
+ attribute :vcpu
+ attribute :memory
+ attribute :sched_requirements
+ attribute :sched_rank
+ attribute :sched_ds_requirements
+ attribute :sched_ds_rank
+ attribute :disk
+ attribute :nic
+ attribute :os
+ attribute :graphics
+ attribute :raw
+
+
+ def to_label
+ "#{name} -- #{vcpu} VCPU - #{memory}MB Mem"
+ end
+
+ def to_s
+ "" + get_cpu \
+ + get_vcpu \
+ + get_memory \
+ + get_disk \
+ + get_nic \
+ + get_os \
+ + get_graphics \
+ + get_raw \
+ + get_sched_requirements \
+ + get_sched_ds_requirements \
+ + get_sched_rank \
+ + get_sched_ds_rank
+ end
+
+ def get_cpu
+ "CPU=#{vcpu.to_f/10}\n"
+ end
+
+ def get_vcpu
+ vcpu = 1 unless vcpu
+ "VCPU=#{vcpu}\n"
+ end
+
+ def get_memory
+ memory = 128 unless memory
+ "MEMORY=#{memory}\n"
+ end
+
+ def get_raw
+ return "" unless raw
+ "RAW=#{raw}\n"
+ end
+
+ def get_disk
+ return "" unless disk
+ ret = ""
+ if disk.is_a? Array
+ disk.each do |d|
+ ret += "DISK=#{d}\n"
+ end
+ else
+ ret = "DISK=#{disk}\n"
+ end
+ ret.gsub!(/\{/, '[')
+ ret.gsub!(/\}/, ']')
+ ret.gsub!(/>/,'')
+ ret
+ end
+
+ def get_os
+ return "" unless os
+ ret = "OS=#{os}\n"
+ ret.gsub!(/\{/, '[')
+ ret.gsub!(/\}/, ']')
+ ret.gsub!(/>/,'')
+ ret
+ end
+
+ def get_graphics
+ return "" unless graphics
+ ret = "GRAPHICS=#{graphics}\n"
+ ret.gsub!(/\{/, '[')
+ ret.gsub!(/\}/, ']')
+ ret.gsub!(/>/,'')
+ ret
+ end
+
+ def get_nic
+ # NIC=[MODEL="virtio",NETWORK="vlan17",NETWORK_UNAME="oneadmin"]
+ return "" if( nic.nil? || !(nic.is_a? Array))
+ ret = ""
+
+ nic.each do |n|
+ ret += %Q|NIC=[MODEL="#{n.model}",NETWORK_ID="#{n.vnet.id}"]\n|
+ end
+ #ret.gsub!(/\{/, '[')
+ #ret.gsub!(/\}/, ']')
+ #ret.gsub!(/>/,'')
+ ret
+ end
+
+ def get_sched_ds_requirements
+ return "" unless sched_ds_requirements
+ %Q|SCHED_DS_REQUIREMENTS="#{sched_ds_requirements}"\n|
+ end
+
+ def get_sched_ds_rank
+ return "" unless sched_ds_rank
+ %Q|SCHED_DS_RANK="#{sched_ds_rank}"\n|
+ end
+
+ def get_sched_requirements
+ return "" unless sched_requirements
+ %Q|SCHED_REQUIREMENTS="#{sched_requirements}"\n|
+ end
+
+ def get_sched_rank
+ return "" unless sched_rank
+ %Q|SCHED_RANK="#{sched_rank}"\n|
+ end
+
+ end
+ end
+ end
+end
diff --git a/lib/fog/opennebula/models/compute/flavors.rb b/lib/fog/opennebula/models/compute/flavors.rb
new file mode 100644
index 0000000..9e804db
--- /dev/null
+++ b/lib/fog/opennebula/models/compute/flavors.rb
@@ -0,0 +1,35 @@
+require 'fog/core/collection'
+require 'fog/opennebula/models/compute/flavor'
+
+module Fog
+ module Compute
+ class OpenNebula
+
+ class Flavors < Fog::Collection
+
+ model Fog::Compute::OpenNebula::Flavor
+
+ def all
+ data = service.template_pool
+ load(data)
+ end
+
+ def get(flavor_id)
+ data = service.template_pool({:id => flavor_id})
+ load(data).first
+ rescue Fog::Compute::OpenNebula::NotFound
+ nil
+ end
+
+ def get_by_name(flavor_name)
+ data = service.template_pool({:name => flavor_name})
+ load(data)
+ rescue Fog::Compute::OpenNebula::NotFound
+ nil
+ end
+
+ end
+
+ end
+ end
+end
diff --git a/lib/fog/opennebula/models/compute/group.rb b/lib/fog/opennebula/models/compute/group.rb
new file mode 100644
index 0000000..be22933
--- /dev/null
+++ b/lib/fog/opennebula/models/compute/group.rb
@@ -0,0 +1,22 @@
+require 'fog/core/model'
+
+module Fog
+ module Compute
+ class OpenNebula
+ class Group < Fog::Model
+
+ identity :id
+ attribute :name
+
+ def save
+ raise Fog::Errors::Error.new('Creating a new group is not yet implemented. Contributions welcome!')
+ end
+
+ def to_label
+ name
+ end
+
+ end
+ end
+ end
+end
diff --git a/lib/fog/opennebula/models/compute/groups.rb b/lib/fog/opennebula/models/compute/groups.rb
new file mode 100644
index 0000000..7f22890
--- /dev/null
+++ b/lib/fog/opennebula/models/compute/groups.rb
@@ -0,0 +1,34 @@
+require 'fog/core/collection'
+require 'fog/opennebula/models/compute/group'
+
+module Fog
+ module Compute
+ class OpenNebula
+
+ class Groups < Fog::Collection
+
+ model Fog::Compute::OpenNebula::Group
+
+ def all(filter={})
+ load(service.list_groups(filter))
+ end
+
+ def get(id)
+ group = self.all({:id => id})
+
+ if group.length > 1
+ raise Fog::Errors::Error.new("groups.get should return only one group, not #{group.length}!")
+ end
+
+ group.first
+ end
+
+ def get_by_name(str)
+ self.all({:name => str})
+ end
+
+ end
+
+ end
+ end
+end
diff --git a/lib/fog/opennebula/models/compute/interface.rb b/lib/fog/opennebula/models/compute/interface.rb
new file mode 100644
index 0000000..d25bc22
--- /dev/null
+++ b/lib/fog/opennebula/models/compute/interface.rb
@@ -0,0 +1,33 @@
+require 'fog/core/model'
+
+module Fog
+ module Compute
+ class OpenNebula
+ class Interface < Fog::Model
+
+ identity :id
+ attribute :vnet
+ attribute :model
+ attribute :name
+ attribute :mac
+
+ def save
+ raise Fog::Errors::Error.new('Creating a new interface is not yet implemented. Contributions welcome!')
+ end
+
+ def vnetid
+ return ""
+ end
+
+ def persisted?
+ mac
+ end
+
+ def destroy
+ raise Fog::Errors::Error.new('Destroying an interface is not yet implemented. Contributions welcome!')
+ end
+
+ end
+ end
+ end
+end
diff --git a/lib/fog/opennebula/models/compute/interfaces.rb b/lib/fog/opennebula/models/compute/interfaces.rb
new file mode 100644
index 0000000..324e481
--- /dev/null
+++ b/lib/fog/opennebula/models/compute/interfaces.rb
@@ -0,0 +1,12 @@
+require 'fog/core/collection'
+require 'fog/opennebula/models/compute/interface'
+
+module Fog
+ module Compute
+ class OpenNebula
+ class Interfaces < Fog::Collection
+ model Fog::Compute::OpenNebula::Interface
+ end
+ end
+ end
+end
diff --git a/lib/fog/opennebula/models/compute/network.rb b/lib/fog/opennebula/models/compute/network.rb
new file mode 100644
index 0000000..a6a5612
--- /dev/null
+++ b/lib/fog/opennebula/models/compute/network.rb
@@ -0,0 +1,41 @@
+require 'fog/core/model'
+
+module Fog
+ module Compute
+ class OpenNebula
+ class Network < Fog::Model
+
+ identity :id
+ attribute :name
+ attribute :uid
+ attribute :gid
+ attribute :description
+ attribute :vlan
+
+ def description
+ attributes[:description] || ""
+ end
+
+ def vlan
+ attributes[:vlan] || ""
+ end
+
+ def save
+ raise Fog::Errors::Error.new('Creating a new network is not yet implemented. Contributions welcome!')
+ end
+
+ def shutdown
+ raise Fog::Errors::Error.new('Shutting down a new network is not yet implemented. Contributions welcome!')
+ end
+
+ def to_label
+ ret = ""
+ ret += "#{description} - " unless description.empty?
+ ret += "VLAN #{vlan} - " unless vlan.empty?
+ ret += "#{name}"
+ end
+
+ end
+ end
+ end
+end
diff --git a/lib/fog/opennebula/models/compute/networks.rb b/lib/fog/opennebula/models/compute/networks.rb
new file mode 100644
index 0000000..b7df468
--- /dev/null
+++ b/lib/fog/opennebula/models/compute/networks.rb
@@ -0,0 +1,21 @@
+require 'fog/core/collection'
+require 'fog/opennebula/models/compute/network'
+
+module Fog
+ module Compute
+ class OpenNebula
+ class Networks < Fog::Collection
+ model Fog::Compute::OpenNebula::Network
+
+ def all(filter={})
+ load(service.list_networks(filter))
+ end
+
+ def get(id)
+ self.all({:id => id}).first
+ end
+
+ end
+ end
+ end
+end
diff --git a/lib/fog/opennebula/models/compute/server.rb b/lib/fog/opennebula/models/compute/server.rb
new file mode 100644
index 0000000..82d2480
--- /dev/null
+++ b/lib/fog/opennebula/models/compute/server.rb
@@ -0,0 +1,92 @@
+require 'fog/compute/models/server'
+
+module Fog
+ module Compute
+ class OpenNebula
+ class Server < Fog::Compute::Server
+ identity :id
+ attribute :template_str
+ attribute :name
+ attribute :uuid
+ attribute :state
+ attribute :status
+ attribute :ip
+ attribute :mac
+ attribute :vcpu
+ attribute :cpu
+ attribute :memory
+ attribute :user
+ attribute :gid
+ attribute :group
+ attribute :onevm_object
+ attribute :flavor
+
+ def save
+ merge_attributes(service.vm_allocate(attributes))
+ end
+
+ # only for integration in foreman
+ # needed by formbuilder
+ # should be handled by foreman and not by fog
+ def vminterfaces
+ []
+ end
+
+ # only for integration in foreman
+ # needed by formbuilder
+ # should be handled by foreman and not from by fog
+ def vminterfaces_attributes=(attributes)
+ true
+ end
+
+ def vm_ip_address
+ ip
+ end
+
+ def private_ip_address
+ ip
+ end
+
+ def public_ip_address
+ ip
+ end
+
+ def vm_mac_address
+ mac
+ end
+
+ def start
+ if status == 4
+ service.vm_resume(id)
+ end
+ true
+ end
+
+ def stop
+ Fog::Logger.warning("stop VM: ID:#{id}")
+ service.vm_stop(id)
+ end
+
+ def destroy
+ service.vm_destroy(id)
+ end
+
+ def ready?
+ (status == 3)
+ end
+
+ # only for integration in foreman
+ # needed by formbuilder
+ # should be handled by foreman and not by fog
+ def template_id
+ ""
+ end
+
+ def console_output
+ requires :id
+ service.get_vnc_console(id, "vnc", onevm_object)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/opennebula/models/compute/servers.rb b/lib/fog/opennebula/models/compute/servers.rb
new file mode 100644
index 0000000..4c8127b
--- /dev/null
+++ b/lib/fog/opennebula/models/compute/servers.rb
@@ -0,0 +1,26 @@
+require 'fog/core/collection'
+require 'fog/opennebula/models/compute/server'
+
+
+module Fog
+ module Compute
+ class OpenNebula
+
+ class Servers < Fog::Collection
+
+ model Fog::Compute::OpenNebula::Server
+
+ def all(filter={})
+ load(service.list_vms(filter))
+ end
+
+ def get(id)
+ data = service.list_vms({:id => id})
+ new data.first unless data.empty?
+ end
+
+ end
+ end
+ end
+end
+
diff --git a/lib/fog/opennebula/requests/compute/OpenNebulaVNC.rb b/lib/fog/opennebula/requests/compute/OpenNebulaVNC.rb
new file mode 100644
index 0000000..e099f19
--- /dev/null
+++ b/lib/fog/opennebula/requests/compute/OpenNebulaVNC.rb
@@ -0,0 +1,336 @@
+# -------------------------------------------------------------------------- #
+# Copyright 2002-2014, OpenNebula Project (OpenNebula.org), C12G Labs #
+# #
+# Licensed under the Apache License, Version 2.0 (the "License"); you may #
+# not use this file except in compliance with the License. You may obtain #
+# a copy of the License at #
+# #
+# http://www.apache.org/licenses/LICENSE-2.0 #
+# #
+# Unless required by applicable law or agreed to in writing, software #
+# distributed under the License is distributed on an "AS IS" BASIS, #
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
+# See the License for the specific language governing permissions and #
+# limitations under the License. #
+#--------------------------------------------------------------------------- #
+
+#
+# This class provides support for launching and stopping a websockify proxy
+#
+
+require 'rubygems'
+require 'json'
+require 'opennebula'
+
+
+#if !ONE_LOCATION
+ NOVNC_LOCK_FILE = "/var/lock/.novnc.lock"
+#else
+# NOVNC_LOCK_FILE= ONE_LOCATION + "/var/.novnc.lock"
+#end
+
+TOKEN_EXPIRE_SECONDS = 4
+
+VNC_STATES = [
+ #0, #LCM_INIT
+ #1, #PROLOG
+ #2, #BOOT
+ "3", #RUNNING
+ "4", #MIGRATE
+ #5, #SAVE_STOP
+ #6, #SAVE_SUSPEND
+ #7, #SAVE_MIGRATE
+ #8, #PROLOG_MIGRATE
+ #9, #PROLOG_RESUME
+ #10, #EPILOG_STOP
+ #11, #EPILOG
+ "12", #SHUTDOWN
+ "13", #CANCEL
+ #14, #FAILURE
+ #15, #CLEANUP_RESUBMIT
+ "16", #UNKNOWN
+ "17", #HOTPLUG
+ "18", #SHUTDOWN_POWEROFF
+ #19, #BOOT_UNKNOWN
+ #20, #BOOT_POWEROFF
+ #21, #BOOT_SUSPENDED
+ #22, #BOOT_STOPPED
+ #23, #CLEANUP_DELETE
+ "24", #HOTPLUG_SNAPSHOT
+ "25", #HOTPLUG_NIC
+ "26", #HOTPLUG_SAVEAS
+ "27", #HOTPLUG_SAVEAS_POWEROFF
+ "28", #HOTPLUG_SAVEAS_SUSPENDED
+ "29" #SHUTDOWN_UNDEPLOY
+ #30, #EPILOG_UNDEPLOY
+ #31, #PROLOG_UNDEPLOY
+ #32 #BOOT_UNDEPLOY
+]
+
+VAR_LOCATION = Dir.pwd + "/extras/noVNC"
+SHARE_LOCATION = Dir.pwd + "/extras/noVNC"
+class OpenNebulaVNC
+
+ attr_reader :proxy_port
+
+ def initialize(config, logger, options = {})
+ opts={ :json_errors => true,
+ :token_folder_name => 'sunstone_vnc_tokens'}.merge(options)
+
+ @pipe = nil
+ @token_folder = File.join(VAR_LOCATION, opts[:token_folder_name])
+ @proxy_path = File.join(SHARE_LOCATION, "websockify/websocketproxy.py")
+ @proxy_port = config[:vnc_proxy_port]
+
+ @proxy_ipv6 = config[:vnc_proxy_ipv6]
+
+ @wss = config[:vnc_proxy_support_wss]
+
+ @lock_file = NOVNC_LOCK_FILE
+
+ if (@wss == "yes") || (@wss == "only") || (@wss == true)
+ @enable_wss = true
+ @cert = config[:vnc_proxy_cert]
+ @key = config[:vnc_proxy_key]
+ else
+ @enable_wss = false
+ end
+ @options = opts
+ @logger = logger
+ end
+
+ def start
+ if is_running?
+ message="VNC server already running"
+ STDERR.puts message
+ @logger.info message
+ return false
+ end
+
+ create_token_dir
+
+ proxy_options = "--target-config=#{@token_folder} "
+
+ if @enable_wss
+ proxy_options << " --cert #{@cert}"
+ proxy_options << " --key #{@key}" if @key && @key.size > 0
+ proxy_options << " --ssl-only" if @wss == "only"
+ end
+
+ if @proxy_ipv6
+ proxy_options << " -6"
+ end
+
+ cmd ="python #{@proxy_path} #{proxy_options} #{@proxy_port}"
+
+ begin
+ @logger.info { "Starting VNC proxy: #{cmd}" }
+ pid=start_daemon(cmd, VNC_LOG)
+ rescue Exception => e
+ @logger.error e.message
+ return false
+ end
+
+ File.open(@lock_file, "w") do |f|
+ f.write(pid.to_s)
+ end
+
+ sleep 1
+
+ if !is_running?
+ message="Error starting VNC proxy"
+ STDERR.puts message
+ @logger.error message
+ File.delete(@lock_file) if File.exist?(@lock_file)
+
+ return false
+ end
+
+ STDOUT.puts "VNC proxy started"
+
+ true
+ end
+
+ def proxy(vm_resource)
+ # Check configurations and VM attributes
+ #if !is_running?
+ # return error(400, "VNC Proxy is not running")
+ #end
+
+ if !VNC_STATES.include?(vm_resource['LCM_STATE'])
+ return error(400,"Wrong state (#{vm_resource['LCM_STATE']}) to open a VNC session")
+ end
+
+ if vm_resource['TEMPLATE/GRAPHICS/TYPE'].nil? ||
+ vm_resource['TEMPLATE/GRAPHICS/TYPE'].downcase != "vnc"
+ return error(400,"VM has no VNC configured")
+ end
+
+ # Proxy data
+ host = vm_resource['HISTORY_RECORDS/HISTORY[last()]/HOSTNAME']
+ vnc_port = vm_resource['TEMPLATE/GRAPHICS/PORT']
+ vnc_pw = vm_resource['TEMPLATE/GRAPHICS/PASSWD']
+
+ # Generate token random_str: host:port
+ random_str = rand(36**20).to_s(36) #random string a-z0-9 length 20
+ token = "#{random_str}: #{host}:#{vnc_port}"
+ token_file = 'one-'+vm_resource['ID']
+
+ # Create token file
+
+ begin
+ f = File.open(File.join(@token_folder, token_file), 'w')
+ f.write(token)
+ f.close
+ rescue Exception => e
+# @logger.error e.message
+ return error(500, "Cannot create VNC proxy token")
+ end
+
+ info = {
+ :proxy_port => "29876",
+ :password => vnc_pw,
+ :token => random_str,
+ :vm_name => vm_resource['NAME']
+ }
+
+ return [200, info]
+ end
+
+ # Delete proxy token file
+ def delete_token(filename)
+ begin
+ File.delete(File.join(@token_folder, filename))
+ rescue => e
+ @logger.error "Error deleting token file for VM #{vm_id}"
+ @logger.error e.message
+ end
+ end
+
+ def stop(force=false)
+ pid=get_pid
+
+ if pid
+ @logger.info "Killing VNC proxy"
+
+ signal=(force ? 'KILL' : 'TERM')
+ Process.kill(signal ,pid)
+
+ sleep 1
+
+ begin
+ Process.getpgid(pid)
+
+ Process.kill('KILL', pid)
+ rescue
+ end
+
+ if is_running?
+ message="VNC server is still running"
+ STDERR.puts message
+ logger.error message
+ return false
+ end
+
+ delete_token_dir
+ else
+ message="VNC server is not running"
+ @logger.info message
+ STDERR.puts message
+ end
+ true
+ end
+
+ def status
+ if is_running?
+ STDOUT.puts "VNC is running"
+ true
+ else
+ STDOUT.puts "VNC is NOT running"
+ false
+ end
+ end
+
+ private
+
+ def error(code, msg)
+ if @options[:json_errors]
+ return [code,OpenNebula::Error.new(msg).to_json]
+ else
+ return [code,msg]
+ end
+ end
+
+ def create_token_dir
+ delete_token_dir
+ begin
+ Dir.mkdir(@token_folder) if !File.exist?(@token_folder)
+ rescue Exception => e
+ @logger.error "Cannot create token folder"
+ @logger.error e.message
+ end
+ end
+
+ def delete_token_dir
+ if File.exist?(@token_folder)
+ begin
+ Dir.glob("#{@token_folder}/*").each do |file|
+ File.delete(file)
+ end
+ rescue => e
+ @logger.error "Error deleting token folder"
+ @logger.error e.message
+ end
+ end
+ end
+
+ def is_running?
+ if File.exist?(@lock_file)
+ pid=File.read(@lock_file).strip
+
+ if system("ps #{pid} 1> /dev/null")
+ return pid.to_i
+ end
+
+ @logger.info "Deleting stale lock file"
+ File.delete(@lock_file)
+ end
+
+ false
+ end
+ alias_method :get_pid, :is_running?
+
+if RUBY_VERSION<'1.9'
+ def spawn(*args)
+ fork {
+ command=args[0..-2]
+
+ # Close stdin and point out and err to log file
+ $stdin.close
+ $stdout.reopen(VNC_LOG, "a")
+ $stderr.reopen(VNC_LOG, "a")
+
+ # Detach process from the parent
+ Process.setsid
+
+ exec(*command)
+ }
+ end
+end
+
+ def start_daemon(cmd, log)
+ options={
+ :pgroup => true,
+ :in => :close,
+ [:out, :err] => [log, "a"],
+ :close_others => true }
+
+ params=cmd.split(" ")+[options]
+ pid=spawn( *params )
+
+ Process.detach(pid)
+
+ pid
+ end
+end
+
diff --git a/lib/fog/opennebula/requests/compute/get_vnc_console.rb b/lib/fog/opennebula/requests/compute/get_vnc_console.rb
new file mode 100644
index 0000000..c2f03d1
--- /dev/null
+++ b/lib/fog/opennebula/requests/compute/get_vnc_console.rb
@@ -0,0 +1,47 @@
+require File.expand_path('../OpenNebulaVNC', __FILE__)
+module Fog
+ module Compute
+ class OpenNebula
+ class Mock
+ # Get a vnc console for an instance.
+ #
+ # === Parameters
+ # * server_id <~String> - The ID of the server.
+ # * console_type <~String> - Type of vnc console to get ('novnc' or 'xvpvnc').
+ # === Returns
+ # * response <~Excon::Response>:
+ # * body <~Hash>:
+ # * url <~String>
+ # * type <~String>
+ def get_vnc_console(server_id, console_type)
+ body = {
+ :type => "novnc",
+ :proxy_port => "29876",
+ :password => "null",
+ :token => "3n32dtwpsdj5jkug3b4w",
+ :proxy_host => "example.com"
+ }
+ end # def get_vnc_console
+ end # class Real
+
+ class Real
+ def get_vnc_console(server_id, console_type, onevm_object)
+ logger = Fog::Logger.new
+ $conf = {"vnc_proxy_port" => "29876", "vnc_proxy_ipv6" => "", "vnc_proxy_support_wss" => "", "vnc_proxy_cert" => "", "vnc_proxy_key" => ""}
+ $vnc = OpenNebulaVNC.new($conf, logger)
+ ret = startvnc(onevm_object,$vnc)
+
+ response = Excon::Response.new
+ response.status = ret[0]
+ response.body = ret[1]
+ response
+ end # def get_vnc_console
+
+ def startvnc(onevm_object, vnc)
+ return vnc.proxy(onevm_object)
+ end #def startvnc
+ end # class Mock
+ end # class OpenNebula
+ end # module Compute
+end # module Fog
+
diff --git a/lib/fog/opennebula/requests/compute/list_groups.rb b/lib/fog/opennebula/requests/compute/list_groups.rb
new file mode 100644
index 0000000..2670ee2
--- /dev/null
+++ b/lib/fog/opennebula/requests/compute/list_groups.rb
@@ -0,0 +1,79 @@
+module Fog
+ module Compute
+ class OpenNebula
+ class Real
+ def list_groups(filter = {})
+
+ groups=[]
+ grouppool = ::OpenNebula::GroupPool.new(client)
+ grouppool.info
+
+ # {
+ # "GROUP"=>{
+ # "ID"=>"0",
+ # "NAME"=>"oneadmin",
+ # "USERS"=>{"ID"=>["0", "1"]},
+ # "DATASTORE_QUOTA"=>{},
+ # "NETWORK_QUOTA"=>{},
+ # "VM_QUOTA"=>{},
+ # "IMAGE_QUOTA"=>{}
+ # }
+ #}
+
+ grouppool.each do |group|
+ filter_missmatch = false
+
+ unless (filter.empty?)
+ filter.each do |k,v|
+ if group["#{k.to_s.upcase}"] && group["#{k.to_s.upcase}"] != v.to_s
+ filter_missmatch = true
+ break
+ end
+ end
+ next if filter_missmatch
+ end
+ groups << {:id => group["ID"], :name => group["NAME"]}
+ end
+ groups
+ end
+ end
+
+
+ class Mock
+ def list_groups(filter={})
+ groups = []
+ net1 = mock_group "1", 'net1'
+ net2 = mock_group "2", 'fogtest'
+
+ grouppool = [net1, net2]
+ grouppool.each do |group|
+ filter_missmatch = false
+
+ unless (filter.empty?)
+ filter.each do |k,v|
+ if group["#{k.to_s.upcase}"] && group["#{k.to_s.upcase}"] != v.to_s
+ filter_missmatch = true
+ break
+ end
+ end
+ next if filter_missmatch
+ end
+ groups << {:id => group["ID"], :name => group["NAME"]}
+ end
+ groups
+ end
+
+ def mock_group id, name
+ {
+ "ID" => id,
+ "NAME" => name,
+ "UID" => "5",
+ "GID" => "5",
+ "DESCRIPTION" => "netDescription",
+ "VLAN" => "5"
+ }
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/opennebula/requests/compute/list_networks.rb b/lib/fog/opennebula/requests/compute/list_networks.rb
new file mode 100644
index 0000000..95b4265
--- /dev/null
+++ b/lib/fog/opennebula/requests/compute/list_networks.rb
@@ -0,0 +1,63 @@
+#1.9.3-p545 :017 > netpool.entries.first.to_hash
+# => {"VNET"=>{"ID"=>"4", "UID"=>"0", "GID"=>"0", "UNAME"=>"oneadmin", "GNAME"=>"oneadmin", "NAME"=>"vlan116", "PERMISSIONS"=>{"OWNER_U"=>"1", "OWNER_M"=>"1", "OWNER_A"=>"0", "GROUP_U"=>"0", "GROUP_M"=>"0", "GROUP_A"=>"0", "OTHER_U"=>"0", "OTHER_M"=>"0", "OTHER_A"=>"0"}, "CLUSTER_ID"=>"-1", "CLUSTER"=>{}, "TYPE"=>"0", "BRIDGE"=>"br116", "VLAN"=>"0", "PHYDEV"=>{}, "VLAN_ID"=>{}, "GLOBAL_PREFIX"=>{}, "SITE_PREFIX"=>{}, "RANGE"=>{"IP_START"=>"192.168.0.1", "IP_END"=>"192.168.0.254"}, "TOTAL [...]
+#
+module Fog
+ module Compute
+ class OpenNebula
+ class Real
+ def list_networks(filter = { })
+
+ networks=[]
+ netpool = ::OpenNebula::VirtualNetworkPool.new(client)
+ if filter[:id].nil?
+ netpool.info!(-2,-1,-1)
+ elsif filter[:id]
+ filter[:id] = filter[:id].to_i if filter[:id].is_a?(String)
+ netpool.info!(-2, filter[:id], filter[:id])
+ end # if filter[:id].nil?
+
+ netpool.each do |network|
+ networks << network_to_attributes(network.to_hash)
+ end
+ networks
+ end
+
+ def network_to_attributes(net)
+ return if net.nil?
+ #{"VNET"=>{"ID"=>"155", "UID"=>"0", "GID"=>"1", "UNAME"=>"oneadmin", "GNAME"=>"users", "NAME"=>"vlan99-2", "PERMISSIONS"=>{"OWNER_U"=>"1", "OWNER_M"=>"1", "OWNER_A"=>"0", "GROUP_U"=>"1", "GROUP_M"=>"0", "GROUP_A"=>"0", "OTHER_U"=>"0", "OTHER_M"=>"0", "OTHER_A"=>"0"}, "CLUSTER_ID"=>"-1", "CLUSTER"=>{}, "TYPE"=>"0", "BRIDGE"=>"ovsbr", "VLAN"=>"1", "PHYDEV"=>{}, "VLAN_ID"=>"99", "GLOBAL_PREFIX"=>{}, "SITE_PREFIX"=>{}, "RANGE"=>{"IP_START"=>"10.10.99.127", "IP_END"=>"10.10.99.249"}, "TOTA [...]
+ h = {
+ :id => net["VNET"]["ID"],
+ :name => net["VNET"]["NAME"],
+ :uid => net["VNET"]["UID"],
+ :gid => net["VNET"]["GID"],
+ }
+
+ h[:description] = net["VNET"]["TEMPLATE"]["DESCRIPTION"] unless net["VNET"]["TEMPLATE"]["DESCRIPTION"].nil?
+ h[:vlan] = net["VNET"]["VLAN_ID"] unless (net["VNET"]["VLAN_ID"].nil? || net["VNET"]["VLAN_ID"].empty?)
+
+ return h
+ end
+
+ end
+
+ class Mock
+ def list_networks(filters={})
+ net1 = mock_network 'net1'
+ net2 = mock_network 'net2'
+ [net1, net2]
+ end
+
+ def mock_network name
+ {
+ :id => "5",
+ :name => name,
+ :uid => "5",
+ :gid => "5",
+ :description => "netDescription",
+ :vlan => "5"
+ }
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/opennebula/requests/compute/list_vms.rb b/lib/fog/opennebula/requests/compute/list_vms.rb
new file mode 100644
index 0000000..15a872b
--- /dev/null
+++ b/lib/fog/opennebula/requests/compute/list_vms.rb
@@ -0,0 +1,87 @@
+#{"VM"=>{"ID"=>"30", "UID"=>"0", "GID"=>"0", "UNAME"=>"oneadmin", "GNAME"=>"oneadmin", "NAME"=>"m1.small-30", "PERMISSIONS"=>{"OWNER_U"=>"1", "OWNER_M"=>"1", "OWNER_A"=>"0", "GROUP_U"=>"0", "GROUP_M"=>"0", "GROUP_A"=>"0", "OTHER_U"=>"0", "OTHER_M"=>"0", "OTHER_A"=>"0"}, "LAST_POLL"=>"0", "STATE"=>"1", "LCM_STATE"=>"0", "RESCHED"=>"0", "STIME"=>"1395937874", "ETIME"=>"0", "DEPLOY_ID"=>{}, "MEMORY"=>"0", "CPU"=>"0", "NET_TX"=>"0", "NET_RX"=>"0", "TEMPLATE"=>{"AUTOMATIC_REQUIREMENTS"=>"!(PU [...]
+
+module Fog
+ module Compute
+ class OpenNebula
+ class Real
+ def list_vms(filter={})
+ vms=[]
+ vmpool = ::OpenNebula::VirtualMachinePool.new(client)
+ if filter[:id].nil?
+ vmpool.info!(-2,-1,-1,-1)
+ elsif filter[:id]
+ filter[:id] = filter[:id].to_i if filter[:id].is_a?(String)
+ vmpool.info!(-2, filter[:id], filter[:id], -1)
+ end # filter[:id].nil?
+
+ vmpool.each do |vm|
+ one = vm.to_hash
+ data = {}
+ data["onevm_object"] = vm
+ data["status"] = vm.state
+ data["state"] = vm.lcm_state_str
+ data["id"] = vm.id
+ data["gid"] = vm.gid
+ data["uuid"] = vm.id
+ data["name"] = one["VM"]["NAME"] unless one["VM"]["NAME"].nil?
+ data["user"] = one["VM"]["UNAME"] unless one["VM"]["UNAME"].nil?
+ data["group"] = one["VM"]["GNAME"] unless one["VM"]["GNAME"].nil?
+
+ unless ( one["VM"]["TEMPLATE"].nil? ) then
+ data["cpu"] = one["VM"]["TEMPLATE"]["VCPU"] unless one["VM"]["TEMPLATE"]["VCPU"].nil?
+ data["memory"] = one["VM"]["TEMPLATE"]["MEMORY"] unless one["VM"]["TEMPLATE"]["MEMORY"].nil?
+ unless (one["VM"]["TEMPLATE"]["NIC"].nil?) then
+ if one["VM"]["TEMPLATE"]["NIC"].is_a?(Array)
+ data["ip"]=one["VM"]["TEMPLATE"]["NIC"][0]["IP"]
+ data["mac"]=one["VM"]["TEMPLATE"]["NIC"][0]["MAC"]
+ else
+ data["ip"]=one["VM"]["TEMPLATE"]["NIC"]["IP"] unless one["VM"]["TEMPLATE"]["NIC"]["IP"].nil?
+ data["mac"]=one["VM"]["TEMPLATE"]["NIC"]["MAC"] unless one["VM"]["TEMPLATE"]["NIC"]["MAC"].nil?
+ end
+ end # unless (one["VM"]["TEMPLATE"]["NIC"].nil?) then
+ end # unless ( one["VM"]["TEMPLATE"].nil? ) then
+
+ vms << data
+ end # vmpool.each
+ vms
+ end # def list_vms
+ end # class Real
+
+ module Shared
+ private
+ end
+
+ class Mock
+ def list_vms(filter = {})
+ if filter[:id].nil?
+ vm1 = mock_vm 'fog-vm1'
+ vm2 = mock_vm 'fog-vm2'
+ vm3 = mock_vm 'fog-vm3'
+ return [vm1, vm2, vm3]
+ elsif filter[:mock_return]
+ mock_vm 'fog-vm1', filter[:id]
+ else
+ []
+ end
+ end
+ def mock_vm(name, id=4)
+ data = {}
+ data["onevm_object"] = ""
+ data["status"] = "Running"
+ data["state"] = "3"
+ data["id"] = id
+ data["uuid"] = "5"
+ data["gid"] = "5"
+ data["name"] = "MockVM-#{name}"
+ data["user"] = "MockUser"
+ data["group"] = "MockGroup"
+ data["cpu"] = "2"
+ data["memory"] = "1024"
+ data["mac"] = "00:01:02:03:04:05"
+ data["ip"] = "1.1.1.1"
+ data
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/opennebula/requests/compute/template_pool.rb b/lib/fog/opennebula/requests/compute/template_pool.rb
new file mode 100644
index 0000000..06fa9b6
--- /dev/null
+++ b/lib/fog/opennebula/requests/compute/template_pool.rb
@@ -0,0 +1,93 @@
+# t.template_str
+# CPU="0.2"
+# VCPU="2"
+# MEMORY="2048"
+# SCHED_REQUIREMENTS="NFS=\"true\""
+# SCHED_DS_REQUIREMENTS="NAME=\"local\""
+# DISK=[
+# DEV_PREFIX="vd",
+# DRIVER="qcow2",
+# IMAGE="base",
+# IMAGE_ID="355",
+# IMAGE_UNAME="oneadmin",
+# TARGET="vda" ]
+# GRAPHICS=[
+# LISTEN="0.0.0.0",
+# TYPE="VNC" ]
+# NIC=[
+# MODEL="virtio",
+# NETWORK="vlan2-2",
+# NETWORK_UNAME="oneadmin" ]
+# OS=[
+# ARCH="x86_64",
+# BOOT="network,hd" ]
+
+
+module Fog
+ module Compute
+ class OpenNebula
+ class Real
+ def template_pool(filter = { })
+
+ templates = ::OpenNebula::TemplatePool.new(client)
+ if filter[:id].nil?
+ templates.info!(-2,-1,-1)
+ elsif filter[:id]
+ filter[:id] = filter[:id].to_i if filter[:id].is_a?(String)
+ templates.info!(-2, filter[:id], filter[:id])
+ end # if filter[:id].nil?
+
+ templates = templates.map do |t|
+ # filtering by name
+ # done here, because OpenNebula:TemplatePool does not support something like .delete_if
+ if filter[:name] && filter[:name].is_a?(String) && !filter[:name].empty?
+ next if t.to_hash["VMTEMPLATE"]["NAME"] != filter[:name]
+ end
+
+ h = Hash[
+ :id => t.to_hash["VMTEMPLATE"]["ID"],
+ :name => t.to_hash["VMTEMPLATE"]["NAME"],
+ :content => t.template_str
+ ]
+ h.merge! t.to_hash["VMTEMPLATE"]["TEMPLATE"]
+
+ # h["NIC"] has to be an array of nic objects
+ nics = h["NIC"] unless h["NIC"].nil?
+ h["NIC"] = [] # reset nics to a array
+ if nics.is_a? Array
+ nics.each do |n|
+ n["model"] = "virtio" if n["model"].nil?
+ n["uuid"] = "0" if n["uuid"].nil? # is it better is to remove this NIC?
+ h["NIC"] << interfaces.new({ :vnet => networks.get(n["uuid"]), :model => n["model"]})
+ end
+ elsif nics.is_a? Hash
+ nics["model"] = "virtio" if nics["model"].nil?
+ nics["uuid"] = "0" if nics["uuid"].nil? # is it better is to remove this NIC?
+ h["NIC"] << interfaces.new({ :vnet => networks.get(nics["uuid"]), :model => nics["model"]})
+ else
+ # should i break?
+ end
+
+
+ # every key should be lowercase
+ ret_hash = {}
+ h.each_pair do |k,v|
+ ret_hash.merge!({k.downcase => v})
+ end
+ ret_hash
+ end
+
+ templates.delete nil
+ raise Fog::Compute::OpenNebula::NotFound, "Flavor/Template not found" if templates.empty?
+ templates
+ end #def template_pool
+ end #class Real
+
+ class Mock
+ def template_pool(filter = { })
+ [ {}, {} ]
+ end
+ end #class Mock
+ end #class OpenNebula
+ end #module Compute
+end #module Fog
diff --git a/lib/fog/opennebula/requests/compute/vm_allocate.rb b/lib/fog/opennebula/requests/compute/vm_allocate.rb
new file mode 100644
index 0000000..16ae75c
--- /dev/null
+++ b/lib/fog/opennebula/requests/compute/vm_allocate.rb
@@ -0,0 +1,90 @@
+module Fog
+ module Compute
+ class OpenNebula
+ class Real
+ def vm_allocate(attr={ })
+
+ if(attr[:flavor].nil?)
+ raise(ArgumentError.new("Attribute flavor is nil! #{attr.inspect}"))
+ end
+ if(attr[:name].nil? || attr[:name].empty?)
+ raise(ArgumentError.new("Attribute name is nil or empty! #{attr.inspect}"))
+ end
+
+ xml = ::OpenNebula::VirtualMachine.build_xml
+ vm = ::OpenNebula::VirtualMachine.new(xml, client)
+ rc = vm.allocate(attr[:flavor].to_s + "\nNAME=" + attr[:name])
+
+ # irb(main):050:0> vm.allocate(s.flavor.to_s + "\nNAME=altest5")
+ # => #<OpenNebula::Error:0x00000002a50760 @message="[VirtualMachineAllocate] User [42] : Not authorized to perform CREATE VM.", @errno=512>
+ # irb(main):051:0> a = vm.allocate(s.flavor.to_s + "\nNAME=altest5")
+ # => #<OpenNebula::Error:0x00000002ac0998 @message="[VirtualMachineAllocate] User [42] : Not authorized to perform CREATE VM.", @errno=512>
+ # irb(main):052:0> a.class
+
+ if(rc.is_a? ::OpenNebula::Error)
+ raise(rc)
+ end
+
+
+ # -1 - do not change the owner
+ vm.chown(-1,attr[:gid].to_i) unless attr[:gid].nil?
+
+ # TODO
+ # check if vm is created vmid.class == One error class
+ vm.info!
+
+ one = vm.to_hash
+ data = {}
+ data["onevm_object"] = vm
+ data["status"] = vm.state
+ data["state"] = vm.lcm_state_str
+ data["id"] = vm.id
+ data["uuid"] = vm.id
+ data["gid"] = vm.gid
+ data["name"] = one["VM"]["NAME"] unless one["VM"]["NAME"].nil?
+ data["user"] = one["VM"]["UNAME"] unless one["VM"]["UNAME"].nil?
+ data["group"] = one["VM"]["GNAME"] unless one["VM"]["GNAME"].nil?
+
+ unless ( one["VM"]["TEMPLATE"].nil? ) then
+ temp = one["VM"]["TEMPLATE"]
+ data["cpu"] = temp["VCPU"] unless temp["VCPU"].nil?
+ data["memory"] = temp["MEMORY"] unless temp["MEMORY"].nil?
+ unless (temp["NIC"].nil?) then
+ if one["VM"]["TEMPLATE"]["NIC"].is_a?(Array)
+ data["mac"] = temp["NIC"][0]["MAC"] unless temp["NIC"][0]["MAC"].nil?
+ data["ip"] = temp["NIC"][0]["IP"] unless temp["NIC"][0]["IP"].nil?
+ else
+ data["mac"] = temp["NIC"]["MAC"] unless temp["NIC"]["MAC"].nil?
+ data["ip"] = temp["NIC"]["IP"] unless temp["NIC"]["IP"].nil?
+ end
+ end
+ end
+
+ data
+ rescue => err
+ raise(err)
+ end
+ end
+
+ class Mock
+ def vm_allocate(attr={ })
+ data = {}
+ data["onevm_object"] = ""
+ data["status"] = "Running"
+ data["state"] = "3"
+ data["id"] = 4
+ data["uuid"] = "5"
+ data["gid"] = "5"
+ data["name"] = "MockVM"
+ data["user"] = "MockUser"
+ data["group"] = "MockGroup"
+ data["cpu"] = "2"
+ data["memory"] = "1024"
+ data["mac"] = "00:01:02:03:04:05"
+ data["ip"] = "1.1.1.1"
+ data
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/opennebula/requests/compute/vm_destroy.rb b/lib/fog/opennebula/requests/compute/vm_destroy.rb
new file mode 100644
index 0000000..0bfe061
--- /dev/null
+++ b/lib/fog/opennebula/requests/compute/vm_destroy.rb
@@ -0,0 +1,22 @@
+module Fog
+ module Compute
+ class OpenNebula
+ class Real
+ def vm_destroy(id)
+ vmpool = ::OpenNebula::VirtualMachinePool.new(client)
+ vmpool.info!(-2,id,id,-1)
+
+ vmpool.each do |vm|
+ # true => delete and recreate vm
+ vm.delete(false)
+ end
+ end
+ end
+ class Mock
+ def vm_destroy(id)
+ true
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/opennebula/requests/compute/vm_resume.rb b/lib/fog/opennebula/requests/compute/vm_resume.rb
new file mode 100644
index 0000000..1ebf311
--- /dev/null
+++ b/lib/fog/opennebula/requests/compute/vm_resume.rb
@@ -0,0 +1,37 @@
+module Fog
+ module Compute
+ class OpenNebula
+ class Real
+
+ def vm_resume(id)
+
+ vmpool = ::OpenNebula::VirtualMachinePool.new(client)
+ vmpool.info!(-2,id,id,-1)
+ puts "#{vmpool.entries.class} #{vmpool.entries.methods}"
+ puts "#{vmpool.entries.inspect} #{vmpool.entries.methods}"
+
+ vmpool.each do |vm|
+ vm.resume
+ end
+ ##if(attr[:id].nil?)
+ ## raise(ArgumentError.new("Attribute :id is nil or empty! #{attr.inspect}"))
+ ##end
+
+ #vmpool = ::OpenNebula::VirtualMachinePool.new(client)
+ #vmpool.info!
+
+ #vmpool.each do |vm|
+ # if vm.id == id then
+ # vm.resume
+ # return true
+ # end
+ #end
+ #false
+ end
+
+ class Mock
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/opennebula/requests/compute/vm_stop.rb b/lib/fog/opennebula/requests/compute/vm_stop.rb
new file mode 100644
index 0000000..b5d8467
--- /dev/null
+++ b/lib/fog/opennebula/requests/compute/vm_stop.rb
@@ -0,0 +1,22 @@
+module Fog
+ module Compute
+ class OpenNebula
+ class Real
+
+ def vm_stop(id)
+ vmpool = ::OpenNebula::VirtualMachinePool.new(client)
+ vmpool.info!(-2,id,id,-1)
+ puts "#{vmpool.entries.class} #{vmpool.entries.methods}"
+ puts "#{vmpool.entries.inspect} #{vmpool.entries.methods}"
+
+ vmpool.each do |vm|
+ vm.stop
+ end
+ end #def vm_stop
+
+ class Mock
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/openstack/compute.rb b/lib/fog/openstack/compute.rb
index 382cc24..bf6dfc7 100644
--- a/lib/fog/openstack/compute.rb
+++ b/lib/fog/openstack/compute.rb
@@ -3,7 +3,6 @@ require 'fog/openstack/core'
module Fog
module Compute
class OpenStack < Fog::Service
-
requires :openstack_auth_url
recognizes :openstack_auth_token, :openstack_management_url,
:persistent, :openstack_service_type, :openstack_service_name,
@@ -66,6 +65,8 @@ module Fog
request :unpause_server
request :suspend_server
request :resume_server
+ request :start_server
+ request :stop_server
request :rescue_server
request :change_server_password
request :add_fixed_ip
@@ -170,7 +171,6 @@ module Fog
request :list_hosts
request :get_host_details
-
class Mock
attr_reader :auth_token
attr_reader :auth_token_expiration
@@ -429,7 +429,6 @@ module Fog
true
end
-
end
end
end
diff --git a/lib/fog/openstack/core.rb b/lib/fog/openstack/core.rb
index 8b47579..b044c2d 100644
--- a/lib/fog/openstack/core.rb
+++ b/lib/fog/openstack/core.rb
@@ -94,7 +94,6 @@ module Fog
endpoint_type = (options[:openstack_endpoint_type] || 'publicURL').to_s
openstack_region = options[:openstack_region]
-
body = retrieve_tokens_v2(options, connection_options)
service = get_service(body, service_type, service_name)
@@ -153,8 +152,8 @@ module Fog
tenant = body['access']['token']['tenant']
user = body['access']['user']
- management_url = service['endpoints'].detect{|s| s[endpoint_type]}[endpoint_type]
- identity_url = identity_service['endpoints'].detect{|s| s['publicURL']}['publicURL'] if identity_service
+ management_url = service['endpoints'].find{|s| s[endpoint_type]}[endpoint_type]
+ identity_url = identity_service['endpoints'].find{|s| s['publicURL']}['publicURL'] if identity_service
{
:user => user,
@@ -166,11 +165,10 @@ module Fog
:current_user_id => body['access']['user']['id'],
:unscoped_token => options[:unscoped_token]
}
-
end
def self.get_service(body, service_type=[], service_name=nil)
- body['access']['serviceCatalog'].detect do |s|
+ body['access']['serviceCatalog'].find do |s|
if service_name.nil? or service_name.empty?
service_type.include?(s['type'])
else
@@ -225,7 +223,7 @@ module Fog
body = Fog::JSON.decode(response.body)
version = nil
unless body['versions'].empty?
- supported_version = body['versions'].detect do |x|
+ supported_version = body['versions'].find do |x|
x["id"].match(supported_versions) &&
(x["status"] == "CURRENT" || x["status"] == "SUPPORTED")
end
@@ -245,6 +243,5 @@ module Fog
'%' + $1.unpack('H2' * $1.bytesize).join('%').upcase
end
end
-
end
end
diff --git a/lib/fog/openstack/examples/compute/basics.rb b/lib/fog/openstack/examples/compute/basics.rb
index 7891d13..2aa7400 100644
--- a/lib/fog/openstack/examples/compute/basics.rb
+++ b/lib/fog/openstack/examples/compute/basics.rb
@@ -32,31 +32,9 @@ floating_ips.each do |address|
end
vm.destroy
-# Power operations helper
-
-# vm.start / vm.stop / vm.pause should work after this
-class Server < Fog::Compute::Server
- def start
- if state.downcase == 'paused'
- service.unpause_server(id) # resumes from frozen VM state
- else
- service.resume_server(id) # resumes from hibernation
- end
- end
-
- def stop
- service.suspend_server(id) # hibernates the VM at hypervisor-level
- end
-
- def pause
- service.pause_server(id) # stores VM state in RAM
- end
-end
-
# Images available at tenant
image_names = compute_client.images.map { |image| image['name'] }
-
# Floating IP address pools available at tenant
compute_client.addresses.get_address_pools
# response.body #=> { 'name' => 'pool1' }, { 'name' => 'pool2' }
@@ -68,7 +46,3 @@ vm.console.body # returns VNC url
# "url" => "http://vmvncserver:6080/vnc_auto.html?token=231",
# "type" => "novnc"
# }
-
-
-
-
diff --git a/lib/fog/openstack/examples/identity/basics.rb b/lib/fog/openstack/examples/identity/basics.rb
index a0579e7..20d0659 100644
--- a/lib/fog/openstack/examples/identity/basics.rb
+++ b/lib/fog/openstack/examples/identity/basics.rb
@@ -57,7 +57,6 @@ user = keystone.users.create :name => 'rubiojr at example.net',
:password => 'rubiojr at example.net',
:email => 'rubiojr at example.net'
-
# Find the recently created tenant
tenant = keystone.tenants.find { |t| t.name == 'rubiojr at example.net' }
# Destroy the tenant
diff --git a/lib/fog/openstack/examples/network/network_subnets_routers.rb b/lib/fog/openstack/examples/network/network_subnets_routers.rb
index d9ba026..746db75 100644
--- a/lib/fog/openstack/examples/network/network_subnets_routers.rb
+++ b/lib/fog/openstack/examples/network/network_subnets_routers.rb
@@ -57,7 +57,6 @@ public_subnet = network.subnets.create :name => 'floating_ips_net',
:cidr => '1.2.3.0/24',
:enable_dhcp => false
-
# Create tenant networks
create_tenant_network 'admin at example.net', public_net
create_tenant_network 'demo at example.net', public_net
diff --git a/lib/fog/openstack/identity.rb b/lib/fog/openstack/identity.rb
index 758caf9..09b769c 100644
--- a/lib/fog/openstack/identity.rb
+++ b/lib/fog/openstack/identity.rb
@@ -3,7 +3,6 @@ require 'fog/openstack/core'
module Fog
module Identity
class OpenStack < Fog::Service
-
requires :openstack_auth_url
recognizes :openstack_auth_token, :openstack_management_url, :persistent,
:openstack_service_type, :openstack_service_name, :openstack_tenant,
@@ -287,7 +286,6 @@ module Fog
@scheme = uri.scheme
true
end
-
end
end
end
diff --git a/lib/fog/openstack/image.rb b/lib/fog/openstack/image.rb
index 3bf8e86..98f7ddb 100644
--- a/lib/fog/openstack/image.rb
+++ b/lib/fog/openstack/image.rb
@@ -212,7 +212,6 @@ module Fog
@scheme = uri.scheme
true
end
-
end
end
end
diff --git a/lib/fog/openstack/metering.rb b/lib/fog/openstack/metering.rb
index bb97a4b..46d9f22 100644
--- a/lib/fog/openstack/metering.rb
+++ b/lib/fog/openstack/metering.rb
@@ -3,7 +3,6 @@ require 'fog/openstack/core'
module Fog
module Metering
class OpenStack < Fog::Service
-
requires :openstack_auth_url
recognizes :openstack_auth_token, :openstack_management_url, :persistent,
:openstack_service_type, :openstack_service_name, :openstack_tenant,
@@ -16,7 +15,6 @@ module Fog
model :resource
collection :resources
-
request_path 'fog/openstack/requests/metering'
# Metering
@@ -26,7 +24,6 @@ module Fog
request :list_meters
request :list_resources
-
class Mock
def self.data
@data ||= Hash.new do |hash, key|
@@ -202,9 +199,7 @@ module Fog
@scheme = uri.scheme
true
end
-
end
end
end
end
-
diff --git a/lib/fog/openstack/models/compute/address.rb b/lib/fog/openstack/models/compute/address.rb
index c6a47b7..245b108 100644
--- a/lib/fog/openstack/models/compute/address.rb
+++ b/lib/fog/openstack/models/compute/address.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class OpenStack
-
class Address < Fog::Model
-
identity :id
attribute :ip
@@ -63,9 +61,7 @@ module Fog
end
self.instance_id = nil
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/models/compute/addresses.rb b/lib/fog/openstack/models/compute/addresses.rb
index 90525bb..5f69373 100644
--- a/lib/fog/openstack/models/compute/addresses.rb
+++ b/lib/fog/openstack/models/compute/addresses.rb
@@ -4,9 +4,7 @@ require 'fog/openstack/models/compute/address'
module Fog
module Compute
class OpenStack
-
class Addresses < Fog::Collection
-
model Fog::Compute::OpenStack::Address
def all
@@ -24,10 +22,7 @@ module Fog
def get_address_pools
service.list_address_pools.body['floating_ip_pools']
end
-
end
-
end
end
end
-
diff --git a/lib/fog/openstack/models/compute/flavors.rb b/lib/fog/openstack/models/compute/flavors.rb
index 671cfb0..1fab112 100644
--- a/lib/fog/openstack/models/compute/flavors.rb
+++ b/lib/fog/openstack/models/compute/flavors.rb
@@ -4,9 +4,7 @@ require 'fog/openstack/models/compute/flavor'
module Fog
module Compute
class OpenStack
-
class Flavors < Fog::Collection
-
model Fog::Compute::OpenStack::Flavor
def all(options = {})
@@ -20,9 +18,7 @@ module Fog
rescue Fog::Compute::OpenStack::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/models/compute/host.rb b/lib/fog/openstack/models/compute/host.rb
index 3675f72..fb8466f 100644
--- a/lib/fog/openstack/models/compute/host.rb
+++ b/lib/fog/openstack/models/compute/host.rb
@@ -4,9 +4,7 @@ require 'fog/openstack/models/compute/metadata'
module Fog
module Compute
class OpenStack
-
class Host < Fog::Model
-
attribute :host_name
attribute :service_name
attribute :details
@@ -24,10 +22,7 @@ module Fog
rescue Fog::Compute::OpenStack::NotFound
nil
end
-
end
-
end
end
-
end
diff --git a/lib/fog/openstack/models/compute/hosts.rb b/lib/fog/openstack/models/compute/hosts.rb
index ee1409c..e13363d 100644
--- a/lib/fog/openstack/models/compute/hosts.rb
+++ b/lib/fog/openstack/models/compute/hosts.rb
@@ -4,9 +4,7 @@ require 'fog/openstack/models/compute/host'
module Fog
module Compute
class OpenStack
-
class Hosts < Fog::Collection
-
model Fog::Compute::OpenStack::Host
def all
@@ -24,9 +22,7 @@ module Fog
rescue Fog::Compute::OpenStack::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/models/compute/image.rb b/lib/fog/openstack/models/compute/image.rb
index 0a9ff3a..e3f880b 100644
--- a/lib/fog/openstack/models/compute/image.rb
+++ b/lib/fog/openstack/models/compute/image.rb
@@ -4,9 +4,7 @@ require 'fog/openstack/models/compute/metadata'
module Fog
module Compute
class OpenStack
-
class Image < Fog::Model
-
identity :id
attribute :name
@@ -50,9 +48,7 @@ module Fog
def ready?
status == 'ACTIVE'
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/models/compute/images.rb b/lib/fog/openstack/models/compute/images.rb
index 5425c8f..1ffc3ab 100644
--- a/lib/fog/openstack/models/compute/images.rb
+++ b/lib/fog/openstack/models/compute/images.rb
@@ -4,9 +4,7 @@ require 'fog/openstack/models/compute/image'
module Fog
module Compute
class OpenStack
-
class Images < Fog::Collection
-
attribute :filters
model Fog::Compute::OpenStack::Image
@@ -34,9 +32,7 @@ module Fog
rescue Fog::Compute::OpenStack::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/models/compute/key_pair.rb b/lib/fog/openstack/models/compute/key_pair.rb
index 466d545..9c07785 100644
--- a/lib/fog/openstack/models/compute/key_pair.rb
+++ b/lib/fog/openstack/models/compute/key_pair.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class OpenStack
-
class KeyPair < Fog::Model
-
identity :name
attribute :fingerprint
@@ -37,7 +35,6 @@ module Fog
end
def write(path="#{ENV['HOME']}/.ssh/fog_#{Fog.credential.to_s}_#{name}.pem")
-
if writable?
split_private_key = private_key.split(/\n/)
File.open(path, "w") do |f|
@@ -51,9 +48,8 @@ module Fog
end
def writable?
- !!(private_key && ENV.has_key?('HOME'))
+ !!(private_key && ENV.key?('HOME'))
end
-
end
end
end
diff --git a/lib/fog/openstack/models/compute/key_pairs.rb b/lib/fog/openstack/models/compute/key_pairs.rb
index be92e7b..bb74712 100644
--- a/lib/fog/openstack/models/compute/key_pairs.rb
+++ b/lib/fog/openstack/models/compute/key_pairs.rb
@@ -4,9 +4,7 @@ require 'fog/openstack/models/compute/key_pair'
module Fog
module Compute
class OpenStack
-
class KeyPairs < Fog::Collection
-
model Fog::Compute::OpenStack::KeyPair
def all
@@ -24,7 +22,6 @@ module Fog
rescue Fog::Compute::OpenStack::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/openstack/models/compute/metadata.rb b/lib/fog/openstack/models/compute/metadata.rb
index 8333079..aa66759 100644
--- a/lib/fog/openstack/models/compute/metadata.rb
+++ b/lib/fog/openstack/models/compute/metadata.rb
@@ -7,9 +7,7 @@ require 'fog/openstack/models/compute/server'
module Fog
module Compute
class OpenStack
-
class Metadata < Fog::Collection
-
model Fog::Compute::OpenStack::Metadatum
include Fog::Compute::OpenStack::MetaParent
@@ -60,9 +58,7 @@ module Fog
end
data
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/models/compute/metadatum.rb b/lib/fog/openstack/models/compute/metadatum.rb
index 8a4e625..a338d6a 100644
--- a/lib/fog/openstack/models/compute/metadatum.rb
+++ b/lib/fog/openstack/models/compute/metadatum.rb
@@ -5,7 +5,6 @@ module Fog
module Compute
class OpenStack
class Metadatum < Fog::Model
-
include Fog::Compute::OpenStack::MetaParent
identity :key
@@ -22,7 +21,6 @@ module Fog
service.update_meta(collection_name, @parent.id, key, value)
true
end
-
end
end
end
diff --git a/lib/fog/openstack/models/compute/security_group.rb b/lib/fog/openstack/models/compute/security_group.rb
index 3b43692..eb7542c 100644
--- a/lib/fog/openstack/models/compute/security_group.rb
+++ b/lib/fog/openstack/models/compute/security_group.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class OpenStack
class SecurityGroup < Fog::Model
-
identity :id
attribute :name
diff --git a/lib/fog/openstack/models/compute/security_group_rules.rb b/lib/fog/openstack/models/compute/security_group_rules.rb
index a1fedf5..b5f7156 100644
--- a/lib/fog/openstack/models/compute/security_group_rules.rb
+++ b/lib/fog/openstack/models/compute/security_group_rules.rb
@@ -5,7 +5,6 @@ module Fog
module Compute
class OpenStack
class SecurityGroupRules < Fog::Collection
-
model Fog::Compute::OpenStack::SecurityGroupRule
def get(security_group_rule_id)
diff --git a/lib/fog/openstack/models/compute/security_groups.rb b/lib/fog/openstack/models/compute/security_groups.rb
index a55ff22..4613f3a 100644
--- a/lib/fog/openstack/models/compute/security_groups.rb
+++ b/lib/fog/openstack/models/compute/security_groups.rb
@@ -4,9 +4,7 @@ require 'fog/openstack/models/compute/security_group'
module Fog
module Compute
class OpenStack
-
class SecurityGroups < Fog::Collection
-
model Fog::Compute::OpenStack::SecurityGroup
def all
@@ -20,7 +18,6 @@ module Fog
rescue Fog::Compute::OpenStack::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/openstack/models/compute/server.rb b/lib/fog/openstack/models/compute/server.rb
index 36fb985..ee61999 100644
--- a/lib/fog/openstack/models/compute/server.rb
+++ b/lib/fog/openstack/models/compute/server.rb
@@ -4,9 +4,7 @@ require 'fog/openstack/models/compute/metadata'
module Fog
module Compute
class OpenStack
-
class Server < Fog::Compute::Server
-
identity :id
attribute :instance_name, :aliases => 'OS-EXT-SRV-ATTR:instance_name'
@@ -54,7 +52,6 @@ module Fog
attr_writer :image_ref, :flavor_ref, :nics, :os_scheduler_hints
attr_accessor :block_device_mapping
-
def initialize(attributes={})
# Old 'connection' is renamed as service and should be used instead
prepare_service_value(attributes)
@@ -124,17 +121,16 @@ module Fog
# Return them all, leading with manually assigned addresses
manual = all_addresses.map{|addr| addr["ip"]}
- all_floating.sort{ |a,b|
+ all_floating.sort{ |a,b|
a_manual = manual.include? a
b_manual = manual.include? b
- if a_manual and !b_manual
+ if a_manual and !b_manual
-1
- elsif !a_manual and b_manual
+ elsif !a_manual and b_manual
1
else 0 end
}
-
end
alias_method :public_ip_addresses, :floating_ip_addresses
@@ -227,6 +223,34 @@ module Fog
true
end
+ def stop
+ requires :id
+ service.stop_server(id)
+ end
+
+ def pause
+ requires :id
+ service.pause_server(id)
+ end
+
+ def suspend
+ requires :id
+ service.suspend_server(id)
+ end
+
+ def start
+ requires :id
+
+ case state.downcase
+ when 'paused'
+ service.unpause_server(id)
+ when 'suspended'
+ service.resume_server(id)
+ else
+ service.start_server(id)
+ end
+ end
+
def create_image(name, metadata={})
requires :id
service.create_image(id, name, metadata)
@@ -276,7 +300,7 @@ module Fog
def volumes
requires :id
- service.volumes.find_all do |vol|
+ service.volumes.select do |vol|
vol.attachments.find { |attachment| attachment["serverId"] == id }
end
end
@@ -343,10 +367,7 @@ module Fog
def adminPass=(new_admin_pass)
@password = new_admin_pass
end
-
end
-
end
end
-
end
diff --git a/lib/fog/openstack/models/compute/servers.rb b/lib/fog/openstack/models/compute/servers.rb
index e2946bf..7e111e9 100644
--- a/lib/fog/openstack/models/compute/servers.rb
+++ b/lib/fog/openstack/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/openstack/models/compute/server'
module Fog
module Compute
class OpenStack
-
class Servers < Fog::Collection
-
attribute :filters
model Fog::Compute::OpenStack::Server
@@ -49,9 +47,7 @@ module Fog
rescue Fog::Compute::OpenStack::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/models/compute/snapshot.rb b/lib/fog/openstack/models/compute/snapshot.rb
index 52c3016..270c26f 100644
--- a/lib/fog/openstack/models/compute/snapshot.rb
+++ b/lib/fog/openstack/models/compute/snapshot.rb
@@ -4,9 +4,7 @@ require 'fog/openstack/models/compute/metadata'
module Fog
module Compute
class OpenStack
-
class Snapshot < Fog::Model
-
identity :id
attribute :name, :aliases => 'displayName'
@@ -16,7 +14,6 @@ module Fog
attribute :size
attribute :created_at, :aliases => 'createdAt'
-
def initialize(attributes)
# Old 'connection' is renamed as service and should be used instead
prepare_service_value(attributes)
@@ -35,10 +32,7 @@ module Fog
service.delete_snapshot(id)
true
end
-
end
-
end
end
-
end
diff --git a/lib/fog/openstack/models/compute/snapshots.rb b/lib/fog/openstack/models/compute/snapshots.rb
index 468712e..779bb94 100644
--- a/lib/fog/openstack/models/compute/snapshots.rb
+++ b/lib/fog/openstack/models/compute/snapshots.rb
@@ -4,7 +4,6 @@ require 'fog/openstack/models/compute/snapshot'
module Fog
module Compute
class OpenStack
-
class Snapshots < Fog::Collection
model Fog::Compute::OpenStack::Snapshot
@@ -20,7 +19,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/openstack/models/compute/tenants.rb b/lib/fog/openstack/models/compute/tenants.rb
index 6299b96..83b4260 100644
--- a/lib/fog/openstack/models/compute/tenants.rb
+++ b/lib/fog/openstack/models/compute/tenants.rb
@@ -15,9 +15,11 @@ module Fog
service.list_usages(start_date, end_date, details).body['tenant_usages']
end
- def find_by_id(id)
+ def get(id)
self.find {|tenant| tenant.id == id}
end
+ alias_method :find_by_id, :get
+
end # class Tenants
end # class OpenStack
end # module Compute
diff --git a/lib/fog/openstack/models/compute/volume.rb b/lib/fog/openstack/models/compute/volume.rb
index c23f762..dda7507 100644
--- a/lib/fog/openstack/models/compute/volume.rb
+++ b/lib/fog/openstack/models/compute/volume.rb
@@ -4,9 +4,7 @@ require 'fog/openstack/models/compute/metadata'
module Fog
module Compute
class OpenStack
-
class Volume < Fog::Model
-
identity :id
attribute :name, :aliases => 'displayName'
@@ -19,7 +17,6 @@ module Fog
attribute :created_at, :aliases => 'createdAt'
attribute :attachments
-
def initialize(attributes)
# Old 'connection' is renamed as service and should be used instead
prepare_service_value(attributes)
@@ -55,10 +52,7 @@ module Fog
def ready?
self.status == "available"
end
-
end
-
end
end
-
end
diff --git a/lib/fog/openstack/models/compute/volumes.rb b/lib/fog/openstack/models/compute/volumes.rb
index 9a83b1a..4da82d5 100644
--- a/lib/fog/openstack/models/compute/volumes.rb
+++ b/lib/fog/openstack/models/compute/volumes.rb
@@ -4,7 +4,6 @@ require 'fog/openstack/models/compute/volume'
module Fog
module Compute
class OpenStack
-
class Volumes < Fog::Collection
model Fog::Compute::OpenStack::Volume
@@ -20,7 +19,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/openstack/models/identity/roles.rb b/lib/fog/openstack/models/identity/roles.rb
index 25a44f6..ccba660 100644
--- a/lib/fog/openstack/models/identity/roles.rb
+++ b/lib/fog/openstack/models/identity/roles.rb
@@ -14,7 +14,6 @@ module Fog
def get(id)
service.get_role(id)
end
-
end
end # class OpenStack
end # module Compute
diff --git a/lib/fog/openstack/models/identity/user.rb b/lib/fog/openstack/models/identity/user.rb
index 55407b4..5a6ebaa 100644
--- a/lib/fog/openstack/models/identity/user.rb
+++ b/lib/fog/openstack/models/identity/user.rb
@@ -67,4 +67,3 @@ module Fog
end # class OpenStack
end # module Identity
end # module Fog
-
diff --git a/lib/fog/openstack/models/image/image.rb b/lib/fog/openstack/models/image/image.rb
index a663620..6ce9f25 100644
--- a/lib/fog/openstack/models/image/image.rb
+++ b/lib/fog/openstack/models/image/image.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Image
class OpenStack
-
class Image < Fog::Model
-
identity :id
attribute :name
@@ -30,7 +28,6 @@ module Fog
attribute :location
attribute :copy_from
-
def initialize(attributes)
# Old 'connection' is renamed as service and should be used instead
prepare_service_value(attributes)
@@ -84,7 +81,6 @@ module Fog
requires :id
service.get_image(self.id).headers
end
-
end
end
end
diff --git a/lib/fog/openstack/models/meta_parent.rb b/lib/fog/openstack/models/meta_parent.rb
index 12f591e..b90b6e5 100644
--- a/lib/fog/openstack/models/meta_parent.rb
+++ b/lib/fog/openstack/models/meta_parent.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
module MetaParent
-
def parent
@parent
end
@@ -26,7 +25,6 @@ module Fog
metas.each { |meta| hash.store(meta.key, meta.value) }
hash
end
-
end
end
end
diff --git a/lib/fog/openstack/models/metering/resource.rb b/lib/fog/openstack/models/metering/resource.rb
index 9857cfe..9ba6412 100644
--- a/lib/fog/openstack/models/metering/resource.rb
+++ b/lib/fog/openstack/models/metering/resource.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Metering
class OpenStack
-
class Resource < Fog::Model
-
identity :resource_id
attribute :project_id
@@ -16,9 +14,7 @@ module Fog
prepare_service_value(attributes)
super
end
-
end
end
end
end
-
diff --git a/lib/fog/openstack/models/metering/resources.rb b/lib/fog/openstack/models/metering/resources.rb
index 6108b7b..5209b3d 100644
--- a/lib/fog/openstack/models/metering/resources.rb
+++ b/lib/fog/openstack/models/metering/resources.rb
@@ -4,7 +4,6 @@ require 'fog/openstack/models/metering/resource'
module Fog
module Metering
class OpenStack
-
class Resources < Fog::Collection
model Fog::Metering::OpenStack::Resource
@@ -19,7 +18,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/floating_ip.rb b/lib/fog/openstack/models/network/floating_ip.rb
index 6ddf4ec..5c1d3af 100644
--- a/lib/fog/openstack/models/network/floating_ip.rb
+++ b/lib/fog/openstack/models/network/floating_ip.rb
@@ -12,11 +12,6 @@ module Fog
attribute :fixed_ip_address
attribute :floating_ip_address
-
-
-
-
-
def initialize(attributes)
@connection = attributes[:connection]
super
@@ -31,7 +26,6 @@ module Fog
requires :floating_network_id
merge_attributes(service.create_floating_ip(self.floating_network_id,
-
self.attributes).body['floatingip'])
self
end
@@ -45,7 +39,6 @@ module Fog
service.delete_floating_ip(self.id)
true
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/floating_ips.rb b/lib/fog/openstack/models/network/floating_ips.rb
index 9a827f0..e27e322 100644
--- a/lib/fog/openstack/models/network/floating_ips.rb
+++ b/lib/fog/openstack/models/network/floating_ips.rb
@@ -5,7 +5,6 @@ module Fog
module Network
class OpenStack
class FloatingIps < Fog::Collection
-
attribute :filters
model Fog::Network::OpenStack::FloatingIp
@@ -27,7 +26,6 @@ module Fog
rescue Fog::Network::OpenStack::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/lb_health_monitor.rb b/lib/fog/openstack/models/network/lb_health_monitor.rb
index 34dea54..24b40fc 100644
--- a/lib/fog/openstack/models/network/lb_health_monitor.rb
+++ b/lib/fog/openstack/models/network/lb_health_monitor.rb
@@ -61,7 +61,6 @@ module Fog
service.disassociate_lb_health_monitor(pool_id, self.id)
true
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/lb_health_monitors.rb b/lib/fog/openstack/models/network/lb_health_monitors.rb
index f18374c..d30faa8 100644
--- a/lib/fog/openstack/models/network/lb_health_monitors.rb
+++ b/lib/fog/openstack/models/network/lb_health_monitors.rb
@@ -5,7 +5,6 @@ module Fog
module Network
class OpenStack
class LbHealthMonitors < Fog::Collection
-
attribute :filters
model Fog::Network::OpenStack::LbHealthMonitor
@@ -27,7 +26,6 @@ module Fog
rescue Fog::Network::OpenStack::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/lb_member.rb b/lib/fog/openstack/models/network/lb_member.rb
index 10e1158..d119b04 100644
--- a/lib/fog/openstack/models/network/lb_member.rb
+++ b/lib/fog/openstack/models/network/lb_member.rb
@@ -46,7 +46,6 @@ module Fog
service.delete_lb_member(self.id)
true
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/lb_members.rb b/lib/fog/openstack/models/network/lb_members.rb
index 15014b6..76e9a42 100644
--- a/lib/fog/openstack/models/network/lb_members.rb
+++ b/lib/fog/openstack/models/network/lb_members.rb
@@ -5,7 +5,6 @@ module Fog
module Network
class OpenStack
class LbMembers < Fog::Collection
-
attribute :filters
model Fog::Network::OpenStack::LbMember
@@ -27,7 +26,6 @@ module Fog
rescue Fog::Network::OpenStack::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/lb_pool.rb b/lib/fog/openstack/models/network/lb_pool.rb
index 5c6ee3c..952ac6a 100644
--- a/lib/fog/openstack/models/network/lb_pool.rb
+++ b/lib/fog/openstack/models/network/lb_pool.rb
@@ -71,7 +71,6 @@ module Fog
service.disassociate_lb_health_monitor(self.id, health_monitor_id)
true
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/lb_pools.rb b/lib/fog/openstack/models/network/lb_pools.rb
index ea57ec2..1c5b555 100644
--- a/lib/fog/openstack/models/network/lb_pools.rb
+++ b/lib/fog/openstack/models/network/lb_pools.rb
@@ -5,7 +5,6 @@ module Fog
module Network
class OpenStack
class LbPools < Fog::Collection
-
attribute :filters
model Fog::Network::OpenStack::LbPool
@@ -27,7 +26,6 @@ module Fog
rescue Fog::Network::OpenStack::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/lb_vip.rb b/lib/fog/openstack/models/network/lb_vip.rb
index c5ce78a..aac3ce1 100644
--- a/lib/fog/openstack/models/network/lb_vip.rb
+++ b/lib/fog/openstack/models/network/lb_vip.rb
@@ -52,7 +52,6 @@ module Fog
service.delete_lb_vip(self.id)
true
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/lb_vips.rb b/lib/fog/openstack/models/network/lb_vips.rb
index 72d72a4..984408d 100644
--- a/lib/fog/openstack/models/network/lb_vips.rb
+++ b/lib/fog/openstack/models/network/lb_vips.rb
@@ -5,7 +5,6 @@ module Fog
module Network
class OpenStack
class LbVips < Fog::Collection
-
attribute :filters
model Fog::Network::OpenStack::LbVip
@@ -27,7 +26,6 @@ module Fog
rescue Fog::Network::OpenStack::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/networks.rb b/lib/fog/openstack/models/network/networks.rb
index f6d0bc7..a3045aa 100644
--- a/lib/fog/openstack/models/network/networks.rb
+++ b/lib/fog/openstack/models/network/networks.rb
@@ -5,7 +5,6 @@ module Fog
module Network
class OpenStack
class Networks < Fog::Collection
-
attribute :filters
model Fog::Network::OpenStack::Network
@@ -27,7 +26,6 @@ module Fog
rescue Fog::Network::OpenStack::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/port.rb b/lib/fog/openstack/models/network/port.rb
index 62b95dd..4f87c4c 100644
--- a/lib/fog/openstack/models/network/port.rb
+++ b/lib/fog/openstack/models/network/port.rb
@@ -46,7 +46,6 @@ module Fog
service.delete_port(self.id)
true
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/ports.rb b/lib/fog/openstack/models/network/ports.rb
index efac0ae..03e1028 100644
--- a/lib/fog/openstack/models/network/ports.rb
+++ b/lib/fog/openstack/models/network/ports.rb
@@ -5,7 +5,6 @@ module Fog
module Network
class OpenStack
class Ports < Fog::Collection
-
attribute :filters
model Fog::Network::OpenStack::Port
@@ -27,7 +26,6 @@ module Fog
rescue Fog::Network::OpenStack::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/router.rb b/lib/fog/openstack/models/network/router.rb
index 8ce6c37..855387e 100644
--- a/lib/fog/openstack/models/network/router.rb
+++ b/lib/fog/openstack/models/network/router.rb
@@ -66,7 +66,6 @@ module Fog
end
options
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/routers.rb b/lib/fog/openstack/models/network/routers.rb
index 79892a0..0933529 100644
--- a/lib/fog/openstack/models/network/routers.rb
+++ b/lib/fog/openstack/models/network/routers.rb
@@ -5,7 +5,6 @@ module Fog
module Network
class OpenStack
class Routers < Fog::Collection
-
attribute :filters
model Fog::Network::OpenStack::Router
@@ -27,7 +26,6 @@ module Fog
rescue Fog::Network::OpenStack::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/security_group_rules.rb b/lib/fog/openstack/models/network/security_group_rules.rb
index 5533636..b9bb557 100644
--- a/lib/fog/openstack/models/network/security_group_rules.rb
+++ b/lib/fog/openstack/models/network/security_group_rules.rb
@@ -5,7 +5,6 @@ module Fog
module Network
class OpenStack
class SecurityGroupRules < Fog::Collection
-
attribute :filters
model Fog::Network::OpenStack::SecurityGroupRule
diff --git a/lib/fog/openstack/models/network/security_groups.rb b/lib/fog/openstack/models/network/security_groups.rb
index 7a96ff5..52fbcbd 100644
--- a/lib/fog/openstack/models/network/security_groups.rb
+++ b/lib/fog/openstack/models/network/security_groups.rb
@@ -5,7 +5,6 @@ module Fog
module Network
class OpenStack
class SecurityGroups < Fog::Collection
-
attribute :filters
model Fog::Network::OpenStack::SecurityGroup
@@ -27,7 +26,6 @@ module Fog
rescue Fog::Network::OpenStack::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/subnet.rb b/lib/fog/openstack/models/network/subnet.rb
index 1557383..4dd9aa0 100644
--- a/lib/fog/openstack/models/network/subnet.rb
+++ b/lib/fog/openstack/models/network/subnet.rb
@@ -49,7 +49,6 @@ module Fog
service.delete_subnet(self.id)
true
end
-
end
end
end
diff --git a/lib/fog/openstack/models/network/subnets.rb b/lib/fog/openstack/models/network/subnets.rb
index 9000f5d..2d36b07 100644
--- a/lib/fog/openstack/models/network/subnets.rb
+++ b/lib/fog/openstack/models/network/subnets.rb
@@ -5,7 +5,6 @@ module Fog
module Network
class OpenStack
class Subnets < Fog::Collection
-
attribute :filters
model Fog::Network::OpenStack::Subnet
@@ -27,7 +26,6 @@ module Fog
rescue Fog::Network::OpenStack::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/openstack/models/storage/directories.rb b/lib/fog/openstack/models/storage/directories.rb
index e27cc73..ead2264 100644
--- a/lib/fog/openstack/models/storage/directories.rb
+++ b/lib/fog/openstack/models/storage/directories.rb
@@ -4,9 +4,7 @@ require 'fog/openstack/models/storage/directory'
module Fog
module Storage
class OpenStack
-
class Directories < Fog::Collection
-
model Fog::Storage::OpenStack::Directory
def all
@@ -32,9 +30,7 @@ module Fog
rescue Fog::Storage::OpenStack::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/models/storage/directory.rb b/lib/fog/openstack/models/storage/directory.rb
index b04730a..58164a4 100644
--- a/lib/fog/openstack/models/storage/directory.rb
+++ b/lib/fog/openstack/models/storage/directory.rb
@@ -4,13 +4,13 @@ require 'fog/openstack/models/storage/files'
module Fog
module Storage
class OpenStack
-
class Directory < Fog::Model
-
identity :key, :aliases => 'name'
attribute :bytes, :aliases => 'X-Container-Bytes-Used'
attribute :count, :aliases => 'X-Container-Object-Count'
+
+ attr_writer :public
def destroy
requires :key
@@ -29,22 +29,16 @@ module Fog
end
end
- def public=(new_public)
- @public = new_public
- end
-
def public_url
raise NotImplementedError
end
def save
requires :key
- service.put_container(key)
+ service.put_container(key, :public => @public)
true
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/models/storage/file.rb b/lib/fog/openstack/models/storage/file.rb
index ec075ae..9abd31e 100644
--- a/lib/fog/openstack/models/storage/file.rb
+++ b/lib/fog/openstack/models/storage/file.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Storage
class OpenStack
-
class File < Fog::Model
-
identity :key, :aliases => 'name'
attribute :content_length, :aliases => ['bytes', 'Content-Length'], :type => :integer
@@ -83,7 +81,6 @@ module Fog
self.collection.get_url(self.key)
end
-
def save(options = {})
requires :body, :directory, :key
options['Content-Type'] = content_type if content_type
@@ -160,7 +157,6 @@ module Fog
merge_attributes(data.headers.reject {|key, value| ['Content-Length', 'Content-Type'].include?(key)})
end
end
-
end
end
end
diff --git a/lib/fog/openstack/models/storage/files.rb b/lib/fog/openstack/models/storage/files.rb
index 1e65459..2e19538 100644
--- a/lib/fog/openstack/models/storage/files.rb
+++ b/lib/fog/openstack/models/storage/files.rb
@@ -4,9 +4,7 @@ require 'fog/openstack/models/storage/file'
module Fog
module Storage
class OpenStack
-
class Files < Fog::Collection
-
attribute :directory
attribute :limit
attribute :marker
@@ -35,7 +33,7 @@ module Fog
end
end
- alias :each_file_this_page :each
+ alias_method :each_file_this_page, :each
def each
if !block_given?
self
@@ -96,9 +94,7 @@ module Fog
requires :directory
super({ :directory => directory }.merge!(attributes))
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/models/volume/volume.rb b/lib/fog/openstack/models/volume/volume.rb
index bdbd938..592a38b 100644
--- a/lib/fog/openstack/models/volume/volume.rb
+++ b/lib/fog/openstack/models/volume/volume.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Volume
class OpenStack
-
class Volume < Fog::Model
-
identity :id
attribute :display_name, :aliases => 'displayName'
@@ -20,7 +18,6 @@ module Fog
attribute :attachments
attribute :source_volid
-
def initialize(attributes)
# Old 'connection' is renamed as service and should be used instead
prepare_service_value(attributes)
@@ -43,11 +40,7 @@ module Fog
def ready?
status == 'available'
end
-
end
-
end
end
-
end
-
diff --git a/lib/fog/openstack/models/volume/volumes.rb b/lib/fog/openstack/models/volume/volumes.rb
index 53770b6..3dd69ae 100644
--- a/lib/fog/openstack/models/volume/volumes.rb
+++ b/lib/fog/openstack/models/volume/volumes.rb
@@ -4,7 +4,6 @@ require 'fog/openstack/models/volume/volume'
module Fog
module Volume
class OpenStack
-
class Volumes < Fog::Collection
model Fog::Volume::OpenStack::Volume
@@ -24,8 +23,6 @@ module Fog
end
alias_method :find_by_id, :get
end
-
end
end
end
-
diff --git a/lib/fog/openstack/network.rb b/lib/fog/openstack/network.rb
index 87161fd..9752316 100644
--- a/lib/fog/openstack/network.rb
+++ b/lib/fog/openstack/network.rb
@@ -308,7 +308,7 @@ module Fog
private
def authenticate
- if @openstack_must_reauthenticate || @openstack_auth_token.nil?
+ if !@openstack_management_url || @openstack_must_reauthenticate
options = {
:openstack_tenant => @openstack_tenant,
:openstack_api_key => @openstack_api_key,
@@ -348,7 +348,6 @@ module Fog
@scheme = uri.scheme
true
end
-
end
end
end
diff --git a/lib/fog/openstack/orchestration.rb b/lib/fog/openstack/orchestration.rb
index 2fc1f0a..87c4ef6 100644
--- a/lib/fog/openstack/orchestration.rb
+++ b/lib/fog/openstack/orchestration.rb
@@ -221,7 +221,6 @@ module Fog
true
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/add_security_group.rb b/lib/fog/openstack/requests/compute/add_security_group.rb
index 6d76ec2..97ed91f 100644
--- a/lib/fog/openstack/requests/compute/add_security_group.rb
+++ b/lib/fog/openstack/requests/compute/add_security_group.rb
@@ -2,22 +2,18 @@ module Fog
module Compute
class OpenStack
class Real
-
def add_security_group(server_id, group_name)
body = {'addSecurityGroup' => { "name" => group_name } }
server_action(server_id, body)
end
-
end
class Mock
-
def add_security_group(server_id, group_name)
response = Excon::Response.new
response.status = 200
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/allocate_address.rb b/lib/fog/openstack/requests/compute/allocate_address.rb
index 5d1cb40..b29447d 100644
--- a/lib/fog/openstack/requests/compute/allocate_address.rb
+++ b/lib/fog/openstack/requests/compute/allocate_address.rb
@@ -2,9 +2,7 @@ module Fog
module Compute
class OpenStack
class Real
-
def allocate_address(pool = nil)
-
request(
:body => Fog::JSON.encode({'pool' => pool}),
:expects => [200, 202],
@@ -12,7 +10,6 @@ module Fog
:path => 'os-floating-ips.json'
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/compute/associate_address.rb b/lib/fog/openstack/requests/compute/associate_address.rb
index 7184a91..6e1e366 100644
--- a/lib/fog/openstack/requests/compute/associate_address.rb
+++ b/lib/fog/openstack/requests/compute/associate_address.rb
@@ -2,17 +2,14 @@ module Fog
module Compute
class OpenStack
class Real
-
def associate_address(server_id, ip_address)
body = { "addFloatingIp" => {"address" => ip_address}}
server_action(server_id, body)
end
-
end
class Mock
def associate_address(server_id, ip_address)
-
server = data[:servers][server_id]
server["addresses"]['mocknet'] ||= []
ip_hash = {"OS-EXT-IPS-MAC:mac_addr"=>"fa:16:3e:85:47:40", "version"=>4, "addr"=>ip_address, "OS-EXT-IPS:type"=>"floating"}
diff --git a/lib/fog/openstack/requests/compute/attach_volume.rb b/lib/fog/openstack/requests/compute/attach_volume.rb
index 3a45aba..97d2743 100644
--- a/lib/fog/openstack/requests/compute/attach_volume.rb
+++ b/lib/fog/openstack/requests/compute/attach_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def attach_volume(volume_id, server_id, device)
data = {
'volumeAttachment' => {
@@ -17,11 +16,9 @@ module Fog
:path => "servers/%s/os-volume_attachments" % [server_id]
)
end
-
end
class Mock
-
def attach_volume(volume_id, server_id, device)
response = Excon::Response.new
response.status = 200
@@ -35,9 +32,7 @@ module Fog
response.body = { 'volumeAttachment' => data }
response
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/change_server_password.rb b/lib/fog/openstack/requests/compute/change_server_password.rb
index f94e50d..41e30e3 100644
--- a/lib/fog/openstack/requests/compute/change_server_password.rb
+++ b/lib/fog/openstack/requests/compute/change_server_password.rb
@@ -2,22 +2,18 @@ module Fog
module Compute
class OpenStack
class Real
-
def change_server_password(server_id, admin_password)
body = { 'changePassword' => { 'adminPass' => admin_password }}
server_action(server_id, body)
end
-
end
class Mock
-
def change_server_password(server_id, admin_password)
response = Excon::Response.new
response.status = 202
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/confirm_resize_server.rb b/lib/fog/openstack/requests/compute/confirm_resize_server.rb
index be8853d..f88e3aa 100644
--- a/lib/fog/openstack/requests/compute/confirm_resize_server.rb
+++ b/lib/fog/openstack/requests/compute/confirm_resize_server.rb
@@ -2,22 +2,18 @@ module Fog
module Compute
class OpenStack
class Real
-
def confirm_resize_server(server_id)
body = { 'confirmResize' => nil }
server_action(server_id, body, 204)
end
-
end
class Mock
-
def confirm_resize_server(server_id)
response = Excon::Response.new
response.status = 204
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/create_image.rb b/lib/fog/openstack/requests/compute/create_image.rb
index 79299f3..dfbd7bb 100644
--- a/lib/fog/openstack/requests/compute/create_image.rb
+++ b/lib/fog/openstack/requests/compute/create_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def create_image(server_id, name, metadata={})
body = { 'createImage' => {
'name' => name,
@@ -12,11 +11,9 @@ module Fog
image_id = data.headers["Location"].scan(/.*\/(.*)/).flatten[0]
get_image_details(image_id)
end
-
end
class Mock
-
def create_image(server_id, name, metadata={})
response = Excon::Response.new
response.status = 202
@@ -40,9 +37,7 @@ module Fog
self.data[:images][data['id']] = data
response.body = { 'image' => data }
response
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/create_key_pair.rb b/lib/fog/openstack/requests/compute/create_key_pair.rb
index e53efb9..9733881 100644
--- a/lib/fog/openstack/requests/compute/create_key_pair.rb
+++ b/lib/fog/openstack/requests/compute/create_key_pair.rb
@@ -2,9 +2,7 @@ module Fog
module Compute
class OpenStack
class Real
-
def create_key_pair(key_name, public_key = nil)
-
data = {
'keypair' => {
'name' => key_name
@@ -20,7 +18,6 @@ module Fog
:path => 'os-keypairs.json'
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/compute/create_security_group.rb b/lib/fog/openstack/requests/compute/create_security_group.rb
index a744e0e..fd8060c 100644
--- a/lib/fog/openstack/requests/compute/create_security_group.rb
+++ b/lib/fog/openstack/requests/compute/create_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def create_security_group(name, description)
data = {
'security_group' => {
@@ -18,7 +17,6 @@ module Fog
:path => 'os-security-groups.json'
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/compute/create_security_group_rule.rb b/lib/fog/openstack/requests/compute/create_security_group_rule.rb
index 37fdfd9..92d745f 100644
--- a/lib/fog/openstack/requests/compute/create_security_group_rule.rb
+++ b/lib/fog/openstack/requests/compute/create_security_group_rule.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def create_security_group_rule(parent_group_id, ip_protocol, from_port, to_port, cidr, group_id=nil)
data = {
'security_group_rule' => {
@@ -22,7 +21,6 @@ module Fog
:path => 'os-security-group-rules.json'
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/compute/create_server.rb b/lib/fog/openstack/requests/compute/create_server.rb
index f77fa10..5d11b76 100644
--- a/lib/fog/openstack/requests/compute/create_server.rb
+++ b/lib/fog/openstack/requests/compute/create_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def create_server(name, image_ref, flavor_ref, options = {})
data = {
'server' => {
@@ -38,8 +37,8 @@ module Fog
data['server']['personality'] = []
for file in options['personality']
data['server']['personality'] << {
- 'contents' => Base64.encode64(file['contents']),
- 'path' => file['path']
+ 'contents' => Base64.encode64(file['contents'] || file[:contents]),
+ 'path' => file['path'] || file[:path]
}
end
end
@@ -83,11 +82,9 @@ module Fog
:path => path
)
end
-
end
class Mock
-
def create_server(name, image_ref, flavor_ref, options = {})
response = Excon::Response.new
response.status = 202
diff --git a/lib/fog/openstack/requests/compute/create_volume.rb b/lib/fog/openstack/requests/compute/create_volume.rb
index 82906c0..9161a2c 100644
--- a/lib/fog/openstack/requests/compute/create_volume.rb
+++ b/lib/fog/openstack/requests/compute/create_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def create_volume(name, description, size, options={})
data = {
'volume' => {
@@ -12,7 +11,7 @@ module Fog
}
}
- vanilla_options = ['snapshot_id']
+ vanilla_options = ['snapshot_id', 'availability_zone']
vanilla_options.select{|o| options[o]}.each do |key|
data['volume'][key] = options[key]
end
@@ -23,11 +22,9 @@ module Fog
:path => "os-volumes"
)
end
-
end
class Mock
-
def create_volume(name, description, size, options={})
response = Excon::Response.new
response.status = 202
@@ -48,9 +45,7 @@ module Fog
response.body = { 'volume' => data }
response
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/create_volume_snapshot.rb b/lib/fog/openstack/requests/compute/create_volume_snapshot.rb
index f2e1ced..1285223 100644
--- a/lib/fog/openstack/requests/compute/create_volume_snapshot.rb
+++ b/lib/fog/openstack/requests/compute/create_volume_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def create_volume_snapshot(volume_id, name, description, force=false)
data = {
'snapshot' => {
@@ -20,7 +19,6 @@ module Fog
:path => "os-snapshots"
)
end
-
end
class Mock
@@ -41,7 +39,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/delete_image.rb b/lib/fog/openstack/requests/compute/delete_image.rb
index bbae7f2..2eeb828 100644
--- a/lib/fog/openstack/requests/compute/delete_image.rb
+++ b/lib/fog/openstack/requests/compute/delete_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def delete_image(image_id)
request(
:expects => 204,
@@ -10,14 +9,12 @@ module Fog
:path => "images/#{image_id}"
)
end
-
end
class Mock
-
def delete_image(image_id)
response = Excon::Response.new
- if image = list_images_detail.body['images'].detect {|_| _['id'] == image_id}
+ if image = list_images_detail.body['images'].find {|_| _['id'] == image_id}
if image['status'] == 'SAVING'
response.status = 409
raise(Excon::Errors.status_error({:expects => 202}, response))
@@ -31,9 +28,7 @@ module Fog
response.status = 400
raise(Excon::Errors.status_error({:expects => 202}, response))
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/delete_key_pair.rb b/lib/fog/openstack/requests/compute/delete_key_pair.rb
index 8b7bd4a..3df0105 100644
--- a/lib/fog/openstack/requests/compute/delete_key_pair.rb
+++ b/lib/fog/openstack/requests/compute/delete_key_pair.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def delete_key_pair(key_name)
request(
:expects => 202,
@@ -10,7 +9,6 @@ module Fog
:path => "os-keypairs/#{key_name}"
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/compute/delete_meta.rb b/lib/fog/openstack/requests/compute/delete_meta.rb
index 0697441..0e521b9 100644
--- a/lib/fog/openstack/requests/compute/delete_meta.rb
+++ b/lib/fog/openstack/requests/compute/delete_meta.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class OpenStack
-
class Real
-
def delete_meta(collection_name, parent_id, key)
request(
:expects => 204,
@@ -11,21 +9,18 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata/#{key}"
)
end
-
end
class Mock
-
def delete_meta(collection_name, parent_id, key)
-
if collection_name == "images" then
- if not list_images_detail.body['images'].detect {|_| _['id'] == parent_id}
+ if not list_images_detail.body['images'].find {|_| _['id'] == parent_id}
raise Fog::Compute::OpenStack::NotFound
end
end
if collection_name == "servers" then
- if not list_servers_detail.body['servers'].detect {|_| _['id'] == parent_id}
+ if not list_servers_detail.body['servers'].find {|_| _['id'] == parent_id}
raise Fog::Compute::OpenStack::NotFound
end
end
@@ -33,11 +28,8 @@ module Fog
response = Excon::Response.new
response.status = 204
response
-
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/delete_metadata.rb b/lib/fog/openstack/requests/compute/delete_metadata.rb
index 088943c..f5470f4 100644
--- a/lib/fog/openstack/requests/compute/delete_metadata.rb
+++ b/lib/fog/openstack/requests/compute/delete_metadata.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def delete_metadata(collection_name, parent_id, key)
request(
:expects => 204,
@@ -10,19 +9,15 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata/#{key}"
)
end
-
end
class Mock
-
def delete_metadata(collection_name, parent_id, key)
response = Excon::Response.new
response.status = 204
response
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/delete_security_group.rb b/lib/fog/openstack/requests/compute/delete_security_group.rb
index f1cc1b7..ea643c8 100644
--- a/lib/fog/openstack/requests/compute/delete_security_group.rb
+++ b/lib/fog/openstack/requests/compute/delete_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def delete_security_group(security_group_id)
request(
:expects => 202,
@@ -10,7 +9,6 @@ module Fog
:path => "os-security-groups/#{security_group_id}"
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/compute/delete_security_group_rule.rb b/lib/fog/openstack/requests/compute/delete_security_group_rule.rb
index 024d2bb..1ab88c4 100644
--- a/lib/fog/openstack/requests/compute/delete_security_group_rule.rb
+++ b/lib/fog/openstack/requests/compute/delete_security_group_rule.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def delete_security_group_rule(security_group_rule_id)
request(
:expects => 202,
@@ -10,12 +9,11 @@ module Fog
:path => "os-security-group-rules/#{security_group_rule_id}"
)
end
-
end
class Mock
def delete_security_group_rule(security_group_rule_id)
- security_group = self.data[:security_groups].values.detect{|sg| sg["rules"].detect{ |sgr| sgr["id"].to_s == security_group_rule_id.to_s }}
+ security_group = self.data[:security_groups].values.find{|sg| sg["rules"].find{ |sgr| sgr["id"].to_s == security_group_rule_id.to_s }}
security_group["rules"].reject! { |sgr| sgr["id"] == security_group_rule_id }
response = Excon::Response.new
response.status = 202
diff --git a/lib/fog/openstack/requests/compute/delete_server.rb b/lib/fog/openstack/requests/compute/delete_server.rb
index b642474..e88b071 100644
--- a/lib/fog/openstack/requests/compute/delete_server.rb
+++ b/lib/fog/openstack/requests/compute/delete_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def delete_server(server_id)
request(
:expects => 204,
@@ -10,14 +9,12 @@ module Fog
:path => "servers/#{server_id}"
)
end
-
end
class Mock
-
def delete_server(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
if server['status'] == 'BUILD'
response.status = 409
raise(Excon::Errors.status_error({:expects => 204}, response))
@@ -31,7 +28,6 @@ module Fog
raise Fog::Compute::OpenStack::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/delete_snapshot.rb b/lib/fog/openstack/requests/compute/delete_snapshot.rb
index b7da489..1e017ee 100644
--- a/lib/fog/openstack/requests/compute/delete_snapshot.rb
+++ b/lib/fog/openstack/requests/compute/delete_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def delete_snapshot(snapshot_id)
request(
:expects => 202,
@@ -10,7 +9,6 @@ module Fog
:path => "os-snapshots/#{snapshot_id}"
)
end
-
end
class Mock
@@ -20,7 +18,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/delete_volume.rb b/lib/fog/openstack/requests/compute/delete_volume.rb
index ed245d9..03866de 100644
--- a/lib/fog/openstack/requests/compute/delete_volume.rb
+++ b/lib/fog/openstack/requests/compute/delete_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def delete_volume(volume_id)
request(
:expects => 202,
@@ -10,11 +9,9 @@ module Fog
:path => "os-volumes/#{volume_id}"
)
end
-
end
class Mock
-
def delete_volume(volume_id)
response = Excon::Response.new
if list_volumes.body['volumes'].map { |v| v['id'] }.include? volume_id
@@ -25,9 +22,7 @@ module Fog
raise Fog::Compute::OpenStack::NotFound
end
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/detach_volume.rb b/lib/fog/openstack/requests/compute/detach_volume.rb
index 1bcf1eb..37298e6 100644
--- a/lib/fog/openstack/requests/compute/detach_volume.rb
+++ b/lib/fog/openstack/requests/compute/detach_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def detach_volume(server_id, attachment_id)
request(
:expects => 202,
@@ -10,11 +9,9 @@ module Fog
:path => "servers/%s/os-volume_attachments/%s" % [server_id, attachment_id]
)
end
-
end
class Mock
-
def detach_volume(server_id, attachment_id)
response = Excon::Response.new
if self.data[:volumes][attachment_id] &&
@@ -26,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/disassociate_address.rb b/lib/fog/openstack/requests/compute/disassociate_address.rb
index 8f380a2..6eb7307 100644
--- a/lib/fog/openstack/requests/compute/disassociate_address.rb
+++ b/lib/fog/openstack/requests/compute/disassociate_address.rb
@@ -2,12 +2,10 @@ module Fog
module Compute
class OpenStack
class Real
-
def disassociate_address(server_id, ip_address)
body = { "removeFloatingIp" => {"address" => ip_address}}
server_action(server_id, body)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/compute/get_address.rb b/lib/fog/openstack/requests/compute/get_address.rb
index 9fb64bf..1e0f757 100644
--- a/lib/fog/openstack/requests/compute/get_address.rb
+++ b/lib/fog/openstack/requests/compute/get_address.rb
@@ -2,16 +2,13 @@ module Fog
module Compute
class OpenStack
class Real
-
def get_address(address_id)
-
request(
:expects => [200],
:method => 'GET',
:path => "os-floating-ips/#{address_id}"
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/compute/get_console_output.rb b/lib/fog/openstack/requests/compute/get_console_output.rb
index c6f72da..d59e859 100644
--- a/lib/fog/openstack/requests/compute/get_console_output.rb
+++ b/lib/fog/openstack/requests/compute/get_console_output.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def get_console_output(server_id, log_length)
body = {
'os-getConsoleOutput' => {
@@ -11,17 +10,14 @@ module Fog
}
server_action(server_id, body)
end
-
end
class Mock
-
def get_console_output(server_id, log_length)
response = Excon::Response.new
response.status = 200
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/get_flavor_details.rb b/lib/fog/openstack/requests/compute/get_flavor_details.rb
index aae6984..b3c64b9 100644
--- a/lib/fog/openstack/requests/compute/get_flavor_details.rb
+++ b/lib/fog/openstack/requests/compute/get_flavor_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def get_flavor_details(flavor_ref)
request(
:expects => [200, 203],
@@ -10,11 +9,9 @@ module Fog
:path => "flavors/#{flavor_ref}.json"
)
end
-
end
class Mock
-
def get_flavor_details(flavor_ref)
response = Excon::Response.new
flavor = {
@@ -36,7 +33,6 @@ module Fog
raise Fog::Compute::OpenStack::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/get_host_details.rb b/lib/fog/openstack/requests/compute/get_host_details.rb
index ba1be13..410d381 100644
--- a/lib/fog/openstack/requests/compute/get_host_details.rb
+++ b/lib/fog/openstack/requests/compute/get_host_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def get_host_details(host)
request(
:expects => [200, 203],
@@ -10,13 +9,10 @@ module Fog
:path => "os-hosts/#{host}.json"
)
end
-
end
class Mock
-
def get_host_details(host)
-
response = Excon::Response.new
response.status = 200
response.body = { "host" => [
@@ -63,11 +59,7 @@ module Fog
]
}
response
-
-
end
-
-
end # mock
end # openstack
end # compute
diff --git a/lib/fog/openstack/requests/compute/get_image_details.rb b/lib/fog/openstack/requests/compute/get_image_details.rb
index 630a070..34b31d6 100644
--- a/lib/fog/openstack/requests/compute/get_image_details.rb
+++ b/lib/fog/openstack/requests/compute/get_image_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def get_image_details(image_id)
request(
:expects => [200, 203],
@@ -10,14 +9,12 @@ module Fog
:path => "images/#{image_id}.json"
)
end
-
end
class Mock
-
def get_image_details(image_id)
response = Excon::Response.new
- if image = list_images_detail.body['images'].detect {|_| _['id'] == image_id}
+ if image = list_images_detail.body['images'].find {|_| _['id'] == image_id}
response.status = [200, 203][rand(1)]
response.body = { 'image' => image }
response
@@ -25,9 +22,7 @@ module Fog
raise Fog::Compute::OpenStack::NotFound
end
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/get_limits.rb b/lib/fog/openstack/requests/compute/get_limits.rb
index fd19db6..2a3f783 100644
--- a/lib/fog/openstack/requests/compute/get_limits.rb
+++ b/lib/fog/openstack/requests/compute/get_limits.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class OpenStack
-
# http://docs.openstack.org/api/openstack-compute/2/content/ProgramaticLimits.html
#
class Real
@@ -14,7 +13,6 @@ module Fog
end
end
-
class Mock
def get_limits
rate_limits = [
@@ -76,7 +74,6 @@ module Fog
'totalFloatingIpsUsed' => 0
}
-
Excon::Response.new(
:status => 200,
:body => {
@@ -87,7 +84,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/get_metadata.rb b/lib/fog/openstack/requests/compute/get_metadata.rb
index b85db3a..24a05b6 100644
--- a/lib/fog/openstack/requests/compute/get_metadata.rb
+++ b/lib/fog/openstack/requests/compute/get_metadata.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def get_metadata(collection_name, parent_id, key)
request(
:expects => [200, 203],
@@ -10,20 +9,16 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata/#{key}"
)
end
-
end
class Mock
-
def get_metadata(collection_name, parent_id, key)
response = Excon::Response.new
response.status = 200
response.body = { 'meta' => {} }
response
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/get_quota.rb b/lib/fog/openstack/requests/compute/get_quota.rb
index feca55a..058f33a 100644
--- a/lib/fog/openstack/requests/compute/get_quota.rb
+++ b/lib/fog/openstack/requests/compute/get_quota.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def get_quota(tenant_id)
request(
:expects => 200,
@@ -10,11 +9,9 @@ module Fog
:path => "/os-quota-sets/#{tenant_id}"
)
end
-
end
class Mock
-
def get_quota(tenant_id)
response = Excon::Response.new
response.status = 200
@@ -23,9 +20,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/get_quota_defaults.rb b/lib/fog/openstack/requests/compute/get_quota_defaults.rb
index 25944c1..6148fc2 100644
--- a/lib/fog/openstack/requests/compute/get_quota_defaults.rb
+++ b/lib/fog/openstack/requests/compute/get_quota_defaults.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def get_quota_defaults(tenant_id)
request(
:expects => 200,
@@ -10,11 +9,9 @@ module Fog
:path => "/os-quota-sets/#{tenant_id}/defaults"
)
end
-
end
class Mock
-
def get_quota_defaults(tenant_id)
response = Excon::Response.new
response.status = 200
@@ -23,9 +20,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/get_security_group.rb b/lib/fog/openstack/requests/compute/get_security_group.rb
index 2b8add6..20b2df6 100644
--- a/lib/fog/openstack/requests/compute/get_security_group.rb
+++ b/lib/fog/openstack/requests/compute/get_security_group.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def get_security_group(security_group_id)
request(
:expects => [200],
@@ -10,7 +9,6 @@ module Fog
:path => "os-security-groups/#{security_group_id}"
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/compute/get_security_group_rule.rb b/lib/fog/openstack/requests/compute/get_security_group_rule.rb
index 5b6e6fd..8195e12 100644
--- a/lib/fog/openstack/requests/compute/get_security_group_rule.rb
+++ b/lib/fog/openstack/requests/compute/get_security_group_rule.rb
@@ -14,7 +14,7 @@ module Fog
class Mock
def get_security_group_rule(security_group_rule_id)
security_group_rule = nil
- self.data[:security_groups].detect{|id, sg| security_group_rule = sg["rules"].detect{ |sgr| sgr["id"].to_s == security_group_rule_id.to_s }}
+ self.data[:security_groups].find{|id, sg| security_group_rule = sg["rules"].find{ |sgr| sgr["id"].to_s == security_group_rule_id.to_s }}
response = Excon::Response.new
if security_group_rule
response.status = 200
diff --git a/lib/fog/openstack/requests/compute/get_server_details.rb b/lib/fog/openstack/requests/compute/get_server_details.rb
index 13bd036..e4539f7 100644
--- a/lib/fog/openstack/requests/compute/get_server_details.rb
+++ b/lib/fog/openstack/requests/compute/get_server_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def get_server_details(server_id)
request(
:expects => [200, 203],
@@ -10,14 +9,12 @@ module Fog
:path => "servers/#{server_id}.json"
)
end
-
end
class Mock
-
def get_server_details(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.status = [200, 203][rand(1)]
response.body = { 'server' => server }
response
@@ -25,7 +22,6 @@ module Fog
raise Fog::Compute::OpenStack::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/get_server_volumes.rb b/lib/fog/openstack/requests/compute/get_server_volumes.rb
index 5a60d1d..6e50a8a 100644
--- a/lib/fog/openstack/requests/compute/get_server_volumes.rb
+++ b/lib/fog/openstack/requests/compute/get_server_volumes.rb
@@ -2,32 +2,26 @@ module Fog
module Compute
class OpenStack
class Real
-
def get_server_volumes(server_id)
-
request(
:expects => 200,
:method => 'GET',
:path => "/servers/#{server_id}/os-volume_attachments"
)
end
-
end
class Mock
-
def get_server_volumes(server_id)
response = Excon::Response.new
response.status = 200
- data = self.data[:volumes].values.find_all do |vol|
+ data = self.data[:volumes].values.select do |vol|
vol['attachments'].find { |attachment| attachment["serverId"] == server_id }
end
- response.body = { 'volumeAttachments' => data.collect! { |vol| vol['attachments'] }.flatten(1) }
+ response.body = { 'volumeAttachments' => data.map! { |vol| vol['attachments'] }.flatten(1) }
response
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/get_snapshot_details.rb b/lib/fog/openstack/requests/compute/get_snapshot_details.rb
index 45e8542..724592e 100644
--- a/lib/fog/openstack/requests/compute/get_snapshot_details.rb
+++ b/lib/fog/openstack/requests/compute/get_snapshot_details.rb
@@ -2,20 +2,16 @@ module Fog
module Compute
class OpenStack
class Real
-
def get_snapshot_details(snapshot_id)
-
request(
:expects => 200,
:method => 'GET',
:path => "os-snapshots/#{snapshot_id}"
)
end
-
end
class Mock
-
def get_snapshot_details(snapshot_id)
response = Excon::Response.new
response.status = 200
@@ -33,7 +29,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/get_usage.rb b/lib/fog/openstack/requests/compute/get_usage.rb
index 55cfd9d..06c6f67 100644
--- a/lib/fog/openstack/requests/compute/get_usage.rb
+++ b/lib/fog/openstack/requests/compute/get_usage.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def get_usage(tenant_id, date_start, date_end)
params = Hash.new
params[:start] = date_start.utc.iso8601.chop!
@@ -14,7 +13,6 @@ module Fog
:query => params
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/compute/get_volume_details.rb b/lib/fog/openstack/requests/compute/get_volume_details.rb
index 8fb2ccd..00d2ee1 100644
--- a/lib/fog/openstack/requests/compute/get_volume_details.rb
+++ b/lib/fog/openstack/requests/compute/get_volume_details.rb
@@ -2,20 +2,16 @@ module Fog
module Compute
class OpenStack
class Real
-
def get_volume_details(volume_id)
-
request(
:expects => 200,
:method => 'GET',
:path => "os-volumes/#{volume_id}"
)
end
-
end
class Mock
-
def get_volume_details(volume_id)
response = Excon::Response.new
if data = self.data[:volumes][volume_id]
@@ -27,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/list_address_pools.rb b/lib/fog/openstack/requests/compute/list_address_pools.rb
index bd24b99..9f4dc71 100644
--- a/lib/fog/openstack/requests/compute/list_address_pools.rb
+++ b/lib/fog/openstack/requests/compute/list_address_pools.rb
@@ -2,20 +2,16 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_address_pools
request(
:expects => [200, 203],
:method => 'GET',
:path => "os-floating-ip-pools"
)
-
end
-
end
class Mock
-
def list_address_pools
response = Excon::Response.new
response.status = 200
@@ -26,7 +22,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/list_addresses.rb b/lib/fog/openstack/requests/compute/list_addresses.rb
index 7fe046c..806ad8d 100644
--- a/lib/fog/openstack/requests/compute/list_addresses.rb
+++ b/lib/fog/openstack/requests/compute/list_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_addresses(server_id)
request(
:expects => [200, 203],
@@ -10,14 +9,12 @@ module Fog
:path => "servers/#{server_id}/ips.json"
)
end
-
end
class Mock
-
def list_addresses(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.status = [200, 203][rand(1)]
response.body = { 'addresses' => server['addresses'] }
response
@@ -25,7 +22,6 @@ module Fog
raise Fog::Compute::OpenStack::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/list_all_addresses.rb b/lib/fog/openstack/requests/compute/list_all_addresses.rb
index b16eb1d..5e241b7 100644
--- a/lib/fog/openstack/requests/compute/list_all_addresses.rb
+++ b/lib/fog/openstack/requests/compute/list_all_addresses.rb
@@ -2,16 +2,13 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_all_addresses
request(
:expects => [200, 203],
:method => 'GET',
:path => "os-floating-ips.json"
)
-
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/compute/list_flavors.rb b/lib/fog/openstack/requests/compute/list_flavors.rb
index ec2c754..ae54b31 100644
--- a/lib/fog/openstack/requests/compute/list_flavors.rb
+++ b/lib/fog/openstack/requests/compute/list_flavors.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_flavors
request(
:expects => [200, 203],
@@ -10,11 +9,9 @@ module Fog
:path => 'flavors.json'
)
end
-
end
class Mock
-
def list_flavors
response = Excon::Response.new
response.status = 200
@@ -31,7 +28,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/list_flavors_detail.rb b/lib/fog/openstack/requests/compute/list_flavors_detail.rb
index 1416de2..c9133ac 100644
--- a/lib/fog/openstack/requests/compute/list_flavors_detail.rb
+++ b/lib/fog/openstack/requests/compute/list_flavors_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_flavors_detail(options = {})
request(
:expects => [200, 203],
@@ -11,11 +10,9 @@ module Fog
:query => options
)
end
-
end
class Mock
-
def list_flavors_detail(options = {})
response = Excon::Response.new
response.status = 200
@@ -32,7 +29,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/list_hosts.rb b/lib/fog/openstack/requests/compute/list_hosts.rb
index e8dd929..08cdd01 100644
--- a/lib/fog/openstack/requests/compute/list_hosts.rb
+++ b/lib/fog/openstack/requests/compute/list_hosts.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_hosts
request(
:expects => [200, 203],
@@ -10,11 +9,9 @@ module Fog
:path => 'os-hosts.json'
)
end
-
end
class Mock
-
def list_hosts
response = Excon::Response.new
response.status = 200
@@ -24,8 +21,6 @@ module Fog
}
response
end
-
-
end # mock
end # openstack
end # compute
diff --git a/lib/fog/openstack/requests/compute/list_images.rb b/lib/fog/openstack/requests/compute/list_images.rb
index 8ad0405..0d88e24 100644
--- a/lib/fog/openstack/requests/compute/list_images.rb
+++ b/lib/fog/openstack/requests/compute/list_images.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_images
request(
:expects => [200, 203],
@@ -10,11 +9,9 @@ module Fog
:path => 'images.json'
)
end
-
end
class Mock
-
def list_images
response = Excon::Response.new
data = list_images_detail.body['images']
@@ -26,7 +23,6 @@ module Fog
response.body = { 'images' => images }
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/list_images_detail.rb b/lib/fog/openstack/requests/compute/list_images_detail.rb
index f340e0e..676a1d4 100644
--- a/lib/fog/openstack/requests/compute/list_images_detail.rb
+++ b/lib/fog/openstack/requests/compute/list_images_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_images_detail(filters = {})
request(
:expects => [200, 203],
@@ -11,11 +10,9 @@ module Fog
:query => filters
)
end
-
end
class Mock
-
def list_images_detail(filters = {})
response = Excon::Response.new
@@ -33,7 +30,6 @@ module Fog
response.body = { 'images' => images.map {|image| image.reject {|key, value| !['id', 'name', 'links', 'minRam', 'minDisk', 'metadata', 'status', 'updated'].include?(key)}} }
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/list_key_pairs.rb b/lib/fog/openstack/requests/compute/list_key_pairs.rb
index 043ea10..b5bdad4 100644
--- a/lib/fog/openstack/requests/compute/list_key_pairs.rb
+++ b/lib/fog/openstack/requests/compute/list_key_pairs.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_key_pairs
request(
:expects => [200, 203],
@@ -10,7 +9,6 @@ module Fog
:path => 'os-keypairs.json'
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/compute/list_metadata.rb b/lib/fog/openstack/requests/compute/list_metadata.rb
index 7ba1346..e5b5f3c 100644
--- a/lib/fog/openstack/requests/compute/list_metadata.rb
+++ b/lib/fog/openstack/requests/compute/list_metadata.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_metadata(collection_name, parent_id)
request(
:expects => [200, 203],
@@ -10,18 +9,15 @@ module Fog
:path => "/#{collection_name}/#{parent_id}/metadata.json"
)
end
-
end
class Mock
-
def list_metadata(collection_name, parent_id)
response = Excon::Response.new
response.status = 200
response.body = {}
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/list_private_addresses.rb b/lib/fog/openstack/requests/compute/list_private_addresses.rb
index 96c2636..3b0151d 100644
--- a/lib/fog/openstack/requests/compute/list_private_addresses.rb
+++ b/lib/fog/openstack/requests/compute/list_private_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_private_addresses(server_id)
request(
:expects => [200, 203],
@@ -10,14 +9,12 @@ module Fog
:path => "servers/#{server_id}/ips/private.json"
)
end
-
end
class Mock
-
def list_private_addresses(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.status = [200, 203][rand(1)]
response.body = { 'private' => server['addresses']['private'] }
response
@@ -25,7 +22,6 @@ module Fog
raise Fog::Compute::OpenStack::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/list_public_addresses.rb b/lib/fog/openstack/requests/compute/list_public_addresses.rb
index 9eaf49a..dda3e43 100644
--- a/lib/fog/openstack/requests/compute/list_public_addresses.rb
+++ b/lib/fog/openstack/requests/compute/list_public_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_public_addresses(server_id)
request(
:expects => [200, 203],
@@ -10,14 +9,12 @@ module Fog
:path => "servers/#{server_id}/ips/public.json"
)
end
-
end
class Mock
-
def list_public_addresses(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.status = [200, 203][rand(1)]
response.body = { 'public' => server['addresses']['public'] }
response
@@ -25,7 +22,6 @@ module Fog
raise Fog::Compute::OpenStack::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/list_security_groups.rb b/lib/fog/openstack/requests/compute/list_security_groups.rb
index a6da05d..5d683e5 100644
--- a/lib/fog/openstack/requests/compute/list_security_groups.rb
+++ b/lib/fog/openstack/requests/compute/list_security_groups.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_security_groups(server_id = nil)
path = "os-security-groups.json"
if server_id
@@ -14,7 +13,6 @@ module Fog
:path => path
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/compute/list_servers.rb b/lib/fog/openstack/requests/compute/list_servers.rb
index 9d19dc6..cb45d0e 100644
--- a/lib/fog/openstack/requests/compute/list_servers.rb
+++ b/lib/fog/openstack/requests/compute/list_servers.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_servers(options = {})
params = Hash.new
params['all_tenants'] = 'True' if options[:all_tenants]
@@ -14,11 +13,9 @@ module Fog
:query => params
)
end
-
end
class Mock
-
def list_servers(options = {})
response = Excon::Response.new
data = list_servers_detail.body['servers']
@@ -30,7 +27,6 @@ module Fog
response.body = { 'servers' => servers }
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/list_servers_detail.rb b/lib/fog/openstack/requests/compute/list_servers_detail.rb
index bd28e89..5b4df1b 100644
--- a/lib/fog/openstack/requests/compute/list_servers_detail.rb
+++ b/lib/fog/openstack/requests/compute/list_servers_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
# Available filters: name, status, image, flavor, changes_since, reservation_id
def list_servers_detail(filters = {})
params = Hash.new
@@ -15,11 +14,9 @@ module Fog
:query => params
)
end
-
end
class Mock
-
def list_servers_detail(filters = {})
response = Excon::Response.new
@@ -37,7 +34,6 @@ module Fog
response.body = { 'servers' => servers }
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/list_snapshots.rb b/lib/fog/openstack/requests/compute/list_snapshots.rb
index c81ae50..95a02e6 100644
--- a/lib/fog/openstack/requests/compute/list_snapshots.rb
+++ b/lib/fog/openstack/requests/compute/list_snapshots.rb
@@ -2,9 +2,7 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_snapshots(detailed=true)
-
path = detailed ? 'os-snapshots/detail' : 'os-snapshots'
request(
:expects => 200,
@@ -12,11 +10,9 @@ module Fog
:path => path
)
end
-
end
class Mock
-
def list_snapshots(detailed=true)
response = Excon::Response.new
response.status = 200
@@ -26,7 +22,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/list_usages.rb b/lib/fog/openstack/requests/compute/list_usages.rb
index 249c3cb..bf47411 100644
--- a/lib/fog/openstack/requests/compute/list_usages.rb
+++ b/lib/fog/openstack/requests/compute/list_usages.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_usages(date_start = nil, date_end = nil, detailed=false)
params = Hash.new
params[:start] = date_start.iso8601.gsub(/\+.*/, '') if date_start
@@ -16,7 +15,6 @@ module Fog
:query => params
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/compute/list_volumes.rb b/lib/fog/openstack/requests/compute/list_volumes.rb
index b8f811e..3891568 100644
--- a/lib/fog/openstack/requests/compute/list_volumes.rb
+++ b/lib/fog/openstack/requests/compute/list_volumes.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def list_volumes(detailed=true)
path = detailed ? 'os-volumes/detail' : 'os-volumes'
request(
@@ -11,11 +10,9 @@ module Fog
:path => path
)
end
-
end
class Mock
-
def list_volumes(detailed=true)
Excon::Response.new(
:body => { 'volumes' => self.data[:volumes].values },
@@ -23,7 +20,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/live_migrate_server.rb b/lib/fog/openstack/requests/compute/live_migrate_server.rb
index 9fe5e31..ea40e57 100644
--- a/lib/fog/openstack/requests/compute/live_migrate_server.rb
+++ b/lib/fog/openstack/requests/compute/live_migrate_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def live_migrate_server(server_id, host, block_migration, disk_over_commit)
body = {
'os-migrateLive' => {
@@ -12,19 +11,15 @@ module Fog
}
}
server_action(server_id, body)
-
end
-
end
class Mock
-
def live_migrate_server(server_id, host, block_migration, disk_over_commit)
response = Excon::Response.new
response.status = 202
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/migrate_server.rb b/lib/fog/openstack/requests/compute/migrate_server.rb
index f132b7c..2cb2bc6 100644
--- a/lib/fog/openstack/requests/compute/migrate_server.rb
+++ b/lib/fog/openstack/requests/compute/migrate_server.rb
@@ -2,22 +2,18 @@ module Fog
module Compute
class OpenStack
class Real
-
def migrate_server(server_id)
body = { 'migrate' => nil }
server_action(server_id, body)
end
-
end
class Mock
-
def migrate_server(server_id)
response = Excon::Response.new
response.status = 202
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/reboot_server.rb b/lib/fog/openstack/requests/compute/reboot_server.rb
index 0cfd72d..23eedd3 100644
--- a/lib/fog/openstack/requests/compute/reboot_server.rb
+++ b/lib/fog/openstack/requests/compute/reboot_server.rb
@@ -2,22 +2,18 @@ module Fog
module Compute
class OpenStack
class Real
-
def reboot_server(server_id, type = 'SOFT')
body = { 'reboot' => { 'type' => type }}
server_action(server_id, body)
end
-
end
class Mock
-
def reboot_server(server_id, type = 'SOFT')
response = Excon::Response.new
response.status = 202
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/rebuild_server.rb b/lib/fog/openstack/requests/compute/rebuild_server.rb
index 77f7446..f801831 100644
--- a/lib/fog/openstack/requests/compute/rebuild_server.rb
+++ b/lib/fog/openstack/requests/compute/rebuild_server.rb
@@ -2,9 +2,7 @@ module Fog
module Compute
class OpenStack
class Real
-
def rebuild_server(server_id, image_ref, name, admin_pass=nil, metadata=nil, personality=nil)
-
body = { 'rebuild' => {
'imageRef' => image_ref,
'name' => name
@@ -22,17 +20,14 @@ module Fog
end
server_action(server_id, body, 202)
end
-
end
class Mock
-
def rebuild_server(server_id, image_ref, name, admin_pass=nil, metadata=nil, personality=nil)
response = get_server_details(server_id)
response.body['server']['status'] = "REBUILD"
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/release_address.rb b/lib/fog/openstack/requests/compute/release_address.rb
index f205729..f4c9bf3 100644
--- a/lib/fog/openstack/requests/compute/release_address.rb
+++ b/lib/fog/openstack/requests/compute/release_address.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def release_address(address_id)
request(
:expects => [200, 202],
@@ -10,11 +9,9 @@ module Fog
:path => "os-floating-ips/#{address_id}"
)
end
-
end
class Mock
-
def release_address(address_id)
response = Excon::Response.new
response.status = 202
@@ -26,9 +23,7 @@ module Fog
response.body = {}
response
end
-
end # mock
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/remove_security_group.rb b/lib/fog/openstack/requests/compute/remove_security_group.rb
index 58ace3f..fee63f2 100644
--- a/lib/fog/openstack/requests/compute/remove_security_group.rb
+++ b/lib/fog/openstack/requests/compute/remove_security_group.rb
@@ -2,22 +2,18 @@ module Fog
module Compute
class OpenStack
class Real
-
def remove_security_group(server_id, group_name)
body = {'removeSecurityGroup' => { "name" => group_name } }
server_action(server_id, body)
end
-
end
class Mock
-
def remove_security_group(server_id, group_name)
response = Excon::Response.new
response.status = 200
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/reset_server_state.rb b/lib/fog/openstack/requests/compute/reset_server_state.rb
index 66f3087..d32c199 100644
--- a/lib/fog/openstack/requests/compute/reset_server_state.rb
+++ b/lib/fog/openstack/requests/compute/reset_server_state.rb
@@ -2,22 +2,18 @@ module Fog
module Compute
class OpenStack
class Real
-
def reset_server_state(server_id, status)
body = { 'os-resetState' => { 'state' => status } }
server_action(server_id, body, 202)
end
-
end
class Mock
-
def reset_server_state(server_id, status)
response = get_server_details(server_id)
response.body['server']['status'] = status.upcase
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/resize_server.rb b/lib/fog/openstack/requests/compute/resize_server.rb
index bb14b6d..489563e 100644
--- a/lib/fog/openstack/requests/compute/resize_server.rb
+++ b/lib/fog/openstack/requests/compute/resize_server.rb
@@ -2,22 +2,18 @@ module Fog
module Compute
class OpenStack
class Real
-
def resize_server(server_id, flavor_ref)
body = { 'resize' => { 'flavorRef' => flavor_ref }}
server_action(server_id, body)
end
-
end
class Mock
-
def resize_server(server_id, flavor_ref)
response = Excon::Response.new
response.status = 202
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/revert_resize_server.rb b/lib/fog/openstack/requests/compute/revert_resize_server.rb
index 74e4d59..cf00809 100644
--- a/lib/fog/openstack/requests/compute/revert_resize_server.rb
+++ b/lib/fog/openstack/requests/compute/revert_resize_server.rb
@@ -2,16 +2,13 @@ module Fog
module Compute
class OpenStack
class Real
-
def revert_resize_server(server_id)
body = { 'revertResize' => nil }
server_action(server_id, body)
end
-
end
class Mock
-
def revert_resize_server(server_id)
response = Excon::Response.new
response.status = 202
@@ -23,7 +20,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/server_action.rb b/lib/fog/openstack/requests/compute/server_action.rb
index b55d7a0..11c329b 100644
--- a/lib/fog/openstack/requests/compute/server_action.rb
+++ b/lib/fog/openstack/requests/compute/server_action.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def server_action(server_id, body, expects=[200,202])
request(
:body => Fog::JSON.encode(body),
@@ -11,7 +10,6 @@ module Fog
:path => "servers/#{server_id}/action.json"
)
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/set_metadata.rb b/lib/fog/openstack/requests/compute/set_metadata.rb
index 48b5de7..49359fc 100644
--- a/lib/fog/openstack/requests/compute/set_metadata.rb
+++ b/lib/fog/openstack/requests/compute/set_metadata.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class OpenStack
-
class Real
-
def set_metadata(collection_name, parent_id, metadata = {})
request(
:body => Fog::JSON.encode({ 'metadata' => metadata }),
@@ -12,21 +10,18 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata"
)
end
-
end
class Mock
-
def set_metadata(collection_name, parent_id, metadata = {})
-
if collection_name == "images" then
- if not list_images_detail.body['images'].detect {|_| _['id'] == parent_id}
+ if not list_images_detail.body['images'].find {|_| _['id'] == parent_id}
raise Fog::Compute::OpenStack::NotFound
end
end
if collection_name == "servers" then
- if not list_servers_detail.body['servers'].detect {|_| _['id'] == parent_id}
+ if not list_servers_detail.body['servers'].find {|_| _['id'] == parent_id}
raise Fog::Compute::OpenStack::NotFound
end
end
@@ -35,11 +30,8 @@ module Fog
response.body = { "metadata" => metadata }
response.status = 200
response
-
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/set_tenant.rb b/lib/fog/openstack/requests/compute/set_tenant.rb
index cde9a85..05f4746 100644
--- a/lib/fog/openstack/requests/compute/set_tenant.rb
+++ b/lib/fog/openstack/requests/compute/set_tenant.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class OpenStack
-
class Real
def set_tenant(tenant)
@openstack_must_reauthenticate = true
@@ -15,7 +14,6 @@ module Fog
true
end
end
-
end # class OpenStack
end # module Compute
end # module Fog
diff --git a/lib/fog/openstack/requests/compute/start_server.rb b/lib/fog/openstack/requests/compute/start_server.rb
new file mode 100644
index 0000000..b20b902
--- /dev/null
+++ b/lib/fog/openstack/requests/compute/start_server.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class OpenStack
+ class Real
+ # Start the server.
+ #
+ # === Parameters
+ # * server_id <~String> - The ID of the server to be started.
+ # === Returns
+ # * success <~Boolean>
+ def start_server(server_id)
+ body = { 'os-start' => nil }
+ server_action(server_id, body).status == 202
+ end # def start_server
+ end # class Real
+
+ class Mock
+ def start_server(server_id)
+ true
+ end # def start_server
+ end # class Mock
+ end # class OpenStack
+ end # module Compute
+end # module Fog
\ No newline at end of file
diff --git a/lib/fog/openstack/requests/compute/stop_server.rb b/lib/fog/openstack/requests/compute/stop_server.rb
new file mode 100644
index 0000000..418a03c
--- /dev/null
+++ b/lib/fog/openstack/requests/compute/stop_server.rb
@@ -0,0 +1,24 @@
+module Fog
+ module Compute
+ class OpenStack
+ class Real
+ # Stop the server.
+ #
+ # === Parameters
+ # * server_id <~String> - The ID of the server to be stopped.
+ # === Returns
+ # * success <~Boolean>
+ def stop_server(server_id)
+ body = { 'os-stop' => nil }
+ server_action(server_id, body).status == 202
+ end # def stop_server
+ end # class Real
+
+ class Mock
+ def stop_server(server_id)
+ true
+ end # def stop_server
+ end # class Mock
+ end # class OpenStack
+ end # module Compute
+end # module Fog
\ No newline at end of file
diff --git a/lib/fog/openstack/requests/compute/update_meta.rb b/lib/fog/openstack/requests/compute/update_meta.rb
index 68c751d..f7c0286 100644
--- a/lib/fog/openstack/requests/compute/update_meta.rb
+++ b/lib/fog/openstack/requests/compute/update_meta.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class OpenStack
-
class Real
-
def update_meta(collection_name, parent_id, key, value)
request(
:body => Fog::JSON.encode({ 'meta' => {key => value}}),
@@ -12,21 +10,18 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata/#{key}"
)
end
-
end
class Mock
-
def update_meta(collection_name, parent_id, key, value)
-
if collection_name == "images" then
- if not list_images_detail.body['images'].detect {|_| _['id'] == parent_id}
+ if not list_images_detail.body['images'].find {|_| _['id'] == parent_id}
raise Fog::Compute::OpenStack::NotFound
end
end
if collection_name == "servers" then
- if not list_servers_detail.body['servers'].detect {|_| _['id'] == parent_id}
+ if not list_servers_detail.body['servers'].find {|_| _['id'] == parent_id}
raise Fog::Compute::OpenStack::NotFound
end
end
@@ -36,11 +31,8 @@ module Fog
response.body = { "metadata" => {key => value} }
response.status = 200
response
-
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/update_metadata.rb b/lib/fog/openstack/requests/compute/update_metadata.rb
index 93d260e..d26cd17 100644
--- a/lib/fog/openstack/requests/compute/update_metadata.rb
+++ b/lib/fog/openstack/requests/compute/update_metadata.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class OpenStack
-
class Real
-
def update_metadata(collection_name, parent_id, metadata = {})
request(
:body => Fog::JSON.encode({ 'metadata' => metadata }),
@@ -12,21 +10,18 @@ module Fog
:path => "#{collection_name}/#{parent_id}/metadata.json"
)
end
-
end
class Mock
-
def update_metadata(collection_name, parent_id, metadata = {})
-
if collection_name == "images" then
- if not list_images_detail.body['images'].detect {|_| _['id'] == parent_id}
+ if not list_images_detail.body['images'].find {|_| _['id'] == parent_id}
raise Fog::Compute::OpenStack::NotFound
end
end
if collection_name == "servers" then
- if not list_servers_detail.body['servers'].detect {|_| _['id'] == parent_id}
+ if not list_servers_detail.body['servers'].find {|_| _['id'] == parent_id}
raise Fog::Compute::OpenStack::NotFound
end
end
@@ -36,11 +31,8 @@ module Fog
response.body = { "metadata" => metadata }
response.status = 200
response
-
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/update_quota.rb b/lib/fog/openstack/requests/compute/update_quota.rb
index 51f59b2..bccf22f 100644
--- a/lib/fog/openstack/requests/compute/update_quota.rb
+++ b/lib/fog/openstack/requests/compute/update_quota.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def update_quota(tenant_id, options = {})
options['tenant_id'] = tenant_id
request(
@@ -12,11 +11,9 @@ module Fog
:path => "/os-quota-sets/#{tenant_id}"
)
end
-
end
class Mock
-
def update_quota(tenant_id, options = {})
self.data[:quota_updated] = self.data[:quota].merge options
@@ -25,7 +22,6 @@ module Fog
response.body = { 'quota_set' => self.data[:quota_updated] }
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/compute/update_server.rb b/lib/fog/openstack/requests/compute/update_server.rb
index dbf0b9b..e19de13 100644
--- a/lib/fog/openstack/requests/compute/update_server.rb
+++ b/lib/fog/openstack/requests/compute/update_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class OpenStack
class Real
-
def update_server(server_id, options = {})
request(
:body => Fog::JSON.encode({ 'server' => options }),
@@ -11,14 +10,12 @@ module Fog
:path => "servers/#{server_id}.json"
)
end
-
end
class Mock
-
def update_server(server_id, options = {})
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
if options['name']
server['name'] = options['name']
end
@@ -28,7 +25,6 @@ module Fog
raise Fog::Compute::OpenStack::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/identity/check_token.rb b/lib/fog/openstack/requests/identity/check_token.rb
index f208c58..8a0301d 100644
--- a/lib/fog/openstack/requests/identity/check_token.rb
+++ b/lib/fog/openstack/requests/identity/check_token.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
def check_token(token_id, tenant_id)
request(
:expects => [200, 203],
@@ -10,13 +9,9 @@ module Fog
:path => "tokens/#{token_id}?belongsTo=#{tenant_id}"
)
end
-
end
class Mock
-
-
-
end
end
end
diff --git a/lib/fog/openstack/requests/identity/create_ec2_credential.rb b/lib/fog/openstack/requests/identity/create_ec2_credential.rb
index dc20e98..0714074 100644
--- a/lib/fog/openstack/requests/identity/create_ec2_credential.rb
+++ b/lib/fog/openstack/requests/identity/create_ec2_credential.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
##
# Create an EC2 credential for a user in a tenant. Requires
# administrator credentials.
diff --git a/lib/fog/openstack/requests/identity/create_role.rb b/lib/fog/openstack/requests/identity/create_role.rb
index 79c25a6..9f71b32 100644
--- a/lib/fog/openstack/requests/identity/create_role.rb
+++ b/lib/fog/openstack/requests/identity/create_role.rb
@@ -30,7 +30,6 @@ module Fog
:status => 202
)
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/identity/create_user.rb b/lib/fog/openstack/requests/identity/create_user.rb
index c4996af..b8d4367 100644
--- a/lib/fog/openstack/requests/identity/create_user.rb
+++ b/lib/fog/openstack/requests/identity/create_user.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
def create_user(name, password, email, tenantId=nil, enabled=true)
data = {
'user' => {
@@ -21,11 +20,9 @@ module Fog
:path => '/users'
)
end
-
end
class Mock
-
def create_user(name, password, email, tenantId=nil, enabled=true)
response = Excon::Response.new
response.status = 200
@@ -40,7 +37,6 @@ module Fog
response.body = { 'user' => data }
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/identity/create_user_role.rb b/lib/fog/openstack/requests/identity/create_user_role.rb
index 0becdb4..7e7d7ae 100644
--- a/lib/fog/openstack/requests/identity/create_user_role.rb
+++ b/lib/fog/openstack/requests/identity/create_user_role.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
def create_user_role(tenant_id, user_id, role_id)
request(
:expects => 200,
@@ -10,7 +9,6 @@ module Fog
:path => "/tenants/#{tenant_id}/users/#{user_id}/roles/OS-KSADM/#{role_id}"
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/identity/delete_ec2_credential.rb b/lib/fog/openstack/requests/identity/delete_ec2_credential.rb
index 95fe7a1..2bf37c2 100644
--- a/lib/fog/openstack/requests/identity/delete_ec2_credential.rb
+++ b/lib/fog/openstack/requests/identity/delete_ec2_credential.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
##
# Destroy an EC2 credential for a user. Requires administrator
# credentials.
@@ -41,4 +40,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/openstack/requests/identity/delete_role.rb b/lib/fog/openstack/requests/identity/delete_role.rb
index 2600af8..a0f7856 100644
--- a/lib/fog/openstack/requests/identity/delete_role.rb
+++ b/lib/fog/openstack/requests/identity/delete_role.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
def delete_role(role_id)
request(
:expects => [200, 204],
@@ -10,11 +9,9 @@ module Fog
:path => "/OS-KSADM/roles/#{role_id}"
)
end
-
end
class Mock
-
def delete_role(role_id)
response = Excon::Response.new
if self.data[:roles][role_id]
@@ -25,7 +22,6 @@ module Fog
raise Fog::Identity::OpenStack::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/identity/delete_user.rb b/lib/fog/openstack/requests/identity/delete_user.rb
index d42b778..3309651 100644
--- a/lib/fog/openstack/requests/identity/delete_user.rb
+++ b/lib/fog/openstack/requests/identity/delete_user.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
def delete_user(user_id)
request(
:expects => [200, 204],
@@ -10,11 +9,9 @@ module Fog
:path => "users/#{user_id}"
)
end
-
end
class Mock
-
def delete_user(user_id)
self.data[:users].delete(
list_users.body['users'].find {|x| x['id'] == user_id }['id'])
@@ -25,7 +22,6 @@ module Fog
rescue
raise Fog::Identity::OpenStack::NotFound
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/identity/delete_user_role.rb b/lib/fog/openstack/requests/identity/delete_user_role.rb
index 8bd5cd9..6c5ce2d 100644
--- a/lib/fog/openstack/requests/identity/delete_user_role.rb
+++ b/lib/fog/openstack/requests/identity/delete_user_role.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
def delete_user_role(tenant_id, user_id, role_id)
request(
:expects => 204,
@@ -10,7 +9,6 @@ module Fog
:path => "/tenants/#{tenant_id}/users/#{user_id}/roles/OS-KSADM/#{role_id}"
)
end
-
end
class Mock
@@ -23,4 +21,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/openstack/requests/identity/get_ec2_credential.rb b/lib/fog/openstack/requests/identity/get_ec2_credential.rb
index 323c5fe..31b32c2 100644
--- a/lib/fog/openstack/requests/identity/get_ec2_credential.rb
+++ b/lib/fog/openstack/requests/identity/get_ec2_credential.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
##
# Retrieves an EC2 credential for a user. Requires administrator
# credentials.
diff --git a/lib/fog/openstack/requests/identity/get_tenants_by_id.rb b/lib/fog/openstack/requests/identity/get_tenants_by_id.rb
index 01489e8..ad69c02 100644
--- a/lib/fog/openstack/requests/identity/get_tenants_by_id.rb
+++ b/lib/fog/openstack/requests/identity/get_tenants_by_id.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
def get_tenants_by_id(tenant_id)
request(
:expects => [200],
@@ -10,13 +9,9 @@ module Fog
:path => "tenants/#{tenant_id}"
)
end
-
end
class Mock
-
-
-
end
end
end
diff --git a/lib/fog/openstack/requests/identity/get_tenants_by_name.rb b/lib/fog/openstack/requests/identity/get_tenants_by_name.rb
index 42fd019..b468f86 100644
--- a/lib/fog/openstack/requests/identity/get_tenants_by_name.rb
+++ b/lib/fog/openstack/requests/identity/get_tenants_by_name.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
def get_tenants_by_name(name)
request(
:expects => [200],
@@ -10,13 +9,9 @@ module Fog
:path => "tenants?name=#{name}"
)
end
-
end
class Mock
-
-
-
end
end
end
diff --git a/lib/fog/openstack/requests/identity/get_user_by_id.rb b/lib/fog/openstack/requests/identity/get_user_by_id.rb
index e00f308..af3049e 100644
--- a/lib/fog/openstack/requests/identity/get_user_by_id.rb
+++ b/lib/fog/openstack/requests/identity/get_user_by_id.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
def get_user_by_id(user_id)
request(
:expects => [200, 203],
@@ -10,7 +9,6 @@ module Fog
:path => "users/#{user_id}"
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/identity/get_user_by_name.rb b/lib/fog/openstack/requests/identity/get_user_by_name.rb
index 79085be..2b2e0c7 100644
--- a/lib/fog/openstack/requests/identity/get_user_by_name.rb
+++ b/lib/fog/openstack/requests/identity/get_user_by_name.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
def get_user_by_name(name)
request(
:expects => [200, 203],
@@ -10,11 +9,9 @@ module Fog
:path => "users?name=#{name}"
)
end
-
end
class Mock
-
def get_user_by_name(name)
response = Excon::Response.new
response.status = 200
@@ -24,7 +21,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/identity/list_ec2_credentials.rb b/lib/fog/openstack/requests/identity/list_ec2_credentials.rb
index 8cd548c..c4c9551 100644
--- a/lib/fog/openstack/requests/identity/list_ec2_credentials.rb
+++ b/lib/fog/openstack/requests/identity/list_ec2_credentials.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
##
# List EC2 credentials for a user. Requires administrator
# credentials.
diff --git a/lib/fog/openstack/requests/identity/list_endpoints_for_token.rb b/lib/fog/openstack/requests/identity/list_endpoints_for_token.rb
index 916ef10..4a89c2e 100644
--- a/lib/fog/openstack/requests/identity/list_endpoints_for_token.rb
+++ b/lib/fog/openstack/requests/identity/list_endpoints_for_token.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
def list_endpoints_for_token(token_id)
request(
:expects => [200, 203],
@@ -10,13 +9,9 @@ module Fog
:path => "tokens/#{token_id}/endpoints"
)
end
-
end
class Mock
-
-
-
end
end
end
diff --git a/lib/fog/openstack/requests/identity/list_roles.rb b/lib/fog/openstack/requests/identity/list_roles.rb
index a6595cd..a57bdf4 100644
--- a/lib/fog/openstack/requests/identity/list_roles.rb
+++ b/lib/fog/openstack/requests/identity/list_roles.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
def list_roles
request(
:expects => 200,
@@ -10,11 +9,9 @@ module Fog
:path => '/OS-KSADM/roles'
)
end
-
end
class Mock
-
def list_roles
if self.data[:roles].empty?
['admin', 'Member'].each do |name|
@@ -28,9 +25,7 @@ module Fog
:status => 200
)
end
-
end
end
end
end
-
diff --git a/lib/fog/openstack/requests/identity/list_user_global_roles.rb b/lib/fog/openstack/requests/identity/list_user_global_roles.rb
index 8c08922..07dc523 100644
--- a/lib/fog/openstack/requests/identity/list_user_global_roles.rb
+++ b/lib/fog/openstack/requests/identity/list_user_global_roles.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
def list_user_global_roles(user_id)
request(
:expects => [200],
@@ -13,9 +12,6 @@ module Fog
end
class Mock
-
-
-
end
end
end
diff --git a/lib/fog/openstack/requests/identity/list_users.rb b/lib/fog/openstack/requests/identity/list_users.rb
index ba27a97..28bb234 100644
--- a/lib/fog/openstack/requests/identity/list_users.rb
+++ b/lib/fog/openstack/requests/identity/list_users.rb
@@ -22,7 +22,6 @@ module Fog
}
end
-
Excon::Response.new(
:body => { 'users' => users },
:status => 200
diff --git a/lib/fog/openstack/requests/identity/set_tenant.rb b/lib/fog/openstack/requests/identity/set_tenant.rb
index a5aa904..896107f 100644
--- a/lib/fog/openstack/requests/identity/set_tenant.rb
+++ b/lib/fog/openstack/requests/identity/set_tenant.rb
@@ -1,7 +1,6 @@
module Fog
module Identity
class OpenStack
-
class Real
def set_tenant(tenant)
@openstack_must_reauthenticate = true
@@ -15,7 +14,6 @@ module Fog
true
end
end
-
end # class OpenStack
end # module Identity
end # module Fog
diff --git a/lib/fog/openstack/requests/identity/update_user.rb b/lib/fog/openstack/requests/identity/update_user.rb
index a1f8fba..8f72e77 100644
--- a/lib/fog/openstack/requests/identity/update_user.rb
+++ b/lib/fog/openstack/requests/identity/update_user.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
def update_user(user_id, options = {})
url = options.delete('url') || "/users/#{user_id}"
request(
@@ -12,11 +11,9 @@ module Fog
:path => url
)
end
-
end
class Mock
-
def update_user(user_id, options)
response = Excon::Response.new
if user = self.data[:users][user_id]
@@ -29,7 +26,6 @@ module Fog
raise Fog::Identity::OpenStack::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/identity/validate_token.rb b/lib/fog/openstack/requests/identity/validate_token.rb
index 4e676c2..3f06a20 100644
--- a/lib/fog/openstack/requests/identity/validate_token.rb
+++ b/lib/fog/openstack/requests/identity/validate_token.rb
@@ -2,7 +2,6 @@ module Fog
module Identity
class OpenStack
class Real
-
def validate_token(token_id, tenant_id)
request(
:expects => [200, 203],
@@ -10,13 +9,9 @@ module Fog
:path => "tokens/#{token_id}?belongsTo=#{tenant_id}"
)
end
-
end
class Mock
-
-
-
end
end
end
diff --git a/lib/fog/openstack/requests/image/create_image.rb b/lib/fog/openstack/requests/image/create_image.rb
index 8431cf2..6d36785 100644
--- a/lib/fog/openstack/requests/image/create_image.rb
+++ b/lib/fog/openstack/requests/image/create_image.rb
@@ -2,7 +2,6 @@ module Fog
module Image
class OpenStack
class Real
-
def create_image(attributes)
data = {
'Content-Type' =>'application/octet-stream',
@@ -41,11 +40,9 @@ module Fog
ensure
body.close if body.respond_to?(:close)
end
-
end
class Mock
-
def create_image(attributes)
response = Excon::Response.new
response.status = 201
diff --git a/lib/fog/openstack/requests/image/delete_image.rb b/lib/fog/openstack/requests/image/delete_image.rb
index eab8c47..8f50bd7 100644
--- a/lib/fog/openstack/requests/image/delete_image.rb
+++ b/lib/fog/openstack/requests/image/delete_image.rb
@@ -2,7 +2,6 @@ module Fog
module Image
class OpenStack
class Real
-
def delete_image(image_id)
request(
:expects => 200,
@@ -10,7 +9,6 @@ module Fog
:path => "images/#{image_id}"
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/image/list_public_images_detailed.rb b/lib/fog/openstack/requests/image/list_public_images_detailed.rb
index e165df3..5e60b10 100644
--- a/lib/fog/openstack/requests/image/list_public_images_detailed.rb
+++ b/lib/fog/openstack/requests/image/list_public_images_detailed.rb
@@ -3,7 +3,6 @@ module Fog
class OpenStack
class Real
def list_public_images_detailed(attribute=nil, query=nil)
-
if attribute
path = "images/detail?#{attribute}=#{URI::encode(query)}"
else
diff --git a/lib/fog/openstack/requests/image/set_tenant.rb b/lib/fog/openstack/requests/image/set_tenant.rb
index 81d0373..b3f85bf 100644
--- a/lib/fog/openstack/requests/image/set_tenant.rb
+++ b/lib/fog/openstack/requests/image/set_tenant.rb
@@ -1,7 +1,6 @@
module Fog
module Image
class OpenStack
-
class Real
def set_tenant(tenant)
@openstack_must_reauthenticate = true
@@ -15,7 +14,6 @@ module Fog
true
end
end
-
end # class OpenStack
end # module Compute
end # module Fog
diff --git a/lib/fog/openstack/requests/image/update_image.rb b/lib/fog/openstack/requests/image/update_image.rb
index f7d0c8d..9e8250e 100644
--- a/lib/fog/openstack/requests/image/update_image.rb
+++ b/lib/fog/openstack/requests/image/update_image.rb
@@ -2,7 +2,6 @@ module Fog
module Image
class OpenStack
class Real
-
def update_image(attributes)
data = {
'x-image-meta-name' => attributes[:name],
@@ -29,11 +28,9 @@ module Fog
:path => "images/#{attributes[:id]}"
)
end
-
end
class Mock
-
def update_image(attributes)
response = Excon::Response.new
response.status = 200
@@ -61,7 +58,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/metering/get_resource.rb b/lib/fog/openstack/requests/metering/get_resource.rb
index f398fea..52114fe 100644
--- a/lib/fog/openstack/requests/metering/get_resource.rb
+++ b/lib/fog/openstack/requests/metering/get_resource.rb
@@ -2,7 +2,6 @@ module Fog
module Metering
class OpenStack
class Real
-
def get_resource(resource_id)
request(
:expects => 200,
@@ -10,11 +9,9 @@ module Fog
:path => "resources/#{resource_id}"
)
end
-
end
class Mock
-
def get_resource(resource_id)
response = Excon::Response.new
response.status = 200
@@ -26,7 +23,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/metering/get_samples.rb b/lib/fog/openstack/requests/metering/get_samples.rb
index f6cc9d8..6b5ad07 100644
--- a/lib/fog/openstack/requests/metering/get_samples.rb
+++ b/lib/fog/openstack/requests/metering/get_samples.rb
@@ -2,9 +2,7 @@ module Fog
module Metering
class OpenStack
class Real
-
def get_samples(meter_id, options=[])
-
data = {
'q' => Array.new
}
@@ -26,11 +24,9 @@ module Fog
:path => "meters/#{meter_id}"
)
end
-
end
class Mock
-
def get_samples(meter_id)
response = Excon::Response.new
response.status = 200
@@ -49,7 +45,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/metering/get_statistics.rb b/lib/fog/openstack/requests/metering/get_statistics.rb
index c5e5650..b3593b5 100644
--- a/lib/fog/openstack/requests/metering/get_statistics.rb
+++ b/lib/fog/openstack/requests/metering/get_statistics.rb
@@ -2,9 +2,7 @@ module Fog
module Metering
class OpenStack
class Real
-
def get_statistics(meter_id, options={})
-
data = {
'period' => options['period'],
'q' => Array.new
@@ -27,11 +25,9 @@ module Fog
:path => "meters/#{meter_id}/statistics"
)
end
-
end
class Mock
-
def get_statistics(meter_id, options={})
response = Excon::Response.new
response.status = 200
@@ -50,7 +46,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/metering/list_meters.rb b/lib/fog/openstack/requests/metering/list_meters.rb
index 59ad0ff..2183b61 100644
--- a/lib/fog/openstack/requests/metering/list_meters.rb
+++ b/lib/fog/openstack/requests/metering/list_meters.rb
@@ -2,9 +2,7 @@ module Fog
module Metering
class OpenStack
class Real
-
def list_meters(options=[])
-
data = {
'q' => Array.new
}
@@ -26,11 +24,9 @@ module Fog
:path => 'meters'
)
end
-
end
class Mock
-
def list_meters(options={})
response = Excon::Response.new
response.status = 200
@@ -44,7 +40,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/metering/list_resources.rb b/lib/fog/openstack/requests/metering/list_resources.rb
index 8fdd0d8..0688add 100644
--- a/lib/fog/openstack/requests/metering/list_resources.rb
+++ b/lib/fog/openstack/requests/metering/list_resources.rb
@@ -2,7 +2,6 @@ module Fog
module Metering
class OpenStack
class Real
-
def list_resources(options = {})
request(
:expects => 200,
@@ -10,11 +9,9 @@ module Fog
:path => 'resources'
)
end
-
end
class Mock
-
def list_resources(options = {})
response = Excon::Response.new
response.status = 200
@@ -26,7 +23,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/add_router_interface.rb b/lib/fog/openstack/requests/network/add_router_interface.rb
index afa4ca6..8dfb899 100644
--- a/lib/fog/openstack/requests/network/add_router_interface.rb
+++ b/lib/fog/openstack/requests/network/add_router_interface.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def add_router_interface(router_id, subnet_id, options = {})
data = {
@@ -42,7 +41,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/associate_floating_ip.rb b/lib/fog/openstack/requests/network/associate_floating_ip.rb
index 8bd845b..e252fac 100644
--- a/lib/fog/openstack/requests/network/associate_floating_ip.rb
+++ b/lib/fog/openstack/requests/network/associate_floating_ip.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def associate_floating_ip(floating_ip_id, port_id, options = {})
data = {
@@ -43,7 +42,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/associate_lb_health_monitor.rb b/lib/fog/openstack/requests/network/associate_lb_health_monitor.rb
index b5aaad2..b43c36a 100644
--- a/lib/fog/openstack/requests/network/associate_lb_health_monitor.rb
+++ b/lib/fog/openstack/requests/network/associate_lb_health_monitor.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def associate_lb_health_monitor(pool_id, health_monitor_id)
data = {
@@ -22,7 +21,7 @@ module Fog
class Mock
def associate_lb_health_monitor(pool_id, health_monitor_id)
response = Excon::Response.new
- if pool = list_lb_pools.body['pools'].detect { |_| _['id'] == pool_id }
+ if pool = list_lb_pools.body['pools'].find { |_| _['id'] == pool_id }
pool['health_monitors'] << health_monitor_id
self.data[:lb_pools][pool_id] = pool
response.body = { 'health_monitor' => {} }
@@ -33,7 +32,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/create_floating_ip.rb b/lib/fog/openstack/requests/network/create_floating_ip.rb
index ea9df1f..923cc0c 100644
--- a/lib/fog/openstack/requests/network/create_floating_ip.rb
+++ b/lib/fog/openstack/requests/network/create_floating_ip.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def create_floating_ip(floating_network_id, options = {})
data = {
@@ -41,7 +40,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/create_lb_health_monitor.rb b/lib/fog/openstack/requests/network/create_lb_health_monitor.rb
index a76a8de..9b08bdd 100644
--- a/lib/fog/openstack/requests/network/create_lb_health_monitor.rb
+++ b/lib/fog/openstack/requests/network/create_lb_health_monitor.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def create_lb_health_monitor(type, delay, timeout, max_retries, options = {})
data = {
@@ -50,7 +49,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/create_lb_member.rb b/lib/fog/openstack/requests/network/create_lb_member.rb
index 1f24d39..85ef83c 100644
--- a/lib/fog/openstack/requests/network/create_lb_member.rb
+++ b/lib/fog/openstack/requests/network/create_lb_member.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def create_lb_member(pool_id, address, protocol_port, weight, options = {})
data = {
@@ -47,7 +46,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/create_lb_pool.rb b/lib/fog/openstack/requests/network/create_lb_pool.rb
index f62fbf5..31d6999 100644
--- a/lib/fog/openstack/requests/network/create_lb_pool.rb
+++ b/lib/fog/openstack/requests/network/create_lb_pool.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def create_lb_pool(subnet_id, protocol, lb_method, options = {})
data = {
@@ -54,7 +53,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/create_lb_vip.rb b/lib/fog/openstack/requests/network/create_lb_vip.rb
index 700c06c..297946d 100644
--- a/lib/fog/openstack/requests/network/create_lb_vip.rb
+++ b/lib/fog/openstack/requests/network/create_lb_vip.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def create_lb_vip(subnet_id, pool_id, protocol, protocol_port, options = {})
data = {
@@ -54,7 +53,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/create_network.rb b/lib/fog/openstack/requests/network/create_network.rb
index bbbbfb2..3b26047 100644
--- a/lib/fog/openstack/requests/network/create_network.rb
+++ b/lib/fog/openstack/requests/network/create_network.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def create_network(options = {})
data = { 'network' => {} }
@@ -93,7 +92,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/create_port.rb b/lib/fog/openstack/requests/network/create_port.rb
index 9741f9c..e8006df 100644
--- a/lib/fog/openstack/requests/network/create_port.rb
+++ b/lib/fog/openstack/requests/network/create_port.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def create_port(network_id, options = {})
data = {
@@ -46,7 +45,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/create_router.rb b/lib/fog/openstack/requests/network/create_router.rb
index 273212e..a5de38a 100644
--- a/lib/fog/openstack/requests/network/create_router.rb
+++ b/lib/fog/openstack/requests/network/create_router.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def create_router(name, options = {})
data = {
@@ -72,7 +71,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/create_subnet.rb b/lib/fog/openstack/requests/network/create_subnet.rb
index ed05ae3..10187d9 100644
--- a/lib/fog/openstack/requests/network/create_subnet.rb
+++ b/lib/fog/openstack/requests/network/create_subnet.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def create_subnet(network_id, cidr, ip_version, options = {})
data = {
@@ -50,7 +49,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/delete_floating_ip.rb b/lib/fog/openstack/requests/network/delete_floating_ip.rb
index 42c1a41..b3442fe 100644
--- a/lib/fog/openstack/requests/network/delete_floating_ip.rb
+++ b/lib/fog/openstack/requests/network/delete_floating_ip.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def delete_floating_ip(floating_ip_id)
request(
@@ -24,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/delete_lb_health_monitor.rb b/lib/fog/openstack/requests/network/delete_lb_health_monitor.rb
index 26031c1..aeeddcc 100644
--- a/lib/fog/openstack/requests/network/delete_lb_health_monitor.rb
+++ b/lib/fog/openstack/requests/network/delete_lb_health_monitor.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def delete_lb_health_monitor(health_monitor_id)
request(
@@ -24,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/delete_lb_member.rb b/lib/fog/openstack/requests/network/delete_lb_member.rb
index 15daea0..5de460d 100644
--- a/lib/fog/openstack/requests/network/delete_lb_member.rb
+++ b/lib/fog/openstack/requests/network/delete_lb_member.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def delete_lb_member(member_id)
request(
@@ -24,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/delete_lb_pool.rb b/lib/fog/openstack/requests/network/delete_lb_pool.rb
index 0db85da..835b910 100644
--- a/lib/fog/openstack/requests/network/delete_lb_pool.rb
+++ b/lib/fog/openstack/requests/network/delete_lb_pool.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def delete_lb_pool(pool_id)
request(
@@ -24,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/delete_lb_vip.rb b/lib/fog/openstack/requests/network/delete_lb_vip.rb
index 42ec3e8..9ba1b15 100644
--- a/lib/fog/openstack/requests/network/delete_lb_vip.rb
+++ b/lib/fog/openstack/requests/network/delete_lb_vip.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def delete_lb_vip(vip_id)
request(
@@ -24,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/delete_network.rb b/lib/fog/openstack/requests/network/delete_network.rb
index 65edd1e..0580cd3 100644
--- a/lib/fog/openstack/requests/network/delete_network.rb
+++ b/lib/fog/openstack/requests/network/delete_network.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def delete_network(network_id)
request(
@@ -24,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/delete_port.rb b/lib/fog/openstack/requests/network/delete_port.rb
index f89a925..387c706 100644
--- a/lib/fog/openstack/requests/network/delete_port.rb
+++ b/lib/fog/openstack/requests/network/delete_port.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def delete_port(port_id)
request(
@@ -24,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/delete_quota.rb b/lib/fog/openstack/requests/network/delete_quota.rb
index 42fe7cf..90a670a 100644
--- a/lib/fog/openstack/requests/network/delete_quota.rb
+++ b/lib/fog/openstack/requests/network/delete_quota.rb
@@ -2,7 +2,6 @@ module Fog
module Network
class OpenStack
class Real
-
def delete_quota(tenant_id)
request(
:expects => 204,
@@ -10,7 +9,6 @@ module Fog
:path => "/quotas/#{tenant_id}"
)
end
-
end
class Mock
@@ -20,7 +18,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/delete_router.rb b/lib/fog/openstack/requests/network/delete_router.rb
index 5d8eabf..130bdb9 100644
--- a/lib/fog/openstack/requests/network/delete_router.rb
+++ b/lib/fog/openstack/requests/network/delete_router.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def delete_router(router_id)
request(
@@ -24,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/delete_security_group_rule.rb b/lib/fog/openstack/requests/network/delete_security_group_rule.rb
index 2b0b024..388ae1b 100644
--- a/lib/fog/openstack/requests/network/delete_security_group_rule.rb
+++ b/lib/fog/openstack/requests/network/delete_security_group_rule.rb
@@ -2,7 +2,6 @@ module Fog
module Network
class OpenStack
class Real
-
# Delete a security group rule
#
# ==== Parameters
@@ -14,11 +13,9 @@ module Fog
:path => "security-group-rules/#{security_group_rule_id}"
)
end
-
end
class Mock
-
def delete_security_group_rule(security_group_rule_id)
response = Excon::Response.new
if self.data[:security_group_rules][security_group_rule_id]
@@ -29,7 +26,6 @@ module Fog
raise Fog::Network::OpenStack::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/delete_subnet.rb b/lib/fog/openstack/requests/network/delete_subnet.rb
index ba52aab..100c768 100644
--- a/lib/fog/openstack/requests/network/delete_subnet.rb
+++ b/lib/fog/openstack/requests/network/delete_subnet.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def delete_subnet(subnet_id)
request(
@@ -24,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/disassociate_floating_ip.rb b/lib/fog/openstack/requests/network/disassociate_floating_ip.rb
index a27576e..27ecfbc 100644
--- a/lib/fog/openstack/requests/network/disassociate_floating_ip.rb
+++ b/lib/fog/openstack/requests/network/disassociate_floating_ip.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def disassociate_floating_ip(floating_ip_id, options = {})
data = {
@@ -43,7 +42,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/disassociate_lb_health_monitor.rb b/lib/fog/openstack/requests/network/disassociate_lb_health_monitor.rb
index 8167a80..eab4a32 100644
--- a/lib/fog/openstack/requests/network/disassociate_lb_health_monitor.rb
+++ b/lib/fog/openstack/requests/network/disassociate_lb_health_monitor.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def disassociate_lb_health_monitor(pool_id, health_monitor_id)
request(
@@ -15,7 +14,7 @@ module Fog
class Mock
def disassociate_lb_health_monitor(pool_id, health_monitor_id)
response = Excon::Response.new
- if pool = list_lb_pools.body['pools'].detect { |_| _['id'] == pool_id }
+ if pool = list_lb_pools.body['pools'].find { |_| _['id'] == pool_id }
pool['health_monitors'].delete(health_monitor_id)
self.data[:lb_pools][pool_id] = pool
response.status = 204
@@ -25,7 +24,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/get_floating_ip.rb b/lib/fog/openstack/requests/network/get_floating_ip.rb
index 2bcb7ec..2ec9255 100644
--- a/lib/fog/openstack/requests/network/get_floating_ip.rb
+++ b/lib/fog/openstack/requests/network/get_floating_ip.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def get_floating_ip(floating_ip_id)
request(
@@ -35,8 +34,6 @@ module Fog
end
end
end
-
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/get_lb_health_monitor.rb b/lib/fog/openstack/requests/network/get_lb_health_monitor.rb
index 6dee9bf..18d2a3a 100644
--- a/lib/fog/openstack/requests/network/get_lb_health_monitor.rb
+++ b/lib/fog/openstack/requests/network/get_lb_health_monitor.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def get_lb_health_monitor(health_monitor_id)
request(
@@ -24,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/get_lb_member.rb b/lib/fog/openstack/requests/network/get_lb_member.rb
index 4e686aa..ab2351c 100644
--- a/lib/fog/openstack/requests/network/get_lb_member.rb
+++ b/lib/fog/openstack/requests/network/get_lb_member.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def get_lb_member(member_id)
request(
@@ -24,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/get_lb_pool.rb b/lib/fog/openstack/requests/network/get_lb_pool.rb
index 45e5c9b..051a807 100644
--- a/lib/fog/openstack/requests/network/get_lb_pool.rb
+++ b/lib/fog/openstack/requests/network/get_lb_pool.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def get_lb_pool(pool_id)
request(
@@ -24,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/get_lb_pool_stats.rb b/lib/fog/openstack/requests/network/get_lb_pool_stats.rb
index f360b48..35fdf4f 100644
--- a/lib/fog/openstack/requests/network/get_lb_pool_stats.rb
+++ b/lib/fog/openstack/requests/network/get_lb_pool_stats.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def get_lb_pool_stats(pool_id)
request(
@@ -29,7 +28,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/get_lb_vip.rb b/lib/fog/openstack/requests/network/get_lb_vip.rb
index 0d68ad1..63c145c 100644
--- a/lib/fog/openstack/requests/network/get_lb_vip.rb
+++ b/lib/fog/openstack/requests/network/get_lb_vip.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def get_lb_vip(vip_id)
request(
@@ -24,7 +23,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/get_network.rb b/lib/fog/openstack/requests/network/get_network.rb
index eebbc2a..23d3fc6 100644
--- a/lib/fog/openstack/requests/network/get_network.rb
+++ b/lib/fog/openstack/requests/network/get_network.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def get_network(network_id)
request(
@@ -36,7 +35,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/get_port.rb b/lib/fog/openstack/requests/network/get_port.rb
index 0a06def..b01c337 100644
--- a/lib/fog/openstack/requests/network/get_port.rb
+++ b/lib/fog/openstack/requests/network/get_port.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def get_port(port_id)
request(
@@ -42,7 +41,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/get_quota.rb b/lib/fog/openstack/requests/network/get_quota.rb
index 3b0c789..ce0bf69 100644
--- a/lib/fog/openstack/requests/network/get_quota.rb
+++ b/lib/fog/openstack/requests/network/get_quota.rb
@@ -2,7 +2,6 @@ module Fog
module Network
class OpenStack
class Real
-
def get_quota(tenant_id)
request(
:expects => 200,
@@ -10,11 +9,9 @@ module Fog
:path => "/quotas/#{tenant_id}"
)
end
-
end
class Mock
-
def get_quota(tenant_id)
response = Excon::Response.new
response.status = 200
@@ -23,9 +20,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/get_quotas.rb b/lib/fog/openstack/requests/network/get_quotas.rb
index 93783c6..563cb5b 100644
--- a/lib/fog/openstack/requests/network/get_quotas.rb
+++ b/lib/fog/openstack/requests/network/get_quotas.rb
@@ -2,7 +2,6 @@ module Fog
module Network
class OpenStack
class Real
-
def get_quotas
request(
:expects => 200,
@@ -10,11 +9,9 @@ module Fog
:path => "/quotas"
)
end
-
end
class Mock
-
def get_quotas
response = Excon::Response.new
response.status = 200
@@ -23,9 +20,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/get_router.rb b/lib/fog/openstack/requests/network/get_router.rb
index b512606..bac1bb3 100644
--- a/lib/fog/openstack/requests/network/get_router.rb
+++ b/lib/fog/openstack/requests/network/get_router.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def get_router(router_id)
request(
@@ -26,7 +25,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/get_subnet.rb b/lib/fog/openstack/requests/network/get_subnet.rb
index f1ba330..9feac3c 100644
--- a/lib/fog/openstack/requests/network/get_subnet.rb
+++ b/lib/fog/openstack/requests/network/get_subnet.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def get_subnet(subnet_id)
request(
@@ -43,7 +42,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/list_floating_ips.rb b/lib/fog/openstack/requests/network/list_floating_ips.rb
index b148441..725bde7 100644
--- a/lib/fog/openstack/requests/network/list_floating_ips.rb
+++ b/lib/fog/openstack/requests/network/list_floating_ips.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def list_floating_ips(filters = {})
request(
@@ -21,7 +20,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/list_lb_health_monitors.rb b/lib/fog/openstack/requests/network/list_lb_health_monitors.rb
index 6dabfcf..d5dedae 100644
--- a/lib/fog/openstack/requests/network/list_lb_health_monitors.rb
+++ b/lib/fog/openstack/requests/network/list_lb_health_monitors.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def list_lb_health_monitors(filters = {})
request(
@@ -21,7 +20,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/list_lb_members.rb b/lib/fog/openstack/requests/network/list_lb_members.rb
index a1d3399..11736bb 100644
--- a/lib/fog/openstack/requests/network/list_lb_members.rb
+++ b/lib/fog/openstack/requests/network/list_lb_members.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def list_lb_members(filters = {})
request(
@@ -21,7 +20,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/list_lb_pools.rb b/lib/fog/openstack/requests/network/list_lb_pools.rb
index 4aabc5b..6b4297c 100644
--- a/lib/fog/openstack/requests/network/list_lb_pools.rb
+++ b/lib/fog/openstack/requests/network/list_lb_pools.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def list_lb_pools(filters = {})
request(
@@ -21,7 +20,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/list_lb_vips.rb b/lib/fog/openstack/requests/network/list_lb_vips.rb
index d9ae0de..684e9fe 100644
--- a/lib/fog/openstack/requests/network/list_lb_vips.rb
+++ b/lib/fog/openstack/requests/network/list_lb_vips.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def list_lb_vips(filters = {})
request(
@@ -21,7 +20,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/list_networks.rb b/lib/fog/openstack/requests/network/list_networks.rb
index d90be27..36cc9c1 100644
--- a/lib/fog/openstack/requests/network/list_networks.rb
+++ b/lib/fog/openstack/requests/network/list_networks.rb
@@ -20,7 +20,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/list_ports.rb b/lib/fog/openstack/requests/network/list_ports.rb
index e137f7c..e97aee2 100644
--- a/lib/fog/openstack/requests/network/list_ports.rb
+++ b/lib/fog/openstack/requests/network/list_ports.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def list_ports(filters = {})
request(
@@ -21,7 +20,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/list_routers.rb b/lib/fog/openstack/requests/network/list_routers.rb
index 3f692c3..83703e5 100644
--- a/lib/fog/openstack/requests/network/list_routers.rb
+++ b/lib/fog/openstack/requests/network/list_routers.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def list_routers(filters = {})
request(
@@ -21,7 +20,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/list_security_group_rules.rb b/lib/fog/openstack/requests/network/list_security_group_rules.rb
index 4af07fd..14af546 100644
--- a/lib/fog/openstack/requests/network/list_security_group_rules.rb
+++ b/lib/fog/openstack/requests/network/list_security_group_rules.rb
@@ -2,7 +2,6 @@ module Fog
module Network
class OpenStack
class Real
-
# List all security group rules
#
# ==== Parameters
@@ -30,11 +29,9 @@ module Fog
:query => options
)
end
-
end
class Mock
-
def list_security_group_rules(options = {})
response = Excon::Response.new
@@ -45,7 +42,6 @@ module Fog
response.body = { 'security_group_rules' => sec_group_rules }
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/list_security_groups.rb b/lib/fog/openstack/requests/network/list_security_groups.rb
index b0bbd2c..0b481fd 100644
--- a/lib/fog/openstack/requests/network/list_security_groups.rb
+++ b/lib/fog/openstack/requests/network/list_security_groups.rb
@@ -2,7 +2,6 @@ module Fog
module Network
class OpenStack
class Real
-
# List all security groups
#
# ==== Parameters
@@ -35,11 +34,9 @@ module Fog
:query => options
)
end
-
end
class Mock
-
def list_security_groups(options = {})
response = Excon::Response.new
@@ -50,7 +47,6 @@ module Fog
response.body = { 'security_groups' => sec_groups }
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/list_subnets.rb b/lib/fog/openstack/requests/network/list_subnets.rb
index 111a693..c1841b0 100644
--- a/lib/fog/openstack/requests/network/list_subnets.rb
+++ b/lib/fog/openstack/requests/network/list_subnets.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def list_subnets(filters = {})
request(
@@ -21,7 +20,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/remove_router_interface.rb b/lib/fog/openstack/requests/network/remove_router_interface.rb
index c822ab1..07dd235 100644
--- a/lib/fog/openstack/requests/network/remove_router_interface.rb
+++ b/lib/fog/openstack/requests/network/remove_router_interface.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def remove_router_interface(router_id, subnet_id, options = {})
data = {
@@ -30,7 +29,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/set_tenant.rb b/lib/fog/openstack/requests/network/set_tenant.rb
index 022535e..2826954 100644
--- a/lib/fog/openstack/requests/network/set_tenant.rb
+++ b/lib/fog/openstack/requests/network/set_tenant.rb
@@ -1,7 +1,6 @@
module Fog
module Network
class OpenStack
-
class Real
def set_tenant(tenant)
@openstack_must_reauthenticate = true
@@ -15,7 +14,6 @@ module Fog
true
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/update_lb_health_monitor.rb b/lib/fog/openstack/requests/network/update_lb_health_monitor.rb
index fdea257..f4a339f 100644
--- a/lib/fog/openstack/requests/network/update_lb_health_monitor.rb
+++ b/lib/fog/openstack/requests/network/update_lb_health_monitor.rb
@@ -1,13 +1,12 @@
module Fog
module Network
class OpenStack
-
class Real
def update_lb_health_monitor(health_monitor_id, options = {})
data = { 'health_monitor' => {} }
vanilla_options = [:delay, :timeout, :max_retries, :http_method, :url_path, :expected_codes, :admin_state_up]
- vanilla_options.select{ |o| options.has_key?(o) }.each do |key|
+ vanilla_options.select{ |o| options.key?(o) }.each do |key|
data['health_monitor'][key] = options[key]
end
@@ -23,7 +22,7 @@ module Fog
class Mock
def update_lb_health_monitor(health_monitor_id, options = {})
response = Excon::Response.new
- if health_monitor = list_lb_health_monitors.body['health_monitors'].detect { |_| _['id'] == health_monitor_id }
+ if health_monitor = list_lb_health_monitors.body['health_monitors'].find { |_| _['id'] == health_monitor_id }
health_monitor['delay'] = options[:delay]
health_monitor['timeout'] = options[:timeout]
health_monitor['max_retries'] = options[:max_retries]
@@ -39,7 +38,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/update_lb_member.rb b/lib/fog/openstack/requests/network/update_lb_member.rb
index 24d1d85..ee9ec69 100644
--- a/lib/fog/openstack/requests/network/update_lb_member.rb
+++ b/lib/fog/openstack/requests/network/update_lb_member.rb
@@ -1,13 +1,12 @@
module Fog
module Network
class OpenStack
-
class Real
def update_lb_member(member_id, options = {})
data = { 'member' => {} }
vanilla_options = [:pool_id, :weight, :admin_state_up]
- vanilla_options.select{ |o| options.has_key?(o) }.each do |key|
+ vanilla_options.select{ |o| options.key?(o) }.each do |key|
data['member'][key] = options[key]
end
@@ -23,7 +22,7 @@ module Fog
class Mock
def update_lb_member(member_id, options = {})
response = Excon::Response.new
- if member = list_lb_members.body['members'].detect { |_| _['id'] == member_id }
+ if member = list_lb_members.body['members'].find { |_| _['id'] == member_id }
member['pool_id'] = options[:pool_id]
member['weight'] = options[:weight]
member['admin_state_up'] = options[:admin_state_up]
@@ -35,7 +34,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/update_lb_pool.rb b/lib/fog/openstack/requests/network/update_lb_pool.rb
index 86298ac..7e9c9b3 100644
--- a/lib/fog/openstack/requests/network/update_lb_pool.rb
+++ b/lib/fog/openstack/requests/network/update_lb_pool.rb
@@ -1,13 +1,12 @@
module Fog
module Network
class OpenStack
-
class Real
def update_lb_pool(pool_id, options = {})
data = { 'pool' => {} }
vanilla_options = [:name, :description, :lb_method, :admin_state_up]
- vanilla_options.select{ |o| options.has_key?(o) }.each do |key|
+ vanilla_options.select{ |o| options.key?(o) }.each do |key|
data['pool'][key] = options[key]
end
@@ -23,7 +22,7 @@ module Fog
class Mock
def update_lb_pool(pool_id, options = {})
response = Excon::Response.new
- if pool = list_lb_pools.body['pools'].detect { |_| _['id'] == pool_id }
+ if pool = list_lb_pools.body['pools'].find { |_| _['id'] == pool_id }
pool['name'] = options[:name]
pool['description'] = options[:description]
pool['lb_method'] = options[:lb_method]
@@ -36,7 +35,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/update_lb_vip.rb b/lib/fog/openstack/requests/network/update_lb_vip.rb
index 1eb02a7..5828372 100644
--- a/lib/fog/openstack/requests/network/update_lb_vip.rb
+++ b/lib/fog/openstack/requests/network/update_lb_vip.rb
@@ -1,13 +1,12 @@
module Fog
module Network
class OpenStack
-
class Real
def update_lb_vip(vip_id, options = {})
data = { 'vip' => {} }
vanilla_options = [:pool_id, :name, :description, :session_persistence, :connection_limit, :admin_state_up]
- vanilla_options.select{ |o| options.has_key?(o) }.each do |key|
+ vanilla_options.select{ |o| options.key?(o) }.each do |key|
data['vip'][key] = options[key]
end
@@ -23,7 +22,7 @@ module Fog
class Mock
def update_lb_vip(vip_id, options = {})
response = Excon::Response.new
- if vip = list_lb_vips.body['vips'].detect { |_| _['id'] == vip_id }
+ if vip = list_lb_vips.body['vips'].find { |_| _['id'] == vip_id }
vip['pool_id'] = options[:pool_id]
vip['name'] = options[:name]
vip['description'] = options[:description]
@@ -38,7 +37,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/update_network.rb b/lib/fog/openstack/requests/network/update_network.rb
index 959348e..4a955e6 100644
--- a/lib/fog/openstack/requests/network/update_network.rb
+++ b/lib/fog/openstack/requests/network/update_network.rb
@@ -1,13 +1,12 @@
module Fog
module Network
class OpenStack
-
class Real
def update_network(network_id, options = {})
data = { 'network' => {} }
vanilla_options = [:name, :shared, :admin_state_up]
- vanilla_options.select{ |o| options.has_key?(o) }.each do |key|
+ vanilla_options.select{ |o| options.key?(o) }.each do |key|
data['network'][key] = options[key]
end
@@ -23,7 +22,7 @@ module Fog
class Mock
def update_network(network_id, options = {})
response = Excon::Response.new
- if network = list_networks.body['networks'].detect { |_| _['id'] == network_id }
+ if network = list_networks.body['networks'].find { |_| _['id'] == network_id }
network['name'] = options[:name]
network['shared'] = options[:shared]
network['admin_state_up'] = options[:admin_state_up]
@@ -35,7 +34,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/update_port.rb b/lib/fog/openstack/requests/network/update_port.rb
index a8de157..1301023 100644
--- a/lib/fog/openstack/requests/network/update_port.rb
+++ b/lib/fog/openstack/requests/network/update_port.rb
@@ -1,14 +1,13 @@
module Fog
module Network
class OpenStack
-
class Real
def update_port(port_id, options = {})
data = { 'port' => {} }
vanilla_options = [:name, :fixed_ips, :admin_state_up, :device_owner,
:device_id]
- vanilla_options.select{ |o| options.has_key?(o) }.each do |key|
+ vanilla_options.select{ |o| options.key?(o) }.each do |key|
data['port'][key] = options[key]
end
@@ -24,7 +23,7 @@ module Fog
class Mock
def update_port(port_id, options = {})
response = Excon::Response.new
- if port = list_ports.body['ports'].detect { |_| _['id'] == port_id }
+ if port = list_ports.body['ports'].find { |_| _['id'] == port_id }
port['name'] = options[:name]
port['fixed_ips'] = options[:fixed_ips]
port['admin_state_up'] = options[:admin_state_up]
@@ -38,7 +37,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/update_quota.rb b/lib/fog/openstack/requests/network/update_quota.rb
index f43d8c3..1c40c14 100644
--- a/lib/fog/openstack/requests/network/update_quota.rb
+++ b/lib/fog/openstack/requests/network/update_quota.rb
@@ -2,7 +2,6 @@ module Fog
module Network
class OpenStack
class Real
-
def update_quota(tenant_id, options = {})
request(
:body => Fog::JSON.encode({ 'quota' => options} ),
@@ -11,11 +10,9 @@ module Fog
:path => "/quotas/#{tenant_id}"
)
end
-
end
class Mock
-
def update_quota(tenant_id, options = {})
self.data[:quota_updated] = self.data[:quota].merge options
@@ -24,10 +21,7 @@ module Fog
response.body = { 'quota' => self.data[:quota_updated] }
response
end
-
end
-
end
end
end
-
diff --git a/lib/fog/openstack/requests/network/update_router.rb b/lib/fog/openstack/requests/network/update_router.rb
index b1e320e..61ad014 100644
--- a/lib/fog/openstack/requests/network/update_router.rb
+++ b/lib/fog/openstack/requests/network/update_router.rb
@@ -1,9 +1,7 @@
module Fog
module Network
class OpenStack
-
class Real
-
# Update Router
#
# Beyond the name and the administrative state, the only
@@ -66,7 +64,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/network/update_subnet.rb b/lib/fog/openstack/requests/network/update_subnet.rb
index 6e3597b..34a7651 100644
--- a/lib/fog/openstack/requests/network/update_subnet.rb
+++ b/lib/fog/openstack/requests/network/update_subnet.rb
@@ -1,14 +1,13 @@
module Fog
module Network
class OpenStack
-
class Real
def update_subnet(subnet_id, options = {})
data = { 'subnet' => {} }
vanilla_options = [:name, :gateway_ip, :dns_nameservers,
:host_routes, :enable_dhcp]
- vanilla_options.select{ |o| options.has_key?(o) }.each do |key|
+ vanilla_options.select{ |o| options.key?(o) }.each do |key|
data['subnet'][key] = options[key]
end
@@ -24,7 +23,7 @@ module Fog
class Mock
def update_subnet(subnet_id, options = {})
response = Excon::Response.new
- if subnet = list_subnets.body['subnets'].detect { |_| _['id'] == subnet_id }
+ if subnet = list_subnets.body['subnets'].find { |_| _['id'] == subnet_id }
subnet['name'] = options[:name]
subnet['gateway_ip'] = options[:gateway_ip]
subnet['dns_nameservers'] = options[:dns_nameservers]
@@ -38,7 +37,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/orchestration/create_stack.rb b/lib/fog/openstack/requests/orchestration/create_stack.rb
index ade6905..40ac5d5 100644
--- a/lib/fog/openstack/requests/orchestration/create_stack.rb
+++ b/lib/fog/openstack/requests/orchestration/create_stack.rb
@@ -2,7 +2,6 @@ module Fog
module Orchestration
class OpenStack
class Real
-
# Create a stack.
#
# * stack_name [String] Name of the stack to create.
@@ -28,7 +27,6 @@ module Fog
:body => Fog::JSON.encode(params)
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/orchestration/delete_stack.rb b/lib/fog/openstack/requests/orchestration/delete_stack.rb
index 6b14cb4..bc35213 100644
--- a/lib/fog/openstack/requests/orchestration/delete_stack.rb
+++ b/lib/fog/openstack/requests/orchestration/delete_stack.rb
@@ -2,7 +2,6 @@ module Fog
module Orchestration
class OpenStack
class Real
-
# Delete a stack.
#
# @param stack_name [String] Name of the stack to delete.
@@ -19,7 +18,6 @@ module Fog
:method => 'DELETE'
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/orchestration/list_stacks.rb b/lib/fog/openstack/requests/orchestration/list_stacks.rb
index eee9056..cc0c64c 100644
--- a/lib/fog/openstack/requests/orchestration/list_stacks.rb
+++ b/lib/fog/openstack/requests/orchestration/list_stacks.rb
@@ -2,7 +2,6 @@ module Fog
module Orchestration
class OpenStack
class Real
-
# List stacks.
#
# @param options [Hash]
@@ -31,7 +30,6 @@ module Fog
:query => options
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/orchestration/update_stack.rb b/lib/fog/openstack/requests/orchestration/update_stack.rb
index f54892b..c75fa0f 100644
--- a/lib/fog/openstack/requests/orchestration/update_stack.rb
+++ b/lib/fog/openstack/requests/orchestration/update_stack.rb
@@ -2,7 +2,6 @@ module Fog
module Orchestration
class OpenStack
class Real
-
# Update a stack.
#
# @param [String] stack_id ID of the stack to update.
@@ -25,7 +24,6 @@ module Fog
:body => Fog::JSON.encode(params)
)
end
-
end
class Mock
diff --git a/lib/fog/openstack/requests/storage/copy_object.rb b/lib/fog/openstack/requests/storage/copy_object.rb
index 1a9de89..d9d3783 100644
--- a/lib/fog/openstack/requests/storage/copy_object.rb
+++ b/lib/fog/openstack/requests/storage/copy_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class OpenStack
class Real
-
# Copy object
#
# ==== Parameters
@@ -20,7 +19,6 @@ module Fog
:path => "#{Fog::OpenStack.escape(target_container_name)}/#{Fog::OpenStack.escape(target_object_name)}"
})
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/delete_container.rb b/lib/fog/openstack/requests/storage/delete_container.rb
index 9cc0831..54b53e0 100644
--- a/lib/fog/openstack/requests/storage/delete_container.rb
+++ b/lib/fog/openstack/requests/storage/delete_container.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class OpenStack
class Real
-
# Delete an existing container
#
# ==== Parameters
@@ -15,7 +14,6 @@ module Fog
:path => Fog::OpenStack.escape(name)
)
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/delete_multiple_objects.rb b/lib/fog/openstack/requests/storage/delete_multiple_objects.rb
index c623419..04b73a5 100644
--- a/lib/fog/openstack/requests/storage/delete_multiple_objects.rb
+++ b/lib/fog/openstack/requests/storage/delete_multiple_objects.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class OpenStack
class Real
-
# Deletes multiple objects or containers with a single request.
#
# To delete objects from a single container, +container+ may be provided
@@ -60,7 +59,6 @@ module Fog
response.body = Fog::JSON.decode(response.body)
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/delete_object.rb b/lib/fog/openstack/requests/storage/delete_object.rb
index 27a24fd..1f1a63f 100644
--- a/lib/fog/openstack/requests/storage/delete_object.rb
+++ b/lib/fog/openstack/requests/storage/delete_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class OpenStack
class Real
-
# Delete an existing object
#
# ==== Parameters
@@ -16,7 +15,6 @@ module Fog
:path => "#{Fog::OpenStack.escape(container)}/#{Fog::OpenStack.escape(object)}"
)
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/delete_static_large_object.rb b/lib/fog/openstack/requests/storage/delete_static_large_object.rb
index 82600f0..feb15d4 100644
--- a/lib/fog/openstack/requests/storage/delete_static_large_object.rb
+++ b/lib/fog/openstack/requests/storage/delete_static_large_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class OpenStack
class Real
-
# Delete a static large object.
#
# Deletes the SLO manifest +object+ and all segments that it references.
@@ -36,7 +35,6 @@ module Fog
response.body = Fog::JSON.decode(response.body)
response
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/get_container.rb b/lib/fog/openstack/requests/storage/get_container.rb
index 0b1a42b..9ee764e 100644
--- a/lib/fog/openstack/requests/storage/get_container.rb
+++ b/lib/fog/openstack/requests/storage/get_container.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class OpenStack
class Real
-
# Get details for container and total bytes stored
#
# ==== Parameters
@@ -37,7 +36,6 @@ module Fog
:query => {'format' => 'json'}.merge!(options)
)
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/get_containers.rb b/lib/fog/openstack/requests/storage/get_containers.rb
index f2a7ce2..b030b36 100644
--- a/lib/fog/openstack/requests/storage/get_containers.rb
+++ b/lib/fog/openstack/requests/storage/get_containers.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class OpenStack
class Real
-
# List existing storage containers
#
# ==== Parameters
@@ -26,7 +25,6 @@ module Fog
:query => {'format' => 'json'}.merge!(options)
)
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/get_object.rb b/lib/fog/openstack/requests/storage/get_object.rb
index 4515103..85281c5 100644
--- a/lib/fog/openstack/requests/storage/get_object.rb
+++ b/lib/fog/openstack/requests/storage/get_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class OpenStack
class Real
-
# Get details for object
#
# ==== Parameters
@@ -22,7 +21,6 @@ module Fog
request(params, false)
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/get_object_https_url.rb b/lib/fog/openstack/requests/storage/get_object_https_url.rb
index ca439ec..999b2ae 100644
--- a/lib/fog/openstack/requests/storage/get_object_https_url.rb
+++ b/lib/fog/openstack/requests/storage/get_object_https_url.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class OpenStack
-
class Real
-
# Get an expiring object https url from Cloud Files
#
# ==== Parameters
@@ -46,7 +44,6 @@ module Fog
raise ArgumentError.new("Invalid method '#{method}' specified. Valid methods are: #{allowed_methods.join(', ')}")
end
-
expires = expires.to_i
object_path_escaped = "#{@path}/#{Fog::OpenStack.escape(container)}/#{Fog::OpenStack.escape(object,"/")}"
object_path_unescaped = "#{@path}/#{Fog::OpenStack.escape(container)}/#{object}"
@@ -77,9 +74,7 @@ module Fog
h.size == 1 ? "0#{h}" : h
}.join
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/head_container.rb b/lib/fog/openstack/requests/storage/head_container.rb
index 83e4bdc..f7cdd0a 100644
--- a/lib/fog/openstack/requests/storage/head_container.rb
+++ b/lib/fog/openstack/requests/storage/head_container.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class OpenStack
class Real
-
# List number of objects and total bytes stored
#
# ==== Parameters
@@ -21,7 +20,6 @@ module Fog
:query => {'format' => 'json'}
)
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/head_containers.rb b/lib/fog/openstack/requests/storage/head_containers.rb
index 74cc4ea..49d986b 100644
--- a/lib/fog/openstack/requests/storage/head_containers.rb
+++ b/lib/fog/openstack/requests/storage/head_containers.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class OpenStack
class Real
-
# List number of containers and total bytes stored
#
# ==== Returns
@@ -18,7 +17,6 @@ module Fog
:query => {'format' => 'json'}
)
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/head_object.rb b/lib/fog/openstack/requests/storage/head_object.rb
index 35396b1..72b84b6 100644
--- a/lib/fog/openstack/requests/storage/head_object.rb
+++ b/lib/fog/openstack/requests/storage/head_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class OpenStack
class Real
-
# Get headers for object
#
# ==== Parameters
@@ -16,7 +15,6 @@ module Fog
:path => "#{Fog::OpenStack.escape(container)}/#{Fog::OpenStack.escape(object)}"
}, false)
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/post_set_meta_temp_url_key.rb b/lib/fog/openstack/requests/storage/post_set_meta_temp_url_key.rb
index c68475f..efc0bd9 100644
--- a/lib/fog/openstack/requests/storage/post_set_meta_temp_url_key.rb
+++ b/lib/fog/openstack/requests/storage/post_set_meta_temp_url_key.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class OpenStack
-
class Real
-
# Set the account wide Temp URL Key. This is a secret key that's
# used to generate signed expiring URLs.
#
@@ -29,9 +27,7 @@ module Fog
:headers => {'X-Account-Meta-Temp-Url-Key' => key}
)
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/put_container.rb b/lib/fog/openstack/requests/storage/put_container.rb
index 5a00387..60673f8 100644
--- a/lib/fog/openstack/requests/storage/put_container.rb
+++ b/lib/fog/openstack/requests/storage/put_container.rb
@@ -2,20 +2,21 @@ module Fog
module Storage
class OpenStack
class Real
-
# Create a new container
#
# ==== Parameters
# * name<~String> - Name for container, should be < 256 bytes and must not contain '/'
#
- def put_container(name)
+ def put_container(name, options={})
+ headers = options[:headers] || {}
+ headers['X-Container-Read'] = '.r:*' if options[:public]
request(
:expects => [201, 202],
:method => 'PUT',
- :path => Fog::OpenStack.escape(name)
+ :path => Fog::OpenStack.escape(name),
+ :headers => headers
)
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/put_dynamic_obj_manifest.rb b/lib/fog/openstack/requests/storage/put_dynamic_obj_manifest.rb
index d185d54..7c4da85 100644
--- a/lib/fog/openstack/requests/storage/put_dynamic_obj_manifest.rb
+++ b/lib/fog/openstack/requests/storage/put_dynamic_obj_manifest.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class OpenStack
class Real
-
# Create a new dynamic large object manifest
#
# Creates an object with a +X-Object-Manifest+ header that specifies the common prefix ("<container>/<prefix>")
@@ -36,7 +35,6 @@ module Fog
:path => path
)
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/put_object.rb b/lib/fog/openstack/requests/storage/put_object.rb
index c8a9005..f6c0e98 100644
--- a/lib/fog/openstack/requests/storage/put_object.rb
+++ b/lib/fog/openstack/requests/storage/put_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class OpenStack
class Real
-
# Create a new object
#
# When passed a block, it will make a chunked request, calling
diff --git a/lib/fog/openstack/requests/storage/put_object_manifest.rb b/lib/fog/openstack/requests/storage/put_object_manifest.rb
index 0037e99..1fe01c6 100644
--- a/lib/fog/openstack/requests/storage/put_object_manifest.rb
+++ b/lib/fog/openstack/requests/storage/put_object_manifest.rb
@@ -2,14 +2,12 @@ module Fog
module Storage
class OpenStack
class Real
-
# Create a new dynamic large object manifest
#
# This is an alias for {#put_dynamic_obj_manifest} for backward compatibility.
def put_object_manifest(container, object, options = {})
put_dynamic_obj_manifest(container, object, options)
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/storage/put_static_obj_manifest.rb b/lib/fog/openstack/requests/storage/put_static_obj_manifest.rb
index a1c0b1f..729f241 100644
--- a/lib/fog/openstack/requests/storage/put_static_obj_manifest.rb
+++ b/lib/fog/openstack/requests/storage/put_static_obj_manifest.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class OpenStack
class Real
-
# Create a new static large object manifest.
#
# A static large object is similar to a dynamic large object. Whereas a GET for a dynamic large object manifest
@@ -50,7 +49,6 @@ module Fog
:query => { 'multipart-manifest' => 'put' }
)
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/volume/create_volume.rb b/lib/fog/openstack/requests/volume/create_volume.rb
index 3ccf4fd..15e1b70 100644
--- a/lib/fog/openstack/requests/volume/create_volume.rb
+++ b/lib/fog/openstack/requests/volume/create_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Volume
class OpenStack
class Real
-
def create_volume(name, description, size, options={})
data = {
'volume' => {
@@ -13,7 +12,7 @@ module Fog
}
vanilla_options = [:snapshot_id, :imageRef, :volume_type,
- :source_volid]
+ :source_volid, :availability_zone]
vanilla_options.select{|o| options[o]}.each do |key|
data['volume'][key] = options[key]
end
@@ -24,11 +23,9 @@ module Fog
:path => "volumes"
)
end
-
end
class Mock
-
def create_volume(name, description, size, options={})
response = Excon::Response.new
response.status = 202
@@ -50,7 +47,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/volume/create_volume_snapshot.rb b/lib/fog/openstack/requests/volume/create_volume_snapshot.rb
index ada07c8..a42e9a5 100644
--- a/lib/fog/openstack/requests/volume/create_volume_snapshot.rb
+++ b/lib/fog/openstack/requests/volume/create_volume_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module Volume
class OpenStack
class Real
-
def create_volume_snapshot(volume_id, name, description, force=false)
data = {
'snapshot' => {
@@ -20,7 +19,6 @@ module Fog
:path => "snapshots"
)
end
-
end
class Mock
@@ -41,7 +39,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/volume/delete_snapshot.rb b/lib/fog/openstack/requests/volume/delete_snapshot.rb
index b973a16..5fc804a 100644
--- a/lib/fog/openstack/requests/volume/delete_snapshot.rb
+++ b/lib/fog/openstack/requests/volume/delete_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module Volume
class OpenStack
class Real
-
def delete_snapshot(snapshot_id)
request(
:expects => 202,
@@ -10,7 +9,6 @@ module Fog
:path => "snapshots/#{snapshot_id}"
)
end
-
end
class Mock
@@ -20,7 +18,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/volume/delete_volume.rb b/lib/fog/openstack/requests/volume/delete_volume.rb
index c0c06ff..bf7d6a4 100644
--- a/lib/fog/openstack/requests/volume/delete_volume.rb
+++ b/lib/fog/openstack/requests/volume/delete_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Volume
class OpenStack
class Real
-
def delete_volume(volume_id)
request(
:expects => 202,
@@ -10,7 +9,6 @@ module Fog
:path => "volumes/#{volume_id}"
)
end
-
end
class Mock
@@ -20,7 +18,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/volume/get_quota.rb b/lib/fog/openstack/requests/volume/get_quota.rb
index f505c64..a9bc4d5 100644
--- a/lib/fog/openstack/requests/volume/get_quota.rb
+++ b/lib/fog/openstack/requests/volume/get_quota.rb
@@ -2,7 +2,6 @@ module Fog
module Volume
class OpenStack
class Real
-
def get_quota(tenant_id)
request(
:expects => 200,
@@ -10,11 +9,9 @@ module Fog
:path => "/os-quota-sets/#{tenant_id}"
)
end
-
end
class Mock
-
def get_quota(tenant_id)
response = Excon::Response.new
response.status = 200
@@ -23,9 +20,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/volume/get_quota_defaults.rb b/lib/fog/openstack/requests/volume/get_quota_defaults.rb
index 6474a75..c2202d0 100644
--- a/lib/fog/openstack/requests/volume/get_quota_defaults.rb
+++ b/lib/fog/openstack/requests/volume/get_quota_defaults.rb
@@ -2,7 +2,6 @@ module Fog
module Volume
class OpenStack
class Real
-
def get_quota_defaults(tenant_id)
request(
:expects => 200,
@@ -10,11 +9,9 @@ module Fog
:path => "/os-quota-sets/#{tenant_id}/defaults"
)
end
-
end
class Mock
-
def get_quota_defaults(tenant_id)
response = Excon::Response.new
response.status = 200
@@ -23,9 +20,7 @@ module Fog
}
response
end
-
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/volume/get_snapshot_details.rb b/lib/fog/openstack/requests/volume/get_snapshot_details.rb
index b86dbe6..ca8201f 100644
--- a/lib/fog/openstack/requests/volume/get_snapshot_details.rb
+++ b/lib/fog/openstack/requests/volume/get_snapshot_details.rb
@@ -2,20 +2,16 @@ module Fog
module Volume
class OpenStack
class Real
-
def get_snapshot_details(snapshot_id)
-
request(
:expects => 200,
:method => 'GET',
:path => "snapshots/#{snapshot_id}"
)
end
-
end
class Mock
-
def get_snapshot_details(detailed=true)
response = Excon::Response.new
response.status = 200
@@ -33,7 +29,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/volume/get_volume_details.rb b/lib/fog/openstack/requests/volume/get_volume_details.rb
index 9f2426e..0e4555d 100644
--- a/lib/fog/openstack/requests/volume/get_volume_details.rb
+++ b/lib/fog/openstack/requests/volume/get_volume_details.rb
@@ -2,20 +2,16 @@ module Fog
module Volume
class OpenStack
class Real
-
def get_volume_details(volume_id)
-
request(
:expects => 200,
:method => 'GET',
:path => "volumes/#{volume_id}"
)
end
-
end
class Mock
-
def get_volume_details(detailed=true)
response = Excon::Response.new
response.status = 200
@@ -36,7 +32,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/volume/list_snapshots.rb b/lib/fog/openstack/requests/volume/list_snapshots.rb
index 457d825..52feddf 100644
--- a/lib/fog/openstack/requests/volume/list_snapshots.rb
+++ b/lib/fog/openstack/requests/volume/list_snapshots.rb
@@ -2,9 +2,7 @@ module Fog
module Volume
class OpenStack
class Real
-
def list_snapshots(detailed=true)
-
path = detailed ? 'snapshots/detail' : 'snapshots'
request(
:expects => 200,
@@ -12,11 +10,9 @@ module Fog
:path => path
)
end
-
end
class Mock
-
def list_snapshots(detailed=true)
response = Excon::Response.new
response.status = 200
@@ -26,7 +22,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/openstack/requests/volume/list_volumes.rb b/lib/fog/openstack/requests/volume/list_volumes.rb
index e1f0ce4..d10a790 100644
--- a/lib/fog/openstack/requests/volume/list_volumes.rb
+++ b/lib/fog/openstack/requests/volume/list_volumes.rb
@@ -2,7 +2,6 @@ module Fog
module Volume
class OpenStack
class Real
-
def list_volumes(detailed=true, options={})
path = detailed ? 'volumes/detail' : 'volumes'
request(
@@ -12,11 +11,9 @@ module Fog
:query => options
)
end
-
end
class Mock
-
def list_volumes(detailed=true, options={})
response = Excon::Response.new
response.status = 200
@@ -48,8 +45,6 @@ module Fog
response
end
end
-
end
end
end
-
diff --git a/lib/fog/openstack/requests/volume/set_tenant.rb b/lib/fog/openstack/requests/volume/set_tenant.rb
index 0e78819..02e499e 100644
--- a/lib/fog/openstack/requests/volume/set_tenant.rb
+++ b/lib/fog/openstack/requests/volume/set_tenant.rb
@@ -1,7 +1,6 @@
module Fog
module Volume
class OpenStack
-
class Real
def set_tenant(tenant)
@openstack_must_reauthenticate = true
@@ -15,7 +14,6 @@ module Fog
true
end
end
-
end # class OpenStack
end # module Volume
end # module Fog
diff --git a/lib/fog/openstack/requests/volume/update_quota.rb b/lib/fog/openstack/requests/volume/update_quota.rb
index c0a628e..2ca6854 100644
--- a/lib/fog/openstack/requests/volume/update_quota.rb
+++ b/lib/fog/openstack/requests/volume/update_quota.rb
@@ -2,7 +2,6 @@ module Fog
module Volume
class OpenStack
class Real
-
def update_quota(tenant_id, options = {})
options['tenant_id'] = tenant_id
request(
@@ -12,11 +11,9 @@ module Fog
:path => "/os-quota-sets/#{tenant_id}"
)
end
-
end
class Mock
-
def update_quota(tenant_id, options = {})
self.data[:quota_updated] = self.data[:quota].merge options
@@ -25,7 +22,6 @@ module Fog
response.body = { 'quota_set' => self.data[:quota_updated] }
response
end
-
end
end
end
diff --git a/lib/fog/openstack/storage.rb b/lib/fog/openstack/storage.rb
index 4d2cfb2..e72eb5d 100644
--- a/lib/fog/openstack/storage.rb
+++ b/lib/fog/openstack/storage.rb
@@ -3,12 +3,12 @@ require 'fog/openstack/core'
module Fog
module Storage
class OpenStack < Fog::Service
-
requires :openstack_auth_url, :openstack_username,
:openstack_api_key
recognizes :persistent, :openstack_service_name,
:openstack_service_type, :openstack_tenant,
- :openstack_region, :openstack_temp_url_key
+ :openstack_region, :openstack_temp_url_key,
+ :openstack_endpoint_type
model_path 'fog/openstack/models/storage'
model :directory
@@ -38,7 +38,6 @@ module Fog
request :post_set_meta_temp_url_key
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {}
@@ -72,11 +71,9 @@ module Fog
def reset_account_name
@path = @original_path
end
-
end
class Real
-
def initialize(options={})
@openstack_api_key = options[:openstack_api_key]
@openstack_username = options[:openstack_username]
@@ -84,12 +81,13 @@ module Fog
@openstack_auth_token = options[:openstack_auth_token]
@openstack_storage_url = options[:openstack_storage_url]
@openstack_must_reauthenticate = false
- @openstack_service_type = options[:openstack_service_type] || 'object-store'
+ @openstack_service_type = options[:openstack_service_type] || ['object-store']
@openstack_service_name = options[:openstack_service_name]
@openstack_region = options[:openstack_region]
@openstack_tenant = options[:openstack_tenant]
@connection_options = options[:connection_options] || {}
@openstack_temp_url_key = options[:openstack_temp_url_key]
+ @openstack_endpoint_type = options[:openstack_endpoint_type] || 'publicURL'
authenticate
@persistent = options[:persistent] || false
@connection = Fog::Core::Connection.new("#{@scheme}://#{@host}:#{@port}", @persistent, @connection_options)
@@ -189,7 +187,7 @@ module Fog
:openstack_service_name => @openstack_service_name,
:openstack_region => @openstack_region,
:openstack_tenant => @openstack_tenant,
- :openstack_endpoint_type => 'publicURL'
+ :openstack_endpoint_type => @openstack_endpoint_type
}
credentials = Fog::OpenStack.authenticate(options, @connection_options)
@@ -213,7 +211,6 @@ module Fog
@scheme = uri.scheme
true
end
-
end
end
end
diff --git a/lib/fog/openstack/volume.rb b/lib/fog/openstack/volume.rb
index 0bc06bd..8ee8074 100644
--- a/lib/fog/openstack/volume.rb
+++ b/lib/fog/openstack/volume.rb
@@ -3,7 +3,6 @@ require 'fog/openstack/core'
module Fog
module Volume
class OpenStack < Fog::Service
-
requires :openstack_auth_url
recognizes :openstack_auth_token, :openstack_management_url, :persistent,
:openstack_service_type, :openstack_service_name, :openstack_tenant,
@@ -221,9 +220,7 @@ module Fog
@scheme = uri.scheme
true
end
-
end
end
end
end
-
diff --git a/lib/fog/openvz/compute.rb b/lib/fog/openvz/compute.rb
index dd6c9d8..d8322cf 100644
--- a/lib/fog/openvz/compute.rb
+++ b/lib/fog/openvz/compute.rb
@@ -3,7 +3,6 @@ require 'fog/openvz/core'
module Fog
module Compute
class Openvz < Fog::Service
-
recognizes :openvz_connect_command
model_path 'fog/openvz/models/compute'
@@ -41,7 +40,6 @@ module Fog
request :set_server
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {
@@ -65,11 +63,9 @@ module Fog
def reset_data
self.class.data.delete(@openvz_connect_command)
end
-
end
class Real
-
def initialize(options={})
@openvz_connect_command = options[:openvz_connect_command]
end
@@ -139,7 +135,6 @@ module Fog
end
def vzlist(params,args = [])
-
commands = [ 'vzlist', '-a', '-j' , params['ctid'], params[:ctid] ]
prefixed_command = expand_commands(commands, params, args)
@@ -166,9 +161,7 @@ module Fog
else
return Fog::JSON.decode(result)
end
-
end
-
end
end
end
diff --git a/lib/fog/openvz/core.rb b/lib/fog/openvz/core.rb
index e199aff..4216bc6 100644
--- a/lib/fog/openvz/core.rb
+++ b/lib/fog/openvz/core.rb
@@ -6,4 +6,3 @@ module Fog
service(:compute, 'Compute')
end
end
-
diff --git a/lib/fog/openvz/models/compute/server.rb b/lib/fog/openvz/models/compute/server.rb
index f38d5ac..7297f9a 100644
--- a/lib/fog/openvz/models/compute/server.rb
+++ b/lib/fog/openvz/models/compute/server.rb
@@ -3,9 +3,7 @@ require 'fog/compute/models/server'
module Fog
module Compute
class Openvz
-
class Server < Fog::Compute::Server
-
identity :ctid
attribute :ostemplate
attribute :config
@@ -178,7 +176,6 @@ module Fog
data = service.resume_server(ctid, options)
end
-
def set(options)
data = service.set_server(ctid,options)
end
@@ -186,9 +183,7 @@ module Fog
def ready?
status == 'running'
end
-
end
-
end
end
end
diff --git a/lib/fog/openvz/models/compute/servers.rb b/lib/fog/openvz/models/compute/servers.rb
index f35f0fd..f7a510c 100644
--- a/lib/fog/openvz/models/compute/servers.rb
+++ b/lib/fog/openvz/models/compute/servers.rb
@@ -4,7 +4,6 @@ require 'fog/openvz/models/compute/server'
module Fog
module Compute
class Openvz
-
class Servers < Fog::Collection
model Fog::Compute::Openvz::Server
@@ -19,9 +18,7 @@ module Fog
rescue Fog::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/compact_server.rb b/lib/fog/openvz/requests/compute/compact_server.rb
index 583220c..b874e70 100644
--- a/lib/fog/openvz/requests/compute/compact_server.rb
+++ b/lib/fog/openvz/requests/compute/compact_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def compact_server(id,options = {})
vzctl("compact",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def compact_server(id, options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/convert_server.rb b/lib/fog/openvz/requests/compute/convert_server.rb
index ea141c3..8a97007 100644
--- a/lib/fog/openvz/requests/compute/convert_server.rb
+++ b/lib/fog/openvz/requests/compute/convert_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def convert_server(id,options = {})
vzctl("convert",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def convert_server(id, options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/create_server.rb b/lib/fog/openvz/requests/compute/create_server.rb
index 1c86c62..1f0dbe2 100644
--- a/lib/fog/openvz/requests/compute/create_server.rb
+++ b/lib/fog/openvz/requests/compute/create_server.rb
@@ -2,21 +2,17 @@ module Fog
module Compute
class Openvz
class Real
-
def create_server(options = {})
vzctl("create",options)
end
-
end
class Mock
-
def create_server(options = {})
# When a new fake server is created we set the status to stopped
options['status'] = 'stopped'
self.data[:servers] << options
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/destroy_server.rb b/lib/fog/openvz/requests/compute/destroy_server.rb
index e414924..60d057a 100644
--- a/lib/fog/openvz/requests/compute/destroy_server.rb
+++ b/lib/fog/openvz/requests/compute/destroy_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def destroy_server(id, options = {})
vzctl("destroy",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def destroy_server(id , options = {})
self.data[:servers].reject! { |s| s['ctid'].to_s == id.to_s }
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/exec2_server.rb b/lib/fog/openvz/requests/compute/exec2_server.rb
index e6d0ba6..29e3d81 100644
--- a/lib/fog/openvz/requests/compute/exec2_server.rb
+++ b/lib/fog/openvz/requests/compute/exec2_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def exec2_server(id,args)
vzctl("exec2",{:ctid => id},args)
end
-
end
class Mock
-
def exec2_server(id, args)
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/exec_server.rb b/lib/fog/openvz/requests/compute/exec_server.rb
index 26286b1..86a2e52 100644
--- a/lib/fog/openvz/requests/compute/exec_server.rb
+++ b/lib/fog/openvz/requests/compute/exec_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def exec_server(id,args = [])
vzctl("exec",{:ctid => id},args)
end
-
end
class Mock
-
def exec_server(id, args = [])
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/get_server_details.rb b/lib/fog/openvz/requests/compute/get_server_details.rb
index 0064e16..876e617 100644
--- a/lib/fog/openvz/requests/compute/get_server_details.rb
+++ b/lib/fog/openvz/requests/compute/get_server_details.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def get_server_details(id)
vzlist({:ctid => id}).first
end
-
end
class Mock
-
def get_server_details(id)
return self.data[:servers].find { |s| s['ctid'].to_s == id.to_s }
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/list_servers.rb b/lib/fog/openvz/requests/compute/list_servers.rb
index a4578f9..2bf6ba9 100644
--- a/lib/fog/openvz/requests/compute/list_servers.rb
+++ b/lib/fog/openvz/requests/compute/list_servers.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def list_servers(options = {})
vzlist({})
end
-
end
class Mock
-
def list_servers
self.data[:servers]
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/mount_server.rb b/lib/fog/openvz/requests/compute/mount_server.rb
index 7e146ae..1560982 100644
--- a/lib/fog/openvz/requests/compute/mount_server.rb
+++ b/lib/fog/openvz/requests/compute/mount_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def mount_server(id, options = {})
vzctl("mount",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def mount_server(id, options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/quotainit_server.rb b/lib/fog/openvz/requests/compute/quotainit_server.rb
index 35c99aa..e5eca4a 100644
--- a/lib/fog/openvz/requests/compute/quotainit_server.rb
+++ b/lib/fog/openvz/requests/compute/quotainit_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def quotainit_server(id, options = {})
vzctl("quotainit",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def quotainit_server(id, options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/quotaoff_server.rb b/lib/fog/openvz/requests/compute/quotaoff_server.rb
index aedec00..d67c5d1 100644
--- a/lib/fog/openvz/requests/compute/quotaoff_server.rb
+++ b/lib/fog/openvz/requests/compute/quotaoff_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def quotaooff_server(id, options = {})
vzctl("quotaoff",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def quotaooff_server(id, options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/quotaon_server.rb b/lib/fog/openvz/requests/compute/quotaon_server.rb
index 98f4936..e6278b4 100644
--- a/lib/fog/openvz/requests/compute/quotaon_server.rb
+++ b/lib/fog/openvz/requests/compute/quotaon_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def quotaon_server(id, options = {})
vzctl("quotaon",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def quotaon_server(id, options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/restart_server.rb b/lib/fog/openvz/requests/compute/restart_server.rb
index 5f9c7c0..ba76670 100644
--- a/lib/fog/openvz/requests/compute/restart_server.rb
+++ b/lib/fog/openvz/requests/compute/restart_server.rb
@@ -2,22 +2,18 @@ module Fog
module Compute
class Openvz
class Real
-
def restart_server(id, options = {})
vzctl("restart",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def restart_server(id, options = {})
server = self.data[:servers].find { |s| s['ctid'] == id.to_s }
unless server.nil?
server['status'] = 'running'
end
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/resume_server.rb b/lib/fog/openvz/requests/compute/resume_server.rb
index 89bedf9..ad655ca 100644
--- a/lib/fog/openvz/requests/compute/resume_server.rb
+++ b/lib/fog/openvz/requests/compute/resume_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def resume_server(id, options = {})
vzctl("resume",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def resume_server(id, options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/runscript_server.rb b/lib/fog/openvz/requests/compute/runscript_server.rb
index a0c0f1a..2a3ec95 100644
--- a/lib/fog/openvz/requests/compute/runscript_server.rb
+++ b/lib/fog/openvz/requests/compute/runscript_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def runscript_server(id,args = [])
vzctl("runscript",{:ctid => id},args)
end
-
end
class Mock
-
def runscript_server(id,args = [])
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/set_server.rb b/lib/fog/openvz/requests/compute/set_server.rb
index ec47e80..3addf42 100644
--- a/lib/fog/openvz/requests/compute/set_server.rb
+++ b/lib/fog/openvz/requests/compute/set_server.rb
@@ -2,15 +2,12 @@ module Fog
module Compute
class Openvz
class Real
-
def set_server(id,options = {})
vzctl("set",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def set_server(id, options = {})
server = self.data[:servers].find { |s| s['ctid'].to_s == id.to_s }
unless server.nil?
@@ -18,9 +15,7 @@ module Fog
server[k] = v
end
end
-
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/snapshot_delete_server.rb b/lib/fog/openvz/requests/compute/snapshot_delete_server.rb
index 1bc37d5..f3bf4d9 100644
--- a/lib/fog/openvz/requests/compute/snapshot_delete_server.rb
+++ b/lib/fog/openvz/requests/compute/snapshot_delete_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def snapshot_delete_server(id,options = {})
vzctl("snapshot-delete",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def snapshot_delete_server(id,options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/snapshot_list_server.rb b/lib/fog/openvz/requests/compute/snapshot_list_server.rb
index b1aad0f..59e63d9 100644
--- a/lib/fog/openvz/requests/compute/snapshot_list_server.rb
+++ b/lib/fog/openvz/requests/compute/snapshot_list_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def snapshot_list_server(id,options = {})
vzctl("snapshot-list",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def snapshot_list_server(id, options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/snapshot_mount_server.rb b/lib/fog/openvz/requests/compute/snapshot_mount_server.rb
index 439e0da..ec9fe3e 100644
--- a/lib/fog/openvz/requests/compute/snapshot_mount_server.rb
+++ b/lib/fog/openvz/requests/compute/snapshot_mount_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def snapshot_mount_server(id,options = {})
vzctl("snapshot-mount",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def snapshot_mount_server(id,options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/snapshot_server.rb b/lib/fog/openvz/requests/compute/snapshot_server.rb
index 00bcc95..c63d98a 100644
--- a/lib/fog/openvz/requests/compute/snapshot_server.rb
+++ b/lib/fog/openvz/requests/compute/snapshot_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def snapshot_server(id,options = {})
vzctl("snapshot",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def snapshot_server(id,options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/snapshot_switch_server.rb b/lib/fog/openvz/requests/compute/snapshot_switch_server.rb
index 4b84b03..37c78c1 100644
--- a/lib/fog/openvz/requests/compute/snapshot_switch_server.rb
+++ b/lib/fog/openvz/requests/compute/snapshot_switch_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def snapshot_switch_server(id,options = {})
vzctl("snapshot-switch",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def snapshot_switch_server(id,options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/snapshot_umount_server.rb b/lib/fog/openvz/requests/compute/snapshot_umount_server.rb
index 27c2de3..74e6867 100644
--- a/lib/fog/openvz/requests/compute/snapshot_umount_server.rb
+++ b/lib/fog/openvz/requests/compute/snapshot_umount_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def snapshot_umount_server(id,options = {})
vzctl("snapshot-umount",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def snapshot_umount_server(id,options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/start_server.rb b/lib/fog/openvz/requests/compute/start_server.rb
index 9f99b4d..aab9f62 100644
--- a/lib/fog/openvz/requests/compute/start_server.rb
+++ b/lib/fog/openvz/requests/compute/start_server.rb
@@ -2,22 +2,18 @@ module Fog
module Compute
class Openvz
class Real
-
def start_server(id,options={})
vzctl("start",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def start_server(id,options={})
server = self.data[:servers].find { |s| s['ctid'].to_s == id.to_s }
unless server.nil?
server['status'] = 'running'
end
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/status_server.rb b/lib/fog/openvz/requests/compute/status_server.rb
index 754d5ca..e208fd8 100644
--- a/lib/fog/openvz/requests/compute/status_server.rb
+++ b/lib/fog/openvz/requests/compute/status_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def status_server(id, options = {})
vzctl("status",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def status_server(id, options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/stop_server.rb b/lib/fog/openvz/requests/compute/stop_server.rb
index 9572624..eb59671 100644
--- a/lib/fog/openvz/requests/compute/stop_server.rb
+++ b/lib/fog/openvz/requests/compute/stop_server.rb
@@ -2,22 +2,18 @@ module Fog
module Compute
class Openvz
class Real
-
def stop_server(id, options = {})
vzctl("stop",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def stop_server(id, options = {})
server = self.data[:servers].find { |s| s['ctid'].to_s == id.to_s }
unless server.nil?
server['status'] = 'stopped'
end
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/suspend_server.rb b/lib/fog/openvz/requests/compute/suspend_server.rb
index 1c2cd3b..fe44022 100644
--- a/lib/fog/openvz/requests/compute/suspend_server.rb
+++ b/lib/fog/openvz/requests/compute/suspend_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def suspend_server(id, options = {})
vzctl("suspend",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def suspend_server(id, options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/openvz/requests/compute/umount_server.rb b/lib/fog/openvz/requests/compute/umount_server.rb
index 248cd19..1ad02e3 100644
--- a/lib/fog/openvz/requests/compute/umount_server.rb
+++ b/lib/fog/openvz/requests/compute/umount_server.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Openvz
class Real
-
def umount_server(id, options = {})
vzctl("umount",{:ctid => id}.merge(options))
end
-
end
class Mock
-
def umount_server(id, options = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/ovirt/compute.rb b/lib/fog/ovirt/compute.rb
index 9b2e47a..9e04365 100644
--- a/lib/fog/ovirt/compute.rb
+++ b/lib/fog/ovirt/compute.rb
@@ -3,7 +3,6 @@ require 'fog/ovirt/core'
module Fog
module Compute
class Ovirt < Fog::Service
-
requires :ovirt_username, :ovirt_password
recognizes :ovirt_url, :ovirt_server, :ovirt_port, :ovirt_api_path, :ovirt_datacenter,
:ovirt_ca_cert_store, :ovirt_ca_cert_file
@@ -99,7 +98,6 @@ module Fog
class Real
include Shared
-
def initialize(options={})
require 'rbovirt'
username = options[:ovirt_username]
diff --git a/lib/fog/ovirt/core.rb b/lib/fog/ovirt/core.rb
index 5d85afe..b228fc7 100644
--- a/lib/fog/ovirt/core.rb
+++ b/lib/fog/ovirt/core.rb
@@ -3,7 +3,6 @@ require 'fog/xml'
module Fog
module Ovirt
-
extend Fog::Provider
module Errors
@@ -13,6 +12,5 @@ module Fog
end
service(:compute, 'Compute')
-
end
end
diff --git a/lib/fog/ovirt/models/compute/cluster.rb b/lib/fog/ovirt/models/compute/cluster.rb
index e5ce654..6d948ce 100644
--- a/lib/fog/ovirt/models/compute/cluster.rb
+++ b/lib/fog/ovirt/models/compute/cluster.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Ovirt
-
class Cluster < Fog::Model
-
identity :id
attribute :name
@@ -16,9 +14,7 @@ module Fog
def to_s
name
end
-
end
-
end
end
end
diff --git a/lib/fog/ovirt/models/compute/clusters.rb b/lib/fog/ovirt/models/compute/clusters.rb
index c6d6b9f..b58507a 100644
--- a/lib/fog/ovirt/models/compute/clusters.rb
+++ b/lib/fog/ovirt/models/compute/clusters.rb
@@ -4,9 +4,7 @@ require 'fog/ovirt/models/compute/cluster'
module Fog
module Compute
class Ovirt
-
class Clusters < Fog::Collection
-
model Fog::Compute::Ovirt::Cluster
def all(filters = {})
@@ -16,7 +14,6 @@ module Fog
def get(id)
new service.get_cluster(id)
end
-
end
end
end
diff --git a/lib/fog/ovirt/models/compute/interface.rb b/lib/fog/ovirt/models/compute/interface.rb
index 955193b..cebccd6 100644
--- a/lib/fog/ovirt/models/compute/interface.rb
+++ b/lib/fog/ovirt/models/compute/interface.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ovirt
-
class Interface < Fog::Model
attr_accessor :raw
identity :id
@@ -14,9 +13,7 @@ module Fog
def to_s
name
end
-
end
-
end
end
end
diff --git a/lib/fog/ovirt/models/compute/interfaces.rb b/lib/fog/ovirt/models/compute/interfaces.rb
index 9823282..1a9b030 100644
--- a/lib/fog/ovirt/models/compute/interfaces.rb
+++ b/lib/fog/ovirt/models/compute/interfaces.rb
@@ -4,9 +4,7 @@ require 'fog/ovirt/models/compute/interface'
module Fog
module Compute
class Ovirt
-
class Interfaces < Fog::Collection
-
model Fog::Compute::Ovirt::Interface
attr_accessor :vm
@@ -25,7 +23,6 @@ module Fog
def get(id)
new service.get_interface(id)
end
-
end
end
end
diff --git a/lib/fog/ovirt/models/compute/quota.rb b/lib/fog/ovirt/models/compute/quota.rb
index e7bb4f3..df51ea4 100644
--- a/lib/fog/ovirt/models/compute/quota.rb
+++ b/lib/fog/ovirt/models/compute/quota.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Ovirt
-
class Quota < Fog::Model
-
identity :id
attribute :name
@@ -12,10 +10,7 @@ module Fog
def to_s
name
end
-
end
-
end
end
end
-
diff --git a/lib/fog/ovirt/models/compute/quotas.rb b/lib/fog/ovirt/models/compute/quotas.rb
index 27805cd..002b391 100644
--- a/lib/fog/ovirt/models/compute/quotas.rb
+++ b/lib/fog/ovirt/models/compute/quotas.rb
@@ -4,9 +4,7 @@ require 'fog/ovirt/models/compute/quota'
module Fog
module Compute
class Ovirt
-
class Quotas < Fog::Collection
-
model Fog::Compute::Ovirt::Quota
def all(filters = {})
@@ -16,9 +14,7 @@ module Fog
def get(id)
new service.get_quota(id)
end
-
end
end
end
end
-
diff --git a/lib/fog/ovirt/models/compute/server.rb b/lib/fog/ovirt/models/compute/server.rb
index bd1ed74..1887d73 100644
--- a/lib/fog/ovirt/models/compute/server.rb
+++ b/lib/fog/ovirt/models/compute/server.rb
@@ -3,9 +3,7 @@ require 'fog/compute/models/server'
module Fog
module Compute
class Ovirt
-
class Server < Fog::Compute::Server
-
# This will be the instance uuid which is globally unique across
# a oVirt deployment.
identity :id
@@ -28,12 +26,14 @@ module Fog
attribute :volumes
attribute :raw
attribute :quota
+ attribute :ips
def ready?
!(status =~ /down/i)
end
def locked?
+ @volumes = nil # force reload volumes
!!(status =~ /locked/i) || (attributes[:volumes]=nil) || volumes.any?{|v| !!(v.status =~ /locked/i)}
end
@@ -128,9 +128,7 @@ module Fog
def to_s
name
end
-
end
-
end
end
end
diff --git a/lib/fog/ovirt/models/compute/servers.rb b/lib/fog/ovirt/models/compute/servers.rb
index 2f5e095..945a88a 100644
--- a/lib/fog/ovirt/models/compute/servers.rb
+++ b/lib/fog/ovirt/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/ovirt/models/compute/server'
module Fog
module Compute
class Ovirt
-
class Servers < Fog::Collection
-
model Fog::Compute::Ovirt::Server
def all(filters = {})
@@ -23,7 +21,6 @@ module Fog
server.start
server
end
-
end
end
end
diff --git a/lib/fog/ovirt/models/compute/template.rb b/lib/fog/ovirt/models/compute/template.rb
index cfe56f9..20419ba 100644
--- a/lib/fog/ovirt/models/compute/template.rb
+++ b/lib/fog/ovirt/models/compute/template.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Ovirt
-
class Template < Fog::Model
-
identity :id
attr_accessor :raw
@@ -52,9 +50,7 @@ module Fog
def to_s
name
end
-
end
-
end
end
end
diff --git a/lib/fog/ovirt/models/compute/templates.rb b/lib/fog/ovirt/models/compute/templates.rb
index 389159e..5193a27 100644
--- a/lib/fog/ovirt/models/compute/templates.rb
+++ b/lib/fog/ovirt/models/compute/templates.rb
@@ -4,9 +4,7 @@ require 'fog/ovirt/models/compute/template'
module Fog
module Compute
class Ovirt
-
class Templates < Fog::Collection
-
model Fog::Compute::Ovirt::Template
def all(filters = {})
@@ -16,7 +14,6 @@ module Fog
def get(id)
new service.get_template(id)
end
-
end
end
end
diff --git a/lib/fog/ovirt/models/compute/volume.rb b/lib/fog/ovirt/models/compute/volume.rb
index c595e70..932ccfa 100644
--- a/lib/fog/ovirt/models/compute/volume.rb
+++ b/lib/fog/ovirt/models/compute/volume.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ovirt
-
class Volume < Fog::Model
attr_accessor :raw
DISK_SIZE_TO_GB = 1073741824
@@ -29,9 +28,7 @@ module Fog
def to_s
id
end
-
end
-
end
end
end
diff --git a/lib/fog/ovirt/models/compute/volumes.rb b/lib/fog/ovirt/models/compute/volumes.rb
index 1d1d9b1..9f50e10 100644
--- a/lib/fog/ovirt/models/compute/volumes.rb
+++ b/lib/fog/ovirt/models/compute/volumes.rb
@@ -4,9 +4,7 @@ require 'fog/ovirt/models/compute/volume'
module Fog
module Compute
class Ovirt
-
class Volumes < Fog::Collection
-
model Fog::Compute::Ovirt::Volume
attr_accessor :vm
@@ -25,7 +23,6 @@ module Fog
def get(id)
new service.get_volume(id)
end
-
end
end
end
diff --git a/lib/fog/ovirt/requests/compute/add_interface.rb b/lib/fog/ovirt/requests/compute/add_interface.rb
index 675311d..8b1113a 100644
--- a/lib/fog/ovirt/requests/compute/add_interface.rb
+++ b/lib/fog/ovirt/requests/compute/add_interface.rb
@@ -2,13 +2,11 @@ module Fog
module Compute
class Ovirt
class Real
-
def add_interface(id, options = {})
raise ArgumentError, "instance id is a required parameter" unless id
client.add_interface(id, options)
end
-
end
class Mock
@@ -16,7 +14,6 @@ module Fog
raise ArgumentError, "instance id is a required parameter" unless id
true
end
-
end
end
end
diff --git a/lib/fog/ovirt/requests/compute/add_volume.rb b/lib/fog/ovirt/requests/compute/add_volume.rb
index 264a07c..9ffb4b9 100644
--- a/lib/fog/ovirt/requests/compute/add_volume.rb
+++ b/lib/fog/ovirt/requests/compute/add_volume.rb
@@ -8,7 +8,6 @@ module Fog
options[:size]=options[:size_gb].to_i*DISK_SIZE_TO_GB if options[:size_gb]
client.add_volume(id, options)
end
-
end
class Mock
@@ -16,7 +15,6 @@ module Fog
raise ArgumentError, "instance id is a required parameter" unless id
true
end
-
end
end
end
diff --git a/lib/fog/ovirt/requests/compute/create_vm.rb b/lib/fog/ovirt/requests/compute/create_vm.rb
index b725057..a6d2652 100644
--- a/lib/fog/ovirt/requests/compute/create_vm.rb
+++ b/lib/fog/ovirt/requests/compute/create_vm.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ovirt
-
class Real
def create_vm(attrs)
client.create_vm(attrs)
@@ -13,7 +12,6 @@ module Fog
xml = read_xml('vm.xml')
OVIRT::VM::new(self, Nokogiri::XML(xml).root)
end
-
end
end
end
diff --git a/lib/fog/ovirt/requests/compute/datacenters.rb b/lib/fog/ovirt/requests/compute/datacenters.rb
index 4c94ba4..6f6a31a 100644
--- a/lib/fog/ovirt/requests/compute/datacenters.rb
+++ b/lib/fog/ovirt/requests/compute/datacenters.rb
@@ -2,17 +2,15 @@ module Fog
module Compute
class Ovirt
class Real
-
def datacenters filter={}
client.datacenters(filter).map {|ovirt_obj| ovirt_attrs ovirt_obj}
end
-
end
class Mock
def datacenters(filters = {})
xml = read_xml 'data_centers.xml'
- Nokogiri::XML(xml).xpath('/data_centers/data_center').collect do |dc|
+ Nokogiri::XML(xml).xpath('/data_centers/data_center').map do |dc|
ovirt_attrs OVIRT::DataCenter::new(self, dc)
end
end
diff --git a/lib/fog/ovirt/requests/compute/destroy_interface.rb b/lib/fog/ovirt/requests/compute/destroy_interface.rb
index 00610c2..6e12785 100644
--- a/lib/fog/ovirt/requests/compute/destroy_interface.rb
+++ b/lib/fog/ovirt/requests/compute/destroy_interface.rb
@@ -2,23 +2,20 @@ module Fog
module Compute
class Ovirt
class Real
-
def destroy_interface(id, options)
raise ArgumentError, "instance id is a required parameter" unless id
- raise ArgumentError, "interface id is a required parameter for destroy-interface" unless options.has_key? :id
+ raise ArgumentError, "interface id is a required parameter for destroy-interface" unless options.key? :id
client.destroy_interface(id, options[:id])
end
-
end
class Mock
def destroy_interface(id, options)
raise ArgumentError, "instance id is a required parameter" unless id
- raise ArgumentError, "interface id is a required parameter for destroy-interface" unless options.has_key? :id
+ raise ArgumentError, "interface id is a required parameter for destroy-interface" unless options.key? :id
true
end
-
end
end
end
diff --git a/lib/fog/ovirt/requests/compute/destroy_vm.rb b/lib/fog/ovirt/requests/compute/destroy_vm.rb
index 8bc2211..5323992 100644
--- a/lib/fog/ovirt/requests/compute/destroy_vm.rb
+++ b/lib/fog/ovirt/requests/compute/destroy_vm.rb
@@ -2,20 +2,17 @@ module Fog
module Compute
class Ovirt
class Real
-
def destroy_vm(options = {})
- raise ArgumentError, "instance id is a required parameter" unless options.has_key? :id
+ raise ArgumentError, "instance id is a required parameter" unless options.key? :id
client.destroy_vm(options[:id])
end
-
end
class Mock
def destroy_vm(options = {})
- raise ArgumentError, "instance id is a required parameter" unless options.has_key? :id
+ raise ArgumentError, "instance id is a required parameter" unless options.key? :id
true
end
-
end
end
end
diff --git a/lib/fog/ovirt/requests/compute/destroy_volume.rb b/lib/fog/ovirt/requests/compute/destroy_volume.rb
index 3b12b89..e19cfd8 100644
--- a/lib/fog/ovirt/requests/compute/destroy_volume.rb
+++ b/lib/fog/ovirt/requests/compute/destroy_volume.rb
@@ -2,23 +2,20 @@ module Fog
module Compute
class Ovirt
class Real
-
def destroy_volume(id, options)
raise ArgumentError, "instance id is a required parameter" unless id
- raise ArgumentError, "volume id is a required parameter for destroy-volume" unless options.has_key? :id
+ raise ArgumentError, "volume id is a required parameter for destroy-volume" unless options.key? :id
client.destroy_volume(id, options[:id])
end
-
end
class Mock
def destroy_volume(id, options)
raise ArgumentError, "instance id is a required parameter" unless id
- raise ArgumentError, "volume id is a required parameter for destroy-volume" unless options.has_key? :id
+ raise ArgumentError, "volume id is a required parameter for destroy-volume" unless options.key? :id
true
end
-
end
end
end
diff --git a/lib/fog/ovirt/requests/compute/get_cluster.rb b/lib/fog/ovirt/requests/compute/get_cluster.rb
index 61d628d..33daddb 100644
--- a/lib/fog/ovirt/requests/compute/get_cluster.rb
+++ b/lib/fog/ovirt/requests/compute/get_cluster.rb
@@ -5,7 +5,6 @@ module Fog
def get_cluster(id)
ovirt_attrs client.cluster(id)
end
-
end
class Mock
def get_cluster(id)
diff --git a/lib/fog/ovirt/requests/compute/get_quota.rb b/lib/fog/ovirt/requests/compute/get_quota.rb
index 4a5abc6..94b6c3c 100644
--- a/lib/fog/ovirt/requests/compute/get_quota.rb
+++ b/lib/fog/ovirt/requests/compute/get_quota.rb
@@ -5,7 +5,6 @@ module Fog
def get_quota(id)
ovirt_attrs client.quota(id)
end
-
end
class Mock
def get_quota(id)
@@ -16,4 +15,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/ovirt/requests/compute/get_template.rb b/lib/fog/ovirt/requests/compute/get_template.rb
index 73622dc..337aa7b 100644
--- a/lib/fog/ovirt/requests/compute/get_template.rb
+++ b/lib/fog/ovirt/requests/compute/get_template.rb
@@ -5,7 +5,6 @@ module Fog
def get_template(id)
ovirt_attrs client.template(id)
end
-
end
class Mock
def get_template(id)
diff --git a/lib/fog/ovirt/requests/compute/get_virtual_machine.rb b/lib/fog/ovirt/requests/compute/get_virtual_machine.rb
index 8896a5c..5d85311 100644
--- a/lib/fog/ovirt/requests/compute/get_virtual_machine.rb
+++ b/lib/fog/ovirt/requests/compute/get_virtual_machine.rb
@@ -5,7 +5,6 @@ module Fog
def get_virtual_machine(id)
ovirt_attrs client.vm(id)
end
-
end
class Mock
def get_virtual_machine(id)
diff --git a/lib/fog/ovirt/requests/compute/list_clusters.rb b/lib/fog/ovirt/requests/compute/list_clusters.rb
index 4fdf0b9..014b9fd 100644
--- a/lib/fog/ovirt/requests/compute/list_clusters.rb
+++ b/lib/fog/ovirt/requests/compute/list_clusters.rb
@@ -5,12 +5,11 @@ module Fog
def list_clusters(filters = {})
client.clusters(filters).map {|ovirt_obj| ovirt_attrs ovirt_obj}
end
-
end
class Mock
def list_clusters(filters = {})
xml = read_xml 'clusters.xml'
- Nokogiri::XML(xml).xpath('/clusters/cluster').collect do |cl|
+ Nokogiri::XML(xml).xpath('/clusters/cluster').map do |cl|
ovirt_attrs OVIRT::Cluster::new(self, cl)
end
end
diff --git a/lib/fog/ovirt/requests/compute/list_networks.rb b/lib/fog/ovirt/requests/compute/list_networks.rb
index f4af0d7..f789d93 100644
--- a/lib/fog/ovirt/requests/compute/list_networks.rb
+++ b/lib/fog/ovirt/requests/compute/list_networks.rb
@@ -5,7 +5,6 @@ module Fog
def list_networks(cluster_id)
client.networks(:cluster_id => cluster_id)
end
-
end
class Mock
def list_networks(cluster_id)
diff --git a/lib/fog/ovirt/requests/compute/list_quotas.rb b/lib/fog/ovirt/requests/compute/list_quotas.rb
index 9b56cd2..7abbe05 100644
--- a/lib/fog/ovirt/requests/compute/list_quotas.rb
+++ b/lib/fog/ovirt/requests/compute/list_quotas.rb
@@ -5,12 +5,11 @@ module Fog
def list_quotas(filters = {})
client.quotas(filters).map {|ovirt_obj| ovirt_attrs ovirt_obj}
end
-
end
class Mock
def list_quotas(filters = {})
xml = read_xml 'quotas.xml'
- Nokogiri::XML(xml).xpath('/quotas/quota').collect do |q|
+ Nokogiri::XML(xml).xpath('/quotas/quota').map do |q|
ovirt_attrs OVIRT::Quotas::new(self, q)
end
end
@@ -18,4 +17,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/ovirt/requests/compute/list_template_interfaces.rb b/lib/fog/ovirt/requests/compute/list_template_interfaces.rb
index 7467dbc..1ee2379 100644
--- a/lib/fog/ovirt/requests/compute/list_template_interfaces.rb
+++ b/lib/fog/ovirt/requests/compute/list_template_interfaces.rb
@@ -5,12 +5,11 @@ module Fog
def list_template_interfaces(vm_id)
client.template_interfaces(vm_id).map {|ovirt_obj| ovirt_attrs ovirt_obj}
end
-
end
class Mock
def list_template_interfaces(vm_id)
xml = read_xml 'nics.xml'
- Nokogiri::XML(xml).xpath('/nics/nic').collect do |nic|
+ Nokogiri::XML(xml).xpath('/nics/nic').map do |nic|
ovirt_attrs OVIRT::Interface::new(self, nic)
end
end
diff --git a/lib/fog/ovirt/requests/compute/list_template_volumes.rb b/lib/fog/ovirt/requests/compute/list_template_volumes.rb
index 7c4fe86..a75b714 100644
--- a/lib/fog/ovirt/requests/compute/list_template_volumes.rb
+++ b/lib/fog/ovirt/requests/compute/list_template_volumes.rb
@@ -5,12 +5,11 @@ module Fog
def list_template_volumes(template_id)
client.template_volumes(template_id).map {|ovirt_obj| ovirt_attrs ovirt_obj}
end
-
end
class Mock
def list_template_volumes(template_id)
xml = read_xml 'volumes.xml'
- Nokogiri::XML(xml).xpath('/disks/disk').collect do |vol|
+ Nokogiri::XML(xml).xpath('/disks/disk').map do |vol|
ovirt_attrs OVIRT::Volume::new(self, vol)
end
end
diff --git a/lib/fog/ovirt/requests/compute/list_templates.rb b/lib/fog/ovirt/requests/compute/list_templates.rb
index eb74d98..8b1e737 100644
--- a/lib/fog/ovirt/requests/compute/list_templates.rb
+++ b/lib/fog/ovirt/requests/compute/list_templates.rb
@@ -5,12 +5,11 @@ module Fog
def list_templates(filters = {})
client.templates(filters).map {|ovirt_obj| ovirt_attrs ovirt_obj}
end
-
end
class Mock
def list_templates(filters = {})
xml = read_xml 'templates.xml'
- Nokogiri::XML(xml).xpath('/templates/template').collect do |t|
+ Nokogiri::XML(xml).xpath('/templates/template').map do |t|
ovirt_attrs OVIRT::Template::new(self, t)
end
end
diff --git a/lib/fog/ovirt/requests/compute/list_virtual_machines.rb b/lib/fog/ovirt/requests/compute/list_virtual_machines.rb
index a2d6251..b676065 100644
--- a/lib/fog/ovirt/requests/compute/list_virtual_machines.rb
+++ b/lib/fog/ovirt/requests/compute/list_virtual_machines.rb
@@ -5,12 +5,11 @@ module Fog
def list_virtual_machines(filters = {})
client.vms(filters).map {|ovirt_obj| ovirt_attrs ovirt_obj}
end
-
end
class Mock
def list_virtual_machines(filters = {})
xml = read_xml 'vms.xml'
- Nokogiri::XML(xml).xpath('/vms/vm').collect do |vm|
+ Nokogiri::XML(xml).xpath('/vms/vm').map do |vm|
ovirt_attrs OVIRT::VM::new(self, vm)
end
end
diff --git a/lib/fog/ovirt/requests/compute/list_vm_interfaces.rb b/lib/fog/ovirt/requests/compute/list_vm_interfaces.rb
index 9f744b5..521cc22 100644
--- a/lib/fog/ovirt/requests/compute/list_vm_interfaces.rb
+++ b/lib/fog/ovirt/requests/compute/list_vm_interfaces.rb
@@ -5,12 +5,11 @@ module Fog
def list_vm_interfaces(vm_id)
client.vm_interfaces(vm_id).map {|ovirt_obj| ovirt_attrs ovirt_obj}
end
-
end
class Mock
def list_vm_interfaces(vm_id)
xml = read_xml 'nics.xml'
- Nokogiri::XML(xml).xpath('/nics/nic').collect do |nic|
+ Nokogiri::XML(xml).xpath('/nics/nic').map do |nic|
ovirt_attrs OVIRT::Interface::new(self, nic)
end
end
diff --git a/lib/fog/ovirt/requests/compute/list_vm_volumes.rb b/lib/fog/ovirt/requests/compute/list_vm_volumes.rb
index bfd7b5a..ead11f7 100644
--- a/lib/fog/ovirt/requests/compute/list_vm_volumes.rb
+++ b/lib/fog/ovirt/requests/compute/list_vm_volumes.rb
@@ -5,12 +5,11 @@ module Fog
def list_vm_volumes(vm_id)
client.vm_volumes(vm_id).map {|ovirt_obj| ovirt_attrs ovirt_obj}
end
-
end
class Mock
def list_vm_volumes(vm_id)
xml = read_xml 'volumes.xml'
- Nokogiri::XML(xml).xpath('/disks/disk').collect do |vol|
+ Nokogiri::XML(xml).xpath('/disks/disk').map do |vol|
ovirt_attrs OVIRT::Volume::new(self, vol)
end
end
diff --git a/lib/fog/ovirt/requests/compute/storage_domains.rb b/lib/fog/ovirt/requests/compute/storage_domains.rb
index 557af7d..c06f957 100644
--- a/lib/fog/ovirt/requests/compute/storage_domains.rb
+++ b/lib/fog/ovirt/requests/compute/storage_domains.rb
@@ -2,17 +2,15 @@ module Fog
module Compute
class Ovirt
class Real
-
def storage_domains filter={}
client.storagedomains(filter)
end
-
end
class Mock
def storage_domains(filters = {})
xml = read_xml 'storage_domains.xml'
- Nokogiri::XML(xml).xpath('/storage_domains/storage_domain').collect do |sd|
+ Nokogiri::XML(xml).xpath('/storage_domains/storage_domain').map do |sd|
OVIRT::StorageDomain::new(self, sd)
end
end
diff --git a/lib/fog/ovirt/requests/compute/update_interface.rb b/lib/fog/ovirt/requests/compute/update_interface.rb
index 39c13e8..9d3236e 100644
--- a/lib/fog/ovirt/requests/compute/update_interface.rb
+++ b/lib/fog/ovirt/requests/compute/update_interface.rb
@@ -2,23 +2,20 @@ module Fog
module Compute
class Ovirt
class Real
-
def update_interface(id, options)
raise ArgumentError, "instance id is a required parameter" unless id
- raise ArgumentError, "interface id is a required parameter for update-interface" unless options.has_key? :id
+ raise ArgumentError, "interface id is a required parameter for update-interface" unless options.key? :id
client.update_interface(id, options)
end
-
end
class Mock
def update_interface(id, options)
raise ArgumentError, "instance id is a required parameter" unless id
- raise ArgumentError, "interface id is a required parameter for update-interface" unless options.has_key? :id
+ raise ArgumentError, "interface id is a required parameter for update-interface" unless options.key? :id
true
end
-
end
end
end
diff --git a/lib/fog/ovirt/requests/compute/update_vm.rb b/lib/fog/ovirt/requests/compute/update_vm.rb
index 48ef49b..af7dd0e 100644
--- a/lib/fog/ovirt/requests/compute/update_vm.rb
+++ b/lib/fog/ovirt/requests/compute/update_vm.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Ovirt
-
class Real
def update_vm(attrs)
client.update_vm(attrs)
@@ -13,7 +12,6 @@ module Fog
xml = read_xml('vm.xml')
OVIRT::VM::new(self, Nokogiri::XML(xml).root)
end
-
end
end
end
diff --git a/lib/fog/ovirt/requests/compute/vm_action.rb b/lib/fog/ovirt/requests/compute/vm_action.rb
index d71be38..afa9bb4 100644
--- a/lib/fog/ovirt/requests/compute/vm_action.rb
+++ b/lib/fog/ovirt/requests/compute/vm_action.rb
@@ -2,24 +2,20 @@ module Fog
module Compute
class Ovirt
class Real
-
def vm_action(options = {})
- raise ArgumentError, "instance id is a required parameter" unless options.has_key? :id
- raise ArgumentError, "action is a required parameter" unless options.has_key? :action
+ raise ArgumentError, "instance id is a required parameter" unless options.key? :id
+ raise ArgumentError, "action is a required parameter" unless options.key? :action
client.vm_action options[:id], options[:action]
end
-
end
class Mock
-
def vm_action(options = {})
- raise ArgumentError, "id is a required parameter" unless options.has_key? :id
- raise ArgumentError, "action is a required parameter" unless options.has_key? :action
+ raise ArgumentError, "id is a required parameter" unless options.key? :id
+ raise ArgumentError, "action is a required parameter" unless options.key? :action
true
end
-
end
end
end
diff --git a/lib/fog/ovirt/requests/compute/vm_ticket.rb b/lib/fog/ovirt/requests/compute/vm_ticket.rb
index 86da6aa..140b440 100644
--- a/lib/fog/ovirt/requests/compute/vm_ticket.rb
+++ b/lib/fog/ovirt/requests/compute/vm_ticket.rb
@@ -2,19 +2,15 @@ module Fog
module Compute
class Ovirt
class Real
-
def vm_ticket(id, options = {})
client.set_ticket(id, options)
end
-
end
class Mock
-
def vm_ticket(id, options = {})
"Secret"
end
-
end
end
end
diff --git a/lib/fog/rackspace/auto_scale.rb b/lib/fog/rackspace/auto_scale.rb
index bdcbf46..a5f1e46 100644
--- a/lib/fog/rackspace/auto_scale.rb
+++ b/lib/fog/rackspace/auto_scale.rb
@@ -86,9 +86,7 @@ module Fog
end
end
-
class Real < Fog::Rackspace::Service
-
def initialize(options = {})
@options = options
@options[:connection_options] ||= {}
diff --git a/lib/fog/rackspace/block_storage.rb b/lib/fog/rackspace/block_storage.rb
index 0f5762e..974940b 100644
--- a/lib/fog/rackspace/block_storage.rb
+++ b/lib/fog/rackspace/block_storage.rb
@@ -61,7 +61,7 @@ module Fog
headers = params[:headers] || {}
response = Excon::Response.new(:body => body, :headers => headers, :status => status)
- if params.has_key?(:expects) && ![*params[:expects]].include?(response.status)
+ if params.key?(:expects) && ![*params[:expects]].include?(response.status)
raise(Excon::Errors.status_error(params, response))
else response
end
@@ -139,7 +139,7 @@ module Fog
@rackspace_endpoint = nil
@rackspace_region = :lon
else
- @rackspace_region = options[:rackspace_region] || :dfw
+ @rackspace_region = options[:rackspace_region]
end
else
#if we are using auth1 and the endpoint is not set, default to DFW_ENDPOINT for historical reasons
@@ -154,10 +154,6 @@ module Fog
regions = @identity_service.service_catalog.display_service_regions(service_name)
Fog::Logger.deprecation("Please specify region using :rackspace_region rather than :rackspace_endpoint. Valid region for :rackspace_region are #{regions}.")
end
-
- unless options[:rackspace_region]
- Fog::Logger.deprecation("Default region support will be removed in an upcoming release. Please switch to manually setting your endpoint. This requires setting the :rackspace_region option")
- end
end
def append_tenant_v1(credentials)
@@ -173,7 +169,6 @@ module Fog
append_tenant_v1 credentials
@auth_token = credentials['X-Auth-Token']
end
-
end
end
end
diff --git a/lib/fog/rackspace/cdn.rb b/lib/fog/rackspace/cdn.rb
index 8b65817..a5a89a0 100644
--- a/lib/fog/rackspace/cdn.rb
+++ b/lib/fog/rackspace/cdn.rb
@@ -13,7 +13,6 @@ module Fog
request :put_container
request :delete_object
-
module Base
URI_HEADERS = {
"X-Cdn-Ios-Uri" => :ios_uri,
@@ -30,7 +29,7 @@ module Fog
@connection_options = options[:connection_options] || {}
@rackspace_auth_url = options[:rackspace_auth_url]
@rackspace_cdn_url = options[:rackspace_cdn_url]
- @rackspace_region = options[:rackspace_region] || :dfw
+ @rackspace_region = options[:rackspace_region]
end
def service_name
@@ -130,7 +129,6 @@ module Fog
def reset_data
self.class.data.delete(@rackspace_username)
end
-
end
class Real < Fog::Rackspace::Service
diff --git a/lib/fog/rackspace/compute.rb b/lib/fog/rackspace/compute.rb
index dfd688f..ee92ccd 100644
--- a/lib/fog/rackspace/compute.rb
+++ b/lib/fog/rackspace/compute.rb
@@ -46,7 +46,6 @@ module Fog
request :update_server
class Mock < Fog::Rackspace::Service
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {
@@ -181,11 +180,9 @@ module Fog
def reset_data
self.class.data.delete(@rackspace_username)
end
-
end
class Real < Fog::Rackspace::Service
-
def initialize(options={})
@rackspace_api_key = options[:rackspace_api_key]
@rackspace_username = options[:rackspace_username]
@@ -242,7 +239,7 @@ module Fog
super(@rackspace_endpoint || service_endpoint_url, :rackspace_compute_v1_url)
end
- private
+ private
def deprecation_warnings(options)
Fog::Logger.deprecation("The :rackspace_management_url option is deprecated. Please use :rackspace_compute_v1_url for custom endpoints") if options[:rackspace_management_url]
@@ -253,7 +250,6 @@ module Fog
endpoint_uri credentials['X-Server-Management-Url']
@auth_token = credentials['X-Auth-Token']
end
-
end
end
end
diff --git a/lib/fog/rackspace/compute_v2.rb b/lib/fog/rackspace/compute_v2.rb
index fb24ec2..ca052c2 100644
--- a/lib/fog/rackspace/compute_v2.rb
+++ b/lib/fog/rackspace/compute_v2.rb
@@ -10,7 +10,6 @@ module Fog
class BadRequest < Fog::Rackspace::Errors::BadRequest; end
class InvalidStateException < ::RuntimeError
-
attr_reader :desired_state
attr_reader :current_state
@@ -136,7 +135,7 @@ module Fog
headers = params[:headers] || {}
response = Excon::Response.new(:body => body, :headers => headers, :status => status)
- if params.has_key?(:expects) && ![*params[:expects]].include?(response.status)
+ if params.key?(:expects) && ![*params[:expects]].include?(response.status)
raise(Excon::Errors.status_error(params, response))
else response
end
@@ -144,7 +143,6 @@ module Fog
end
class Real < Fog::Rackspace::Service
-
def initialize(options = {})
@rackspace_api_key = options[:rackspace_api_key]
@rackspace_username = options[:rackspace_username]
@@ -216,7 +214,7 @@ module Fog
@rackspace_region = :lon
else
# we are actually using a custom endpoint
- @rackspace_region = options[:rackspace_region] || :dfw
+ @rackspace_region = options[:rackspace_region]
end
else
#if we are using auth1 and the endpoint is not set, default to DFW_ENDPOINT for historical reasons
@@ -231,10 +229,6 @@ module Fog
regions = @identity_service.service_catalog.display_service_regions(service_name)
Fog::Logger.deprecation("Please specify region using :rackspace_region rather than :rackspace_endpoint. Valid regions for :rackspace_region are #{regions}.")
end
-
- unless options[:rackspace_region]
- Fog::Logger.deprecation("Default region support will be removed in an upcoming release. Please switch to manually setting your endpoint. This requires setting the :rackspace_region option")
- end
end
def append_tenant_v1(credentials)
diff --git a/lib/fog/rackspace/core.rb b/lib/fog/rackspace/core.rb
index a264020..7e22a9b 100644
--- a/lib/fog/rackspace/core.rb
+++ b/lib/fog/rackspace/core.rb
@@ -4,7 +4,6 @@ require 'fog/rackspace/mock_data'
require 'fog/rackspace/service'
require 'fog/rackspace/errors'
-
module Fog
module Rackspace
extend Fog::Provider
@@ -101,7 +100,7 @@ module Fog
def self.authenticate(options, connection_options = {})
rackspace_auth_url = options[:rackspace_auth_url]
- rackspace_auth_url ||= options[:rackspace_endpoint] == Fog::Compute::RackspaceV2::LON_ENDPOINT ? "lon.auth.api.rackspacecloud.com" : "auth.api.rackspacecloud.com"
+ rackspace_auth_url ||= options[:rackspace_endpoint] == Fog::Compute::RackspaceV2::LON_ENDPOINT ? UK_AUTH_ENDPOINT : US_AUTH_ENDPOINT
url = rackspace_auth_url.match(/^https?:/) ? \
rackspace_auth_url : 'https://' + rackspace_auth_url
uri = URI.parse(url)
diff --git a/lib/fog/rackspace/databases.rb b/lib/fog/rackspace/databases.rb
index 569c152..d78913b 100644
--- a/lib/fog/rackspace/databases.rb
+++ b/lib/fog/rackspace/databases.rb
@@ -20,7 +20,6 @@ module Fog
recognizes :rackspace_region
recognizes :rackspace_database_url
-
model_path 'fog/rackspace/models/databases'
model :flavor
collection :flavors
@@ -52,6 +51,8 @@ module Fog
request :list_users
request :create_user
request :delete_user
+ request :grant_user_access
+ request :revoke_user_access
class Mock < Fog::Rackspace::Service
def request(params)
@@ -60,7 +61,6 @@ module Fog
end
class Real < Fog::Rackspace::Service
-
def service_name
:cloudDatabases
end
@@ -128,11 +128,11 @@ module Fog
@rackspace_region = :lon
else
# we are actually using a custom endpoint
- @rackspace_region = options[:rackspace_region] || :dfw
+ @rackspace_region = options[:rackspace_region]
end
else
#if we are using auth1 and the endpoint is not set, default to DFW_ENDPOINT for historical reasons
- @rackspace_endpoint ||= DFW_ENDPOINT
+ @rackspace_endpoint ||= DFW_ENDPOINT
end
end
@@ -143,10 +143,6 @@ module Fog
regions = @identity_service.service_catalog.display_service_regions(service_name)
Fog::Logger.deprecation("Please specify region using :rackspace_region rather than :rackspace_endpoint. Valid region for :rackspace_region are #{regions}.")
end
-
- unless options[:rackspace_region]
- Fog::Logger.deprecation("Default region support will be removed in an upcoming release. Please switch to manually setting your endpoint. This requires setting the :rackspace_region option")
- end
end
def append_tenant_v1(credentials)
diff --git a/lib/fog/rackspace/dns.rb b/lib/fog/rackspace/dns.rb
index f3f8ba5..10e6eb2 100644
--- a/lib/fog/rackspace/dns.rb
+++ b/lib/fog/rackspace/dns.rb
@@ -50,7 +50,6 @@ module Fog
request :add_records
class Mock < Fog::Rackspace::Service
-
def initialize(options={})
@rackspace_api_key = options[:rackspace_api_key]
@rackspace_username = options[:rackspace_username]
@@ -74,11 +73,9 @@ module Fog
def reset_data
self.class.reset
end
-
end
class Real < Fog::Rackspace::Service
-
def service_name
:cloudDNS
end
@@ -128,7 +125,7 @@ module Fog
def array_to_query_string(arr)
return "" unless arr
- query_array = arr.collect do | k, v |
+ query_array = arr.map do | k, v |
val_str = v.is_a?(Array) ? v.join(",") : v.to_s
"#{k}=#{val_str}"
end
diff --git a/lib/fog/rackspace/docs/auto_scale.md b/lib/fog/rackspace/docs/auto_scale.md
index 78704c9..f8a18e6 100644
--- a/lib/fog/rackspace/docs/auto_scale.md
+++ b/lib/fog/rackspace/docs/auto_scale.md
@@ -47,7 +47,7 @@ Next, create a connection to Auto Scale:
Using a US-based account:
- service = Fog::Rackspace::AutoScale(
+ service = Fog::Rackspace::AutoScale.new (
:rackspace_username => RACKSPACE_USER_NAME, # Your Rackspace Username
:rackspace_api_key => RACKSPACE_API, # Your Rackspace API key
:rackspace_region => :ord,
@@ -56,7 +56,7 @@ Using a US-based account:
Using a UK-based account:
- service = Fog::Rackspace::AutoScale(
+ service = Fog::Rackspace::AutoScale.new (
:rackspace_username => RACKSPACE_USER_NAME, # Your Rackspace Username
:rackspace_api_key => RACKSPACE_API, # Your Rackspace API key
:rackspace_auth_url => Fog::Rackspace::UK_AUTH_ENDPOINT,
@@ -70,7 +70,7 @@ By default `Fog::Rackspace::AutoScale` will authenticate against the US authenti
Alternative regions are specified using the key `:rackspace_region `. A list of regions available for Auto Scale can be found by executing the following:
- identity_service = Fog::Identity({
+ identity_service = Fog::Identity.new({
:provider => 'Rackspace', # Rackspace Fog provider
:rackspace_username => RACKSPACE_USER_NAME, # Your Rackspace Username
:rackspace_api_key => RACKSPACE_API, # Your Rackspace API key
@@ -319,7 +319,7 @@ And then use the builder as follows:
],
:max_entities => 3,
:min_entities => 2,
- :cooldown => cooldown,
+ :cooldown => 600,
:name => "MyScalingGroup",
:metadata => { "created_by" => "autoscale sample script" },
:load_balancers => {
@@ -330,6 +330,7 @@ And then use the builder as follows:
}
group = Fog::Rackspace::AutoScale::GroupBuilder.build(service, attributes)
+ group.save
This creates the scaling group with the name `MyScalingGroup`, and returns a `Fog::Rackspace::AutoScale::Group` object representing the new group. Since the `:min_entities` is 2, it immediately creates 2 servers for the group, based on the image whose ID is in the variable `my_image`. When they are created, they are then added to the load balancer whose ID is `1234`, and receive requests on port 80.
@@ -339,6 +340,8 @@ Note that the `:server_name` parameter represents a base string to which Autosca
as92e512fe-testgroup
asedcf7587-testgroup
+**Note**: You will see need to add policies to trigger auto scaling operations. See [Policies Section](#policies) for more information.
+
#### Parameters
Parameter | Required | Default | Notes
---- | ---- | ---- | ----
@@ -355,7 +358,6 @@ Parameter | Required | Default | Notes
**:personality** | no | | Small text files that are created on the new servers. _Personality_ is discussed in the [Rackspace Cloud Servers documentation](http://docs.rackspace.com/servers/api/v2/cs-devguide/content/Server_Personality-d1e2543.html)
**:networks** | no | | Any array of networks to which you want to attach new servers. See the [Create Servers documentation](http://docs.rackspace.com/servers/api/v2/cs-devguide/content/CreateServers.html) for standard network IDs.
**:load_balancers** | no | | Either a hash of {:port, :loadBalancerId} or a `Fog::Rackspace::LoadBalancers::LoadBalancer` object.
-**scaling_policies** | no | | You can define the scaling policies when you create the group, or add them later.
### Updating a Scaling Configuration Group
diff --git a/lib/fog/rackspace/docs/storage.md b/lib/fog/rackspace/docs/storage.md
index 44059fe..f78d396 100644
--- a/lib/fog/rackspace/docs/storage.md
+++ b/lib/fog/rackspace/docs/storage.md
@@ -93,10 +93,6 @@ The Storage service supports the following additional parameters:
<td>:rackspace_cdn_url</td>
<td>The endpoint for the CDN service. By default, Fog::Storage pick the appropriate endpoint for region. This option will typically only be used for Rackspace Private Cloud Access.</td>
</tr>
- <tr>
- <td>:chunk_size</td>
- <td>The chunk size in bytes used for block transfers. By default, Fog uses 1 MB chunks.</td>
- </tr>
</table>
@@ -136,6 +132,10 @@ Fog supports passing additional connection parameters to its underlying HTTP lib
<td>:ssl_verify_peer</td>
<td>SSL verify peer (default: true)</td>
</tr>
+ <tr>
+ <td>:chunk_size</td>
+ <td>The chunk size in bytes used for block transfers. By default, Fog uses 1 MB chunks.</td>
+ </tr>
</table>
diff --git a/lib/fog/rackspace/errors.rb b/lib/fog/rackspace/errors.rb
index 5e140be..73e0c13 100644
--- a/lib/fog/rackspace/errors.rb
+++ b/lib/fog/rackspace/errors.rb
@@ -1,7 +1,6 @@
module Fog
module Rackspace
module Errors
-
def self.included(mod)
mod.class_eval <<-'EOS', __FILE__, __LINE__
class NotFound < Fog::Service::NotFound
diff --git a/lib/fog/rackspace/examples/auto_scale/add_policy.rb b/lib/fog/rackspace/examples/auto_scale/add_policy.rb
index c67680a..ff0fbc3 100644
--- a/lib/fog/rackspace/examples/auto_scale/add_policy.rb
+++ b/lib/fog/rackspace/examples/auto_scale/add_policy.rb
@@ -39,7 +39,6 @@ def select_group(groups)
groups[select_str.to_i]
end
-
# create auto scaling service
auto_scale_service = Fog::Rackspace::AutoScale.new({
:rackspace_username => rackspace_username,
@@ -47,7 +46,6 @@ auto_scale_service = Fog::Rackspace::AutoScale.new({
:rackspace_region => :ord # Use Chicago Region
})
-
# retrieve list of scaling groups
groups = auto_scale_service.groups
diff --git a/lib/fog/rackspace/examples/auto_scale/create_scaling_group.rb b/lib/fog/rackspace/examples/auto_scale/create_scaling_group.rb
index 9069ccc..a3c1ee6 100644
--- a/lib/fog/rackspace/examples/auto_scale/create_scaling_group.rb
+++ b/lib/fog/rackspace/examples/auto_scale/create_scaling_group.rb
@@ -33,7 +33,6 @@ def rackspace_api_key
Fog.credentials[:rackspace_api_key] || get_user_input("Enter Rackspace API key")
end
-
def select_image(images)
puts "\nSelect Image For Server:\n\n"
images.each_with_index do |image, i|
@@ -44,7 +43,6 @@ def select_image(images)
images[select_str.to_i]
end
-
# create auto scaling service
auto_scale_service = Fog::Rackspace::AutoScale.new({
:rackspace_username => rackspace_username,
@@ -52,7 +50,6 @@ auto_scale_service = Fog::Rackspace::AutoScale.new({
:rackspace_region => :ord # Use Chicago Region
})
-
# create Next Generation Cloud Server service to get list of flavors
compute_service = Fog::Compute.new({
:provider => 'rackspace',
@@ -62,7 +59,6 @@ compute_service = Fog::Compute.new({
:rackspace_region => :ord # Use Chicago Region
})
-
# prompt for scaling group name
scaling_group_name = get_user_input "Enter name of scaling group"
diff --git a/lib/fog/rackspace/examples/auto_scale/delete_scaling_group.rb b/lib/fog/rackspace/examples/auto_scale/delete_scaling_group.rb
index ae6ef68..c6c7629 100644
--- a/lib/fog/rackspace/examples/auto_scale/delete_scaling_group.rb
+++ b/lib/fog/rackspace/examples/auto_scale/delete_scaling_group.rb
@@ -34,7 +34,6 @@ def select_group(groups)
groups[select_str.to_i]
end
-
# create auto scaling service
auto_scale_service = Fog::Rackspace::AutoScale.new({
:rackspace_username => rackspace_username,
@@ -42,7 +41,6 @@ auto_scale_service = Fog::Rackspace::AutoScale.new({
:rackspace_region => :ord # Use Chicago Region
})
-
# retrieve list of scaling groups
groups = auto_scale_service.groups
diff --git a/lib/fog/rackspace/examples/auto_scale/delete_webhook.rb b/lib/fog/rackspace/examples/auto_scale/delete_webhook.rb
index afba4bf..d03b638 100644
--- a/lib/fog/rackspace/examples/auto_scale/delete_webhook.rb
+++ b/lib/fog/rackspace/examples/auto_scale/delete_webhook.rb
@@ -9,7 +9,6 @@ def get_user_input(prompt)
gets.chomp
end
-
# Use username defined in ~/.fog file, if absent prompt for username.
# For more details on ~/.fog refer to http://fog.io/about/getting_started.html
def rackspace_username
@@ -59,7 +58,6 @@ def select_webhook(webhooks)
webhooks[select_str.to_i]
end
-
# create auto scaling service
auto_scale_service = Fog::Rackspace::AutoScale.new({
:rackspace_username => rackspace_username,
diff --git a/lib/fog/rackspace/examples/block_storage/create_snapshot.rb b/lib/fog/rackspace/examples/block_storage/create_snapshot.rb
index f435de5..1408556 100644
--- a/lib/fog/rackspace/examples/block_storage/create_snapshot.rb
+++ b/lib/fog/rackspace/examples/block_storage/create_snapshot.rb
@@ -83,7 +83,6 @@ puts "* Volume must be unmounted from operating system before detaching. *"
puts "* This script assumes volume has been unmounted. *"
puts "********************************************************************\n\n"
-
volume = cbs_service.volumes.get attachment.volume_id
# The snapshot process requires all writes to be flushed to disk. This requires unmounting the file systems or detaching the volume.
@@ -115,4 +114,3 @@ rescue Fog::Errors::TimeoutError
puts "The snapshot #{snapshot.display_name} is still being preformed and is taking longer to complete than expected."
puts "You can continute to monitor the process through the web console at https://mycloud.rackspace.com/\n\n"
end
-
diff --git a/lib/fog/rackspace/examples/compute_v2/bootstrap_server.rb b/lib/fog/rackspace/examples/compute_v2/bootstrap_server.rb
index 942d0d8..2a02ae1 100644
--- a/lib/fog/rackspace/examples/compute_v2/bootstrap_server.rb
+++ b/lib/fog/rackspace/examples/compute_v2/bootstrap_server.rb
@@ -94,5 +94,3 @@ rescue Fog::Errors::TimeoutError
end
puts "To delete the server please execute the delete_server.rb script\n\n"
-
-
diff --git a/lib/fog/rackspace/examples/compute_v2/create_image.rb b/lib/fog/rackspace/examples/compute_v2/create_image.rb
index 2c93e2d..77ba217 100644
--- a/lib/fog/rackspace/examples/compute_v2/create_image.rb
+++ b/lib/fog/rackspace/examples/compute_v2/create_image.rb
@@ -57,5 +57,3 @@ server.create_image image_name
puts "\nImage #{image_name} is being created for server #{server.name}.\n\n"
puts "To delete the image please execute the delete_image.rb script\n\n"
-
-
diff --git a/lib/fog/rackspace/examples/compute_v2/create_server.rb b/lib/fog/rackspace/examples/compute_v2/create_server.rb
index e6a2ba8..b300d2c 100644
--- a/lib/fog/rackspace/examples/compute_v2/create_server.rb
+++ b/lib/fog/rackspace/examples/compute_v2/create_server.rb
@@ -85,5 +85,3 @@ end
puts "The #{server.username} password is #{server.password}\n\n"
puts "To delete the server please execute the delete_server.rb script\n\n"
-
-
diff --git a/lib/fog/rackspace/examples/compute_v2/delete_image.rb b/lib/fog/rackspace/examples/compute_v2/delete_image.rb
index 0d9f3cc..912ef4b 100644
--- a/lib/fog/rackspace/examples/compute_v2/delete_image.rb
+++ b/lib/fog/rackspace/examples/compute_v2/delete_image.rb
@@ -58,4 +58,3 @@ image = select_image(snapshot_images)
image.destroy
puts "\n#{image.name} has been destroyed\n\n"
-
diff --git a/lib/fog/rackspace/examples/compute_v2/delete_server.rb b/lib/fog/rackspace/examples/compute_v2/delete_server.rb
index 0d21ab3..5e5eb0d 100644
--- a/lib/fog/rackspace/examples/compute_v2/delete_server.rb
+++ b/lib/fog/rackspace/examples/compute_v2/delete_server.rb
@@ -53,4 +53,3 @@ server = select_server(servers)
server.destroy
puts "\nServer #{server.name} has been destroyed\n"
-
diff --git a/lib/fog/rackspace/examples/compute_v2/server_attachments.rb b/lib/fog/rackspace/examples/compute_v2/server_attachments.rb
index 041e7ce..53e0de3 100644
--- a/lib/fog/rackspace/examples/compute_v2/server_attachments.rb
+++ b/lib/fog/rackspace/examples/compute_v2/server_attachments.rb
@@ -66,4 +66,3 @@ attachment = server.attach_volume volume
puts "\nVolume #{volume.display_name} has been attached to #{server.name} on device #{attachment.device}\n\n"
puts "To detach volume please execute the detach_volume.rb script\n\n"
-
diff --git a/lib/fog/rackspace/examples/compute_v2/server_metadata.rb b/lib/fog/rackspace/examples/compute_v2/server_metadata.rb
index a79deb0..03decf0 100644
--- a/lib/fog/rackspace/examples/compute_v2/server_metadata.rb
+++ b/lib/fog/rackspace/examples/compute_v2/server_metadata.rb
@@ -81,5 +81,3 @@ server.metadata.reload
print_metadata(server)
puts "To delete the server please execute the delete_server.rb script\n\n"
-
-
diff --git a/lib/fog/rackspace/examples/queues/delete_message.rb b/lib/fog/rackspace/examples/queues/delete_message.rb
index aa84c88..6fb7afd 100644
--- a/lib/fog/rackspace/examples/queues/delete_message.rb
+++ b/lib/fog/rackspace/examples/queues/delete_message.rb
@@ -34,7 +34,6 @@ def select_message(messages)
messages[delete_str.to_i]
end
-
# Use username defined in ~/.fog file, if absent prompt for username.
# For more details on ~/.fog refer to http://fog.io/about/getting_started.html
def rackspace_username
diff --git a/lib/fog/rackspace/examples/storage/create_cdn_directory.rb b/lib/fog/rackspace/examples/storage/create_cdn_directory.rb
index 9cbd0e7..86e2aed 100644
--- a/lib/fog/rackspace/examples/storage/create_cdn_directory.rb
+++ b/lib/fog/rackspace/examples/storage/create_cdn_directory.rb
@@ -41,4 +41,3 @@ directory.reload
puts "\nDirectory #{directory.key} was created."
puts "To delete the container please execute the delete_directory.rb script\n\n"
-
diff --git a/lib/fog/rackspace/examples/storage/create_private_directory.rb b/lib/fog/rackspace/examples/storage/create_private_directory.rb
index 439f597..9ae7a1b 100644
--- a/lib/fog/rackspace/examples/storage/create_private_directory.rb
+++ b/lib/fog/rackspace/examples/storage/create_private_directory.rb
@@ -30,7 +30,6 @@ service = Fog::Storage.new({
:rackspace_region => :ord #Use Chicago Region
})
-
# prompt for directory name
directory_name = get_user_input "\nEnter name of directory to create"
@@ -42,5 +41,3 @@ directory.reload
puts "\n Directory #{directory.key} was created."
puts "To delete the container please execute the delete_directory.rb script\n\n"
-
-
diff --git a/lib/fog/rackspace/examples/storage/storage_metadata.rb b/lib/fog/rackspace/examples/storage/storage_metadata.rb
index 698867b..3b29a2b 100644
--- a/lib/fog/rackspace/examples/storage/storage_metadata.rb
+++ b/lib/fog/rackspace/examples/storage/storage_metadata.rb
@@ -32,7 +32,6 @@ service = Fog::Storage.new({
:rackspace_region => :ord #Use Chicago Region
})
-
# create directory
puts "Creating directory 'metadata-tester'"
directory = service.directories.create :key => "metadata-tester"
@@ -75,8 +74,3 @@ file.save
print_metadata file
puts "To delete the directory and file please execute the delete_directory.rb script\n\n"
-
-
-
-
-
diff --git a/lib/fog/rackspace/examples/storage/upload_file.rb b/lib/fog/rackspace/examples/storage/upload_file.rb
index 6ccb8ba..b718816 100644
--- a/lib/fog/rackspace/examples/storage/upload_file.rb
+++ b/lib/fog/rackspace/examples/storage/upload_file.rb
@@ -42,4 +42,3 @@ file = directory.files.create :key => 'sample.txt', :body => File.open(upload_fi
puts "You should be able to view this file via CDN at #{file.public_url}"
puts "To delete the container and associated file please execute the delete_directory.rb script\n\n"
-
diff --git a/lib/fog/rackspace/examples/storage/upload_large_files.rb b/lib/fog/rackspace/examples/storage/upload_large_files.rb
index 29d5a69..52f9d59 100644
--- a/lib/fog/rackspace/examples/storage/upload_large_files.rb
+++ b/lib/fog/rackspace/examples/storage/upload_large_files.rb
@@ -49,7 +49,6 @@ service = Fog::Storage.new({
:rackspace_region => :ord
})
-
# retrieve directories with files
directories = service.directories
@@ -64,7 +63,6 @@ File.open(file_name) do |f|
num_segments = (f.stat.size / SEGMENT_LIMIT).round + 1
puts "\nThis upload of '#{file_name}' will require #{num_segments} segment(s) and 1 manifest file\n"
-
segment = 0
until f.eof?
segment += 1
diff --git a/lib/fog/rackspace/identity.rb b/lib/fog/rackspace/identity.rb
index cef5cce..ec86a5c 100644
--- a/lib/fog/rackspace/identity.rb
+++ b/lib/fog/rackspace/identity.rb
@@ -3,7 +3,6 @@ require 'fog/rackspace/core'
module Fog
module Rackspace
class Identity < Fog::Service
-
US_ENDPOINT = 'https://identity.api.rackspacecloud.com/v2.0'
UK_ENDPOINT = 'https://lon.identity.api.rackspacecloud.com/v2.0'
diff --git a/lib/fog/rackspace/load_balancers.rb b/lib/fog/rackspace/load_balancers.rb
index 56ca430..8655656 100644
--- a/lib/fog/rackspace/load_balancers.rb
+++ b/lib/fog/rackspace/load_balancers.rb
@@ -76,9 +76,8 @@ module Fog
request :get_stats
module Shared
-
def algorithms
- list_algorithms.body['algorithms'].collect { |i| i['name'] }
+ list_algorithms.body['algorithms'].map { |i| i['name'] }
end
def protocols
@@ -88,7 +87,6 @@ module Fog
def usage(options = {})
get_usage(options).body
end
-
end
class Mock < Fog::Rackspace::Service
@@ -99,7 +97,6 @@ module Fog
@rackspace_username = options[:rackspace_username]
@rackspace_auth_url = options[:rackspace_auth_url]
end
-
end
class Real < Fog::Rackspace::Service
@@ -173,7 +170,7 @@ module Fog
@rackspace_region = :lon
else
# we are actually using a custom endpoint
- @rackspace_region = options[:rackspace_region] || :dfw
+ @rackspace_region = options[:rackspace_region]
end
else
#if we are using auth1 and the endpoint is not set, default to DFW_ENDPOINT for historical reasons
@@ -188,10 +185,6 @@ module Fog
regions = @identity_service.service_catalog.display_service_regions(service_name)
Fog::Logger.deprecation("Please specify region using :rackspace_region rather than :rackspace_endpoint. Valid regions for :rackspace_region are #{regions}.")
end
-
- unless options[:rackspace_region]
- Fog::Logger.deprecation("Default region support will be removed in an upcoming release. Please switch to manually setting your endpoint. This requires setting the :rackspace_region option")
- end
end
def append_tenant_v1(credentials)
@@ -207,7 +200,6 @@ module Fog
append_tenant_v1 credentials
@auth_token = credentials['X-Auth-Token']
end
-
end
end
end
diff --git a/lib/fog/rackspace/mock_data.rb b/lib/fog/rackspace/mock_data.rb
index 060a38f..c39f639 100644
--- a/lib/fog/rackspace/mock_data.rb
+++ b/lib/fog/rackspace/mock_data.rb
@@ -1,7 +1,6 @@
module Fog
module Rackspace
module MockData
-
NOT_FOUND_ID = "NOT-FOUND"
def data
diff --git a/lib/fog/rackspace/models/auto_scale/group.rb b/lib/fog/rackspace/models/auto_scale/group.rb
index eb5ef72..595cabf 100644
--- a/lib/fog/rackspace/models/auto_scale/group.rb
+++ b/lib/fog/rackspace/models/auto_scale/group.rb
@@ -7,7 +7,6 @@ module Fog
module Rackspace
class AutoScale
class Group < Fog::Model
-
# @!attribute [r] id
# @return [String] The autoscale group's id
identity :id
@@ -29,7 +28,7 @@ module Fog
#
# @see http://docs.rackspace.com/cas/api/v1.0/autoscale-devguide/content/GET_getGroupConfig_v1.0__tenantId__groups__groupId__config_Configurations.html
def group_config
- if attributes[:group_config].nil?
+ if attributes[:group_config].nil? && persisted?
data = service.get_group_config(identity)
attributes[:group_config] = load_model('GroupConfig', data.body['groupConfiguration'])
end
@@ -60,7 +59,7 @@ module Fog
#
# @see http://docs.rackspace.com/cas/api/v1.0/autoscale-devguide/content/GET_getLaunchConfig_v1.0__tenantId__groups__groupId__launch_Configurations.html
def launch_config
- if attributes[:launch_config].nil?
+ if attributes[:launch_config].nil? && persisted?
data = service.get_launch_config(identity)
attributes[:launch_config] = load_model('LaunchConfig', data.body['launchConfiguration'])
end
@@ -86,7 +85,16 @@ module Fog
#
# @see http://docs.rackspace.com/cas/api/v1.0/autoscale-devguide/content/GET_getPolicies_v1.0__tenantId__groups__groupId__policies_Policies.html
def policies
- @policies ||= load_model('Policies')
+ return @policies if @policies
+ if persisted?
+ @policies = load_model('Policies')
+ else
+ @policies = Fog::Rackspace::AutoScale::Policies.new(:service => service, :group => self)
+ @policies.clear
+ end
+ @policies
+ # return nil unless persisted?
+ # @policies ||= load_model('Policies')
end
# Creates group
@@ -200,7 +208,6 @@ module Fog
end
model
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/auto_scale/group_builder.rb b/lib/fog/rackspace/models/auto_scale/group_builder.rb
index 905cdd0..962b40b 100644
--- a/lib/fog/rackspace/models/auto_scale/group_builder.rb
+++ b/lib/fog/rackspace/models/auto_scale/group_builder.rb
@@ -7,7 +7,6 @@ module Fog
module Rackspace
class AutoScale
class GroupBuilder
-
class << self
def build(service, attributes)
service.groups.new :group_config => build_group_config(attributes), :launch_config => build_server_launch_config(attributes)
@@ -35,7 +34,7 @@ module Fog
return nil unless attributes[:load_balancers]
load_balancers = attributes[:load_balancers].is_a?(Array) ? attributes[:load_balancers] : [attributes[:load_balancers]]
- load_balancers.collect do |obj|
+ load_balancers.map do |obj|
obj.is_a?(Hash) ? obj : load_balancer_to_hash(obj)
end
end
@@ -61,6 +60,8 @@ module Fog
}
server_template["personality"] = attributes[:personality] if attributes[:personality]
+ server_template["user_data"] = [attributes[:user_data]].pack('m') if attributes[:user_data]
+ server_template["config_drive"] = 'true' if attributes[:config_drive]
server_template["networks"] = networks_to_hash(attributes[:networks]) if attributes[:networks]
server_template
end
@@ -76,7 +77,7 @@ module Fog
end
def networks_to_hash(networks)
- networks.collect {|n| {"uuid" => n}}
+ networks.map {|n| {"uuid" => n}}
end
end
end
diff --git a/lib/fog/rackspace/models/auto_scale/group_config.rb b/lib/fog/rackspace/models/auto_scale/group_config.rb
index 88553fe..462fdcd 100644
--- a/lib/fog/rackspace/models/auto_scale/group_config.rb
+++ b/lib/fog/rackspace/models/auto_scale/group_config.rb
@@ -4,7 +4,6 @@ module Fog
module Rackspace
class AutoScale
class GroupConfig < Fog::Model
-
# @!attribute [r] group
# @return [Fog::Rackspace::AutoScale::Group] The parent group
attribute :group
@@ -40,7 +39,6 @@ module Fog
#
# @see http://docs.rackspace.com/cas/api/v1.0/autoscale-devguide/content/PUT_putGroupConfig_v1.0__tenantId__groups__groupId__config_Configurations.html
def update
-
options = {}
options['name'] = name unless name.nil?
options['cooldown'] = cooldown unless cooldown.nil?
@@ -72,7 +70,6 @@ module Fog
merge_attributes data.body['groupConfiguration']
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/auto_scale/groups.rb b/lib/fog/rackspace/models/auto_scale/groups.rb
index 5fe9ea9..e4dfd07 100644
--- a/lib/fog/rackspace/models/auto_scale/groups.rb
+++ b/lib/fog/rackspace/models/auto_scale/groups.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class AutoScale
class Groups < Fog::Collection
-
model Fog::Rackspace::AutoScale::Group
# Returns list of autoscale groups
diff --git a/lib/fog/rackspace/models/auto_scale/launch_config.rb b/lib/fog/rackspace/models/auto_scale/launch_config.rb
index 23871d5..1275bd7 100644
--- a/lib/fog/rackspace/models/auto_scale/launch_config.rb
+++ b/lib/fog/rackspace/models/auto_scale/launch_config.rb
@@ -4,15 +4,14 @@ module Fog
module Rackspace
class AutoScale
class LaunchConfig < Fog::Model
-
# @!attribute [r] group
# @return [Fog::Rackspace::AutoScale::Group] The parent group
attribute :group
-
+
# @!attribute [r] type
# @return [Fog::Rackspace::AutoScale::Group] The type of operation (usually "launch_server")
attribute :type
-
+
# @!attribute [r] args
# @return [Fog::Rackspace::AutoScale::Group] The arguments for the operation
attribute :args
@@ -28,7 +27,6 @@ module Fog
#
# @see http://docs.rackspace.com/cas/api/v1.0/autoscale-devguide/content/PUT_putLaunchConfig_v1.0__tenantId__groups__groupId__launch_Configurations.html
def update
-
options = {}
options['type'] = type unless type.nil?
options['args'] = args unless args.nil?
@@ -57,7 +55,6 @@ module Fog
merge_attributes data.body['launchConfiguration']
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/auto_scale/policies.rb b/lib/fog/rackspace/models/auto_scale/policies.rb
index 5f77f2b..ad066ba 100644
--- a/lib/fog/rackspace/models/auto_scale/policies.rb
+++ b/lib/fog/rackspace/models/auto_scale/policies.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class AutoScale
class Policies < Fog::Collection
-
model Fog::Rackspace::AutoScale::Policy
attr_accessor :group
@@ -60,7 +59,6 @@ module Fog
def new(attributes = {})
super({:group => group}.merge(attributes))
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/auto_scale/policy.rb b/lib/fog/rackspace/models/auto_scale/policy.rb
index 56d8d62..5d96518 100644
--- a/lib/fog/rackspace/models/auto_scale/policy.rb
+++ b/lib/fog/rackspace/models/auto_scale/policy.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class AutoScale
class Policy < Fog::Model
-
# @!attribute [r] id
# @return [String] The policy id
identity :id
@@ -215,7 +214,6 @@ module Fog
:group => group
})
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/auto_scale/webhook.rb b/lib/fog/rackspace/models/auto_scale/webhook.rb
index 8da6e53..87dd27a 100644
--- a/lib/fog/rackspace/models/auto_scale/webhook.rb
+++ b/lib/fog/rackspace/models/auto_scale/webhook.rb
@@ -4,7 +4,6 @@ module Fog
module Rackspace
class AutoScale
class Webhook < Fog::Model
-
# @!attribute [r] id
# @return [String] The webhook id
identity :id
@@ -111,7 +110,6 @@ module Fog
link = links.find { |l| l['rel'] == 'capability' }
link['href'] rescue nil
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/auto_scale/webhooks.rb b/lib/fog/rackspace/models/auto_scale/webhooks.rb
index c1c1662..ee6b0a0 100644
--- a/lib/fog/rackspace/models/auto_scale/webhooks.rb
+++ b/lib/fog/rackspace/models/auto_scale/webhooks.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class AutoScale
class Webhooks < Fog::Collection
-
model Fog::Rackspace::AutoScale::Webhook
attr_accessor :group
diff --git a/lib/fog/rackspace/models/block_storage/snapshots.rb b/lib/fog/rackspace/models/block_storage/snapshots.rb
index a10c66b..d216d1c 100644
--- a/lib/fog/rackspace/models/block_storage/snapshots.rb
+++ b/lib/fog/rackspace/models/block_storage/snapshots.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class BlockStorage
class Snapshots < Fog::Collection
-
model Fog::Rackspace::BlockStorage::Snapshot
# Returns list of snapshots
diff --git a/lib/fog/rackspace/models/block_storage/volume.rb b/lib/fog/rackspace/models/block_storage/volume.rb
index fd4896e..2e9cacc 100644
--- a/lib/fog/rackspace/models/block_storage/volume.rb
+++ b/lib/fog/rackspace/models/block_storage/volume.rb
@@ -48,6 +48,10 @@ module Fog
# @return [String] region of the volume
attribute :availability_zone
+ # @!attribute [rw] image_id
+ # @return [String] The ID of an image used to create a bootable volume.
+ attribute :image_id, :aliases => ['image', 'imageRef'], :squash => 'id'
+
# Returns true if the volume is in a ready state
# @return [Boolean] returns true if volume is in a ready state
def ready?
@@ -70,7 +74,6 @@ module Fog
service.snapshots.select { |s| s.volume_id == identity }
end
-
# Creates a snapshot from the current volume
# @param [Hash] options
# @option options [String] :display_name of snapshot
@@ -105,7 +108,8 @@ module Fog
:display_description => display_description,
:volume_type => volume_type,
:availability_zone => availability_zone,
- :snapshot_id => attributes[:snapshot_id]
+ :snapshot_id => attributes[:snapshot_id],
+ :image_id => attributes[:image_id]
})
merge_attributes(data.body['volume'])
true
diff --git a/lib/fog/rackspace/models/block_storage/volume_type.rb b/lib/fog/rackspace/models/block_storage/volume_type.rb
index 731e0d1..84454c6 100644
--- a/lib/fog/rackspace/models/block_storage/volume_type.rb
+++ b/lib/fog/rackspace/models/block_storage/volume_type.rb
@@ -4,7 +4,6 @@ module Fog
module Rackspace
class BlockStorage
class VolumeType < Fog::Model
-
# @!attribute [r] id
# @return [String] The volume type id
identity :id
diff --git a/lib/fog/rackspace/models/block_storage/volume_types.rb b/lib/fog/rackspace/models/block_storage/volume_types.rb
index 09f58c3..b15baa7 100644
--- a/lib/fog/rackspace/models/block_storage/volume_types.rb
+++ b/lib/fog/rackspace/models/block_storage/volume_types.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class BlockStorage
class VolumeTypes < Fog::Collection
-
model Fog::Rackspace::BlockStorage::VolumeType
# Returns list of volume types
diff --git a/lib/fog/rackspace/models/block_storage/volumes.rb b/lib/fog/rackspace/models/block_storage/volumes.rb
index 261091b..b1e5452 100644
--- a/lib/fog/rackspace/models/block_storage/volumes.rb
+++ b/lib/fog/rackspace/models/block_storage/volumes.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class BlockStorage
class Volumes < Fog::Collection
-
model Fog::Rackspace::BlockStorage::Volume
# Returns list of volumes
diff --git a/lib/fog/rackspace/models/compute/flavor.rb b/lib/fog/rackspace/models/compute/flavor.rb
index 4972312..13c4906 100644
--- a/lib/fog/rackspace/models/compute/flavor.rb
+++ b/lib/fog/rackspace/models/compute/flavor.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Rackspace
-
class Flavor < Fog::Model
-
identity :id
attribute :disk
@@ -38,9 +36,7 @@ module Fog
2
end
end
-
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/compute/flavors.rb b/lib/fog/rackspace/models/compute/flavors.rb
index 301a0bc..590527d 100644
--- a/lib/fog/rackspace/models/compute/flavors.rb
+++ b/lib/fog/rackspace/models/compute/flavors.rb
@@ -4,9 +4,7 @@ require 'fog/rackspace/models/compute/flavor'
module Fog
module Compute
class Rackspace
-
class Flavors < Fog::Collection
-
model Fog::Compute::Rackspace::Flavor
def all
@@ -20,9 +18,7 @@ module Fog
rescue Fog::Compute::Rackspace::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/compute/image.rb b/lib/fog/rackspace/models/compute/image.rb
index 1e423b8..89238f4 100644
--- a/lib/fog/rackspace/models/compute/image.rb
+++ b/lib/fog/rackspace/models/compute/image.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Rackspace
-
class Image < Fog::Model
-
identity :id
attribute :name
@@ -40,9 +38,7 @@ module Fog
merge_attributes(data.body['image'])
true
end
-
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/compute/images.rb b/lib/fog/rackspace/models/compute/images.rb
index e2c18cc..80e4c51 100644
--- a/lib/fog/rackspace/models/compute/images.rb
+++ b/lib/fog/rackspace/models/compute/images.rb
@@ -4,9 +4,7 @@ require 'fog/rackspace/models/compute/image'
module Fog
module Compute
class Rackspace
-
class Images < Fog::Collection
-
model Fog::Compute::Rackspace::Image
attribute :server
@@ -27,9 +25,7 @@ module Fog
rescue Fog::Compute::Rackspace::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/compute/server.rb b/lib/fog/rackspace/models/compute/server.rb
index 9bb4a5e..b4d9631 100644
--- a/lib/fog/rackspace/models/compute/server.rb
+++ b/lib/fog/rackspace/models/compute/server.rb
@@ -3,9 +3,7 @@ require 'fog/compute/models/server'
module Fog
module Compute
class Rackspace
-
class Server < Fog::Compute::Server
-
identity :id
attribute :addresses
@@ -98,10 +96,7 @@ module Fog
def adminPass=(new_admin_pass)
@password = new_admin_pass
end
-
end
-
end
end
-
end
diff --git a/lib/fog/rackspace/models/compute/servers.rb b/lib/fog/rackspace/models/compute/servers.rb
index 907fff4..b32968e 100644
--- a/lib/fog/rackspace/models/compute/servers.rb
+++ b/lib/fog/rackspace/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/rackspace/models/compute/server'
module Fog
module Compute
class Rackspace
-
class Servers < Fog::Collection
-
model Fog::Compute::Rackspace::Server
def all
@@ -28,9 +26,7 @@ module Fog
rescue Fog::Compute::Rackspace::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/compute_v2/attachment.rb b/lib/fog/rackspace/models/compute_v2/attachment.rb
index 4bdb8ba..55e5171 100644
--- a/lib/fog/rackspace/models/compute_v2/attachment.rb
+++ b/lib/fog/rackspace/models/compute_v2/attachment.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class RackspaceV2
class Attachment < Fog::Model
-
# @!attribute [r] server_id
# @return [String] The server id
attribute :server_id, :aliases => 'serverId'
@@ -50,9 +49,9 @@ module Fog
service.delete_attachment(server_id, volume_id)
true
end
- alias :detach :destroy
+ alias_method :detach, :destroy
- private
+ private
def server
collection.server
end
diff --git a/lib/fog/rackspace/models/compute_v2/attachments.rb b/lib/fog/rackspace/models/compute_v2/attachments.rb
index 9933533..afb03e4 100644
--- a/lib/fog/rackspace/models/compute_v2/attachments.rb
+++ b/lib/fog/rackspace/models/compute_v2/attachments.rb
@@ -5,7 +5,6 @@ module Fog
module Compute
class RackspaceV2
class Attachments < Fog::Collection
-
model Fog::Compute::RackspaceV2::Attachment
attr_accessor :server
diff --git a/lib/fog/rackspace/models/compute_v2/flavor.rb b/lib/fog/rackspace/models/compute_v2/flavor.rb
index 538a060..da38ee3 100644
--- a/lib/fog/rackspace/models/compute_v2/flavor.rb
+++ b/lib/fog/rackspace/models/compute_v2/flavor.rb
@@ -4,12 +4,10 @@ module Fog
module Compute
class RackspaceV2
class Flavor < Fog::Model
-
# @!attribute [r] id
# @return [String] The flavor id
identity :id
-
# @!attribute [r] name
# @return [String] flavor name
attribute :name
diff --git a/lib/fog/rackspace/models/compute_v2/flavors.rb b/lib/fog/rackspace/models/compute_v2/flavors.rb
index 9c6f5a7..5991d42 100644
--- a/lib/fog/rackspace/models/compute_v2/flavors.rb
+++ b/lib/fog/rackspace/models/compute_v2/flavors.rb
@@ -5,7 +5,6 @@ module Fog
module Compute
class RackspaceV2
class Flavors < Fog::Collection
-
model Fog::Compute::RackspaceV2::Flavor
# Retrieves information for all available flavors
diff --git a/lib/fog/rackspace/models/compute_v2/image.rb b/lib/fog/rackspace/models/compute_v2/image.rb
index 74e98a2..d2f75b4 100644
--- a/lib/fog/rackspace/models/compute_v2/image.rb
+++ b/lib/fog/rackspace/models/compute_v2/image.rb
@@ -102,7 +102,6 @@ module Fog
state == ready_state
end
-
# Destroy image
# @raise [Fog::Compute::RackspaceV2::NotFound] - HTTP 404
# @raise [Fog::Compute::RackspaceV2::BadRequest] - HTTP 400
diff --git a/lib/fog/rackspace/models/compute_v2/images.rb b/lib/fog/rackspace/models/compute_v2/images.rb
index 9dcacf3..185c119 100644
--- a/lib/fog/rackspace/models/compute_v2/images.rb
+++ b/lib/fog/rackspace/models/compute_v2/images.rb
@@ -5,7 +5,6 @@ module Fog
module Compute
class RackspaceV2
class Images < Fog::Collection
-
# @!attribute [rw] name
# @return [String] Given a string value x, filters the list of images by image name.
attribute :name
diff --git a/lib/fog/rackspace/models/compute_v2/key_pair.rb b/lib/fog/rackspace/models/compute_v2/key_pair.rb
index b004140..e6ec591 100644
--- a/lib/fog/rackspace/models/compute_v2/key_pair.rb
+++ b/lib/fog/rackspace/models/compute_v2/key_pair.rb
@@ -4,7 +4,6 @@ module Fog
module Compute
class RackspaceV2
class KeyPair < Fog::Model
-
# @!attribute [rw] name
# @return [String] the keypair name
identity :name
@@ -49,7 +48,6 @@ module Fog
service.delete_keypair(identity)
true
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/compute_v2/key_pairs.rb b/lib/fog/rackspace/models/compute_v2/key_pairs.rb
index dd152ed..aba09ff 100644
--- a/lib/fog/rackspace/models/compute_v2/key_pairs.rb
+++ b/lib/fog/rackspace/models/compute_v2/key_pairs.rb
@@ -4,9 +4,7 @@ require 'fog/rackspace/models/compute_v2/key_pair'
module Fog
module Compute
class RackspaceV2
-
class KeyPairs < Fog::Collection
-
model Fog::Compute::RackspaceV2::KeyPair
# Fetch the list of known keypairs
@@ -36,7 +34,6 @@ module Fog
nil
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/compute_v2/meta_parent.rb b/lib/fog/rackspace/models/compute_v2/meta_parent.rb
index 4c996ab..8a37b1a 100644
--- a/lib/fog/rackspace/models/compute_v2/meta_parent.rb
+++ b/lib/fog/rackspace/models/compute_v2/meta_parent.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
module MetaParent
-
# Parent of metadata
# @return [#parent] parent of metadata
def parent
@@ -35,7 +34,6 @@ module Fog
metas.each { |meta| hash[meta.key] = meta.value }
hash
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/compute_v2/metadata.rb b/lib/fog/rackspace/models/compute_v2/metadata.rb
index ac2d057..71adba4 100644
--- a/lib/fog/rackspace/models/compute_v2/metadata.rb
+++ b/lib/fog/rackspace/models/compute_v2/metadata.rb
@@ -7,9 +7,7 @@ require 'fog/rackspace/models/compute_v2/server'
module Fog
module Compute
class RackspaceV2
-
class Metadata < Fog::Collection
-
model Fog::Compute::RackspaceV2::Metadatum
include Fog::Compute::RackspaceV2::MetaParent
@@ -104,7 +102,6 @@ module Fog
self.each { |datum| h[datum.key] = datum.value }
h
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/compute_v2/metadatum.rb b/lib/fog/rackspace/models/compute_v2/metadatum.rb
index 3bd03c2..03ebf0a 100644
--- a/lib/fog/rackspace/models/compute_v2/metadatum.rb
+++ b/lib/fog/rackspace/models/compute_v2/metadatum.rb
@@ -5,7 +5,6 @@ module Fog
module Compute
class RackspaceV2
class Metadatum < Fog::Model
-
include Fog::Compute::RackspaceV2::MetaParent
identity :key
@@ -34,7 +33,6 @@ module Fog
service.set_metadata_item(collection_name, parent.id, key, value)
true
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/compute_v2/server.rb b/lib/fog/rackspace/models/compute_v2/server.rb
index a43cb17..6b84c1a 100644
--- a/lib/fog/rackspace/models/compute_v2/server.rb
+++ b/lib/fog/rackspace/models/compute_v2/server.rb
@@ -111,7 +111,6 @@ module Fog
# and so on, and enables you to manage the disk configuration.
attribute :disk_config, :aliases => 'OS-DCF:diskConfig'
-
# @!attribute [rw] config_drive_ext
# @return [Boolean] whether a read-only configuration drive is attached
# @see http://docs.rackspace.com/servers/api/v2/cs-devguide/content/config_drive_ext.html
@@ -149,6 +148,16 @@ module Fog
# @see http://docs.rackspace.com/servers/api/v2/cs-devguide/content/List_Images-d1e4435.html
attribute :image_id, :aliases => 'image', :squash => 'id'
+ # @!attribute [w] boot_volume_id
+ # @return [String] The ID of a bootable volume from the BlockStorage service.
+ # @see http://developer.openstack.org/api-ref-compute-v2-ext.html#ext-os-block-device-mapping-v2-boot
+ attribute :boot_volume_id
+
+ # @!attribute [w] boot_image_id
+ # @return [String] The ID of an image to create a bootable volume from.
+ # @see http://developer.openstack.org/api-ref-compute-v2-ext.html#ext-os-block-device-mapping-v2-boot
+ attribute :boot_image_id
+
# @!attribute [rw] password
# @return [String] Password for system adminstrator account.
# @see http://docs.rackspace.com/servers/api/v2/cs-devguide/content/Server_Passwords-d1e2510.html
@@ -160,16 +169,15 @@ module Fog
# @note The key_pair/key_name is used to specify the keypair used for server creation. It is not populated by cloud servers.
attribute :key_name
-
def initialize(attributes={})
@service = attributes[:service]
super
end
- alias :access_ipv4_address :ipv4_address
- alias :access_ipv4_address= :ipv4_address=
- alias :access_ipv6_address :ipv6_address
- alias :access_ipv6_address= :ipv6_address=
+ alias_method :access_ipv4_address, :ipv4_address
+ alias_method :access_ipv4_address=, :ipv4_address=
+ alias_method :access_ipv6_address, :ipv6_address
+ alias_method :access_ipv6_address=, :ipv6_address=
# Server metadata
# @return [Fog::Compute::RackspaceV2::Metadata] metadata key value pairs.
@@ -223,7 +231,8 @@ module Fog
# Creates server
# * requires attributes: service:, :name, :image_id, and :flavor_id
- # * optional attributes :disk_config, :metadata, :personality, :config_drive
+ # * optional attributes :disk_config, :metadata, :personality, :config_drive, :boot_volume_id, :boot_image_id
+ # * :image_id should be "" if :boot_volume_id or :boot_image_id are provided.
# @return [Boolean] returns true if server is being created
# @raise [Fog::Compute::RackspaceV2::NotFound] - HTTP 404
# @raise [Fog::Compute::RackspaceV2::BadRequest] - HTTP 400
@@ -253,10 +262,13 @@ module Fog
modified_options[:config_drive] = config_drive unless config_drive.nil?
modified_options[:user_data] = user_data_encoded unless user_data_encoded.nil?
modified_options[:key_name] ||= attributes[:key_name]
+ modified_options[:boot_volume_id] ||= attributes[:boot_volume_id]
+ modified_options[:boot_image_id] ||= attributes[:boot_image_id]
if modified_options[:networks]
modified_options[:networks].map! { |id| { :uuid => id } }
end
+
data = service.create_server(name, image_id, flavor_id, 1, 1, modified_options)
merge_attributes(data.body['server'])
true
@@ -426,7 +438,6 @@ module Fog
true
end
-
# Rebuild removes all data on the server and replaces it with the specified image. The id and all IP addresses remain the same.
# @param [String] image_id image to use for rebuild
# @return [Boolean] returns true if rebuild is in process
@@ -554,7 +565,7 @@ module Fog
# @note Though Rackspace does not enforce complexity requirements for the password, the operating system might. If the password is not complex enough, the server might enter an ERROR state.
# @see http://docs.rackspace.com/servers/api/v2/cs-devguide/content/Change_Password-d1e3234.html
#
- # * Status Transition:
+ # * Status Transition:
# * ACTIVE -> PASSWORD -> ACTIVE
# * ACTIVE -> PASSWORD -> ERROR (on error)
def change_admin_password(password)
@@ -570,6 +581,8 @@ module Fog
def setup(credentials = {})
requires :ssh_ip_address, :identity, :public_key, :username
+ retried_disconnect = false
+
commands = [
%{mkdir .ssh},
%{echo "#{public_key}" >> ~/.ssh/authorized_keys},
@@ -585,6 +598,14 @@ module Fog
rescue Errno::ECONNREFUSED
sleep(1)
retry
+ # Ubuntu 12.04 images seem to be disconnecting during the ssh setup process.
+ # This rescue block is an effort to address that issue.
+ rescue Net::SSH::Disconnect
+ unless retried_disconnect
+ retried_disconnect = true
+ sleep(1)
+ retry
+ end
end
def virtual_interfaces
diff --git a/lib/fog/rackspace/models/compute_v2/servers.rb b/lib/fog/rackspace/models/compute_v2/servers.rb
index 695f541..c8b8548 100644
--- a/lib/fog/rackspace/models/compute_v2/servers.rb
+++ b/lib/fog/rackspace/models/compute_v2/servers.rb
@@ -4,9 +4,7 @@ require 'fog/rackspace/models/compute_v2/server'
module Fog
module Compute
class RackspaceV2
-
class Servers < Fog::Collection
-
model Fog::Compute::RackspaceV2::Server
# Returns list of servers
diff --git a/lib/fog/rackspace/models/compute_v2/virtual_interface.rb b/lib/fog/rackspace/models/compute_v2/virtual_interface.rb
index f4bffb3..0854591 100644
--- a/lib/fog/rackspace/models/compute_v2/virtual_interface.rb
+++ b/lib/fog/rackspace/models/compute_v2/virtual_interface.rb
@@ -5,7 +5,6 @@ module Fog
module Compute
class RackspaceV2
class VirtualInterface < Fog::Model
-
# @!attribute [r] id
# @return [String] The virtual interface id
identity :id
@@ -80,7 +79,6 @@ module Fog
def network_id
attributes[:network].is_a?(Network) ? attributes[:network].id : attributes[:network]
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/databases/database.rb b/lib/fog/rackspace/models/databases/database.rb
index a9f277b..ad89a7e 100644
--- a/lib/fog/rackspace/models/databases/database.rb
+++ b/lib/fog/rackspace/models/databases/database.rb
@@ -21,6 +21,17 @@ module Fog
true
end
+ def grant_access_for(user)
+ requires :identity, :instance
+ service.grant_user_access(instance.identity, user, name)
+ end
+
+ def revoke_access_for(user)
+ requires :identity, :instance
+ service.revoke_user_access(instance.identity, user, name)
+ end
+
+
private
def instance
diff --git a/lib/fog/rackspace/models/databases/databases.rb b/lib/fog/rackspace/models/databases/databases.rb
index a3cc076..0c21ba5 100644
--- a/lib/fog/rackspace/models/databases/databases.rb
+++ b/lib/fog/rackspace/models/databases/databases.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Databases
class Databases < Fog::Collection
-
model Fog::Rackspace::Databases::Database
attr_accessor :instance
diff --git a/lib/fog/rackspace/models/databases/flavors.rb b/lib/fog/rackspace/models/databases/flavors.rb
index 6cd9385..f53d7a2 100644
--- a/lib/fog/rackspace/models/databases/flavors.rb
+++ b/lib/fog/rackspace/models/databases/flavors.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Databases
class Flavors < Fog::Collection
-
model Fog::Rackspace::Databases::Flavor
def all
diff --git a/lib/fog/rackspace/models/databases/instances.rb b/lib/fog/rackspace/models/databases/instances.rb
index 31a75d5..6bb9164 100644
--- a/lib/fog/rackspace/models/databases/instances.rb
+++ b/lib/fog/rackspace/models/databases/instances.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Databases
class Instances < Fog::Collection
-
model Fog::Rackspace::Databases::Instance
def all
diff --git a/lib/fog/rackspace/models/databases/user.rb b/lib/fog/rackspace/models/databases/user.rb
index f467447..95ca05b 100644
--- a/lib/fog/rackspace/models/databases/user.rb
+++ b/lib/fog/rackspace/models/databases/user.rb
@@ -8,10 +8,11 @@ module Fog
attribute :password
attribute :databases
+ attribute :host
def save
requires :identity, :instance, :password
- service.create_user(instance.identity, identity, password, :databases => databases)
+ service.create_user(instance.identity, identity, password, :databases => databases, :host => host)
true
end
diff --git a/lib/fog/rackspace/models/databases/users.rb b/lib/fog/rackspace/models/databases/users.rb
index ad37777..bfad020 100644
--- a/lib/fog/rackspace/models/databases/users.rb
+++ b/lib/fog/rackspace/models/databases/users.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Databases
class Users < Fog::Collection
-
model Fog::Rackspace::Databases::User
attr_accessor :instance
diff --git a/lib/fog/rackspace/models/dns/callback.rb b/lib/fog/rackspace/models/dns/callback.rb
index 33c0c53..a0bfb28 100644
--- a/lib/fog/rackspace/models/dns/callback.rb
+++ b/lib/fog/rackspace/models/dns/callback.rb
@@ -1,9 +1,7 @@
module Fog
module DNS
class Rackspace
-
module Callback
-
protected
def wait_for_job(job_id, timeout=Fog.timeout, interval=1)
diff --git a/lib/fog/rackspace/models/dns/record.rb b/lib/fog/rackspace/models/dns/record.rb
index dafa462..ddd974c 100644
--- a/lib/fog/rackspace/models/dns/record.rb
+++ b/lib/fog/rackspace/models/dns/record.rb
@@ -5,7 +5,6 @@ require 'ipaddr'
module Fog
module DNS
class Rackspace
-
class Record < Fog::Model
include Fog::DNS::Rackspace::Callback
extend Fog::Deprecation
@@ -93,7 +92,6 @@ module Fog
def zone=(new_zone)
@zone = new_zone
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/dns/records.rb b/lib/fog/rackspace/models/dns/records.rb
index 5ce3f19..7a47ad7 100644
--- a/lib/fog/rackspace/models/dns/records.rb
+++ b/lib/fog/rackspace/models/dns/records.rb
@@ -4,9 +4,7 @@ require 'fog/rackspace/models/dns/record'
module Fog
module DNS
class Rackspace
-
class Records < Fog::Collection
-
attribute :zone
attribute :total_entries, :aliases => 'totalEntries'
@@ -18,7 +16,7 @@ module Fog
load(data.body['records'])
end
- alias :each_record_this_page :each
+ alias_method :each_record_this_page, :each
def each
requires :zone
diff --git a/lib/fog/rackspace/models/dns/zone.rb b/lib/fog/rackspace/models/dns/zone.rb
index a1a0c89..badb814 100644
--- a/lib/fog/rackspace/models/dns/zone.rb
+++ b/lib/fog/rackspace/models/dns/zone.rb
@@ -4,7 +4,6 @@ require 'fog/rackspace/models/dns/records'
module Fog
module DNS
class Rackspace
-
class Zone < Fog::Model
include Fog::DNS::Rackspace::Callback
diff --git a/lib/fog/rackspace/models/dns/zones.rb b/lib/fog/rackspace/models/dns/zones.rb
index 59bc84d..e69d7df 100644
--- a/lib/fog/rackspace/models/dns/zones.rb
+++ b/lib/fog/rackspace/models/dns/zones.rb
@@ -5,7 +5,6 @@ module Fog
module DNS
class Rackspace
class Zones < Fog::Collection
-
attribute :total_entries, :aliases => "totalEntries"
model Fog::DNS::Rackspace::Zone
@@ -23,7 +22,7 @@ module Fog
load(body['domains'])
end
- alias :each_zone_this_page :each
+ alias_method :each_zone_this_page, :each
def each
return self unless block_given?
@@ -69,7 +68,6 @@ module Fog
CGI.parse uri.query
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/identity/credentials.rb b/lib/fog/rackspace/models/identity/credentials.rb
index ebab09e..de8600f 100644
--- a/lib/fog/rackspace/models/identity/credentials.rb
+++ b/lib/fog/rackspace/models/identity/credentials.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Identity
class Credentials < Fog::Collection
-
model Fog::Rackspace::Identity::Credential
attr_accessor :user
diff --git a/lib/fog/rackspace/models/identity/roles.rb b/lib/fog/rackspace/models/identity/roles.rb
index c433296..7274a06 100644
--- a/lib/fog/rackspace/models/identity/roles.rb
+++ b/lib/fog/rackspace/models/identity/roles.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Identity
class Roles < Fog::Collection
-
model Fog::Rackspace::Identity::Role
attr_accessor :user
diff --git a/lib/fog/rackspace/models/identity/service_catalog.rb b/lib/fog/rackspace/models/identity/service_catalog.rb
index 0e54553..02b5775 100644
--- a/lib/fog/rackspace/models/identity/service_catalog.rb
+++ b/lib/fog/rackspace/models/identity/service_catalog.rb
@@ -12,7 +12,7 @@ module Fog
end
def services
- catalog.collect {|s| s["name"]}
+ catalog.map {|s| s["name"]}
end
def get_endpoints(service_name, service_net=false)
@@ -22,10 +22,9 @@ module Fog
h["endpoints"].select {|e| e[key]}
end
-
def display_service_regions(service_name, service_net=false)
endpoints = get_endpoints(service_name, service_net)
- regions = endpoints.collect do |e|
+ regions = endpoints.map do |e|
e["region"] ? ":#{e["region"].downcase}" : ":global"
end
regions.join(", ")
@@ -79,7 +78,6 @@ module Fog
return region.to_s.upcase if region.is_a? Symbol
(region.nil? || region.empty?) ? "GLOBAL" : region.to_s.upcase
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/identity/tenants.rb b/lib/fog/rackspace/models/identity/tenants.rb
index 269de91..f68ad3a 100644
--- a/lib/fog/rackspace/models/identity/tenants.rb
+++ b/lib/fog/rackspace/models/identity/tenants.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Identity
class Tenants < Fog::Collection
-
model Fog::Rackspace::Identity::Tenant
def all
diff --git a/lib/fog/rackspace/models/identity/users.rb b/lib/fog/rackspace/models/identity/users.rb
index 646dadf..7045820 100644
--- a/lib/fog/rackspace/models/identity/users.rb
+++ b/lib/fog/rackspace/models/identity/users.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Identity
class Users < Fog::Collection
-
model Fog::Rackspace::Identity::User
def all
diff --git a/lib/fog/rackspace/models/load_balancers/access_rule.rb b/lib/fog/rackspace/models/load_balancers/access_rule.rb
index 34f86ae..415a1eb 100644
--- a/lib/fog/rackspace/models/load_balancers/access_rule.rb
+++ b/lib/fog/rackspace/models/load_balancers/access_rule.rb
@@ -4,7 +4,6 @@ module Fog
module Rackspace
class LoadBalancers
class AccessRule < Fog::Model
-
identity :id
attribute :address
diff --git a/lib/fog/rackspace/models/load_balancers/load_balancer.rb b/lib/fog/rackspace/models/load_balancers/load_balancer.rb
index cca2b6a..b203cb6 100644
--- a/lib/fog/rackspace/models/load_balancers/load_balancer.rb
+++ b/lib/fog/rackspace/models/load_balancers/load_balancer.rb
@@ -4,7 +4,6 @@ module Fog
module Rackspace
class LoadBalancers
class LoadBalancer < Fog::Model
-
#States
ACTIVE = 'ACTIVE'
ERROR = 'ERROR'
@@ -28,6 +27,7 @@ module Fog
attribute :state, :aliases => 'status'
attribute :timeout
attribute :nodes
+ attribute :https_redirect, :aliases => 'httpsRedirect'
def initialize(attributes)
#HACK - Since we are hacking how sub-collections work, we have to make sure the service is valid first.
@@ -37,11 +37,15 @@ module Fog
end
def access_rules
- @access_rules ||= begin
- Fog::Rackspace::LoadBalancers::AccessRules.new({
+ unless @access_rules
+ @access_rules = Fog::Rackspace::LoadBalancers::AccessRules.new({
:service => service,
:load_balancer => self})
+
+ # prevents loading access rules from non-existent load balancers
+ @access_rules.clear unless persisted?
end
+ @access_rules
end
def access_rules=(new_access_rules=[])
@@ -49,17 +53,33 @@ module Fog
end
def nodes
- @nodes ||= begin
- Fog::Rackspace::LoadBalancers::Nodes.new({
- :service => service,
- :load_balancer => self})
+ if @nodes.nil?
+ @nodes = Fog::Rackspace::LoadBalancers::Nodes.new({
+ :service => service,
+ :load_balancer => self})
+
+ # prevents loading nodes from non-existent load balancers
+ @nodes.clear unless persisted?
end
+ @nodes
end
def nodes=(new_nodes=[])
nodes.load(new_nodes)
end
+ def https_redirect
+ if @https_redirect.nil?
+ requires :identity
+ @https_redirect = begin
+ service.get_load_balancer(identity).body['loadBalancer']['httpsRedirect']
+ rescue => e
+ nil
+ end
+ end
+ @https_redirect
+ end
+
def ssl_termination
requires :identity
ssl_termination = service.get_ssl_termination(identity).body['sslTermination']
@@ -78,11 +98,13 @@ module Fog
end
def virtual_ips
- @virtual_ips ||= begin
- Fog::Rackspace::LoadBalancers::VirtualIps.new({
+ if @virtual_ips.nil?
+ @virtual_ips = Fog::Rackspace::LoadBalancers::VirtualIps.new({
:service => service,
:load_balancer => self})
+ @virtual_ips.clear unless persisted?
end
+ @virtual_ips
end
def virtual_ips=(new_virtual_ips=[])
@@ -217,44 +239,35 @@ module Fog
end
private
+
def create
- requires :name, :protocol, :port, :virtual_ips, :nodes
+ requires :name, :protocol, :virtual_ips
options = {}
options[:algorithm] = algorithm if algorithm
options[:timeout] = timeout if timeout
- data = service.create_load_balancer(name, protocol, port, virtual_ips_hash, nodes_hash, options)
+ data = service.create_load_balancer(name, protocol, port, virtual_ips, nodes, options)
merge_attributes(data.body['loadBalancer'])
end
def update
- requires :name, :protocol, :port, :algorithm, :timeout
+ requires :name, :protocol, :port, :algorithm, :timeout, :https_redirect
options = {
:name => name,
:algorithm => algorithm,
:protocol => protocol,
:port => port,
- :timeout => timeout }
+ :timeout => timeout,
+ :https_redirect => !!https_redirect
+ }
+
service.update_load_balancer(identity, options)
- #TODO - Should this bubble down to nodes? Without tracking changes this would be very inefficient.
+ # TODO - Should this bubble down to nodes? Without tracking changes this would be very inefficient.
# For now, individual nodes will have to be saved individually after saving an LB
end
- def virtual_ips_hash
- virtual_ips.collect do |virtual_ip|
- { :type => virtual_ip.type }
- end
-
- end
-
- def nodes_hash
- nodes.collect do |node|
- { :address => node.address, :port => node.port, :condition => node.condition, :weight => node.weight }
- end
- end
-
def connection_logging=(new_value)
if !new_value.nil? and new_value.is_a?(Hash)
attributes[:connection_logging] = case new_value['enabled']
diff --git a/lib/fog/rackspace/models/load_balancers/load_balancers.rb b/lib/fog/rackspace/models/load_balancers/load_balancers.rb
index 21aad40..c6b0150 100644
--- a/lib/fog/rackspace/models/load_balancers/load_balancers.rb
+++ b/lib/fog/rackspace/models/load_balancers/load_balancers.rb
@@ -4,9 +4,7 @@ require 'fog/rackspace/models/load_balancers/load_balancer'
module Fog
module Rackspace
class LoadBalancers
-
class LoadBalancers < Fog::Collection
-
model Fog::Rackspace::LoadBalancers::LoadBalancer
def all
diff --git a/lib/fog/rackspace/models/load_balancers/node.rb b/lib/fog/rackspace/models/load_balancers/node.rb
index 9a77ef8..947df34 100644
--- a/lib/fog/rackspace/models/load_balancers/node.rb
+++ b/lib/fog/rackspace/models/load_balancers/node.rb
@@ -4,7 +4,6 @@ module Fog
module Rackspace
class LoadBalancers
class Node < Fog::Model
-
identity :id
attribute :address
@@ -32,6 +31,7 @@ module Fog
def load_balancer
collection.load_balancer
end
+
def create
requires :load_balancer, :address, :condition, :port
options = {}
diff --git a/lib/fog/rackspace/models/load_balancers/virtual_ip.rb b/lib/fog/rackspace/models/load_balancers/virtual_ip.rb
index 94e14ec..68d0e04 100644
--- a/lib/fog/rackspace/models/load_balancers/virtual_ip.rb
+++ b/lib/fog/rackspace/models/load_balancers/virtual_ip.rb
@@ -4,7 +4,6 @@ module Fog
module Rackspace
class LoadBalancers
class VirtualIp < Fog::Model
-
identity :id
attribute :address
diff --git a/lib/fog/rackspace/models/monitoring/agent_token.rb b/lib/fog/rackspace/models/monitoring/agent_token.rb
index f429bc3..9917e54 100644
--- a/lib/fog/rackspace/models/monitoring/agent_token.rb
+++ b/lib/fog/rackspace/models/monitoring/agent_token.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Monitoring
class AgentToken < Fog::Rackspace::Monitoring::Base
-
identity :id
attribute :label
@@ -33,7 +32,6 @@ module Fog
requires :id
service.delete_agent_token(id)
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/monitoring/agent_tokens.rb b/lib/fog/rackspace/models/monitoring/agent_tokens.rb
index a4f524f..fac2fcf 100644
--- a/lib/fog/rackspace/models/monitoring/agent_tokens.rb
+++ b/lib/fog/rackspace/models/monitoring/agent_tokens.rb
@@ -5,12 +5,14 @@ module Fog
module Rackspace
class Monitoring
class AgentTokens < Fog::Collection
+ attribute :marker
model Fog::Rackspace::Monitoring::AgentToken
def all(options={})
clear
body = service.list_agent_tokens(options).body
+ self.marker = body['metadata']['next_marker']
load(body['values'])
end
@@ -21,7 +23,6 @@ module Fog
rescue Fog::Rackspace::Monitoring::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/monitoring/alarm.rb b/lib/fog/rackspace/models/monitoring/alarm.rb
index a59fa07..1079516 100644
--- a/lib/fog/rackspace/models/monitoring/alarm.rb
+++ b/lib/fog/rackspace/models/monitoring/alarm.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Monitoring
class Alarm < Fog::Rackspace::Monitoring::Base
-
identity :id
attribute :entity, :aliases => 'entity_id'
attribute :check, :aliases => 'check_id'
@@ -53,9 +52,7 @@ module Fog
requires :id
service.delete_alarm(entity.id, id)
end
-
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/monitoring/alarm_example.rb b/lib/fog/rackspace/models/monitoring/alarm_example.rb
index a3f7b25..f01cca4 100644
--- a/lib/fog/rackspace/models/monitoring/alarm_example.rb
+++ b/lib/fog/rackspace/models/monitoring/alarm_example.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Monitoring
class AlarmExample < Fog::Rackspace::Monitoring::Base
-
identity :id
attribute :label
@@ -14,7 +13,6 @@ module Fog
attribute :criteria
attribute :fields
-
attribute :bound_criteria
def bound?
diff --git a/lib/fog/rackspace/models/monitoring/alarm_examples.rb b/lib/fog/rackspace/models/monitoring/alarm_examples.rb
index 3b879c1..1ab7d8d 100644
--- a/lib/fog/rackspace/models/monitoring/alarm_examples.rb
+++ b/lib/fog/rackspace/models/monitoring/alarm_examples.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Monitoring
class AlarmExamples < Fog::Collection
-
model Fog::Rackspace::Monitoring::AlarmExample
def all
@@ -24,7 +23,6 @@ module Fog
data = service.evaluate_alarm_example(alarm_example_id, options).body
new(data)
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/monitoring/alarms.rb b/lib/fog/rackspace/models/monitoring/alarms.rb
index ce14353..296575b 100644
--- a/lib/fog/rackspace/models/monitoring/alarms.rb
+++ b/lib/fog/rackspace/models/monitoring/alarms.rb
@@ -5,15 +5,17 @@ module Fog
module Rackspace
class Monitoring
class Alarms < Fog::Collection
-
attribute :entity
+ attribute :marker
model Fog::Rackspace::Monitoring::Alarm
- def all
+ def all(options={})
requires :entity
- data = service.list_alarms(entity.identity).body['values']
- load(data)
+ data = service.list_alarms(entity.identity, options).body
+ self.marker = data['metadata']['next_marker']
+
+ load(data['values'])
end
def get(alarm_id)
@@ -33,7 +35,6 @@ module Fog
requires :entity
super({ :entity => entity }.merge!(attributes))
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/monitoring/base.rb b/lib/fog/rackspace/models/monitoring/base.rb
index 0cb1668..011f3f1 100644
--- a/lib/fog/rackspace/models/monitoring/base.rb
+++ b/lib/fog/rackspace/models/monitoring/base.rb
@@ -4,7 +4,6 @@ module Fog
module Rackspace
class Monitoring
class Base < Fog::Model
-
attribute :created_at
attribute :updated_at
diff --git a/lib/fog/rackspace/models/monitoring/check.rb b/lib/fog/rackspace/models/monitoring/check.rb
index 6fdd707..0cdb045 100644
--- a/lib/fog/rackspace/models/monitoring/check.rb
+++ b/lib/fog/rackspace/models/monitoring/check.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Monitoring
class Check < Fog::Rackspace::Monitoring::Base
-
identity :id
attribute :entity
@@ -67,9 +66,7 @@ module Fog
)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/monitoring/check_types.rb b/lib/fog/rackspace/models/monitoring/check_types.rb
index eab71e7..4551336 100644
--- a/lib/fog/rackspace/models/monitoring/check_types.rb
+++ b/lib/fog/rackspace/models/monitoring/check_types.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Monitoring
class CheckTypes < Fog::Collection
-
model Fog::Rackspace::Monitoring::CheckType
def all
@@ -16,7 +15,6 @@ module Fog
def new(attributes = {})
super({ }.merge!(attributes))
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/monitoring/checks.rb b/lib/fog/rackspace/models/monitoring/checks.rb
index b55bb6e..1296db9 100644
--- a/lib/fog/rackspace/models/monitoring/checks.rb
+++ b/lib/fog/rackspace/models/monitoring/checks.rb
@@ -5,15 +5,17 @@ module Fog
module Rackspace
class Monitoring
class Checks < Fog::Collection
-
attribute :entity
+ attribute :marker
model Fog::Rackspace::Monitoring::Check
- def all
+ def all(options={})
requires :entity
- data = service.list_checks(entity.identity).body['values']
- load(data)
+ data = service.list_checks(entity.identity, options).body
+ self.marker = data['metadata']['next_marker']
+
+ load(data['values'])
end
def get(check_id)
@@ -33,7 +35,6 @@ module Fog
requires :entity unless attributes[:entity]
super({ :entity => entity }.merge!(attributes))
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/monitoring/data_points.rb b/lib/fog/rackspace/models/monitoring/data_points.rb
index 476b443..a236bd0 100644
--- a/lib/fog/rackspace/models/monitoring/data_points.rb
+++ b/lib/fog/rackspace/models/monitoring/data_points.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Monitoring
class DataPoints < Fog::Collection
-
attribute :metric
model Fog::Rackspace::Monitoring::DataPoint
@@ -42,7 +41,6 @@ module Fog
requires :metric
super({ :metric => metric }.merge!(attributes))
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/monitoring/entities.rb b/lib/fog/rackspace/models/monitoring/entities.rb
index c990dfa..5805a24 100644
--- a/lib/fog/rackspace/models/monitoring/entities.rb
+++ b/lib/fog/rackspace/models/monitoring/entities.rb
@@ -6,7 +6,6 @@ module Fog
module Rackspace
class Monitoring
class Entities < Fog::Collection
-
model Fog::Rackspace::Monitoring::Entity
attribute :marker
@@ -27,7 +26,7 @@ module Fog
def overview(options={})
body = service.list_overview(options).body
- marker = body['metadata']['next_marker']
+ self.marker = body['metadata']['next_marker']
load_all(body['values'])
end
diff --git a/lib/fog/rackspace/models/monitoring/entity.rb b/lib/fog/rackspace/models/monitoring/entity.rb
index 8966ce1..18ac4b5 100644
--- a/lib/fog/rackspace/models/monitoring/entity.rb
+++ b/lib/fog/rackspace/models/monitoring/entity.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Monitoring
class Entity < Fog::Rackspace::Monitoring::Base
-
identity :id
attribute :label
@@ -57,7 +56,6 @@ module Fog
requires :id
service.delete_entity(id)
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/monitoring/metric.rb b/lib/fog/rackspace/models/monitoring/metric.rb
index ce24c82..055b53e 100644
--- a/lib/fog/rackspace/models/monitoring/metric.rb
+++ b/lib/fog/rackspace/models/monitoring/metric.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Monitoring
class Metric < Fog::Rackspace::Monitoring::Base
-
identity :name
attribute :check
@@ -17,9 +16,7 @@ module Fog
)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/monitoring/metrics.rb b/lib/fog/rackspace/models/monitoring/metrics.rb
index 8e33a35..66dc06f 100644
--- a/lib/fog/rackspace/models/monitoring/metrics.rb
+++ b/lib/fog/rackspace/models/monitoring/metrics.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Monitoring
class Metrics < Fog::Collection
-
attribute :check
model Fog::Rackspace::Monitoring::Metric
@@ -20,7 +19,6 @@ module Fog
requires :check
super({ :check => check }.merge!(attributes))
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/monitoring/notification.rb b/lib/fog/rackspace/models/monitoring/notification.rb
index 3ee89f1..94a975e 100644
--- a/lib/fog/rackspace/models/monitoring/notification.rb
+++ b/lib/fog/rackspace/models/monitoring/notification.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Monitoring
class Notification < Fog::Rackspace::Monitoring::Base
-
identity :id
attribute :label
@@ -35,7 +34,6 @@ module Fog
requires :id
service.delete_notification(id)
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/monitoring/notifications.rb b/lib/fog/rackspace/models/monitoring/notifications.rb
index 7e2297e..e12af0c 100644
--- a/lib/fog/rackspace/models/monitoring/notifications.rb
+++ b/lib/fog/rackspace/models/monitoring/notifications.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Monitoring
class Notifications < Fog::Collection
-
model Fog::Rackspace::Monitoring::Notification
attribute :marker
@@ -23,7 +22,6 @@ module Fog
rescue Fog::Rackspace::Monitoring::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/queues/claim.rb b/lib/fog/rackspace/models/queues/claim.rb
index 1e44030..d053600 100644
--- a/lib/fog/rackspace/models/queues/claim.rb
+++ b/lib/fog/rackspace/models/queues/claim.rb
@@ -4,7 +4,6 @@ module Fog
module Rackspace
class Queues
class Claim < Fog::Model
-
# @!attribute [r] identity
# @return [String] The claim's id
identity :identity
@@ -29,7 +28,7 @@ module Fog
# If limit is not specified, limit defaults to 10.
attribute :messages
- alias :id :identity
+ alias_method :id, :identity
# Creates or updates a claim
#
@@ -78,7 +77,7 @@ module Fog
:client_id => service.client_id,
:echo => true
})
- attributes[:messages] = messages.collect do |message|
+ attributes[:messages] = messages.map do |message|
if message.instance_of? Fog::Rackspace::Queues::Message
message.claim_id = self.id
message
diff --git a/lib/fog/rackspace/models/queues/claims.rb b/lib/fog/rackspace/models/queues/claims.rb
index 83802b3..4c3960c 100644
--- a/lib/fog/rackspace/models/queues/claims.rb
+++ b/lib/fog/rackspace/models/queues/claims.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Queues
class Claims < Fog::Collection
-
model Fog::Rackspace::Queues::Claim
# @!attribute [rw] queue
diff --git a/lib/fog/rackspace/models/queues/message.rb b/lib/fog/rackspace/models/queues/message.rb
index 9e6ca26..199240d 100644
--- a/lib/fog/rackspace/models/queues/message.rb
+++ b/lib/fog/rackspace/models/queues/message.rb
@@ -4,7 +4,6 @@ module Fog
module Rackspace
class Queues
class Message < Fog::Model
-
# @!attribute [r] age
# @return [Integer] The number of seconds relative to the server's clock.
attribute :age
@@ -35,7 +34,7 @@ module Fog
match = href.match(/\A.*\/queues\/[a-zA-Z0-9_-]{0,64}\/messages\/(.+?)(?:\?|\z)/i)
match ? match[1] : nil
end
- alias :id :identity
+ alias_method :id, :identity
# Creates messages
# Requires queue, client_id, body, and ttl attributes to be populated
diff --git a/lib/fog/rackspace/models/queues/messages.rb b/lib/fog/rackspace/models/queues/messages.rb
index 375e8fa..00dfb3f 100644
--- a/lib/fog/rackspace/models/queues/messages.rb
+++ b/lib/fog/rackspace/models/queues/messages.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Queues
class Messages < Fog::Collection
-
model Fog::Rackspace::Queues::Message
# @!attribute [r] client_id
diff --git a/lib/fog/rackspace/models/queues/queue.rb b/lib/fog/rackspace/models/queues/queue.rb
index 7309110..4fbb23d 100644
--- a/lib/fog/rackspace/models/queues/queue.rb
+++ b/lib/fog/rackspace/models/queues/queue.rb
@@ -4,7 +4,6 @@ module Fog
module Rackspace
class Queues
class Queue < Fog::Model
-
# @!attribute [rw] name
# @return [String] name of queue
identity :name
diff --git a/lib/fog/rackspace/models/queues/queues.rb b/lib/fog/rackspace/models/queues/queues.rb
index 3b835ea..e17a9e6 100644
--- a/lib/fog/rackspace/models/queues/queues.rb
+++ b/lib/fog/rackspace/models/queues/queues.rb
@@ -5,7 +5,6 @@ module Fog
module Rackspace
class Queues
class Queues < Fog::Collection
-
model Fog::Rackspace::Queues::Queue
# Returns list of queues
diff --git a/lib/fog/rackspace/models/storage/directories.rb b/lib/fog/rackspace/models/storage/directories.rb
index 91f6a3f..c65821b 100644
--- a/lib/fog/rackspace/models/storage/directories.rb
+++ b/lib/fog/rackspace/models/storage/directories.rb
@@ -4,9 +4,7 @@ require 'fog/rackspace/models/storage/directory'
module Fog
module Storage
class Rackspace
-
class Directories < Fog::Collection
-
model Fog::Storage::Rackspace::Directory
# Returns list of directories
@@ -58,9 +56,7 @@ module Fog
rescue Fog::Storage::Rackspace::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/storage/directory.rb b/lib/fog/rackspace/models/storage/directory.rb
index b17742e..e41bef5 100644
--- a/lib/fog/rackspace/models/storage/directory.rb
+++ b/lib/fog/rackspace/models/storage/directory.rb
@@ -5,9 +5,7 @@ require 'fog/rackspace/models/storage/metadata'
module Fog
module Storage
class Rackspace
-
class Directory < Fog::Model
-
# @!attribute [r] key
# @return [String] The name of the directory
identity :key, :aliases => 'name'
diff --git a/lib/fog/rackspace/models/storage/file.rb b/lib/fog/rackspace/models/storage/file.rb
index b255b2d..bdc011d 100644
--- a/lib/fog/rackspace/models/storage/file.rb
+++ b/lib/fog/rackspace/models/storage/file.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Storage
class Rackspace
-
class File < Fog::Model
-
# @!attribute [r] key
# @return [String] The name of the file
identity :key, :aliases => 'name'
@@ -178,7 +176,6 @@ module Fog
directory.public?
end
-
# Get a url for file.
#
# required attributes: key
@@ -284,7 +281,6 @@ module Fog
merge_attributes(data.headers.reject {|key, value| ['Content-Length', 'Content-Type'].include?(key)})
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/storage/files.rb b/lib/fog/rackspace/models/storage/files.rb
index fe0afe8..e97341d 100644
--- a/lib/fog/rackspace/models/storage/files.rb
+++ b/lib/fog/rackspace/models/storage/files.rb
@@ -4,9 +4,7 @@ require 'fog/rackspace/models/storage/file'
module Fog
module Storage
class Rackspace
-
class Files < Fog::Collection
-
# @!attribute [rw] directory
# @return [String] The name of the directory
# @note Methods in this class require this attribute to be set
@@ -68,7 +66,7 @@ module Fog
# @raise [Fog::Storage::Rackspace::InternalServerError] - HTTP 500
# @raise [Fog::Storage::Rackspace::ServiceError]
# @note This method retrieves files in pages. Page size is defined by the limit attribute
- alias :each_file_this_page :each
+ alias_method :each_file_this_page, :each
def each
if !block_given?
self
@@ -197,7 +195,6 @@ module Fog
return nil unless path
"#{path}/#{Fog::Rackspace.escape(key, '/')}"
end
-
end
end
end
diff --git a/lib/fog/rackspace/models/storage/metadata.rb b/lib/fog/rackspace/models/storage/metadata.rb
index beb0f4a..c0c3ad6 100644
--- a/lib/fog/rackspace/models/storage/metadata.rb
+++ b/lib/fog/rackspace/models/storage/metadata.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Rackspace
-
class Metadata
-
OBJECT_META_PREFIX = "X-Object-Meta-"
OBJECT_REMOVE_META_PREFIX = "X-Remove-Object-Meta-"
CONTAINER_META_PREFIX = "X-Container-Meta-"
@@ -15,7 +13,6 @@ module Fog
CONTAINER_KEY_REGEX = /^#{CONTAINER_META_PREFIX}(.*)/
OBJECT_KEY_REGEX = /^#{OBJECT_META_PREFIX}(.*)/
-
# @!attribute [rw] data
# @return [Hash] underlying data store for metadata class
attr_reader :data
@@ -33,7 +30,6 @@ module Fog
@parent = parent
end
-
# Delete key value pair from metadata
# @param [String] key to be deleted
# @return [Object] returns value for key
@@ -56,6 +52,30 @@ module Fog
headers
end
+ # Retrieve specific value for key from Metadata.
+ # * If key is of type String, this method will return the value of the metadatum
+ # @param [#key] key
+ # @return [#value]
+ def [](key)
+ return nil unless key
+ @data[key.to_s] || @data[key.to_sym]
+ end
+
+ # Set value for key.
+ # * If key is of type String, this method will set/add the value to Metadata
+ # @param [#key] key
+ # @return [String]
+ def []=(key, value)
+ return nil unless key
+ if @data[key.to_s]
+ @data[key.to_s] = value
+ elsif @data[key.to_sym]
+ @data[key.to_sym] = value
+ else
+ @data[key] = value
+ end
+ end
+
# Creates metadata object from Cloud File Headers
# @param [Fog::Storage::Rackspace::Directory,Fog::Storage::Rackspace::File] parent object of the metadata
# @param [Hash] headers Cloud File headers
@@ -130,18 +150,16 @@ module Fog
return nil unless m && m[1]
a = m[1].split('-')
- a.collect!(&:downcase)
+ a.map!(&:downcase)
str = a.join('_')
str.to_sym
end
def to_header_key(key, value)
prefix = value.nil? ? remove_meta_prefix : meta_prefix
- prefix + key.to_s.split(/[-_]/).collect(&:capitalize).join('-')
+ prefix + key.to_s.split(/[-_]/).map(&:capitalize).join('-')
end
-
end
-
end
end
end
diff --git a/lib/fog/rackspace/monitoring.rb b/lib/fog/rackspace/monitoring.rb
index 1a0a77d..3ea3726 100644
--- a/lib/fog/rackspace/monitoring.rb
+++ b/lib/fog/rackspace/monitoring.rb
@@ -3,7 +3,6 @@ require 'fog/rackspace/core'
# https://github.com/racker/rackspace-monitoring-rb
# It has been heavily modified for import into Fog master.
-
module Fog
module Rackspace
class Monitoring < Fog::Service
@@ -15,7 +14,6 @@ module Fog
class Conflict < Fog::Rackspace::Errors::Conflict; end
class ServiceUnavailable < Fog::Rackspace::Errors::ServiceUnavailable; end
-
class BadRequest < Fog::Rackspace::Errors::BadRequest
attr_reader :validation_errors
@@ -110,9 +108,7 @@ module Fog
request :list_monitoring_zones
request :get_monitoring_zone
-
class Mock < Fog::Rackspace::Service
-
def initialize(options={})
end
diff --git a/lib/fog/rackspace/queues.rb b/lib/fog/rackspace/queues.rb
index 8efd6bd..1ae2075 100644
--- a/lib/fog/rackspace/queues.rb
+++ b/lib/fog/rackspace/queues.rb
@@ -17,7 +17,6 @@ module Fog
recognizes :rackspace_queues_url
recognizes :rackspace_queues_client_id
-
model_path 'fog/rackspace/models/queues'
model :queue
collection :queues
@@ -48,13 +47,20 @@ module Fog
@rackspace_username = options[:rackspace_username]
@rackspace_queues_client_id = options[:rackspace_queues_client_id] || Fog::UUID.uuid
@rackspace_auth_url = options[:rackspace_auth_url]
+ @rackspace_queues_url = options[:rackspace_queues_url]
@rackspace_must_reauthenticate = false
@connection_options = options[:connection_options] || {}
- @rackspace_region = options[:rackspace_region] || :ord
+ @rackspace_region = options[:rackspace_region]
unless v2_authentication?
raise Fog::Errors::NotImplemented.new("V2 authentication required for Queues")
end
+
+ unless @rackspace_region || @rackspace_queues_url
+ Fog::Logger.deprecation("Default region support will be removed in an upcoming release. Please switch to manually setting your endpoint. This requires settng the :rackspace_region option.")
+ end
+
+ @rackspace_region ||= :ord
end
def service_name
@@ -66,7 +72,7 @@ module Fog
end
def endpoint_uri(service_endpoint_url=nil)
- @uri = super(@rackspace_endpoint || service_endpoint_url, :rackspace_queues_url)
+ @uri = super(@rackspace_queues_url || service_endpoint_url, :rackspace_queues_url)
end
def authenticate(options={})
@@ -395,7 +401,6 @@ module Fog
raise ServiceError.slurp(error, self)
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/auto_scale/create_group.rb b/lib/fog/rackspace/requests/auto_scale/create_group.rb
index 4964c5e..c263a37 100644
--- a/lib/fog/rackspace/requests/auto_scale/create_group.rb
+++ b/lib/fog/rackspace/requests/auto_scale/create_group.rb
@@ -2,9 +2,7 @@ module Fog
module Rackspace
class AutoScale
class Real
-
def create_group(launch_config, group_config, policies)
-
body = {
'launchConfiguration' => launch_config,
'groupConfiguration' => group_config,
@@ -22,7 +20,6 @@ module Fog
class Mock
def create_group(launch_config, group_config, policies)
-
group_id = Fog::Rackspace::MockData.uuid
# Construct group structure
diff --git a/lib/fog/rackspace/requests/auto_scale/create_policy.rb b/lib/fog/rackspace/requests/auto_scale/create_policy.rb
index c733866..ef35d0e 100644
--- a/lib/fog/rackspace/requests/auto_scale/create_policy.rb
+++ b/lib/fog/rackspace/requests/auto_scale/create_policy.rb
@@ -3,7 +3,6 @@ module Fog
class AutoScale
class Real
def create_policy(group_id, options)
-
data = [options]
request(
@@ -17,7 +16,6 @@ module Fog
class Mock
def create_policy(group_id, options)
-
group = self.data[:autoscale_groups][group_id]
if group.nil?
@@ -37,7 +35,6 @@ module Fog
body = [policy]
response(:body => body)
-
end
end
end
diff --git a/lib/fog/rackspace/requests/auto_scale/create_webhook.rb b/lib/fog/rackspace/requests/auto_scale/create_webhook.rb
index 388b908..817fab7 100644
--- a/lib/fog/rackspace/requests/auto_scale/create_webhook.rb
+++ b/lib/fog/rackspace/requests/auto_scale/create_webhook.rb
@@ -3,7 +3,6 @@ module Fog
class AutoScale
class Real
def create_webhook(group_id, policy_id, options)
-
body = [options]
request(
@@ -17,13 +16,12 @@ module Fog
class Mock
def create_webhook(group_id, policy_id, options)
-
group = self.data[:autoscale_groups][group_id]
if group.nil?
raise Fog::Rackspace::AutoScale::NotFound
end
- policy = group['scalingPolicies'].detect { |p| p["id"] == policy_id }
+ policy = group['scalingPolicies'].find { |p| p["id"] == policy_id }
if policy.nil?
raise Fog::Rackspace::AutoScale::NotFound
end
@@ -49,7 +47,6 @@ module Fog
body = {'webhook' => webhook}
response(:body => body)
-
end
end
end
diff --git a/lib/fog/rackspace/requests/auto_scale/delete_group.rb b/lib/fog/rackspace/requests/auto_scale/delete_group.rb
index f5f073d..304c128 100644
--- a/lib/fog/rackspace/requests/auto_scale/delete_group.rb
+++ b/lib/fog/rackspace/requests/auto_scale/delete_group.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class AutoScale
class Real
-
def delete_group(group_id)
request(
:expects => [204],
diff --git a/lib/fog/rackspace/requests/auto_scale/delete_policy.rb b/lib/fog/rackspace/requests/auto_scale/delete_policy.rb
index 914ab75..e15c3f1 100644
--- a/lib/fog/rackspace/requests/auto_scale/delete_policy.rb
+++ b/lib/fog/rackspace/requests/auto_scale/delete_policy.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class AutoScale
class Real
-
def delete_policy(group_id, policy_id)
request(
:expects => [204],
@@ -23,7 +22,6 @@ module Fog
group['policies'].delete_if { |p| p['id'] == policy_id }
response(:status => 204)
-
end
end
end
diff --git a/lib/fog/rackspace/requests/auto_scale/delete_webhook.rb b/lib/fog/rackspace/requests/auto_scale/delete_webhook.rb
index d9beccb..3c39964 100644
--- a/lib/fog/rackspace/requests/auto_scale/delete_webhook.rb
+++ b/lib/fog/rackspace/requests/auto_scale/delete_webhook.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class AutoScale
class Real
-
def delete_webhook(group_id, policy_id, webhook_id)
request(
:expects => [204],
@@ -19,7 +18,7 @@ module Fog
raise Fog::Rackspace::AutoScale::NotFound
end
- policy = group['policies'].detect { |p| p["id"] == policy_id }
+ policy = group['policies'].find { |p| p["id"] == policy_id }
if policy.nil?
raise Fog::Rackspace::AutoScale::NotFound
end
diff --git a/lib/fog/rackspace/requests/auto_scale/execute_anonymous_webhook.rb b/lib/fog/rackspace/requests/auto_scale/execute_anonymous_webhook.rb
index 3bd34de..1721ee1 100644
--- a/lib/fog/rackspace/requests/auto_scale/execute_anonymous_webhook.rb
+++ b/lib/fog/rackspace/requests/auto_scale/execute_anonymous_webhook.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class AutoScale
class Real
-
def execute_anonymous_webhook(capability_version, capability_hash)
request(
:expects => [202],
diff --git a/lib/fog/rackspace/requests/auto_scale/execute_policy.rb b/lib/fog/rackspace/requests/auto_scale/execute_policy.rb
index 876433b..3ec33a6 100644
--- a/lib/fog/rackspace/requests/auto_scale/execute_policy.rb
+++ b/lib/fog/rackspace/requests/auto_scale/execute_policy.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class AutoScale
class Real
-
def execute_policy(group_id, policy_id)
request(
:expects => [202],
diff --git a/lib/fog/rackspace/requests/auto_scale/get_group.rb b/lib/fog/rackspace/requests/auto_scale/get_group.rb
index da94a86..d69c09b 100644
--- a/lib/fog/rackspace/requests/auto_scale/get_group.rb
+++ b/lib/fog/rackspace/requests/auto_scale/get_group.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class AutoScale
-
class Real
-
def get_group(group_id)
request(
:expects => [200],
@@ -23,7 +21,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/auto_scale/get_group_config.rb b/lib/fog/rackspace/requests/auto_scale/get_group_config.rb
index 468deeb..fcfa0fb 100644
--- a/lib/fog/rackspace/requests/auto_scale/get_group_config.rb
+++ b/lib/fog/rackspace/requests/auto_scale/get_group_config.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class AutoScale
-
class Real
-
def get_group_config(group_id)
request(
:expects => [200],
@@ -24,7 +22,6 @@ module Fog
response(:body => {"groupConfiguration" => group['groupConfiguration']})
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/auto_scale/get_group_state.rb b/lib/fog/rackspace/requests/auto_scale/get_group_state.rb
index 656f8c5..3fabd9b 100644
--- a/lib/fog/rackspace/requests/auto_scale/get_group_state.rb
+++ b/lib/fog/rackspace/requests/auto_scale/get_group_state.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class AutoScale
-
class Real
-
def get_group_state(group_id)
request(
:expects => [200],
@@ -15,7 +13,6 @@ module Fog
class Mock
def get_group_state(group_id)
-
instance_id_1 = Fog::Rackspace::AutoScale::MockData.uuid
instance_id_2 = Fog::Rackspace::AutoScale::MockData.uuid
@@ -56,7 +53,6 @@ module Fog
response(:body => {'group' => state})
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/auto_scale/get_launch_config.rb b/lib/fog/rackspace/requests/auto_scale/get_launch_config.rb
index 3ef10d2..e17cf1a 100644
--- a/lib/fog/rackspace/requests/auto_scale/get_launch_config.rb
+++ b/lib/fog/rackspace/requests/auto_scale/get_launch_config.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class AutoScale
-
class Real
-
def get_launch_config(group_id)
request(
:expects => [200],
@@ -24,7 +22,6 @@ module Fog
response(:body => {"launchConfiguration" => group['launchConfiguration']})
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/auto_scale/get_policy.rb b/lib/fog/rackspace/requests/auto_scale/get_policy.rb
index ba551d8..e635248 100644
--- a/lib/fog/rackspace/requests/auto_scale/get_policy.rb
+++ b/lib/fog/rackspace/requests/auto_scale/get_policy.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class AutoScale
-
class Real
-
def get_policy(group_id, policy_id)
request(
:expects => [200],
@@ -15,13 +13,12 @@ module Fog
class Mock
def get_policy(group_id, policy_id)
-
group = self.data[:autoscale_groups][group_id]
if group.nil?
raise Fog::Rackspace::AutoScale::NotFound
end
- policy = group['scalingPolicies'].detect { |p| p["id"] == policy_id }
+ policy = group['scalingPolicies'].find { |p| p["id"] == policy_id }
if policy.nil?
raise Fog::Rackspace::AutoScale::NotFound
end
@@ -29,7 +26,6 @@ module Fog
response(:body => {'policy' => policy})
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/auto_scale/get_webhook.rb b/lib/fog/rackspace/requests/auto_scale/get_webhook.rb
index a1e3295..5660676 100644
--- a/lib/fog/rackspace/requests/auto_scale/get_webhook.rb
+++ b/lib/fog/rackspace/requests/auto_scale/get_webhook.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class AutoScale
-
class Real
-
def get_webhook(group_id, policy_id, webhook_id)
request(
:expects => [200],
@@ -20,12 +18,12 @@ module Fog
raise Fog::Rackspace::AutoScale::NotFound
end
- policy = group['scalingPolicies'].detect { |p| p["id"] == policy_id }
+ policy = group['scalingPolicies'].find { |p| p["id"] == policy_id }
if policy.nil?
raise Fog::Rackspace::AutoScale::NotFound
end
- webhook = policy['webhooks'].detect { |w| w['id'] == webhook_id }
+ webhook = policy['webhooks'].find { |w| w['id'] == webhook_id }
if webhook.nil?
raise Fog::Rackspace::AutoScale::NotFound
end
@@ -33,7 +31,6 @@ module Fog
response(:body => {'webhook' => webhook})
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/auto_scale/list_groups.rb b/lib/fog/rackspace/requests/auto_scale/list_groups.rb
index e9c6e07..1eb9730 100644
--- a/lib/fog/rackspace/requests/auto_scale/list_groups.rb
+++ b/lib/fog/rackspace/requests/auto_scale/list_groups.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class AutoScale
class Real
-
# Retrieves a list of images
# @return [Excon::Response] response:
# * body [Hash]:
diff --git a/lib/fog/rackspace/requests/auto_scale/list_policies.rb b/lib/fog/rackspace/requests/auto_scale/list_policies.rb
index 76eeee4..7b2b62a 100644
--- a/lib/fog/rackspace/requests/auto_scale/list_policies.rb
+++ b/lib/fog/rackspace/requests/auto_scale/list_policies.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class AutoScale
class Real
-
def list_policies(group_id)
request(
:expects => [200],
diff --git a/lib/fog/rackspace/requests/auto_scale/list_webhooks.rb b/lib/fog/rackspace/requests/auto_scale/list_webhooks.rb
index 507657b..5fa7581 100644
--- a/lib/fog/rackspace/requests/auto_scale/list_webhooks.rb
+++ b/lib/fog/rackspace/requests/auto_scale/list_webhooks.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class AutoScale
class Real
-
def list_webhooks(group_id, policy_id)
request(
:expects => [200],
@@ -14,13 +13,12 @@ module Fog
class Mock
def list_webhooks(group_id, policy_id)
-
group = self.data[:autoscale_groups][group_id]
if group.nil?
raise Fog::Rackspace::AutoScale::NotFound
end
- policy = group['scalingPolicies'].detect { |p| p["id"] == policy_id }
+ policy = group['scalingPolicies'].find { |p| p["id"] == policy_id }
if policy.nil?
raise Fog::Rackspace::AutoScale::NotFound
end
diff --git a/lib/fog/rackspace/requests/auto_scale/pause_group_state.rb b/lib/fog/rackspace/requests/auto_scale/pause_group_state.rb
index c04f0c3..89700d2 100644
--- a/lib/fog/rackspace/requests/auto_scale/pause_group_state.rb
+++ b/lib/fog/rackspace/requests/auto_scale/pause_group_state.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class AutoScale
class Real
-
def pause_group_state(group_id)
Fog::Real.not_implemented
# request(
diff --git a/lib/fog/rackspace/requests/auto_scale/resume_group_state.rb b/lib/fog/rackspace/requests/auto_scale/resume_group_state.rb
index adf345b..8ba670d 100644
--- a/lib/fog/rackspace/requests/auto_scale/resume_group_state.rb
+++ b/lib/fog/rackspace/requests/auto_scale/resume_group_state.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class AutoScale
class Real
-
def resume_group_state(group_id)
request(
:expects => [204],
diff --git a/lib/fog/rackspace/requests/auto_scale/update_group_config.rb b/lib/fog/rackspace/requests/auto_scale/update_group_config.rb
index a7dd382..dfc76dd 100644
--- a/lib/fog/rackspace/requests/auto_scale/update_group_config.rb
+++ b/lib/fog/rackspace/requests/auto_scale/update_group_config.rb
@@ -2,9 +2,7 @@ module Fog
module Rackspace
class AutoScale
class Real
-
def update_group_config(group_id, options)
-
body = options
request(
diff --git a/lib/fog/rackspace/requests/auto_scale/update_launch_config.rb b/lib/fog/rackspace/requests/auto_scale/update_launch_config.rb
index 4fd6f20..c77fe1f 100644
--- a/lib/fog/rackspace/requests/auto_scale/update_launch_config.rb
+++ b/lib/fog/rackspace/requests/auto_scale/update_launch_config.rb
@@ -2,9 +2,7 @@ module Fog
module Rackspace
class AutoScale
class Real
-
def update_launch_config(group_id, options)
-
body = options
request(
diff --git a/lib/fog/rackspace/requests/auto_scale/update_policy.rb b/lib/fog/rackspace/requests/auto_scale/update_policy.rb
index 29fb9b5..05dee25 100644
--- a/lib/fog/rackspace/requests/auto_scale/update_policy.rb
+++ b/lib/fog/rackspace/requests/auto_scale/update_policy.rb
@@ -2,9 +2,7 @@ module Fog
module Rackspace
class AutoScale
class Real
-
def update_policy(group_id, policy_id, options)
-
request(
:expects => [204],
:method => 'PUT',
@@ -21,7 +19,7 @@ module Fog
raise Fog::Rackspace::AutoScale::NotFound
end
- policy = group['scalingPolicies'].detect { |p| p["id"] == policy_id }
+ policy = group['scalingPolicies'].find { |p| p["id"] == policy_id }
policy.merge(options)
diff --git a/lib/fog/rackspace/requests/auto_scale/update_webhook.rb b/lib/fog/rackspace/requests/auto_scale/update_webhook.rb
index 57c352c..05e143b 100644
--- a/lib/fog/rackspace/requests/auto_scale/update_webhook.rb
+++ b/lib/fog/rackspace/requests/auto_scale/update_webhook.rb
@@ -2,9 +2,7 @@ module Fog
module Rackspace
class AutoScale
class Real
-
def update_webhook(group_id, policy_id, webhook_id, options)
-
body = options
request(
@@ -23,12 +21,12 @@ module Fog
raise Fog::Rackspace::AutoScale::NotFound
end
- policy = group['scalingPolicies'].detect { |p| p["id"] == policy_id }
+ policy = group['scalingPolicies'].find { |p| p["id"] == policy_id }
if policy.nil?
raise Fog::Rackspace::AutoScale::NotFound
end
- webhook = policy['webhooks'].detect { |w| w['id'] == webhook_id }
+ webhook = policy['webhooks'].find { |w| w['id'] == webhook_id }
if webhook.nil?
raise Fog::Rackspace::AutoScale::NotFound
end
@@ -36,7 +34,6 @@ module Fog
webhook.merge(options)
response(:body => webhook)
-
end
end
end
diff --git a/lib/fog/rackspace/requests/block_storage/create_snapshot.rb b/lib/fog/rackspace/requests/block_storage/create_snapshot.rb
index ecd520c..fc7972b 100644
--- a/lib/fog/rackspace/requests/block_storage/create_snapshot.rb
+++ b/lib/fog/rackspace/requests/block_storage/create_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class BlockStorage
class Real
-
# Create a snapshot from a volume
#
# @param [String] volume_id Id of server to create image from
diff --git a/lib/fog/rackspace/requests/block_storage/create_volume.rb b/lib/fog/rackspace/requests/block_storage/create_volume.rb
index ffacdd0..5d04098 100644
--- a/lib/fog/rackspace/requests/block_storage/create_volume.rb
+++ b/lib/fog/rackspace/requests/block_storage/create_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class BlockStorage
class Real
-
# Create volume
#
# @param [Integer] size size of volume in GB. Minimum size is 100
@@ -11,6 +10,8 @@ module Fog
# @option options [String] :display_description display description for volume
# @option options [String] :volume_type type of volume
# @option options [String] :snapshot_id The optional snapshot from which to create a volume.
+ # @option options [String] :image_id The ID of an image from the compute service. If provided, a bootable volume will be
+ # created.
# @return [Excon::Response] response:
# * body [Hash]:
# * 'volume' [Hash]:
@@ -42,6 +43,7 @@ module Fog
data['volume']['volume_type'] = options[:volume_type] unless options[:volume_type].nil?
data['volume']['availability_zone'] = options[:availability_zone] unless options[:availability_zone].nil?
data['volume']['snapshot_id'] = options[:snapshot_id] unless options[:snapshot_id].nil?
+ data['volume']['imageRef'] = options[:image_id] unless options[:image_id].nil?
request(
:body => Fog::JSON.encode(data),
@@ -81,6 +83,7 @@ module Fog
snapshot = self.data[:snapshots][snapshot_id]
volume.merge!("size" => snapshot["size"])
end
+ volume["image_id"] = options[:image_id] if options[:image_id]
self.data[:volumes][volume_id] = volume
diff --git a/lib/fog/rackspace/requests/block_storage/delete_snapshot.rb b/lib/fog/rackspace/requests/block_storage/delete_snapshot.rb
index f0e7ad0..4f2d970 100644
--- a/lib/fog/rackspace/requests/block_storage/delete_snapshot.rb
+++ b/lib/fog/rackspace/requests/block_storage/delete_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class BlockStorage
class Real
-
# Delete snapshot
#
# @param [String] snapshot_id Id of snapshot to delete
diff --git a/lib/fog/rackspace/requests/block_storage/delete_volume.rb b/lib/fog/rackspace/requests/block_storage/delete_volume.rb
index 472b42c..a06004b 100644
--- a/lib/fog/rackspace/requests/block_storage/delete_volume.rb
+++ b/lib/fog/rackspace/requests/block_storage/delete_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class BlockStorage
class Real
-
# Delete volume
#
# @param [String] volume_id Id of volume to delete
diff --git a/lib/fog/rackspace/requests/block_storage/get_snapshot.rb b/lib/fog/rackspace/requests/block_storage/get_snapshot.rb
index acd41c0..2400740 100644
--- a/lib/fog/rackspace/requests/block_storage/get_snapshot.rb
+++ b/lib/fog/rackspace/requests/block_storage/get_snapshot.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class BlockStorage
class Real
-
# Retrieves snapshot detail
# @param [String] snapshot_id
# @return [Excon::Response] response:
diff --git a/lib/fog/rackspace/requests/block_storage/get_volume.rb b/lib/fog/rackspace/requests/block_storage/get_volume.rb
index 643347c..c62498b 100644
--- a/lib/fog/rackspace/requests/block_storage/get_volume.rb
+++ b/lib/fog/rackspace/requests/block_storage/get_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class BlockStorage
class Real
-
# Retrieves volume detail
# @param [String] volume_id
# @return [Excon::Response] response:
diff --git a/lib/fog/rackspace/requests/block_storage/get_volume_type.rb b/lib/fog/rackspace/requests/block_storage/get_volume_type.rb
index 675fb89..8caf874 100644
--- a/lib/fog/rackspace/requests/block_storage/get_volume_type.rb
+++ b/lib/fog/rackspace/requests/block_storage/get_volume_type.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class BlockStorage
class Real
-
# Retrieves volume type detail
# @param [String] volume_type_id
# @return [Excon::Response] response:
diff --git a/lib/fog/rackspace/requests/block_storage/list_snapshots.rb b/lib/fog/rackspace/requests/block_storage/list_snapshots.rb
index 8cf4b63..b750af1 100644
--- a/lib/fog/rackspace/requests/block_storage/list_snapshots.rb
+++ b/lib/fog/rackspace/requests/block_storage/list_snapshots.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class BlockStorage
class Real
-
# Retrieves list of snapshots
# @return [Excon::Response] response:
# * body [Hash]:
diff --git a/lib/fog/rackspace/requests/block_storage/list_volume_types.rb b/lib/fog/rackspace/requests/block_storage/list_volume_types.rb
index d4285c5..47452b9 100644
--- a/lib/fog/rackspace/requests/block_storage/list_volume_types.rb
+++ b/lib/fog/rackspace/requests/block_storage/list_volume_types.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class BlockStorage
class Real
-
# Retrieves list of volume types
# @return [Excon::Response] response
# * body [Hash]:
diff --git a/lib/fog/rackspace/requests/block_storage/list_volumes.rb b/lib/fog/rackspace/requests/block_storage/list_volumes.rb
index 725fff8..3a38d3a 100644
--- a/lib/fog/rackspace/requests/block_storage/list_volumes.rb
+++ b/lib/fog/rackspace/requests/block_storage/list_volumes.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class BlockStorage
class Real
-
# Retrieves list of volumes
# @return [Excon::Response] response:
# * body [Hash]:
diff --git a/lib/fog/rackspace/requests/cdn/delete_object.rb b/lib/fog/rackspace/requests/cdn/delete_object.rb
index b0a97f0..a30f02e 100644
--- a/lib/fog/rackspace/requests/cdn/delete_object.rb
+++ b/lib/fog/rackspace/requests/cdn/delete_object.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class Rackspace
class Real
-
# Delete an existing object
#
# ==== Parameters
@@ -23,7 +22,6 @@ module Fog
end
class Mock
-
def delete_object(container, object)
response = Excon::Response.new
response.status = 204
diff --git a/lib/fog/rackspace/requests/cdn/get_containers.rb b/lib/fog/rackspace/requests/cdn/get_containers.rb
index 54960a7..7b7f4b0 100644
--- a/lib/fog/rackspace/requests/cdn/get_containers.rb
+++ b/lib/fog/rackspace/requests/cdn/get_containers.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class Rackspace
class Real
-
# List existing cdn-enabled storage containers
#
# ==== Parameters
@@ -29,11 +28,9 @@ module Fog
)
response
end
-
end
class Mock
-
def get_containers(options = {})
response = Excon::Response.new
response.status = 200
@@ -64,7 +61,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/cdn/head_container.rb b/lib/fog/rackspace/requests/cdn/head_container.rb
index 9797bea..7bd7d7d 100644
--- a/lib/fog/rackspace/requests/cdn/head_container.rb
+++ b/lib/fog/rackspace/requests/cdn/head_container.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class Rackspace
class Real
-
# List cdn properties for a container
#
# ==== Parameters
@@ -31,11 +30,9 @@ module Fog
)
response
end
-
end
class Mock
-
def head_container(container)
raise Fog::Storage::Rackspace::NotFound.new "#{container} not found" unless container == 'fogcontainertests'
response = Excon::Response.new
@@ -56,7 +53,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/cdn/post_container.rb b/lib/fog/rackspace/requests/cdn/post_container.rb
index 5f3dae4..c9b4adf 100644
--- a/lib/fog/rackspace/requests/cdn/post_container.rb
+++ b/lib/fog/rackspace/requests/cdn/post_container.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class Rackspace
class Real
-
# modify CDN properties for a container
#
# ==== Parameters
@@ -28,11 +27,9 @@ module Fog
)
response
end
-
end
class Mock
-
def post_container(name, options = {})
raise Fog::Storage::Rackspace::NotFound.new "#{name} not found" unless name == 'fogcontainertests'
response = Excon::Response.new
@@ -50,7 +47,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/cdn/put_container.rb b/lib/fog/rackspace/requests/cdn/put_container.rb
index 65d4c24..28227e8 100644
--- a/lib/fog/rackspace/requests/cdn/put_container.rb
+++ b/lib/fog/rackspace/requests/cdn/put_container.rb
@@ -2,7 +2,6 @@ module Fog
module CDN
class Rackspace
class Real
-
# enable CDN for a container
#
# ==== Parameters
@@ -28,11 +27,9 @@ module Fog
)
response
end
-
end
class Mock
-
def put_container(name, options = {})
response = Excon::Response.new
response.status = 201
@@ -50,7 +47,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/confirm_resized_server.rb b/lib/fog/rackspace/requests/compute/confirm_resized_server.rb
index 635b90d..d679ba2 100644
--- a/lib/fog/rackspace/requests/compute/confirm_resized_server.rb
+++ b/lib/fog/rackspace/requests/compute/confirm_resized_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# Confirm resizing
#
# ==== Parameters
@@ -12,11 +11,9 @@ module Fog
body = { 'confirmResize' => nil }
server_action(server_id, body, 204)
end
-
end
class Mock
-
def confirm_resized_server(server_id)
response = Excon::Response.new
response.status = 204
@@ -27,7 +24,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/create_image.rb b/lib/fog/rackspace/requests/compute/create_image.rb
index c101344..e82cc5a 100644
--- a/lib/fog/rackspace/requests/compute/create_image.rb
+++ b/lib/fog/rackspace/requests/compute/create_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# Create an image from a running server
#
# ==== Parameters
@@ -29,11 +28,9 @@ module Fog
:path => "images"
)
end
-
end
class Mock
-
def create_image(server_id, options = {})
response = Excon::Response.new
response.status = 202
@@ -53,7 +50,6 @@ module Fog
response.body = { 'image' => data.reject {|key, value| !['id', 'name', 'serverId', 'status', 'updated'].include?(key)} }
response
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/create_server.rb b/lib/fog/rackspace/requests/compute/create_server.rb
index 6f73cca..02ae3c5 100644
--- a/lib/fog/rackspace/requests/compute/create_server.rb
+++ b/lib/fog/rackspace/requests/compute/create_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# Create a new server
#
# ==== Parameters
@@ -62,11 +61,9 @@ module Fog
:path => 'servers.json'
)
end
-
end
class Mock
-
def create_server(flavor_id, image_id, options = {})
response = Excon::Response.new
response.status = 202
@@ -87,7 +84,6 @@ module Fog
response.body = { 'server' => data.merge({'adminPass' => 'password'}) }
response
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/delete_image.rb b/lib/fog/rackspace/requests/compute/delete_image.rb
index 2ea4a45..52b60e5 100644
--- a/lib/fog/rackspace/requests/compute/delete_image.rb
+++ b/lib/fog/rackspace/requests/compute/delete_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# Delete an image
#
# ==== Parameters
@@ -15,14 +14,12 @@ module Fog
:path => "images/#{image_id}"
)
end
-
end
class Mock
-
def delete_image(image_id)
response = Excon::Response.new
- if image = list_images_detail.body['images'].detect {|_| _['id'] == image_id}
+ if image = list_images_detail.body['images'].find {|_| _['id'] == image_id}
if image['status'] == 'SAVING'
response.status = 409
raise(Excon::Errors.status_error({:expects => 202}, response))
@@ -36,9 +33,7 @@ module Fog
response.status = 400
raise Fog::Compute::Rackspace::NotFound.new
end
-
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/delete_server.rb b/lib/fog/rackspace/requests/compute/delete_server.rb
index 64e0db0..9c45bc6 100644
--- a/lib/fog/rackspace/requests/compute/delete_server.rb
+++ b/lib/fog/rackspace/requests/compute/delete_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# Delete an existing server
#
# ==== Parameters
@@ -15,14 +14,12 @@ module Fog
:path => "servers/#{server_id}"
)
end
-
end
class Mock
-
def delete_server(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
if server['status'] == 'BUILD'
response.status = 409
raise(Excon::Errors.status_error({:expects => 202}, response))
@@ -36,7 +33,6 @@ module Fog
raise Fog::Compute::Rackspace::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/get_flavor_details.rb b/lib/fog/rackspace/requests/compute/get_flavor_details.rb
index b2f68b1..67e8112 100644
--- a/lib/fog/rackspace/requests/compute/get_flavor_details.rb
+++ b/lib/fog/rackspace/requests/compute/get_flavor_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# Get details for flavor by id
#
# ==== Returns
@@ -19,11 +18,9 @@ module Fog
:path => "flavors/#{flavor_id}.json"
)
end
-
end
class Mock
-
def get_flavor_details(flavor_id)
response = Excon::Response.new
flavor = {
@@ -45,7 +42,6 @@ module Fog
raise Fog::Compute::Rackspace::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/get_image_details.rb b/lib/fog/rackspace/requests/compute/get_image_details.rb
index de4ec2d..b9fca41 100644
--- a/lib/fog/rackspace/requests/compute/get_image_details.rb
+++ b/lib/fog/rackspace/requests/compute/get_image_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# Get details for image by id
#
# ==== Returns
@@ -20,7 +19,6 @@ module Fog
:path => "images/#{image_id}.json"
)
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/get_server_details.rb b/lib/fog/rackspace/requests/compute/get_server_details.rb
index 6f0aaef..d1b1d3e 100644
--- a/lib/fog/rackspace/requests/compute/get_server_details.rb
+++ b/lib/fog/rackspace/requests/compute/get_server_details.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# Get details about a server
#
# ==== Parameters
@@ -30,14 +29,12 @@ module Fog
:path => "servers/#{server_id}.json"
)
end
-
end
class Mock
-
def get_server_details(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'].to_s == server_id.to_s}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'].to_s == server_id.to_s}
response.status = [200, 203][rand(1)]
response.body = { 'server' => server }
response
@@ -45,7 +42,6 @@ module Fog
raise Fog::Compute::Rackspace::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/list_addresses.rb b/lib/fog/rackspace/requests/compute/list_addresses.rb
index 3c313dc..101fc2b 100644
--- a/lib/fog/rackspace/requests/compute/list_addresses.rb
+++ b/lib/fog/rackspace/requests/compute/list_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# List all server addresses
#
# ==== Parameters
@@ -21,14 +20,12 @@ module Fog
:path => "servers/#{server_id}/ips.json"
)
end
-
end
class Mock
-
def list_addresses(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.status = [200, 203][rand(1)]
response.body = { 'addresses' => server['addresses'] }
response
@@ -36,7 +33,6 @@ module Fog
raise Fog::Compute::Rackspace::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/list_flavors.rb b/lib/fog/rackspace/requests/compute/list_flavors.rb
index e064ca8..bbc7e6f 100644
--- a/lib/fog/rackspace/requests/compute/list_flavors.rb
+++ b/lib/fog/rackspace/requests/compute/list_flavors.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# List all flavors (IDs and names only)
#
# ==== Returns
@@ -17,11 +16,9 @@ module Fog
:path => 'flavors.json'
)
end
-
end
class Mock
-
def list_flavors
response = Excon::Response.new
response.status = 200
@@ -38,7 +35,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/list_flavors_detail.rb b/lib/fog/rackspace/requests/compute/list_flavors_detail.rb
index fbace8c..bb9ac2a 100644
--- a/lib/fog/rackspace/requests/compute/list_flavors_detail.rb
+++ b/lib/fog/rackspace/requests/compute/list_flavors_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# List all flavors
#
# ==== Returns
@@ -19,11 +18,9 @@ module Fog
:path => 'flavors/detail.json'
)
end
-
end
class Mock
-
def list_flavors_detail
response = Excon::Response.new
response.status = 200
@@ -40,7 +37,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/list_images.rb b/lib/fog/rackspace/requests/compute/list_images.rb
index 7125add..f1ae8f5 100644
--- a/lib/fog/rackspace/requests/compute/list_images.rb
+++ b/lib/fog/rackspace/requests/compute/list_images.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# List all images (IDs and names only)
#
# ==== Returns
@@ -17,11 +16,9 @@ module Fog
:path => 'images.json'
)
end
-
end
class Mock
-
def list_images
response = Excon::Response.new
data = list_images_detail.body['images']
@@ -33,7 +30,6 @@ module Fog
response.body = { 'images' => images }
response
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/list_images_detail.rb b/lib/fog/rackspace/requests/compute/list_images_detail.rb
index bed4ded..f3f12c1 100644
--- a/lib/fog/rackspace/requests/compute/list_images_detail.rb
+++ b/lib/fog/rackspace/requests/compute/list_images_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# List all images
#
# ==== Returns
@@ -20,11 +19,9 @@ module Fog
:path => 'images/detail.json'
)
end
-
end
class Mock
-
def list_images_detail
response = Excon::Response.new
@@ -42,7 +39,6 @@ module Fog
response.body = { 'images' => images.map {|image| image.reject {|key, value| !['id', 'name', 'status', 'updated'].include?(key)}} }
response
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/list_private_addresses.rb b/lib/fog/rackspace/requests/compute/list_private_addresses.rb
index 633104b..5875d87 100644
--- a/lib/fog/rackspace/requests/compute/list_private_addresses.rb
+++ b/lib/fog/rackspace/requests/compute/list_private_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# List private server addresses
#
# ==== Parameters
@@ -19,14 +18,12 @@ module Fog
:path => "servers/#{server_id}/ips/private.json"
)
end
-
end
class Mock
-
def list_private_addresses(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.status = [200, 203][rand(1)]
response.body = { 'private' => server['addresses']['private'] }
response
@@ -34,7 +31,6 @@ module Fog
raise Fog::Compute::Rackspace::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/list_public_addresses.rb b/lib/fog/rackspace/requests/compute/list_public_addresses.rb
index 8a77505..36c7f1b 100644
--- a/lib/fog/rackspace/requests/compute/list_public_addresses.rb
+++ b/lib/fog/rackspace/requests/compute/list_public_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# List public server addresses
#
# ==== Parameters
@@ -19,14 +18,12 @@ module Fog
:path => "servers/#{server_id}/ips/public.json"
)
end
-
end
class Mock
-
def list_public_addresses(server_id)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
response.status = [200, 203][rand(1)]
response.body = { 'public' => server['addresses']['public'] }
response
@@ -34,7 +31,6 @@ module Fog
raise Fog::Compute::Rackspace::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/list_servers.rb b/lib/fog/rackspace/requests/compute/list_servers.rb
index 9c658b0..daff0d2 100644
--- a/lib/fog/rackspace/requests/compute/list_servers.rb
+++ b/lib/fog/rackspace/requests/compute/list_servers.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# List all servers (IDs and names only)
#
# ==== Returns
@@ -18,11 +17,9 @@ module Fog
:path => 'servers.json'
)
end
-
end
class Mock
-
def list_servers
response = Excon::Response.new
data = list_servers_detail.body['servers']
@@ -34,7 +31,6 @@ module Fog
response.body = { 'servers' => servers }
response
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/list_servers_detail.rb b/lib/fog/rackspace/requests/compute/list_servers_detail.rb
index 449faf7..dbbd66f 100644
--- a/lib/fog/rackspace/requests/compute/list_servers_detail.rb
+++ b/lib/fog/rackspace/requests/compute/list_servers_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# List all servers details
#
# ==== Returns
@@ -27,11 +26,9 @@ module Fog
:path => 'servers/detail.json'
)
end
-
end
class Mock
-
def list_servers_detail
response = Excon::Response.new
@@ -49,7 +46,6 @@ module Fog
response.body = { 'servers' => servers }
response
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/reboot_server.rb b/lib/fog/rackspace/requests/compute/reboot_server.rb
index 49095b3..167df87 100644
--- a/lib/fog/rackspace/requests/compute/reboot_server.rb
+++ b/lib/fog/rackspace/requests/compute/reboot_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# Reboot an existing server
#
# ==== Parameters
@@ -13,17 +12,14 @@ module Fog
body = { 'reboot' => { 'type' => type }}
server_action(server_id, body)
end
-
end
class Mock
-
def reboot_server(server_id, type = 'SOFT')
response = Excon::Response.new
response.status = 202
response
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/resize_server.rb b/lib/fog/rackspace/requests/compute/resize_server.rb
index 39b42bf..641fac7 100644
--- a/lib/fog/rackspace/requests/compute/resize_server.rb
+++ b/lib/fog/rackspace/requests/compute/resize_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# Reboot an existing server
#
# ==== Parameters
@@ -13,11 +12,9 @@ module Fog
body = { 'resize' => { 'flavorId' => flavor_id }}
server_action(server_id, body)
end
-
end
class Mock
-
# FIXME: should probably transition instead of skipping to VERIFY_RESIZE
def resize_server(server_id, flavor_id)
response = Excon::Response.new
@@ -32,7 +29,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/revert_resized_server.rb b/lib/fog/rackspace/requests/compute/revert_resized_server.rb
index 3c17e19..c735156 100644
--- a/lib/fog/rackspace/requests/compute/revert_resized_server.rb
+++ b/lib/fog/rackspace/requests/compute/revert_resized_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# Revert resizing
#
# ==== Parameters
@@ -12,11 +11,9 @@ module Fog
body = { 'revertResize' => nil }
server_action(server_id, body)
end
-
end
class Mock
-
def revert_resized_server(server_id)
response = Excon::Response.new
response.status = 202
@@ -28,7 +25,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/server_action.rb b/lib/fog/rackspace/requests/compute/server_action.rb
index 60920f6..ba84f17 100644
--- a/lib/fog/rackspace/requests/compute/server_action.rb
+++ b/lib/fog/rackspace/requests/compute/server_action.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# Reboot an existing server
#
# ==== Parameters
@@ -18,7 +17,6 @@ module Fog
:path => "servers/#{server_id}/action.json"
)
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute/update_server.rb b/lib/fog/rackspace/requests/compute/update_server.rb
index 3ed7e2f..cb27503 100644
--- a/lib/fog/rackspace/requests/compute/update_server.rb
+++ b/lib/fog/rackspace/requests/compute/update_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Rackspace
class Real
-
# Update an existing server
#
# ==== Parameters
@@ -18,14 +17,12 @@ module Fog
:path => "servers/#{server_id}.json"
)
end
-
end
class Mock
-
def update_server(server_id, options)
response = Excon::Response.new
- if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
+ if server = list_servers_detail.body['servers'].find {|_| _['id'] == server_id}
if options['adminPass']
server['adminPass'] = options['adminPass']
end
@@ -38,7 +35,6 @@ module Fog
raise Fog::Compute::Rackspace::NotFound
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/attach_volume.rb b/lib/fog/rackspace/requests/compute_v2/attach_volume.rb
index e06f82b..cf6c638 100644
--- a/lib/fog/rackspace/requests/compute_v2/attach_volume.rb
+++ b/lib/fog/rackspace/requests/compute_v2/attach_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# This operation attaches a volume to the specified server.
# @param [String] server_id
# @param [String] volume_id
diff --git a/lib/fog/rackspace/requests/compute_v2/change_server_password.rb b/lib/fog/rackspace/requests/compute_v2/change_server_password.rb
index d3f8f49..c16c41b 100644
--- a/lib/fog/rackspace/requests/compute_v2/change_server_password.rb
+++ b/lib/fog/rackspace/requests/compute_v2/change_server_password.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Changes server admin password
# @param [String] server_id
# @param [String] password
diff --git a/lib/fog/rackspace/requests/compute_v2/confirm_resize_server.rb b/lib/fog/rackspace/requests/compute_v2/confirm_resize_server.rb
index e0b03ee..2f5bab5 100644
--- a/lib/fog/rackspace/requests/compute_v2/confirm_resize_server.rb
+++ b/lib/fog/rackspace/requests/compute_v2/confirm_resize_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Confirm server resize operation
# @param [String] server_id The id of the server to revert
# @return [Excon::Response] response
diff --git a/lib/fog/rackspace/requests/compute_v2/create_image.rb b/lib/fog/rackspace/requests/compute_v2/create_image.rb
index 6d0e69d..c6e6b54 100644
--- a/lib/fog/rackspace/requests/compute_v2/create_image.rb
+++ b/lib/fog/rackspace/requests/compute_v2/create_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Create an image from a running server
#
# @param [String] server_id Id of server to create image from
diff --git a/lib/fog/rackspace/requests/compute_v2/create_keypair.rb b/lib/fog/rackspace/requests/compute_v2/create_keypair.rb
index 522e01e..e2dc349 100644
--- a/lib/fog/rackspace/requests/compute_v2/create_keypair.rb
+++ b/lib/fog/rackspace/requests/compute_v2/create_keypair.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Request a new keypair to be created
# @param [String] key_name: unique name of the keypair to create
# @return [Excon::Response] response :
@@ -58,7 +57,6 @@ module Fog
:body => { 'keypair' => k } )
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/create_server.rb b/lib/fog/rackspace/requests/compute_v2/create_server.rb
index 83fab7c..a048139 100644
--- a/lib/fog/rackspace/requests/compute_v2/create_server.rb
+++ b/lib/fog/rackspace/requests/compute_v2/create_server.rb
@@ -14,6 +14,12 @@ module Fog
# @option options [Hash] personality Hash containing data to inject into the file system of the cloud server instance during server creation.
# @option options [Boolean] config_drive whether to attach a read-only configuration drive
# @option options [String] keypair Name of the kay-pair to associate with this server.
+ # @option options [Array<Hash>] block_device_mapping A manually specified block device mapping to fully control the creation and
+ # attachment of volumes to this server. Mutually exclusive with :volume_id or :volume_image_id. If provided, leave image_id
+ # as "". See http://developer.openstack.org/api-ref-compute-v2-ext.html#ext-os-block-device-mapping-v2-boot for details.
+ # @option options [String] boot_volume_id Id of a pre-created bootable volume to use for this server. If provided, leave image_id as "".
+ # @option options [String] boot_image_id Id of an image to create a bootable volume from and attach to this server. If provided,
+ # leave image_id as "".
# @return [Excon::Response] response:
# * body [Hash]:
# * server [Hash]:
@@ -40,6 +46,7 @@ module Fog
# @see http://docs.rackspace.com/servers/api/v2/cs-devguide/content/Server_Metadata-d1e2529.html
# @see http://docs.rackspace.com/servers/api/v2/cs-devguide/content/Server_Personality-d1e2543.html
# @see http://docs.rackspace.com/servers/api/v2/cs-devguide/content/ch_extensions.html#diskconfig_attribute
+ # @see http://developer.openstack.org/api-ref-compute-v2-ext.html#ext-os-block-device-mapping-v2-boot
#
# * State Transitions
# * BUILD -> ACTIVE
@@ -73,6 +80,42 @@ module Fog
data['server']['key_name'] = options[:key_name] unless options[:key_name].nil?
+ if options[:block_device_mapping]
+ if options[:boot_volume_id]
+ Fog::Logger.warning("Manual :block_device_mapping overrides :boot_volume_id in #create_server!")
+ end
+
+ if options[:boot_image_id]
+ Fog::Logger.warning("Manual :block_device_mapping overrides :boot_image_id in #create_server!")
+ end
+
+ data['server']['block_device_mapping_v2'] = options[:block_device_mapping]
+ else
+ if options[:boot_volume_id]
+ if options[:boot_image_id]
+ Fog::Logger.warning(":boot_volume_id overrides :boot_image_id!")
+ end
+
+ data['server']['block_device_mapping_v2'] = [{
+ 'boot_index' => '0',
+ 'uuid' => options[:boot_volume_id],
+ 'source_type' => 'volume',
+ 'destination_type' => 'volume',
+ 'volume_size' => 100
+ }]
+ end
+
+ if options[:boot_image_id]
+ data['server']['block_device_mapping_v2'] = [{
+ 'boot_index' => '0',
+ 'uuid' => options[:boot_image_id],
+ 'source_type' => 'image',
+ 'destination_type' => 'volume',
+ 'volume_size' => 100
+ }]
+ end
+ end
+
request(
:body => Fog::JSON.encode(data),
:expects => [202],
diff --git a/lib/fog/rackspace/requests/compute_v2/create_virtual_interface.rb b/lib/fog/rackspace/requests/compute_v2/create_virtual_interface.rb
index a2d2f7f..4abaa45 100644
--- a/lib/fog/rackspace/requests/compute_v2/create_virtual_interface.rb
+++ b/lib/fog/rackspace/requests/compute_v2/create_virtual_interface.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Creates virtual interface for a server
# @param [String] server_id The server id to create the virtual interface on
# @param [String] network_id The network id to attach the virtual interface to
@@ -21,12 +20,11 @@ module Fog
request(
:expects => [200],
:method => 'POST',
- :path => "/servers/#{server_id}/os-virtual-interfacesv2",
+ :path => "servers/#{server_id}/os-virtual-interfacesv2",
:body => Fog::JSON.encode(data)
)
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/delete_attachment.rb b/lib/fog/rackspace/requests/compute_v2/delete_attachment.rb
index 753111d..d6c1920 100644
--- a/lib/fog/rackspace/requests/compute_v2/delete_attachment.rb
+++ b/lib/fog/rackspace/requests/compute_v2/delete_attachment.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Deletes a specified volume attachment from a specified server instance.
# @param [String] server_id id of server containing volume to delete
# @param [String] volume_id id of volume on server to delete
diff --git a/lib/fog/rackspace/requests/compute_v2/delete_image.rb b/lib/fog/rackspace/requests/compute_v2/delete_image.rb
index d0bd076..2fbb614 100644
--- a/lib/fog/rackspace/requests/compute_v2/delete_image.rb
+++ b/lib/fog/rackspace/requests/compute_v2/delete_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Delete an image
# @param [String] image_id Id of image to delete
# @return [Excon::Response] response
@@ -18,7 +17,6 @@ module Fog
:path => "images/#{image_id}"
)
end
-
end
class Mock
@@ -28,7 +26,6 @@ module Fog
response.status = 202
response.body = ""
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/delete_keypair.rb b/lib/fog/rackspace/requests/compute_v2/delete_keypair.rb
index 49806b9..475cc8d 100644
--- a/lib/fog/rackspace/requests/compute_v2/delete_keypair.rb
+++ b/lib/fog/rackspace/requests/compute_v2/delete_keypair.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Delete the key specified with key_name
# @param [String] key_name name of the key to delete
# @return [Excon::Response] response
@@ -30,7 +29,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/delete_metadata_item.rb b/lib/fog/rackspace/requests/compute_v2/delete_metadata_item.rb
index 907f421..f1f04e8 100644
--- a/lib/fog/rackspace/requests/compute_v2/delete_metadata_item.rb
+++ b/lib/fog/rackspace/requests/compute_v2/delete_metadata_item.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Deletes a metadata item.
# @param [String<images, servers>] collection type of metadata
# @param [String] obj_id id of the object where the metadata is attached
@@ -17,7 +16,7 @@ module Fog
request(
:expects => 204,
:method => 'DELETE',
- :path => "/#{collection}/#{obj_id}/metadata/#{key}"
+ :path => "#{collection}/#{obj_id}/metadata/#{key}"
)
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/delete_network.rb b/lib/fog/rackspace/requests/compute_v2/delete_network.rb
index 694931d..e8dc63a 100644
--- a/lib/fog/rackspace/requests/compute_v2/delete_network.rb
+++ b/lib/fog/rackspace/requests/compute_v2/delete_network.rb
@@ -9,7 +9,7 @@ module Fog
class Mock
def delete_network(id)
- unless self.data[:networks].has_key?(id)
+ unless self.data[:networks].key?(id)
raise Fog::Compute::RackspaceV2::NotFound
end
diff --git a/lib/fog/rackspace/requests/compute_v2/delete_server.rb b/lib/fog/rackspace/requests/compute_v2/delete_server.rb
index 2370aeb..e1ffa81 100644
--- a/lib/fog/rackspace/requests/compute_v2/delete_server.rb
+++ b/lib/fog/rackspace/requests/compute_v2/delete_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Deletes a specified server instance from the system.
# @param [String] server_id the id of the server to delete
# @return [Excon::Response] response
diff --git a/lib/fog/rackspace/requests/compute_v2/delete_virtual_interface.rb b/lib/fog/rackspace/requests/compute_v2/delete_virtual_interface.rb
index 5887701..60d2364 100644
--- a/lib/fog/rackspace/requests/compute_v2/delete_virtual_interface.rb
+++ b/lib/fog/rackspace/requests/compute_v2/delete_virtual_interface.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Deletes virtual interface from server
# @param [String] server_id The server id that contains the virtual interface
# @param [String] interface_id The id of the virtual interface
@@ -15,11 +14,10 @@ module Fog
request(
:expects => [200],
:method => 'DELETE',
- :path => "/servers/#{server_id}/os-virtual-interfacesv2/#{interface_id}"
+ :path => "servers/#{server_id}/os-virtual-interfacesv2/#{interface_id}"
)
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/get_attachment.rb b/lib/fog/rackspace/requests/compute_v2/get_attachment.rb
index 8a51401..2d441ab 100644
--- a/lib/fog/rackspace/requests/compute_v2/get_attachment.rb
+++ b/lib/fog/rackspace/requests/compute_v2/get_attachment.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Retrieves attachment
# @param [String] server_id
# @param [String] volume_id
@@ -29,7 +28,7 @@ module Fog
class Mock
def get_attachment(server_id, volume_id)
- attachment = self.data[:volume_attachments].detect { |v| v["serverId"] == server_id && v["volumeId"] == volume_id }
+ attachment = self.data[:volume_attachments].find { |v| v["serverId"] == server_id && v["volumeId"] == volume_id }
response(:body => {"volumeAttachment" => attachment})
end
diff --git a/lib/fog/rackspace/requests/compute_v2/get_flavor.rb b/lib/fog/rackspace/requests/compute_v2/get_flavor.rb
index b038101..8baf7ca 100644
--- a/lib/fog/rackspace/requests/compute_v2/get_flavor.rb
+++ b/lib/fog/rackspace/requests/compute_v2/get_flavor.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Retrieves flavor detail
# @param [Sring] flavor_id
# @return [Excon::Response] response:
@@ -24,7 +23,7 @@ module Fog
request(
:expects => [200, 203],
:method => 'GET',
- :path => "flavors/#{flavor_id}"
+ :path => "flavors/#{Fog::Rackspace.escape(flavor_id)}"
)
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/get_image.rb b/lib/fog/rackspace/requests/compute_v2/get_image.rb
index 49f7859..159bfae 100644
--- a/lib/fog/rackspace/requests/compute_v2/get_image.rb
+++ b/lib/fog/rackspace/requests/compute_v2/get_image.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Retrieves image detail
# @param [String] image_id
# @return [Excon::Response] response:
@@ -28,7 +27,7 @@ module Fog
request(
:expects => [200, 203],
:method => 'GET',
- :path => "images/#{image_id}"
+ :path => "images/#{Fog::Rackspace.escape(image_id)}"
)
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/get_keypair.rb b/lib/fog/rackspace/requests/compute_v2/get_keypair.rb
index 2476525..3e76018 100644
--- a/lib/fog/rackspace/requests/compute_v2/get_keypair.rb
+++ b/lib/fog/rackspace/requests/compute_v2/get_keypair.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Retreive single keypair details
# @param [String] key_name name of the key for which to request the details
# @return [Excon::Response] response :
@@ -35,7 +34,6 @@ module Fog
response(:body => key, :status => 200)
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/get_metadata_item.rb b/lib/fog/rackspace/requests/compute_v2/get_metadata_item.rb
index 8791af0..c5fbc69 100644
--- a/lib/fog/rackspace/requests/compute_v2/get_metadata_item.rb
+++ b/lib/fog/rackspace/requests/compute_v2/get_metadata_item.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Retrieves single metadatum item by key.
# @param [String<images, servers>] collection type of metadata
# @param [String] obj_id id of the object where the metadata is attached
@@ -19,7 +18,7 @@ module Fog
request(
:expects => 200,
:method => 'GET',
- :path => "/#{collection}/#{obj_id}/metadata/#{key}"
+ :path => "#{collection}/#{obj_id}/metadata/#{key}"
)
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/get_network.rb b/lib/fog/rackspace/requests/compute_v2/get_network.rb
index 4247015..acc0ff9 100644
--- a/lib/fog/rackspace/requests/compute_v2/get_network.rb
+++ b/lib/fog/rackspace/requests/compute_v2/get_network.rb
@@ -9,7 +9,7 @@ module Fog
class Mock
def get_network(id)
- unless self.data[:networks].has_key?(id)
+ unless self.data[:networks].key?(id)
raise Fog::Compute::RackspaceV2::NotFound
end
diff --git a/lib/fog/rackspace/requests/compute_v2/get_server.rb b/lib/fog/rackspace/requests/compute_v2/get_server.rb
index b35dcda..189a339 100644
--- a/lib/fog/rackspace/requests/compute_v2/get_server.rb
+++ b/lib/fog/rackspace/requests/compute_v2/get_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Retrieves server detail
# @param [String] server_id
# @return [Excon::Response] response:
diff --git a/lib/fog/rackspace/requests/compute_v2/list_addresses.rb b/lib/fog/rackspace/requests/compute_v2/list_addresses.rb
index 8755147..40cd449 100644
--- a/lib/fog/rackspace/requests/compute_v2/list_addresses.rb
+++ b/lib/fog/rackspace/requests/compute_v2/list_addresses.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Lists all networks and addresses associated with a specified server.
# @param [String] server_id
# @return [Excon::Response] response:
@@ -19,11 +18,9 @@ module Fog
:path => "/servers/#{server_id}/ips"
)
end
-
end
class Mock
-
def list_addresses(server_id)
raise Fog::Compute::RackspaceV2::NotFound.new if server_id == 0
response = Excon::Response.new
@@ -36,7 +33,6 @@ module Fog
}
response
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/list_addresses_by_network.rb b/lib/fog/rackspace/requests/compute_v2/list_addresses_by_network.rb
index a7b1f99..d5de018 100644
--- a/lib/fog/rackspace/requests/compute_v2/list_addresses_by_network.rb
+++ b/lib/fog/rackspace/requests/compute_v2/list_addresses_by_network.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Lists all addresses associated with a specified server and network
# @param [String] server_id
# @param [String] network_id
@@ -26,11 +25,9 @@ module Fog
:path => "servers/#{server_id}/ips/#{network_id}"
)
end
-
end
class Mock
-
RESPONSE_BODY = {
"addresses" => {
"public"=>[{"version"=>6, "addr"=>"2001:4800:7811:0513:0fe1:75e8:ff04:760b"}, {"version"=>4, "addr"=>"166.78.18.176"}],
@@ -45,7 +42,6 @@ module Fog
response.body = { network_id => RESPONSE_BODY["addresses"][network_id] }
response
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/list_attachments.rb b/lib/fog/rackspace/requests/compute_v2/list_attachments.rb
index 5ba2ce9..5ceeda3 100644
--- a/lib/fog/rackspace/requests/compute_v2/list_attachments.rb
+++ b/lib/fog/rackspace/requests/compute_v2/list_attachments.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Retrieves list of attached volumes
# @param [String] server_id
# @return [Excon::Response] response:
diff --git a/lib/fog/rackspace/requests/compute_v2/list_flavors.rb b/lib/fog/rackspace/requests/compute_v2/list_flavors.rb
index 5293d48..35b273c 100644
--- a/lib/fog/rackspace/requests/compute_v2/list_flavors.rb
+++ b/lib/fog/rackspace/requests/compute_v2/list_flavors.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Retrieves a list of flavors
# @return [Excon::Response] response:
# * body [Hash]:
diff --git a/lib/fog/rackspace/requests/compute_v2/list_flavors_detail.rb b/lib/fog/rackspace/requests/compute_v2/list_flavors_detail.rb
index 198b7d4..3d87db0 100644
--- a/lib/fog/rackspace/requests/compute_v2/list_flavors_detail.rb
+++ b/lib/fog/rackspace/requests/compute_v2/list_flavors_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Retrieves a list of flavors
# @return [Excon::Response] response:
# * body [Hash]:
diff --git a/lib/fog/rackspace/requests/compute_v2/list_images.rb b/lib/fog/rackspace/requests/compute_v2/list_images.rb
index d332bfc..14be0c4 100644
--- a/lib/fog/rackspace/requests/compute_v2/list_images.rb
+++ b/lib/fog/rackspace/requests/compute_v2/list_images.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Retrieves a list of images
# ==== Parameters
# * options<~String>:
diff --git a/lib/fog/rackspace/requests/compute_v2/list_images_detail.rb b/lib/fog/rackspace/requests/compute_v2/list_images_detail.rb
index 1fa7e07..a68e63d 100644
--- a/lib/fog/rackspace/requests/compute_v2/list_images_detail.rb
+++ b/lib/fog/rackspace/requests/compute_v2/list_images_detail.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Retrieves a list of images
# ==== Parameters
# * options<~String>:
diff --git a/lib/fog/rackspace/requests/compute_v2/list_keypairs.rb b/lib/fog/rackspace/requests/compute_v2/list_keypairs.rb
index 137f390..a7b6c00 100644
--- a/lib/fog/rackspace/requests/compute_v2/list_keypairs.rb
+++ b/lib/fog/rackspace/requests/compute_v2/list_keypairs.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Returns a list of all key pairs associated with an account.
# @return [Excon::Response] response :
# * body [Hash]: -
@@ -20,7 +19,7 @@ module Fog
request(
:method => 'GET',
:expects => 200,
- :path => '/os-keypairs'
+ :path => 'os-keypairs'
)
end
end
@@ -31,7 +30,6 @@ module Fog
:body => { 'keypairs' => self.data[:keypairs] })
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/list_metadata.rb b/lib/fog/rackspace/requests/compute_v2/list_metadata.rb
index 484cffa..7f9587b 100644
--- a/lib/fog/rackspace/requests/compute_v2/list_metadata.rb
+++ b/lib/fog/rackspace/requests/compute_v2/list_metadata.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Retrieves all metadata associated with a server or an image.
# @param [String<images, servers>] collection type of metadata
# @param [String] obj_id id of the object where the metadata is attached
@@ -18,7 +17,7 @@ module Fog
request(
:expects => [200, 203],
:method => 'GET',
- :path => "/#{collection}/#{obj_id}/metadata"
+ :path => "#{collection}/#{obj_id}/metadata"
)
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/list_servers.rb b/lib/fog/rackspace/requests/compute_v2/list_servers.rb
index 61fc4be..5adfe18 100644
--- a/lib/fog/rackspace/requests/compute_v2/list_servers.rb
+++ b/lib/fog/rackspace/requests/compute_v2/list_servers.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Retrieves list of servers
# @return [Excon::Response] response:
# * body [Hash]:
diff --git a/lib/fog/rackspace/requests/compute_v2/list_virtual_interfaces.rb b/lib/fog/rackspace/requests/compute_v2/list_virtual_interfaces.rb
index 11b57be..e4e6c7b 100644
--- a/lib/fog/rackspace/requests/compute_v2/list_virtual_interfaces.rb
+++ b/lib/fog/rackspace/requests/compute_v2/list_virtual_interfaces.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Lists virtual interfaces for a server
# @param [String] server_id
# @raise [Fog::Compute::RackspaceV2::NotFound] - HTTP 404
@@ -14,11 +13,10 @@ module Fog
request(
:expects => [200],
:method => 'GET',
- :path => "/servers/#{server_id}/os-virtual-interfacesv2"
+ :path => "servers/#{server_id}/os-virtual-interfacesv2"
)
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/compute_v2/reboot_server.rb b/lib/fog/rackspace/requests/compute_v2/reboot_server.rb
index 0c4aa6a..83a0796 100644
--- a/lib/fog/rackspace/requests/compute_v2/reboot_server.rb
+++ b/lib/fog/rackspace/requests/compute_v2/reboot_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Reboots server
# @param [String] server_id
# @param [String<SOFT,HARD>] type type of reboot
diff --git a/lib/fog/rackspace/requests/compute_v2/rebuild_server.rb b/lib/fog/rackspace/requests/compute_v2/rebuild_server.rb
index 79ba7d5..4b00a7c 100644
--- a/lib/fog/rackspace/requests/compute_v2/rebuild_server.rb
+++ b/lib/fog/rackspace/requests/compute_v2/rebuild_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# The rebuild operation removes all data on the server and replaces it with the specified image.
# The serverRef and all IP addresses remain the same. If you specify name, metadata, accessIPv4,
# or accessIPv6 in the rebuild request, new values replace existing values. Otherwise, these values do not change.
diff --git a/lib/fog/rackspace/requests/compute_v2/resize_server.rb b/lib/fog/rackspace/requests/compute_v2/resize_server.rb
index 945a3e0..db7fbdb 100644
--- a/lib/fog/rackspace/requests/compute_v2/resize_server.rb
+++ b/lib/fog/rackspace/requests/compute_v2/resize_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Reverts server resize operation
# @param [String] server_id id of server to resize
# @param [String] flavor_id id of the desired flavor
diff --git a/lib/fog/rackspace/requests/compute_v2/revert_resize_server.rb b/lib/fog/rackspace/requests/compute_v2/revert_resize_server.rb
index 717068c..32e35e0 100644
--- a/lib/fog/rackspace/requests/compute_v2/revert_resize_server.rb
+++ b/lib/fog/rackspace/requests/compute_v2/revert_resize_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Reverts server resize operation
# @param [String] server_id
# @return [Excon::Response] response
diff --git a/lib/fog/rackspace/requests/compute_v2/set_metadata.rb b/lib/fog/rackspace/requests/compute_v2/set_metadata.rb
index e02ae29..790a38d 100644
--- a/lib/fog/rackspace/requests/compute_v2/set_metadata.rb
+++ b/lib/fog/rackspace/requests/compute_v2/set_metadata.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Sets metadata associated with a server or an image.
# @param [String<images, servers>] collection type of metadata
# @param [String] obj_id id of the object where the metadata is attached
@@ -19,13 +18,12 @@ module Fog
request(
:expects => [200, 203],
:method => 'PUT',
- :path => "/#{collection}/#{obj_id}/metadata",
+ :path => "#{collection}/#{obj_id}/metadata",
:body => Fog::JSON.encode('metadata' => metadata)
)
end
end
-
class Mock
def set_metadata(collection, obj_id, metadata = {})
raise Fog::Compute::RackspaceV2::NotFound if obj_id == 0
diff --git a/lib/fog/rackspace/requests/compute_v2/set_metadata_item.rb b/lib/fog/rackspace/requests/compute_v2/set_metadata_item.rb
index 4981123..f28b557 100644
--- a/lib/fog/rackspace/requests/compute_v2/set_metadata_item.rb
+++ b/lib/fog/rackspace/requests/compute_v2/set_metadata_item.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Sets a single metadatum item by key.
# @param [String<images, servers>] collection type of metadata
# @param [String] obj_id id of the object where the metadata is attached
@@ -20,7 +19,7 @@ module Fog
request(
:expects => 200,
:method => 'PUT',
- :path => "/#{collection}/#{obj_id}/metadata/#{key}",
+ :path => "#{collection}/#{obj_id}/metadata/#{key}",
:body => Fog::JSON.encode('meta' => { key => value })
)
end
diff --git a/lib/fog/rackspace/requests/compute_v2/update_metadata.rb b/lib/fog/rackspace/requests/compute_v2/update_metadata.rb
index 338e0b9..a339253 100644
--- a/lib/fog/rackspace/requests/compute_v2/update_metadata.rb
+++ b/lib/fog/rackspace/requests/compute_v2/update_metadata.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Updates metadata items for a specified server or image.
# @param [String<images, servers>] collection type of metadata
# @param [String] obj_id id of the object where the metadata is attached
@@ -19,7 +18,7 @@ module Fog
request(
:expects => [200, 203],
:method => 'POST',
- :path => "/#{collection}/#{obj_id}/metadata",
+ :path => "#{collection}/#{obj_id}/metadata",
:body => Fog::JSON.encode('metadata' => metadata)
)
end
diff --git a/lib/fog/rackspace/requests/compute_v2/update_server.rb b/lib/fog/rackspace/requests/compute_v2/update_server.rb
index a3d6ca1..d89b835 100644
--- a/lib/fog/rackspace/requests/compute_v2/update_server.rb
+++ b/lib/fog/rackspace/requests/compute_v2/update_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class RackspaceV2
class Real
-
# Update the editable attributes of a specified server.
# @param [String] server_id
# @param [Hash] options
diff --git a/lib/fog/rackspace/requests/databases/create_user.rb b/lib/fog/rackspace/requests/databases/create_user.rb
index d197a3e..dbc9997 100644
--- a/lib/fog/rackspace/requests/databases/create_user.rb
+++ b/lib/fog/rackspace/requests/databases/create_user.rb
@@ -7,7 +7,8 @@ module Fog
'users' => [{
'name' => name,
'password' => password,
- 'databases' => options[:databases] || []
+ 'databases' => options[:databases] || [],
+ 'host' => options[:host] || '%'
}]
}
diff --git a/lib/fog/rackspace/requests/databases/grant_user_access.rb b/lib/fog/rackspace/requests/databases/grant_user_access.rb
new file mode 100644
index 0000000..c41c9f3
--- /dev/null
+++ b/lib/fog/rackspace/requests/databases/grant_user_access.rb
@@ -0,0 +1,32 @@
+module Fog
+ module Rackspace
+ class Databases
+ class Real
+ def grant_user_access(instance_id, user, *databases)
+ user =
+ if user.respond_to?(:name) && user.respond_to?(:host)
+ host_str =
+ if user.host && user.host != '' && user.host != '%'
+ "@#{user.host}"
+ end.to_s
+ user.name + host_str
+ else
+ user
+ end
+
+ data = { :databases => [] }
+ databases.each do |db_name|
+ data[:databases] << { :name => db_name }
+ end
+
+ request(
+ :body => Fog::JSON.encode(data),
+ :expects => 202,
+ :method => 'PUT',
+ :path => "instances/#{instance_id}/users/#{user}/databases"
+ )
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/rackspace/requests/databases/revoke_user_access.rb b/lib/fog/rackspace/requests/databases/revoke_user_access.rb
new file mode 100644
index 0000000..4b07e5b
--- /dev/null
+++ b/lib/fog/rackspace/requests/databases/revoke_user_access.rb
@@ -0,0 +1,26 @@
+module Fog
+ module Rackspace
+ class Databases
+ class Real
+ def revoke_user_access(instance_id, user, database)
+ user =
+ if user.respond_to?(:name) && user.respond_to?(:host)
+ host_str =
+ if user.host && user.host != '' && user.host != '%'
+ "@#{user.host}"
+ end.to_s
+ user.name + host_str
+ else
+ user
+ end
+
+ request(
+ :expects => 202,
+ :method => 'DELETE',
+ :path => "instances/#{instance_id}/users/#{user}/databases/#{database}"
+ )
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/rackspace/requests/dns/add_records.rb b/lib/fog/rackspace/requests/dns/add_records.rb
index e374afb..ca1ffb9 100644
--- a/lib/fog/rackspace/requests/dns/add_records.rb
+++ b/lib/fog/rackspace/requests/dns/add_records.rb
@@ -3,22 +3,21 @@ module Fog
class Rackspace
class Real
def add_records(domain_id, records)
-
validate_path_fragment :domain_id, domain_id
data = {
- 'records' => records.collect do |record|
+ 'records' => records.map do |record|
record_data = {
'name' => record[:name],
'type' => record[:type],
'data' => record[:data]
}
- if record.has_key? :ttl
+ if record.key? :ttl
record_data['ttl'] = record[:ttl]
end
- if record.has_key? :priority
+ if record.key? :priority
record_data['priority'] = record[:priority]
end
record_data
diff --git a/lib/fog/rackspace/requests/dns/callback.rb b/lib/fog/rackspace/requests/dns/callback.rb
index d9107d5..b2f91d7 100644
--- a/lib/fog/rackspace/requests/dns/callback.rb
+++ b/lib/fog/rackspace/requests/dns/callback.rb
@@ -3,7 +3,6 @@ module Fog
class Rackspace
class Real
def callback(job_id, show_details=true)
-
validate_path_fragment :job_id, job_id
request(
diff --git a/lib/fog/rackspace/requests/dns/create_domains.rb b/lib/fog/rackspace/requests/dns/create_domains.rb
index 04ab1af..8697be4 100644
--- a/lib/fog/rackspace/requests/dns/create_domains.rb
+++ b/lib/fog/rackspace/requests/dns/create_domains.rb
@@ -14,9 +14,9 @@ module Fog
'emailAddress' => domain[:email]
}
- if domain.has_key? :records
+ if domain.key? :records
domain_data['recordsList'] = {
- 'records' => domain[:records].collect do |record|
+ 'records' => domain[:records].map do |record|
record_data = {
'ttl' => record[:ttl],
'data' => record[:data],
@@ -24,7 +24,7 @@ module Fog
'type' => record[:type],
}
- if record.has_key? :priority
+ if record.key? :priority
record_data.merge!({'priority' => record[:priority]})
else
record_data
diff --git a/lib/fog/rackspace/requests/dns/list_domain_details.rb b/lib/fog/rackspace/requests/dns/list_domain_details.rb
index ccf6652..a216295 100644
--- a/lib/fog/rackspace/requests/dns/list_domain_details.rb
+++ b/lib/fog/rackspace/requests/dns/list_domain_details.rb
@@ -3,16 +3,15 @@ module Fog
class Rackspace
class Real
def list_domain_details(domain_id, options={})
-
validate_path_fragment :domain_id, domain_id
path = "domains/#{domain_id}"
query_data = {}
- if options.has_key? :show_records
+ if options.key? :show_records
query_data['showRecords'] = options[:show_records]
end
- if options.has_key? :show_subdomains
+ if options.key? :show_subdomains
query_data['showSubdomains'] = options[:show_subdomains]
end
diff --git a/lib/fog/rackspace/requests/dns/list_domains.rb b/lib/fog/rackspace/requests/dns/list_domains.rb
index f9e2bc0..cb6cf36 100644
--- a/lib/fog/rackspace/requests/dns/list_domains.rb
+++ b/lib/fog/rackspace/requests/dns/list_domains.rb
@@ -3,7 +3,6 @@ module Fog
class Rackspace
class Real
def list_domains(options={})
-
path = 'domains'
unless options.empty?
path += "?#{array_to_query_string(options)}"
diff --git a/lib/fog/rackspace/requests/dns/list_record_details.rb b/lib/fog/rackspace/requests/dns/list_record_details.rb
index c4eb169..63b1b0b 100644
--- a/lib/fog/rackspace/requests/dns/list_record_details.rb
+++ b/lib/fog/rackspace/requests/dns/list_record_details.rb
@@ -3,7 +3,6 @@ module Fog
class Rackspace
class Real
def list_record_details(domain_id, record_id)
-
validate_path_fragment :domain_id, domain_id
validate_path_fragment :record_id, record_id
diff --git a/lib/fog/rackspace/requests/dns/list_records.rb b/lib/fog/rackspace/requests/dns/list_records.rb
index 62083d2..593568f 100644
--- a/lib/fog/rackspace/requests/dns/list_records.rb
+++ b/lib/fog/rackspace/requests/dns/list_records.rb
@@ -3,7 +3,6 @@ module Fog
class Rackspace
class Real
def list_records(domain_id, options={})
-
validate_path_fragment :domain_id, domain_id
path = "domains/#{domain_id}/records"
diff --git a/lib/fog/rackspace/requests/dns/list_subdomains.rb b/lib/fog/rackspace/requests/dns/list_subdomains.rb
index 3371ee1..88f227f 100644
--- a/lib/fog/rackspace/requests/dns/list_subdomains.rb
+++ b/lib/fog/rackspace/requests/dns/list_subdomains.rb
@@ -3,7 +3,6 @@ module Fog
class Rackspace
class Real
def list_subdomains(domain_id, options={})
-
validate_path_fragment :domain_id, domain_id
path = "domains/#{domain_id}/subdomains"
diff --git a/lib/fog/rackspace/requests/dns/modify_domain.rb b/lib/fog/rackspace/requests/dns/modify_domain.rb
index f438bc4..ea3cdd8 100644
--- a/lib/fog/rackspace/requests/dns/modify_domain.rb
+++ b/lib/fog/rackspace/requests/dns/modify_domain.rb
@@ -3,19 +3,18 @@ module Fog
class Rackspace
class Real
def modify_domain(domain_id, options={})
-
validate_path_fragment :domain_id, domain_id
path = "domains/#{domain_id}"
data = {}
- if options.has_key? :ttl
+ if options.key? :ttl
data['ttl'] = options[:ttl]
end
- if options.has_key? :comment
+ if options.key? :comment
data['comment'] = options[:comment]
end
- if options.has_key? :email
+ if options.key? :email
data['emailAddress'] = options[:email]
end
diff --git a/lib/fog/rackspace/requests/dns/modify_record.rb b/lib/fog/rackspace/requests/dns/modify_record.rb
index c12027b..e66b948 100644
--- a/lib/fog/rackspace/requests/dns/modify_record.rb
+++ b/lib/fog/rackspace/requests/dns/modify_record.rb
@@ -3,20 +3,19 @@ module Fog
class Rackspace
class Real
def modify_record(domain_id, record_id, options={})
-
validate_path_fragment :domain_id, domain_id
validate_path_fragment :record_id, record_id
path = "domains/#{domain_id}/records/#{record_id}"
data = {}
- if options.has_key? :ttl
+ if options.key? :ttl
data['ttl'] = options[:ttl]
end
- if options.has_key? :name
+ if options.key? :name
data['name'] = options[:name]
end
- if options.has_key? :data
+ if options.key? :data
data['data'] = options[:data]
end
diff --git a/lib/fog/rackspace/requests/dns/remove_domain.rb b/lib/fog/rackspace/requests/dns/remove_domain.rb
index 5484c84..9039abf 100644
--- a/lib/fog/rackspace/requests/dns/remove_domain.rb
+++ b/lib/fog/rackspace/requests/dns/remove_domain.rb
@@ -3,13 +3,12 @@ module Fog
class Rackspace
class Real
def remove_domain(domain_id, options={})
-
validate_path_fragment :domain_id, domain_id
path = "domains/#{domain_id}"
query_data = {}
- if options.has_key? :delete_subdomains
+ if options.key? :delete_subdomains
query_data['deleteSubdomains'] = options[:delete_subdomains].to_s
end
diff --git a/lib/fog/rackspace/requests/dns/remove_domains.rb b/lib/fog/rackspace/requests/dns/remove_domains.rb
index 35e43ee..bc2c1ae 100644
--- a/lib/fog/rackspace/requests/dns/remove_domains.rb
+++ b/lib/fog/rackspace/requests/dns/remove_domains.rb
@@ -3,11 +3,10 @@ module Fog
class Rackspace
class Real
def remove_domains(domain_ids, options={})
-
- path = "domains?" + domain_ids.collect { |domain_id| "id=#{domain_id}" }.join('&')
+ path = "domains?" + domain_ids.map { |domain_id| "id=#{domain_id}" }.join('&')
query_data = {}
- if options.has_key? :delete_subdomains
+ if options.key? :delete_subdomains
query_data['deleteSubdomains'] = options[:delete_subdomains]
end
diff --git a/lib/fog/rackspace/requests/dns/remove_record.rb b/lib/fog/rackspace/requests/dns/remove_record.rb
index 42c3df8..650a240 100644
--- a/lib/fog/rackspace/requests/dns/remove_record.rb
+++ b/lib/fog/rackspace/requests/dns/remove_record.rb
@@ -3,7 +3,6 @@ module Fog
class Rackspace
class Real
def remove_record(domain_id, record_id)
-
validate_path_fragment :domain_id, domain_id
validate_path_fragment :record_id, record_id
diff --git a/lib/fog/rackspace/requests/dns/remove_records.rb b/lib/fog/rackspace/requests/dns/remove_records.rb
index f1126f8..5651c26 100644
--- a/lib/fog/rackspace/requests/dns/remove_records.rb
+++ b/lib/fog/rackspace/requests/dns/remove_records.rb
@@ -3,10 +3,9 @@ module Fog
class Rackspace
class Real
def remove_records(domain_id, record_ids)
-
validate_path_fragment :domain_id, domain_id
- path = "domains/#{domain_id}/records?" + record_ids.collect { |record_id| "id=#{record_id}" }.join('&')
+ path = "domains/#{domain_id}/records?" + record_ids.map { |record_id| "id=#{record_id}" }.join('&')
request(
:expects => [202, 204],
diff --git a/lib/fog/rackspace/requests/load_balancers/create_load_balancer.rb b/lib/fog/rackspace/requests/load_balancers/create_load_balancer.rb
index 287f42b..c8ac4e4 100644
--- a/lib/fog/rackspace/requests/load_balancers/create_load_balancer.rb
+++ b/lib/fog/rackspace/requests/load_balancers/create_load_balancer.rb
@@ -2,19 +2,37 @@ module Fog
module Rackspace
class LoadBalancers
class Real
- def create_load_balancer(name, protocol, port, virtual_ips, nodes, options = {})
- data = {
- 'loadBalancer' => {
- 'name' => name,
- 'port' => port,
- 'protocol' => protocol,
- 'virtualIps' => virtual_ips,
- 'nodes' => nodes
- }
+
+ # Issue an asynchronous request to create a new Load Balancer.
+ #
+ # @param name [String] human-friendly identifier for the balancer that will be shown in
+ # the web UI.
+ # @param protocol [String] well-known protocol describing the traffic to be load balanced.
+ # @param port [Integer] port for the balancer to listen on and balance to.
+ # @param virtual_ips [Array<Hash>] description of the kind of IP address to bind to, or id
+ # of the existing virtual IP from another balancer. Examples: `{ 'type' => 'PUBLIC' }`,
+ # `{ 'type' => 'PRIVATE' }`, `{ 'id' => 1234 }`
+ # @param nodes [Array<Hash>] collection of
+ # @option options [String] :algorithm balancing algorithm for the balancer to use.
+ # See http://docs.rackspace.com/loadbalancers/api/v1.0/clb-devguide/content/Algorithms-d1e4367.html
+ # @option options [String] :timeout amount of time the load balancer will wait for a response
+ # from a back-end node before terminating the connection. Defaults to 30 seconds, may be
+ # increased to a maximum of 120 seconds.
+ #
+ def create_load_balancer(name, protocol, port = nil, virtual_ips = [{'type' => 'PUBLIC'}], nodes = nil, options = {})
+ lb_data = {
+ 'name' => name,
+ 'protocol' => protocol,
+ 'virtualIps' => virtual_ips
}
- data['loadBalancer']['algorithm'] = options[:algorithm] if options.has_key? :algorithm
- data['loadBalancer']['timeout'] = options[:timeout] if options.has_key? :timeout
+ lb_data['nodes'] = nodes if nodes && !nodes.empty?
+ lb_data['port'] = port if port
+ lb_data['algorithm'] = options[:algorithm] if options.key? :algorithm
+ lb_data['timeout'] = options[:timeout] if options.key? :timeout
+ lb_data['httpsRedirect'] = options[:https_redirect] if options.key? :https_redirect
+
+ data = { 'loadBalancer' => lb_data }
request(
:body => Fog::JSON.encode(data),
@@ -23,15 +41,66 @@ module Fog
:path => 'loadbalancers.json'
)
end
+
end
class Mock
def create_load_balancer(name, protocol, port, virtual_ips, nodes, options = {})
- data = {"loadBalancer"=>{"name"=>name, "id"=>uniq_id, "protocol"=>protocol, "port"=>port, "algorithm"=>"RANDOM", "status"=>"BUILD",
- "cluster"=>{"name"=>"my-cluster.rackspace.net"}, "timeout"=>30, "created"=>{"time"=> MockData.zulu_time},
- "updated"=>{"time"=>MockData.zulu_time }, "halfClosed"=>false, "connectionLogging"=>{"enabled"=>false}, "contentCaching"=>{"enabled"=>false}}}
- data["virtual_ips"] = virtual_ips.collect {|n| {"virtualIps"=>[{"address"=> MockData.ipv4_address, "id"=>uniq_id, "type"=>n[:type], "ipVersion"=>"IPV4"}, {"address"=> MockData.ipv6_address, "id"=> Fog::Mock.random_numbers(4), "type"=>"PUBLIC", "ipVersion"=>"IPV6"}], "sourceAddresses"=>{"ipv6Public"=> MockData.ipv6_address, "ipv4Servicenet"=>MockData.ipv4_address, "ipv4Public"=>MockData.ipv4_address}}
- data["nodes"] = nodes.collect {|n| {"address"=>n[:address], "id"=>uniq_id, "type"=>"PRIMARY", "port"=>n[:port], "status"=>"ONLINE", "condition"=>"ENABLED", "weight"=>1}}}
+ data = {
+ "loadBalancer" => {
+ "name" => name,
+ "id" => Fog::Mock.random_numbers(6),
+ "protocol" => protocol,
+ "port" => port,
+ "algorithm" => "RANDOM",
+ "status" => "BUILD",
+ "cluster" => { "name" => "my-cluster.rackspace.net" },
+ "timeout" => 30,
+ "created" => {"time" => MockData.zulu_time },
+ "updated" => {"time" => MockData.zulu_time },
+ "halfClosed" => false,
+ "connectionLogging" => { "enabled" => false },
+ "contentCaching" => { "enabled" => false },
+ "httpsRedirect" => false
+ }
+ }
+
+ data["virtual_ips"] = virtual_ips.map do |n|
+ {
+ "virtualIps" => [
+ {
+ "address" => MockData.ipv4_address,
+ "id" => Fog::Mock.random_numbers(6),
+ "type" => n.type,
+ "ipVersion" => "IPV4"
+ },
+ {
+ "address" => MockData.ipv6_address,
+ "id" => Fog::Mock.random_numbers(4),
+ "type" => "PUBLIC",
+ "ipVersion" => "IPV6"
+ }
+ ],
+ "sourceAddresses" => {
+ "ipv6Public" => MockData.ipv6_address,
+ "ipv4Servicenet" => MockData.ipv4_address,
+ "ipv4Public" => MockData.ipv4_address
+ }
+ }
+ end
+
+ data["nodes"] = nodes.map do |n|
+ {
+ "address" => n.address,
+ "id" => Fog::Mock.random_numbers(6),
+ "type" => "PRIMARY",
+ "port" => n.port,
+ "status" => "ONLINE",
+ "condition" => "ENABLED",
+ "weight" => 1
+ }
+ end
+
Excon::Response.new(:body => data, :status => 202)
end
end
diff --git a/lib/fog/rackspace/requests/load_balancers/create_node.rb b/lib/fog/rackspace/requests/load_balancers/create_node.rb
index b0a3956..5e12ce7 100644
--- a/lib/fog/rackspace/requests/load_balancers/create_node.rb
+++ b/lib/fog/rackspace/requests/load_balancers/create_node.rb
@@ -11,7 +11,7 @@ module Fog
'condition' => condition
}
]}
- if options.has_key?(:weight)
+ if options.key?(:weight)
data['nodes'][0]['weight'] = options[:weight]
end
request(
diff --git a/lib/fog/rackspace/requests/load_balancers/delete_load_balancer.rb b/lib/fog/rackspace/requests/load_balancers/delete_load_balancer.rb
index 7ea20e6..2b87e33 100644
--- a/lib/fog/rackspace/requests/load_balancers/delete_load_balancer.rb
+++ b/lib/fog/rackspace/requests/load_balancers/delete_load_balancer.rb
@@ -1,7 +1,6 @@
module Fog
module Rackspace
class LoadBalancers
-
class Real
def delete_load_balancer(load_balancer_id)
request(
@@ -19,7 +18,6 @@ module Fog
response.body = ""
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/load_balancers/delete_nodes.rb b/lib/fog/rackspace/requests/load_balancers/delete_nodes.rb
index 10b2821..87e9935 100644
--- a/lib/fog/rackspace/requests/load_balancers/delete_nodes.rb
+++ b/lib/fog/rackspace/requests/load_balancers/delete_nodes.rb
@@ -3,7 +3,7 @@ module Fog
class LoadBalancers
class Real
def delete_nodes(load_balancer_id, *node_ids)
- query_string = node_ids.collect { |node_id| "id=#{node_id}" }.join('&')
+ query_string = node_ids.map { |node_id| "id=#{node_id}" }.join('&')
request(
:expects => [200, 202],
:path => "loadbalancers/#{load_balancer_id}/nodes?#{query_string}",
diff --git a/lib/fog/rackspace/requests/load_balancers/get_load_balancer.rb b/lib/fog/rackspace/requests/load_balancers/get_load_balancer.rb
index d974b34..4bb7f59 100644
--- a/lib/fog/rackspace/requests/load_balancers/get_load_balancer.rb
+++ b/lib/fog/rackspace/requests/load_balancers/get_load_balancer.rb
@@ -11,7 +11,6 @@ module Fog
end
end
-
class Mock
def get_load_balancer(load_balancer_id)
response = Excon::Response.new
@@ -31,15 +30,15 @@ module Fog
"virtualIps"=>[
{"address"=> MockData.ipv4_address, "id"=>Fog::Mock.random_numbers(4), "type"=>"PUBLIC", "ipVersion"=>"IPV4"},
{"address"=> MockData.ipv6_address, "id"=>Fog::Mock.random_numbers(4), "type"=>"PUBLIC", "ipVersion"=>"IPV6"}],
- "sourceAddresses"=>{"ipv6Public"=> MockData.ipv6_address, "ipv4Servicenet"=> MockData.ipv4_address, "ipv4Public"=> MockData.ipv4_address},
- "updated"=>{"time"=>"2013-09-04T06:29:09Z"},
- "halfClosed"=>false,
- "connectionLogging"=>{"enabled"=>false},
- "contentCaching"=>{"enabled"=>false}}}
+ "sourceAddresses"=>{"ipv6Public"=> MockData.ipv6_address, "ipv4Servicenet"=> MockData.ipv4_address, "ipv4Public"=> MockData.ipv4_address},
+ "updated"=>{"time"=>"2013-09-04T06:29:09Z"},
+ "halfClosed"=>false,
+ "connectionLogging"=>{"enabled"=>false},
+ "contentCaching"=>{"enabled"=>false},
+ "httpsRedirect"=>false}}
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/load_balancers/get_load_balancer_usage.rb b/lib/fog/rackspace/requests/load_balancers/get_load_balancer_usage.rb
index dc65c1d..7283c69 100644
--- a/lib/fog/rackspace/requests/load_balancers/get_load_balancer_usage.rb
+++ b/lib/fog/rackspace/requests/load_balancers/get_load_balancer_usage.rb
@@ -4,7 +4,7 @@ module Fog
class Real
def get_load_balancer_usage(load_balancer_id, options = {})
#TODO - Didn't implement usage/current. Not sure if it is needed
- if options.has_key? :start_time and options.has_key? :end_time
+ if options.key? :start_time and options.key? :end_time
query = "?startTime=#{options[:start_time]}&endTime=#{options[:end_time]}"
else
query = ''
diff --git a/lib/fog/rackspace/requests/load_balancers/get_stats.rb b/lib/fog/rackspace/requests/load_balancers/get_stats.rb
index ae8f010..61f0106 100644
--- a/lib/fog/rackspace/requests/load_balancers/get_stats.rb
+++ b/lib/fog/rackspace/requests/load_balancers/get_stats.rb
@@ -3,7 +3,6 @@ module Fog
class LoadBalancers
class Real
def get_stats(load_balancer_id)
-
request(
:expects => 200,
:path => "loadbalancers/#{load_balancer_id}/stats",
diff --git a/lib/fog/rackspace/requests/load_balancers/get_usage.rb b/lib/fog/rackspace/requests/load_balancers/get_usage.rb
index 1c2a117..d5b6228 100644
--- a/lib/fog/rackspace/requests/load_balancers/get_usage.rb
+++ b/lib/fog/rackspace/requests/load_balancers/get_usage.rb
@@ -3,7 +3,7 @@ module Fog
class LoadBalancers
class Real
def get_usage(options = {})
- if options.has_key? :start_time and options.has_key? :end_time
+ if options.key? :start_time and options.key? :end_time
query = "?startTime=#{options[:start_time]}&endTime=#{options[:end_time]}"
else
query = ''
diff --git a/lib/fog/rackspace/requests/load_balancers/list_load_balancers.rb b/lib/fog/rackspace/requests/load_balancers/list_load_balancers.rb
index ac1b7f2..5425080 100644
--- a/lib/fog/rackspace/requests/load_balancers/list_load_balancers.rb
+++ b/lib/fog/rackspace/requests/load_balancers/list_load_balancers.rb
@@ -3,7 +3,7 @@ module Fog
class LoadBalancers
class Real
def list_load_balancers(options = {})
- if options.has_key? :node_address
+ if options.key? :node_address
query_string = "?nodeaddress=#{options[:node_address]}"
else
query_string = ''
diff --git a/lib/fog/rackspace/requests/load_balancers/set_monitor.rb b/lib/fog/rackspace/requests/load_balancers/set_monitor.rb
index a216916..3d0f15a 100644
--- a/lib/fog/rackspace/requests/load_balancers/set_monitor.rb
+++ b/lib/fog/rackspace/requests/load_balancers/set_monitor.rb
@@ -9,13 +9,13 @@ module Fog
'timeout' => timeout,
'attemptsBeforeDeactivation' => attempsBeforeDeactivation
}
- if options.has_key? :path
+ if options.key? :path
data['path'] = options[:path]
end
- if options.has_key? :body_regex
+ if options.key? :body_regex
data['bodyRegex'] = options[:body_regex]
end
- if options.has_key? :status_regex
+ if options.key? :status_regex
data['statusRegex'] = options[:status_regex]
end
request(
diff --git a/lib/fog/rackspace/requests/load_balancers/set_ssl_termination.rb b/lib/fog/rackspace/requests/load_balancers/set_ssl_termination.rb
index 4bb493a..8d96c15 100644
--- a/lib/fog/rackspace/requests/load_balancers/set_ssl_termination.rb
+++ b/lib/fog/rackspace/requests/load_balancers/set_ssl_termination.rb
@@ -9,13 +9,13 @@ module Fog
:certificate => certificate
}
- if options.has_key? :intermediate_certificate
+ if options.key? :intermediate_certificate
data['intermediateCertificate'] = options[:intermediate_certificate]
end
- if options.has_key? :enabled
+ if options.key? :enabled
data['enabled'] = options[:enabled]
end
- if options.has_key? :secure_traffic_only
+ if options.key? :secure_traffic_only
data['secureTrafficOnly'] = options[:secure_traffic_only]
end
request(
diff --git a/lib/fog/rackspace/requests/load_balancers/update_load_balancer.rb b/lib/fog/rackspace/requests/load_balancers/update_load_balancer.rb
index 2c1ac54..4dcbdd7 100644
--- a/lib/fog/rackspace/requests/load_balancers/update_load_balancer.rb
+++ b/lib/fog/rackspace/requests/load_balancers/update_load_balancer.rb
@@ -9,7 +9,8 @@ module Fog
'port' => options[:port],
'protocol' => options[:protocol],
'algorithm' => options[:algorithm],
- 'timeout' => options[:timeout]
+ 'timeout' => options[:timeout],
+ 'httpsRedirect' => options[:https_redirect]
}
}
request(
diff --git a/lib/fog/rackspace/requests/load_balancers/update_node.rb b/lib/fog/rackspace/requests/load_balancers/update_node.rb
index 6457098..6bb34aa 100644
--- a/lib/fog/rackspace/requests/load_balancers/update_node.rb
+++ b/lib/fog/rackspace/requests/load_balancers/update_node.rb
@@ -6,10 +6,10 @@ module Fog
data = {
'node' => {}
}
- if options.has_key? :weight
+ if options.key? :weight
data['node']['weight'] = options[:weight]
end
- if options.has_key? :condition
+ if options.key? :condition
data['node']['condition'] = options[:condition]
end
#TODO - Do anything if no valid options are passed in?
diff --git a/lib/fog/rackspace/requests/monitoring/create_agent_token.rb b/lib/fog/rackspace/requests/monitoring/create_agent_token.rb
index 639ea76..8f7703e 100644
--- a/lib/fog/rackspace/requests/monitoring/create_agent_token.rb
+++ b/lib/fog/rackspace/requests/monitoring/create_agent_token.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def create_agent_token(options = {})
data = options.dup
request(
@@ -16,7 +15,6 @@ module Fog
class Mock
def create_agent_token(options = {})
-
account_id = Fog::Mock.random_numbers(6).to_s
token = Fog::Mock.random_letters(50).to_s
@@ -47,4 +45,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/create_alarm.rb b/lib/fog/rackspace/requests/monitoring/create_alarm.rb
index d0d182f..aaa9b3a 100644
--- a/lib/fog/rackspace/requests/monitoring/create_alarm.rb
+++ b/lib/fog/rackspace/requests/monitoring/create_alarm.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def create_alarm(entity_id, options = {})
data = options.dup
request(
@@ -16,7 +15,6 @@ module Fog
class Mock
def create_alarm(entity_id, options = {})
-
alarm_id = Fog::Mock.random_letters(10)
account_id = Fog::Mock.random_numbers(6).to_s
@@ -42,10 +40,8 @@ module Fog
}
response.remote_ip = Fog::Rackspace::MockData.ipv4_address
response
-
end
end
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/create_check.rb b/lib/fog/rackspace/requests/monitoring/create_check.rb
index 9783cf3..32bbc8a 100644
--- a/lib/fog/rackspace/requests/monitoring/create_check.rb
+++ b/lib/fog/rackspace/requests/monitoring/create_check.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def create_check(entity_id, options = {})
data = options.dup
request(
@@ -16,7 +15,6 @@ module Fog
class Mock
def create_check(entity_id, options = {})
-
account_id = Fog::Mock.random_numbers(6).to_s
mock_id = Fog::Mock.random_letters(10).to_s
@@ -47,4 +45,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/create_entity.rb b/lib/fog/rackspace/requests/monitoring/create_entity.rb
index 5325503..a46581f 100644
--- a/lib/fog/rackspace/requests/monitoring/create_entity.rb
+++ b/lib/fog/rackspace/requests/monitoring/create_entity.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def create_entity(options = {})
data = options.dup
request(
@@ -15,9 +14,7 @@ module Fog
end
class Mock
-
def create_entity(options = {})
-
account_id = Fog::Mock.random_numbers(6).to_s
entity_id = Fog::Mock.random_letters(10)
@@ -48,4 +45,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/create_notification.rb b/lib/fog/rackspace/requests/monitoring/create_notification.rb
index 6a611b4..a755f5a 100644
--- a/lib/fog/rackspace/requests/monitoring/create_notification.rb
+++ b/lib/fog/rackspace/requests/monitoring/create_notification.rb
@@ -15,4 +15,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/delete_agent_token.rb b/lib/fog/rackspace/requests/monitoring/delete_agent_token.rb
index 72ecd89..d21a4ec 100644
--- a/lib/fog/rackspace/requests/monitoring/delete_agent_token.rb
+++ b/lib/fog/rackspace/requests/monitoring/delete_agent_token.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def delete_agent_token(token_id)
request(
:expects => [204],
@@ -14,7 +13,6 @@ module Fog
class Mock
def delete_agent_token(options = {})
-
account_id = Fog::Mock.random_numbers(6).to_s
token = Fog::Mock.random_letters(50).to_s
@@ -42,8 +40,6 @@ module Fog
response
end
end
-
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/delete_alarm.rb b/lib/fog/rackspace/requests/monitoring/delete_alarm.rb
index 16d949d..77be669 100644
--- a/lib/fog/rackspace/requests/monitoring/delete_alarm.rb
+++ b/lib/fog/rackspace/requests/monitoring/delete_alarm.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def delete_alarm(entity_id, alarm_id)
request(
:expects => [204],
@@ -13,9 +12,7 @@ module Fog
end
class Mock
-
def delete_alarm(entity_id, alarm_id)
-
if entity_id == -1 || alarm_id == -1
raise Fog::Rackspace::Monitoring::NotFound
end
@@ -42,4 +39,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/delete_check.rb b/lib/fog/rackspace/requests/monitoring/delete_check.rb
index eadcf65..021dcc2 100644
--- a/lib/fog/rackspace/requests/monitoring/delete_check.rb
+++ b/lib/fog/rackspace/requests/monitoring/delete_check.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def delete_check(entity_id, check_id)
request(
:expects => [204],
@@ -14,7 +13,6 @@ module Fog
class Mock
def delete_check(entity_id, check_id)
-
if entity_id == -1 || check_id == -1
raise Fog::Rackspace::Monitoring::NotFound
end
@@ -40,4 +38,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/delete_entity.rb b/lib/fog/rackspace/requests/monitoring/delete_entity.rb
index a50b6ac..03dbc42 100644
--- a/lib/fog/rackspace/requests/monitoring/delete_entity.rb
+++ b/lib/fog/rackspace/requests/monitoring/delete_entity.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def delete_entity(entity_id)
request(
:expects => [204],
@@ -13,9 +12,7 @@ module Fog
end
class Mock
-
def delete_entity(entity_id)
-
if entity_id == -1
raise Fog::Rackspace::Monitoring::NotFound
end
@@ -41,4 +38,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/delete_notification.rb b/lib/fog/rackspace/requests/monitoring/delete_notification.rb
index 3746415..681434f 100644
--- a/lib/fog/rackspace/requests/monitoring/delete_notification.rb
+++ b/lib/fog/rackspace/requests/monitoring/delete_notification.rb
@@ -13,4 +13,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/evaluate_alarm_example.rb b/lib/fog/rackspace/requests/monitoring/evaluate_alarm_example.rb
index 8217f73..a1f1cb0 100644
--- a/lib/fog/rackspace/requests/monitoring/evaluate_alarm_example.rb
+++ b/lib/fog/rackspace/requests/monitoring/evaluate_alarm_example.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def evaluate_alarm_example(id, options = {})
options ||= {}
data = {:values => options.dup}
@@ -17,5 +16,3 @@ module Fog
end
end
end
-
-
diff --git a/lib/fog/rackspace/requests/monitoring/get_agent.rb b/lib/fog/rackspace/requests/monitoring/get_agent.rb
index f2c0c43..0c7b6e8 100644
--- a/lib/fog/rackspace/requests/monitoring/get_agent.rb
+++ b/lib/fog/rackspace/requests/monitoring/get_agent.rb
@@ -13,7 +13,6 @@ module Fog
class Mock
def get_agent(agent_id)
-
if agent_id == -1
raise Fog::Rackspace::Monitoring::NotFound
end
diff --git a/lib/fog/rackspace/requests/monitoring/get_agent_token.rb b/lib/fog/rackspace/requests/monitoring/get_agent_token.rb
index f390bce..70ad80e 100644
--- a/lib/fog/rackspace/requests/monitoring/get_agent_token.rb
+++ b/lib/fog/rackspace/requests/monitoring/get_agent_token.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def get_agent_token(id)
request(
:expects => [200, 203],
@@ -14,7 +13,6 @@ module Fog
class Mock
def get_agent_token(id)
-
token = Fog::Mock.random_letters(50).to_s
if id == -1
@@ -44,9 +42,6 @@ module Fog
response
end
end
-
end
end
end
-
-
diff --git a/lib/fog/rackspace/requests/monitoring/get_alarm.rb b/lib/fog/rackspace/requests/monitoring/get_alarm.rb
index c1c42ee..ad0c66a 100644
--- a/lib/fog/rackspace/requests/monitoring/get_alarm.rb
+++ b/lib/fog/rackspace/requests/monitoring/get_alarm.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def get_alarm(entity_id, alarm_id)
request(
:expects => [200, 203],
@@ -10,13 +9,10 @@ module Fog
:path => "entities/#{entity_id}/alarms/#{alarm_id}"
)
end
-
end
class Mock
-
def get_alarm(entity_id, alarm_id)
-
if entity_id == -1 || alarm_id == -1
raise Fog::Rackspace::Monitoring::NotFound
end
@@ -53,5 +49,3 @@ module Fog
end
end
end
-
-
diff --git a/lib/fog/rackspace/requests/monitoring/get_alarm_example.rb b/lib/fog/rackspace/requests/monitoring/get_alarm_example.rb
index b1340cb..4a001d6 100644
--- a/lib/fog/rackspace/requests/monitoring/get_alarm_example.rb
+++ b/lib/fog/rackspace/requests/monitoring/get_alarm_example.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def get_alarm_example(id)
request(
:expects => [200, 203],
@@ -10,10 +9,7 @@ module Fog
:path => "alarm_examples/#{id}"
)
end
-
end
end
end
end
-
-
diff --git a/lib/fog/rackspace/requests/monitoring/get_check.rb b/lib/fog/rackspace/requests/monitoring/get_check.rb
index 7e4391b..a4b2aaa 100644
--- a/lib/fog/rackspace/requests/monitoring/get_check.rb
+++ b/lib/fog/rackspace/requests/monitoring/get_check.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def get_check(entity_id, check_id)
request(
:expects => [200, 203],
@@ -14,7 +13,6 @@ module Fog
class Mock
def get_check(entity_id, check_id)
-
if entity_id == -1 || check_id == -1
raise Fog::Rackspace::Monitoring::NotFound
end
@@ -56,5 +54,3 @@ module Fog
end
end
end
-
-
diff --git a/lib/fog/rackspace/requests/monitoring/get_cpus_info.rb b/lib/fog/rackspace/requests/monitoring/get_cpus_info.rb
index 2369bc6..702e679 100644
--- a/lib/fog/rackspace/requests/monitoring/get_cpus_info.rb
+++ b/lib/fog/rackspace/requests/monitoring/get_cpus_info.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def get_cpus_info(agent_id)
request(
:expects => [200, 203],
@@ -14,7 +13,6 @@ module Fog
class Mock
def get_cpus_info(agent_id)
-
if agent_id == -1
raise Fog::Rackspace::Monitoring::BadRequest
end
diff --git a/lib/fog/rackspace/requests/monitoring/get_disks_info.rb b/lib/fog/rackspace/requests/monitoring/get_disks_info.rb
index 761adb6..816bd48 100644
--- a/lib/fog/rackspace/requests/monitoring/get_disks_info.rb
+++ b/lib/fog/rackspace/requests/monitoring/get_disks_info.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def get_disks_info(agent_id)
request(
:expects => [200, 203],
@@ -14,7 +13,6 @@ module Fog
class Mock
def get_disks_info(agent_id)
-
if agent_id == -1
raise Fog::Rackspace::Monitoring::BadRequest
end
diff --git a/lib/fog/rackspace/requests/monitoring/get_entity.rb b/lib/fog/rackspace/requests/monitoring/get_entity.rb
index 109f8a3..b81ad34 100644
--- a/lib/fog/rackspace/requests/monitoring/get_entity.rb
+++ b/lib/fog/rackspace/requests/monitoring/get_entity.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def get_entity(entity_id)
request(
:expects => [200, 203],
@@ -10,13 +9,10 @@ module Fog
:path => "entities/#{entity_id}"
)
end
-
end
class Mock
-
def get_entity(entity_id)
-
account_id = Fog::Mock.random_numbers(6).to_s
server_id = Fog::Rackspace::MockData.uuid
entity_label = Fog::Mock.random_letters(10)
@@ -57,5 +53,3 @@ module Fog
end
end
end
-
-
diff --git a/lib/fog/rackspace/requests/monitoring/get_filesystems_info.rb b/lib/fog/rackspace/requests/monitoring/get_filesystems_info.rb
index 81358d5..d18361f 100644
--- a/lib/fog/rackspace/requests/monitoring/get_filesystems_info.rb
+++ b/lib/fog/rackspace/requests/monitoring/get_filesystems_info.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def get_filesystems_info(agent_id)
request(
:expects => [200, 203],
@@ -14,7 +13,6 @@ module Fog
class Mock
def get_filesystems_info(agent_id)
-
if agent_id == -1
raise Fog::Rackspace::Monitoring::BadRequest
end
diff --git a/lib/fog/rackspace/requests/monitoring/get_logged_in_user_info.rb b/lib/fog/rackspace/requests/monitoring/get_logged_in_user_info.rb
index 9130284..8d6b7a9 100644
--- a/lib/fog/rackspace/requests/monitoring/get_logged_in_user_info.rb
+++ b/lib/fog/rackspace/requests/monitoring/get_logged_in_user_info.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def get_logged_in_user_info(agent_id)
request(
:expects => [200, 203],
@@ -14,7 +13,6 @@ module Fog
class Mock
def get_logged_in_user_info(agent_id)
-
if agent_id == -1
raise Fog::Rackspace::Monitoring::BadRequest
end
diff --git a/lib/fog/rackspace/requests/monitoring/get_memory_info.rb b/lib/fog/rackspace/requests/monitoring/get_memory_info.rb
index e1a6277..26be6cc 100644
--- a/lib/fog/rackspace/requests/monitoring/get_memory_info.rb
+++ b/lib/fog/rackspace/requests/monitoring/get_memory_info.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def get_memory_info(agent_id)
request(
:expects => [200, 203],
@@ -14,7 +13,6 @@ module Fog
class Mock
def get_memory_info(agent_id)
-
if agent_id == -1
raise Fog::Rackspace::Monitoring::BadRequest
end
diff --git a/lib/fog/rackspace/requests/monitoring/get_network_interfaces_info.rb b/lib/fog/rackspace/requests/monitoring/get_network_interfaces_info.rb
index 9ee29ca..9d36fe3 100644
--- a/lib/fog/rackspace/requests/monitoring/get_network_interfaces_info.rb
+++ b/lib/fog/rackspace/requests/monitoring/get_network_interfaces_info.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def get_network_interfaces_info(agent_id)
request(
:expects => [200, 203],
@@ -14,7 +13,6 @@ module Fog
class Mock
def get_network_interfaces_info(agent_id)
-
if agent_id == -1
raise Fog::Rackspace::Monitoring::BadRequest
end
diff --git a/lib/fog/rackspace/requests/monitoring/get_notification.rb b/lib/fog/rackspace/requests/monitoring/get_notification.rb
index 00ef2fb..a196152 100644
--- a/lib/fog/rackspace/requests/monitoring/get_notification.rb
+++ b/lib/fog/rackspace/requests/monitoring/get_notification.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def get_notification(notification_id)
request(
:expects => [200],
@@ -10,7 +9,6 @@ module Fog
:path => "notifications/#{notification_id}"
)
end
-
end
class Mock
@@ -46,5 +44,3 @@ module Fog
end
end
end
-
-
diff --git a/lib/fog/rackspace/requests/monitoring/get_processes_info.rb b/lib/fog/rackspace/requests/monitoring/get_processes_info.rb
index 1395220..61e9b83 100644
--- a/lib/fog/rackspace/requests/monitoring/get_processes_info.rb
+++ b/lib/fog/rackspace/requests/monitoring/get_processes_info.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def get_processes_info(agent_id)
request(
:expects => [200, 203],
@@ -14,7 +13,6 @@ module Fog
class Mock
def get_processes_info(agent_id)
-
memory_major_faults = Fog::Mock.random_numbers(1).to_i
memory_minor_faults = Fog::Mock.random_numbers(3).to_i
memory_page_faults = memory_major_faults+memory_minor_faults
diff --git a/lib/fog/rackspace/requests/monitoring/get_system_info.rb b/lib/fog/rackspace/requests/monitoring/get_system_info.rb
index ed3a5a1..7af32b4 100644
--- a/lib/fog/rackspace/requests/monitoring/get_system_info.rb
+++ b/lib/fog/rackspace/requests/monitoring/get_system_info.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def get_system_info(agent_id)
request(
:expects => [200, 203],
@@ -14,7 +13,6 @@ module Fog
class Mock
def get_system_info(agent_id)
-
if agent_id == -1
raise Fog::Rackspace::Monitoring::BadRequest
end
diff --git a/lib/fog/rackspace/requests/monitoring/list_agent_tokens.rb b/lib/fog/rackspace/requests/monitoring/list_agent_tokens.rb
index 6cf6ec9..c4bf70c 100644
--- a/lib/fog/rackspace/requests/monitoring/list_agent_tokens.rb
+++ b/lib/fog/rackspace/requests/monitoring/list_agent_tokens.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def list_agent_tokens(options={})
request(
:expects => [200, 203],
@@ -14,7 +13,6 @@ module Fog
end
class Mock
-
def list_agent_tokens(options={})
token = Fog::Mock.random_letters(50).to_s
@@ -55,4 +53,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/list_agents.rb b/lib/fog/rackspace/requests/monitoring/list_agents.rb
index dd8b4ca..03eaf4a 100644
--- a/lib/fog/rackspace/requests/monitoring/list_agents.rb
+++ b/lib/fog/rackspace/requests/monitoring/list_agents.rb
@@ -13,7 +13,6 @@ module Fog
class Mock
def list_agents
-
response = Excon::Response.new
response.status = 200
response.body = {
diff --git a/lib/fog/rackspace/requests/monitoring/list_alarm_examples.rb b/lib/fog/rackspace/requests/monitoring/list_alarm_examples.rb
index 67364d2..991d2ef 100644
--- a/lib/fog/rackspace/requests/monitoring/list_alarm_examples.rb
+++ b/lib/fog/rackspace/requests/monitoring/list_alarm_examples.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def list_alarm_examples
request(
:expects => [200, 203],
@@ -10,9 +9,7 @@ module Fog
:path => 'alarm_examples'
)
end
-
end
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/list_alarms.rb b/lib/fog/rackspace/requests/monitoring/list_alarms.rb
index 8c9c9f4..03a015c 100644
--- a/lib/fog/rackspace/requests/monitoring/list_alarms.rb
+++ b/lib/fog/rackspace/requests/monitoring/list_alarms.rb
@@ -2,21 +2,18 @@ module Fog
module Rackspace
class Monitoring
class Real
-
- def list_alarms(entity_id)
+ def list_alarms(entity_id, options={})
request(
:expects => [200, 203],
:method => 'GET',
- :path => "entities/#{entity_id}/alarms"
+ :path => "entities/#{entity_id}/alarms",
+ :query => options
)
end
-
end
class Mock
-
def list_alarms(entity_id)
-
if entity_id == -1
raise Fog::Rackspace::Monitoring::NotFound
end
@@ -65,4 +62,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/list_check_types.rb b/lib/fog/rackspace/requests/monitoring/list_check_types.rb
index b1f669e..9237bb8 100644
--- a/lib/fog/rackspace/requests/monitoring/list_check_types.rb
+++ b/lib/fog/rackspace/requests/monitoring/list_check_types.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def list_check_types
request(
:expects => [200, 203],
@@ -56,8 +55,6 @@ module Fog
}
],
-
-
"metadata" => {
"count" => 2,
"limit" => 100,
diff --git a/lib/fog/rackspace/requests/monitoring/list_checks.rb b/lib/fog/rackspace/requests/monitoring/list_checks.rb
index f3163ef..b5fa644 100644
--- a/lib/fog/rackspace/requests/monitoring/list_checks.rb
+++ b/lib/fog/rackspace/requests/monitoring/list_checks.rb
@@ -2,19 +2,18 @@ module Fog
module Rackspace
class Monitoring
class Real
-
- def list_checks(entity_id)
+ def list_checks(entity_id, options={})
request(
:expects => [200, 203],
:method => 'GET',
- :path => "entities/#{entity_id}/checks"
+ :path => "entities/#{entity_id}/checks",
+ :query => options
)
end
end
class Mock
def list_checks(entity_id)
-
check_id = Fog::Mock.random_letters(10)
if entity_id == -1
@@ -69,4 +68,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/list_data_points.rb b/lib/fog/rackspace/requests/monitoring/list_data_points.rb
index 6671f67..6080e78 100644
--- a/lib/fog/rackspace/requests/monitoring/list_data_points.rb
+++ b/lib/fog/rackspace/requests/monitoring/list_data_points.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def list_data_points(entity_id, check_id, metric_name, options)
request(
:expects => [200, 203],
@@ -11,13 +10,10 @@ module Fog
:query => options
)
end
-
end
class Mock
-
def list_data_points(entity_id, check_id, metric_name, options)
-
if entity_id == -1 || check_id == -1 || metric_name == -1 || options == -1
raise Fog::Rackspace::Monitoring::BadRequest
end
diff --git a/lib/fog/rackspace/requests/monitoring/list_entities.rb b/lib/fog/rackspace/requests/monitoring/list_entities.rb
index 30784f5..56ce0fd 100644
--- a/lib/fog/rackspace/requests/monitoring/list_entities.rb
+++ b/lib/fog/rackspace/requests/monitoring/list_entities.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def list_entities(options={})
request(
:expects => [200, 203],
@@ -69,4 +68,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/list_metrics.rb b/lib/fog/rackspace/requests/monitoring/list_metrics.rb
index e30e422..b659fe1 100644
--- a/lib/fog/rackspace/requests/monitoring/list_metrics.rb
+++ b/lib/fog/rackspace/requests/monitoring/list_metrics.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def list_metrics(entity_id, check_id)
request(
:expects => [200, 203],
@@ -76,8 +75,6 @@ module Fog
response
end
end
-
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/list_notification_plans.rb b/lib/fog/rackspace/requests/monitoring/list_notification_plans.rb
index de811d6..9f0dddf 100644
--- a/lib/fog/rackspace/requests/monitoring/list_notification_plans.rb
+++ b/lib/fog/rackspace/requests/monitoring/list_notification_plans.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def list_notification_plans
request(
:expects => [200],
@@ -66,8 +65,6 @@ module Fog
response
end
end
-
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/list_notifications.rb b/lib/fog/rackspace/requests/monitoring/list_notifications.rb
index cbde654..ba0fc77 100644
--- a/lib/fog/rackspace/requests/monitoring/list_notifications.rb
+++ b/lib/fog/rackspace/requests/monitoring/list_notifications.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def list_notifications(options={})
request(
:expects => [200],
@@ -11,7 +10,6 @@ module Fog
:query => options
)
end
-
end
class Mock
@@ -60,8 +58,6 @@ module Fog
response
end
end
-
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/list_overview.rb b/lib/fog/rackspace/requests/monitoring/list_overview.rb
index 8f51380..0e993f0 100644
--- a/lib/fog/rackspace/requests/monitoring/list_overview.rb
+++ b/lib/fog/rackspace/requests/monitoring/list_overview.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def list_overview(options={})
request(
:expects => [200, 203],
@@ -15,7 +14,6 @@ module Fog
class Mock
def list_overview(options={})
-
alarm_id = Fog::Mock.random_letters(10)
check_id = Fog::Mock.random_letters(10)
entity_id = Fog::Mock.random_letters(10)
@@ -108,8 +106,6 @@ module Fog
response
end
end
-
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/update_alarm.rb b/lib/fog/rackspace/requests/monitoring/update_alarm.rb
index 950cc3e..558ba51 100644
--- a/lib/fog/rackspace/requests/monitoring/update_alarm.rb
+++ b/lib/fog/rackspace/requests/monitoring/update_alarm.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def update_alarm(entity_id, alarm_id, options)
request(
:body => JSON.encode(options),
@@ -14,9 +13,7 @@ module Fog
end
class Mock
-
def update_alarm(entity_id, alarm_id, options)
-
account_id = Fog::Mock.random_numbers(6).to_s
if entity_id == -1 || alarm_id == -1 || options[:testing]
@@ -46,4 +43,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/update_check.rb b/lib/fog/rackspace/requests/monitoring/update_check.rb
index 377a734..d7253bb 100644
--- a/lib/fog/rackspace/requests/monitoring/update_check.rb
+++ b/lib/fog/rackspace/requests/monitoring/update_check.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def update_check(entity_id, check_id, options)
request(
:body => JSON.encode(options),
@@ -15,7 +14,6 @@ module Fog
class Mock
def update_check(entity_id, check_id, options)
-
account_id = Fog::Mock.random_numbers(6).to_s
if entity_id == -1 || check_id == -1 || options[:testing]
@@ -45,4 +43,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/update_entity.rb b/lib/fog/rackspace/requests/monitoring/update_entity.rb
index 3a0fecf..16a4fae 100644
--- a/lib/fog/rackspace/requests/monitoring/update_entity.rb
+++ b/lib/fog/rackspace/requests/monitoring/update_entity.rb
@@ -2,7 +2,6 @@ module Fog
module Rackspace
class Monitoring
class Real
-
def update_entity(entity_id, options)
request(
:body => JSON.encode(options),
@@ -14,9 +13,7 @@ module Fog
end
class Mock
-
def update_entity(entity_id, options)
-
account_id = Fog::Mock.random_numbers(6).to_s
if entity_id == -1
@@ -46,4 +43,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/monitoring/update_notification.rb b/lib/fog/rackspace/requests/monitoring/update_notification.rb
index e3fad4c..7a87483 100644
--- a/lib/fog/rackspace/requests/monitoring/update_notification.rb
+++ b/lib/fog/rackspace/requests/monitoring/update_notification.rb
@@ -14,4 +14,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/rackspace/requests/queues/create_claim.rb b/lib/fog/rackspace/requests/queues/create_claim.rb
index 23fe92a..483db2d 100644
--- a/lib/fog/rackspace/requests/queues/create_claim.rb
+++ b/lib/fog/rackspace/requests/queues/create_claim.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class Queues
-
class Real
-
# This operation claims a set of messages (up to the value of the limit parameter) from oldest to newest and skips any messages that are already claimed.
# If no unclaimed messages are available, the API returns a 204 No Content message.
#
@@ -25,7 +23,7 @@ module Fog
}
query = {}
- query[:limit] = options[:limit] if options.has_key? :limit
+ query[:limit] = options[:limit] if options.key? :limit
request(
:body => Fog::JSON.encode(body),
:expects => [200, 201, 204],
@@ -34,7 +32,6 @@ module Fog
:query => query
)
end
-
end
class Mock
@@ -70,7 +67,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/queues/create_message.rb b/lib/fog/rackspace/requests/queues/create_message.rb
index c952a90..da0617a 100644
--- a/lib/fog/rackspace/requests/queues/create_message.rb
+++ b/lib/fog/rackspace/requests/queues/create_message.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class Queues
-
class Real
-
# This operation posts the specified message or messages.
# @note You can submit up to 10 messages in a single request.
#
@@ -53,7 +51,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/queues/create_queue.rb b/lib/fog/rackspace/requests/queues/create_queue.rb
index b24b95a..1b1dbad 100644
--- a/lib/fog/rackspace/requests/queues/create_queue.rb
+++ b/lib/fog/rackspace/requests/queues/create_queue.rb
@@ -1,7 +1,6 @@
module Fog
module Rackspace
class Queues
-
class Real
# This operation creates a new queue.
# The body of the request is empty.
@@ -35,7 +34,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/queues/delete_claim.rb b/lib/fog/rackspace/requests/queues/delete_claim.rb
index 9891f6f..5ee7e90 100644
--- a/lib/fog/rackspace/requests/queues/delete_claim.rb
+++ b/lib/fog/rackspace/requests/queues/delete_claim.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class Queues
-
class Real
-
# This operation immediately releases a claim, making any remaining, undeleted) messages that are associated with the claim available to other workers.
# Claims with malformed IDs or claims that are not found by ID are ignored.
#
@@ -39,7 +37,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/queues/delete_message.rb b/lib/fog/rackspace/requests/queues/delete_message.rb
index ad8935c..63d22c9 100644
--- a/lib/fog/rackspace/requests/queues/delete_message.rb
+++ b/lib/fog/rackspace/requests/queues/delete_message.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class Queues
-
class Real
-
# This operation immediately deletes the specified message.
# @note If you do not specify claim_id, but the message is claimed, the operation fails. You can only delete claimed messages by providing an appropriate claim_id.
#
@@ -19,7 +17,7 @@ module Fog
# @see http://docs.rackspace.com/queues/api/v1.0/cq-devguide/content/DELETE_deleteMessage__version__queues__queue_name__messages__messageId__message-operations-dle001.html
def delete_message(queue_name, message_id, options = {})
query = {}
- query[:claim_id] = options[:claim_id] if options.has_key? :claim_id
+ query[:claim_id] = options[:claim_id] if options.key? :claim_id
request(
:expects => 204,
:method => 'DELETE',
@@ -27,7 +25,6 @@ module Fog
:query => query
)
end
-
end
class Mock
@@ -36,7 +33,7 @@ module Fog
claim_id = options[:claim_id]
- message = queue.messages.detect { |m| m.id == message_id }
+ message = queue.messages.find { |m| m.id == message_id }
perform_delete = true
if message && message.claimed?
@@ -60,7 +57,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/queues/delete_queue.rb b/lib/fog/rackspace/requests/queues/delete_queue.rb
index c5972ee..b3f9705 100644
--- a/lib/fog/rackspace/requests/queues/delete_queue.rb
+++ b/lib/fog/rackspace/requests/queues/delete_queue.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class Queues
-
class Real
-
# This operation immediately deletes a queue and all of its existing messages.
#
# @param [String] queue_name Specifies the name of the queue.
@@ -20,7 +18,6 @@ module Fog
:path => "queues/#{queue_name}"
)
end
-
end
class Mock
@@ -31,7 +28,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/queues/get_claim.rb b/lib/fog/rackspace/requests/queues/get_claim.rb
index e9fc3cc..b50f6b3 100644
--- a/lib/fog/rackspace/requests/queues/get_claim.rb
+++ b/lib/fog/rackspace/requests/queues/get_claim.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class Queues
-
class Real
-
# This operation queries the specified claim for the specified queue. Claims with malformed IDs or claims that are not found by ID are ignored.
#
# @param [String] queue_name Specifies the name of the queue.
@@ -21,7 +19,6 @@ module Fog
:path => "queues/#{queue_name}/claims/#{claim_id}"
)
end
-
end
class Mock
@@ -35,7 +32,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/queues/get_message.rb b/lib/fog/rackspace/requests/queues/get_message.rb
index 37bfe26..609789b 100644
--- a/lib/fog/rackspace/requests/queues/get_message.rb
+++ b/lib/fog/rackspace/requests/queues/get_message.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class Queues
-
class Real
-
# This operation gets the specified message from the specified queue.
#
# @param [String] client_id UUID for the client instance.
@@ -23,7 +21,6 @@ module Fog
:headers => { 'Client-ID' => client_id }
)
end
-
end
class Mock
@@ -39,7 +36,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/queues/get_queue.rb b/lib/fog/rackspace/requests/queues/get_queue.rb
index 749af6c..69e435b 100644
--- a/lib/fog/rackspace/requests/queues/get_queue.rb
+++ b/lib/fog/rackspace/requests/queues/get_queue.rb
@@ -1,7 +1,6 @@
module Fog
module Rackspace
class Queues
-
class Real
# This operation verifies whether the specified queue exists.
#
@@ -32,7 +31,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/queues/get_queue_stats.rb b/lib/fog/rackspace/requests/queues/get_queue_stats.rb
index e263bab..6bbbe1c 100644
--- a/lib/fog/rackspace/requests/queues/get_queue_stats.rb
+++ b/lib/fog/rackspace/requests/queues/get_queue_stats.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class Queues
-
class Real
-
# This operation returns queue statistics, including how many messages are in the queue, categorized by status.
#
# @param [String] queue_name Specifies the name of the queue.
@@ -20,7 +18,6 @@ module Fog
:path => "queues/#{queue_name}/stats"
)
end
-
end
class Mock
@@ -55,7 +52,6 @@ module Fog
}
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/queues/list_messages.rb b/lib/fog/rackspace/requests/queues/list_messages.rb
index 9d33f18..974d720 100644
--- a/lib/fog/rackspace/requests/queues/list_messages.rb
+++ b/lib/fog/rackspace/requests/queues/list_messages.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class Queues
-
class Real
-
# This operation gets the message or messages in the specified queue.
#
# A request to list messages when the queue is not found or when messages are not found returns 204, instead of 200, because there was no information to send back.
@@ -70,7 +68,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/queues/list_queues.rb b/lib/fog/rackspace/requests/queues/list_queues.rb
index 13e265b..9aefa2f 100644
--- a/lib/fog/rackspace/requests/queues/list_queues.rb
+++ b/lib/fog/rackspace/requests/queues/list_queues.rb
@@ -1,7 +1,6 @@
module Fog
module Rackspace
class Queues
-
class Real
# This operation lists queues for the project. The queues are sorted alphabetically by name.
# @note A request to list queues when you have no queues in your account returns 204, instead of 200, because there was no information to send back.
@@ -58,7 +57,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/queues/update_claim.rb b/lib/fog/rackspace/requests/queues/update_claim.rb
index 2a9164e..82df7af 100644
--- a/lib/fog/rackspace/requests/queues/update_claim.rb
+++ b/lib/fog/rackspace/requests/queues/update_claim.rb
@@ -1,9 +1,7 @@
module Fog
module Rackspace
class Queues
-
class Real
-
# This operation posts the specified message or messages.
# @note You can submit up to 10 messages in a single request.
#
@@ -21,7 +19,6 @@ module Fog
:path => "queues/#{queue_name}/claims/#{claim_id}"
)
end
-
end
class Mock
@@ -37,7 +34,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/copy_object.rb b/lib/fog/rackspace/requests/storage/copy_object.rb
index 629abab..b53a144 100644
--- a/lib/fog/rackspace/requests/storage/copy_object.rb
+++ b/lib/fog/rackspace/requests/storage/copy_object.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Rackspace
class Real
-
# Copy object
#
# ==== Parameters
@@ -24,7 +23,6 @@ module Fog
:path => "#{Fog::Rackspace.escape(target_container_name)}/#{Fog::Rackspace.escape(target_object_name)}"
})
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/delete_container.rb b/lib/fog/rackspace/requests/storage/delete_container.rb
index a7f12d4..86469d3 100644
--- a/lib/fog/rackspace/requests/storage/delete_container.rb
+++ b/lib/fog/rackspace/requests/storage/delete_container.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Rackspace
-
class Real
-
# Delete an existing container
#
# ==== Parameters
@@ -19,7 +17,6 @@ module Fog
:path => Fog::Rackspace.escape(name)
)
end
-
end
class Mock
@@ -34,7 +31,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/delete_multiple_objects.rb b/lib/fog/rackspace/requests/storage/delete_multiple_objects.rb
index 3d3ac1d..8bd67fc 100644
--- a/lib/fog/rackspace/requests/storage/delete_multiple_objects.rb
+++ b/lib/fog/rackspace/requests/storage/delete_multiple_objects.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Rackspace
-
class Real
-
# Deletes multiple objects or containers with a single request.
#
# To delete objects from a single container, +container+ may be provided
@@ -69,7 +67,6 @@ module Fog
response.body = Fog::JSON.decode(response.body)
response
end
-
end
class Mock
@@ -126,7 +123,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/delete_object.rb b/lib/fog/rackspace/requests/storage/delete_object.rb
index c4bc60f..08071d0 100644
--- a/lib/fog/rackspace/requests/storage/delete_object.rb
+++ b/lib/fog/rackspace/requests/storage/delete_object.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Rackspace
-
class Real
-
# Delete an existing object
#
# ==== Parameters
@@ -20,7 +18,6 @@ module Fog
:path => "#{Fog::Rackspace.escape(container)}/#{Fog::Rackspace.escape(object)}"
)
end
-
end
class Mock
@@ -34,7 +31,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/delete_static_large_object.rb b/lib/fog/rackspace/requests/storage/delete_static_large_object.rb
index 6314a12..18e7e65 100644
--- a/lib/fog/rackspace/requests/storage/delete_static_large_object.rb
+++ b/lib/fog/rackspace/requests/storage/delete_static_large_object.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Rackspace
-
class Real
-
# Delete a static large object.
#
# Deletes the SLO manifest +object+ and all segments that it references.
@@ -43,7 +41,6 @@ module Fog
response.body = Fog::JSON.decode(response.body)
response
end
-
end
class Mock
@@ -76,8 +73,6 @@ module Fog
response
end
end
-
end
end
end
-
diff --git a/lib/fog/rackspace/requests/storage/extract_archive.rb b/lib/fog/rackspace/requests/storage/extract_archive.rb
index 3317c0d..2305002 100644
--- a/lib/fog/rackspace/requests/storage/extract_archive.rb
+++ b/lib/fog/rackspace/requests/storage/extract_archive.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Rackspace
class Real
-
# Extract Archive
#
# @see http://docs.rackspace.com/files/api/v1/cf-devguide/content/Extract_Archive-d1e2338.html
diff --git a/lib/fog/rackspace/requests/storage/get_container.rb b/lib/fog/rackspace/requests/storage/get_container.rb
index fe09724..04f6045 100644
--- a/lib/fog/rackspace/requests/storage/get_container.rb
+++ b/lib/fog/rackspace/requests/storage/get_container.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Rackspace
-
class Real
-
# Get details for container and total bytes stored
#
# ==== Parameters
@@ -42,7 +40,6 @@ module Fog
:query => {'format' => 'json'}.merge!(options)
)
end
-
end
class Mock
@@ -67,7 +64,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/get_containers.rb b/lib/fog/rackspace/requests/storage/get_containers.rb
index 0ea7a28..a4ef782 100644
--- a/lib/fog/rackspace/requests/storage/get_containers.rb
+++ b/lib/fog/rackspace/requests/storage/get_containers.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Rackspace
class Real
-
# List existing storage containers
#
# ==== Parameters
@@ -30,7 +29,6 @@ module Fog
:query => {'format' => 'json'}.merge!(options)
)
end
-
end
class Mock
@@ -48,7 +46,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/get_object.rb b/lib/fog/rackspace/requests/storage/get_object.rb
index 0490a13..c0d12c0 100644
--- a/lib/fog/rackspace/requests/storage/get_object.rb
+++ b/lib/fog/rackspace/requests/storage/get_object.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Rackspace
-
class Real
-
# Get details for object
#
# ==== Parameters
@@ -26,7 +24,6 @@ module Fog
request(params, false)
end
-
end
class Mock
@@ -52,7 +49,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/get_object_http_url.rb b/lib/fog/rackspace/requests/storage/get_object_http_url.rb
index 7b66d3c..7e0612a 100644
--- a/lib/fog/rackspace/requests/storage/get_object_http_url.rb
+++ b/lib/fog/rackspace/requests/storage/get_object_http_url.rb
@@ -1,7 +1,6 @@
module Fog
module Storage
class Rackspace
-
module Common
# Get an expiring object http url from Cloud Files
#
@@ -31,7 +30,6 @@ module Fog
class Mock
include Common
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/get_object_https_url.rb b/lib/fog/rackspace/requests/storage/get_object_https_url.rb
index c81c7f5..8184837 100644
--- a/lib/fog/rackspace/requests/storage/get_object_https_url.rb
+++ b/lib/fog/rackspace/requests/storage/get_object_https_url.rb
@@ -1,15 +1,14 @@
module Fog
module Storage
class Rackspace
-
module Common
-
# Get an expiring object https url from Cloud Files
#
# ==== Parameters
# * container<~String> - Name of container containing object
# * object<~String> - Name of object to get expiring url for
# * expires<~Time> - An expiry time for this url
+ # * options<~Hash> - Options to override the method or scheme
#
# ==== Returns
# * response<~Excon::Response>:
@@ -25,7 +24,7 @@ module Fog
raise ArgumentError, "Storage must my instantiated with the :rackspace_temp_url_key option"
end
- method = 'GET'
+ method = options[:method] || 'GET'
expires = expires.to_i
object_path_escaped = "#{@uri.path}/#{Fog::Rackspace.escape(container)}/#{Fog::Rackspace.escape(object,"/")}"
object_path_unescaped = "#{@uri.path}/#{Fog::Rackspace.escape(container)}/#{object}"
@@ -56,7 +55,6 @@ module Fog
class Real
include Common
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/head_container.rb b/lib/fog/rackspace/requests/storage/head_container.rb
index 860a59d..55d9757 100644
--- a/lib/fog/rackspace/requests/storage/head_container.rb
+++ b/lib/fog/rackspace/requests/storage/head_container.rb
@@ -2,7 +2,6 @@ module Fog
module Storage
class Rackspace
class Real
-
# List number of objects and total bytes stored
#
# ==== Parameters
@@ -25,7 +24,6 @@ module Fog
:query => {'format' => 'json'}
)
end
-
end
class Mock
@@ -38,7 +36,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/head_containers.rb b/lib/fog/rackspace/requests/storage/head_containers.rb
index 22f1752..5fecba3 100644
--- a/lib/fog/rackspace/requests/storage/head_containers.rb
+++ b/lib/fog/rackspace/requests/storage/head_containers.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Rackspace
-
class Real
-
# List number of containers and total bytes stored
#
# ==== Returns
@@ -23,14 +21,13 @@ module Fog
:query => {'format' => 'json'}
)
end
-
end
class Mock
def head_containers
- bytes_used = data.values.map { |c| c.bytes_used }.inject(0) { |a, b| a + b }
+ bytes_used = data.values.map { |c| c.bytes_used }.reduce(0) { |a, b| a + b }
container_count = data.size
- object_count = data.values.map { |c| c.objects.size }.inject(0) { |a, b| a + b }
+ object_count = data.values.map { |c| c.objects.size }.reduce(0) { |a, b| a + b }
response = Excon::Response.new
response.status = 204
@@ -42,7 +39,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/head_object.rb b/lib/fog/rackspace/requests/storage/head_object.rb
index 87b834c..49a3f38 100644
--- a/lib/fog/rackspace/requests/storage/head_object.rb
+++ b/lib/fog/rackspace/requests/storage/head_object.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Rackspace
-
class Real
-
# Get headers for object
#
# ==== Parameters
@@ -20,7 +18,6 @@ module Fog
:path => "#{Fog::Rackspace.escape(container)}/#{Fog::Rackspace.escape(object)}"
}, false)
end
-
end
class Mock
@@ -46,7 +43,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/post_set_meta_temp_url_key.rb b/lib/fog/rackspace/requests/storage/post_set_meta_temp_url_key.rb
index 8a6eb02..b21649f 100644
--- a/lib/fog/rackspace/requests/storage/post_set_meta_temp_url_key.rb
+++ b/lib/fog/rackspace/requests/storage/post_set_meta_temp_url_key.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Rackspace
-
class Real
-
# Set the account wide Temp URL Key. This is a secret key that's
# used to generate signed expiring URLs.
#
@@ -32,7 +30,6 @@ module Fog
:headers => {'X-Account-Meta-Temp-Url-Key' => key}
)
end
-
end
class Mock
@@ -44,7 +41,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/put_container.rb b/lib/fog/rackspace/requests/storage/put_container.rb
index 7d2b467..3422364 100644
--- a/lib/fog/rackspace/requests/storage/put_container.rb
+++ b/lib/fog/rackspace/requests/storage/put_container.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Rackspace
-
class Real
-
# Create a new container
#
# ==== Parameters
@@ -20,7 +18,6 @@ module Fog
:path => Fog::Rackspace.escape(name)
)
end
-
end
class Mock
@@ -36,7 +33,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/put_dynamic_obj_manifest.rb b/lib/fog/rackspace/requests/storage/put_dynamic_obj_manifest.rb
index 7d5ad2c..68859c9 100644
--- a/lib/fog/rackspace/requests/storage/put_dynamic_obj_manifest.rb
+++ b/lib/fog/rackspace/requests/storage/put_dynamic_obj_manifest.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Rackspace
-
class Real
-
# Create a new dynamic large object manifest
#
# Creates an object with a +X-Object-Manifest+ header that specifies the common prefix ("<container>/<prefix>")
@@ -38,7 +36,6 @@ module Fog
:path => path
)
end
-
end
class Mock
@@ -61,7 +58,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/put_object.rb b/lib/fog/rackspace/requests/storage/put_object.rb
index 8c1c189..04147d2 100644
--- a/lib/fog/rackspace/requests/storage/put_object.rb
+++ b/lib/fog/rackspace/requests/storage/put_object.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Rackspace
-
class Real
-
# Create a new object
#
# When passed a block, it will make a chunked request, calling
@@ -74,7 +72,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/put_object_manifest.rb b/lib/fog/rackspace/requests/storage/put_object_manifest.rb
index 6ed5448..47fe599 100644
--- a/lib/fog/rackspace/requests/storage/put_object_manifest.rb
+++ b/lib/fog/rackspace/requests/storage/put_object_manifest.rb
@@ -1,7 +1,6 @@
module Fog
module Storage
class Rackspace
-
module Common
# Create a new dynamic large object manifest
#
@@ -18,7 +17,6 @@ module Fog
class Mock
include Common
end
-
end
end
end
diff --git a/lib/fog/rackspace/requests/storage/put_static_obj_manifest.rb b/lib/fog/rackspace/requests/storage/put_static_obj_manifest.rb
index 12cb5b1..8045ba4 100644
--- a/lib/fog/rackspace/requests/storage/put_static_obj_manifest.rb
+++ b/lib/fog/rackspace/requests/storage/put_static_obj_manifest.rb
@@ -1,9 +1,7 @@
module Fog
module Storage
class Rackspace
-
class Real
-
# Create a new static large object manifest.
#
# A static large object is similar to a dynamic large object. Whereas a GET for a dynamic large object manifest
@@ -52,7 +50,6 @@ module Fog
:query => { 'multipart-manifest' => 'put' }
)
end
-
end
class Mock
@@ -100,9 +97,6 @@ module Fog
response
end
end
-
end
end
end
-
-
diff --git a/lib/fog/rackspace/service.rb b/lib/fog/rackspace/service.rb
index f555a81..995100b 100644
--- a/lib/fog/rackspace/service.rb
+++ b/lib/fog/rackspace/service.rb
@@ -1,7 +1,6 @@
module Fog
module Rackspace
class Service
-
def service_name
raise Fog::Errors::NotImplemented.new("Please implement the #service_name method")
end
@@ -138,7 +137,6 @@ module Fog
selected
end
-
end
end
end
diff --git a/lib/fog/rackspace/storage.rb b/lib/fog/rackspace/storage.rb
index 433c33a..8fd9e9a 100644
--- a/lib/fog/rackspace/storage.rb
+++ b/lib/fog/rackspace/storage.rb
@@ -52,10 +52,16 @@ module Fog
@rackspace_auth_token = options[:rackspace_auth_token]
@rackspace_storage_url = options[:rackspace_storage_url]
@rackspace_cdn_url = options[:rackspace_cdn_url]
- @rackspace_region = options[:rackspace_region] || :dfw
+ @rackspace_region = options[:rackspace_region]
@rackspace_temp_url_key = options[:rackspace_temp_url_key]
@rackspace_must_reauthenticate = false
@connection_options = options[:connection_options] || {}
+
+ unless @rackspace_region || (@rackspace_storage_url && @rackspace_cdn_url)
+ Fog::Logger.deprecation("Default region support will be removed in an upcoming release. Please switch to manually setting your endpoint. This requires settng the :rackspace_region option.")
+ end
+
+ @rackspace_region ||= :dfw
end
def cdn
@@ -145,7 +151,7 @@ module Fog
# @return [Integer] The number of bytes occupied by each contained
# object.
def bytes_used
- @objects.values.map { |o| o.bytes_used }.inject(0) { |a, b| a + b }
+ @objects.values.map { |o| o.bytes_used }.reduce(0) { |a, b| a + b }
end
# Render the HTTP headers that would be associated with this
@@ -454,7 +460,6 @@ module Fog
@auth_token = credentials['X-Auth-Token']
end
end
-
end
end
end
diff --git a/lib/fog/rage4.rb b/lib/fog/rage4.rb
index 36f648f..717fe04 100644
--- a/lib/fog/rage4.rb
+++ b/lib/fog/rage4.rb
@@ -1,2 +1 @@
require 'fog/rage4/dns'
-
diff --git a/lib/fog/rage4/core.rb b/lib/fog/rage4/core.rb
index cc6b41d..d587217 100644
--- a/lib/fog/rage4/core.rb
+++ b/lib/fog/rage4/core.rb
@@ -3,10 +3,8 @@ require 'fog/json'
module Fog
module Rage4
-
extend Fog::Provider
service(:dns, 'DNS')
-
end
end
diff --git a/lib/fog/rage4/dns.rb b/lib/fog/rage4/dns.rb
index 7f0e8fc..86352b8 100644
--- a/lib/fog/rage4/dns.rb
+++ b/lib/fog/rage4/dns.rb
@@ -3,7 +3,6 @@ require 'fog/rage4/core'
module Fog
module DNS
class Rage4 < Fog::Service
-
requires :rage4_email, :rage4_api_key
recognizes :rage4_url, :host, :path, :port, :scheme, :persistent
@@ -33,7 +32,6 @@ module Fog
request :set_record_failover
class Real
-
def initialize(options={})
@rage4_email = options[:rage4_email]
@rage4_password = options[:rage4_api_key]
diff --git a/lib/fog/rage4/models/dns/record.rb b/lib/fog/rage4/models/dns/record.rb
index a463246..522c3ab 100644
--- a/lib/fog/rage4/models/dns/record.rb
+++ b/lib/fog/rage4/models/dns/record.rb
@@ -3,10 +3,7 @@ require 'fog/core/model'
module Fog
module DNS
class Rage4
-
class Record < Fog::Model
-
-
identity :id
attribute :name
@@ -25,7 +22,6 @@ module Fog
attribute :is_active
attribute :udp_limit
-
def initialize(attributes={})
super
end
@@ -71,9 +67,7 @@ module Fog
def zone=(new_zone)
@zone = new_zone
end
-
end
-
end
end
end
diff --git a/lib/fog/rage4/models/dns/records.rb b/lib/fog/rage4/models/dns/records.rb
index a35c716..d3fad1d 100644
--- a/lib/fog/rage4/models/dns/records.rb
+++ b/lib/fog/rage4/models/dns/records.rb
@@ -4,9 +4,7 @@ require 'fog/rage4/models/dns/record'
module Fog
module DNS
class Rage4
-
class Records < Fog::Collection
-
attribute :zone
model Fog::DNS::Rage4::Record
@@ -34,9 +32,7 @@ module Fog
requires :zone
super({ :zone => zone }.merge!(attributes))
end
-
end
-
end
end
end
diff --git a/lib/fog/rage4/models/dns/zone.rb b/lib/fog/rage4/models/dns/zone.rb
index 4bec490..c38cb22 100644
--- a/lib/fog/rage4/models/dns/zone.rb
+++ b/lib/fog/rage4/models/dns/zone.rb
@@ -4,9 +4,7 @@ require 'fog/rage4/models/dns/records'
module Fog
module DNS
class Rage4
-
class Zone < Fog::Model
-
identity :id
attribute :domain, :aliases => 'name'
@@ -38,9 +36,7 @@ module Fog
merge_attributes(data)
true
end
-
end
-
end
end
end
diff --git a/lib/fog/rage4/models/dns/zones.rb b/lib/fog/rage4/models/dns/zones.rb
index d7b255f..f7c4754 100644
--- a/lib/fog/rage4/models/dns/zones.rb
+++ b/lib/fog/rage4/models/dns/zones.rb
@@ -4,9 +4,7 @@ require 'fog/rage4/models/dns/zone'
module Fog
module DNS
class Rage4
-
class Zones < Fog::Collection
-
model Fog::DNS::Rage4::Zone
def all
@@ -26,9 +24,7 @@ module Fog
rescue Excon::Errors::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/create_domain.rb b/lib/fog/rage4/requests/dns/create_domain.rb
index 0123928..f4a3e37 100644
--- a/lib/fog/rage4/requests/dns/create_domain.rb
+++ b/lib/fog/rage4/requests/dns/create_domain.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# Create a domain.
# ==== Parameters
# * name<~String> - domain name
@@ -24,10 +23,7 @@ module Fog
:path => "/rapi/createregulardomain/?name=#{name}&email=#{email}"
)
end
-
end
-
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/create_domain_vanity.rb b/lib/fog/rage4/requests/dns/create_domain_vanity.rb
index 8c0cda1..21e802d 100644
--- a/lib/fog/rage4/requests/dns/create_domain_vanity.rb
+++ b/lib/fog/rage4/requests/dns/create_domain_vanity.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# Create a domain with a vanity name server.
# ==== Parameters
# * name<~String> - domain name
@@ -25,10 +24,7 @@ module Fog
"&nsname=#{nsname}&nsprefix=#{nsprefix}"
)
end
-
end
-
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/create_record.rb b/lib/fog/rage4/requests/dns/create_record.rb
index 710b81e..0ea95d7 100644
--- a/lib/fog/rage4/requests/dns/create_record.rb
+++ b/lib/fog/rage4/requests/dns/create_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# Create a record
# ==== Parameters
# * domain id <~Integer> The id of the domain you wish to create a record for
@@ -26,13 +25,9 @@ module Fog
# * 'id'<~Integer>
# * 'error'<~String>
-
# https://secure.rage4.com/rapi/createrecord/
-
def create_record(domain_id, name, content, type, options = {})
-
-
path = "/rapi/createrecord/#{domain_id}"
path << "?name=#{name}&content=#{content}&type=#{type}"
@@ -58,10 +53,7 @@ module Fog
:path => path
)
end
-
end
-
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/create_reverse_domain_4.rb b/lib/fog/rage4/requests/dns/create_reverse_domain_4.rb
index 25dfc5d..dea459d 100644
--- a/lib/fog/rage4/requests/dns/create_reverse_domain_4.rb
+++ b/lib/fog/rage4/requests/dns/create_reverse_domain_4.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# Create a reverse domain for an ipv4 address .
# ==== Parameters
# * name<~String> - expects an ipv5 address
@@ -23,10 +22,7 @@ module Fog
"&subnet=#{subnet}"
)
end
-
end
-
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/delete_domain.rb b/lib/fog/rage4/requests/dns/delete_domain.rb
index a58fec3..98467f0 100644
--- a/lib/fog/rage4/requests/dns/delete_domain.rb
+++ b/lib/fog/rage4/requests/dns/delete_domain.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# Delete a specific domain
# ==== Parameters
# * id<~Integer> - numeric ID
@@ -18,11 +17,8 @@ module Fog
:expects => 200,
:method => 'GET',
:path => "/rapi/deletedomain/#{id}" )
-
end
-
end
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/delete_record.rb b/lib/fog/rage4/requests/dns/delete_record.rb
index 087750e..4a43a55 100644
--- a/lib/fog/rage4/requests/dns/delete_record.rb
+++ b/lib/fog/rage4/requests/dns/delete_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# Delete a specific record
# ==== Parameters
# * id<~Integer> - numeric record ID
@@ -18,11 +17,8 @@ module Fog
:expects => 200,
:method => 'GET',
:path => "/rapi/deleterecord/#{id}" )
-
end
-
end
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/get_domain.rb b/lib/fog/rage4/requests/dns/get_domain.rb
index f9cdbd1..1c8f689 100644
--- a/lib/fog/rage4/requests/dns/get_domain.rb
+++ b/lib/fog/rage4/requests/dns/get_domain.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# Get the details for a specific domain in your account.
# ==== Parameters
# * id<~Integer> - numeric ID
@@ -20,11 +19,8 @@ module Fog
:expects => 200,
:method => 'GET',
:path => "/rapi/getdomain/#{id}" )
-
end
-
end
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/get_domain_by_name.rb b/lib/fog/rage4/requests/dns/get_domain_by_name.rb
index 57c59a7..f4129c3 100644
--- a/lib/fog/rage4/requests/dns/get_domain_by_name.rb
+++ b/lib/fog/rage4/requests/dns/get_domain_by_name.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# Get the details for a specific domain in your account.
# ==== Parameters
# * name<~String> - name of domain
@@ -20,11 +19,8 @@ module Fog
:expects => 200,
:method => 'GET',
:path => "/rapi/getdomainbyname/?name=#{name}")
-
end
-
end
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/list_domains.rb b/lib/fog/rage4/requests/dns/list_domains.rb
index ac57b2b..3f81878 100644
--- a/lib/fog/rage4/requests/dns/list_domains.rb
+++ b/lib/fog/rage4/requests/dns/list_domains.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# Get the lsit of all domains for your account.
# ==== Parameters
#
@@ -22,20 +21,16 @@ module Fog
:path => '/rapi/getdomains'
)
end
-
end
class Mock
-
def list_domains
response = Excon::Response.new
response.status = 200
response.body = self.data[:domains]
response
end
-
end
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/list_geo_regions.rb b/lib/fog/rage4/requests/dns/list_geo_regions.rb
index f61a043..8357bde 100644
--- a/lib/fog/rage4/requests/dns/list_geo_regions.rb
+++ b/lib/fog/rage4/requests/dns/list_geo_regions.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# List all the geo regions available
# ==== Parameters
#
@@ -20,7 +19,6 @@ module Fog
:path => '/rapi/listgeoregions'
)
end
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/list_record_types.rb b/lib/fog/rage4/requests/dns/list_record_types.rb
index d129b07..aadba76 100644
--- a/lib/fog/rage4/requests/dns/list_record_types.rb
+++ b/lib/fog/rage4/requests/dns/list_record_types.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# List all the record types available
# ==== Parameters
#
@@ -19,7 +18,6 @@ module Fog
:path => '/rapi/listrecordtypes'
)
end
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/list_records.rb b/lib/fog/rage4/requests/dns/list_records.rb
index 9bd0f4a..b65f7aa 100644
--- a/lib/fog/rage4/requests/dns/list_records.rb
+++ b/lib/fog/rage4/requests/dns/list_records.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# Get the list of records for the specific domain.
#
# ==== Parameters
@@ -23,9 +22,7 @@ module Fog
:method => "GET",
:path => "/rapi/getrecords/#{id}" )
end
-
end
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/set_record_failover.rb b/lib/fog/rage4/requests/dns/set_record_failover.rb
index dc45962..50a56a3 100644
--- a/lib/fog/rage4/requests/dns/set_record_failover.rb
+++ b/lib/fog/rage4/requests/dns/set_record_failover.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# Set a failover to on or off
# ==== Parameters
# * id<~Integer> - numeric ID
@@ -19,11 +18,8 @@ module Fog
:method => 'GET',
:path => "/rapi/setrecordfailover/#{id}&active=#{active}&failover=#{failover}"
)
-
end
-
end
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/show_current_usage.rb b/lib/fog/rage4/requests/dns/show_current_usage.rb
index 26bd724..345fe40 100644
--- a/lib/fog/rage4/requests/dns/show_current_usage.rb
+++ b/lib/fog/rage4/requests/dns/show_current_usage.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# Shows current usage for a single domain
# ==== Parameters
# * id<~Integer> - domain name numeric ID
@@ -15,11 +14,8 @@ module Fog
:expects => 200,
:method => 'GET',
:path => "/rapi/showcurrentusage/#{id}" )
-
end
-
end
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/show_global_usage.rb b/lib/fog/rage4/requests/dns/show_global_usage.rb
index 834835e..47ebe31 100644
--- a/lib/fog/rage4/requests/dns/show_global_usage.rb
+++ b/lib/fog/rage4/requests/dns/show_global_usage.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# Shows global usage for all domains
# ==== Parameters
#
@@ -15,11 +14,8 @@ module Fog
:expects => 200,
:method => 'GET',
:path => "/rapi/showcurrentglobalusage/" )
-
end
-
end
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/update_domain.rb b/lib/fog/rage4/requests/dns/update_domain.rb
index 81e31c7..32453d6 100644
--- a/lib/fog/rage4/requests/dns/update_domain.rb
+++ b/lib/fog/rage4/requests/dns/update_domain.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# Update an existing domain
# ==== Parameters
# * id<~Integer> - domain integer value
@@ -34,10 +33,7 @@ module Fog
:path => path
)
end
-
end
-
-
end
end
end
diff --git a/lib/fog/rage4/requests/dns/update_record.rb b/lib/fog/rage4/requests/dns/update_record.rb
index 33db82b..9fb3839 100644
--- a/lib/fog/rage4/requests/dns/update_record.rb
+++ b/lib/fog/rage4/requests/dns/update_record.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Rage4
class Real
-
# Updates an existing record
# ==== Parameters
# * record_id <~Integer> The id of the record you wish to update
@@ -26,12 +25,9 @@ module Fog
# * 'id'<~Integer>
# * 'error'<~String>
-
# https://secure.rage4.com/rapi/createrecord/
-
def update_record(record_id, name, content, type, options = {})
-
path = "/rapi/updaterecord/#{record_id}"
path << "?name=#{name}&content=#{content}&type=#{type}"
@@ -57,10 +53,7 @@ module Fog
:path => path
)
end
-
end
-
-
end
end
end
diff --git a/lib/fog/riakcs/core.rb b/lib/fog/riakcs/core.rb
index 51413a2..de79d0d 100644
--- a/lib/fog/riakcs/core.rb
+++ b/lib/fog/riakcs/core.rb
@@ -3,7 +3,6 @@ require 'fog/json'
module Fog
module RiakCS
-
module MultipartUtils
require 'net/http'
@@ -118,6 +117,5 @@ module Fog
service(:provisioning, 'Provisioning')
service(:usage, 'Usage')
-
end
end
diff --git a/lib/fog/riakcs/provisioning.rb b/lib/fog/riakcs/provisioning.rb
index 064a951..1304efb 100644
--- a/lib/fog/riakcs/provisioning.rb
+++ b/lib/fog/riakcs/provisioning.rb
@@ -3,7 +3,6 @@ require 'fog/riakcs/core'
module Fog
module RiakCS
class Provisioning < Fog::Service
-
class UserAlreadyExists < Fog::RiakCS::Provisioning::Error; end
class ServiceUnavailable < Fog::RiakCS::Provisioning::Error; end
@@ -92,7 +91,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/riakcs/requests/provisioning/create_user.rb b/lib/fog/riakcs/requests/provisioning/create_user.rb
index 9693314..ebea199 100644
--- a/lib/fog/riakcs/requests/provisioning/create_user.rb
+++ b/lib/fog/riakcs/requests/provisioning/create_user.rb
@@ -39,7 +39,7 @@ module Fog
end
def user_exists?(email)
- data.detect do |key, value|
+ data.find do |key, value|
value[:email] == email
end
end
diff --git a/lib/fog/riakcs/usage.rb b/lib/fog/riakcs/usage.rb
index 1f549f7..241a147 100644
--- a/lib/fog/riakcs/usage.rb
+++ b/lib/fog/riakcs/usage.rb
@@ -4,7 +4,6 @@ require 'time'
module Fog
module RiakCS
class Usage < Fog::Service
-
requires :riakcs_access_key_id, :riakcs_secret_access_key
recognizes :host, :path, :port, :scheme, :persistent
@@ -58,7 +57,6 @@ module Fog
)
end
end
-
end
end
end
diff --git a/lib/fog/sakuracloud.rb b/lib/fog/sakuracloud.rb
deleted file mode 100644
index 788c635..0000000
--- a/lib/fog/sakuracloud.rb
+++ /dev/null
@@ -1,16 +0,0 @@
-require 'fog/core'
-require 'fog/sakuracloud/compute'
-require 'fog/sakuracloud/volume'
-
-module Fog
- module SakuraCloud
- extend Fog::Provider
-
- SAKURACLOUD_API_VERSION = '1.1' unless defined? SAKURACLOUD_API_VERSION
- SAKURACLOUD_API_ZONE = "is1b" unless defined? SAKURACLOUD_API_ZONE
- SAKURACLOUD_API_ENDPOINT = "/cloud/zone/#{SAKURACLOUD_API_ZONE}/api/cloud/#{SAKURACLOUD_API_VERSION}/"
-
- service(:compute, 'Compute')
- service(:volume, 'Volume')
- end
-end
diff --git a/lib/fog/sakuracloud/compute.rb b/lib/fog/sakuracloud/compute.rb
deleted file mode 100644
index aba01c0..0000000
--- a/lib/fog/sakuracloud/compute.rb
+++ /dev/null
@@ -1,67 +0,0 @@
-require 'fog/sakuracloud'
-require 'fog/compute'
-
-module Fog
- module Compute
- class SakuraCloud < Fog::Service
-
- requires :sakuracloud_api_token
- requires :sakuracloud_api_token_secret
-
- recognizes :sakuracloud_api_url
-
- model_path 'fog/sakuracloud/models/compute'
- model :server
- collection :servers
- model :plan
- collection :plans
- model :ssh_key
- collection :ssh_keys
- model :zone
- collection :zones
-
- request_path 'fog/sakuracloud/requests/compute'
- request :list_servers
- request :create_server
- request :delete_server
- request :boot_server
- request :stop_server
- request :list_plans
- request :list_ssh_keys
- request :list_zones
-
- class Real
- def initialize(options = {})
- @auth_encord = Base64.strict_encode64([
- options[:sakuracloud_api_token],
- options[:sakuracloud_api_token_secret]
- ].join(':'))
- Fog.credentials[:sakuracloud_api_token] = options[:sakuracloud_api_token]
- Fog.credentials[:sakuracloud_api_token_secret] = options[:sakuracloud_api_token_secret]
-
- @sakuracloud_api_url = options[:sakuracloud_api_url] || 'https://secure.sakura.ad.jp'
-
- @connection = Fog::Core::Connection.new(@sakuracloud_api_url)
- end
-
- def request(params)
- response = parse @connection.request(params)
- response
- end
-
- private
- def parse(response)
- return response if response.body.empty?
- response.body = Fog::JSON.decode(response.body)
- response
- end
- end
-
- class Mock
- def initialize(options = {})
- end
- end
-
- end #SakuraCloud
- end #Compute
-end
diff --git a/lib/fog/sakuracloud/docs/getting_started.md b/lib/fog/sakuracloud/docs/getting_started.md
deleted file mode 100644
index 1262d63..0000000
--- a/lib/fog/sakuracloud/docs/getting_started.md
+++ /dev/null
@@ -1,450 +0,0 @@
-# Getting started for SakuraCloud
-
-## Links
-
-- Product Information: http://cloud.sakura.ad.jp/
-- API Reference(1.1): http://developer.sakura.ad.jp/cloud/api/1.1/
-
-## Requeirement
-
-- API TOKEN
-- API TOKEN SECRET
-
-You can retreave them from dashboard.
-
-
-## Resources
-
-|Service |Class |Description |
-|----|----|----|
-|Volume(disk) |Fog::Volume::SakuraCloud |Block device for server. |
-|Compute |Fog::Compute::SakuraCloud |Server. |
-
-## Simple start
-
-Inital boot from template with ssh key.
-
-```
-require 'fog'
-compute = Fog::Compute::SakuraCloud.new(
- :sakuracloud_api_token => 'YOUR_API_TOKEN',
- :sakuracloud_api_token_secret => 'YOUR_API_TOKEN_SECRET'
-)
-
-
-server = compute.servers.create({
- :sakuracloud_api_token => 'YOUR_API_TOKEN',
- :sakuracloud_api_token_secret => 'YOUR_API_TOKEN_SECRET',
- :sshkey => '11260003****', # Your SSH Key id
- :serverplan => '2001', # Server Type
- :volume => {
- :diskplan => 4, # Type SSD
- :sourcearchive => '112500463685' # Ubuntu12.04
- },
- :boot => true
-})
-```
-
-You can login or integrate with configuration management tools to server at once.
-
-
-## Services
-
-Usage for SakuraCloud Services.
-
-### Volume(disk) Service
-
-Initailize Volume service.
-
-```
-require 'fog'
-volume = Fog::Volume::SakuraCloud.new(
- :sakuracloud_api_token => 'YOUR_API_TOKEN',
- :sakuracloud_api_token_secret => 'YOUR_API_TOKEN_SECRET'
-)
-```
-
-or initailize with `Fog.credentials`
-
-
-```
-Fog.credentials[:sakuracloud_api_token] = 'YOUR_API_TOKEN'
-Fog.credentials[:sakuracloud_api_token_secret] = 'YOUR_API_TOKEN_SECRET'
-
-volume = Fog::Volume[:sakuracloud]
-```
-
-
-#### Listing disk plans
-
-use `volume.plans`.
-
-```
-> volume.plans
-
-=> [ <Fog::Volume::SakuraCloud::Plan
- id=4,
- name="SSDプラン"
- >,
- <Fog::Volume::SakuraCloud::Plan
- id=2,
- name="標準プラン"
- >]
-```
-
-
-
-#### Listing volume templates(archives)
-
-use `volume.archives`.
-
-```
-require 'fog'
-volume = Fog::Volume::SakuraCloud.new(
- :sakuracloud_api_token => 'YOUR_API_TOKEN',
- :sakuracloud_api_token_secret => 'YOUR_API_TOKEN_SECRET'
-)
-
-
-> volume.archives
-
-=> [ <Fog::Volume::SakuraCloud::Archive
- id="112500514887",
- name="CentOS 5.10 64bit (基本セット)"
- >,
- <Fog::Volume::SakuraCloud::Archive
- id="112500571575",
- name="CentOS 6.5 64bit (基本セット)"
- >,
- <Fog::Volume::SakuraCloud::Archive
- id="112500556904",
- name="Scientific Linux 6.4 64bit (基本セット)"
- >,
- <Fog::Volume::SakuraCloud::Archive
- id="112500587018",
- name="Scientific Linux 6.5 RC1 64bit (基本セット)"
- >,
- <Fog::Volume::SakuraCloud::Archive
- id="112500556903",
- name="FreeBSD 8.3 64bit (基本セット)"
- >,
- <Fog::Volume::SakuraCloud::Archive
- id="112500556906",
- name="FreeBSD 9.1 64bit (基本セット)"
- >,
- <Fog::Volume::SakuraCloud::Archive
- id="112500556907",
- name="Ubuntu Server 13.04 64bit (基本セット)"
- >,
- <Fog::Volume::SakuraCloud::Archive
- id="112500463685",
- name="Ubuntu Server 12.04.3 LTS 64bit (基本セット)"
- >,
- <Fog::Volume::SakuraCloud::Archive
- id="112500490219",
- name="Ubuntu Server 13.10 64bit(基本セット)"
- >,
- <Fog::Volume::SakuraCloud::Archive
- id="112500556909",
- name="Debian GNU/Linux 6.0.7 64bit (基本セット)"
- >,
--- snip --
-```
-
-#### Create volume from templates(archives)
-
-use `volume.disks.create` with `:name`, `:plan`(Plan id) and `:source_archive`(id, optional)
-
-##### Example: Create SSD installed 'Ubuntu 12.04'.
-
-```
-disk = volume.disks.create :name => 'foobar',
- :plan => 4, # Type SSD
- :source_archive => 112500463685 # Ubuntu12.04
-```
-
-It creates disk.
-
-```
-=> <Fog::Volume::SakuraCloud::Disk
- id="112600053876",
- name="foobar",
- Connection="virtio",
- Availability="migrating",
- Plan={"id"=>4, "StorageClass"=>"iscsi1204", "name"=>"SSDプラン"},
- SizeMB=20480,
- SourceDisk=nil,
- SourceArchive={"id"=>"112500463685", "name"=>"Ubuntu Server 12.04.3 LTS 64bit (基本セット)", "Availability"=>"available", "SizeMB"=>20480, "Plan"=>{"id"=>2, "StorageClass"=>"iscsi1204", "name"=>"標準プラン"}, "Storage"=>{"id"=>"3100297001", "Class"=>"iscsi1204", "name"=>"sac-is1b-arc-st01", "Zone"=>{"id"=>31002, "name"=>"is1b", "Region"=>{"id"=>310, "name"=>"石狩"}}, "DiskPlan"=>{"id"=>2, "StorageClass"=>"iscsi1204", "name"=>"標準プラン"}}, "BundleInfo"=>nil}
- >
-```
-
-#### Listing available disks
-
-use `volume.disks`
-
-```
-> volume.disks
-
-=> [ <Fog::Volume::SakuraCloud::Disk
- id="112600053837",
- name="ed86efca-d7f1-4367-97df-30e16c4f331e",
- Connection="virtio",
- Availability="available",
- Plan={"id"=>4, "StorageClass"=>"iscsi1204", "name"=>"SSDプラン"},
- SizeMB=20480,
- SourceDisk=nil,
- SourceArchive={"id"=>"112500463685", "name"=>"Ubuntu Server 12.04.3 LTS 64bit (基本セット)", "Availability"=>"available", "SizeMB"=>20480, "Plan"=>{"id"=>2, "StorageClass"=>"iscsi1204", "Na
- >,
- <Fog::Volume::SakuraCloud::Disk
- id="112600053840",
- name="2a3f571a-2562-49e1-a4ea-86f7cf34c571",
- Connection="virtio",
- Availability="available",
- Plan={"id"=>4, "StorageClass"=>"iscsi1204", "name"=>"SSDプラン"},
- SizeMB=20480,
- SourceDisk=nil,
- SourceArchive={"id"=>"112500463685", "name"=>"Ubuntu Server 12.04.3 LTS 64bit (基本セット)", "Availability"=>"available", "SizeMB"=>20480, "Plan"=>{"id"=>2, "StorageClass"=>"iscsi1204", "Na
- >,
--- snip --
-
-```
-
-Get Disk id or any attributes.
-
-```
-> volume.disks.first.id
-=> "112600053837"
-
-> volume.disks.first.SizeMB
-=> 20480
-```
-
-or
-
-```
-> disk = volume.disks.first
-> disk.id
-=> "112600053837"
-```
-
-You can reload disk attributes.
-
-```
-> disk.reload
-=> <Fog::Volume::SakuraCloud::Disk
- id="112600053837",
- name="ed86efca-d7f1-4367-97df-30e16c4f331e",
- Connection="virtio",
- Availability="available",
- Plan={"id"=>4, "StorageClass"=>"iscsi1204", "name"=>"SSDプラン"},
- SizeMB=20480,
- SourceDisk=nil,
- SourceArchive={"id"=>"112500463685", "name"=>"Ubuntu Server 12.04.3 LTS 64bit (基本セット)", "Availability"=>"available", "SizeMB"=>20480, "Plan"=>{"id"=>2, "StorageClass"=>"iscsi1204", "name"=>"標準プラン"}, "Storage"=>{"id"=>"3100297001", "Class"=>"iscsi1204", "name"=>"sac-is1b-arc-st01", "Zone"=>{"id"=>31002, "name"=>"is1b", "Region"=>{"id"=>310, "name"=>"石狩"}}, "DiskPlan"=>{"id"=>2, "StorageClass"=>"iscsi1204", "name"=>"標準プラン"}}, "BundleInfo"=>nil}
- >
-```
-
-#### Delete disk
-
-use `volume.disks.delete('Disk_id')`
-
-```
-> volume.disks.delete('112600053837')
-
-=> true
-```
-
-or execute delete method for disk.
-
-```
-> volume.disks.first.delete
-
-=> true
-```
-
-##### Example: Delete all disks
-
-```
-> volume.disks.each {|d| d.delete}
-```
-
-
-### SSH Key Service (Part of the Compute Service)
-
-Initailize Compute service.
-
-```
-require 'fog'
-compute = Fog::Compute::SakuraCloud.new(
- :sakuracloud_api_token => 'YOUR_API_TOKEN',
- :sakuracloud_api_token_secret => 'YOUR_API_TOKEN_SECRET'
-)
-```
-
-#### Listing SSH Keys
-
-use `compute.ssh_keys`
-
-```
-> compute.ssh_keys
-
-=> [ <Fog::Compute::SakuraCloud::SshKey
- id="11260003****",
- name="sawanobori",
- PublicKey="ssh-rsa ***********************"
- >]
-```
-
-
-#### Add SSH Key to disk.
-
-Work with Volume service.
-
-use `configure` method with SSH Key id.
-
-##### Example
-
-```
-> volume.disks.first.configure(11260003****)
-
-=> true
-```
-
-
-### Compute Service
-
-Initailize Compute service.
-
-```
-require 'fog'
-compute = Fog::Compute::SakuraCloud.new(
- :sakuracloud_api_token => 'YOUR_API_TOKEN',
- :sakuracloud_api_token_secret => 'YOUR_API_TOKEN_SECRET'
-)
-```
-
-or initailize with `Fog.credentials`
-
-
-```
-Fog.credentials[:sakuracloud_api_token] = 'YOUR_API_TOKEN'
-Fog.credentials[:sakuracloud_api_token_secret] = 'YOUR_API_TOKEN_SECRET'
-
-volume = Fog::Compute[:sakuracloud]
-```
-
-
-#### Listing server plans
-
-use `compute.plans`.
-
-```
-> compute.plans
-
-=> [ <Fog::Compute::SakuraCloud::Plan
- id=1001,
- name="プラン/1Core-1GB",
- ServiceClass="cloud/plan/1core-1gb",
- CPU=1,
- MemoryMB=1024
- >,
- <Fog::Compute::SakuraCloud::Plan
- id=2001,
- name="プラン/1Core-2GB",
- ServiceClass="cloud/plan/1core-2gb",
- CPU=1,
- MemoryMB=2048
- >,
--- snip --
-```
-
-
-#### Listing zones
-
-use `compute.zones`.
-
-```
-> compute.zones
-
-=> [ <Fog::Compute::SakuraCloud::Zone
- id=31001,
- name="is1a",
- Description="石狩第1ゾーン"
- >,
- <Fog::Compute::SakuraCloud::Zone
- id=31002,
- name="is1b",
- Description="石狩第2ゾーン"
- >]
-```
-
-#### Create server
-
-use `volume.servers.create` with `:name`, `:ServerPlan`(Plan id)
-
-##### Example: Create server with public switch connection.
-
-```
-server = compute.servers.create :name => 'foobar',
- :ServerPlan => 2001
-```
-
-It creates server.
-
-```
-=> <Fog::Compute::SakuraCloud::Server
- id="112600055437",
- name="foobar",
- ServerPlan={"id"=>2001, "name"=>"プラン/1Core-2GB", "CPU"=>1, "MemoryMB"=>2048, "ServiceClass"=>"cloud/plan/1core-2gb", "Availability"=>"available"},
- Instance={"Server"=>{"id"=>"112600055437"}, "Status"=>"down", "BeforeStatus"=>nil, "StatusChangedAt"=>nil, "MigrationProgress"=>nil, "MigrationSchedule"=>nil, "IsMigrating"=>nil, "MigrationAllowed"=>nil, "ModifiedAt"=>"2014-01-30T23:54:47+09:00", "Host"=>nil, "CDROM"=>nil, "CDROMStorage"=>nil},
- Disks=[],
- Interfaces=[{"id"=>"112600055438", "MACAddress"=>"9C:A3:BA:30:13:28", "IPAddress"=>"133.242.236.247", "UserIPAddress"=>nil, "Hostname"=>nil, "Switch"=>{"id"=>"112500556860", "name"=>"スイッチ", "Scope"=>"shared", "Subnet"=>{"id"=>nil, "NetworkAddress"=>"133.242.236.0", "NetworkMaskLen"=>24, "DefaultRoute"=>"133.242.236.1", "Internet"=>{"BandWidthMbps"=>100}}, "UserSubnet"=>nil}, "PacketFilter"=>nil}]
- >
-```
-
-#### Listing available servers
-
-use `compute.servers`
-
-```
-> compute.servers
-
-=> [ <Fog::Compute::SakuraCloud::Server
- id="112600055437",
- name="foobar",
- ServerPlan={"id"=>2001, "name"=>"プラン/1Core-2GB", "CPU"=>1, "MemoryMB"=>2048, "ServiceClass"=>"cloud/plan/1core-2gb", "Availability"=>"available"},
- Instance={"Server"=>{"id"=>"112600055437"}, "Status"=>"down", "BeforeStatus"=>nil, "StatusChangedAt"=>nil, "MigrationProgress"=>nil, "MigrationSchedule"=>nil, "IsMigrating"=>nil, "MigrationAllowed"=>nil, "ModifiedAt"=>"2014-01-30T23:54:47+09:00", "Host"=>nil, "CDROM"=>nil, "CDROMStorage"=>nil},
- Disks=[],
- Interfaces=[{"id"=>"112600055438", "MACAddress"=>"9C:A3:BA:30:13:28", "IPAddress"=>"133.242.236.247", "UserIPAddress"=>nil, "Hostname"=>nil, "Switch"=>{"id"=>"112500556860", "name"=>"スイッチ", "Scope"=>"shared", "Subnet"=>{"id"=>nil, "NetworkAddress"=>"133.242.236.0", "NetworkMaskLen"=>24, "DefaultRoute"=>"133.242.236.1", "Internet"=>{"BandWidthMbps"=>100}}, "UserSubnet"=>nil}, "PacketFilter"=>nil}]
- >]
-
-```
-
-
-#### Boot or stop servers
-
-execute boot/stop method for server.
-
-
-##### Example: boot server
-
-```
-> compute.servers.first.boot
-
-=> true
-```
-
-##### Example: stop server
-
-```
-> compute.servers.first.stop
-
-=> true
-```
-
-force stop
-
-```
-> compute.servers.first.stop(true)
-
-=> true
-```
\ No newline at end of file
diff --git a/lib/fog/sakuracloud/models/compute/plan.rb b/lib/fog/sakuracloud/models/compute/plan.rb
deleted file mode 100644
index 5b416d5..0000000
--- a/lib/fog/sakuracloud/models/compute/plan.rb
+++ /dev/null
@@ -1,18 +0,0 @@
-require 'fog/core/model'
-
-module Fog
- module Compute
- class SakuraCloud
- class Plan < Fog::Model
-
- identity :id, :aliases => 'ID'
- attribute :name, :aliases => 'Name'
- attribute :server_class, :aliases => 'ServiceClass'
- attribute :cpu, :aliases => 'CPU'
- attribute :memory_mb, :aliases => 'MemoryMB'
-
-
- end
- end
- end
-end
diff --git a/lib/fog/sakuracloud/models/compute/plans.rb b/lib/fog/sakuracloud/models/compute/plans.rb
deleted file mode 100644
index fafafb5..0000000
--- a/lib/fog/sakuracloud/models/compute/plans.rb
+++ /dev/null
@@ -1,25 +0,0 @@
-require 'fog/core/collection'
-require 'fog/sakuracloud/models/compute/plan'
-
-module Fog
- module Compute
- class SakuraCloud
-
- class Plans < Fog::Collection
- model Fog::Compute::SakuraCloud::Plan
-
- def all
- load service.list_plans.body['ServerPlans']
- end
-
- def get(id)
- all.find { |f| f.id == id }
- rescue Fog::Errors::NotFound
- nil
- end
-
- end
-
- end
- end
-end
diff --git a/lib/fog/sakuracloud/models/compute/server.rb b/lib/fog/sakuracloud/models/compute/server.rb
deleted file mode 100644
index 2a4f14a..0000000
--- a/lib/fog/sakuracloud/models/compute/server.rb
+++ /dev/null
@@ -1,42 +0,0 @@
-require 'fog/core/model'
-
-module Fog
- module Compute
- class SakuraCloud
- class Server < Fog::Model
-
- identity :id, :aliases => 'ID'
- attribute :name, :aliases => 'Name'
- attribute :server_plan, :aliases => 'ServerPlan'
- attribute :instance, :aliases => 'Instance'
- attribute :disks, :aliases => 'Disks'
- attribute :interfaces, :aliases => 'Interfaces'
-
- def save
- requires :name, :server_plan
- data = service.create_server(@attributes[:name], @attributes[:server_plan]).body["Server"]
- merge_attributes(data)
- true
- end
-
- def boot
- requires :id
- service.boot_server(@attributes[:id])
- end
-
- def stop(force = false)
- requires :id
- service.stop_server(@attributes[:id], force)
- end
-
- def delete(disks = [])
- requires :id
- service.delete_server(@attributes[:id], disks)
- true
- end
- alias_method :destroy, :delete
-
- end
- end
- end
-end
diff --git a/lib/fog/sakuracloud/models/compute/servers.rb b/lib/fog/sakuracloud/models/compute/servers.rb
deleted file mode 100644
index 66830c2..0000000
--- a/lib/fog/sakuracloud/models/compute/servers.rb
+++ /dev/null
@@ -1,65 +0,0 @@
-require 'fog/core/collection'
-require 'fog/sakuracloud/models/compute/server'
-
-module Fog
- module Compute
- class SakuraCloud
-
- class Servers < Fog::Collection
- model Fog::Compute::SakuraCloud::Server
-
- def all
- load service.list_servers.body['Servers']
- end
-
- def get(id)
- all.find { |f| f.id == id }
- rescue Fog::Errors::NotFound
- nil
- end
-
- def create(options = {})
- user = options[:user] || 'root'
- Fog::Logger.warning("Create Server")
- data = service.create_server(Fog::UUID.uuid, options[:serverplan]).body["Server"]
- server = service.servers.new
- server.merge_attributes(data)
-
- if options[:volume]
- disk = create_and_attach_volume(server, options)
- server.reload
- end
- server.boot if options[:boot]
- server
- end
-
- private
- def create_and_attach_volume(server, options)
- Fog::Logger.warning("Create Volume")
- sakuracloud_api_token = options[:sakuracloud_api_token] || Fog.credentials[:sakuracloud_api_token]
- sakuracloud_api_token_secret = options[:sakuracloud_api_token_secret] || Fog.credentials[:sakuracloud_api_token_secret]
- volume = Fog::Volume::SakuraCloud.new(:sakuracloud_api_token => sakuracloud_api_token, :sakuracloud_api_token_secret => sakuracloud_api_token_secret)
- disk = volume.disks.create :name => Fog::UUID.uuid,
- :plan => options[:volume][:diskplan].to_i,
- :source_archive => options[:volume][:sourcearchive].to_s
- Fog::Logger.warning("Waiting disk until available")
- disk.wait_for { availability == 'available' }
- volume.attach_disk(disk.id, server.id)
- disk_attached?(server, disk.id)
- Fog::Logger.warning("Modifing disk")
- volume.configure_disk(disk.id, options[:sshkey])
- disk
- end
-
- def disk_attached?(server, disk_id)
- until server.disks.find {|s| disk_id.to_s}
- print '.'
- sleep 2
- server.reload
- end
- end
- end
-
- end
- end
-end
diff --git a/lib/fog/sakuracloud/models/compute/ssh_key.rb b/lib/fog/sakuracloud/models/compute/ssh_key.rb
deleted file mode 100644
index 8441c1c..0000000
--- a/lib/fog/sakuracloud/models/compute/ssh_key.rb
+++ /dev/null
@@ -1,15 +0,0 @@
-require 'fog/core/model'
-
-module Fog
- module Compute
- class SakuraCloud
- class SshKey < Fog::Model
-
- identity :id, :aliases => 'ID'
- attribute :name, :aliases => 'Name'
- attribute :public_key, :aliases => 'PublicKey'
-
- end
- end
- end
-end
diff --git a/lib/fog/sakuracloud/models/compute/ssh_keys.rb b/lib/fog/sakuracloud/models/compute/ssh_keys.rb
deleted file mode 100644
index 7c985b8..0000000
--- a/lib/fog/sakuracloud/models/compute/ssh_keys.rb
+++ /dev/null
@@ -1,25 +0,0 @@
-require 'fog/core/collection'
-require 'fog/sakuracloud/models/compute/ssh_key'
-
-module Fog
- module Compute
- class SakuraCloud
-
- class SshKeys < Fog::Collection
- model Fog::Compute::SakuraCloud::SshKey
-
- def all
- load service.list_ssh_keys.body['SSHKeys']
- end
-
- def get(id)
- all.find { |f| f.id == id }
- rescue Fog::Errors::NotFound
- nil
- end
-
- end
-
- end
- end
-end
diff --git a/lib/fog/sakuracloud/models/compute/zone.rb b/lib/fog/sakuracloud/models/compute/zone.rb
deleted file mode 100644
index 9ebdc1a..0000000
--- a/lib/fog/sakuracloud/models/compute/zone.rb
+++ /dev/null
@@ -1,15 +0,0 @@
-require 'fog/core/model'
-
-module Fog
- module Compute
- class SakuraCloud
- class Zone < Fog::Model
-
- identity :id, :aliases => 'ID'
- attribute :name, :aliases => 'Name'
- attribute :description, :aliases => 'Description'
-
- end
- end
- end
-end
diff --git a/lib/fog/sakuracloud/models/compute/zones.rb b/lib/fog/sakuracloud/models/compute/zones.rb
deleted file mode 100644
index a79b2d5..0000000
--- a/lib/fog/sakuracloud/models/compute/zones.rb
+++ /dev/null
@@ -1,25 +0,0 @@
-require 'fog/core/collection'
-require 'fog/sakuracloud/models/compute/zone'
-
-module Fog
- module Compute
- class SakuraCloud
-
- class Zones < Fog::Collection
- model Fog::Compute::SakuraCloud::Zone
-
- def all
- load service.list_zones.body['Zones']
- end
-
- def get(id)
- all.find { |f| f.id == id }
- rescue Fog::Errors::NotFound
- nil
- end
-
- end
-
- end
- end
-end
diff --git a/lib/fog/sakuracloud/models/volume/archive.rb b/lib/fog/sakuracloud/models/volume/archive.rb
deleted file mode 100644
index 51e1758..0000000
--- a/lib/fog/sakuracloud/models/volume/archive.rb
+++ /dev/null
@@ -1,16 +0,0 @@
-require 'fog/core/model'
-
-module Fog
- module Volume
- class SakuraCloud
- class Archive < Fog::Model
-
- identity :id, :aliases => 'ID'
- attribute :name, :aliases => 'Name'
- attribute :size_mb, :aliases => 'SizeMB'
- attribute :plan, :aliases => 'Plan'
-
- end
- end
- end
-end
diff --git a/lib/fog/sakuracloud/models/volume/archives.rb b/lib/fog/sakuracloud/models/volume/archives.rb
deleted file mode 100644
index 49dc1d3..0000000
--- a/lib/fog/sakuracloud/models/volume/archives.rb
+++ /dev/null
@@ -1,25 +0,0 @@
-require 'fog/core/collection'
-require 'fog/sakuracloud/models/volume/archive'
-
-module Fog
- module Volume
- class SakuraCloud
-
- class Archives < Fog::Collection
- model Fog::Volume::SakuraCloud::Archive
-
- def all
- load service.list_archives.body['Archives']
- end
-
- def get(id)
- all.find { |f| f.id == id }
- rescue Fog::Errors::NotFound
- nil
- end
-
- end
-
- end
- end
-end
diff --git a/lib/fog/sakuracloud/models/volume/disk.rb b/lib/fog/sakuracloud/models/volume/disk.rb
deleted file mode 100644
index 0226b2d..0000000
--- a/lib/fog/sakuracloud/models/volume/disk.rb
+++ /dev/null
@@ -1,38 +0,0 @@
-require 'fog/core/model'
-
-module Fog
- module Volume
- class SakuraCloud
- class Disk < Fog::Model
-
- identity :id, :aliases => 'ID'
- attribute :name, :aliases => 'Name'
- attribute :connection, :aliases => 'Connection'
- attribute :availability, :aliases => 'Availability'
- attribute :plan, :aliases => 'Plan'
- attribute :size_mb, :aliases => 'SizeMB'
- attribute :source_disk, :aliases => 'SourceDisk'
- attribute :source_archive, :aliases => 'SourceArchive'
-
- def delete
- service.delete_disk(identity)
- true
- end
- alias_method :destroy, :delete
-
- def save
- requires :name, :plan, :source_archive
- data = service.create_disk(@attributes[:name], @attributes[:plan], @attributes[:source_archive]).body["Disk"]
- merge_attributes(data)
- true
- end
-
- def configure(sshkey_id)
- requires :id
- service.configure_disk(@attributes[:id], sshkey_id )
- true
- end
- end
- end
- end
-end
diff --git a/lib/fog/sakuracloud/models/volume/disks.rb b/lib/fog/sakuracloud/models/volume/disks.rb
deleted file mode 100644
index 7189fa6..0000000
--- a/lib/fog/sakuracloud/models/volume/disks.rb
+++ /dev/null
@@ -1,30 +0,0 @@
-require 'fog/core/collection'
-require 'fog/sakuracloud/models/volume/disk'
-
-module Fog
- module Volume
- class SakuraCloud
-
- class Disks < Fog::Collection
- model Fog::Volume::SakuraCloud::Disk
-
- def all
- load service.list_disks.body['Disks']
- end
-
- def get(id)
- all.find { |f| f.id == id }
- rescue Fog::Errors::NotFound
- nil
- end
-
- def delete(id)
- service.delete_disk(id)
- true
- end
-
- end
-
- end
- end
-end
diff --git a/lib/fog/sakuracloud/models/volume/plan.rb b/lib/fog/sakuracloud/models/volume/plan.rb
deleted file mode 100644
index 549af52..0000000
--- a/lib/fog/sakuracloud/models/volume/plan.rb
+++ /dev/null
@@ -1,14 +0,0 @@
-require 'fog/core/model'
-
-module Fog
- module Volume
- class SakuraCloud
- class Plan < Fog::Model
-
- identity :id, :aliases => 'ID'
- attribute :name, :aliases => 'Name'
-
- end
- end
- end
-end
diff --git a/lib/fog/sakuracloud/models/volume/plans.rb b/lib/fog/sakuracloud/models/volume/plans.rb
deleted file mode 100644
index 30e9589..0000000
--- a/lib/fog/sakuracloud/models/volume/plans.rb
+++ /dev/null
@@ -1,25 +0,0 @@
-require 'fog/core/collection'
-require 'fog/sakuracloud/models/volume/plan'
-
-module Fog
- module Volume
- class SakuraCloud
-
- class Plans < Fog::Collection
- model Fog::Volume::SakuraCloud::Plan
-
- def all
- load service.list_plans.body['DiskPlans']
- end
-
- def get(id)
- all.find { |f| f.id == id }
- rescue Fog::Errors::NotFound
- nil
- end
-
- end
-
- end
- end
-end
diff --git a/lib/fog/sakuracloud/requests/compute/boot_server.rb b/lib/fog/sakuracloud/requests/compute/boot_server.rb
deleted file mode 100644
index f3cc07f..0000000
--- a/lib/fog/sakuracloud/requests/compute/boot_server.rb
+++ /dev/null
@@ -1,32 +0,0 @@
-# coding: utf-8
-
-module Fog
- module Compute
- class SakuraCloud
- class Real
-
- def boot_server( id )
- request(
- :headers => {
- 'Authorization' => "Basic #{@auth_encord}"
- },
- :expects => [200],
- :method => 'PUT',
- :path => "#{Fog::SakuraCloud::SAKURACLOUD_API_ENDPOINT}/server/#{id}/power"
- )
- true
- end
- end # Real
-
- class Mock
- def boot_server( id )
- response = Excon::Response.new
- response.status = 200
- response.body = {
- }
- response
- end
- end
- end # SakuraCloud
- end # Volume
-end # Fog
diff --git a/lib/fog/sakuracloud/requests/compute/create_server.rb b/lib/fog/sakuracloud/requests/compute/create_server.rb
deleted file mode 100644
index d4343e9..0000000
--- a/lib/fog/sakuracloud/requests/compute/create_server.rb
+++ /dev/null
@@ -1,44 +0,0 @@
-# coding: utf-8
-
-module Fog
- module Compute
- class SakuraCloud
- class Real
-
- def create_server( name, serverplan )
- body = {
- "Server" => {
- "Name" => name,
- "ServerPlan" => {
- "ID" => serverplan.to_i
- },
- "ConnectedSwitches"=>[{"Scope"=>"shared", "BandWidthMbps"=>100}]
- }
- }
-
-
-
- request(
- :headers => {
- 'Authorization' => "Basic #{@auth_encord}"
- },
- :expects => [201],
- :method => 'POST',
- :path => "#{Fog::SakuraCloud::SAKURACLOUD_API_ENDPOINT}/server",
- :body => Fog::JSON.encode(body)
- )
- end
- end # Real
-
- class Mock
- def create_server( name, serverplan )
- response = Excon::Response.new
- response.status = 201
- response.body = {
- }
- response
- end
- end
- end # SakuraCloud
- end # Volume
-end # Fog
diff --git a/lib/fog/sakuracloud/requests/compute/delete_server.rb b/lib/fog/sakuracloud/requests/compute/delete_server.rb
deleted file mode 100644
index c08eee8..0000000
--- a/lib/fog/sakuracloud/requests/compute/delete_server.rb
+++ /dev/null
@@ -1,34 +0,0 @@
-# coding: utf-8
-
-module Fog
- module Compute
- class SakuraCloud
- class Real
-
- def delete_server( id, force = false, disks = [] )
- body = { "Force" => force, 'WithDisk' => disks }
-
- request(
- :headers => {
- 'Authorization' => "Basic #{@auth_encord}"
- },
- :expects => [200],
- :method => 'DELETE',
- :path => "#{Fog::SakuraCloud::SAKURACLOUD_API_ENDPOINT}/server/#{id}",
- :body => Fog::JSON.encode(body)
- )
- end
- end # Real
-
- class Mock
- def delete_server( id, force = false, disks = [] )
- response = Excon::Response.new
- response.status = 200
- response.body = {
- }
- response
- end
- end
- end # SakuraCloud
- end # Volume
-end # Fog
diff --git a/lib/fog/sakuracloud/requests/compute/list_plans.rb b/lib/fog/sakuracloud/requests/compute/list_plans.rb
deleted file mode 100644
index 42d2c79..0000000
--- a/lib/fog/sakuracloud/requests/compute/list_plans.rb
+++ /dev/null
@@ -1,46 +0,0 @@
-# coding: utf-8
-
-module Fog
- module Compute
- class SakuraCloud
- class Real
- def list_plans(options = {})
- request(
- :headers => {
- 'Authorization' => "Basic #{@auth_encord}"
- },
- :method => 'GET',
- :path => "#{Fog::SakuraCloud::SAKURACLOUD_API_ENDPOINT}/product/server"
- )
- end
- end
-
- class Mock
- def list_plans(options = {})
- response = Excon::Response.new
- response.status = 200
- response.body = {
- "ServerPlans" =>
- [
- {"Index"=>0,
- "ID"=>1001,
- "Name"=>"プラン/1Core-1GB",
- "CPU"=>1,
- "MemoryMB"=>1024,
- "ServiceClass"=>"cloud/plan/1core-1gb",
- "Availability"=>"available"},
- {"Index"=>1,
- "ID"=>2001,
- "Name"=>"プラン/1Core-2GB",
- "CPU"=>1,
- "MemoryMB"=>2048,
- "ServiceClass"=>"cloud/plan/1core-2gb",
- "Availability"=>"available"}
- ]
- }
- response
- end
- end
- end
- end
-end
diff --git a/lib/fog/sakuracloud/requests/compute/list_servers.rb b/lib/fog/sakuracloud/requests/compute/list_servers.rb
deleted file mode 100644
index d20d269..0000000
--- a/lib/fog/sakuracloud/requests/compute/list_servers.rb
+++ /dev/null
@@ -1,44 +0,0 @@
-# coding: utf-8
-
-module Fog
- module Compute
- class SakuraCloud
- class Real
- def list_servers(options = {})
- request(
- :headers => {
- 'Authorization' => "Basic #{@auth_encord}"
- },
- :method => 'GET',
- :path => "#{Fog::SakuraCloud::SAKURACLOUD_API_ENDPOINT}/server"
- )
- end
- end
-
- class Mock
- def list_servers(options = {})
- response = Excon::Response.new
- response.status = 200
- response.body = {
- "Servers" =>
- [
- {"Index" => 0,
- "ID"=>112600055376,
- "Name"=>"foober1",
- "ServerPlan"=> {},
- "Instance"=> {},
- "Disks"=> []},
- {"Index" => 1,
- "ID"=>112600055377,
- "Name"=>"foober2",
- "ServerPlan"=> {},
- "Instance"=> {},
- "Disks"=> []}
- ]
- }
- response
- end
- end
- end
- end
-end
diff --git a/lib/fog/sakuracloud/requests/compute/list_ssh_keys.rb b/lib/fog/sakuracloud/requests/compute/list_ssh_keys.rb
deleted file mode 100644
index 4e2d917..0000000
--- a/lib/fog/sakuracloud/requests/compute/list_ssh_keys.rb
+++ /dev/null
@@ -1,40 +0,0 @@
-# coding: utf-8
-
-module Fog
- module Compute
- class SakuraCloud
- class Real
- def list_ssh_keys(options = {})
- request(
- :headers => {
- 'Authorization' => "Basic #{@auth_encord}"
- },
- :method => 'GET',
- :path => "#{Fog::SakuraCloud::SAKURACLOUD_API_ENDPOINT}/sshkey"
- )
- end
- end
-
- class Mock
- def list_ssh_keys(options = {})
- response = Excon::Response.new
- response.status = 200
- response.body = {
- "SSHKeys"=>
- [
- {"Index"=>0,
- "ID"=>"888888888888",
- "Name"=>"foobar1",
- "PublicKey"=>"ssh-rsa dummy"},
- {"Index"=>1,
- "ID"=>"999999999999",
- "Name"=>"foobar2",
- "PublicKey"=>"ssh-rsa dummy"}
- ]
- }
- response
- end
- end
- end
- end
-end
diff --git a/lib/fog/sakuracloud/requests/compute/list_zones.rb b/lib/fog/sakuracloud/requests/compute/list_zones.rb
deleted file mode 100644
index d06de45..0000000
--- a/lib/fog/sakuracloud/requests/compute/list_zones.rb
+++ /dev/null
@@ -1,40 +0,0 @@
-# coding: utf-8
-
-module Fog
- module Compute
- class SakuraCloud
- class Real
- def list_zones(options = {})
- request(
- :headers => {
- 'Authorization' => "Basic #{@auth_encord}"
- },
- :method => 'GET',
- :path => "#{Fog::SakuraCloud::SAKURACLOUD_API_ENDPOINT}/zone"
- )
- end
- end
-
- class Mock
- def list_zones(options = {})
- response = Excon::Response.new
- response.status = 200
- response.body = {
- "Zones" =>
- [
- {"Index"=>0,
- "ID"=>31001,
- "Name"=>"is1a",
- "Description"=>"石狩第1ゾーン"},
- {"Index"=>1,
- "ID"=>31002,
- "Name"=>"is1b",
- "Description"=>"石狩第2ゾーン"}
- ]
- }
- response
- end
- end
- end
- end
-end
diff --git a/lib/fog/sakuracloud/requests/compute/stop_server.rb b/lib/fog/sakuracloud/requests/compute/stop_server.rb
deleted file mode 100644
index 3593daa..0000000
--- a/lib/fog/sakuracloud/requests/compute/stop_server.rb
+++ /dev/null
@@ -1,38 +0,0 @@
-# coding: utf-8
-
-module Fog
- module Compute
- class SakuraCloud
- class Real
-
- def stop_server( id, force = false )
- if force
- body = { "Force" => true }
- else
- body = {}
- end
- request(
- :headers => {
- 'Authorization' => "Basic #{@auth_encord}"
- },
- :expects => [200,202],
- :method => 'DELETE',
- :path => "#{Fog::SakuraCloud::SAKURACLOUD_API_ENDPOINT}/server/#{id}/power",
- :body => Fog::JSON.encode(body)
- )
- true
- end
- end # Real
-
- class Mock
- def stop_server( id, force = false )
- response = Excon::Response.new
- response.status = 202
- response.body = {
- }
- response
- end
- end
- end # SakuraCloud
- end # Volume
-end # Fog
diff --git a/lib/fog/sakuracloud/requests/volume/attach_disk.rb b/lib/fog/sakuracloud/requests/volume/attach_disk.rb
deleted file mode 100644
index fbca4b4..0000000
--- a/lib/fog/sakuracloud/requests/volume/attach_disk.rb
+++ /dev/null
@@ -1,32 +0,0 @@
-# coding: utf-8
-
-module Fog
- module Volume
- class SakuraCloud
- class Real
-
- def attach_disk( disk_id, server_id )
-
- request(
- :headers => {
- 'Authorization' => "Basic #{@auth_encord}"
- },
- :expects => [200],
- :method => 'PUT',
- :path => "#{Fog::SakuraCloud::SAKURACLOUD_API_ENDPOINT}/disk/#{disk_id.to_s}/to/server/#{server_id.to_s}"
- )
- end
- end # Real
-
- class Mock
- def attach_disk( disk_id, server_id )
- response = Excon::Response.new
- response.status = 200
- response.body = {
- }
- response
- end
- end
- end # SakuraCloud
- end # Volume
-end # Fog
diff --git a/lib/fog/sakuracloud/requests/volume/configure_disk.rb b/lib/fog/sakuracloud/requests/volume/configure_disk.rb
deleted file mode 100644
index 300ea23..0000000
--- a/lib/fog/sakuracloud/requests/volume/configure_disk.rb
+++ /dev/null
@@ -1,36 +0,0 @@
-# coding: utf-8
-
-module Fog
- module Volume
- class SakuraCloud
- class Real
-
- def configure_disk( disk_id, sshkey_id )
- body = {
- "SSHKey" => {"ID" => sshkey_id.to_s }
- }
-
- request(
- :headers => {
- 'Authorization' => "Basic #{@auth_encord}"
- },
- :expects => [200],
- :method => 'PUT',
- :path => "#{Fog::SakuraCloud::SAKURACLOUD_API_ENDPOINT}/disk/#{disk_id.to_s}/config",
- :body => Fog::JSON.encode(body)
- )
- end
- end # Real
-
- class Mock
- def configure_disk( disk_id, sshkey_id )
- response = Excon::Response.new
- response.status = 200
- response.body = {
- }
- response
- end
- end
- end # SakuraCloud
- end # Volume
-end # Fog
diff --git a/lib/fog/sakuracloud/requests/volume/create_disk.rb b/lib/fog/sakuracloud/requests/volume/create_disk.rb
deleted file mode 100644
index ab255cb..0000000
--- a/lib/fog/sakuracloud/requests/volume/create_disk.rb
+++ /dev/null
@@ -1,44 +0,0 @@
-# coding: utf-8
-
-module Fog
- module Volume
- class SakuraCloud
- class Real
-
- def create_disk( name, plan, sourcearchive )
- body = {
- "Disk" => {
- "Name" => name,
- "SourceArchive" => {
- "ID" => sourcearchive.to_s
- },
- "Plan" => {
- "ID" => plan.to_i
- }
- }
- }
-
- request(
- :headers => {
- 'Authorization' => "Basic #{@auth_encord}"
- },
- :expects => [202],
- :method => 'POST',
- :path => "#{Fog::SakuraCloud::SAKURACLOUD_API_ENDPOINT}/disk",
- :body => Fog::JSON.encode(body)
- )
- end
- end # Real
-
- class Mock
- def create_disk( name, plan, sourcearchive )
- response = Excon::Response.new
- response.status = 202
- response.body = {
- }
- response
- end
- end
- end # SakuraCloud
- end # Volume
-end # Fog
diff --git a/lib/fog/sakuracloud/requests/volume/delete_disk.rb b/lib/fog/sakuracloud/requests/volume/delete_disk.rb
deleted file mode 100644
index 78f74de..0000000
--- a/lib/fog/sakuracloud/requests/volume/delete_disk.rb
+++ /dev/null
@@ -1,31 +0,0 @@
-# coding: utf-8
-
-module Fog
- module Volume
- class SakuraCloud
- class Real
-
- def delete_disk( id )
- request(
- :headers => {
- 'Authorization' => "Basic #{@auth_encord}"
- },
- :expects => [200],
- :method => 'DELETE',
- :path => "#{Fog::SakuraCloud::SAKURACLOUD_API_ENDPOINT}/disk/#{id}"
- )
- end
- end # Real
-
- class Mock
- def delete_disk( id )
- response = Excon::Response.new
- response.status = 200
- response.body = {
- }
- response
- end
- end
- end # SakuraCloud
- end # Volume
-end # Fog
diff --git a/lib/fog/sakuracloud/requests/volume/list_archives.rb b/lib/fog/sakuracloud/requests/volume/list_archives.rb
deleted file mode 100644
index 0a3602c..0000000
--- a/lib/fog/sakuracloud/requests/volume/list_archives.rb
+++ /dev/null
@@ -1,46 +0,0 @@
-# coding: utf-8
-
-module Fog
- module Volume
- class SakuraCloud
- class Real
- def list_archives(options = {})
- request(
- :headers => {
- 'Authorization' => "Basic #{@auth_encord}"
- },
- :method => 'GET',
- :path => "#{Fog::SakuraCloud::SAKURACLOUD_API_ENDPOINT}/archive"
- )
- end
- end
-
- class Mock
- def list_archives(options = {})
- response = Excon::Response.new
- response.status = 200
- response.body = {
- "Archives" =>
- [
- {"Index"=>0,
- "ID"=>112500514887,
- "Name"=>"CentOS 5.10 64bit (基本セット)",
- "Availability"=>"available",
- "SizeMB"=>20480,
- "Plan"=>{"ID"=>2, "StorageClass"=>"iscsi1204", "Name"=>"標準プラン"}
- },
- {"Index"=>1,
- "ID"=>112500571575,
- "Name"=>"CentOS 6.5 64bit (基本セット)",
- "Availability"=>"available",
- "SizeMB"=>102400,
- "Plan"=>{"ID"=>2, "StorageClass"=>"iscsi1204", "Name"=>"標準プラン"}
- }
- ]
- }
- response
- end
- end
- end
- end
-end
diff --git a/lib/fog/sakuracloud/requests/volume/list_disks.rb b/lib/fog/sakuracloud/requests/volume/list_disks.rb
deleted file mode 100644
index 42f468e..0000000
--- a/lib/fog/sakuracloud/requests/volume/list_disks.rb
+++ /dev/null
@@ -1,50 +0,0 @@
-# coding: utf-8
-
-module Fog
- module Volume
- class SakuraCloud
- class Real
- def list_disks(options = {})
- request(
- :headers => {
- 'Authorization' => "Basic #{@auth_encord}"
- },
- :method => 'GET',
- :path => "#{Fog::SakuraCloud::SAKURACLOUD_API_ENDPOINT}/disk"
- )
- end
- end
-
- class Mock
- def list_disks(options = {})
- response = Excon::Response.new
- response.status = 200
- response.body = {
- "Disks" =>
- [
- {"Index" => 0,
- "ID" =>112600053890,
- "Name" =>"foober1",
- "Connection" => "virtio",
- "Availability"=>"available",
- "SizeMB"=>20480,
- "Plan"=> {},
- "SourceDisk" => nil,
- "SourceArchive" => {}},
- {"Index" => 1,
- "ID" =>112600053891,
- "Name" =>"foober2",
- "Connection" => "virtio",
- "Availability"=>"available",
- "SizeMB"=>20480,
- "Plan"=> {},
- "SourceDisk" => nil,
- "SourceArchive" => {}}
- ]
- }
- response
- end
- end
- end
- end
-end
diff --git a/lib/fog/sakuracloud/requests/volume/list_plans.rb b/lib/fog/sakuracloud/requests/volume/list_plans.rb
deleted file mode 100644
index d927907..0000000
--- a/lib/fog/sakuracloud/requests/volume/list_plans.rb
+++ /dev/null
@@ -1,40 +0,0 @@
-# coding: utf-8
-
-module Fog
- module Volume
- class SakuraCloud
- class Real
- def list_plans(options = {})
- request(
- :headers => {
- 'Authorization' => "Basic #{@auth_encord}"
- },
- :method => 'GET',
- :path => "#{Fog::SakuraCloud::SAKURACLOUD_API_ENDPOINT}/product/disk"
- )
- end
- end
-
- class Mock
- def list_plans(options = {})
- response = Excon::Response.new
- response.status = 200
- response.body = {
- "DiskPlans" =>
- [
- {"Index"=>0,
- "ID"=>4,
- "Name"=>"SSDプラン",
- "Availability"=>"available"},
- {"Index"=>1,
- "ID"=>2,
- "Name"=>"標準プラン",
- "Availability"=>"available"}
- ]
- }
- response
- end
- end
- end
- end
-end
diff --git a/lib/fog/sakuracloud/volume.rb b/lib/fog/sakuracloud/volume.rb
deleted file mode 100644
index 924f556..0000000
--- a/lib/fog/sakuracloud/volume.rb
+++ /dev/null
@@ -1,92 +0,0 @@
-require 'fog/sakuracloud'
-require 'fog/volume'
-
-module Fog
- module Volume
- class SakuraCloud < Fog::Service
-
- requires :sakuracloud_api_token
- requires :sakuracloud_api_token_secret
-
- recognizes :sakuracloud_api_url
-
- model_path 'fog/sakuracloud/models/volume'
- model :archive
- collection :archives
- model :plan
- collection :plans
- model :disk
- collection :disks
-
- request_path 'fog/sakuracloud/requests/volume'
- request :list_disks
- request :list_plans
- request :create_disk
- request :configure_disk
- request :attach_disk
- request :delete_disk
- request :list_archives
-
- class Real
- def initialize(options = {})
- @auth_encord = Base64.strict_encode64([
- options[:sakuracloud_api_token],
- options[:sakuracloud_api_token_secret]
- ].join(':'))
- Fog.credentials[:sakuracloud_api_token] = options[:sakuracloud_api_token]
- Fog.credentials[:sakuracloud_api_token_secret] = options[:sakuracloud_api_token_secret]
-
- @sakuracloud_api_url = options[:sakuracloud_api_url] || 'https://secure.sakura.ad.jp'
-
- @connection = Fog::Core::Connection.new(@sakuracloud_api_url)
- end
-
- def request(params)
- response = parse @connection.request(params)
- response
- end
-
- private
- def parse(response)
- return response if response.body.empty?
- response.body = Fog::JSON.decode(response.body)
- response
- end
- end
-
- class Mock
-
- def self.data
- @data ||= Hash.new do |hash, key|
- hash[key] = {
- :disks => [],
- :plans => [],
- :archives => []
- }
- end
- end
-
- def self.reset
- @data = nil
- end
-
- def initialize(options={})
- @sakuracloud_api_token = options[:sakuracloud_api_token]
- @sakuracloud_api_token_secret = options[:sakuracloud_api_token_secret]
- end
-
- def data
- self.class.data[@sakuracloud_api_token]
- self.class.data[@sakuracloud_api_token_secret]
- end
-
- def reset_data
- self.class.data.delete(@sakuracloud_api_token)
- self.class.data.delete(@sakuracloud_api_token_secret)
- end
-
- end
-
- end #SakuraCloud
- end #Volume
-end
diff --git a/lib/fog/schema/data_validator.rb b/lib/fog/schema/data_validator.rb
deleted file mode 100644
index 68a7d7a..0000000
--- a/lib/fog/schema/data_validator.rb
+++ /dev/null
@@ -1,154 +0,0 @@
-module Fog
- module Schema
- # This validates a data object against a Ruby based schema to see
- # if they match.
- #
- # * An object matches the schema if +==+ or +===+ returns +true+
- # * Hashes match if all the key's values match the classes given
- # in the schema as well. This can be configured in the options
- # * Arrays match when every element in the data matches the case
- # given in the schema.
- #
- # The schema and validation are very simple and probably not
- # suitable for some cases.
- #
- # The following classes can be used to check for special behaviour
- #
- # * Fog::Boolean - value may be +true+ or +false+
- # * Fog::Nullable::Boolean - value may be +true+, +false+ or +nil+
- # * Fog::Nullable::Integer - value may be an Integer or +nil+
- # * Fog::Nullable::String
- # * Fog::Nullable::Time
- # * Fog::Nullable::Float
- # * Fog::Nullable::Hash
- # * Fog::Nullable::Array
- #
- # All the "nullable" objects will pass if the value is of the class
- # or if it is +nil+. This allows you to match APIs that may include
- # keys when the value is not available in some cases but will
- # always be a String. Such as an password that is only displayed
- # on the reset action.
- #
- # The keys for "nullable" resources should always be present but
- # original matcher had a bug that allowed these to also appear to
- # work as optional keys/values.
- #
- # If you need the original behaviour, data with a missing key is
- # still valid, then you may pass the +:allow_optional_rules+
- # option to the #validate method.
- #
- # That is not recommended because you are describing a schema
- # with optional keys in a format that does not support it.
- #
- # Setting +:allow_extra_keys+ as +true+ allows the data to
- # contain keys not declared by the schema and still pass. This
- # is useful if new attributes appear in the API in a backwards
- # compatible manner and can be ignored.
- #
- # This is the behaviour you would have seen with +strict+ being
- # +false+ in the original test helper.
- #
- # @example Schema example
- # {
- # "id" => String,
- # "ram" => Integer,
- # "disks" => [
- # "size" => Float
- # ],
- # "dns_name" => Fog::Nullable::String,
- # "active" => Fog::Boolean,
- # "created" => DateTime
- # }
- #
- class DataValidator
-
- def initialize
- @message = nil
- end
-
- # Checks if the data structure matches the schema passed in and
- # returns +true+ if it fits.
- #
- # @param [Object] data Hash or Array to check
- # @param [Object] schema Schema pattern to check against
- # @param [Boolean] options
- # @option options [Boolean] :allow_extra_keys
- # If +true+ does not fail if extra keys are in the data
- # that are not in the schema.
- # @option options [Boolean] :allow_optional_rules
- # If +true+ does not fail if extra keys are in the schema
- # that do not match the data. Not recommended!
- #
- # @return [Boolean] Did the data fit the schema?
- def validate(data, schema, options = {})
- valid = validate_value(schema, data, options)
-
- unless valid
- @message = "#{data.inspect} does not match #{schema.inspect}"
- end
- valid
- end
-
- # This returns the last message set by the validator
- #
- # @return [String]
- def message
- @message
- end
-
- private
-
- # This contains a slightly modified version of the Hashidator gem
- # but unfortunately the gem does not cope with Array schemas.
- #
- # @see https://github.com/vangberg/hashidator/blob/master/lib/hashidator.rb
- #
- def validate_value(validator, value, options)
- Fog::Logger.write :debug, "[yellow][DEBUG] #{value.inspect} against #{validator.inspect}[/]\n"
-
- case validator
- when Array
- return false if value.is_a?(Hash)
- value.respond_to?(:all?) && value.all? {|x| validate_value(validator[0], x, options)}
- when Symbol
- value.respond_to? validator
- when Hash
- return false if value.is_a?(Array)
-
- # When being strict values not specified in the schema are fails
- unless options[:allow_extra_keys]
- if value.respond_to?(:empty?)
- # Validator is empty but values are not
- return false if !value.empty? && validator.empty?
- end
- end
-
- unless options[:allow_optional_rules]
- if value.respond_to?(:empty?)
- # Validator has rules left but no more values
- return false if value.empty? && !validator.empty?
- end
- end
-
- validator.all? do |key, sub_validator|
- Fog::Logger.write :debug, "[blue][DEBUG] #{key.inspect} against #{sub_validator.inspect}[/]\n"
- validate_value(sub_validator, value[key], options)
- end
- else
- result = validator == value
- result = validator === value unless result
- # Repeat unless we have a Boolean already
- unless (result.is_a?(TrueClass) || result.is_a?(FalseClass))
- result = validate_value(result, value, options)
- end
- if result
- Fog::Logger.write :debug, "[green][DEBUG] Validation passed: #{value.inspect} against #{validator.inspect}[/]\n"
- else
- Fog::Logger.write :debug, "[red][DEBUG] Validation failed: #{value.inspect} against #{validator.inspect}[/]\n"
- end
- result
- end
- end
- end
- end
-end
diff --git a/lib/fog/serverlove/compute.rb b/lib/fog/serverlove/compute.rb
index 1cd3d54..4654075 100644
--- a/lib/fog/serverlove/compute.rb
+++ b/lib/fog/serverlove/compute.rb
@@ -3,7 +3,6 @@ require 'fog/serverlove/core'
module Fog
module Compute
class Serverlove < Fog::Service
-
API_HOST = "api.z1-man.serverlove.com"
requires :serverlove_uuid, :serverlove_api_key
@@ -40,7 +39,6 @@ module Fog
collection :servers
class Mock
-
def initialize(options)
@serverlove_uuid = options[:serverlove_uuid]
@serverlove_api_key = options[:serverlove_api_key]
@@ -49,11 +47,9 @@ module Fog
def request(options)
raise "Not implemented"
end
-
end
class Real
-
def initialize(options)
@api_uuid = options[:serverlove_uuid] || Fog.credentials[:serverlove_uuid]
@api_key = options[:serverlove_api_key] || Fog.credentials[:serverlove_api_key]
@@ -82,7 +78,7 @@ module Fog
end
def encode_pairs(params)
- params.keys.collect do |key|
+ params.keys.map do |key|
"#{key} #{params[key]}"
end.join("\n")
end
@@ -94,9 +90,7 @@ module Fog
raise 'omg'
end
end
-
end
-
end
end
end
diff --git a/lib/fog/serverlove/core.rb b/lib/fog/serverlove/core.rb
index ecf261b..6f05186 100644
--- a/lib/fog/serverlove/core.rb
+++ b/lib/fog/serverlove/core.rb
@@ -6,6 +6,5 @@ module Fog
extend Fog::Provider
service(:compute, 'Compute')
-
end
end
diff --git a/lib/fog/serverlove/models/compute/image.rb b/lib/fog/serverlove/models/compute/image.rb
index 335719c..0ad1b24 100644
--- a/lib/fog/serverlove/models/compute/image.rb
+++ b/lib/fog/serverlove/models/compute/image.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class Serverlove
-
class Image < Fog::Model
-
identity :id, :aliases => 'drive'
attribute :name
@@ -50,7 +48,6 @@ module Fog
allowed = [:name, :size]
attributes.select {|k,v| allowed.include? k}
end
-
end
end
end
diff --git a/lib/fog/serverlove/models/compute/images.rb b/lib/fog/serverlove/models/compute/images.rb
index a9a2a83..181e80f 100644
--- a/lib/fog/serverlove/models/compute/images.rb
+++ b/lib/fog/serverlove/models/compute/images.rb
@@ -4,9 +4,7 @@ require 'fog/serverlove/models/compute/image'
module Fog
module Compute
class Serverlove
-
class Images < Fog::Collection
-
model Fog::Compute::Serverlove::Image
def all
@@ -18,9 +16,7 @@ module Fog
data = service.get_image(image_id).body
new(data)
end
-
end
-
end
end
end
diff --git a/lib/fog/serverlove/models/compute/server.rb b/lib/fog/serverlove/models/compute/server.rb
index 99c5b6c..ad18db8 100644
--- a/lib/fog/serverlove/models/compute/server.rb
+++ b/lib/fog/serverlove/models/compute/server.rb
@@ -4,9 +4,7 @@ require 'fog/serverlove/util/compute/password_generator'
module Fog
module Compute
class Serverlove
-
class Server < Fog::Model
-
identity :id, :aliases => 'server'
attribute :name
diff --git a/lib/fog/serverlove/models/compute/servers.rb b/lib/fog/serverlove/models/compute/servers.rb
index 55107f1..3481d33 100644
--- a/lib/fog/serverlove/models/compute/servers.rb
+++ b/lib/fog/serverlove/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/serverlove/models/compute/server'
module Fog
module Compute
class Serverlove
-
class Servers < Fog::Collection
-
model Fog::Compute::Serverlove::Server
def all
@@ -18,9 +16,7 @@ module Fog
data = service.get_server(server_id).body
new(data)
end
-
end
-
end
end
end
diff --git a/lib/fog/serverlove/requests/compute/create_image.rb b/lib/fog/serverlove/requests/compute/create_image.rb
index 5211858..f6addb1 100644
--- a/lib/fog/serverlove/requests/compute/create_image.rb
+++ b/lib/fog/serverlove/requests/compute/create_image.rb
@@ -2,16 +2,13 @@ module Fog
module Compute
class Serverlove
class Real
-
def create_image(options)
return nil if options.empty? || options.nil?
request(:method => "post", :path => "/drives/create", :expects => 200, :options => options)
end
-
end
class Mock
-
def create_image(options = {})
response = Excon::Response.new
response.status = 200
@@ -25,7 +22,6 @@ module Fog
response.body = data
response
end
-
end
end
end
diff --git a/lib/fog/serverlove/requests/compute/create_server.rb b/lib/fog/serverlove/requests/compute/create_server.rb
index 0213853..cb870af 100644
--- a/lib/fog/serverlove/requests/compute/create_server.rb
+++ b/lib/fog/serverlove/requests/compute/create_server.rb
@@ -2,16 +2,13 @@ module Fog
module Compute
class Serverlove
class Real
-
def create_server(options)
return nil if options.empty? || options.nil?
request(:method => "post", :path => "/servers/create/stopped", :expects => 200, :options => options)
end
-
end
class Mock
-
def create_server(options = {})
response = Excon::Response.new
response.status = 200
@@ -27,7 +24,6 @@ module Fog
response.body = data
response
end
-
end
end
end
diff --git a/lib/fog/serverlove/requests/compute/destroy_image.rb b/lib/fog/serverlove/requests/compute/destroy_image.rb
index d0cc0c2..43ad4b6 100644
--- a/lib/fog/serverlove/requests/compute/destroy_image.rb
+++ b/lib/fog/serverlove/requests/compute/destroy_image.rb
@@ -2,11 +2,9 @@ module Fog
module Compute
class Serverlove
class Real
-
def destroy_image(drive_id)
request(:method => "post", :path => "/drives/#{drive_id}/destroy", :expects => 204)
end
-
end
end
end
diff --git a/lib/fog/serverlove/requests/compute/destroy_server.rb b/lib/fog/serverlove/requests/compute/destroy_server.rb
index aa1ba71..69588b5 100644
--- a/lib/fog/serverlove/requests/compute/destroy_server.rb
+++ b/lib/fog/serverlove/requests/compute/destroy_server.rb
@@ -2,11 +2,9 @@ module Fog
module Compute
class Serverlove
class Real
-
def destroy_server(server_id)
request(:method => "post", :path => "/servers/#{server_id}/destroy", :expects => 204)
end
-
end
end
end
diff --git a/lib/fog/serverlove/requests/compute/get_image.rb b/lib/fog/serverlove/requests/compute/get_image.rb
index 7aa0063..2b3e8a6 100644
--- a/lib/fog/serverlove/requests/compute/get_image.rb
+++ b/lib/fog/serverlove/requests/compute/get_image.rb
@@ -2,11 +2,9 @@ module Fog
module Compute
class Serverlove
class Real
-
def get_image(image_id)
request(:method => "get", :path => "/drives/#{image_id}/info", :expects => 200)
end
-
end
end
end
diff --git a/lib/fog/serverlove/requests/compute/get_images.rb b/lib/fog/serverlove/requests/compute/get_images.rb
index 771296f..e718e67 100644
--- a/lib/fog/serverlove/requests/compute/get_images.rb
+++ b/lib/fog/serverlove/requests/compute/get_images.rb
@@ -2,11 +2,9 @@ module Fog
module Compute
class Serverlove
class Real
-
def get_images
request(:method => "get", :path => "/drives/info", :expects => 200)
end
-
end
end
end
diff --git a/lib/fog/serverlove/requests/compute/get_server.rb b/lib/fog/serverlove/requests/compute/get_server.rb
index 5f42e2b..9f4716c 100644
--- a/lib/fog/serverlove/requests/compute/get_server.rb
+++ b/lib/fog/serverlove/requests/compute/get_server.rb
@@ -2,11 +2,9 @@ module Fog
module Compute
class Serverlove
class Real
-
def get_server(server_id)
request(:method => "get", :path => "/servers/#{server_id}/info", :expects => 200)
end
-
end
end
end
diff --git a/lib/fog/serverlove/requests/compute/get_servers.rb b/lib/fog/serverlove/requests/compute/get_servers.rb
index 6fe172a..f7f7204 100644
--- a/lib/fog/serverlove/requests/compute/get_servers.rb
+++ b/lib/fog/serverlove/requests/compute/get_servers.rb
@@ -2,11 +2,9 @@ module Fog
module Compute
class Serverlove
class Real
-
def get_servers
request(:method => "get", :path => "/servers/info", :expects => 200)
end
-
end
end
end
diff --git a/lib/fog/serverlove/requests/compute/load_standard_image.rb b/lib/fog/serverlove/requests/compute/load_standard_image.rb
index 8133781..a4c64c1 100644
--- a/lib/fog/serverlove/requests/compute/load_standard_image.rb
+++ b/lib/fog/serverlove/requests/compute/load_standard_image.rb
@@ -2,11 +2,9 @@ module Fog
module Compute
class Serverlove
class Real
-
def load_standard_image(destination_image, source_image)
request(:method => "post", :path => "/drives/#{destination_image}/image/#{source_image}/gunzip", :expects => 204)
end
-
end
end
end
diff --git a/lib/fog/serverlove/requests/compute/reset_server.rb b/lib/fog/serverlove/requests/compute/reset_server.rb
index aef2fd4..f680a65 100644
--- a/lib/fog/serverlove/requests/compute/reset_server.rb
+++ b/lib/fog/serverlove/requests/compute/reset_server.rb
@@ -2,11 +2,9 @@ module Fog
module Compute
class Serverlove
class Real
-
def reset_server(server_id)
request(:method => "post", :path => "/servers/#{server_id}/reset", :expects => 204)
end
-
end
end
end
diff --git a/lib/fog/serverlove/requests/compute/shutdown_server.rb b/lib/fog/serverlove/requests/compute/shutdown_server.rb
index be91bab..ed9d85b 100644
--- a/lib/fog/serverlove/requests/compute/shutdown_server.rb
+++ b/lib/fog/serverlove/requests/compute/shutdown_server.rb
@@ -2,11 +2,9 @@ module Fog
module Compute
class Serverlove
class Real
-
def shutdown_server(server_id)
request(:method => "post", :path => "/servers/#{server_id}/shutdown", :expects => 204)
end
-
end
end
end
diff --git a/lib/fog/serverlove/requests/compute/start_server.rb b/lib/fog/serverlove/requests/compute/start_server.rb
index e008406..d3c5e23 100644
--- a/lib/fog/serverlove/requests/compute/start_server.rb
+++ b/lib/fog/serverlove/requests/compute/start_server.rb
@@ -2,11 +2,9 @@ module Fog
module Compute
class Serverlove
class Real
-
def start_server(server_id)
request(:method => "post", :path => "/servers/#{server_id}/start", :expects => 200)
end
-
end
end
end
diff --git a/lib/fog/serverlove/requests/compute/stop_server.rb b/lib/fog/serverlove/requests/compute/stop_server.rb
index da181a1..e7a8613 100644
--- a/lib/fog/serverlove/requests/compute/stop_server.rb
+++ b/lib/fog/serverlove/requests/compute/stop_server.rb
@@ -2,11 +2,9 @@ module Fog
module Compute
class Serverlove
class Real
-
def stop_server(server_id)
request(:method => "post", :path => "/servers/#{server_id}/stop", :expects => 204)
end
-
end
end
end
diff --git a/lib/fog/serverlove/requests/compute/update_image.rb b/lib/fog/serverlove/requests/compute/update_image.rb
index be344c3..8d68239 100644
--- a/lib/fog/serverlove/requests/compute/update_image.rb
+++ b/lib/fog/serverlove/requests/compute/update_image.rb
@@ -2,13 +2,11 @@ module Fog
module Compute
class Serverlove
class Real
-
def update_image(identifier, options)
return nil if identifier.nil? || identifier == ""
return nil if options.empty? || options.nil?
request(:method => "post", :path => "/drives/#{identifier}/set", :expects => 200, :options => options)
end
-
end
end
end
diff --git a/lib/fog/serverlove/requests/compute/update_server.rb b/lib/fog/serverlove/requests/compute/update_server.rb
index eef5d3f..96b8a93 100644
--- a/lib/fog/serverlove/requests/compute/update_server.rb
+++ b/lib/fog/serverlove/requests/compute/update_server.rb
@@ -2,13 +2,11 @@ module Fog
module Compute
class Serverlove
class Real
-
def update_server(identifier, options)
return nil if identifier.nil? || identifier == ""
return nil if options.empty? || options.nil?
request(:method => "post", :path => "/servers/#{identifier}/set", :expects => 200, :options => options)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/account.rb b/lib/fog/storm_on_demand/account.rb
index 6c728ba..309aab9 100644
--- a/lib/fog/storm_on_demand/account.rb
+++ b/lib/fog/storm_on_demand/account.rb
@@ -3,9 +3,7 @@ require 'fog/storm_on_demand/shared'
module Fog
module Account
-
class StormOnDemand < Fog::Service
-
requires :storm_on_demand_username, :storm_on_demand_password
recognizes :storm_on_demand_auth_url
@@ -18,7 +16,6 @@ module Fog
request :expire_token
class Mock
-
def self.data
@data ||= Hash.new
end
@@ -44,13 +41,10 @@ module Fog
def reset_data
self.class.data.delete(@storm_on_demand_username)
end
-
end
class Real
-
include Fog::StormOnDemand::RealShared
-
end
end
end
diff --git a/lib/fog/storm_on_demand/billing.rb b/lib/fog/storm_on_demand/billing.rb
index cb772ad..c26cfc4 100644
--- a/lib/fog/storm_on_demand/billing.rb
+++ b/lib/fog/storm_on_demand/billing.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/shared'
module Fog
module Billing
class StormOnDemand < Fog::Service
-
requires :storm_on_demand_username, :storm_on_demand_password
recognizes :storm_on_demand_auth_url
@@ -21,7 +20,6 @@ module Fog
request :make_payment
class Mock
-
def self.data
@data ||= Hash.new
end
@@ -47,13 +45,10 @@ module Fog
def reset_data
self.class.data.delete(@storm_on_demand_username)
end
-
end
class Real
-
include Fog::StormOnDemand::RealShared
-
end
end
end
diff --git a/lib/fog/storm_on_demand/compute.rb b/lib/fog/storm_on_demand/compute.rb
index 74f0ff6..8fee8cf 100644
--- a/lib/fog/storm_on_demand/compute.rb
+++ b/lib/fog/storm_on_demand/compute.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/shared'
module Fog
module Compute
class StormOnDemand < Fog::Service
-
requires :storm_on_demand_username, :storm_on_demand_password
recognizes :storm_on_demand_auth_url
@@ -62,7 +61,6 @@ module Fog
request :resolve_notification
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {
@@ -97,13 +95,10 @@ module Fog
def reset_data
self.class.data.delete(@storm_on_demand_username)
end
-
end
class Real
-
include Fog::StormOnDemand::RealShared
-
end
end
end
diff --git a/lib/fog/storm_on_demand/core.rb b/lib/fog/storm_on_demand/core.rb
index f3ad8ae..86bfa03 100644
--- a/lib/fog/storm_on_demand/core.rb
+++ b/lib/fog/storm_on_demand/core.rb
@@ -3,7 +3,6 @@ require 'fog/json'
module Fog
module StormOnDemand
-
extend Fog::Provider
service(:compute, 'Compute')
@@ -15,7 +14,5 @@ module Fog
service(:support, 'Support')
service(:account, 'Account')
service(:vpn, 'VPN')
-
end
end
-
diff --git a/lib/fog/storm_on_demand/dns.rb b/lib/fog/storm_on_demand/dns.rb
index 38beb46..661e23e 100644
--- a/lib/fog/storm_on_demand/dns.rb
+++ b/lib/fog/storm_on_demand/dns.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/shared'
module Fog
module DNS
class StormOnDemand < Fog::Service
-
API_URL = 'https://api.stormondemand.com'
API_VERSION = 'v1'
@@ -45,7 +44,6 @@ module Fog
request :update_zone
class Mock
-
def self.data
@data ||= Hash.new
end
@@ -71,13 +69,10 @@ module Fog
def reset_data
self.class.data.delete(@storm_on_demand_username)
end
-
end
class Real
-
include Fog::StormOnDemand::RealShared
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/account/token.rb b/lib/fog/storm_on_demand/models/account/token.rb
index 6768c93..bd87a0b 100644
--- a/lib/fog/storm_on_demand/models/account/token.rb
+++ b/lib/fog/storm_on_demand/models/account/token.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Account
class StormOnDemand
-
class Token < Fog::Model
attribute :token
attribute :expires
@@ -15,9 +14,7 @@ module Fog
def expire
service.expire_token.body['expired'].to_i == 1 ? true : false
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/account/tokens.rb b/lib/fog/storm_on_demand/models/account/tokens.rb
index dd52966..70751fd 100644
--- a/lib/fog/storm_on_demand/models/account/tokens.rb
+++ b/lib/fog/storm_on_demand/models/account/tokens.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/account/token'
module Fog
module Account
class StormOnDemand
-
class Tokens < Fog::Collection
model Fog::Account::StormOnDemand::Token
@@ -12,9 +11,7 @@ module Fog
t = service.create_token(options).body
new(t)
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/billing/invoice.rb b/lib/fog/storm_on_demand/models/billing/invoice.rb
index 6d39cc5..32b4df1 100644
--- a/lib/fog/storm_on_demand/models/billing/invoice.rb
+++ b/lib/fog/storm_on_demand/models/billing/invoice.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Billing
class StormOnDemand
-
class Invoice < Fog::Model
identity :id
attribute :accnt
@@ -20,9 +19,7 @@ module Fog
def initialize(attributes={})
super
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/billing/invoices.rb b/lib/fog/storm_on_demand/models/billing/invoices.rb
index f62b766..9782741 100644
--- a/lib/fog/storm_on_demand/models/billing/invoices.rb
+++ b/lib/fog/storm_on_demand/models/billing/invoices.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/billing/invoice'
module Fog
module Billing
class StormOnDemand
-
class Invoices < Fog::Collection
model Fog::Billing::StormOnDemand::Invoice
@@ -22,9 +21,7 @@ module Fog
invoice = service.next_invoice.body
new(invoice)
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/billing/payment.rb b/lib/fog/storm_on_demand/models/billing/payment.rb
index d7c3074..eceefd1 100644
--- a/lib/fog/storm_on_demand/models/billing/payment.rb
+++ b/lib/fog/storm_on_demand/models/billing/payment.rb
@@ -3,15 +3,11 @@ require 'fog/core/model'
module Fog
module Billing
class StormOnDemand
-
class Payment < Fog::Model
-
def initialize(attributes={})
super
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/billing/payments.rb b/lib/fog/storm_on_demand/models/billing/payments.rb
index 230c69d..8ab6ad6 100644
--- a/lib/fog/storm_on_demand/models/billing/payments.rb
+++ b/lib/fog/storm_on_demand/models/billing/payments.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/billing/payment'
module Fog
module Billing
class StormOnDemand
-
class Payments < Fog::Collection
model Fog::Billing::StormOnDemand::Payment
@@ -13,7 +12,6 @@ module Fog
:card_code => card_code).body['amount']
end
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/compute/config.rb b/lib/fog/storm_on_demand/models/compute/config.rb
index cf0d34d..6d88c66 100644
--- a/lib/fog/storm_on_demand/models/compute/config.rb
+++ b/lib/fog/storm_on_demand/models/compute/config.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class StormOnDemand
-
class Config < Fog::Model
identity :id
@@ -32,7 +31,6 @@ module Fog
def initialize(attributes={})
super
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/compute/configs.rb b/lib/fog/storm_on_demand/models/compute/configs.rb
index eb0768e..35e5681 100644
--- a/lib/fog/storm_on_demand/models/compute/configs.rb
+++ b/lib/fog/storm_on_demand/models/compute/configs.rb
@@ -4,9 +4,7 @@ require 'fog/storm_on_demand/models/compute/config'
module Fog
module Compute
class StormOnDemand
-
class Configs < Fog::Collection
-
model Fog::Compute::StormOnDemand::Config
def all(options={})
@@ -18,9 +16,7 @@ module Fog
data = service.get_config_details(:id => config_id).body
new(data)
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/compute/image.rb b/lib/fog/storm_on_demand/models/compute/image.rb
index 9cfe6bf..565af49 100644
--- a/lib/fog/storm_on_demand/models/compute/image.rb
+++ b/lib/fog/storm_on_demand/models/compute/image.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class StormOnDemand
-
class Image < Fog::Model
identity :id
attribute :accnt
@@ -16,7 +15,6 @@ module Fog
attribute :template_description
attribute :time_taken
-
def destroy
requires :identity
service.delete_image(:id => identity)
@@ -33,9 +31,7 @@ module Fog
service.restore_image({:id => identity}.merge!(options))
true
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/compute/images.rb b/lib/fog/storm_on_demand/models/compute/images.rb
index b1dba37..8a8295c 100644
--- a/lib/fog/storm_on_demand/models/compute/images.rb
+++ b/lib/fog/storm_on_demand/models/compute/images.rb
@@ -4,9 +4,7 @@ require 'fog/storm_on_demand/models/compute/image'
module Fog
module Compute
class StormOnDemand
-
class Images < Fog::Collection
-
model Fog::Compute::StormOnDemand::Image
def create(options={})
@@ -23,9 +21,7 @@ module Fog
data = service.list_images(options).body['items']
load(data)
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/compute/notification.rb b/lib/fog/storm_on_demand/models/compute/notification.rb
index eae1b0b..417283a 100644
--- a/lib/fog/storm_on_demand/models/compute/notification.rb
+++ b/lib/fog/storm_on_demand/models/compute/notification.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class StormOnDemand
-
class Notification < Fog::Model
identity :id
attribute :category
@@ -26,9 +25,7 @@ module Fog
requires :identity
service.resolve_notification(:id => identity).body
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/compute/notifications.rb b/lib/fog/storm_on_demand/models/compute/notifications.rb
index 76a9697..cced0a8 100644
--- a/lib/fog/storm_on_demand/models/compute/notifications.rb
+++ b/lib/fog/storm_on_demand/models/compute/notifications.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/compute/notification'
module Fog
module Compute
class StormOnDemand
-
class Notifications < Fog::Collection
model Fog::Compute::StormOnDemand::Notification
@@ -22,9 +21,7 @@ module Fog
data = service.get_notification(options).body
new(data)
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/compute/product.rb b/lib/fog/storm_on_demand/models/compute/product.rb
index 9535eb9..8ea08f4 100644
--- a/lib/fog/storm_on_demand/models/compute/product.rb
+++ b/lib/fog/storm_on_demand/models/compute/product.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class StormOnDemand
-
class Product < Fog::Model
identity :code
attribute :alias
@@ -32,9 +31,7 @@ module Fog
requires :identity
service.get_product_starting_price(:code => identity).body['items']
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/compute/products.rb b/lib/fog/storm_on_demand/models/compute/products.rb
index 59bcfca..460e99c 100644
--- a/lib/fog/storm_on_demand/models/compute/products.rb
+++ b/lib/fog/storm_on_demand/models/compute/products.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/compute/product'
module Fog
module Compute
class StormOnDemand
-
class Products < Fog::Collection
model Fog::Compute::StormOnDemand::Product
@@ -20,9 +19,7 @@ module Fog
def all(options={})
service.list_products(options).body['items']
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/compute/server.rb b/lib/fog/storm_on_demand/models/compute/server.rb
index 2722123..348eb0b 100644
--- a/lib/fog/storm_on_demand/models/compute/server.rb
+++ b/lib/fog/storm_on_demand/models/compute/server.rb
@@ -3,7 +3,6 @@ require 'fog/compute/models/server'
module Fog
module Compute
class StormOnDemand
-
class Server < Fog::Compute::Server
identity :uniq_id
@@ -86,9 +85,7 @@ module Fog
requires :identity
service.update_server({:uniq_id => identity}.merge!(options)).body
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/compute/servers.rb b/lib/fog/storm_on_demand/models/compute/servers.rb
index 2cca032..f68567f 100644
--- a/lib/fog/storm_on_demand/models/compute/servers.rb
+++ b/lib/fog/storm_on_demand/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/storm_on_demand/models/compute/server'
module Fog
module Compute
class StormOnDemand
-
class Servers < Fog::Collection
-
model Fog::Compute::StormOnDemand::Server
def all(options={})
@@ -23,9 +21,7 @@ module Fog
server = service.create_server(options).body
new(server)
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/compute/template.rb b/lib/fog/storm_on_demand/models/compute/template.rb
index 98a58cb..74dc09d 100644
--- a/lib/fog/storm_on_demand/models/compute/template.rb
+++ b/lib/fog/storm_on_demand/models/compute/template.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class StormOnDemand
-
class Template < Fog::Model
identity :id
attribute :name
@@ -22,7 +21,6 @@ module Fog
requires :identity
service.restore_template({:id => identity}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/compute/templates.rb b/lib/fog/storm_on_demand/models/compute/templates.rb
index 5b28623..1228fc9 100644
--- a/lib/fog/storm_on_demand/models/compute/templates.rb
+++ b/lib/fog/storm_on_demand/models/compute/templates.rb
@@ -4,9 +4,7 @@ require 'fog/storm_on_demand/models/compute/template'
module Fog
module Compute
class StormOnDemand
-
class Templates < Fog::Collection
-
model Fog::Compute::StormOnDemand::Template
def all(options={})
@@ -18,9 +16,7 @@ module Fog
tpl = service.get_template_details(:id => template_id).body
new(tpl)
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/dns/domain.rb b/lib/fog/storm_on_demand/models/dns/domain.rb
index ef0374b..f219dfe 100644
--- a/lib/fog/storm_on_demand/models/dns/domain.rb
+++ b/lib/fog/storm_on_demand/models/dns/domain.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module DNS
class StormOnDemand
-
class Domain < Fog::Model
identity :domain
attribute :admin_handle
@@ -26,9 +25,7 @@ module Fog
service.renew_domain(:domain => identity, :years => years)
true
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/dns/domains.rb b/lib/fog/storm_on_demand/models/dns/domains.rb
index 5d8500f..45d09ea 100644
--- a/lib/fog/storm_on_demand/models/dns/domains.rb
+++ b/lib/fog/storm_on_demand/models/dns/domains.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/dns/domain'
module Fog
module DNS
class StormOnDemand
-
class Domains < Fog::Collection
model Fog::DNS::StormOnDemand::Domain
@@ -12,9 +11,7 @@ module Fog
domains = service.list_domains(options).body['items']
load(domains)
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/dns/record.rb b/lib/fog/storm_on_demand/models/dns/record.rb
index ee034d3..c2e2a4a 100644
--- a/lib/fog/storm_on_demand/models/dns/record.rb
+++ b/lib/fog/storm_on_demand/models/dns/record.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module DNS
class StormOnDemand
-
class Record < Fog::Model
identity :id
attribute :adminEmail
@@ -56,9 +55,7 @@ module Fog
requires :identity
service.update_record_region({:record_id => identity}.merge!(options))
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/dns/records.rb b/lib/fog/storm_on_demand/models/dns/records.rb
index 297f02d..8b06908 100644
--- a/lib/fog/storm_on_demand/models/dns/records.rb
+++ b/lib/fog/storm_on_demand/models/dns/records.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/dns/record'
module Fog
module DNS
class StormOnDemand
-
class Records < Fog::Collection
model Fog::DNS::StormOnDemand::Record
@@ -22,9 +21,7 @@ module Fog
recs = service.list_records(options).body['items']
load(recs)
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/dns/reverse.rb b/lib/fog/storm_on_demand/models/dns/reverse.rb
index 5df7ddd..30dd38d 100644
--- a/lib/fog/storm_on_demand/models/dns/reverse.rb
+++ b/lib/fog/storm_on_demand/models/dns/reverse.rb
@@ -4,11 +4,9 @@ module Fog
module DNS
class StormOnDemand
class Reverse < Fog::Model
-
def initialize(attributes={})
super
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/dns/reverses.rb b/lib/fog/storm_on_demand/models/dns/reverses.rb
index 2305831..991845a 100644
--- a/lib/fog/storm_on_demand/models/dns/reverses.rb
+++ b/lib/fog/storm_on_demand/models/dns/reverses.rb
@@ -1,10 +1,9 @@
-require 'fog/core/colletion'
+require 'fog/core/collection'
require 'fog/storm_on_demand/models/dns/reverse'
module Fog
module DNS
class StormOnDemand
-
class Reverses < Fog::Collection
model Fog::DNS::StormOnDemand::Reverse
@@ -15,9 +14,7 @@ module Fog
def update(options)
service.update_reverse(options).body
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/dns/zone.rb b/lib/fog/storm_on_demand/models/dns/zone.rb
index 5e3992d..5cb7258 100644
--- a/lib/fog/storm_on_demand/models/dns/zone.rb
+++ b/lib/fog/storm_on_demand/models/dns/zone.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module DNS
class StormOnDemand
-
class Zone < Fog::Model
identity :id
attribute :active
@@ -33,7 +32,6 @@ module Fog
requires :identity
service.update_zone({:id => identity}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/dns/zones.rb b/lib/fog/storm_on_demand/models/dns/zones.rb
index 88aa8a5..8647587 100644
--- a/lib/fog/storm_on_demand/models/dns/zones.rb
+++ b/lib/fog/storm_on_demand/models/dns/zones.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/dns/zone'
module Fog
module DNS
class StormOnDemand
-
class Zones < Fog::Collection
model Fog::DNS::StormOnDemand::Zone
@@ -22,9 +21,7 @@ module Fog
zones = service.list_zones(options).body['items']
load(zones)
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/monitoring/bandwidth.rb b/lib/fog/storm_on_demand/models/monitoring/bandwidth.rb
index 23a6461..50d716c 100644
--- a/lib/fog/storm_on_demand/models/monitoring/bandwidth.rb
+++ b/lib/fog/storm_on_demand/models/monitoring/bandwidth.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Monitoring
class StormOnDemand
-
class Bandwidth < Fog::Model
attribute :actual
attribute :averages
@@ -15,9 +14,7 @@ module Fog
def initialize(attributes={})
super
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/monitoring/bandwidths.rb b/lib/fog/storm_on_demand/models/monitoring/bandwidths.rb
index 04a9fcd..509abc7 100644
--- a/lib/fog/storm_on_demand/models/monitoring/bandwidths.rb
+++ b/lib/fog/storm_on_demand/models/monitoring/bandwidths.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/monitoring/bandwidth'
module Fog
module Monitoring
class StormOnDemand
-
class Bandwidths < Fog::Collection
model Fog::Monitoring::StormOnDemand::Bandwidth
@@ -16,7 +15,6 @@ module Fog
bw = service.get_bandwidth_stats(:uniq_id => uniq_id).body
new(bw)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/monitoring/load.rb b/lib/fog/storm_on_demand/models/monitoring/load.rb
index 47b2cda..30f359d 100644
--- a/lib/fog/storm_on_demand/models/monitoring/load.rb
+++ b/lib/fog/storm_on_demand/models/monitoring/load.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Monitoring
class StormOnDemand
-
class Load < Fog::Model
attribute :disk
attribute :domain
@@ -15,9 +14,7 @@ module Fog
def initialize(attributes={})
super
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/monitoring/loads.rb b/lib/fog/storm_on_demand/models/monitoring/loads.rb
index 56919d1..c896f4a 100644
--- a/lib/fog/storm_on_demand/models/monitoring/loads.rb
+++ b/lib/fog/storm_on_demand/models/monitoring/loads.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/monitoring/load'
module Fog
module Monitoring
class StormOnDemand
-
class Loads < Fog::Collection
model Fog::Monitoring::StormOnDemand::Load
@@ -16,9 +15,7 @@ module Fog
load = service.get_load_stats(:uniq_id => uniq_id).body
new(load)
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/monitoring/monitor_service.rb b/lib/fog/storm_on_demand/models/monitoring/monitor_service.rb
index a0b8c15..2b6cff5 100644
--- a/lib/fog/storm_on_demand/models/monitoring/monitor_service.rb
+++ b/lib/fog/storm_on_demand/models/monitoring/monitor_service.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Monitoring
class StormOnDemand
-
class MonitorService < Fog::Model
attribute :can_monitor
attribute :enabled
@@ -14,9 +13,7 @@ module Fog
def initialize(attributes={})
super
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/monitoring/monitor_services.rb b/lib/fog/storm_on_demand/models/monitoring/monitor_services.rb
index add4aac..9bc09da 100644
--- a/lib/fog/storm_on_demand/models/monitoring/monitor_services.rb
+++ b/lib/fog/storm_on_demand/models/monitoring/monitor_services.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/monitoring/monitor_service'
module Fog
module Monitoring
class StormOnDemand
-
class MonitorServices < Fog::Collection
model Fog::Monitoring::StormOnDemand::MonitorService
@@ -25,7 +24,6 @@ module Fog
status = service.update_service(options).body
new(status)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/network/balancer.rb b/lib/fog/storm_on_demand/models/network/balancer.rb
index c61637b..d4ab6de 100644
--- a/lib/fog/storm_on_demand/models/network/balancer.rb
+++ b/lib/fog/storm_on_demand/models/network/balancer.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Network
class StormOnDemand
-
class Balancer < Fog::Model
-
identity :uniq_id
attribute :capabilities
@@ -52,9 +50,7 @@ module Fog
requires :identity
service.update_balancer({:uniq_id => identity}.merge!(options))
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/network/balancers.rb b/lib/fog/storm_on_demand/models/network/balancers.rb
index 3c863ca..6fdf154 100644
--- a/lib/fog/storm_on_demand/models/network/balancers.rb
+++ b/lib/fog/storm_on_demand/models/network/balancers.rb
@@ -4,9 +4,7 @@ require 'fog/storm_on_demand/models/network/balancer'
module Fog
module Network
class StormOnDemand
-
class Balancers < Fog::Collection
-
model Fog::Network::StormOnDemand::Balancer
def all(options={})
@@ -36,9 +34,7 @@ module Fog
def strategies
service.get_balancer_strategies.body['strategies']
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/network/firewall.rb b/lib/fog/storm_on_demand/models/network/firewall.rb
index 3b52f85..9487f58 100644
--- a/lib/fog/storm_on_demand/models/network/firewall.rb
+++ b/lib/fog/storm_on_demand/models/network/firewall.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Network
class StormOnDemand
-
class Firewall < Fog::Model
attribute :allow
attribute :rules
@@ -13,7 +12,6 @@ module Fog
def initialize(attributes={})
super
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/network/firewalls.rb b/lib/fog/storm_on_demand/models/network/firewalls.rb
index a32c0cd..21a4b4b 100644
--- a/lib/fog/storm_on_demand/models/network/firewalls.rb
+++ b/lib/fog/storm_on_demand/models/network/firewalls.rb
@@ -25,7 +25,6 @@ module Fog
service.update_firewall(options)
true
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/network/network_ip.rb b/lib/fog/storm_on_demand/models/network/network_ip.rb
index 445b16f..cfb7662 100644
--- a/lib/fog/storm_on_demand/models/network/network_ip.rb
+++ b/lib/fog/storm_on_demand/models/network/network_ip.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Network
class StormOnDemand
-
class NetworkIP < Fog::Model
identity :id
@@ -16,7 +15,6 @@ module Fog
def initialize(attributes={})
super
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/network/network_ips.rb b/lib/fog/storm_on_demand/models/network/network_ips.rb
index a608f0e..cc0fa6a 100644
--- a/lib/fog/storm_on_demand/models/network/network_ips.rb
+++ b/lib/fog/storm_on_demand/models/network/network_ips.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/network/network_ip'
module Fog
module Network
class StormOnDemand
-
class NetworkIPs < Fog::Collection
model Fog::Network::StormOnDemand::NetworkIP
@@ -41,7 +40,6 @@ module Fog
service.request_new_ips(options)
true
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/network/pool.rb b/lib/fog/storm_on_demand/models/network/pool.rb
index a78f8ea..092b2c0 100644
--- a/lib/fog/storm_on_demand/models/network/pool.rb
+++ b/lib/fog/storm_on_demand/models/network/pool.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Network
class StormOnDemand
-
class Pool < Fog::Model
identity :uniq_id
attribute :accnt
@@ -25,7 +24,6 @@ module Fog
requires :identity
service.update_pool({:uniq_id => identity}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/network/pools.rb b/lib/fog/storm_on_demand/models/network/pools.rb
index 3e4f4e9..f83d8e6 100644
--- a/lib/fog/storm_on_demand/models/network/pools.rb
+++ b/lib/fog/storm_on_demand/models/network/pools.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/network/pool'
module Fog
module Network
class StormOnDemand
-
class Pools < Fog::Collection
model Fog::Network::StormOnDemand::Pool
@@ -21,7 +20,6 @@ module Fog
def get_assignments(options={})
service.get_assignments(options).body['items']
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/network/private_ip.rb b/lib/fog/storm_on_demand/models/network/private_ip.rb
index 9f803b6..c739153 100644
--- a/lib/fog/storm_on_demand/models/network/private_ip.rb
+++ b/lib/fog/storm_on_demand/models/network/private_ip.rb
@@ -3,16 +3,13 @@ require 'fog/core/model'
module Fog
module Network
class StormOnDemand
-
class PrivateIp < Fog::Model
attribute :zones
def initialize(attributes={})
super
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/network/private_ips.rb b/lib/fog/storm_on_demand/models/network/private_ips.rb
index 2b5b2ce..8bb3f9c 100644
--- a/lib/fog/storm_on_demand/models/network/private_ips.rb
+++ b/lib/fog/storm_on_demand/models/network/private_ips.rb
@@ -4,9 +4,7 @@ require 'fog/storm_on_demand/models/network/private_ip'
module Fog
module Network
class StormOnDemand
-
class PrivateIps < Fog::Collection
-
model Fog::Network::StormOnDemand::PrivateIp
def all
@@ -32,9 +30,7 @@ module Fog
r = service.check_server_attached(:uniq_id => server_id).body
r['is_attached'].to_i == 1 ? true : false
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/network/ruleset.rb b/lib/fog/storm_on_demand/models/network/ruleset.rb
index 7b94d6f..7d117d4 100644
--- a/lib/fog/storm_on_demand/models/network/ruleset.rb
+++ b/lib/fog/storm_on_demand/models/network/ruleset.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Network
class StormOnDemand
-
class Ruleset < Fog::Model
attribute :accnt
attribute :destination_ip
@@ -20,7 +19,6 @@ module Fog
service.update_ruleset(:ruleset => ruleset, :rules => rules)
true
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/network/rulesets.rb b/lib/fog/storm_on_demand/models/network/rulesets.rb
index 9b936b8..f4a280b 100644
--- a/lib/fog/storm_on_demand/models/network/rulesets.rb
+++ b/lib/fog/storm_on_demand/models/network/rulesets.rb
@@ -21,7 +21,6 @@ module Fog
r = service.list_rulesets(options).body['item']
load(r)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/network/zone.rb b/lib/fog/storm_on_demand/models/network/zone.rb
index a98111b..78918d0 100644
--- a/lib/fog/storm_on_demand/models/network/zone.rb
+++ b/lib/fog/storm_on_demand/models/network/zone.rb
@@ -3,7 +3,6 @@ require "fog/core/model"
module Fog
module Network
class StormOnDemand
-
class Zone < Fog::Model
identity :id
attribute :is_default
@@ -20,7 +19,6 @@ module Fog
requires :identity
service.set_default_zone(:id => identity)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/network/zones.rb b/lib/fog/storm_on_demand/models/network/zones.rb
index fabd454..08a9f89 100644
--- a/lib/fog/storm_on_demand/models/network/zones.rb
+++ b/lib/fog/storm_on_demand/models/network/zones.rb
@@ -4,7 +4,6 @@ require "fog/storm_on_demand/models/network/zone"
module Fog
module Network
class StormOnDemand
-
class Zones < Fog::Collection
model Fog::Network::StormOnDemand::Zone
@@ -17,7 +16,6 @@ module Fog
data = service.list_zones(options).body
load(data)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/storage/cluster.rb b/lib/fog/storm_on_demand/models/storage/cluster.rb
index 6535023..def212d 100644
--- a/lib/fog/storm_on_demand/models/storage/cluster.rb
+++ b/lib/fog/storm_on_demand/models/storage/cluster.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Storage
class StormOnDemand
-
class Cluster < Fog::Model
identity :id
attribute :description
@@ -12,9 +11,7 @@ module Fog
def initialize(attributes={})
super
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/storage/clusters.rb b/lib/fog/storm_on_demand/models/storage/clusters.rb
index 066a182..91b810c 100644
--- a/lib/fog/storm_on_demand/models/storage/clusters.rb
+++ b/lib/fog/storm_on_demand/models/storage/clusters.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/storage/cluster'
module Fog
module Storage
class StormOnDemand
-
class Clusters < Fog::Collection
model Fog::Storage::StormOnDemand::Cluster
@@ -12,9 +11,7 @@ module Fog
data = service.list_clusters(options).body['items']
load(data)
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/storage/volume.rb b/lib/fog/storm_on_demand/models/storage/volume.rb
index 0ab7971..52c9ebd 100644
--- a/lib/fog/storm_on_demand/models/storage/volume.rb
+++ b/lib/fog/storm_on_demand/models/storage/volume.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Storage
class StormOnDemand
-
class Volume < Fog::Model
identity :uniq_id
attribute :attachedTo
@@ -46,9 +45,7 @@ module Fog
requires :identity
service.update_volume({:uniq_id => identity}.merge!(options))
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/storage/volumes.rb b/lib/fog/storm_on_demand/models/storage/volumes.rb
index 8eab04c..dce8e67 100644
--- a/lib/fog/storm_on_demand/models/storage/volumes.rb
+++ b/lib/fog/storm_on_demand/models/storage/volumes.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/storage/volume'
module Fog
module Storage
class StormOnDemand
-
class Volumes < Fog::Collection
model Fog::Storage::StormOnDemand::Volume
@@ -22,9 +21,7 @@ module Fog
vols = service.list_volumes(options).body['items']
load(vols)
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/support/alert.rb b/lib/fog/storm_on_demand/models/support/alert.rb
index 978a81b..f9a2543 100644
--- a/lib/fog/storm_on_demand/models/support/alert.rb
+++ b/lib/fog/storm_on_demand/models/support/alert.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Support
class StormOnDemand
-
class Alert < Fog::Model
attribute :message
attribute :subject
@@ -11,9 +10,7 @@ module Fog
def initialize(attributes={})
super
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/support/alerts.rb b/lib/fog/storm_on_demand/models/support/alerts.rb
index 768346a..34b0f1c 100644
--- a/lib/fog/storm_on_demand/models/support/alerts.rb
+++ b/lib/fog/storm_on_demand/models/support/alerts.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/support/alert'
module Fog
module Support
class StormOnDemand
-
class Alerts < Fog::Collection
model Fog::Support::StormOnDemand::Alert
@@ -12,9 +11,7 @@ module Fog
alert = service.get_active_alert.body['active_alert']
new(alert)
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/support/ticket.rb b/lib/fog/storm_on_demand/models/support/ticket.rb
index 2f36378..cb2afbb 100644
--- a/lib/fog/storm_on_demand/models/support/ticket.rb
+++ b/lib/fog/storm_on_demand/models/support/ticket.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Support
class StormOnDemand
-
class Ticket < Fog::Model
identity :id
attribute :accnt
@@ -65,10 +64,7 @@ module Fog
:secid => secid}.merge!(options)).body
res['reply'].to_i == 1 ? true : false
end
-
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/support/tickets.rb b/lib/fog/storm_on_demand/models/support/tickets.rb
index 2df5ac9..6abd7ed 100644
--- a/lib/fog/storm_on_demand/models/support/tickets.rb
+++ b/lib/fog/storm_on_demand/models/support/tickets.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/models/support/ticket'
module Fog
module Support
class StormOnDemand
-
class Tickets < Fog::Collection
model Fog::Support::StormOnDemand::Ticket
@@ -25,9 +24,7 @@ module Fog
def types
service.list_ticket_types.body['types']
end
-
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/vpn/vpn.rb b/lib/fog/storm_on_demand/models/vpn/vpn.rb
index 617fe75..6799fad 100644
--- a/lib/fog/storm_on_demand/models/vpn/vpn.rb
+++ b/lib/fog/storm_on_demand/models/vpn/vpn.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module VPN
class StormOnDemand
-
class Vpn < Fog::Model
identity :uniq_id
attribute :active
@@ -23,7 +22,6 @@ module Fog
requires :identity
service.update_vpn({:uniq_id => identity}.merge!(options))
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/models/vpn/vpns.rb b/lib/fog/storm_on_demand/models/vpn/vpns.rb
index 5ef45d2..3c47548 100644
--- a/lib/fog/storm_on_demand/models/vpn/vpns.rb
+++ b/lib/fog/storm_on_demand/models/vpn/vpns.rb
@@ -20,7 +20,6 @@ module Fog
def all_users(options={})
service.list_vpn_users(options).body['items']
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/monitoring.rb b/lib/fog/storm_on_demand/monitoring.rb
index 13de2da..83edf85 100644
--- a/lib/fog/storm_on_demand/monitoring.rb
+++ b/lib/fog/storm_on_demand/monitoring.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/shared'
module Fog
module Monitoring
class StormOnDemand < Fog::Service
-
requires :storm_on_demand_username, :storm_on_demand_password
recognizes :storm_on_demand_auth_url
@@ -26,9 +25,7 @@ module Fog
request :get_service_status
request :update_service
-
class Mock
-
def self.data
@data ||= Hash.new
end
@@ -54,13 +51,10 @@ module Fog
def reset_data
self.class.data.delete(@storm_on_demand_username)
end
-
end
class Real
-
include Fog::StormOnDemand::RealShared
-
end
end
end
diff --git a/lib/fog/storm_on_demand/network.rb b/lib/fog/storm_on_demand/network.rb
index 547f116..93fb0af 100644
--- a/lib/fog/storm_on_demand/network.rb
+++ b/lib/fog/storm_on_demand/network.rb
@@ -4,7 +4,6 @@ require 'fog/storm_on_demand/shared'
module Fog
module Network
class StormOnDemand < Fog::Service
-
requires :storm_on_demand_username, :storm_on_demand_password
recognizes :storm_on_demand_auth_url
@@ -73,7 +72,6 @@ module Fog
request :set_default_zone
class Mock
-
def self.data
@data ||= Hash.new
end
@@ -99,13 +97,10 @@ module Fog
def reset_data
self.class.data.delete(@storm_on_demand_username)
end
-
end
class Real
-
include Fog::StormOnDemand::RealShared
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/account/create_token.rb b/lib/fog/storm_on_demand/requests/account/create_token.rb
index 8055f62..9730110 100644
--- a/lib/fog/storm_on_demand/requests/account/create_token.rb
+++ b/lib/fog/storm_on_demand/requests/account/create_token.rb
@@ -2,14 +2,12 @@ module Fog
module Account
class StormOnDemand
class Real
-
def create_token(options={})
request(
:path => '/Account/Auth/token',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/account/expire_token.rb b/lib/fog/storm_on_demand/requests/account/expire_token.rb
index 24a8fb4..9b893fd 100644
--- a/lib/fog/storm_on_demand/requests/account/expire_token.rb
+++ b/lib/fog/storm_on_demand/requests/account/expire_token.rb
@@ -2,14 +2,12 @@ module Fog
module Account
class StormOnDemand
class Real
-
def expire_token(options={})
request(
:path => '/Account/Auth/expireToken',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/billing/get_invoice.rb b/lib/fog/storm_on_demand/requests/billing/get_invoice.rb
index 952bcf1..e65f0b7 100644
--- a/lib/fog/storm_on_demand/requests/billing/get_invoice.rb
+++ b/lib/fog/storm_on_demand/requests/billing/get_invoice.rb
@@ -2,14 +2,12 @@ module Fog
module Billing
class StormOnDemand
class Real
-
def get_invoice(options={})
request(
:path => '/Billing/Invoice/details',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/billing/list_invoices.rb b/lib/fog/storm_on_demand/requests/billing/list_invoices.rb
index ae2b54f..3ab498d 100644
--- a/lib/fog/storm_on_demand/requests/billing/list_invoices.rb
+++ b/lib/fog/storm_on_demand/requests/billing/list_invoices.rb
@@ -2,14 +2,12 @@ module Fog
module Billing
class StormOnDemand
class Real
-
def list_invoices(options={})
request(
:path => '/Billing/Invoice/list',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/billing/make_payment.rb b/lib/fog/storm_on_demand/requests/billing/make_payment.rb
index 4cd59a3..c7d43e3 100644
--- a/lib/fog/storm_on_demand/requests/billing/make_payment.rb
+++ b/lib/fog/storm_on_demand/requests/billing/make_payment.rb
@@ -2,14 +2,12 @@ module Fog
module Billing
class StormOnDemand
class Real
-
def make_payment(options={})
request(
:path => '/Billing/Payment/make',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/billing/next_invoice.rb b/lib/fog/storm_on_demand/requests/billing/next_invoice.rb
index f126e03..96f348e 100644
--- a/lib/fog/storm_on_demand/requests/billing/next_invoice.rb
+++ b/lib/fog/storm_on_demand/requests/billing/next_invoice.rb
@@ -2,14 +2,12 @@ module Fog
module Billing
class StormOnDemand
class Real
-
def next_invoice(options={})
request(
:path => '/Billing/Invoice/next',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/clone_server.rb b/lib/fog/storm_on_demand/requests/compute/clone_server.rb
index 9f9ed9e..a2e7da6 100644
--- a/lib/fog/storm_on_demand/requests/compute/clone_server.rb
+++ b/lib/fog/storm_on_demand/requests/compute/clone_server.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def clone_server(options = {})
request(
:path => "/Storm/Server/clone",
:body => Fog::JSON.encode({:params => options})
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/create_image.rb b/lib/fog/storm_on_demand/requests/compute/create_image.rb
index 2fac34e..c05740c 100644
--- a/lib/fog/storm_on_demand/requests/compute/create_image.rb
+++ b/lib/fog/storm_on_demand/requests/compute/create_image.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def create_image(options={})
request(
:path => '/Storm/Image/create',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/create_server.rb b/lib/fog/storm_on_demand/requests/compute/create_server.rb
index aee53ec..921881e 100644
--- a/lib/fog/storm_on_demand/requests/compute/create_server.rb
+++ b/lib/fog/storm_on_demand/requests/compute/create_server.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def create_server(options = {})
request(
:path => "/Storm/Server/create",
:body => Fog::JSON.encode({:params => options})
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/current_notifications.rb b/lib/fog/storm_on_demand/requests/compute/current_notifications.rb
index f7a6a9d..c34cf0b 100644
--- a/lib/fog/storm_on_demand/requests/compute/current_notifications.rb
+++ b/lib/fog/storm_on_demand/requests/compute/current_notifications.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def current_notifications(options={})
request(
:path => '/Notifications/current',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/delete_image.rb b/lib/fog/storm_on_demand/requests/compute/delete_image.rb
index f1493ef..5265a53 100644
--- a/lib/fog/storm_on_demand/requests/compute/delete_image.rb
+++ b/lib/fog/storm_on_demand/requests/compute/delete_image.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def delete_image(options={})
request(
:path => '/Storm/Image/delete',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/delete_server.rb b/lib/fog/storm_on_demand/requests/compute/delete_server.rb
index a224370..d13da54 100644
--- a/lib/fog/storm_on_demand/requests/compute/delete_server.rb
+++ b/lib/fog/storm_on_demand/requests/compute/delete_server.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def delete_server(options = {})
request(
:path => "/Storm/Server/destroy",
:body => Fog::JSON.encode({:params => options})
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/get_config_details.rb b/lib/fog/storm_on_demand/requests/compute/get_config_details.rb
index e430f1d..bf24205 100644
--- a/lib/fog/storm_on_demand/requests/compute/get_config_details.rb
+++ b/lib/fog/storm_on_demand/requests/compute/get_config_details.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def get_config_details(options={})
request(
:path => '/Storm/Config/details',
:body => Fog::JSON.encode({ :params => options })
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/get_image_details.rb b/lib/fog/storm_on_demand/requests/compute/get_image_details.rb
index 793c663..6a5f37e 100644
--- a/lib/fog/storm_on_demand/requests/compute/get_image_details.rb
+++ b/lib/fog/storm_on_demand/requests/compute/get_image_details.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def get_image_details(options={})
request(
:path => '/Storm/Image/details',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/get_notification.rb b/lib/fog/storm_on_demand/requests/compute/get_notification.rb
index 2723ce7..7112a61 100644
--- a/lib/fog/storm_on_demand/requests/compute/get_notification.rb
+++ b/lib/fog/storm_on_demand/requests/compute/get_notification.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def get_notification(options={})
request(
:path => '/Notifications/details',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/get_product.rb b/lib/fog/storm_on_demand/requests/compute/get_product.rb
index 72f97bb..836188c 100644
--- a/lib/fog/storm_on_demand/requests/compute/get_product.rb
+++ b/lib/fog/storm_on_demand/requests/compute/get_product.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def get_product(options={})
request(
:path => '/Product/details',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/get_product_code.rb b/lib/fog/storm_on_demand/requests/compute/get_product_code.rb
index f07e6bd..954297b 100644
--- a/lib/fog/storm_on_demand/requests/compute/get_product_code.rb
+++ b/lib/fog/storm_on_demand/requests/compute/get_product_code.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def get_product_code(options={})
request(
:path => '/Product/getProductCodeFromPath',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/get_product_price.rb b/lib/fog/storm_on_demand/requests/compute/get_product_price.rb
index 5fab797..5709a8a 100644
--- a/lib/fog/storm_on_demand/requests/compute/get_product_price.rb
+++ b/lib/fog/storm_on_demand/requests/compute/get_product_price.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def get_product_price(options={})
request(
:path => '/Product/price',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/get_product_starting_price.rb b/lib/fog/storm_on_demand/requests/compute/get_product_starting_price.rb
index 2f6d3ef..cfdeacd 100644
--- a/lib/fog/storm_on_demand/requests/compute/get_product_starting_price.rb
+++ b/lib/fog/storm_on_demand/requests/compute/get_product_starting_price.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def get_product_starting_price(options={})
request(
:path => '/Product/startingPrice',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/get_server.rb b/lib/fog/storm_on_demand/requests/compute/get_server.rb
index 20e5322..28236ec 100644
--- a/lib/fog/storm_on_demand/requests/compute/get_server.rb
+++ b/lib/fog/storm_on_demand/requests/compute/get_server.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def get_server(options = {})
request(
:path => "/Storm/Server/details",
:body => Fog::JSON.encode({:params => options})
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/get_template_details.rb b/lib/fog/storm_on_demand/requests/compute/get_template_details.rb
index 6580a49..7fa1597 100644
--- a/lib/fog/storm_on_demand/requests/compute/get_template_details.rb
+++ b/lib/fog/storm_on_demand/requests/compute/get_template_details.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def get_template_details(options={})
request(
:path => '/Storm/Template/details',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/list_configs.rb b/lib/fog/storm_on_demand/requests/compute/list_configs.rb
index 3d6bfd1..9cf342a 100644
--- a/lib/fog/storm_on_demand/requests/compute/list_configs.rb
+++ b/lib/fog/storm_on_demand/requests/compute/list_configs.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def list_configs(options = {})
request(
:path => "/storm/config/list",
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/list_images.rb b/lib/fog/storm_on_demand/requests/compute/list_images.rb
index 1624347..c4dcff0 100644
--- a/lib/fog/storm_on_demand/requests/compute/list_images.rb
+++ b/lib/fog/storm_on_demand/requests/compute/list_images.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def list_images(options = {})
request(
:path => "/Storm/Image/list",
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/list_notifications.rb b/lib/fog/storm_on_demand/requests/compute/list_notifications.rb
index 1947052..8724c3b 100644
--- a/lib/fog/storm_on_demand/requests/compute/list_notifications.rb
+++ b/lib/fog/storm_on_demand/requests/compute/list_notifications.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def list_notifications(options={})
request(
:path => '/Notifications/all',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/list_products.rb b/lib/fog/storm_on_demand/requests/compute/list_products.rb
index 7e53e54..4a098a6 100644
--- a/lib/fog/storm_on_demand/requests/compute/list_products.rb
+++ b/lib/fog/storm_on_demand/requests/compute/list_products.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def list_products(options={})
request(
:path => '/Product/list',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/list_servers.rb b/lib/fog/storm_on_demand/requests/compute/list_servers.rb
index 5bd1172..ddd282e 100644
--- a/lib/fog/storm_on_demand/requests/compute/list_servers.rb
+++ b/lib/fog/storm_on_demand/requests/compute/list_servers.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def list_servers(options = {})
request(
:path => "/Storm/Server/list",
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/list_templates.rb b/lib/fog/storm_on_demand/requests/compute/list_templates.rb
index 0bd778c..6278ef0 100644
--- a/lib/fog/storm_on_demand/requests/compute/list_templates.rb
+++ b/lib/fog/storm_on_demand/requests/compute/list_templates.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def list_templates(options = {})
request(
:path => "/Storm/Template/list",
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/reboot_server.rb b/lib/fog/storm_on_demand/requests/compute/reboot_server.rb
index e74a61b..5eb71d8 100644
--- a/lib/fog/storm_on_demand/requests/compute/reboot_server.rb
+++ b/lib/fog/storm_on_demand/requests/compute/reboot_server.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def reboot_server(options = {})
request(
:path => "/Storm/Server/reboot",
:body => Fog::JSON.encode({:params => options})
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/resize_server.rb b/lib/fog/storm_on_demand/requests/compute/resize_server.rb
index fe834c4..1aa7e34 100644
--- a/lib/fog/storm_on_demand/requests/compute/resize_server.rb
+++ b/lib/fog/storm_on_demand/requests/compute/resize_server.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def resize_server(options = {})
request(
:path => "/Storm/Server/resize",
:body => Fog::JSON.encode({:params => options})
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/resolve_notification.rb b/lib/fog/storm_on_demand/requests/compute/resolve_notification.rb
index 881b522..1247920 100644
--- a/lib/fog/storm_on_demand/requests/compute/resolve_notification.rb
+++ b/lib/fog/storm_on_demand/requests/compute/resolve_notification.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def resolve_notification(options={})
request(
:path => '/Notifications/resolve',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/restore_image.rb b/lib/fog/storm_on_demand/requests/compute/restore_image.rb
index 24fe53a..b9f793d 100644
--- a/lib/fog/storm_on_demand/requests/compute/restore_image.rb
+++ b/lib/fog/storm_on_demand/requests/compute/restore_image.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def restore_image(options={})
request(
:path => '/Storm/Image/restore',
:body => Fog::JSON.encode(params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/restore_template.rb b/lib/fog/storm_on_demand/requests/compute/restore_template.rb
index 38a2016..445cc9e 100644
--- a/lib/fog/storm_on_demand/requests/compute/restore_template.rb
+++ b/lib/fog/storm_on_demand/requests/compute/restore_template.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def restore_template(options={})
request(
:path => '/Storm/Template/restore',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/server_history.rb b/lib/fog/storm_on_demand/requests/compute/server_history.rb
index 79f8f39..5967abf 100644
--- a/lib/fog/storm_on_demand/requests/compute/server_history.rb
+++ b/lib/fog/storm_on_demand/requests/compute/server_history.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def server_history(options={})
request(
:path => '/Storm/Server/history',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/server_status.rb b/lib/fog/storm_on_demand/requests/compute/server_status.rb
index 2c8db69..6c732b7 100644
--- a/lib/fog/storm_on_demand/requests/compute/server_status.rb
+++ b/lib/fog/storm_on_demand/requests/compute/server_status.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def server_status(options={})
request(
:path => '/Storm/Server/status',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/shutdown_server.rb b/lib/fog/storm_on_demand/requests/compute/shutdown_server.rb
index ae2d675..9cab776 100644
--- a/lib/fog/storm_on_demand/requests/compute/shutdown_server.rb
+++ b/lib/fog/storm_on_demand/requests/compute/shutdown_server.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def shutdown_server(options={})
request(
:path => '/Storm/Server/shutdown',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/start_server.rb b/lib/fog/storm_on_demand/requests/compute/start_server.rb
index 2c61475..bd87021 100644
--- a/lib/fog/storm_on_demand/requests/compute/start_server.rb
+++ b/lib/fog/storm_on_demand/requests/compute/start_server.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def start_server(options={})
request(
:path => '/Storm/Server/start',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/update_image.rb b/lib/fog/storm_on_demand/requests/compute/update_image.rb
index b8c3aba..f837bfb 100644
--- a/lib/fog/storm_on_demand/requests/compute/update_image.rb
+++ b/lib/fog/storm_on_demand/requests/compute/update_image.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def update_image(options={})
request(
:path => '/Storm/Image/update',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/compute/update_server.rb b/lib/fog/storm_on_demand/requests/compute/update_server.rb
index cc9dc7d..74f2d9e 100644
--- a/lib/fog/storm_on_demand/requests/compute/update_server.rb
+++ b/lib/fog/storm_on_demand/requests/compute/update_server.rb
@@ -2,14 +2,12 @@ module Fog
module Compute
class StormOnDemand
class Real
-
def update_server(options={})
request(
:path => '/Storm/Server/update',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/check_zone_delegation.rb b/lib/fog/storm_on_demand/requests/dns/check_zone_delegation.rb
index a300df2..f6c21f9 100644
--- a/lib/fog/storm_on_demand/requests/dns/check_zone_delegation.rb
+++ b/lib/fog/storm_on_demand/requests/dns/check_zone_delegation.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def check_zone_delegation(options={})
request(
:path => '/Network/DNS/Zone/delegation',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/create_record.rb b/lib/fog/storm_on_demand/requests/dns/create_record.rb
index fd36402..2d33fc3 100644
--- a/lib/fog/storm_on_demand/requests/dns/create_record.rb
+++ b/lib/fog/storm_on_demand/requests/dns/create_record.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def create_record(options={})
request(
:path => '/Network/DNS/Record/create',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/create_record_region.rb b/lib/fog/storm_on_demand/requests/dns/create_record_region.rb
index 1acac73..22b208c 100644
--- a/lib/fog/storm_on_demand/requests/dns/create_record_region.rb
+++ b/lib/fog/storm_on_demand/requests/dns/create_record_region.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def create_record_region(options={})
request(
:path => '/Network/DNS/Record/Region/create',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/create_zone.rb b/lib/fog/storm_on_demand/requests/dns/create_zone.rb
index a1dfc0a..115bd6e 100644
--- a/lib/fog/storm_on_demand/requests/dns/create_zone.rb
+++ b/lib/fog/storm_on_demand/requests/dns/create_zone.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def create_zone(options={})
request(
:path => '/Network/DNS/Zone/create',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/delete_record.rb b/lib/fog/storm_on_demand/requests/dns/delete_record.rb
index 0f1eb34..34c5c8b 100644
--- a/lib/fog/storm_on_demand/requests/dns/delete_record.rb
+++ b/lib/fog/storm_on_demand/requests/dns/delete_record.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def delete_record(options={})
request(
:path => '/Network/DNS/Record/delete',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/delete_record_region.rb b/lib/fog/storm_on_demand/requests/dns/delete_record_region.rb
index 12e2ba9..51bb9f5 100644
--- a/lib/fog/storm_on_demand/requests/dns/delete_record_region.rb
+++ b/lib/fog/storm_on_demand/requests/dns/delete_record_region.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def delete_record_region(options={})
request(
:path => '/Network/DNS/Record/Region/delete',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/delete_reverse.rb b/lib/fog/storm_on_demand/requests/dns/delete_reverse.rb
index 72e9702..30e0b0f 100644
--- a/lib/fog/storm_on_demand/requests/dns/delete_reverse.rb
+++ b/lib/fog/storm_on_demand/requests/dns/delete_reverse.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def delete_reverse(options={})
request(
:path => '/Network/DNS/Reverse/delete',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/delete_zone.rb b/lib/fog/storm_on_demand/requests/dns/delete_zone.rb
index 0c5ee34..38bfd9f 100644
--- a/lib/fog/storm_on_demand/requests/dns/delete_zone.rb
+++ b/lib/fog/storm_on_demand/requests/dns/delete_zone.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def delete_zone(options={})
request(
:path => '/Network/DNS/Zone/delete',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/get_record.rb b/lib/fog/storm_on_demand/requests/dns/get_record.rb
index 9a95dfd..9b408cc 100644
--- a/lib/fog/storm_on_demand/requests/dns/get_record.rb
+++ b/lib/fog/storm_on_demand/requests/dns/get_record.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def get_record(options={})
request(
:path => '/Network/DNS/Record/details',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/get_zone.rb b/lib/fog/storm_on_demand/requests/dns/get_zone.rb
index 01498c2..e81acae 100644
--- a/lib/fog/storm_on_demand/requests/dns/get_zone.rb
+++ b/lib/fog/storm_on_demand/requests/dns/get_zone.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def get_zone(options={})
request(
:path => '/Network/DNS/Zone/details',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/list_domains.rb b/lib/fog/storm_on_demand/requests/dns/list_domains.rb
index 5d13c5e..a01848d 100644
--- a/lib/fog/storm_on_demand/requests/dns/list_domains.rb
+++ b/lib/fog/storm_on_demand/requests/dns/list_domains.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def list_domains(options={})
request(
:path => '/Network/DNS/Domain/list',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/list_records.rb b/lib/fog/storm_on_demand/requests/dns/list_records.rb
index 10b9142..17e8a3b 100644
--- a/lib/fog/storm_on_demand/requests/dns/list_records.rb
+++ b/lib/fog/storm_on_demand/requests/dns/list_records.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def list_records(options={})
request(
:path => '/Network/DNS/Record/list',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/list_zones.rb b/lib/fog/storm_on_demand/requests/dns/list_zones.rb
index 79c6bb5..fa85032 100644
--- a/lib/fog/storm_on_demand/requests/dns/list_zones.rb
+++ b/lib/fog/storm_on_demand/requests/dns/list_zones.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def list_zones(options={})
request(
:path => '/Network/DNS/Zone/list',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/renew_domain.rb b/lib/fog/storm_on_demand/requests/dns/renew_domain.rb
index 2a5655b..463c108 100644
--- a/lib/fog/storm_on_demand/requests/dns/renew_domain.rb
+++ b/lib/fog/storm_on_demand/requests/dns/renew_domain.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def renew_domain(options={})
request(
:path => '/Network/DNS/Domain/renew',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/update_record.rb b/lib/fog/storm_on_demand/requests/dns/update_record.rb
index 05de854..faa00cc 100644
--- a/lib/fog/storm_on_demand/requests/dns/update_record.rb
+++ b/lib/fog/storm_on_demand/requests/dns/update_record.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def update_record(options={})
request(
:path => '/Network/DNS/Record/update',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/update_record_region.rb b/lib/fog/storm_on_demand/requests/dns/update_record_region.rb
index 9a4ee74..1e9a30b 100644
--- a/lib/fog/storm_on_demand/requests/dns/update_record_region.rb
+++ b/lib/fog/storm_on_demand/requests/dns/update_record_region.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def update_record_region(options={})
request(
:path => '/Network/DNS/Record/Region/update',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/update_reverse.rb b/lib/fog/storm_on_demand/requests/dns/update_reverse.rb
index 2e5dae3..d0d5d85 100644
--- a/lib/fog/storm_on_demand/requests/dns/update_reverse.rb
+++ b/lib/fog/storm_on_demand/requests/dns/update_reverse.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def update_reverse(options={})
request(
:path => '/Network/DNS/Reverse/update',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/dns/update_zone.rb b/lib/fog/storm_on_demand/requests/dns/update_zone.rb
index 338333c..89c3499 100644
--- a/lib/fog/storm_on_demand/requests/dns/update_zone.rb
+++ b/lib/fog/storm_on_demand/requests/dns/update_zone.rb
@@ -2,14 +2,12 @@ module Fog
module DNS
class StormOnDemand
class Real
-
def update_zone(options={})
request(
:path => '/Network/DNS/Zone/update',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/monitoring/get_bandwidth_graph.rb b/lib/fog/storm_on_demand/requests/monitoring/get_bandwidth_graph.rb
index 0f4df54..f9c3c5a 100644
--- a/lib/fog/storm_on_demand/requests/monitoring/get_bandwidth_graph.rb
+++ b/lib/fog/storm_on_demand/requests/monitoring/get_bandwidth_graph.rb
@@ -2,14 +2,12 @@ module Fog
module Monitoring
class StormOnDemand
class Real
-
def get_bandwidth_graph(options={})
request(
:path => '/Monitoring/Bandwidth/graph',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/monitoring/get_bandwidth_stats.rb b/lib/fog/storm_on_demand/requests/monitoring/get_bandwidth_stats.rb
index 49a1b8f..f455a7d 100644
--- a/lib/fog/storm_on_demand/requests/monitoring/get_bandwidth_stats.rb
+++ b/lib/fog/storm_on_demand/requests/monitoring/get_bandwidth_stats.rb
@@ -2,14 +2,12 @@ module Fog
module Monitoring
class StormOnDemand
class Real
-
def get_bandwidth_stats(options={})
request(
:path => '/Monitoring/Bandwidth/stats',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/monitoring/get_load_graph.rb b/lib/fog/storm_on_demand/requests/monitoring/get_load_graph.rb
index 489b9a2..8dbd39e 100644
--- a/lib/fog/storm_on_demand/requests/monitoring/get_load_graph.rb
+++ b/lib/fog/storm_on_demand/requests/monitoring/get_load_graph.rb
@@ -2,14 +2,12 @@ module Fog
module Monitoring
class StormOnDemand
class Real
-
def get_load_graph(options={})
request(
:path => '/Monitoring/Load/graph',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/monitoring/get_load_stats.rb b/lib/fog/storm_on_demand/requests/monitoring/get_load_stats.rb
index c59dfb4..00b1378 100644
--- a/lib/fog/storm_on_demand/requests/monitoring/get_load_stats.rb
+++ b/lib/fog/storm_on_demand/requests/monitoring/get_load_stats.rb
@@ -2,14 +2,12 @@ module Fog
module Monitoring
class StormOnDemand
class Real
-
def get_load_stats(options={})
request(
:path => '/Monitoring/Load/stats',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/monitoring/get_service.rb b/lib/fog/storm_on_demand/requests/monitoring/get_service.rb
index d6d00b8..6166428 100644
--- a/lib/fog/storm_on_demand/requests/monitoring/get_service.rb
+++ b/lib/fog/storm_on_demand/requests/monitoring/get_service.rb
@@ -2,14 +2,12 @@ module Fog
module Monitoring
class StormOnDemand
class Real
-
def get_service(options={})
request(
:path => '/Monitoring/Services/get',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/monitoring/get_service_status.rb b/lib/fog/storm_on_demand/requests/monitoring/get_service_status.rb
index f9c76e3..4000f8e 100644
--- a/lib/fog/storm_on_demand/requests/monitoring/get_service_status.rb
+++ b/lib/fog/storm_on_demand/requests/monitoring/get_service_status.rb
@@ -2,14 +2,12 @@ module Fog
module Monitoring
class StormOnDemand
class Real
-
def get_service_status(options={})
request(
:path => '/Monitoring/Services/status',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/monitoring/monitoring_ips.rb b/lib/fog/storm_on_demand/requests/monitoring/monitoring_ips.rb
index 2484af6..4522bf0 100644
--- a/lib/fog/storm_on_demand/requests/monitoring/monitoring_ips.rb
+++ b/lib/fog/storm_on_demand/requests/monitoring/monitoring_ips.rb
@@ -2,14 +2,12 @@ module Fog
module Monitoring
class StormOnDemand
class Real
-
def monitoring_ips(options={})
request(
:path => '/Monitoring/Services/monitoringIps',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/monitoring/update_service.rb b/lib/fog/storm_on_demand/requests/monitoring/update_service.rb
index 4f0f132..e2b7d3d 100644
--- a/lib/fog/storm_on_demand/requests/monitoring/update_service.rb
+++ b/lib/fog/storm_on_demand/requests/monitoring/update_service.rb
@@ -2,14 +2,12 @@ module Fog
module Monitoring
class StormOnDemand
class Real
-
def update_service(options={})
request(
:path => '/Monitoring/Services/update',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/add_balancer_node.rb b/lib/fog/storm_on_demand/requests/network/add_balancer_node.rb
index ba687c5..2125464 100644
--- a/lib/fog/storm_on_demand/requests/network/add_balancer_node.rb
+++ b/lib/fog/storm_on_demand/requests/network/add_balancer_node.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def add_balancer_node(options = {})
request(
:path => "/Network/LoadBalancer/addNode",
:body => Fog::JSON.encode({:params => options})
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/add_balancer_service.rb b/lib/fog/storm_on_demand/requests/network/add_balancer_service.rb
index 594d9dc..9f090af 100644
--- a/lib/fog/storm_on_demand/requests/network/add_balancer_service.rb
+++ b/lib/fog/storm_on_demand/requests/network/add_balancer_service.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def add_balancer_service(options={})
request(
:path => '/Network/LoadBalancer/addService',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/add_ip_to_server.rb b/lib/fog/storm_on_demand/requests/network/add_ip_to_server.rb
index bdf958a..b9a6696 100644
--- a/lib/fog/storm_on_demand/requests/network/add_ip_to_server.rb
+++ b/lib/fog/storm_on_demand/requests/network/add_ip_to_server.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def add_ip_to_server(options={})
request(
:path => '/Network/IP/add',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/attach_server_to_private_ip.rb b/lib/fog/storm_on_demand/requests/network/attach_server_to_private_ip.rb
index 461ec48..3547fe1 100644
--- a/lib/fog/storm_on_demand/requests/network/attach_server_to_private_ip.rb
+++ b/lib/fog/storm_on_demand/requests/network/attach_server_to_private_ip.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def attach_server_to_private_ip(options={})
request(
:path => '/Network/Private/attach',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/check_balancer_available.rb b/lib/fog/storm_on_demand/requests/network/check_balancer_available.rb
index 7f54a3f..df158a8 100644
--- a/lib/fog/storm_on_demand/requests/network/check_balancer_available.rb
+++ b/lib/fog/storm_on_demand/requests/network/check_balancer_available.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def check_balancer_available(options={})
request(
:path => '/Network/LoadBalancer/available',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/check_server_attached.rb b/lib/fog/storm_on_demand/requests/network/check_server_attached.rb
index 8171a9b..f628de1 100644
--- a/lib/fog/storm_on_demand/requests/network/check_server_attached.rb
+++ b/lib/fog/storm_on_demand/requests/network/check_server_attached.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def check_server_attached(options={})
request(
:path => '/Network/Private/isAttached',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/create_balancer.rb b/lib/fog/storm_on_demand/requests/network/create_balancer.rb
index 340e1b8..77d1efe 100644
--- a/lib/fog/storm_on_demand/requests/network/create_balancer.rb
+++ b/lib/fog/storm_on_demand/requests/network/create_balancer.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def create_balancer(options={})
request(
:path => '/Network/LoadBalancer/create',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/create_pool.rb b/lib/fog/storm_on_demand/requests/network/create_pool.rb
index 35e87b0..ab82c45 100644
--- a/lib/fog/storm_on_demand/requests/network/create_pool.rb
+++ b/lib/fog/storm_on_demand/requests/network/create_pool.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def create_pool(options={})
request(
:path => '/Network/Pool/create',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/create_ruleset.rb b/lib/fog/storm_on_demand/requests/network/create_ruleset.rb
index ec02bde..1f4b3dd 100644
--- a/lib/fog/storm_on_demand/requests/network/create_ruleset.rb
+++ b/lib/fog/storm_on_demand/requests/network/create_ruleset.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def create_ruleset(options={})
request(
:path => '/Network/Firewall/Ruleset/create',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/delete_balancer.rb b/lib/fog/storm_on_demand/requests/network/delete_balancer.rb
index 9216a00..39a8b3c 100644
--- a/lib/fog/storm_on_demand/requests/network/delete_balancer.rb
+++ b/lib/fog/storm_on_demand/requests/network/delete_balancer.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def delete_balancer(options={})
request(
:path => '/Network/LoadBalancer/delete',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/delete_pool.rb b/lib/fog/storm_on_demand/requests/network/delete_pool.rb
index dece37a..348e415 100644
--- a/lib/fog/storm_on_demand/requests/network/delete_pool.rb
+++ b/lib/fog/storm_on_demand/requests/network/delete_pool.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def delete_pool(options={})
request(
:path => '/Network/Pool/delete',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/detach_server_from_private_ip.rb b/lib/fog/storm_on_demand/requests/network/detach_server_from_private_ip.rb
index fd07281..aa76cd4 100644
--- a/lib/fog/storm_on_demand/requests/network/detach_server_from_private_ip.rb
+++ b/lib/fog/storm_on_demand/requests/network/detach_server_from_private_ip.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def detach_server_from_private_ip(options={})
request(
:path => '/Network/Private/detach',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/get_assignments.rb b/lib/fog/storm_on_demand/requests/network/get_assignments.rb
index a9381a6..de01824 100644
--- a/lib/fog/storm_on_demand/requests/network/get_assignments.rb
+++ b/lib/fog/storm_on_demand/requests/network/get_assignments.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def get_assignments(options={})
request(
:path => '/Network/Pool/list',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/get_balancer_details.rb b/lib/fog/storm_on_demand/requests/network/get_balancer_details.rb
index 6cee54a..649afe4 100644
--- a/lib/fog/storm_on_demand/requests/network/get_balancer_details.rb
+++ b/lib/fog/storm_on_demand/requests/network/get_balancer_details.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def get_balancer_details(options={})
request(
:path => '/Network/LoadBalancer/details',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/get_balancer_possible_nodes.rb b/lib/fog/storm_on_demand/requests/network/get_balancer_possible_nodes.rb
index f42dd67..087bf19 100644
--- a/lib/fog/storm_on_demand/requests/network/get_balancer_possible_nodes.rb
+++ b/lib/fog/storm_on_demand/requests/network/get_balancer_possible_nodes.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def get_balancer_possible_nodes(options={})
request(
:path => '/Network/LoadBalancer/possibleNodes',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/get_balancer_strategies.rb b/lib/fog/storm_on_demand/requests/network/get_balancer_strategies.rb
index ee03f03..3a8b068 100644
--- a/lib/fog/storm_on_demand/requests/network/get_balancer_strategies.rb
+++ b/lib/fog/storm_on_demand/requests/network/get_balancer_strategies.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def get_balancer_strategies(options={})
request(
:path => '/Network/LoadBalancer/strategies',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/get_firewall.rb b/lib/fog/storm_on_demand/requests/network/get_firewall.rb
index 0f3a001..01bb50f 100644
--- a/lib/fog/storm_on_demand/requests/network/get_firewall.rb
+++ b/lib/fog/storm_on_demand/requests/network/get_firewall.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def get_firewall(options={})
request(
:path => '/Network/Firewall/details',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/get_firewall_basic_options.rb b/lib/fog/storm_on_demand/requests/network/get_firewall_basic_options.rb
index e5376cb..dd10545 100644
--- a/lib/fog/storm_on_demand/requests/network/get_firewall_basic_options.rb
+++ b/lib/fog/storm_on_demand/requests/network/get_firewall_basic_options.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def get_firewall_basic_options(options={})
request(
:path => '/Network/Firewall/getBasicOptions',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/get_firewall_rules.rb b/lib/fog/storm_on_demand/requests/network/get_firewall_rules.rb
index 6913b99..7d2db41 100644
--- a/lib/fog/storm_on_demand/requests/network/get_firewall_rules.rb
+++ b/lib/fog/storm_on_demand/requests/network/get_firewall_rules.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def get_firewall_rules(options={})
request(
:path => '/Network/Firewall/rules',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/get_ip_details.rb b/lib/fog/storm_on_demand/requests/network/get_ip_details.rb
index baf0e5f..830d55d 100644
--- a/lib/fog/storm_on_demand/requests/network/get_ip_details.rb
+++ b/lib/fog/storm_on_demand/requests/network/get_ip_details.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def get_ip_details(options={})
request(
:path => '/Network/IP/list',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/get_pool.rb b/lib/fog/storm_on_demand/requests/network/get_pool.rb
index 451e7e2..5fed757 100644
--- a/lib/fog/storm_on_demand/requests/network/get_pool.rb
+++ b/lib/fog/storm_on_demand/requests/network/get_pool.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def get_pool(options={})
request(
:path => '/Network/Pool/details',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/get_private_ip.rb b/lib/fog/storm_on_demand/requests/network/get_private_ip.rb
index 3477373..b343ace 100644
--- a/lib/fog/storm_on_demand/requests/network/get_private_ip.rb
+++ b/lib/fog/storm_on_demand/requests/network/get_private_ip.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def get_private_ip(options={})
request(
:path => '/Network/Private/getIP',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/get_ruleset.rb b/lib/fog/storm_on_demand/requests/network/get_ruleset.rb
index b77552d..848f621 100644
--- a/lib/fog/storm_on_demand/requests/network/get_ruleset.rb
+++ b/lib/fog/storm_on_demand/requests/network/get_ruleset.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def get_ruleset(options={})
request(
:path => '/Network/Firewall/Ruleset/details',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/get_zone.rb b/lib/fog/storm_on_demand/requests/network/get_zone.rb
index c51dd22..4bfb1d6 100644
--- a/lib/fog/storm_on_demand/requests/network/get_zone.rb
+++ b/lib/fog/storm_on_demand/requests/network/get_zone.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def get_zone(options={})
request(
:path => '/Network/Zone/details',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/list_balancers.rb b/lib/fog/storm_on_demand/requests/network/list_balancers.rb
index 766490d..0a7fc5f 100644
--- a/lib/fog/storm_on_demand/requests/network/list_balancers.rb
+++ b/lib/fog/storm_on_demand/requests/network/list_balancers.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def list_balancers(options = {})
request(
:path => "/Network/LoadBalancer/list",
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/list_ip_public_accounts.rb b/lib/fog/storm_on_demand/requests/network/list_ip_public_accounts.rb
index 45481b3..23df519 100644
--- a/lib/fog/storm_on_demand/requests/network/list_ip_public_accounts.rb
+++ b/lib/fog/storm_on_demand/requests/network/list_ip_public_accounts.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def list_ip_public_accounts(options={})
request(
:path => '/Network/IP/listAccntPublic',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/list_network_ips.rb b/lib/fog/storm_on_demand/requests/network/list_network_ips.rb
index 7b77fdb..22d63e1 100644
--- a/lib/fog/storm_on_demand/requests/network/list_network_ips.rb
+++ b/lib/fog/storm_on_demand/requests/network/list_network_ips.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def list_network_ips(options={})
request(
:path => '/Network/IP/list',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/list_network_public_ips.rb b/lib/fog/storm_on_demand/requests/network/list_network_public_ips.rb
index f9c25b0..0e82f23 100644
--- a/lib/fog/storm_on_demand/requests/network/list_network_public_ips.rb
+++ b/lib/fog/storm_on_demand/requests/network/list_network_public_ips.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def list_network_public_ips(options={})
request(
:path => '/Network/IP/listPublic',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/list_private_ips.rb b/lib/fog/storm_on_demand/requests/network/list_private_ips.rb
index 3bcd5ed..cdabdbb 100644
--- a/lib/fog/storm_on_demand/requests/network/list_private_ips.rb
+++ b/lib/fog/storm_on_demand/requests/network/list_private_ips.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def list_private_ips(options = {})
request(
:path => "/Network/Private/get",
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/list_rulesets.rb b/lib/fog/storm_on_demand/requests/network/list_rulesets.rb
index 4a8e3f3..0c9cab4 100644
--- a/lib/fog/storm_on_demand/requests/network/list_rulesets.rb
+++ b/lib/fog/storm_on_demand/requests/network/list_rulesets.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def list_rulesets(options={})
request(
:path => '/Network/Firewall/Ruleset/list',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/list_zones.rb b/lib/fog/storm_on_demand/requests/network/list_zones.rb
index 0c2f011..5884e6c 100644
--- a/lib/fog/storm_on_demand/requests/network/list_zones.rb
+++ b/lib/fog/storm_on_demand/requests/network/list_zones.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def list_zones(options={})
request(
:path => '/Network/Zone/list',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/remove_balancer_node.rb b/lib/fog/storm_on_demand/requests/network/remove_balancer_node.rb
index 57efd31..e61f819 100644
--- a/lib/fog/storm_on_demand/requests/network/remove_balancer_node.rb
+++ b/lib/fog/storm_on_demand/requests/network/remove_balancer_node.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def remove_balancer_node(options = {})
request(
:path => "/Network/LoadBalancer/removeNode",
:body => Fog::JSON.encode({:params => options})
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/remove_balancer_service.rb b/lib/fog/storm_on_demand/requests/network/remove_balancer_service.rb
index 73cf1b5..6837d6c 100644
--- a/lib/fog/storm_on_demand/requests/network/remove_balancer_service.rb
+++ b/lib/fog/storm_on_demand/requests/network/remove_balancer_service.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def remove_balancer_service(options={})
request(
:path => '/Network/LoadBalancer/removeService',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/remove_ip_from_server.rb b/lib/fog/storm_on_demand/requests/network/remove_ip_from_server.rb
index 3fbc952..f5450b8 100644
--- a/lib/fog/storm_on_demand/requests/network/remove_ip_from_server.rb
+++ b/lib/fog/storm_on_demand/requests/network/remove_ip_from_server.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def remove_ip_from_server(options={})
request(
:path => '/Network/IP/remove',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/request_new_ips.rb b/lib/fog/storm_on_demand/requests/network/request_new_ips.rb
index e8d95f6..87b7611 100644
--- a/lib/fog/storm_on_demand/requests/network/request_new_ips.rb
+++ b/lib/fog/storm_on_demand/requests/network/request_new_ips.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def request_new_ips(options={})
request(
:path => '/Network/IP/request',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/set_default_zone.rb b/lib/fog/storm_on_demand/requests/network/set_default_zone.rb
index b9e1c29..8b1af02 100644
--- a/lib/fog/storm_on_demand/requests/network/set_default_zone.rb
+++ b/lib/fog/storm_on_demand/requests/network/set_default_zone.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def set_default_zone(options={})
request(
:path => '/Network/Zone/setDefault',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/update_balancer.rb b/lib/fog/storm_on_demand/requests/network/update_balancer.rb
index 1016142..7cb39a4 100644
--- a/lib/fog/storm_on_demand/requests/network/update_balancer.rb
+++ b/lib/fog/storm_on_demand/requests/network/update_balancer.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def update_balancer(options={})
request(
:path => '/Network/LoadBalancer/update',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/update_firewall.rb b/lib/fog/storm_on_demand/requests/network/update_firewall.rb
index 891cb40..62ea3a7 100644
--- a/lib/fog/storm_on_demand/requests/network/update_firewall.rb
+++ b/lib/fog/storm_on_demand/requests/network/update_firewall.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def update_firewalls(options={})
request(
:path => '/Network/Firewall/update',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/update_pool.rb b/lib/fog/storm_on_demand/requests/network/update_pool.rb
index 3089c52..bea152d 100644
--- a/lib/fog/storm_on_demand/requests/network/update_pool.rb
+++ b/lib/fog/storm_on_demand/requests/network/update_pool.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def update_pool(options={})
request(
:path => '/Network/Pool/update',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/network/update_ruleset.rb b/lib/fog/storm_on_demand/requests/network/update_ruleset.rb
index a0c22fa..dc1a624 100644
--- a/lib/fog/storm_on_demand/requests/network/update_ruleset.rb
+++ b/lib/fog/storm_on_demand/requests/network/update_ruleset.rb
@@ -2,14 +2,12 @@ module Fog
module Network
class StormOnDemand
class Real
-
def update_ruleset(options={})
request(
:path => '/Network/Firewall/Ruleset/update',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/storage/attach_volume_to_server.rb b/lib/fog/storm_on_demand/requests/storage/attach_volume_to_server.rb
index 8f4cbf8..d89fcae 100644
--- a/lib/fog/storm_on_demand/requests/storage/attach_volume_to_server.rb
+++ b/lib/fog/storm_on_demand/requests/storage/attach_volume_to_server.rb
@@ -2,14 +2,12 @@ module Fog
module Storage
class StormOnDemand
class Real
-
def attach_volume_to_server(options={})
request(
:path => '/Storage/Block/Volume/attach',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/storage/create_volume.rb b/lib/fog/storm_on_demand/requests/storage/create_volume.rb
index be9338d..16e730b 100644
--- a/lib/fog/storm_on_demand/requests/storage/create_volume.rb
+++ b/lib/fog/storm_on_demand/requests/storage/create_volume.rb
@@ -2,14 +2,12 @@ module Fog
module Storage
class StormOnDemand
class Real
-
def create_volume(options={})
request(
:path => '/Storage/Block/Volume/create',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/storage/delete_volume.rb b/lib/fog/storm_on_demand/requests/storage/delete_volume.rb
index a37c6e3..d86961d 100644
--- a/lib/fog/storm_on_demand/requests/storage/delete_volume.rb
+++ b/lib/fog/storm_on_demand/requests/storage/delete_volume.rb
@@ -2,14 +2,12 @@ module Fog
module Storage
class StormOnDemand
class Real
-
def delete_volume(options={})
request(
:path => '/Storage/Block/Volume/delete',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/storage/detach_volume_from_server.rb b/lib/fog/storm_on_demand/requests/storage/detach_volume_from_server.rb
index 6d6b9ad..41c0497 100644
--- a/lib/fog/storm_on_demand/requests/storage/detach_volume_from_server.rb
+++ b/lib/fog/storm_on_demand/requests/storage/detach_volume_from_server.rb
@@ -2,14 +2,12 @@ module Fog
module Storage
class StormOnDemand
class Real
-
def detach_volume_from_server(options={})
request(
:path => '/Storage/Block/Volume/detach',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/storage/get_volume.rb b/lib/fog/storm_on_demand/requests/storage/get_volume.rb
index e1c4f80..208cc54 100644
--- a/lib/fog/storm_on_demand/requests/storage/get_volume.rb
+++ b/lib/fog/storm_on_demand/requests/storage/get_volume.rb
@@ -2,14 +2,12 @@ module Fog
module Storage
class StormOnDemand
class Real
-
def get_volume(options={})
request(
:path => '/Storage/Block/Volume/details',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/storage/list_clusters.rb b/lib/fog/storm_on_demand/requests/storage/list_clusters.rb
index 385dddc..cdc0a18 100644
--- a/lib/fog/storm_on_demand/requests/storage/list_clusters.rb
+++ b/lib/fog/storm_on_demand/requests/storage/list_clusters.rb
@@ -2,14 +2,12 @@ module Fog
module Storage
class StormOnDemand
class Real
-
def list_clusters(options={})
request(
:path => '/Storage/Block/Cluster/list',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/storage/list_volumes.rb b/lib/fog/storm_on_demand/requests/storage/list_volumes.rb
index 427df66..a113dc2 100644
--- a/lib/fog/storm_on_demand/requests/storage/list_volumes.rb
+++ b/lib/fog/storm_on_demand/requests/storage/list_volumes.rb
@@ -2,14 +2,12 @@ module Fog
module Storage
class StormOnDemand
class Real
-
def list_volumes(options={})
request(
:path => '/Storage/Block/Volume/list',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/storage/resize_volume.rb b/lib/fog/storm_on_demand/requests/storage/resize_volume.rb
index 6d1152f..cad70fe 100644
--- a/lib/fog/storm_on_demand/requests/storage/resize_volume.rb
+++ b/lib/fog/storm_on_demand/requests/storage/resize_volume.rb
@@ -2,14 +2,12 @@ module Fog
module Storage
class StormOnDemand
class Real
-
def resize_volume(options={})
request(
:path => '/Storage/Block/Volume/resize',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/storage/update_volume.rb b/lib/fog/storm_on_demand/requests/storage/update_volume.rb
index f37f2dc..7a66400 100644
--- a/lib/fog/storm_on_demand/requests/storage/update_volume.rb
+++ b/lib/fog/storm_on_demand/requests/storage/update_volume.rb
@@ -2,14 +2,12 @@ module Fog
module Storage
class StormOnDemand
class Real
-
def update_volume(options={})
request(
:path => '/Storage/Block/Volume/update',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/support/add_feedback.rb b/lib/fog/storm_on_demand/requests/support/add_feedback.rb
index ac956da..aeccb4d 100644
--- a/lib/fog/storm_on_demand/requests/support/add_feedback.rb
+++ b/lib/fog/storm_on_demand/requests/support/add_feedback.rb
@@ -2,14 +2,12 @@ module Fog
module Support
class StormOnDemand
class Real
-
def add_feedback(options={})
request(
:path => '/Support/Ticket/addFeedback',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/support/add_transaction_feedback.rb b/lib/fog/storm_on_demand/requests/support/add_transaction_feedback.rb
index 6403cc7..4aaecb5 100644
--- a/lib/fog/storm_on_demand/requests/support/add_transaction_feedback.rb
+++ b/lib/fog/storm_on_demand/requests/support/add_transaction_feedback.rb
@@ -2,14 +2,12 @@ module Fog
module Support
class StormOnDemand
class Real
-
def add_transaction_feedback(options={})
request(
:path => '/Support/Ticket/addTransactionFeedback',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/support/authenticate.rb b/lib/fog/storm_on_demand/requests/support/authenticate.rb
index 36182e2..fe95295 100644
--- a/lib/fog/storm_on_demand/requests/support/authenticate.rb
+++ b/lib/fog/storm_on_demand/requests/support/authenticate.rb
@@ -2,14 +2,12 @@ module Fog
module Support
class StormOnDemand
class Real
-
def authenticate(options={})
request(
:path => '/Support/Ticket/authenticate',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/support/close_ticket.rb b/lib/fog/storm_on_demand/requests/support/close_ticket.rb
index 93e6231..fbf7df5 100644
--- a/lib/fog/storm_on_demand/requests/support/close_ticket.rb
+++ b/lib/fog/storm_on_demand/requests/support/close_ticket.rb
@@ -2,14 +2,12 @@ module Fog
module Support
class StormOnDemand
class Real
-
def close_ticket(options={})
request(
:path => '/Support/Ticket/close',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/support/create_ticket.rb b/lib/fog/storm_on_demand/requests/support/create_ticket.rb
index 5ec0097..0d2b947 100644
--- a/lib/fog/storm_on_demand/requests/support/create_ticket.rb
+++ b/lib/fog/storm_on_demand/requests/support/create_ticket.rb
@@ -2,14 +2,12 @@ module Fog
module Support
class StormOnDemand
class Real
-
def create_ticket(options={})
request(
:path => '/Support/Ticket/create',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/support/get_active_alert.rb b/lib/fog/storm_on_demand/requests/support/get_active_alert.rb
index 337d0a9..14436b3 100644
--- a/lib/fog/storm_on_demand/requests/support/get_active_alert.rb
+++ b/lib/fog/storm_on_demand/requests/support/get_active_alert.rb
@@ -2,14 +2,12 @@ module Fog
module Support
class StormOnDemand
class Real
-
def get_active_alert(options={})
request(
:path => '/Support/Alert/getActive',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/support/get_ticket_details.rb b/lib/fog/storm_on_demand/requests/support/get_ticket_details.rb
index c1174bd..3b9030c 100644
--- a/lib/fog/storm_on_demand/requests/support/get_ticket_details.rb
+++ b/lib/fog/storm_on_demand/requests/support/get_ticket_details.rb
@@ -2,14 +2,12 @@ module Fog
module Support
class StormOnDemand
class Real
-
def get_ticket_details(options={})
request(
:path => '/Support/Ticket/details',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/support/list_ticket_types.rb b/lib/fog/storm_on_demand/requests/support/list_ticket_types.rb
index 7b7275d..db726be 100644
--- a/lib/fog/storm_on_demand/requests/support/list_ticket_types.rb
+++ b/lib/fog/storm_on_demand/requests/support/list_ticket_types.rb
@@ -2,14 +2,12 @@ module Fog
module Support
class StormOnDemand
class Real
-
def list_ticket_types(options={})
request(
:path => '/Support/Ticket/types',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/support/list_tickets.rb b/lib/fog/storm_on_demand/requests/support/list_tickets.rb
index 29f414e..6f3f963 100644
--- a/lib/fog/storm_on_demand/requests/support/list_tickets.rb
+++ b/lib/fog/storm_on_demand/requests/support/list_tickets.rb
@@ -2,14 +2,12 @@ module Fog
module Support
class StormOnDemand
class Real
-
def list_tickets(options={})
request(
:path => '/Support/Ticket/list',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/support/reopen_ticket.rb b/lib/fog/storm_on_demand/requests/support/reopen_ticket.rb
index 2af38d5..4c1531d 100644
--- a/lib/fog/storm_on_demand/requests/support/reopen_ticket.rb
+++ b/lib/fog/storm_on_demand/requests/support/reopen_ticket.rb
@@ -2,14 +2,12 @@ module Fog
module Support
class StormOnDemand
class Real
-
def reopen_ticket(options={})
request(
:path => '/Support/Ticket/reopen',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/support/reply_ticket.rb b/lib/fog/storm_on_demand/requests/support/reply_ticket.rb
index 546b64c..4adba59 100644
--- a/lib/fog/storm_on_demand/requests/support/reply_ticket.rb
+++ b/lib/fog/storm_on_demand/requests/support/reply_ticket.rb
@@ -2,14 +2,12 @@ module Fog
module Support
class StormOnDemand
class Real
-
def reply_ticket(options={})
request(
:path => '/Support/Ticket/reply',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/vpn/create_vpn.rb b/lib/fog/storm_on_demand/requests/vpn/create_vpn.rb
index 0409437..bc2d407 100644
--- a/lib/fog/storm_on_demand/requests/vpn/create_vpn.rb
+++ b/lib/fog/storm_on_demand/requests/vpn/create_vpn.rb
@@ -2,14 +2,12 @@ module Fog
module VPN
class StormOnDemand
class Real
-
def create_vpn(options={})
request(
:path => '/VPN/create',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/vpn/get_vpn.rb b/lib/fog/storm_on_demand/requests/vpn/get_vpn.rb
index 1a1f533..7f989a4 100644
--- a/lib/fog/storm_on_demand/requests/vpn/get_vpn.rb
+++ b/lib/fog/storm_on_demand/requests/vpn/get_vpn.rb
@@ -2,14 +2,12 @@ module Fog
module VPN
class StormOnDemand
class Real
-
def get_vpn(options={})
request(
:path => '/VPN/details',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/vpn/list_vpn_users.rb b/lib/fog/storm_on_demand/requests/vpn/list_vpn_users.rb
index 7d3705e..6e076c0 100644
--- a/lib/fog/storm_on_demand/requests/vpn/list_vpn_users.rb
+++ b/lib/fog/storm_on_demand/requests/vpn/list_vpn_users.rb
@@ -2,14 +2,12 @@ module Fog
module VPN
class StormOnDemand
class Real
-
def list_vpn_users(options={})
request(
:path => '/VPN/list',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/requests/vpn/update_vpn.rb b/lib/fog/storm_on_demand/requests/vpn/update_vpn.rb
index 555a8e2..c98ee8b 100644
--- a/lib/fog/storm_on_demand/requests/vpn/update_vpn.rb
+++ b/lib/fog/storm_on_demand/requests/vpn/update_vpn.rb
@@ -2,14 +2,12 @@ module Fog
module VPN
class StormOnDemand
class Real
-
def update_vpn(options={})
request(
:path => '/VPN/update',
:body => Fog::JSON.encode(:params => options)
)
end
-
end
end
end
diff --git a/lib/fog/storm_on_demand/shared.rb b/lib/fog/storm_on_demand/shared.rb
index c7ce0c8..3bf2f9d 100644
--- a/lib/fog/storm_on_demand/shared.rb
+++ b/lib/fog/storm_on_demand/shared.rb
@@ -1,7 +1,6 @@
module Fog
module StormOnDemand
module RealShared
-
API_URL = 'https://api.stormondemand.com'
API_VERSION = 'v1'
@@ -44,7 +43,7 @@ module Fog
unless response.body.empty?
response.body = Fog::JSON.decode(response.body)
end
- if response.body.has_key?('error_class')
+ if response.body.key?('error_class')
raise(Fog::Compute::StormOnDemand::Error, response.body.inspect)
end
response
diff --git a/lib/fog/storm_on_demand/storage.rb b/lib/fog/storm_on_demand/storage.rb
index 22dccf0..dfeac50 100644
--- a/lib/fog/storm_on_demand/storage.rb
+++ b/lib/fog/storm_on_demand/storage.rb
@@ -4,7 +4,6 @@ require "fog/storm_on_demand/shared"
module Fog
module Storage
class StormOnDemand < Fog::Service
-
API_URL = 'https://api.stormondemand.com'
API_VERSION = 'v1'
@@ -29,7 +28,6 @@ module Fog
request :update_volume
class Mock
-
def self.data
@data ||= Hash.new
end
@@ -55,13 +53,10 @@ module Fog
def reset_data
self.class.data.delete(@storm_on_demand_username)
end
-
end
class Real
-
include Fog::StormOnDemand::RealShared
-
end
end
end
diff --git a/lib/fog/storm_on_demand/support.rb b/lib/fog/storm_on_demand/support.rb
index 76f8924..665665a 100644
--- a/lib/fog/storm_on_demand/support.rb
+++ b/lib/fog/storm_on_demand/support.rb
@@ -3,9 +3,7 @@ require 'fog/storm_on_demand/shared'
module Fog
module Support
-
class StormOnDemand < Fog::Service
-
requires :storm_on_demand_username, :storm_on_demand_password
recognizes :storm_on_demand_auth_url
@@ -28,7 +26,6 @@ module Fog
request :list_ticket_types
class Mock
-
def self.data
@data ||= Hash.new
end
@@ -54,13 +51,10 @@ module Fog
def reset_data
self.class.data.delete(@storm_on_demand_username)
end
-
end
class Real
-
include Fog::StormOnDemand::RealShared
-
end
end
end
diff --git a/lib/fog/storm_on_demand/vpn.rb b/lib/fog/storm_on_demand/vpn.rb
index 6a2ed99..42bb248 100644
--- a/lib/fog/storm_on_demand/vpn.rb
+++ b/lib/fog/storm_on_demand/vpn.rb
@@ -18,7 +18,6 @@ module Fog
request :update_vpn
class Mock
-
def self.data
@data ||= Hash.new
end
@@ -44,13 +43,10 @@ module Fog
def reset_data
self.class.data.delete(@storm_on_demand_username)
end
-
end
class Real
-
include Fog::StormOnDemand::RealShared
-
end
end
end
diff --git a/lib/fog/terremark/models/shared/address.rb b/lib/fog/terremark/models/shared/address.rb
index 278b5d0..b75391a 100644
--- a/lib/fog/terremark/models/shared/address.rb
+++ b/lib/fog/terremark/models/shared/address.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Terremark
module Shared
-
class Address < Fog::Model
-
identity :id
attribute :ip, :aliases => 'name'
@@ -21,9 +19,7 @@ module Fog
def href=(new_href)
self.id = new_href.split('/').last.to_i
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/models/shared/addresses.rb b/lib/fog/terremark/models/shared/addresses.rb
index 964dbb2..5d2bed7 100644
--- a/lib/fog/terremark/models/shared/addresses.rb
+++ b/lib/fog/terremark/models/shared/addresses.rb
@@ -1,7 +1,6 @@
module Fog
module Terremark
module Shared
-
module Mock
def addresses(options = {})
Fog::Terremark::Shared::Addresses.new(options.merge(:service => self))
@@ -15,7 +14,6 @@ module Fog
end
class Addresses < Fog::Collection
-
model Fog::Terremark::Shared::Address
def all
@@ -41,9 +39,7 @@ module Fog
def vdc_id=(new_vdc_id)
@vdc_id = new_vdc_id
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/models/shared/image.rb b/lib/fog/terremark/models/shared/image.rb
index 52595ac..6a39de8 100644
--- a/lib/fog/terremark/models/shared/image.rb
+++ b/lib/fog/terremark/models/shared/image.rb
@@ -3,13 +3,10 @@ require 'fog/core/model'
module Fog
module Terremark
module Shared
-
class Image < Fog::Model
-
identity :id
attribute :name
-
end
private
diff --git a/lib/fog/terremark/models/shared/images.rb b/lib/fog/terremark/models/shared/images.rb
index 47c0fc5..e104b29 100644
--- a/lib/fog/terremark/models/shared/images.rb
+++ b/lib/fog/terremark/models/shared/images.rb
@@ -4,8 +4,6 @@ require 'fog/terremark/models/shared/image'
module Fog
module Terremark
module Shared
-
-
module Mock
def images(options = {})
Fog::Terremark::Shared::Images.new(options.merge(:service => self))
@@ -19,8 +17,6 @@ module Fog
end
class Images < Fog::Collection
-
-
model Fog::Terremark::Shared::Image
def all
@@ -30,7 +26,6 @@ module Fog
load(data)
end
-
def vdc_id
@vdc_id ||= service.default_vdc_id
end
@@ -40,9 +35,7 @@ module Fog
def vdc_id=(new_vdc_id)
@vdc_id = new_vdc_id
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/models/shared/internetservice.rb b/lib/fog/terremark/models/shared/internetservice.rb
index 3849ea0..33690ef 100644
--- a/lib/fog/terremark/models/shared/internetservice.rb
+++ b/lib/fog/terremark/models/shared/internetservice.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Terremark
module Shared
-
class InternetService < Fog::Model
-
identity :Id
attribute :Name
@@ -58,9 +56,10 @@ module Fog
end
def type=(new_type); @type = new_type; end
+
def size=(new_size); @size = new_size; end
- def Links=(new_links); @Links = new_links; end
+ def Links=(new_links); @Links = new_links; end
end
end
end
diff --git a/lib/fog/terremark/models/shared/internetservices.rb b/lib/fog/terremark/models/shared/internetservices.rb
index 0edb4e4..33d50c3 100644
--- a/lib/fog/terremark/models/shared/internetservices.rb
+++ b/lib/fog/terremark/models/shared/internetservices.rb
@@ -4,7 +4,6 @@ require 'fog/terremark/models/shared/internetservice'
module Fog
module Terremark
module Shared
-
module Mock
def internetservices(options = {})
Fog::Terremark::Shared::Servers.new(options.merge(:service => self))
@@ -18,7 +17,6 @@ module Fog
end
class InternetServices < Fog::Collection
-
model Fog::Terremark::Shared::InternetService
def all
@@ -35,7 +33,6 @@ module Fog
def vdc_id
@vdc_id ||= service.default_vdc_id
end
-
end
end
end
diff --git a/lib/fog/terremark/models/shared/network.rb b/lib/fog/terremark/models/shared/network.rb
index cdb5f4b..d9d499b 100644
--- a/lib/fog/terremark/models/shared/network.rb
+++ b/lib/fog/terremark/models/shared/network.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Terremark
module Shared
-
class Network < Fog::Model
-
identity :id
attribute :name
@@ -27,9 +25,7 @@ module Fog
end
def type=(new_type); end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/models/shared/networks.rb b/lib/fog/terremark/models/shared/networks.rb
index 7e58712..8ca75fe 100644
--- a/lib/fog/terremark/models/shared/networks.rb
+++ b/lib/fog/terremark/models/shared/networks.rb
@@ -1,7 +1,6 @@
module Fog
module Terremark
module Shared
-
module Mock
def networks(options = {})
Fog::Terremark::Shared::Networks.new(options.merge(:service => self))
@@ -15,7 +14,6 @@ module Fog
end
class Networks < Fog::Collection
-
model Fog::Terremark::Shared::Network
def all
@@ -44,9 +42,7 @@ module Fog
def vdc_id=(new_vdc_id)
@vdc_id = new_vdc_id
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/models/shared/nodeservice.rb b/lib/fog/terremark/models/shared/nodeservice.rb
index 2e42d66..3684c6f 100644
--- a/lib/fog/terremark/models/shared/nodeservice.rb
+++ b/lib/fog/terremark/models/shared/nodeservice.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Terremark
module Shared
-
class NodeService < Fog::Model
-
identity :Id
attribute :Name
attribute :Href
@@ -42,11 +40,11 @@ module Fog
end
def type=(new_type); @type = new_type; end
+
def size=(new_size); @size = new_size; end
- def Links=(new_links); @Links = new_links; end
+ def Links=(new_links); @Links = new_links; end
end
-
end
end
end
diff --git a/lib/fog/terremark/models/shared/nodeservices.rb b/lib/fog/terremark/models/shared/nodeservices.rb
index 657e162..fc34578 100644
--- a/lib/fog/terremark/models/shared/nodeservices.rb
+++ b/lib/fog/terremark/models/shared/nodeservices.rb
@@ -4,7 +4,6 @@ require 'fog/terremark/models/shared/nodeservice'
module Fog
module Terremark
module Shared
-
module Mock
def nodeservices(options = {})
Fog::Terremark::Shared::Servers.new(options.merge(:service => self))
@@ -18,14 +17,12 @@ module Fog
end
class NodeServices < Fog::Collection
-
model Fog::Terremark::Shared::NodeService
def all(internet_service_id)
data = service.get_node_services(internet_service_id).body["NodeServices"]
load(data)
end
-
end
end
end
diff --git a/lib/fog/terremark/models/shared/server.rb b/lib/fog/terremark/models/shared/server.rb
index 6c113dc..39b01d1 100644
--- a/lib/fog/terremark/models/shared/server.rb
+++ b/lib/fog/terremark/models/shared/server.rb
@@ -10,13 +10,10 @@ module VAppStatus
POWERED_ON = "4"
end
-
module Fog
module Terremark
module Shared
-
class Server < Fog::Model
-
identity :id
attribute :name
@@ -33,6 +30,7 @@ module Fog
def reload
merge_attributes(service.get_vapp(id).body)
end
+
def destroy
case self.status
when VAppStatus::BEING_CREATED, VAppStatus::BEING_DEPLOYED
@@ -202,9 +200,10 @@ module Fog
end
def type=(new_type); @type = new_type; end
+
def size=(new_size); @size = new_size; end
- def Links=(new_links); @Links = new_links; end
+ def Links=(new_links); @Links = new_links; end
end
end
end
diff --git a/lib/fog/terremark/models/shared/servers.rb b/lib/fog/terremark/models/shared/servers.rb
index 9c90dde..578ddfb 100644
--- a/lib/fog/terremark/models/shared/servers.rb
+++ b/lib/fog/terremark/models/shared/servers.rb
@@ -4,7 +4,6 @@ require 'fog/terremark/models/shared/server'
module Fog
module Terremark
module Shared
-
module Mock
def servers(options = {})
Fog::Terremark::Shared::Servers.new(options.merge(:service => self))
@@ -18,7 +17,6 @@ module Fog
end
class Servers < Fog::Collection
-
model Fog::Terremark::Shared::Server
def all
@@ -46,9 +44,7 @@ module Fog
def vdc_id=(new_vdc_id)
@vdc_id = new_vdc_id
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/models/shared/task.rb b/lib/fog/terremark/models/shared/task.rb
index 5a4eb87..82f6cbc 100644
--- a/lib/fog/terremark/models/shared/task.rb
+++ b/lib/fog/terremark/models/shared/task.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Terremark
module Shared
-
class Task < Fog::Model
-
identity :id
attribute :end_time, :aliases => 'endTime'
@@ -42,9 +40,7 @@ module Fog
end
def type=(new_type); end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/models/shared/tasks.rb b/lib/fog/terremark/models/shared/tasks.rb
index b2f1ed7..50a98bf 100644
--- a/lib/fog/terremark/models/shared/tasks.rb
+++ b/lib/fog/terremark/models/shared/tasks.rb
@@ -4,7 +4,6 @@ require 'fog/terremark/models/shared/server'
module Fog
module Terremark
module Shared
-
module Mock
def tasks
Fog::Terremark::Shared::Tasks.new(:service => self)
@@ -18,7 +17,6 @@ module Fog
end
class Tasks < Fog::Collection
-
model Fog::Terremark::Shared::Task
def all
@@ -39,7 +37,7 @@ module Fog
def task_list_id
@task_list_id ||=
if service.default_organization_id && organization = service.get_organization(service.default_organization_id).body
- organization['Links'].detect {|link| link['type'] == 'application/vnd.vmware.vcloud.tasksList+xml'}['href'].split('/').last.to_i
+ organization['Links'].find {|link| link['type'] == 'application/vnd.vmware.vcloud.tasksList+xml'}['href'].split('/').last.to_i
else
nil
end
@@ -50,9 +48,7 @@ module Fog
def task_list_id=(new_task_list_id)
@task_list_id = new_task_list_id
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/models/shared/vdc.rb b/lib/fog/terremark/models/shared/vdc.rb
index 6bb1f54..fcb9498 100644
--- a/lib/fog/terremark/models/shared/vdc.rb
+++ b/lib/fog/terremark/models/shared/vdc.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Terremark
module Shared
-
class Vdc < Fog::Model
-
identity :id
attribute :name
@@ -36,9 +34,7 @@ module Fog
def type=(new_type); end
def rel=(new_rel); end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/models/shared/vdcs.rb b/lib/fog/terremark/models/shared/vdcs.rb
index ac68080..d2498d6 100644
--- a/lib/fog/terremark/models/shared/vdcs.rb
+++ b/lib/fog/terremark/models/shared/vdcs.rb
@@ -1,7 +1,6 @@
module Fog
module Terremark
module Shared
-
module Mock
def vdcs(options = {})
Fog::Terremark::Shared::Vdcs.new(options.merge(:service => self))
@@ -15,7 +14,6 @@ module Fog
end
class Vdcs < Fog::Collection
-
model Fog::Terremark::Shared::Vdc
def all
@@ -44,9 +42,7 @@ module Fog
def organization_id=(new_organization_id)
@organization_id = new_organization_id
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parser.rb b/lib/fog/terremark/parser.rb
index 651520e..b03196b 100644
--- a/lib/fog/terremark/parser.rb
+++ b/lib/fog/terremark/parser.rb
@@ -1,6 +1,5 @@
class TerremarkParser < Fog::Parsers::Base
-
def extract_attributes(attributes_xml)
attributes = {}
until attributes_xml.empty?
@@ -17,4 +16,3 @@ class TerremarkParser < Fog::Parsers::Base
attributes
end
end
-
diff --git a/lib/fog/terremark/parsers/shared/get_catalog.rb b/lib/fog/terremark/parsers/shared/get_catalog.rb
index 35d9d76..33f99c5 100644
--- a/lib/fog/terremark/parsers/shared/get_catalog.rb
+++ b/lib/fog/terremark/parsers/shared/get_catalog.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class GetCatalog < TerremarkParser
-
def reset
@response = { 'CatalogItems' => [] }
end
@@ -28,9 +26,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/get_catalog_item.rb b/lib/fog/terremark/parsers/shared/get_catalog_item.rb
index 5989756..258813c 100644
--- a/lib/fog/terremark/parsers/shared/get_catalog_item.rb
+++ b/lib/fog/terremark/parsers/shared/get_catalog_item.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class GetCatalogItem < TerremarkParser
-
def reset
@response = { 'Entity' => {}, 'Properties' => {} }
end
@@ -27,9 +25,7 @@ module Fog
@response['Properties'][@property_key] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/get_internet_services.rb b/lib/fog/terremark/parsers/shared/get_internet_services.rb
index ce9df2a..8865238 100644
--- a/lib/fog/terremark/parsers/shared/get_internet_services.rb
+++ b/lib/fog/terremark/parsers/shared/get_internet_services.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class GetInternetServices < TerremarkParser
-
def reset
@in_public_ip_address = false
@internet_service = {}
@@ -53,7 +51,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/get_keys_list.rb b/lib/fog/terremark/parsers/shared/get_keys_list.rb
index 0211bd2..096d949 100644
--- a/lib/fog/terremark/parsers/shared/get_keys_list.rb
+++ b/lib/fog/terremark/parsers/shared/get_keys_list.rb
@@ -3,7 +3,6 @@ module Fog
module Parsers
module Terremark
module Shared
-
class GetKeysList < TerremarkParser
def reset
@response = { 'Keys' => [] }
@@ -33,9 +32,7 @@ module Fog
@key = {}
end
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/get_network_ips.rb b/lib/fog/terremark/parsers/shared/get_network_ips.rb
index 4aafa1d..f9ebfcc 100644
--- a/lib/fog/terremark/parsers/shared/get_network_ips.rb
+++ b/lib/fog/terremark/parsers/shared/get_network_ips.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class GetNetworkIps< TerremarkParser
-
def reset
@ip_address = {}
@response = { 'IpAddresses' => [] }
@@ -19,11 +17,8 @@ module Fog
@ip_address = {}
end
end
-
end
-
end
end
end
end
-
diff --git a/lib/fog/terremark/parsers/shared/get_node_services.rb b/lib/fog/terremark/parsers/shared/get_node_services.rb
index e84934e..38119b7 100644
--- a/lib/fog/terremark/parsers/shared/get_node_services.rb
+++ b/lib/fog/terremark/parsers/shared/get_node_services.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class GetNodeServices < TerremarkParser
-
def reset
@node_service = {}
@response = { 'NodeServices' => [] }
@@ -27,9 +25,7 @@ module Fog
@node_service = {}
end
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/get_organization.rb b/lib/fog/terremark/parsers/shared/get_organization.rb
index c0f9bb5..068d97f 100644
--- a/lib/fog/terremark/parsers/shared/get_organization.rb
+++ b/lib/fog/terremark/parsers/shared/get_organization.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Terremark
module Shared
-
class GetOrganization < TerremarkParser
# include Fog::Terremark::Shared::Parser
@@ -44,9 +43,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/get_organizations.rb b/lib/fog/terremark/parsers/shared/get_organizations.rb
index 6b5c064..bd3ae67 100644
--- a/lib/fog/terremark/parsers/shared/get_organizations.rb
+++ b/lib/fog/terremark/parsers/shared/get_organizations.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module Terremark
module Shared
-
class GetOrganizations < TerremarkParser
# include Fog::Terremark::Shared::Parser
@@ -25,7 +24,6 @@ module Fog
@response['OrgList'] << organization
end
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/get_public_ips.rb b/lib/fog/terremark/parsers/shared/get_public_ips.rb
index b2518dc..a5c75b6 100644
--- a/lib/fog/terremark/parsers/shared/get_public_ips.rb
+++ b/lib/fog/terremark/parsers/shared/get_public_ips.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class GetPublicIps< TerremarkParser
-
def reset
@ip_address = {}
@response = { 'PublicIpAddresses' => [] }
@@ -21,9 +19,7 @@ module Fog
@ip_address = {}
end
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/get_tasks_list.rb b/lib/fog/terremark/parsers/shared/get_tasks_list.rb
index bae3675..f387ca6 100644
--- a/lib/fog/terremark/parsers/shared/get_tasks_list.rb
+++ b/lib/fog/terremark/parsers/shared/get_tasks_list.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class GetTasksList < TerremarkParser
-
def reset
@response = { 'Tasks' => [] }
@task = {}
@@ -30,9 +28,7 @@ module Fog
@task = {}
end
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/get_vapp_template.rb b/lib/fog/terremark/parsers/shared/get_vapp_template.rb
index 1ee5567..2b172ed 100644
--- a/lib/fog/terremark/parsers/shared/get_vapp_template.rb
+++ b/lib/fog/terremark/parsers/shared/get_vapp_template.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class GetVappTemplate < TerremarkParser
-
def reset
@response = { 'Links' => [] }
end
@@ -26,9 +24,7 @@ module Fog
@response['Description'] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/get_vdc.rb b/lib/fog/terremark/parsers/shared/get_vdc.rb
index 30ce55a..4c8ff1d 100644
--- a/lib/fog/terremark/parsers/shared/get_vdc.rb
+++ b/lib/fog/terremark/parsers/shared/get_vdc.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class GetVdc < TerremarkParser
-
def reset
@in_storage_capacity = false
@in_cpu = false
@@ -82,9 +80,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/instantiate_vapp_template.rb b/lib/fog/terremark/parsers/shared/instantiate_vapp_template.rb
index 4fd0eb6..3fe5e5f 100644
--- a/lib/fog/terremark/parsers/shared/instantiate_vapp_template.rb
+++ b/lib/fog/terremark/parsers/shared/instantiate_vapp_template.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class InstantiateVappTemplate < TerremarkParser
-
def reset
@property_key
@response = { 'Links' => [] }
@@ -21,9 +19,7 @@ module Fog
@response.merge!(vapp_template.reject {|key, value| !['href', 'name', 'size', 'status', 'type'].include?(key)})
end
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/internet_service.rb b/lib/fog/terremark/parsers/shared/internet_service.rb
index ad4e24a..d65ffcc 100644
--- a/lib/fog/terremark/parsers/shared/internet_service.rb
+++ b/lib/fog/terremark/parsers/shared/internet_service.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class InternetService < TerremarkParser
-
def reset
@in_public_ip_address = false
@response = { 'PublicIpAddress' => {} }
@@ -53,9 +51,7 @@ module Fog
@in_public_ip_address = false
end
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/network.rb b/lib/fog/terremark/parsers/shared/network.rb
index b5c01b9..8cf07d9 100644
--- a/lib/fog/terremark/parsers/shared/network.rb
+++ b/lib/fog/terremark/parsers/shared/network.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class Network < TerremarkParser
-
def reset
@response = {
"links" => []
@@ -16,10 +14,10 @@ module Fog
case name
when "Network"
@response = extract_attributes(attributes)
- if @response.has_key?("name")
+ if @response.key?("name")
@response["subnet"] = @response["name"]
end
- if @response.has_key?("href")
+ if @response.key?("href")
@response["id"] = @response["href"].split("/").last
end
when "Link"
@@ -34,9 +32,7 @@ module Fog
@response[name.downcase] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/node_service.rb b/lib/fog/terremark/parsers/shared/node_service.rb
index 4532ffa..35ded9f 100644
--- a/lib/fog/terremark/parsers/shared/node_service.rb
+++ b/lib/fog/terremark/parsers/shared/node_service.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class NodeService < TerremarkParser
-
def reset
@response = {}
end
@@ -23,9 +21,7 @@ module Fog
@response[name] = value.to_i
end
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/public_ip.rb b/lib/fog/terremark/parsers/shared/public_ip.rb
index 1747168..b564349 100644
--- a/lib/fog/terremark/parsers/shared/public_ip.rb
+++ b/lib/fog/terremark/parsers/shared/public_ip.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class PublicIp < TerremarkParser
-
def reset
@response = {}
end
@@ -17,9 +15,7 @@ module Fog
@response['id'] = value.to_i
end
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/task.rb b/lib/fog/terremark/parsers/shared/task.rb
index fa0d2d9..3fa39ea 100644
--- a/lib/fog/terremark/parsers/shared/task.rb
+++ b/lib/fog/terremark/parsers/shared/task.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class Task < TerremarkParser
-
def reset
@response = {}
end
@@ -20,9 +18,7 @@ module Fog
@response.merge!(task.reject {|key,value| !['endTime', 'href', 'startTime', 'status', 'type'].include?(key)})
end
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/parsers/shared/vapp.rb b/lib/fog/terremark/parsers/shared/vapp.rb
index 7e41ac6..fc19595 100644
--- a/lib/fog/terremark/parsers/shared/vapp.rb
+++ b/lib/fog/terremark/parsers/shared/vapp.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Terremark
module Shared
-
class Vapp < TerremarkParser
-
def reset
@response = { 'Links' => [], 'VirtualHardware' => {}, 'OperatingSystem' => {} }
@in_operating_system = false
@@ -56,11 +54,8 @@ module Fog
end
end
end
-
end
-
end
end
end
end
-
diff --git a/lib/fog/terremark/requests/shared/add_internet_service.rb b/lib/fog/terremark/requests/shared/add_internet_service.rb
index 7f2c39f..73eb4e6 100644
--- a/lib/fog/terremark/requests/shared/add_internet_service.rb
+++ b/lib/fog/terremark/requests/shared/add_internet_service.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Reserve requested resources and deploy vApp
#
# ==== Parameters
@@ -27,7 +26,7 @@ module Fog
# * 'name'<~String> - name of owner
# * 'type'<~String> - type of owner
def add_internet_service(ip_id, name, protocol, port, options = {})
- unless options.has_key?('Enabled')
+ unless options.key?('Enabled')
options['Enabled'] = true
end
data = <<-DATA
@@ -49,7 +48,6 @@ module Fog
:override_path => true
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/add_node_service.rb b/lib/fog/terremark/requests/shared/add_node_service.rb
index 46b5d8a..5f63907 100644
--- a/lib/fog/terremark/requests/shared/add_node_service.rb
+++ b/lib/fog/terremark/requests/shared/add_node_service.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Reserve requested resources and deploy vApp
#
# ==== Parameters
@@ -27,7 +26,7 @@ module Fog
# * 'name'<~String> - name of owner
# * 'type'<~String> - type of owner
def add_node_service(service_id, ip, name, port, options = {})
- unless options.has_key?('Enabled')
+ unless options.key?('Enabled')
options['Enabled'] = true
end
@@ -46,7 +45,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/configure_vapp.rb b/lib/fog/terremark/requests/shared/configure_vapp.rb
index ec7c1a9..b90c44a 100644
--- a/lib/fog/terremark/requests/shared/configure_vapp.rb
+++ b/lib/fog/terremark/requests/shared/configure_vapp.rb
@@ -4,7 +4,6 @@ module Fog
module Real
include Common
def configure_vapp(vapp_id, vapp_name, options = {})
-
items = ""
vapp_uri = [@host, @path, "vApp", vapp_id.to_s].join("/")
@@ -54,7 +53,6 @@ DATA
:path => "vapp/#{vapp_id}"
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/create_internet_service.rb b/lib/fog/terremark/requests/shared/create_internet_service.rb
index 576cc39..107ab3d 100644
--- a/lib/fog/terremark/requests/shared/create_internet_service.rb
+++ b/lib/fog/terremark/requests/shared/create_internet_service.rb
@@ -28,7 +28,7 @@ module Fog
# * 'name'<~String> - name of owner
# * 'type'<~String> - type of owner
def create_internet_service(vdc_id, name, protocol, port, options = {})
- unless options.has_key?('Enabled')
+ unless options.key?('Enabled')
options['Enabled'] = true
end
#Sample: "https://services.vcloudexpress.terremark.com/api/extensions/v1.6/vdc/3142/internetServices"
@@ -53,7 +53,6 @@ module Fog
)
response
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/delete_internet_service.rb b/lib/fog/terremark/requests/shared/delete_internet_service.rb
index 00fa587..a2a9100 100644
--- a/lib/fog/terremark/requests/shared/delete_internet_service.rb
+++ b/lib/fog/terremark/requests/shared/delete_internet_service.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Destroy an internet service
#
# ==== Parameters
@@ -16,7 +15,6 @@ module Fog
:override_path => true
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/delete_node_service.rb b/lib/fog/terremark/requests/shared/delete_node_service.rb
index 4f34c7e..277b8cd 100644
--- a/lib/fog/terremark/requests/shared/delete_node_service.rb
+++ b/lib/fog/terremark/requests/shared/delete_node_service.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Destroy a node
#
# ==== Parameters
@@ -16,7 +15,6 @@ module Fog
:override_path => true
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/delete_public_ip.rb b/lib/fog/terremark/requests/shared/delete_public_ip.rb
index cc77e3c..e88764e 100644
--- a/lib/fog/terremark/requests/shared/delete_public_ip.rb
+++ b/lib/fog/terremark/requests/shared/delete_public_ip.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Destroy a public ip
#
# ==== Parameters
@@ -16,7 +15,6 @@ module Fog
:override_path => true
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/delete_vapp.rb b/lib/fog/terremark/requests/shared/delete_vapp.rb
index e7cf048..d25543d 100644
--- a/lib/fog/terremark/requests/shared/delete_vapp.rb
+++ b/lib/fog/terremark/requests/shared/delete_vapp.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Destroy a vapp
#
# ==== Parameters
@@ -15,7 +14,6 @@ module Fog
:path => "vApp/#{vapp_id}"
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/deploy_vapp.rb b/lib/fog/terremark/requests/shared/deploy_vapp.rb
index 0150193..c94cdd7 100644
--- a/lib/fog/terremark/requests/shared/deploy_vapp.rb
+++ b/lib/fog/terremark/requests/shared/deploy_vapp.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Reserve requested resources and deploy vApp
#
# ==== Parameters
@@ -28,7 +27,6 @@ module Fog
:path => "vApp/#{vapp_id}/action/deploy"
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/get_catalog.rb b/lib/fog/terremark/requests/shared/get_catalog.rb
index 370d4d6..0296727 100644
--- a/lib/fog/terremark/requests/shared/get_catalog.rb
+++ b/lib/fog/terremark/requests/shared/get_catalog.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Get details of a catalog
#
# ==== Parameters
@@ -25,7 +24,6 @@ module Fog
:path => "vdc/#{vdc_id}/catalog"
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/get_catalog_item.rb b/lib/fog/terremark/requests/shared/get_catalog_item.rb
index 4ed3e28..192d966 100644
--- a/lib/fog/terremark/requests/shared/get_catalog_item.rb
+++ b/lib/fog/terremark/requests/shared/get_catalog_item.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Get details of a catalog item
#
# ==== Parameters
@@ -28,7 +27,6 @@ module Fog
:path => "catalogItem/#{catalog_item_id}"
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/get_internet_services.rb b/lib/fog/terremark/requests/shared/get_internet_services.rb
index 2b3ee59..db1abc2 100644
--- a/lib/fog/terremark/requests/shared/get_internet_services.rb
+++ b/lib/fog/terremark/requests/shared/get_internet_services.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
require 'fog/terremark/parsers/shared/get_internet_services'
# Get a list of all internet services for a vdc
@@ -29,7 +28,6 @@ module Fog
:override_path => true
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/get_keys_list.rb b/lib/fog/terremark/requests/shared/get_keys_list.rb
index 89c48ad..9864710 100644
--- a/lib/fog/terremark/requests/shared/get_keys_list.rb
+++ b/lib/fog/terremark/requests/shared/get_keys_list.rb
@@ -28,9 +28,7 @@ module Fog
)
response
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/get_network.rb b/lib/fog/terremark/requests/shared/get_network.rb
index c19467c..1542ea9 100644
--- a/lib/fog/terremark/requests/shared/get_network.rb
+++ b/lib/fog/terremark/requests/shared/get_network.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Get details for a Network
#
# ==== Parameters
@@ -20,15 +19,13 @@ module Fog
:path => "network/#{network_id}"
)
end
-
end
module Mock
-
def get_network(network_id)
network_id = network_id.to_i
response = Excon::Response.new
- if network = self.data[:organizations].map { |org| org[:vdcs].map { |vdc| vdc[:networks] } }.flatten.detect { |network| network[:id] == network_id }
+ if network = self.data[:organizations].map { |org| org[:vdcs].map { |vdc| vdc[:networks] } }.flatten.find { |network| network[:id] == network_id }
body = { "links" => [],
"type" => "application/vnd.vmware.vcloud.network+xml",
@@ -66,7 +63,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/get_network_ips.rb b/lib/fog/terremark/requests/shared/get_network_ips.rb
index fe649e4..da2083f 100644
--- a/lib/fog/terremark/requests/shared/get_network_ips.rb
+++ b/lib/fog/terremark/requests/shared/get_network_ips.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Get details for a Network
#
# ==== Parameters
@@ -24,9 +23,7 @@ module Fog
end
request(opts)
end
-
end
end
end
end
-
diff --git a/lib/fog/terremark/requests/shared/get_node_services.rb b/lib/fog/terremark/requests/shared/get_node_services.rb
index ce2e161..efb9368 100644
--- a/lib/fog/terremark/requests/shared/get_node_services.rb
+++ b/lib/fog/terremark/requests/shared/get_node_services.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
require 'fog/terremark/parsers/shared/get_node_services'
# Get a list of all internet services for a vdc
@@ -24,7 +23,6 @@ module Fog
:override_path => true
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/get_organization.rb b/lib/fog/terremark/requests/shared/get_organization.rb
index 8d21805..5789fe1 100644
--- a/lib/fog/terremark/requests/shared/get_organization.rb
+++ b/lib/fog/terremark/requests/shared/get_organization.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Get details of an organization
#
# ==== Parameters
@@ -27,16 +26,14 @@ module Fog
)
response
end
-
end
module Mock
-
def get_organization(organization_id)
organization_id = organization_id.to_i
response = Excon::Response.new
- if org = self.data[:organizations].detect { |org| org[:info][:id] == organization_id }
+ if org = self.data[:organizations].find { |org| org[:info][:id] == organization_id }
body = { "name" => org[:info][:name],
"href" => "#{@base_url}/org/#{org[:info][:id]}",
@@ -80,7 +77,6 @@ module Fog
]
end
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/get_organizations.rb b/lib/fog/terremark/requests/shared/get_organizations.rb
index 4fc2f9b..3dbfb8b 100644
--- a/lib/fog/terremark/requests/shared/get_organizations.rb
+++ b/lib/fog/terremark/requests/shared/get_organizations.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Get list of organizations
#
# ==== Returns
@@ -24,11 +23,9 @@ module Fog
:path => 'login'
})
end
-
end
module Mock
-
def get_organizations
response = Excon::Response.new
org_list = self.data[:organizations].map do |organization|
@@ -42,7 +39,6 @@ module Fog
response.headers = Fog::Terremark::Shared::Mock.headers(response.body, "application/vnd.vmware.vcloud.orgList+xml")
response
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/get_public_ip.rb b/lib/fog/terremark/requests/shared/get_public_ip.rb
index aed5ec4..eceeb10 100644
--- a/lib/fog/terremark/requests/shared/get_public_ip.rb
+++ b/lib/fog/terremark/requests/shared/get_public_ip.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Get details for a public ip
#
# ==== Parameters
@@ -26,7 +25,6 @@ module Fog
end
request(opts)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/get_public_ips.rb b/lib/fog/terremark/requests/shared/get_public_ips.rb
index 6815320..0c88e19 100644
--- a/lib/fog/terremark/requests/shared/get_public_ips.rb
+++ b/lib/fog/terremark/requests/shared/get_public_ips.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Get list of public ips
#
# ==== Parameters
@@ -26,16 +25,14 @@ module Fog
end
request(opts)
end
-
end
module Mock
-
def get_public_ips(vdc_id)
vdc_id = vdc_id.to_i
response = Excon::Response.new
- if vdc = self.data[:organizations].map { |org| org[:vdcs] }.flatten.detect { |vdc| vdc[:id] == vdc_id }
+ if vdc = self.data[:organizations].map { |org| org[:vdcs] }.flatten.find { |vdc| vdc[:id] == vdc_id }
body = { "PublicIpAddresses" => [] }
vdc[:public_ips].each do |ip|
ip = { "name" => ip[:name],
@@ -65,7 +62,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/get_task.rb b/lib/fog/terremark/requests/shared/get_task.rb
index d3e2f9a..e0b5892 100644
--- a/lib/fog/terremark/requests/shared/get_task.rb
+++ b/lib/fog/terremark/requests/shared/get_task.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Get details of a task
#
# ==== Parameters
@@ -32,7 +31,6 @@ module Fog
:path => "task/#{task_id}"
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/get_tasks_list.rb b/lib/fog/terremark/requests/shared/get_tasks_list.rb
index e96fd71..a162a1b 100644
--- a/lib/fog/terremark/requests/shared/get_tasks_list.rb
+++ b/lib/fog/terremark/requests/shared/get_tasks_list.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Get list of tasks
#
# ==== Parameters
@@ -25,9 +24,7 @@ module Fog
:path => "tasksList/#{tasks_list_id}"
)
end
-
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/get_vapp.rb b/lib/fog/terremark/requests/shared/get_vapp.rb
index 7a7d477..681fa57 100644
--- a/lib/fog/terremark/requests/shared/get_vapp.rb
+++ b/lib/fog/terremark/requests/shared/get_vapp.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Get details of a vapp
#
# ==== Parameters
@@ -35,7 +34,6 @@ module Fog
:path => "vapp/#{vapp_id}"
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/get_vapp_template.rb b/lib/fog/terremark/requests/shared/get_vapp_template.rb
index 734316f..c589628 100644
--- a/lib/fog/terremark/requests/shared/get_vapp_template.rb
+++ b/lib/fog/terremark/requests/shared/get_vapp_template.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Get details of a vapp template
#
# ==== Parameters
@@ -28,7 +27,6 @@ module Fog
:path => "vAppTemplate/#{vapp_template_id}"
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/get_vdc.rb b/lib/fog/terremark/requests/shared/get_vdc.rb
index 46fcfa2..0de449a 100644
--- a/lib/fog/terremark/requests/shared/get_vdc.rb
+++ b/lib/fog/terremark/requests/shared/get_vdc.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Get details of a vdc
#
# ==== Parameters
@@ -28,16 +27,14 @@ module Fog
:path => "vdc/#{vdc_id}"
)
end
-
end
module Mock
-
def get_vdc(vdc_id)
vdc_id = vdc_id.to_i
response = Excon::Response.new
- if vdc = self.data[:organizations].map { |org| org[:vdcs] }.flatten.detect { |vdc| vdc[:id] == vdc_id }
+ if vdc = self.data[:organizations].map { |org| org[:vdcs] }.flatten.find { |vdc| vdc[:id] == vdc_id }
body = { "name" => vdc[:name],
"href" => "#{@base_url}/vdc/#{vdc[:id]}",
@@ -118,7 +115,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/instantiate_vapp_template.rb b/lib/fog/terremark/requests/shared/instantiate_vapp_template.rb
index 8b41ac5..9c99fde 100644
--- a/lib/fog/terremark/requests/shared/instantiate_vapp_template.rb
+++ b/lib/fog/terremark/requests/shared/instantiate_vapp_template.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Instatiate a vapp template
#
# ==== Parameters
@@ -74,7 +73,6 @@ DATA
:path => "vdc/#{options['vdc_id']}/action/instantiatevAppTemplate"
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/power_off.rb b/lib/fog/terremark/requests/shared/power_off.rb
index d82e1af..1999d8b 100644
--- a/lib/fog/terremark/requests/shared/power_off.rb
+++ b/lib/fog/terremark/requests/shared/power_off.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Power off a vapp
#
# ==== Parameters
@@ -28,7 +27,6 @@ module Fog
:path => "vApp/#{vapp_id}/power/action/powerOff"
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/power_on.rb b/lib/fog/terremark/requests/shared/power_on.rb
index 18d98a7..709ce47 100644
--- a/lib/fog/terremark/requests/shared/power_on.rb
+++ b/lib/fog/terremark/requests/shared/power_on.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Power on a vapp
#
# ==== Parameters
@@ -28,7 +27,6 @@ module Fog
:path => "vApp/#{vapp_id}/power/action/powerOn"
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/power_reset.rb b/lib/fog/terremark/requests/shared/power_reset.rb
index e4e7476..a443227 100644
--- a/lib/fog/terremark/requests/shared/power_reset.rb
+++ b/lib/fog/terremark/requests/shared/power_reset.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Reset a vapp
#
# ==== Parameters
@@ -28,7 +27,6 @@ module Fog
:path => "vApp/#{vapp_id}/power/action/reset"
)
end
-
end
end
end
diff --git a/lib/fog/terremark/requests/shared/power_shutdown.rb b/lib/fog/terremark/requests/shared/power_shutdown.rb
index ecfa978..0c94665 100644
--- a/lib/fog/terremark/requests/shared/power_shutdown.rb
+++ b/lib/fog/terremark/requests/shared/power_shutdown.rb
@@ -2,7 +2,6 @@ module Fog
module Terremark
module Shared
module Real
-
# Shutdown a vapp
#
# ==== Parameters
@@ -17,7 +16,6 @@ module Fog
:path => "vApp/#{vapp_id}/power/action/shutdown"
)
end
-
end
end
end
diff --git a/lib/fog/terremark/shared.rb b/lib/fog/terremark/shared.rb
index b5e709c..f002ca9 100644
--- a/lib/fog/terremark/shared.rb
+++ b/lib/fog/terremark/shared.rb
@@ -1,10 +1,8 @@
module Fog
module Terremark
module Shared
-
# Commond methods shared by Real and Mock
module Common
-
def default_organization_id
@default_organization_id ||= begin
org_list = get_organizations.body['OrgList']
@@ -15,11 +13,9 @@ module Fog
end
end
end
-
end
module Parser
-
def parse(data)
case data['type']
when 'application/vnd.vmware.vcloud.vApp+xml'
@@ -28,7 +24,6 @@ module Fog
data
end
end
-
end
module Real
@@ -91,7 +86,6 @@ module Fog
:path => path
})
end
-
end
module Mock
@@ -305,7 +299,6 @@ module Fog
require 'fog/terremark/requests/shared/power_reset'
require 'fog/terremark/requests/shared/power_shutdown'
end
-
end
end
end
diff --git a/lib/fog/terremark/vcloud.rb b/lib/fog/terremark/vcloud.rb
index 2486367..8351351 100644
--- a/lib/fog/terremark/vcloud.rb
+++ b/lib/fog/terremark/vcloud.rb
@@ -1,7 +1,6 @@
module Fog
module Terremark
module Vcloud
-
module Bin
end
@@ -33,7 +32,6 @@ module Fog
end
class Real
-
include Fog::Terremark::Shared::Real
include Fog::Terremark::Shared::Parser
@@ -125,11 +123,7 @@ module Fog
def reset_data
self.class.data.delete(@terremark_username)
end
-
end
-
end
end
end
-
-
diff --git a/lib/fog/vcloud/compute.rb b/lib/fog/vcloud/compute.rb
index 1ce57af..95b0d81 100644
--- a/lib/fog/vcloud/compute.rb
+++ b/lib/fog/vcloud/compute.rb
@@ -3,7 +3,6 @@ require 'fog/vcloud/core'
module Fog
module Vcloud
class Collection < Fog::Collection
-
def load(objects)
objects = [ objects ] if objects.is_a?(Hash)
super
@@ -27,7 +26,6 @@ module Fog
raise Fog::Errors::Error.new(msg)
end
end
-
end
end
end
@@ -35,7 +33,6 @@ end
module Fog
module Vcloud
class Model < Fog::Model
-
attr_accessor :loaded
alias_method :loaded?, :loaded
@@ -64,7 +61,6 @@ module Fog
end
EOS
end
-
end
end
end
@@ -72,7 +68,6 @@ end
module Fog
module Vcloud
class Compute < Fog::Service
-
BASE_PATH = '/api'
DEFAULT_VERSION = '1.5'
SUPPORTED_VERSIONS = [ '1.5', '1.0' ]
@@ -142,17 +137,13 @@ module Fog
request :configure_vm_customization_script
class Mock
-
def initialize(options={})
Fog::Mock.not_implemented
end
-
end
class Real
-
class << self
-
def basic_request(*args)
self.class_eval <<-EOS, __FILE__,__LINE__
def #{args[0]}(uri)
@@ -270,7 +261,6 @@ module Fog
end
end
-
def basic_request_params(uri,*args)
{
:expects => args[0] || 200,
@@ -352,7 +342,6 @@ module Fog
response
end
-
end
def self.item_requests(*types)
types.each{|t| item_request(t) }
diff --git a/lib/fog/vcloud/core.rb b/lib/fog/vcloud/core.rb
index 3527156..7722fd2 100644
--- a/lib/fog/vcloud/core.rb
+++ b/lib/fog/vcloud/core.rb
@@ -2,10 +2,8 @@ require 'fog/core'
module Fog
module Vcloud
-
extend Fog::Provider
service(:compute, 'Compute')
-
end
end
diff --git a/lib/fog/vcloud/examples/README.md b/lib/fog/vcloud/examples/README.md
index a58c193..8644dbe 100644
--- a/lib/fog/vcloud/examples/README.md
+++ b/lib/fog/vcloud/examples/README.md
@@ -2,7 +2,7 @@
_contributor @singhgarima_
For more information about fog [README](/README.md), or visit their website
-[fog.io](www.fog.io).
+[fog.io](http://fog.io).
## Vcloud API
diff --git a/lib/fog/vcloud/models/compute/catalog.rb b/lib/fog/vcloud/models/compute/catalog.rb
index 69ba1e0..42f513d 100644
--- a/lib/fog/vcloud/models/compute/catalog.rb
+++ b/lib/fog/vcloud/models/compute/catalog.rb
@@ -2,7 +2,6 @@ module Fog
module Vcloud
class Compute
class Catalog < Fog::Vcloud::Model
-
identity :href, :aliases => :Href
attribute :links, :aliases => :Link, :type => :array
ignore_attributes :xmlns, :xmlns_i, :xmlns_xsi, :xmlns_xsd
@@ -15,7 +14,6 @@ module Fog
new( :service => service,
:href => href )
end
-
end
end
end
diff --git a/lib/fog/vcloud/models/compute/catalog_item.rb b/lib/fog/vcloud/models/compute/catalog_item.rb
index da0fb09..c63088f 100644
--- a/lib/fog/vcloud/models/compute/catalog_item.rb
+++ b/lib/fog/vcloud/models/compute/catalog_item.rb
@@ -2,7 +2,6 @@ module Fog
module Vcloud
class Compute
class CatalogItem < Fog::Vcloud::Model
-
identity :href, :aliases => :Href
attribute :links, :aliases => :Link, :type => :array
ignore_attributes :xmlns, :xmlns_i, :xmlns_xsi, :xmlns_xsd
diff --git a/lib/fog/vcloud/models/compute/catalog_items.rb b/lib/fog/vcloud/models/compute/catalog_items.rb
index 6b7b43a..3609f45 100644
--- a/lib/fog/vcloud/models/compute/catalog_items.rb
+++ b/lib/fog/vcloud/models/compute/catalog_items.rb
@@ -2,7 +2,6 @@ module Fog
module Vcloud
class Compute
class CatalogItems < Fog::Vcloud::Collection
-
undef_method :create
model Fog::Vcloud::Compute::CatalogItem
@@ -29,7 +28,6 @@ module Fog
def organization_uri
@organization_uri ||= service.default_organization_uri
end
-
end
end
end
diff --git a/lib/fog/vcloud/models/compute/catalogs.rb b/lib/fog/vcloud/models/compute/catalogs.rb
index cd73b19..7877fdc 100644
--- a/lib/fog/vcloud/models/compute/catalogs.rb
+++ b/lib/fog/vcloud/models/compute/catalogs.rb
@@ -4,7 +4,6 @@ module Fog
module Vcloud
class Compute
class Catalogs < Fog::Vcloud::Collection
-
model Fog::Vcloud::Compute::Catalog
attribute :organization_uri
@@ -23,15 +22,14 @@ module Fog
def item_by_name(name)
res = nil
- items = all.collect { |catalog| catalog.catalog_items }
+ items = all.map { |catalog| catalog.catalog_items }
items.each do |i|
- i.collect do |ii|
+ i.map do |ii|
res = ii if ii.name == name
end
end
res
end
-
end
end
end
diff --git a/lib/fog/vcloud/models/compute/ip.rb b/lib/fog/vcloud/models/compute/ip.rb
index 39287b8..9492563 100644
--- a/lib/fog/vcloud/models/compute/ip.rb
+++ b/lib/fog/vcloud/models/compute/ip.rb
@@ -2,7 +2,6 @@ module Fog
module Vcloud
class Compute
class Ip < Fog::Vcloud::Model
-
identity :href, :aliases => :Href
attribute :links, :aliases => :Link, :type => :array
ignore_attributes :xmlns, :xmlns_i, :xmlns_xsi, :xmlns_xsd
@@ -35,7 +34,6 @@ module Fog
:server => server
}
end
-
end
end
end
diff --git a/lib/fog/vcloud/models/compute/ips.rb b/lib/fog/vcloud/models/compute/ips.rb
index b09c942..8633652 100644
--- a/lib/fog/vcloud/models/compute/ips.rb
+++ b/lib/fog/vcloud/models/compute/ips.rb
@@ -4,7 +4,6 @@ module Fog
module Vcloud
class Compute
class Ips < Fog::Vcloud::Collection
-
model Fog::Vcloud::Compute::Ip
undef_method :create
@@ -26,7 +25,6 @@ module Fog
rescue Fog::Errors::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/vcloud/models/compute/network.rb b/lib/fog/vcloud/models/compute/network.rb
index fe8d817..6b76b33 100644
--- a/lib/fog/vcloud/models/compute/network.rb
+++ b/lib/fog/vcloud/models/compute/network.rb
@@ -2,7 +2,6 @@ module Fog
module Vcloud
class Compute
class Network < Fog::Vcloud::Model
-
identity :href, :aliases => :Href
attribute :links, :aliases => :Link, :type => :array
ignore_attributes :xmlns, :xmlns_i, :xmlns_xsi, :xmlns_xsd
diff --git a/lib/fog/vcloud/models/compute/networks.rb b/lib/fog/vcloud/models/compute/networks.rb
index fba7766..4ed5e98 100644
--- a/lib/fog/vcloud/models/compute/networks.rb
+++ b/lib/fog/vcloud/models/compute/networks.rb
@@ -3,9 +3,7 @@ require 'fog/vcloud/models/compute/network'
module Fog
module Vcloud
class Compute
-
class Networks < Fog::Vcloud::Collection
-
undef_method :create
model Fog::Vcloud::Compute::Network
@@ -23,7 +21,7 @@ module Fog
data = service.get_organization(self.href).links.select{|l| l[:type] == network_type_id }
elsif self.href =~ /\/vApp\//
check_href!("Vapp")
- data = [(service.get_vapp(self.href).network_configs||{})[:NetworkConfig]].flatten.compact.collect{|n| n[:Configuration][:ParentNetwork] unless n[:Configuration].nil? }.compact
+ data = [(service.get_vapp(self.href).network_configs||{})[:NetworkConfig]].flatten.compact.map{|n| n[:Configuration][:ParentNetwork] unless n[:Configuration].nil? }.compact
end
load([*data]) unless data.nil?
end
diff --git a/lib/fog/vcloud/models/compute/organization.rb b/lib/fog/vcloud/models/compute/organization.rb
index 699ddb0..e8cf2fd 100644
--- a/lib/fog/vcloud/models/compute/organization.rb
+++ b/lib/fog/vcloud/models/compute/organization.rb
@@ -2,7 +2,6 @@ module Fog
module Vcloud
class Compute
class Organization < Fog::Vcloud::Model
-
identity :href, :aliases => :Href
attribute :links, :aliases => :Link, :type => :array
ignore_attributes :xmlns, :xmlns_i, :xmlns_xsi, :xmlns_xsd
@@ -36,7 +35,6 @@ module Fog
new( :service => service,
:href => href )
end
-
end
end
end
diff --git a/lib/fog/vcloud/models/compute/organizations.rb b/lib/fog/vcloud/models/compute/organizations.rb
index 939bab9..381f30b 100644
--- a/lib/fog/vcloud/models/compute/organizations.rb
+++ b/lib/fog/vcloud/models/compute/organizations.rb
@@ -3,9 +3,7 @@ require 'fog/vcloud/models/compute/organization'
module Fog
module Vcloud
class Compute
-
class Organizations < Collection
-
model Fog::Vcloud::Compute::Organization
undef_method :create
diff --git a/lib/fog/vcloud/models/compute/server.rb b/lib/fog/vcloud/models/compute/server.rb
index 029384b..0c9a07e 100644
--- a/lib/fog/vcloud/models/compute/server.rb
+++ b/lib/fog/vcloud/models/compute/server.rb
@@ -3,7 +3,6 @@ module Fog
module Vcloud
class Compute
class Server < Fog::Vcloud::Model
-
include Fog::Vcloud::Compute::Helpers::Status
identity :href, :aliases => :Href
@@ -59,7 +58,7 @@ module Fog
def ip_addresses
load_unless_loaded!
- [self.network_connections].flatten.collect{|n| n[:IpAddress] }
+ [self.network_connections].flatten.map{|n| n[:IpAddress] }
end
def ready?
@@ -100,6 +99,7 @@ module Fog
attributes[:name] = new_name
@changed = true
end
+
def password
guest_customization[:AdminPassword]
end
@@ -109,6 +109,7 @@ module Fog
@changed = true
@update_password = password
end
+
def cpus
if cpu_mess
{ :count => cpu_mess[:"rasd:VirtualQuantity"].to_i,
@@ -137,14 +138,17 @@ module Fog
@update_memory_value = amount
amount
end
+
def network
network_connections[:NetworkConnection] if network_connections
end
+
def network=(network_info)
@changed = true
@update_network = network_info
network_info
end
+
def disks
disk_mess.map do |dm|
{ :number => dm[:"rasd:AddressOnParent"].to_i, :size => dm[:"rasd:HostResource"][:vcloud_capacity].to_i, :resource => dm[:"rasd:HostResource"], :disk_data => dm }
@@ -271,7 +275,7 @@ module Fog
sleep 2 # API lies. need to give it some time to be happy.
service.delete_vapp(href).body[:status] == "running"
end
- alias :delete :destroy
+ alias_method :delete, :destroy
private
@@ -297,14 +301,14 @@ module Fog
def memory_mess
load_unless_loaded!
if virtual_hardware
- virtual_hardware.detect { |item| item[:"rasd:ResourceType"] == "4" }
+ virtual_hardware.find { |item| item[:"rasd:ResourceType"] == "4" }
end
end
def cpu_mess
load_unless_loaded!
if virtual_hardware
- virtual_hardware.detect { |item| item[:"rasd:ResourceType"] == "3" }
+ virtual_hardware.find { |item| item[:"rasd:ResourceType"] == "3" }
end
end
diff --git a/lib/fog/vcloud/models/compute/servers.rb b/lib/fog/vcloud/models/compute/servers.rb
index b98570a..ffdb1d1 100644
--- a/lib/fog/vcloud/models/compute/servers.rb
+++ b/lib/fog/vcloud/models/compute/servers.rb
@@ -3,9 +3,7 @@ require 'fog/vcloud/models/compute/server'
module Fog
module Vcloud
class Compute
-
class Servers < Fog::Vcloud::Collection
-
undef_method :create
model Fog::Vcloud::Compute::Server
@@ -45,7 +43,6 @@ module Fog
:collection => Fog::Vcloud::Compute::Vapps.new(:service => service)
)
end
-
end
end
end
diff --git a/lib/fog/vcloud/models/compute/tags.rb b/lib/fog/vcloud/models/compute/tags.rb
index 7b209de..52968fc 100644
--- a/lib/fog/vcloud/models/compute/tags.rb
+++ b/lib/fog/vcloud/models/compute/tags.rb
@@ -3,9 +3,7 @@ require 'fog/vcloud/models/compute/tag'
module Fog
module Vcloud
class Compute
-
class Tags < Fog::Vcloud::Collection
-
undef_method :create
model Fog::Vcloud::Compute::Tag
diff --git a/lib/fog/vcloud/models/compute/task.rb b/lib/fog/vcloud/models/compute/task.rb
index 2f8c1f6..9ee9a38 100644
--- a/lib/fog/vcloud/models/compute/task.rb
+++ b/lib/fog/vcloud/models/compute/task.rb
@@ -2,7 +2,6 @@ module Fog
module Vcloud
class Compute
class Task < Fog::Vcloud::Model
-
identity :href, :aliases => :Href
attribute :links, :aliases => :Link, :type => :array
ignore_attributes :xmlns, :xmlns_i, :xmlns_xsi, :xmlns_xsd
@@ -14,7 +13,6 @@ module Fog
attribute :start_time, :aliases => :startTime, :type => :time
attribute :end_time, :aliases => :endTime, :type => :time
attribute :error, :aliases => :Error
-
end
end
end
diff --git a/lib/fog/vcloud/models/compute/tasks.rb b/lib/fog/vcloud/models/compute/tasks.rb
index 61ba10c..fc9b13a 100644
--- a/lib/fog/vcloud/models/compute/tasks.rb
+++ b/lib/fog/vcloud/models/compute/tasks.rb
@@ -3,9 +3,7 @@ require 'fog/vcloud/models/compute/task'
module Fog
module Vcloud
class Compute
-
class Tasks < Fog::Vcloud::Collection
-
model Fog::Vcloud::Compute::Task
attribute :href, :aliases => :Href
@@ -23,7 +21,6 @@ module Fog
rescue Fog::Errors::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/vcloud/models/compute/vapp.rb b/lib/fog/vcloud/models/compute/vapp.rb
index 30d40cc..3bb2ee3 100644
--- a/lib/fog/vcloud/models/compute/vapp.rb
+++ b/lib/fog/vcloud/models/compute/vapp.rb
@@ -3,7 +3,6 @@ module Fog
module Vcloud
class Compute
class Vapp < Fog::Vcloud::Model
-
include Fog::Vcloud::Compute::Helpers::Status
identity :href, :aliases => :Href
diff --git a/lib/fog/vcloud/models/compute/vapps.rb b/lib/fog/vcloud/models/compute/vapps.rb
index 0aeac91..bc1ca50 100644
--- a/lib/fog/vcloud/models/compute/vapps.rb
+++ b/lib/fog/vcloud/models/compute/vapps.rb
@@ -3,9 +3,7 @@ require 'fog/vcloud/models/compute/vapp'
module Fog
module Vcloud
class Compute
-
class Vapps < Collection
-
model Fog::Vcloud::Compute::Vapp
undef_method :create
@@ -21,7 +19,6 @@ module Fog
rescue Fog::Errors::NotFound
nil
end
-
end
end
end
diff --git a/lib/fog/vcloud/models/compute/vdc.rb b/lib/fog/vcloud/models/compute/vdc.rb
index 59757b9..1ccf3f5 100644
--- a/lib/fog/vcloud/models/compute/vdc.rb
+++ b/lib/fog/vcloud/models/compute/vdc.rb
@@ -2,7 +2,6 @@ module Fog
module Vcloud
class Compute
class Vdc < Fog::Vcloud::Model
-
identity :href, :aliases => :Href
attribute :links, :aliases => :Link, :type => :array
ignore_attributes :xmlns, :xmlns_i, :xmlns_xsi, :xmlns_xsd
@@ -34,7 +33,6 @@ module Fog
:href => href
)
end
-
end
end
end
diff --git a/lib/fog/vcloud/models/compute/vdcs.rb b/lib/fog/vcloud/models/compute/vdcs.rb
index fd0418a..cd891c7 100644
--- a/lib/fog/vcloud/models/compute/vdcs.rb
+++ b/lib/fog/vcloud/models/compute/vdcs.rb
@@ -3,9 +3,7 @@ require 'fog/vcloud/models/compute/vdc'
module Fog
module Vcloud
class Compute
-
class Vdcs < Collection
-
model Fog::Vcloud::Compute::Vdc
undef_method :create
diff --git a/lib/fog/vcloud/requests/compute/clone_vapp.rb b/lib/fog/vcloud/requests/compute/clone_vapp.rb
index ac80756..5cde07a 100644
--- a/lib/fog/vcloud/requests/compute/clone_vapp.rb
+++ b/lib/fog/vcloud/requests/compute/clone_vapp.rb
@@ -2,10 +2,9 @@ module Fog
module Vcloud
class Compute
class Real
-
def validate_clone_vapp_options(options)
valid_opts = [:name, :poweron]
- unless valid_opts.all? { |opt| options.has_key?(opt) }
+ unless valid_opts.all? { |opt| options.key?(opt) }
raise ArgumentError.new("Required data missing: #{(valid_opts - options.keys).map(&:inspect).join(", ")}")
end
end
@@ -19,7 +18,7 @@ module Fog
end
def clone_vapp(vdc_uri, vapp_uri, options = {})
- unless options.has_key?(:poweron)
+ unless options.key?(:poweron)
options[:poweron] = "false"
end
diff --git a/lib/fog/vcloud/requests/compute/configure_metadata.rb b/lib/fog/vcloud/requests/compute/configure_metadata.rb
index f47de80..dc9e081 100644
--- a/lib/fog/vcloud/requests/compute/configure_metadata.rb
+++ b/lib/fog/vcloud/requests/compute/configure_metadata.rb
@@ -2,10 +2,9 @@ module Fog
module Vcloud
class Compute
class Real
-
def configure_metadata(opts= {})
valid_opts = [:key, :value, :href]
- unless valid_opts.all? { |opt| opts.has_key?(opt) }
+ unless valid_opts.all? { |opt| opts.key?(opt) }
raise ArgumentError.new("Required data missing: #{(valid_opts - opts.keys).map(&:inspect).join(", ")}")
end
@@ -29,7 +28,6 @@ EOF
:parse => true
)
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/configure_network.rb b/lib/fog/vcloud/requests/compute/configure_network.rb
index 1ff1759..f7bee9e 100644
--- a/lib/fog/vcloud/requests/compute/configure_network.rb
+++ b/lib/fog/vcloud/requests/compute/configure_network.rb
@@ -2,10 +2,9 @@ module Fog
module Vcloud
class Compute
class Real
-
def validate_network_data(network_data, configure=false)
valid_opts = [:id, :href, :name, :address, :broadcast, :gateway]
- unless valid_opts.all? { |opt| network_data.has_key?(opt) }
+ unless valid_opts.all? { |opt| network_data.key?(opt) }
raise ArgumentError.new("Required data missing: #{(valid_opts - network_data.keys).map(&:inspect).join(", ")}")
end
end
@@ -36,7 +35,6 @@ module Fog
builder.GatewayAddress(network_data[:gateway])
}
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/configure_network_ip.rb b/lib/fog/vcloud/requests/compute/configure_network_ip.rb
index 121d4fb..6a00874 100644
--- a/lib/fog/vcloud/requests/compute/configure_network_ip.rb
+++ b/lib/fog/vcloud/requests/compute/configure_network_ip.rb
@@ -6,7 +6,7 @@ module Fog
def validate_network_ip_data(network_ip_data)
valid_opts = [:id, :href, :name, :status, :server]
- unless valid_opts.all? { |opt| network_ip_data.has_key?(opt) }
+ unless valid_opts.all? { |opt| network_ip_data.key?(opt) }
raise ArgumentError.new("Required data missing: #{(valid_opts - network_ip_data.keys).map(&:inspect).join(", ")}")
end
end
diff --git a/lib/fog/vcloud/requests/compute/configure_node.rb b/lib/fog/vcloud/requests/compute/configure_node.rb
index 90325bc..9257717 100644
--- a/lib/fog/vcloud/requests/compute/configure_node.rb
+++ b/lib/fog/vcloud/requests/compute/configure_node.rb
@@ -13,7 +13,6 @@ module Fog
builder.Description(node_data[:description])
}
end
-
end
class Real
@@ -31,7 +30,6 @@ module Fog
:parse => true
)
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/configure_org_network.rb b/lib/fog/vcloud/requests/compute/configure_org_network.rb
index 133ccaa..cab6f21 100644
--- a/lib/fog/vcloud/requests/compute/configure_org_network.rb
+++ b/lib/fog/vcloud/requests/compute/configure_org_network.rb
@@ -3,7 +3,6 @@ module Fog
module Vcloud
class Compute
class Real
-
def generate_outbound_rule()
outbound_rule = <<EOF
<ns0:FirewallRule>
@@ -23,6 +22,7 @@ module Fog
EOF
outbound_rule
end
+
def generate_tcp_rules(tcp_ports)
firewall_rules = ""
tcp_ports.each do |port|
@@ -70,7 +70,6 @@ EOF
end
def generate_configure_org_network_request(vapp_id, vapp_network, vapp_network_uri, org_network, org_network_uri, enable_firewall=false, portmap=nil)
-
firewall_body = ""
if not enable_firewall
firewall_body = "<ns0:IsEnabled>false</ns0:IsEnabled>"
@@ -138,4 +137,3 @@ EOF
end
end
end
-
diff --git a/lib/fog/vcloud/requests/compute/configure_vapp.rb b/lib/fog/vcloud/requests/compute/configure_vapp.rb
index 748d5ba..0f754c1 100644
--- a/lib/fog/vcloud/requests/compute/configure_vapp.rb
+++ b/lib/fog/vcloud/requests/compute/configure_vapp.rb
@@ -6,7 +6,7 @@ module Fog
def validate_vapp_data(vapp_data)
valid_opts = [:name, :cpus, :memory, :disks]
- unless valid_opts.all? { |opt| vapp_data.has_key?(opt) }
+ unless valid_opts.all? { |opt| vapp_data.key?(opt) }
raise ArgumentError.new("Required Vapp data missing: #{(valid_opts - vapp_data.keys).map(&:inspect).join(", ")}")
end
end
@@ -46,7 +46,7 @@ module Fog
add_disk_numbers.each do |number|
new_disk = real_disks.first.dup
new_disk.at('.//xmlns:AddressOnParent', rasd_xmlns).content = -1
- new_disk.at('.//xmlns:VirtualQuantity', rasd_xmlns).content = vapp_data[:disks].detect { |disk| disk[:number].to_s == number.to_s }[:size]
+ new_disk.at('.//xmlns:VirtualQuantity', rasd_xmlns).content = vapp_data[:disks].find { |disk| disk[:number].to_s == number.to_s }[:size]
real_disks.first.parent << new_disk
end
end
@@ -105,7 +105,6 @@ module Fog
:parse => true
)
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/configure_vm.rb b/lib/fog/vcloud/requests/compute/configure_vm.rb
index 5154647..db2d0b7 100644
--- a/lib/fog/vcloud/requests/compute/configure_vm.rb
+++ b/lib/fog/vcloud/requests/compute/configure_vm.rb
@@ -6,7 +6,7 @@ module Fog
def validate_vm_data(vm_data)
valid_opts = [:name, :cpus, :memory, :disks]
- unless valid_opts.all? { |opt| vm_data.has_key?(opt) }
+ unless valid_opts.all? { |opt| vm_data.key?(opt) }
raise ArgumentError.new("Required vm data missing: #{(valid_opts - vm_data.keys).map(&:inspect).join(", ")}")
end
end
@@ -62,8 +62,6 @@ module Fog
}
end
-
-
# builder.Item(:xmlns => 'http://schemas.dmtf.org/ovf/envelope/1') {
# #builder.Item {
# builder.InstanceID(1, :xmlns => 'http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData')
@@ -102,7 +100,6 @@ module Fog
:parse => true
)
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/configure_vm_cpus.rb b/lib/fog/vcloud/requests/compute/configure_vm_cpus.rb
index e755b37..7ea89dd 100644
--- a/lib/fog/vcloud/requests/compute/configure_vm_cpus.rb
+++ b/lib/fog/vcloud/requests/compute/configure_vm_cpus.rb
@@ -3,7 +3,6 @@ module Fog
module Vcloud
class Compute
class Real
-
def configure_vm_cpus(vm_data)
edit_uri = vm_data.select {|k,v| k == :Link && v[:rel] == 'edit'}
edit_uri = edit_uri.kind_of?(Array) ? edit_uri.flatten[1][:href] : edit_uri[:Link][:href]
@@ -30,9 +29,7 @@ EOF
:parse => true
)
end
-
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/configure_vm_customization_script.rb b/lib/fog/vcloud/requests/compute/configure_vm_customization_script.rb
index 021e0d3..4b68612 100644
--- a/lib/fog/vcloud/requests/compute/configure_vm_customization_script.rb
+++ b/lib/fog/vcloud/requests/compute/configure_vm_customization_script.rb
@@ -3,7 +3,6 @@ module Fog
module Vcloud
class Compute
class Real
-
def configure_vm_customization_script(vmdata)
edit_uri = vmdata[:href]
body = <<EOF
@@ -25,9 +24,7 @@ EOF
:parse => true
)
end
-
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/configure_vm_disks.rb b/lib/fog/vcloud/requests/compute/configure_vm_disks.rb
index b61713b..1d733b1 100644
--- a/lib/fog/vcloud/requests/compute/configure_vm_disks.rb
+++ b/lib/fog/vcloud/requests/compute/configure_vm_disks.rb
@@ -28,15 +28,10 @@
# </Item>
# </RasdItemsList>
-
-
-
-
module Fog
module Vcloud
class Compute
class Real
-
def generate_configure_vm_disks_request(href, disk_data)
xmlns = {
"xmlns:rasd" => "http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData",
@@ -66,7 +61,7 @@ module Fog
add_disk_numbers.each do |number|
new_disk = real_disks.first.dup
new_disk.at('.//rasd:AddressOnParent', xmlns).content = number.to_i #-1
- new_disk.at('.//rasd:HostResource', xmlns)["vcloud:capacity"] = disk_data.detect { |disk| disk[:'rasd:AddressOnParent'].to_s == number.to_s }[:'rasd:HostResource'][:vcloud_capacity].to_s
+ new_disk.at('.//rasd:HostResource', xmlns)["vcloud:capacity"] = disk_data.find { |disk| disk[:'rasd:AddressOnParent'].to_s == number.to_s }[:'rasd:HostResource'][:vcloud_capacity].to_s
# nokogiri bug? shouldn't need to add this explicitly.
new_disk.at('.//rasd:HostResource', xmlns)["xmlns:vcloud"] = xmlns['xmlns']
new_disk.at('.//rasd:InstanceID', xmlns).content = (2000 + number.to_i).to_s
@@ -92,9 +87,7 @@ module Fog
:parse => true
)
end
-
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/configure_vm_memory.rb b/lib/fog/vcloud/requests/compute/configure_vm_memory.rb
index ebd2411..c75f536 100644
--- a/lib/fog/vcloud/requests/compute/configure_vm_memory.rb
+++ b/lib/fog/vcloud/requests/compute/configure_vm_memory.rb
@@ -3,7 +3,6 @@ module Fog
module Vcloud
class Compute
class Real
-
def configure_vm_memory(vm_data)
edit_uri = vm_data.select {|k,v| k == :Link && v[:rel] == 'edit'}
edit_uri = edit_uri.kind_of?(Array) ? edit_uri.flatten[1][:href] : edit_uri[:Link][:href]
@@ -31,9 +30,7 @@ EOF
:parse => true
)
end
-
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/configure_vm_name_description.rb b/lib/fog/vcloud/requests/compute/configure_vm_name_description.rb
index 898d71e..5665efa 100644
--- a/lib/fog/vcloud/requests/compute/configure_vm_name_description.rb
+++ b/lib/fog/vcloud/requests/compute/configure_vm_name_description.rb
@@ -3,9 +3,7 @@ module Fog
module Vcloud
class Compute
class Real
-
def configure_vm_name_description(edit_href, name, description)
-
body = <<EOF
<?xml version="1.0" encoding="UTF-8"?>
<VApp xmlns="http://www.vmware.com/vcloud/v1" name="#{name}" type="application/vnd.vmware.vcloud.vApp+xml">
@@ -22,9 +20,7 @@ EOF
:parse => true
)
end
-
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/configure_vm_network.rb b/lib/fog/vcloud/requests/compute/configure_vm_network.rb
index 5d18ddb..e1f1158 100644
--- a/lib/fog/vcloud/requests/compute/configure_vm_network.rb
+++ b/lib/fog/vcloud/requests/compute/configure_vm_network.rb
@@ -3,7 +3,6 @@ module Fog
module Vcloud
class Compute
class Real
-
def configure_vm_network(network_info)
edit_uri = network_info.select {|k,v| k == :Link && v[:rel] == 'edit'}
edit_uri = edit_uri.kind_of?(Array) ? edit_uri.flatten[1][:href] : edit_uri[:Link][:href]
@@ -28,9 +27,7 @@ EOF
:parse => true
)
end
-
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/configure_vm_password.rb b/lib/fog/vcloud/requests/compute/configure_vm_password.rb
index 426e851..d17d313 100644
--- a/lib/fog/vcloud/requests/compute/configure_vm_password.rb
+++ b/lib/fog/vcloud/requests/compute/configure_vm_password.rb
@@ -3,7 +3,6 @@ module Fog
module Vcloud
class Compute
class Real
-
def configure_vm_password(vmdata)
edit_uri = vmdata[:href]
body = <<EOF
@@ -31,9 +30,7 @@ EOF
:parse => true
)
end
-
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/delete_metadata.rb b/lib/fog/vcloud/requests/compute/delete_metadata.rb
index dfea3a5..ccbcff8 100644
--- a/lib/fog/vcloud/requests/compute/delete_metadata.rb
+++ b/lib/fog/vcloud/requests/compute/delete_metadata.rb
@@ -1,7 +1,6 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :delete_metadata, 202, "DELETE"
end
diff --git a/lib/fog/vcloud/requests/compute/delete_node.rb b/lib/fog/vcloud/requests/compute/delete_node.rb
index 59dc11f..abd3ef0 100644
--- a/lib/fog/vcloud/requests/compute/delete_node.rb
+++ b/lib/fog/vcloud/requests/compute/delete_node.rb
@@ -1,7 +1,6 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :delete_node, 200, 'DELETE', {}, ""
end
diff --git a/lib/fog/vcloud/requests/compute/delete_vapp.rb b/lib/fog/vcloud/requests/compute/delete_vapp.rb
index 4d008b8..cc10399 100644
--- a/lib/fog/vcloud/requests/compute/delete_vapp.rb
+++ b/lib/fog/vcloud/requests/compute/delete_vapp.rb
@@ -1,7 +1,6 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :delete_vapp, 202, "DELETE"
end
diff --git a/lib/fog/vcloud/requests/compute/get_catalog.rb b/lib/fog/vcloud/requests/compute/get_catalog.rb
index d72c078..84f2a2f 100644
--- a/lib/fog/vcloud/requests/compute/get_catalog.rb
+++ b/lib/fog/vcloud/requests/compute/get_catalog.rb
@@ -1,7 +1,6 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :get_catalog
end
diff --git a/lib/fog/vcloud/requests/compute/get_catalog_item.rb b/lib/fog/vcloud/requests/compute/get_catalog_item.rb
index 827c2f9..21d74a0 100644
--- a/lib/fog/vcloud/requests/compute/get_catalog_item.rb
+++ b/lib/fog/vcloud/requests/compute/get_catalog_item.rb
@@ -1,7 +1,6 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :get_catalog_item
end
diff --git a/lib/fog/vcloud/requests/compute/get_customization_options.rb b/lib/fog/vcloud/requests/compute/get_customization_options.rb
index 4b4e1e2..420fa64 100644
--- a/lib/fog/vcloud/requests/compute/get_customization_options.rb
+++ b/lib/fog/vcloud/requests/compute/get_customization_options.rb
@@ -1,7 +1,6 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :get_customization_options
end
diff --git a/lib/fog/vcloud/requests/compute/get_metadata.rb b/lib/fog/vcloud/requests/compute/get_metadata.rb
index 5f585d9..9ca2fed 100644
--- a/lib/fog/vcloud/requests/compute/get_metadata.rb
+++ b/lib/fog/vcloud/requests/compute/get_metadata.rb
@@ -1,7 +1,6 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :get_metadata
end
diff --git a/lib/fog/vcloud/requests/compute/get_network.rb b/lib/fog/vcloud/requests/compute/get_network.rb
index 7a967fc..fbd2d29 100644
--- a/lib/fog/vcloud/requests/compute/get_network.rb
+++ b/lib/fog/vcloud/requests/compute/get_network.rb
@@ -1,7 +1,6 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :get_network
end
diff --git a/lib/fog/vcloud/requests/compute/get_network_extensions.rb b/lib/fog/vcloud/requests/compute/get_network_extensions.rb
index 1660ae2..16a153c 100644
--- a/lib/fog/vcloud/requests/compute/get_network_extensions.rb
+++ b/lib/fog/vcloud/requests/compute/get_network_extensions.rb
@@ -1,11 +1,9 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :get_network_extensions
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/get_network_ip.rb b/lib/fog/vcloud/requests/compute/get_network_ip.rb
index f2b5fdc..929ac3c 100644
--- a/lib/fog/vcloud/requests/compute/get_network_ip.rb
+++ b/lib/fog/vcloud/requests/compute/get_network_ip.rb
@@ -5,11 +5,9 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :get_network_ip
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/get_network_ips.rb b/lib/fog/vcloud/requests/compute/get_network_ips.rb
index a569d93..11f91ac 100644
--- a/lib/fog/vcloud/requests/compute/get_network_ips.rb
+++ b/lib/fog/vcloud/requests/compute/get_network_ips.rb
@@ -5,11 +5,9 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :get_network_ips
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/get_organization.rb b/lib/fog/vcloud/requests/compute/get_organization.rb
index 8d5c2e3..1985cc8 100644
--- a/lib/fog/vcloud/requests/compute/get_organization.rb
+++ b/lib/fog/vcloud/requests/compute/get_organization.rb
@@ -1,11 +1,9 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :get_organization
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/get_server.rb b/lib/fog/vcloud/requests/compute/get_server.rb
index 633684f..5cc5f77 100644
--- a/lib/fog/vcloud/requests/compute/get_server.rb
+++ b/lib/fog/vcloud/requests/compute/get_server.rb
@@ -1,7 +1,6 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :get_server
end
diff --git a/lib/fog/vcloud/requests/compute/get_task.rb b/lib/fog/vcloud/requests/compute/get_task.rb
index 2a6b8b8..f58b6e9 100644
--- a/lib/fog/vcloud/requests/compute/get_task.rb
+++ b/lib/fog/vcloud/requests/compute/get_task.rb
@@ -1,11 +1,9 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :get_task
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/get_task_list.rb b/lib/fog/vcloud/requests/compute/get_task_list.rb
index 9dbb5d3..a5e9521 100644
--- a/lib/fog/vcloud/requests/compute/get_task_list.rb
+++ b/lib/fog/vcloud/requests/compute/get_task_list.rb
@@ -1,11 +1,9 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :get_task_list
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/get_vapp.rb b/lib/fog/vcloud/requests/compute/get_vapp.rb
index 5b87374..dd460bd 100644
--- a/lib/fog/vcloud/requests/compute/get_vapp.rb
+++ b/lib/fog/vcloud/requests/compute/get_vapp.rb
@@ -1,7 +1,6 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :get_vapp
end
diff --git a/lib/fog/vcloud/requests/compute/get_vapp_template.rb b/lib/fog/vcloud/requests/compute/get_vapp_template.rb
index 72f5560..2865bed 100644
--- a/lib/fog/vcloud/requests/compute/get_vapp_template.rb
+++ b/lib/fog/vcloud/requests/compute/get_vapp_template.rb
@@ -1,11 +1,9 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :get_vapp_template
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/get_vdc.rb b/lib/fog/vcloud/requests/compute/get_vdc.rb
index 2c26be7..49999de 100644
--- a/lib/fog/vcloud/requests/compute/get_vdc.rb
+++ b/lib/fog/vcloud/requests/compute/get_vdc.rb
@@ -1,7 +1,6 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :get_vdc
end
diff --git a/lib/fog/vcloud/requests/compute/get_vm_disks.rb b/lib/fog/vcloud/requests/compute/get_vm_disks.rb
index 9b56f18..49cc489 100644
--- a/lib/fog/vcloud/requests/compute/get_vm_disks.rb
+++ b/lib/fog/vcloud/requests/compute/get_vm_disks.rb
@@ -1,7 +1,6 @@
module Fog
module Vcloud
class Compute
-
class Real
def get_vm_disks(href)
request(
diff --git a/lib/fog/vcloud/requests/compute/get_vm_memory.rb b/lib/fog/vcloud/requests/compute/get_vm_memory.rb
index 374fbe7..f69c05c 100644
--- a/lib/fog/vcloud/requests/compute/get_vm_memory.rb
+++ b/lib/fog/vcloud/requests/compute/get_vm_memory.rb
@@ -1,7 +1,6 @@
module Fog
module Vcloud
class Compute
-
class Real
def get_vm_memory(href, parse = true)
request(
diff --git a/lib/fog/vcloud/requests/compute/instantiate_vapp_template.rb b/lib/fog/vcloud/requests/compute/instantiate_vapp_template.rb
index 86de2ec..b2a71e0 100644
--- a/lib/fog/vcloud/requests/compute/instantiate_vapp_template.rb
+++ b/lib/fog/vcloud/requests/compute/instantiate_vapp_template.rb
@@ -7,7 +7,7 @@ module Fog
def validate_instantiate_vapp_template_options options
# :network_uri removed, if not specified will use template network config.
valid_opts = [:catalog_item_uri, :name, :vdc_uri]
- unless valid_opts.all? { |opt| options.has_key?(opt) }
+ unless valid_opts.all? { |opt| options.key?(opt) }
raise ArgumentError.new("Required data missing: #{(valid_opts - options.keys).map(&:inspect).join(", ")}")
end
@@ -19,7 +19,7 @@ module Fog
catalog_item[:Link] = [ catalog_item[:Link] ] if catalog_item[:Link].is_a?(Hash)
options[:template_uri] = begin
- catalog_item[:Entity].detect { |entity| entity[:type] == "application/vnd.vmware.vcloud.vAppTemplate+xml" }[:href]
+ catalog_item[:Entity].find { |entity| entity[:type] == "application/vnd.vmware.vcloud.vAppTemplate+xml" }[:href]
rescue
raise RuntimeError.new("Unable to locate template uri for #{catalog_item_uri}")
end
diff --git a/lib/fog/vcloud/requests/compute/login.rb b/lib/fog/vcloud/requests/compute/login.rb
index da7ebdc..b7c3bdb 100644
--- a/lib/fog/vcloud/requests/compute/login.rb
+++ b/lib/fog/vcloud/requests/compute/login.rb
@@ -1,10 +1,7 @@
module Fog
module Vcloud
class Compute
-
class Real
-
-
def login
headers = { 'Authorization' => authorization_header }
uri = if version == '1.0'
@@ -20,7 +17,6 @@ module Fog
:uri => uri
})
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/power_off.rb b/lib/fog/vcloud/requests/compute/power_off.rb
index a742dcc..fb85da2 100644
--- a/lib/fog/vcloud/requests/compute/power_off.rb
+++ b/lib/fog/vcloud/requests/compute/power_off.rb
@@ -1,7 +1,6 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :power_off, 202, 'POST'
end
diff --git a/lib/fog/vcloud/requests/compute/power_on.rb b/lib/fog/vcloud/requests/compute/power_on.rb
index 3b76deb..aefeeed 100644
--- a/lib/fog/vcloud/requests/compute/power_on.rb
+++ b/lib/fog/vcloud/requests/compute/power_on.rb
@@ -1,11 +1,9 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :power_on, 202, 'POST'
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/power_reset.rb b/lib/fog/vcloud/requests/compute/power_reset.rb
index 78942a9..960f319 100644
--- a/lib/fog/vcloud/requests/compute/power_reset.rb
+++ b/lib/fog/vcloud/requests/compute/power_reset.rb
@@ -1,11 +1,9 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :power_reset, 202, 'POST'
end
-
end
end
end
diff --git a/lib/fog/vcloud/requests/compute/power_shutdown.rb b/lib/fog/vcloud/requests/compute/power_shutdown.rb
index 0bb1e2c..197fae5 100644
--- a/lib/fog/vcloud/requests/compute/power_shutdown.rb
+++ b/lib/fog/vcloud/requests/compute/power_shutdown.rb
@@ -1,11 +1,9 @@
module Fog
module Vcloud
class Compute
-
class Real
basic_request :power_shutdown, 204, 'POST'
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/README.md b/lib/fog/vcloud_director/README.md
index 892ec75..0d314c2 100644
--- a/lib/fog/vcloud_director/README.md
+++ b/lib/fog/vcloud_director/README.md
@@ -953,3 +953,4 @@ template.instantiate('webserver', {
network_id: "d5f47bbf-de27-4cf5-aaaa-56772f2ccd17"
}
```
+
diff --git a/lib/fog/vcloud_director/compute.rb b/lib/fog/vcloud_director/compute.rb
index 24e4183..0eac32a 100644
--- a/lib/fog/vcloud_director/compute.rb
+++ b/lib/fog/vcloud_director/compute.rb
@@ -1,4 +1,5 @@
require 'fog/vcloud_director/core'
+require 'fog/vcloud_director/query'
class VcloudDirectorParser < Fog::Parsers::Base
def extract_attributes(attributes_xml)
@@ -24,7 +25,6 @@ end
module Fog
module Compute
class VcloudDirector < Fog::Service
-
module Defaults
PATH = '/api'
PORT = 443
@@ -55,6 +55,8 @@ module Fog
collection :organizations
model :catalog_item
collection :catalog_items
+ model :custom_field
+ collection :custom_fields
model :vdc
collection :vdcs
model :vapp
@@ -204,6 +206,7 @@ module Fog
request :post_configure_edge_gateway_services
request :post_consolidate_vm_vapp
request :post_consolidate_vm_vapp_template
+ request :post_create_catalog_item
request :post_create_org_vdc_network
request :post_deploy_vapp
request :post_detach_disk
@@ -245,7 +248,9 @@ module Fog
request :put_media_metadata_item_metadata
request :put_memory
request :put_metadata_value # deprecated
+ request :put_network
request :put_network_connection_system_section_vapp
+ request :put_product_sections
request :put_vapp_metadata_item_metadata
request :put_vapp_name_and_description
request :put_vapp_template_metadata_item_metadata
@@ -305,7 +310,7 @@ module Fog
end
def get_by_name(item_name)
- item_found = item_list.detect {|item| item[:name] == item_name}
+ item_found = item_list.find {|item| item[:name] == item_name}
return nil unless item_found
get(item_found[:id])
end
@@ -365,7 +370,7 @@ module Fog
def request(params)
begin
do_request(params)
- rescue Excon::Errors::SocketError::EOFError
+ rescue EOFError
# This error can occur if Vcloud receives a request from a network
# it deems to be unauthorized; no HTTP response is sent, but the
# connection is sent a signal to terminate early.
@@ -457,13 +462,18 @@ module Fog
def login
if @vcloud_token = ENV['FOG_VCLOUD_TOKEN']
response = get_current_session
+ session_org = response.body[:org]
+ session_user = response.body[:user]
+
+ check_session_matches_credentials(session_org, session_user)
else
response = post_login_session
- x_vcloud_authorization = response.headers.keys.detect do |key|
+ x_vcloud_authorization = response.headers.keys.find do |key|
key.downcase == 'x-vcloud-authorization'
end
@vcloud_token = response.headers[x_vcloud_authorization]
end
+
@org_name = response.body[:org]
@user_name = response.body[:user]
end
@@ -475,6 +485,20 @@ module Fog
@org_name = nil
end
+ def check_session_matches_credentials(session_org, session_user)
+ fog_credential_org = @vcloud_director_username.split('@').last
+ fog_credential_user = @vcloud_director_username.split('@')[0...-1].join
+
+ if session_org != fog_credential_org
+ raise Fog::Errors::Error.new "FOG_CREDENTIAL specified is for vCloud organisation '#{fog_credential_org}' but " +
+ "your current session is for '#{session_org}'. You should generate a new FOG_VCLOUD_TOKEN."
+ end
+
+ if session_user != fog_credential_user
+ raise Fog::Errors::Error.new "FOG_CREDENTIAL specified is for user '#{fog_credential_user}' but " +
+ "your current session is for '#{session_user}'. You should generate a new FOG_VCLOUD_TOKEN."
+ end
+ end
end
class Mock
@@ -489,17 +513,24 @@ module Fog
uplink_network_uuid = uuid
isolated_vdc1_network_uuid = uuid
isolated_vdc2_network_uuid = uuid
+ vapp1_id = "vapp-#{uuid}"
+ vapp2_id = "vapp-#{uuid}"
+ vapp1vm1_id = "vm-#{uuid}"
+ vapp2vm1_id = "vm-#{uuid}"
+ vapp2vm2_id = "vm-#{uuid}"
+ catalog_uuid = uuid
hash[key] = {
:catalogs => {
- uuid => {
+ catalog_uuid => {
:name => 'Default Catalog'
}
},
:catalog_items => {
uuid => {
- :type => 'vAppTemplate',
- :name => 'vAppTemplate 1'
+ :type => 'vAppTemplate',
+ :name => 'vAppTemplate 1',
+ :catalog => catalog_uuid,
}
},
:disks => {},
@@ -547,7 +578,7 @@ module Fog
}],
:IsInherited => false,
:Netmask => '255.255.255.0',
- :name => 'Default Network',
+ :name => 'vDC1 Default Network',
:SubnetParticipation => {
:Gateway => "192.168.1.0",
:Netmask => "255.255.0.0",
@@ -645,6 +676,26 @@ module Fog
:uuid => uuid
},
:tasks => {},
+
+ :vapps => {
+ vapp1_id => {
+ :name => 'mock-vapp-1',
+ :vdc_id => vdc1_uuid,
+ :description => "Mock vApp 1",
+ :networks => [
+ { :parent_id => default_network_uuid, },
+ ],
+ },
+ vapp2_id => {
+ :name => 'mock-vapp-2',
+ :vdc_id => vdc2_uuid,
+ :description => "Mock vApp 2",
+ :networks => [
+ { :parent_id => default_network_uuid },
+ ]
+ },
+ },
+
:vdc_storage_classes => {
uuid => {
:default => true,
@@ -655,6 +706,7 @@ module Fog
:vdc => vdc1_uuid,
}
},
+
:vdcs => {
vdc1_uuid => {
:description => 'vDC1 for mocking',
@@ -664,7 +716,44 @@ module Fog
:description => 'vDC2 for mocking',
:name => 'MockVDC 2'
},
- }
+ },
+
+ :vms => {
+ vapp1vm1_id => {
+ :name => 'mock-vm-1-1',
+ :parent_vapp => vapp1_id,
+ :nics => [
+ {
+ :network_name => 'Default Network',
+ :mac_address => "00:50:56:aa:bb:01",
+ :ip_address => "192.168.1.33",
+ },
+ ],
+ },
+ vapp2vm1_id => {
+ :name => 'mock-vm-2-1',
+ :parent_vapp => vapp2_id,
+ :nics => [
+ {
+ :network_name => 'Default Network',
+ :mac_address => "00:50:56:aa:bb:02",
+ :ip_address => "192.168.1.34",
+ },
+ ],
+ },
+ vapp2vm2_id => {
+ :name => 'mock-vm-2-2',
+ :parent_vapp => vapp2_id,
+ :nics => [
+ {
+ :network_name => 'Default Network',
+ :mac_address => "00:50:56:aa:bb:03",
+ :ip_address => "192.168.1.35",
+ },
+ ],
+ },
+ },
+
}
end[@vcloud_director_username]
end
@@ -735,6 +824,7 @@ module Fog
:progress => 1,
:service_namespace => 'com.vmware.vcloud',
:start_time => now,
+ :end_time => now + 86400,
:status => 'running',
}.merge(options).merge(
:operation => operation,
@@ -790,7 +880,6 @@ module Fog
def xsi_schema_location
"http://www.vmware.com/vcloud/v1.5 http://#{@host}#{@path}/v1.5/schema/master.xsd"
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/core.rb b/lib/fog/vcloud_director/core.rb
index 6315e7c..c0c0a7b 100644
--- a/lib/fog/vcloud_director/core.rb
+++ b/lib/fog/vcloud_director/core.rb
@@ -24,7 +24,7 @@ module Fog
if error.response
status_code = error.response.status
unless error.response.body.empty?
- _, media_type = error.response.headers.detect {|k,v| k.downcase == 'content-type'}
+ _, media_type = error.response.headers.find {|k,v| k.downcase == 'content-type'}
if media_type =~ /vnd\.vmware\.vcloud\.error\+xml/i
begin
document = Fog::ToHashDocument.new
diff --git a/lib/fog/vcloud_director/generators/compute/disks.rb b/lib/fog/vcloud_director/generators/compute/disks.rb
index aac2083..4b375e2 100644
--- a/lib/fog/vcloud_director/generators/compute/disks.rb
+++ b/lib/fog/vcloud_director/generators/compute/disks.rb
@@ -173,7 +173,7 @@ module Fog
names = hard_disks.map{|item| item[:name] }
only_numbers = names.map{|b| b.scan(/\d+/).first.to_i} # extract numbers
last_number = only_numbers.sort.last # get the last number
- hard_disks.detect{|hard_disk| hard_disk[:name] =~ /#{last_number}$/ }
+ hard_disks.find{|hard_disk| hard_disk[:name] =~ /#{last_number}$/ }
end
def increase_hard_disk_name(hard_disk_name)
diff --git a/lib/fog/vcloud_director/generators/compute/edge_gateway_service_configuration.rb b/lib/fog/vcloud_director/generators/compute/edge_gateway_service_configuration.rb
index effa0a6..4c51cdd 100644
--- a/lib/fog/vcloud_director/generators/compute/edge_gateway_service_configuration.rb
+++ b/lib/fog/vcloud_director/generators/compute/edge_gateway_service_configuration.rb
@@ -13,12 +13,74 @@ module Fog
build_firewall_service(xml)
build_nat_service(xml)
build_load_balancer_service(xml)
+ build_vpn(xml)
+ build_dhcp(xml)
+ build_static_routing_service(xml)
}
end.to_xml
end
private
+ def build_dhcp(xml)
+ dhcp_config = @configuration[:GatewayDhcpService]
+ return unless dhcp_config
+
+ xml.GatewayDhcpService {
+ xml.IsEnabled dhcp_config[:IsEnabled] if dhcp_config.key?(:IsEnabled)
+ dhcp_config[:pools].each do |pool|
+ xml.Pool {
+ xml.IsEnabled pool[:IsEnabled]
+ xml.Network pool[:Network]
+ xml.DefaultLeaseTime pool[:DefaultLeaseTime]
+ xml.MaxLeaseTime pool[:MaxLeaseTime]
+ xml.LowIpAddress pool[:LowIpAddress]
+ xml.HighIpAddress pool[:HighIpAddress]
+ }
+ end
+ }
+ end
+
+ def build_vpn(xml)
+ vpn_config = @configuration[:GatewayIpsecVpnService]
+ return unless vpn_config
+
+ xml.GatewayIpsecVpnService {
+ xml.IsEnabled vpn_config[:IsEnabled] if vpn_config.key?(:IsEnabled)
+ tunnel_config = vpn_config[:Tunnel]
+ xml.Tunnel {
+ xml.Name tunnel_config[:Name]
+ xml.Description tunnel_config[:Description]
+ xml.IpsecVpnLocalPeer {
+ xml.Id tunnel_config[:IpsecVpnLocalPeerId]
+ xml.Name tunnel_config[:IpsecVpnLocalPeerName]
+ }
+ xml.PeerIpAddress tunnel_config[:PeerIpAddress]
+ xml.PeerId tunnel_config[:PeerId]
+ xml.LocalIpAddress tunnel_config[:LocalIpAddress]
+ xml.LocalId tunnel_config[:LocalId]
+ tunnel_config[:LocalSubnet].each do |subnet|
+ xml.LocalSubnet {
+ xml.Name subnet[:Name]
+ xml.Gateway subnet[:Gateway]
+ xml.Netmask subnet[:Netmask]
+ }
+ end
+ peer_subnet_config = tunnel_config[:PeerSubnet]
+ xml.PeerSubnet {
+ xml.Name peer_subnet_config[:Name]
+ xml.Gateway peer_subnet_config[:Gateway]
+ xml.Netmask peer_subnet_config[:Netmask]
+ }
+ xml.SharedSecret tunnel_config[:SharedSecret]
+ xml.SharedSecretEncrypted tunnel_config[:SharedSecretEncrypted] if tunnel_config.key?(:SharedSecretEncrypted)
+ xml.EncryptionProtocol tunnel_config[:EncryptionProtocol]
+ xml.Mtu tunnel_config[:Mtu]
+ xml.IsEnabled tunnel_config[:IsEnabled]
+ }
+ }
+ end
+
def build_load_balancer_service(xml)
lb_config = @configuration[:LoadBalancerService]
return unless lb_config
@@ -116,6 +178,27 @@ module Fog
}
end
+ def build_static_routing_service(xml)
+ routing_config = @configuration[:StaticRoutingService]
+ return unless routing_config
+
+ xml.StaticRoutingService {
+ xml.IsEnabled routing_config[:IsEnabled]
+ routing_config[:StaticRoute].each do |rule|
+ xml.StaticRoute{
+ xml.Name rule[:Name]
+ xml.Network rule[:Network]
+ xml.NextHopIp rule[:NextHopIp]
+ xml.GatewayInterface(
+ :type => rule[:GatewayInterface][:type],
+ :name => rule[:GatewayInterface][:name],
+ :href => rule[:GatewayInterface][:href]
+ )
+ }
+ end
+ }
+ end
+
def build_firewall_service(xml)
firewall_config = @configuration[:FirewallService]
return unless firewall_config
@@ -151,7 +234,6 @@ module Fog
end
}
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/generators/compute/org_vdc_network.rb b/lib/fog/vcloud_director/generators/compute/org_vdc_network.rb
index 9e3017d..3de7eb0 100644
--- a/lib/fog/vcloud_director/generators/compute/org_vdc_network.rb
+++ b/lib/fog/vcloud_director/generators/compute/org_vdc_network.rb
@@ -2,7 +2,6 @@ module Fog
module Generators
module Compute
module VcloudDirector
-
# @see http://pubs.vmware.com/vcd-51/topic/com.vmware.vcloud.api.reference.doc_51/doc/types/OrgVdcNetworkType.html
class OrgVdcNetwork
attr_reader :options
@@ -12,7 +11,6 @@ module Fog
end
def generate_xml
-
body = Nokogiri::XML::Builder.new do
attrs = {
:xmlns => 'http://www.vmware.com/vcloud/v1.5',
@@ -83,7 +81,6 @@ module Fog
}
end.to_xml
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/generators/compute/vapp.rb b/lib/fog/vcloud_director/generators/compute/vapp.rb
index 7dad183..061ab75 100644
--- a/lib/fog/vcloud_director/generators/compute/vapp.rb
+++ b/lib/fog/vcloud_director/generators/compute/vapp.rb
@@ -2,7 +2,6 @@ module Fog
module Generators
module Compute
module VcloudDirector
-
# @see http://pubs.vmware.com/vcd-51/topic/com.vmware.vcloud.api.reference.doc_51/doc/types/VAppType.html
class Vapp
attr_reader :name, :options
@@ -22,7 +21,6 @@ module Fog
}
end.to_xml
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/generators/compute/vm.rb b/lib/fog/vcloud_director/generators/compute/vm.rb
index 38d5aee..a84ee28 100644
--- a/lib/fog/vcloud_director/generators/compute/vm.rb
+++ b/lib/fog/vcloud_director/generators/compute/vm.rb
@@ -2,7 +2,6 @@ module Fog
module Generators
module Compute
module VcloudDirector
-
# @see http://pubs.vmware.com/vcd-51/topic/com.vmware.vcloud.api.reference.doc_51/doc/types/VmType.html
class Vm
attr_reader :attrs
diff --git a/lib/fog/vcloud_director/models/compute/catalog.rb b/lib/fog/vcloud_director/models/compute/catalog.rb
index 9c5b57f..673c3ed 100644
--- a/lib/fog/vcloud_director/models/compute/catalog.rb
+++ b/lib/fog/vcloud_director/models/compute/catalog.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class VcloudDirector
-
class Catalog < Model
-
identity :id
attribute :name
@@ -18,7 +16,6 @@ module Fog
requires :id
service.catalog_items(:catalog => self)
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/catalog_item.rb b/lib/fog/vcloud_director/models/compute/catalog_item.rb
index b99be16..3e222ae 100644
--- a/lib/fog/vcloud_director/models/compute/catalog_item.rb
+++ b/lib/fog/vcloud_director/models/compute/catalog_item.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class VcloudDirector
-
class CatalogItem < Model
-
identity :id
attribute :name
@@ -19,7 +17,6 @@ module Fog
service.process_task(response.body[:Tasks][:Task])
response.body[:href].split('/').last # returns the vapp_id if it was instantiated successfully .
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/catalog_items.rb b/lib/fog/vcloud_director/models/compute/catalog_items.rb
index 2ed850b..06351f5 100644
--- a/lib/fog/vcloud_director/models/compute/catalog_items.rb
+++ b/lib/fog/vcloud_director/models/compute/catalog_items.rb
@@ -4,7 +4,6 @@ require 'fog/vcloud_director/models/compute/catalog_item'
module Fog
module Compute
class VcloudDirector
-
class CatalogItems < Collection
model Fog::Compute::VcloudDirector::CatalogItem
diff --git a/lib/fog/vcloud_director/models/compute/catalogs.rb b/lib/fog/vcloud_director/models/compute/catalogs.rb
index 7fe07c5..d632554 100644
--- a/lib/fog/vcloud_director/models/compute/catalogs.rb
+++ b/lib/fog/vcloud_director/models/compute/catalogs.rb
@@ -4,7 +4,6 @@ require 'fog/vcloud_director/models/compute/catalog'
module Fog
module Compute
class VcloudDirector
-
class Catalogs < Collection
model Fog::Compute::VcloudDirector::Catalog
@@ -25,7 +24,6 @@ module Fog
items.each{|item| service.add_id_from_href!(item) }
items
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/custom_field.rb b/lib/fog/vcloud_director/models/compute/custom_field.rb
new file mode 100644
index 0000000..c27cab0
--- /dev/null
+++ b/lib/fog/vcloud_director/models/compute/custom_field.rb
@@ -0,0 +1,18 @@
+require 'fog/core/model'
+
+module Fog
+ module Compute
+ class VcloudDirector
+
+ class CustomField < Model
+
+ identity :id
+ attribute :value
+ attribute :type
+ attribute :password
+ attribute :user_configurable
+
+ end
+ end
+ end
+end
diff --git a/lib/fog/vcloud_director/models/compute/custom_fields.rb b/lib/fog/vcloud_director/models/compute/custom_fields.rb
new file mode 100644
index 0000000..d421c6c
--- /dev/null
+++ b/lib/fog/vcloud_director/models/compute/custom_fields.rb
@@ -0,0 +1,67 @@
+require 'fog/core/collection'
+require 'fog/vcloud_director/models/compute/custom_field'
+
+module Fog
+ module Compute
+ class VcloudDirector
+
+ class CustomFields < Collection
+ model Fog::Compute::VcloudDirector::CustomField
+
+ attribute :vapp
+
+ def get_by_id(item_id)
+ item_list.detect{|i| i[:id] == item_id}
+ end
+
+ def [](key)
+ get key.to_s
+ end
+
+ def set(key, value, opts={:type => 'string', :password => 'false', :user_configurable => 'true'})
+ new_items = item_list.each.reject{|item| item[:id] == key}
+ new_items << {
+ :id => key,
+ :value => value,
+ :type => opts[:type],
+ :password => opts[:password],
+ :user_configurable => opts[:user_configurable]
+ }
+ response = service.put_product_sections(vapp.id, new_items)
+ service.process_task(response.body)
+ end
+
+ def []=(key,value)
+ set(key,value)
+ end
+
+ def delete(item_id)
+ id = item_id.to_s
+ new_items = item_list.each.reject{|item| item[:id] == id}
+ response = service.put_product_sections(vapp.id, new_items)
+ service.process_task(response.body)
+ end
+
+ def item_list
+ return @items if @items
+
+ resp = service.get_product_sections_vapp(vapp.id).body
+
+ collection = resp["ovf:ProductSection".to_sym]["ovf:Property".to_sym] rescue []
+ collection = [collection] if collection.is_a?(Hash)
+
+ @items = collection.collect do |property|
+ {
+ :id => property[:ovf_key],
+ :value => property[:ovf_value],
+ :type => property[:ovf_type],
+ :password => property[:ovf_password],
+ :user_configurable => property[:ovf_userConfigurable]
+ }
+ end rescue []
+ end
+ end
+
+ end
+ end
+end
diff --git a/lib/fog/vcloud_director/models/compute/disk.rb b/lib/fog/vcloud_director/models/compute/disk.rb
index 994cc05..db41b3f 100644
--- a/lib/fog/vcloud_director/models/compute/disk.rb
+++ b/lib/fog/vcloud_director/models/compute/disk.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class VcloudDirector
-
class Disk < Model # there is no lazy_load in disks
-
identity :id
attribute :address
@@ -44,7 +42,6 @@ module Fog
response = service.put_disks(attributes[:vm].id, data.disks)
service.process_task(response.body)
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/disks.rb b/lib/fog/vcloud_director/models/compute/disks.rb
index d692f94..71e26e4 100644
--- a/lib/fog/vcloud_director/models/compute/disks.rb
+++ b/lib/fog/vcloud_director/models/compute/disks.rb
@@ -4,7 +4,6 @@ require 'fog/vcloud_director/models/compute/disk'
module Fog
module Compute
class VcloudDirector
-
class Disks < Collection
model Fog::Compute::VcloudDirector::Disk
@@ -19,7 +18,7 @@ module Fog
end
def get_by_id(item_id)
- item = item_list.detect{ |i| i[:id] == item_id}
+ item = item_list.find{ |i| i[:id] == item_id}
item.merge!(:all_disks => @disks, :vm => vm) if item
item
end
@@ -33,7 +32,6 @@ module Fog
end
items
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/media.rb b/lib/fog/vcloud_director/models/compute/media.rb
index b1830bf..71adef0 100644
--- a/lib/fog/vcloud_director/models/compute/media.rb
+++ b/lib/fog/vcloud_director/models/compute/media.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class VcloudDirector
-
class Media < Model
-
identity :id
attribute :href
@@ -22,7 +20,6 @@ module Fog
response = service.delete_media(id)
service.process_task(response.body)
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/medias.rb b/lib/fog/vcloud_director/models/compute/medias.rb
index b50e944..cd7daaf 100644
--- a/lib/fog/vcloud_director/models/compute/medias.rb
+++ b/lib/fog/vcloud_director/models/compute/medias.rb
@@ -4,7 +4,6 @@ require 'fog/vcloud_director/models/compute/media'
module Fog
module Compute
class VcloudDirector
-
class Medias < Collection
model Fog::Compute::VcloudDirector::Media
@@ -25,7 +24,7 @@ module Fog
file = response.body[:Files][:File].first
file[:Link] = [file[:Link]] if file[:Link].is_a?(Hash)
- link = file[:Link].detect {|l| l[:rel] == 'upload:default'}
+ link = file[:Link].find {|l| l[:rel] == 'upload:default'}
headers = {
'Content-Length' => io.size,
@@ -70,7 +69,6 @@ module Fog
items.each {|item| service.add_id_from_href!(item)}
items
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/network.rb b/lib/fog/vcloud_director/models/compute/network.rb
index 3245ded..4258694 100644
--- a/lib/fog/vcloud_director/models/compute/network.rb
+++ b/lib/fog/vcloud_director/models/compute/network.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class VcloudDirector
-
class Network < Model
-
identity :id
attribute :name
@@ -21,7 +19,6 @@ module Fog
attribute :dns2
attribute :dns_suffix
attribute :ip_ranges, :type => :array
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/networks.rb b/lib/fog/vcloud_director/models/compute/networks.rb
index 03bd3b1..b08cac5 100644
--- a/lib/fog/vcloud_director/models/compute/networks.rb
+++ b/lib/fog/vcloud_director/models/compute/networks.rb
@@ -4,12 +4,18 @@ require 'fog/vcloud_director/models/compute/network'
module Fog
module Compute
class VcloudDirector
-
class Networks < Collection
+
+ include Fog::VcloudDirector::Query
+
model Fog::Compute::VcloudDirector::Network
attribute :organization
+ def query_type
+ "orgVdcNetwork"
+ end
+
private
def get_by_id(item_id)
@@ -45,7 +51,6 @@ module Fog
items.each{|item| service.add_id_from_href!(item) }
items
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/organization.rb b/lib/fog/vcloud_director/models/compute/organization.rb
index aea06d3..372aec1 100644
--- a/lib/fog/vcloud_director/models/compute/organization.rb
+++ b/lib/fog/vcloud_director/models/compute/organization.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class VcloudDirector
-
class Organization < Model
-
identity :id
attribute :name
@@ -33,9 +31,7 @@ module Fog
requires :id
service.tasks(:organization => self)
end
-
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/organizations.rb b/lib/fog/vcloud_director/models/compute/organizations.rb
index 9e0af77..123728d 100644
--- a/lib/fog/vcloud_director/models/compute/organizations.rb
+++ b/lib/fog/vcloud_director/models/compute/organizations.rb
@@ -4,7 +4,6 @@ require 'fog/vcloud_director/models/compute/organization'
module Fog
module Compute
class VcloudDirector
-
class Organizations < Collection
model Fog::Compute::VcloudDirector::Organization
@@ -23,7 +22,6 @@ module Fog
orgs.each {|org| service.add_id_from_href!(org)}
orgs
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/tag.rb b/lib/fog/vcloud_director/models/compute/tag.rb
index 278003a..f1158f0 100644
--- a/lib/fog/vcloud_director/models/compute/tag.rb
+++ b/lib/fog/vcloud_director/models/compute/tag.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class VcloudDirector
-
class Tag < Model
-
identity :id
attribute :value
@@ -27,7 +25,6 @@ module Fog
def vm
attributes[:vm]
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/tags.rb b/lib/fog/vcloud_director/models/compute/tags.rb
index efe3617..d3eda89 100644
--- a/lib/fog/vcloud_director/models/compute/tags.rb
+++ b/lib/fog/vcloud_director/models/compute/tags.rb
@@ -4,7 +4,6 @@ require 'fog/vcloud_director/models/compute/tag'
module Fog
module Compute
class VcloudDirector
-
class Tags < Collection
model Fog::Compute::VcloudDirector::Tag
@@ -16,7 +15,7 @@ module Fog
def get_by_id(item_id)
item_list unless @items
- @items.detect{ |i| i[:id] == item_id}
+ @items.find{ |i| i[:id] == item_id}
end
def create(key,value)
@@ -36,7 +35,6 @@ module Fog
hash_items.each_pair{ |k,v| @items << {:id => k, :value => v }.merge(:vm => vm) }
@items
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/task.rb b/lib/fog/vcloud_director/models/compute/task.rb
index c3c3ebe..26d906d 100644
--- a/lib/fog/vcloud_director/models/compute/task.rb
+++ b/lib/fog/vcloud_director/models/compute/task.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class VcloudDirector
-
class Task < Fog::Model
-
identity :id
attribute :href
@@ -51,9 +49,7 @@ module Fog
def cancel
service.post_cancel_task(id)
end
-
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/tasks.rb b/lib/fog/vcloud_director/models/compute/tasks.rb
index 406c0c7..6227a19 100644
--- a/lib/fog/vcloud_director/models/compute/tasks.rb
+++ b/lib/fog/vcloud_director/models/compute/tasks.rb
@@ -4,12 +4,18 @@ require 'fog/vcloud_director/models/compute/task'
module Fog
module Compute
class VcloudDirector
-
class Tasks < Collection
+
+ include Fog::VcloudDirector::Query
+
model Fog::Compute::VcloudDirector::Task
attribute :organization
+ def query_type
+ "task"
+ end
+
def get(id)
data = service.get_task(id).body
return nil unless data
@@ -24,7 +30,6 @@ module Fog
data = service.get_task_list(organization.id).body
data[:Task].each {|task| service.add_id_from_href!(task)}
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/vapp.rb b/lib/fog/vcloud_director/models/compute/vapp.rb
index 879755d..e4f7add 100644
--- a/lib/fog/vcloud_director/models/compute/vapp.rb
+++ b/lib/fog/vcloud_director/models/compute/vapp.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class VcloudDirector
-
class Vapp < Model
-
identity :id
attribute :name
@@ -30,6 +28,11 @@ module Fog
service.tags(:vm => self)
end
+ def custom_fields
+ requires :id
+ service.custom_fields( :vapp => self)
+ end
+
# @param [String] action The specified action is applied to all virtual
# machines in the vApp. All values other than **default** ignore
# actions, order, and delay specified in the StartupSection. One of:
@@ -135,7 +138,6 @@ module Fog
end
service.process_task(response.body)
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/vapps.rb b/lib/fog/vcloud_director/models/compute/vapps.rb
index e094b26..fa1b42a 100644
--- a/lib/fog/vcloud_director/models/compute/vapps.rb
+++ b/lib/fog/vcloud_director/models/compute/vapps.rb
@@ -4,18 +4,25 @@ require 'fog/vcloud_director/models/compute/vapp'
module Fog
module Compute
class VcloudDirector
-
class Vapps < Collection
+
+ include Fog::VcloudDirector::Query
+
model Fog::Compute::VcloudDirector::Vapp
attribute :vdc
+ def query_type
+ "vApp"
+ end
+
private
def get_by_id(item_id)
item = service.get_vapp(item_id).body
%w(:Link).each {|key_to_delete| item.delete(key_to_delete) }
service.add_id_from_href!(item)
+ item[:Description] ||= ""
item
end
@@ -27,7 +34,6 @@ module Fog
items.each{|item| service.add_id_from_href!(item) }
items
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/vdc.rb b/lib/fog/vcloud_director/models/compute/vdc.rb
index f06eb92..42d6b61 100644
--- a/lib/fog/vcloud_director/models/compute/vdc.rb
+++ b/lib/fog/vcloud_director/models/compute/vdc.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class VcloudDirector
-
class Vdc < Model
-
identity :id
attribute :name
@@ -31,7 +29,6 @@ module Fog
requires :id
service.vapps(:vdc => self)
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/vdcs.rb b/lib/fog/vcloud_director/models/compute/vdcs.rb
index cb12dc1..a4b5606 100644
--- a/lib/fog/vcloud_director/models/compute/vdcs.rb
+++ b/lib/fog/vcloud_director/models/compute/vdcs.rb
@@ -4,12 +4,18 @@ require 'fog/vcloud_director/models/compute/vdc'
module Fog
module Compute
class VcloudDirector
-
class Vdcs < Collection
+
+ include Fog::VcloudDirector::Query
+
model Fog::Compute::VcloudDirector::Vdc
attribute :organization
+ def query_type
+ "orgVdc"
+ end
+
private
def get_by_id(item_id)
@@ -25,7 +31,6 @@ module Fog
items.each{|item| service.add_id_from_href!(item) }
items
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/vm.rb b/lib/fog/vcloud_director/models/compute/vm.rb
index 31ddb4f..736d7d5 100644
--- a/lib/fog/vcloud_director/models/compute/vm.rb
+++ b/lib/fog/vcloud_director/models/compute/vm.rb
@@ -4,7 +4,6 @@ require 'fog/vcloud_director/models/compute/vm_customization'
module Fog
module Compute
class VcloudDirector
-
class Vm < Model
identity :id
@@ -66,7 +65,6 @@ module Fog
service.process_task(response.body)
end
-
# Reboot the VM.
def reboot
requires :id
@@ -166,7 +164,6 @@ module Fog
# get_by_metadata returns a vm collection where every vapp parent is orpahn
collection.vapp ||= service.vapps.get(vapp_id)
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/vm_customization.rb b/lib/fog/vcloud_director/models/compute/vm_customization.rb
index 8dee143..3f83e6e 100644
--- a/lib/fog/vcloud_director/models/compute/vm_customization.rb
+++ b/lib/fog/vcloud_director/models/compute/vm_customization.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class VcloudDirector
-
class VmCustomization < Model
-
identity :id
attribute :type
@@ -36,7 +34,6 @@ module Fog
response = service.put_guest_customization_section_vapp(id, attributes)
service.process_task(response.body)
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/vm_customizations.rb b/lib/fog/vcloud_director/models/compute/vm_customizations.rb
index 9204003..e450e23 100644
--- a/lib/fog/vcloud_director/models/compute/vm_customizations.rb
+++ b/lib/fog/vcloud_director/models/compute/vm_customizations.rb
@@ -4,12 +4,10 @@ require 'fog/vcloud_director/models/compute/vm_customization'
module Fog
module Compute
class VcloudDirector
-
class VmCustomizations < Collection
model Fog::Compute::VcloudDirector::VmCustomization
attribute :vm
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/vm_network.rb b/lib/fog/vcloud_director/models/compute/vm_network.rb
index 206db04..3c5fb6a 100644
--- a/lib/fog/vcloud_director/models/compute/vm_network.rb
+++ b/lib/fog/vcloud_director/models/compute/vm_network.rb
@@ -3,9 +3,7 @@ require 'fog/core/model'
module Fog
module Compute
class VcloudDirector
-
class VmNetwork < Model
-
identity :id
attribute :type
@@ -23,7 +21,6 @@ module Fog
response = service.put_network_connection_system_section_vapp(id, attributes)
service.process_task(response.body)
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/vm_networks.rb b/lib/fog/vcloud_director/models/compute/vm_networks.rb
index 970036e..05504fd 100644
--- a/lib/fog/vcloud_director/models/compute/vm_networks.rb
+++ b/lib/fog/vcloud_director/models/compute/vm_networks.rb
@@ -4,7 +4,6 @@ require 'fog/vcloud_director/models/compute/vm_network'
module Fog
module Compute
class VcloudDirector
-
class VmNetworks < Collection
model Fog::Compute::VcloudDirector::VmNetwork
@@ -14,7 +13,6 @@ module Fog
data = service.get_vm_network(id).body
new(data)
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/models/compute/vms.rb b/lib/fog/vcloud_director/models/compute/vms.rb
index 4b4908c..5082e24 100644
--- a/lib/fog/vcloud_director/models/compute/vms.rb
+++ b/lib/fog/vcloud_director/models/compute/vms.rb
@@ -4,8 +4,10 @@ require 'fog/vcloud_director/models/compute/vm'
module Fog
module Compute
class VcloudDirector
-
class Vms < Collection
+
+ include Fog::VcloudDirector::Query
+
model Fog::Compute::VcloudDirector::Vm
attribute :vapp
@@ -22,10 +24,14 @@ module Fog
new(item[:vm])
end
+ def query_type
+ "vm"
+ end
+
private
def get_by_id(item_id)
- item = item_list.detect{ |vm| vm[:id] == item_id }
+ item = item_list.find{ |vm| vm[:id] == item_id }
item
end
@@ -34,7 +40,6 @@ module Fog
items = data[:vms]
items
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/parsers/compute/disks.rb b/lib/fog/vcloud_director/parsers/compute/disks.rb
index 0c29163..a83af0a 100644
--- a/lib/fog/vcloud_director/parsers/compute/disks.rb
+++ b/lib/fog/vcloud_director/parsers/compute/disks.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module VcloudDirector
-
class Disks < VcloudDirectorParser
-
def reset
@disk = {}
@response = { :disks => [] }
@@ -48,9 +46,7 @@ module Fog
@disk = {}
end
end
-
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/parsers/compute/metadata.rb b/lib/fog/vcloud_director/parsers/compute/metadata.rb
index a2293b4..9b826b6 100644
--- a/lib/fog/vcloud_director/parsers/compute/metadata.rb
+++ b/lib/fog/vcloud_director/parsers/compute/metadata.rb
@@ -29,7 +29,6 @@ module Fog
# :id=>"vm-18545e82-d919-4071-ae7e-d1300d9d8112"}
#
class Metadata < VcloudDirectorParser
-
def reset
@response = { :metadata => {} }
end
@@ -55,7 +54,6 @@ module Fog
@response[:metadata].merge!(Hash[@key, @val])
end
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/parsers/compute/network.rb b/lib/fog/vcloud_director/parsers/compute/network.rb
index 7ea9db8..b14108f 100644
--- a/lib/fog/vcloud_director/parsers/compute/network.rb
+++ b/lib/fog/vcloud_director/parsers/compute/network.rb
@@ -63,7 +63,6 @@ module Fog
#</OrgNetwork>
#
class Network < VcloudDirectorParser
-
def reset
@response = { :ip_ranges => [] }
@ip_range = {}
@@ -98,7 +97,6 @@ module Fog
@ip_range = {}
end
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/parsers/compute/vm.rb b/lib/fog/vcloud_director/parsers/compute/vm.rb
index f9d2512..a00e3f3 100644
--- a/lib/fog/vcloud_director/parsers/compute/vm.rb
+++ b/lib/fog/vcloud_director/parsers/compute/vm.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module VcloudDirector
-
class Vm < VcloudDirectorParser
-
def reset
@in_operating_system = false
@in_children = false
@@ -58,7 +56,6 @@ module Fog
when 'Link'
@response[:vm][:links] = @links
end
-
end
def human_status(status)
@@ -73,9 +70,7 @@ module Fog
'unknown'
end
end
-
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/parsers/compute/vm_customization.rb b/lib/fog/vcloud_director/parsers/compute/vm_customization.rb
index a9f88a1..868fbdb 100644
--- a/lib/fog/vcloud_director/parsers/compute/vm_customization.rb
+++ b/lib/fog/vcloud_director/parsers/compute/vm_customization.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module VcloudDirector
-
class VmCustomization < VcloudDirectorParser
-
def reset
@response = { }
end
@@ -49,9 +47,7 @@ module Fog
@response[:customization_script] = CGI::unescapeHTML(value) if @response[:has_customization_script]
end
end
-
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/parsers/compute/vm_network.rb b/lib/fog/vcloud_director/parsers/compute/vm_network.rb
index 832d16d..e071021 100644
--- a/lib/fog/vcloud_director/parsers/compute/vm_network.rb
+++ b/lib/fog/vcloud_director/parsers/compute/vm_network.rb
@@ -63,7 +63,6 @@ module Fog
#</OrgNetwork>
#
class VmNetwork < VcloudDirectorParser
-
def reset
@response = { }
end
@@ -101,7 +100,6 @@ module Fog
@response[:ip_address_allocation_mode] = value
end
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/parsers/compute/vms.rb b/lib/fog/vcloud_director/parsers/compute/vms.rb
index 0e6cba7..11ecd0f 100644
--- a/lib/fog/vcloud_director/parsers/compute/vms.rb
+++ b/lib/fog/vcloud_director/parsers/compute/vms.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module VcloudDirector
-
class Vms < VcloudDirectorParser
-
def reset
@vm = { :ip_address => '' }
@in_operating_system = false
@@ -72,7 +70,6 @@ module Fog
@vm = {}
end
end
-
end
def human_status(status)
@@ -87,9 +84,7 @@ module Fog
'unknown'
end
end
-
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/parsers/compute/vms_by_metadata.rb b/lib/fog/vcloud_director/parsers/compute/vms_by_metadata.rb
index 8f452ea..28a36a1 100644
--- a/lib/fog/vcloud_director/parsers/compute/vms_by_metadata.rb
+++ b/lib/fog/vcloud_director/parsers/compute/vms_by_metadata.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module VcloudDirector
-
class VmsByMetadata < VcloudDirectorParser
-
def reset
@response = { :vm_records => [] }
end
@@ -32,9 +30,7 @@ module Fog
@response[:vm_records] << results
end
end
-
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/query.rb b/lib/fog/vcloud_director/query.rb
new file mode 100644
index 0000000..db2755c
--- /dev/null
+++ b/lib/fog/vcloud_director/query.rb
@@ -0,0 +1,59 @@
+require 'pp'
+module Fog
+ module VcloudDirector
+ module Query
+
+ def find_by_query(options={})
+ type = options.fetch(:type) { self.query_type }
+
+ results = get_all_results(type, options)
+ data = results.map do |query_record|
+ model_data = {}
+ model_data[:id] = query_record[:href].split('/').last
+ model_data[:name] = query_record.fetch(:name) if query_record.key?(:name)
+ if self.methods.include?(:populate_model_from_query_record)
+ model_data.merge(self.populate_model_from_query_record(query_record))
+ else
+ model_data
+ end
+ end
+ load(data)
+ end
+
+ private
+
+ def get_all_results(type, options)
+ results = []
+ if options.key?(:page)
+ page_range = [ Integer(options[:page]) ]
+ else
+ page_range = (1..get_num_pages(type, options))
+ end
+ page_range.each do |page|
+ results += get_results_page(page, type, options) || []
+ end
+ results
+ end
+
+ def get_num_pages(type, options)
+ body = service.get_execute_query(type, options)
+ last_page = body[:lastPage] || 1
+ raise "Invalid lastPage (#{last_page}) in query results" unless last_page.is_a? Integer
+ last_page.to_i
+ end
+
+ def get_results_page(page, type, options)
+ body = service.get_execute_query(type, options.merge({:page=>page})).body
+
+ record_key = key_of_first_record_or_reference(body)
+ body[record_key] = [body[record_key]] if body[record_key].is_a?(Hash)
+ body[record_key]
+ end
+
+ def key_of_first_record_or_reference(body)
+ body.keys.detect { |key| key.to_s =~ /Record|Reference$/ }
+ end
+
+ end
+ end
+end
diff --git a/lib/fog/vcloud_director/requests/compute/delete_network.rb b/lib/fog/vcloud_director/requests/compute/delete_network.rb
index 18c9d93..9d7b6c3 100644
--- a/lib/fog/vcloud_director/requests/compute/delete_network.rb
+++ b/lib/fog/vcloud_director/requests/compute/delete_network.rb
@@ -27,7 +27,6 @@ module Fog
class Mock
def delete_network(id)
-
unless data[:networks][id]
raise Fog::Compute::VcloudDirector::Forbidden.new(
"No access to entity \"(com.vmware.vcloud.entity.orgVdcNetwork:#{id})\""
@@ -57,7 +56,6 @@ module Fog
:body => body
)
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_catalogs_from_query.rb b/lib/fog/vcloud_director/requests/compute/get_catalogs_from_query.rb
index 26b1abf..8dcdda1 100644
--- a/lib/fog/vcloud_director/requests/compute/get_catalogs_from_query.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_catalogs_from_query.rb
@@ -78,7 +78,7 @@ module Fog
:CatalogReference : :CatalogRecord
%w[firstPage previousPage nextPage lastPage].each do |rel|
- if link = response.body[:Link].detect {|l| l[:rel] == rel}
+ if link = response.body[:Link].find {|l| l[:rel] == rel}
href = Nokogiri::XML.fragment(link[:href])
query = CGI.parse(URI.parse(href.text).query)
response.body[rel.to_sym] = query['page'].first.to_i
diff --git a/lib/fog/vcloud_director/requests/compute/get_cpu_rasd_item.rb b/lib/fog/vcloud_director/requests/compute/get_cpu_rasd_item.rb
index 68a473a..8d79cd1 100644
--- a/lib/fog/vcloud_director/requests/compute/get_cpu_rasd_item.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_cpu_rasd_item.rb
@@ -22,7 +22,44 @@ module Fog
:path => "vApp/#{id}/virtualHardwareSection/cpu"
)
end
+
end
+
+ class Mock
+
+ def get_cpu_rasd_item(id)
+ type = 'application/vnd.vmware.vcloud.rasdItem+xml'
+
+ unless vm = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{type};version=#{api_version}"},
+ :body => get_cpu_rasd_item_body(id, vm)
+ )
+ end
+
+ def get_cpu_rasd_item_body(id, vm)
+ {
+ :ns12_href => make_href("vApp/#{id}/virtualHardwareSection/cpu"),
+ :ns12_type => "application/vnd.vmware.vcloud.rasdItem+xml",
+ :"rasd:AllocationUnits"=>"hertz * 10^6",
+ :"rasd:Description"=>"Number of Virtual CPUs",
+ :"rasd:ElementName"=>"#{vm[:cpu_count]} virtual CPU(s)",
+ :"rasd:InstanceID"=>"4",
+ :"rasd:Reservation"=>"0",
+ :"rasd:ResourceType"=>"3",
+ :"rasd:VirtualQuantity"=>"#{vm[:cpu_count]}",
+ :"rasd:Weight"=>"0",
+ }
+ end
+
+ end
+
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_disks_from_query.rb b/lib/fog/vcloud_director/requests/compute/get_disks_from_query.rb
index 4c72d61..f84d60e 100644
--- a/lib/fog/vcloud_director/requests/compute/get_disks_from_query.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_disks_from_query.rb
@@ -78,7 +78,7 @@ module Fog
:DiskReference : :DiskRecord
%w[firstPage previousPage nextPage lastPage].each do |rel|
- if link = response.body[:Link].detect {|l| l[:rel] == rel}
+ if link = response.body[:Link].find {|l| l[:rel] == rel}
href = Nokogiri::XML.fragment(link[:href])
query = CGI.parse(URI.parse(href.text).query)
response.body[rel.to_sym] = query['page'].first.to_i
diff --git a/lib/fog/vcloud_director/requests/compute/get_disks_rasd_items_list.rb b/lib/fog/vcloud_director/requests/compute/get_disks_rasd_items_list.rb
index f3791a9..63b0e0d 100644
--- a/lib/fog/vcloud_director/requests/compute/get_disks_rasd_items_list.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_disks_rasd_items_list.rb
@@ -21,6 +21,70 @@ module Fog
)
end
end
+
+ class Mock
+
+ def get_disks_rasd_items_list(id)
+ type = 'application/vnd.vmware.vcloud.rasdItemsList+xml'
+
+ unless vm = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ body = {
+ :type => type,
+ :href => make_href("vApp/#{id}/virtualHardwareSection/disks"),
+ :Link => {
+ :rel=>"edit",
+ :type=>"application/vnd.vmware.vcloud.rasdItemsList+xml",
+ :href=>make_href("vApp/#{id}/virtualHardwareSection/disks"),
+ },
+ :Item => [
+ get_disks_rasd_items_list_body(id, vm),
+ get_media_rasd_item_ide_controller_body(id, vm),
+ ].flatten
+ }
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{type};version=#{api_version}"},
+ :body => body
+ )
+ end
+
+ def get_disks_rasd_items_list_body(id, vm)
+ [
+ {
+ :"rasd:Address"=>"0",
+ :"rasd:Description"=>"SCSI Controller",
+ :"rasd:ElementName"=>"SCSI Controller 0",
+ :"rasd:InstanceID"=>"2",
+ :"rasd:ResourceSubType"=>"lsilogic",
+ :"rasd:ResourceType"=>"6"
+ },
+
+ # TODO: Add support for adding disks
+ {
+ :"rasd:AddressOnParent"=>"0",
+ :"rasd:Description"=>"Hard disk",
+ :"rasd:ElementName"=>"Hard disk 1",
+ :"rasd:HostResource"=>{
+ :ns12_capacity=>"51200",
+ :ns12_busSubType=>"lsilogic",
+ :ns12_busType=>"6"
+ },
+ :"rasd:InstanceID"=>"2000",
+ :"rasd:Parent"=>"2",
+ :"rasd:ResourceType"=>"17"
+ },
+
+ ]
+ end
+
+ end
+
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_execute_query.rb b/lib/fog/vcloud_director/requests/compute/get_execute_query.rb
index 64d01bc..3b0ca17 100644
--- a/lib/fog/vcloud_director/requests/compute/get_execute_query.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_execute_query.rb
@@ -103,7 +103,7 @@ module Fog
# "#{response.body[:name]}Record".to_sym
%w[firstPage previousPage nextPage lastPage].each do |rel|
- if link = response.body[:Link].detect {|l| l[:rel] == rel}
+ if link = response.body[:Link].find {|l| l[:rel] == rel}
href = Nokogiri::XML.fragment(link[:href])
query = CGI.parse(URI.parse(href.text).query)
response.body[rel.to_sym] = query['page'].first.to_i
@@ -118,7 +118,6 @@ module Fog
class Mock
def get_execute_query(type=nil, options={})
-
unless options[:fields].nil?
Fog::Mock.not_implemented("Fields are not yet implemented in get_execute_query Mock for #{type}")
end
@@ -158,15 +157,17 @@ module Fog
:headers => {'Content-Type' => "#{body[:type]};version=#{api_version}"},
:body => body
)
-
end
private
def fetch_items(type, opts)
-
if opts.key?(:filter) && opts[:filter] =~ /^name==([^;,]+)$/
name = $1
+ elsif type == 'vAppTemplate' && opts.key?(:filter) &&
+ opts[:filter] =~ /^name==([^;,]+);catalogName==([^;,]+)$/ #TODO also match in other order
+ name = $1
+ catalog_name = $2
elsif opts.key?(:filter)
Fog::Mock.not_implemented("Complex filters are not yet implemented in get_execute_query Mock for #{type}: #{opts[:filter]}")
end
@@ -180,10 +181,36 @@ module Fog
:xsi_schemaLocation=>xsi_schema_location,
}
- if type == 'orgVdcNetwork'
+ records = []
+ record_type = nil
+
+ if type == 'orgVdc'
+ record_type = :OrgVdcRecord
+ vdc_id = data[:vdcs].keys[0]
+ vdc_name = data[:vdcs][vdc_id][:name]
+ records = [{
+ :storageUsedMB=>"123967",
+ :storageLimitMB=>"8388608",
+ :storageAllocationMB=>"0",
+ :status=>"READY",
+ :orgName=>"orgName",
+ :name=>vdc_name,
+ :memoryUsedMB=>"0",
+ :memoryLimitMB=>"0",
+ :memoryAllocationMB=>"0",
+ :isSystemVdc=>"false",
+ :isEnabled=>"true",
+ :isBusy=>"false",
+ :href=>make_href("vdc/#{vdc_id}"),
+ }]
+ body[:page] = 1.to_s # TODO: Support pagination
+ body[:pageSize] = records.size.to_s # TODO: Support pagination
+ body[:total] = records.size.to_s
+ body[record_type] = records
+
+ elsif type == 'orgVdcNetwork'
record_type = :OrgVdcNetworkRecords
data_type = :networks
- records = []
data[data_type].each do |id, dr|
r = {}
if name.nil? || dr[:name] == name
@@ -218,10 +245,154 @@ module Fog
body[:pageSize] = records.size.to_s # TODO: Support pagination
body[:total] = records.size.to_s
body[record_type] = records
+
+ elsif type == 'edgeGateway'
+ record_type = :EdgeGatewayRecord
+ edge_gateway_id = data[:edge_gateways].keys[0]
+ vdc_id = data[:edge_gateways][edge_gateway_id][:vdc]
+ records = [{
+ :vdc=>make_href("vdc/#{vdc_id}"),
+ :numberOfOrgNetworks=>"1",
+ :numberOfExtNetworks=>"1",
+ :name=>"Test EdgeGateway Name",
+ :isBusy=>"false",
+ :haStatus=>"DISABLED",
+ :gatewayStatus=>"READY",
+ :href=>make_href("edgeGateway/#{edge_gateway_id}"),
+ :taskStatus=>"success",
+ :taskOperation=>"networkConfigureEdgeGatewayServices",
+ :task=>make_href("task/#{uuid}"),
+ :taskDetails=>" "
+ }]
+ body[:page] = 1.to_s # TODO: Support pagination
+ body[:pageSize] = records.size.to_s # TODO: Support pagination
+ body[:total] = records.size.to_s
+ body[record_type] = records
+
+ elsif type == 'vAppTemplate'
+ record_type = :VAappTemplateRecord
+ records = [{
+ :vdcName=>"Bogus vDC",
+ :vdc=>make_href("vdc/#{uuid}"),
+ :storageProfileName=>"*",
+ :status=>"RESOLVED",
+ :ownerName=>"system",
+ :org=> make_href("org/#{data[:org][:uuid]}"),
+ :name=> name,
+ :isPublished=>"true",
+ :isGoldMaster=>"false",
+ :isExpired=>"false",
+ :isEnabled=>"true",
+ :isDeployed=>"false",
+ :isBusy=>"false",
+ :creationDate=>"2013-09-19T22:55:30.257+01:00",
+ :catalogName=> catalog_name,
+ :href=> make_href("vAppTemplate/vappTemplate-#{uuid}"),
+ :honorBootOrder=>"false",
+ :isVdcEnabled=>"true",
+ :isInCatalog=>"true",
+ :cpuAllocationMhz=>"8",
+ :cpuAllocationInMhz=>"16000",
+ :storageKB=>"52428800",
+ :numberOfShadowVMs=>"0",
+ :numberOfVMs=>"1",
+ :isAutoDeleteNotified=>"false",
+ :numberOfCpus=>"8",
+ :isAutoUndeployNotified=>"false",
+ :memoryAllocationMB=>"32768"
+ }]
+ body[:page] = 1.to_s # TODO: Support pagination
+ body[:pageSize] = records.size.to_s # TODO: Support pagination
+ body[:total] = records.size.to_s
+ body[record_type] = records
+
+ elsif type == 'vApp'
+ record_type = :VAppRecord
+ all_records = data[:vapps].map do |vapp_id, vapp|
+ {
+ :vdcName => data.fetch(:vdcs).fetch(vapp[:vdc_id]).fetch(:name),
+ :vdc => make_href("vdc/#{vapp[:vdc_id]}"),
+ :storageProfileName => "*",
+ :ownerName => "system",
+ :name => vapp.fetch(:name),
+ :status => 'POWERED_OFF',
+ :isInMaintenanceMode=> 'false',
+ :isPublic => 'false',
+ :isExpired =>"false",
+ :isEnabled =>"true",
+ :isDeployed =>"false",
+ :isBusy => "false",
+ :pvdcHighestSupportedHardwareVersion => '8',
+ :lowestHardwareVersionInVApp => '8',
+ :creationDate => "2013-09-19T22:55:30.257+01:00",
+ :href => make_href("vApp/#{vapp_id}"),
+ :honorBootOrder => "false",
+ :isVdcEnabled => "true",
+ :cpuAllocationMhz => "8",
+ :cpuAllocationInMhz => "16000",
+ :storageKB => "52428800",
+ :numberOfVMs => "1",
+ :isAutoDeleteNotified => "false",
+ :numberOfCpus => "8",
+ :isAutoUndeployNotified => "false",
+ :memoryAllocationMB => "32768",
+ :task => make_href("task/#{uuid}"),
+ :taskStatusName => 'vdcInstantiateVapp',
+ :taskStatus => 'success',
+ :taskDetails => " ",
+ }
+ end
+ records = all_records.select do |record|
+ record[:name] == name
+ end
+
+ body[:page] = 1.to_s # TODO: Support pagination
+ body[:pageSize] = records.size.to_s # TODO: Support pagination
+ body[:total] = records.size.to_s
+ body[record_type] = records
+
+ elsif type == 'task'
+
+ record_type = :TaskRecord
+ data_type = :tasks
+ data[data_type].each do |id, dr|
+ r = {}
+ if name.nil? || dr.fetch(:operation_name) == name
+ r[:name] = dr.fetch(:operation_name)
+ r[:href] = make_href("task/#{id}")
+ if dr.key?(:end_time)
+ r[:endDate] = dr.fetch(:end_time).strftime('%Y-%m-%dT%H:%M:%S%z')
+ else
+ r[:endDate] = nil
+ end
+ if dr.key?(:start_time)
+ r[:startDate] = dr.fetch(:start_time).strftime('%Y-%m-%dT%H:%M:%S%z')
+ else
+ r[:startDate] = nil
+ end
+ r[:status] = dr.fetch(:status)
+ r[:serviceNamespace] = 'com.vmware.vcloud'
+ r[:ownerName] = '000.0.000000'
+ r[:orgName] = data.fetch(:org).fetch(:name)
+ r[:org] = make_href("org/#{data[:org][:uuid]}")
+ r[:objectType] = dr.fetch(:owner).fetch(:type).split(/\./).last.split(/\+/).first
+ r[:objectName] = dr.fetch(:owner).fetch(:name, '') # objectName is optional
+ r[:object] = dr.fetch(:owner).fetch(:href)
+ r[:details] = '! []'
+
+ records << r
+ end
+ end
+
else
Fog::Mock.not_implemented("No 'get by name' get_execute_query Mock for #{type} (#{name})")
end
+ body[:page] = 1.to_s # TODO: Support pagination
+ body[:pageSize] = records.size.to_s # TODO: Support pagination
+ body[:total] = records.size.to_s
+ body[record_type] = records
+
body
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_groups_from_query.rb b/lib/fog/vcloud_director/requests/compute/get_groups_from_query.rb
index bfc883d..539e23b 100644
--- a/lib/fog/vcloud_director/requests/compute/get_groups_from_query.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_groups_from_query.rb
@@ -79,7 +79,7 @@ module Fog
:GroupReference : :GroupRecord
%w[firstPage previousPage nextPage lastPage].each do |rel|
- if link = response.body[:Link].detect {|l| l[:rel] == rel}
+ if link = response.body[:Link].find {|l| l[:rel] == rel}
href = Nokogiri::XML.fragment(link[:href])
query = CGI.parse(URI.parse(href.text).query)
response.body[rel.to_sym] = query['page'].first.to_i
diff --git a/lib/fog/vcloud_director/requests/compute/get_guest_customization_system_section_vapp.rb b/lib/fog/vcloud_director/requests/compute/get_guest_customization_system_section_vapp.rb
index fb8dfa2..c148274 100644
--- a/lib/fog/vcloud_director/requests/compute/get_guest_customization_system_section_vapp.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_guest_customization_system_section_vapp.rb
@@ -20,6 +20,50 @@ module Fog
)
end
end
+
+ class Mock
+ def get_guest_customization_system_section_vapp(id)
+
+ type = 'application/vnd.vmware.vcloud.guestCustomizationSection+xml'
+
+ unless vm = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{type};version=#{api_version}"},
+ :body => get_vm_guest_customization_section_body(id, vm)
+ )
+ end
+
+ def get_vm_guest_customization_section_body(id, vm)
+ {
+ :type => "application/vnd.vmware.vcloud.guestCustomizationSection+xml",
+ :href => make_href("vApp/#{id}/guestCustomizationSection/"),
+ :ovf_required => "false",
+ :"ovf:Info" => "Specifies Guest OS Customization Settings",
+ :Enabled => "true",
+ :ChangeSid => "false",
+ :VirtualMachineId => id.split('-').last, # strip the 'vm-' prefix
+ :JoinDomainEnabled => "false",
+ :UseOrgSettings => "false",
+ :AdminPasswordEnabled => "false",
+ :AdminPasswordAuto => "true",
+ :ResetPasswordRequired => "false",
+ :CustomizationScript => vm[:customization_script] || "",
+ :ComputerName => vm[:computer_name] || vm[:name],
+ :Link => {
+ :rel=>"edit",
+ :type=>"application/vnd.vmware.vcloud.guestCustomizationSection+xml",
+ :href=>make_href("vApp/#{id}"),
+ },
+ }
+ end
+
+ end
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_lease_settings_section_vapp.rb b/lib/fog/vcloud_director/requests/compute/get_lease_settings_section_vapp.rb
index bd36306..6ea851b 100644
--- a/lib/fog/vcloud_director/requests/compute/get_lease_settings_section_vapp.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_lease_settings_section_vapp.rb
@@ -20,6 +20,40 @@ module Fog
)
end
end
+
+ class Mock
+
+ def get_lease_settings_section_vapp(id)
+
+ type = 'application/vnd.vmware.vcloud.leaseSettingsSection+xml'
+
+ unless vapp = data[:vapps][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{type};version=#{api_version}"},
+ :body => get_vapp_lease_settings_section_body(id)
+ )
+
+ end
+
+ def get_vapp_lease_settings_section_body(id)
+ {
+ :type => "application/vnd.vmware.vcloud.leaseSettingsSection+xml",
+ :href => make_href("vApp/#{id}/leaseSettingsSection/"),
+ :ovf_required=>"false",
+ :"ovf:Info"=>"Lease settings section",
+ :DeploymentLeaseInSeconds=>"0",
+ :StorageLeaseInSeconds=>"0",
+ }
+ end
+
+ end
+
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_media_drives_rasd_items_list.rb b/lib/fog/vcloud_director/requests/compute/get_media_drives_rasd_items_list.rb
index 0f3dd45..3af2c7f 100644
--- a/lib/fog/vcloud_director/requests/compute/get_media_drives_rasd_items_list.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_media_drives_rasd_items_list.rb
@@ -21,6 +21,72 @@ module Fog
)
end
end
+
+ class Mock
+
+ def get_media_drives_rasd_items_list(id)
+ type = 'application/vnd.vmware.vcloud.rasdItemsList+xml'
+
+ unless vm = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ body = {
+ :type => type,
+ :href => make_href("vApp/#{id}/virtualHardwareSection/media"),
+ :Item => [
+ get_media_rasd_item_ide_controller_body(id, vm),
+ get_media_rasd_item_cdrom_body(id, vm),
+ get_media_rasd_item_floppy_body(id, vm),
+ ]
+ }
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{type};version=#{api_version}"},
+ :body => body
+ )
+ end
+
+ def get_media_rasd_item_ide_controller_body(id, vm)
+ {
+ :"rasd:Address"=>"0",
+ :"rasd:Description"=>"IDE Controller",
+ :"rasd:ElementName"=>"IDE Controller 0",
+ :"rasd:InstanceID"=>"3",
+ :"rasd:ResourceType"=>"5"
+ }
+ end
+
+ def get_media_rasd_item_cdrom_body(id, vm)
+ {
+ :"rasd:AddressOnParent"=>"1",
+ :"rasd:AutomaticAllocation"=>"true",
+ :"rasd:Description"=>"CD/DVD Drive",
+ :"rasd:ElementName"=>"CD/DVD Drive 1",
+ :"rasd:HostResource"=>"",
+ :"rasd:InstanceID"=>"3000",
+ :"rasd:Parent"=>"3",
+ :"rasd:ResourceType"=>"15"
+ }
+ end
+
+ def get_media_rasd_item_floppy_body(id, vm)
+ {
+ :"rasd:AddressOnParent"=>"0",
+ :"rasd:AutomaticAllocation"=>"false",
+ :"rasd:Description"=>"Floppy Drive",
+ :"rasd:ElementName"=>"Floppy Drive 1",
+ :"rasd:HostResource"=>"",
+ :"rasd:InstanceID"=>"8000",
+ :"rasd:ResourceType"=>"14"
+ }
+ end
+
+ end
+
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_medias_from_query.rb b/lib/fog/vcloud_director/requests/compute/get_medias_from_query.rb
index eddf798..01ea0b9 100644
--- a/lib/fog/vcloud_director/requests/compute/get_medias_from_query.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_medias_from_query.rb
@@ -78,7 +78,7 @@ module Fog
:MediaReference : :MediaRecord
%w[firstPage previousPage nextPage lastPage].each do |rel|
- if link = response.body[:Link].detect {|l| l[:rel] == rel}
+ if link = response.body[:Link].find {|l| l[:rel] == rel}
href = Nokogiri::XML.fragment(link[:href])
query = CGI.parse(URI.parse(href.text).query)
response.body[rel.to_sym] = query['page'].first.to_i
diff --git a/lib/fog/vcloud_director/requests/compute/get_memory_rasd_item.rb b/lib/fog/vcloud_director/requests/compute/get_memory_rasd_item.rb
index 0ae90bc..6390122 100644
--- a/lib/fog/vcloud_director/requests/compute/get_memory_rasd_item.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_memory_rasd_item.rb
@@ -23,6 +23,42 @@ module Fog
)
end
end
+
+ class Mock
+
+ def get_memory_rasd_item(id)
+ type = 'application/vnd.vmware.vcloud.rasdItem+xml'
+
+ unless vm = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{type};version=#{api_version}"},
+ :body => get_memory_rasd_item_body(id, vm)
+ )
+ end
+
+ def get_memory_rasd_item_body(id, vm)
+ {
+ :ns12_href => make_href("vApp/#{id}/virtualHardwareSection/memory"),
+ :ns12_type=>"application/vnd.vmware.vcloud.rasdItem+xml",
+ :"rasd:AllocationUnits"=>"byte * 2^20",
+ :"rasd:Description"=>"Memory Size",
+ :"rasd:ElementName"=>"#{vm[:memory_in_mb]} MB of memory",
+ :"rasd:InstanceID"=>"5",
+ :"rasd:Reservation"=>"0",
+ :"rasd:ResourceType"=>"4",
+ :"rasd:VirtualQuantity"=>"#{vm[:memory_in_mb]}",
+ :"rasd:Weight"=>"0",
+ }
+ end
+
+ end
+
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_network_cards_items_list.rb b/lib/fog/vcloud_director/requests/compute/get_network_cards_items_list.rb
index bd8cdd7..cde4434 100644
--- a/lib/fog/vcloud_director/requests/compute/get_network_cards_items_list.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_network_cards_items_list.rb
@@ -20,6 +20,51 @@ module Fog
)
end
end
+
+ class Mock
+ def get_network_cards_items_list(id)
+ type = 'application/vnd.vmware.vcloud.rasdItemsList+xml'
+
+ unless vm = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ body = {
+ :type => type,
+ :href => make_href("vApp/#{id}/virtualHardwareSection/networkCards"),
+ :Link => {
+ :rel=>"edit",
+ :type=>"application/vnd.vmware.vcloud.rasdItemsList+xml",
+ :href=>make_href("vApp/#{id}/virtualHardwareSection/networkCards"),
+ },
+ :Item => get_network_cards_rasd_items_list_body(id, vm)
+ }
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{type};version=#{api_version}"},
+ :body => body
+ )
+
+ end
+
+ def get_network_cards_rasd_items_list_body(id, vm)
+ [{
+ :"rasd:Address" => vm[:nics][0][:mac_address],
+ :"rasd:AddressOnParent" => "0",
+ :"rasd:AutomaticAllocation" => "true",
+ :"rasd:Connection" => vm[:nics][0][:network_name],
+ :"rasd:Description" => "E1000 ethernet adapter",
+ :"rasd:ElementName" => "Network adapter 0",
+ :"rasd:InstanceID" => "1",
+ :"rasd:ResourceSubType" => "E1000",
+ :"rasd:ResourceType" => "10"
+ }]
+ end
+
+ end
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_network_complete.rb b/lib/fog/vcloud_director/requests/compute/get_network_complete.rb
index 67c1a5d..ec854ba 100644
--- a/lib/fog/vcloud_director/requests/compute/get_network_complete.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_network_complete.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class VcloudDirector
class Real
-
# Retrieve an organization network.
#
# @param [String] id Object identifier of the network.
@@ -72,7 +71,6 @@ module Fog
:headers => {'Content-Type' => "#{body[:type]};version=#{api_version}"},
:body => body
)
-
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_network_config_section_vapp.rb b/lib/fog/vcloud_director/requests/compute/get_network_config_section_vapp.rb
index 614bde5..d98c468 100644
--- a/lib/fog/vcloud_director/requests/compute/get_network_config_section_vapp.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_network_config_section_vapp.rb
@@ -20,6 +20,42 @@ module Fog
)
end
end
+
+ class Mock
+
+ def get_network_config_section_vapp(id)
+
+ type = 'application/vnd.vmware.vcloud.networkConfigSection+xml'
+
+ unless vapp = data[:vapps][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{type};version=#{api_version}"},
+ :body => get_vapp_network_config_section_body(id, vapp)
+ )
+
+ end
+
+ def get_vapp_network_config_section_body(id, vapp)
+ # TODO: This is effectively hardcoding a vAppNetwork configuration
+ # into here, but this is sufficient for initial testing.
+ # This network configuration has no networks.
+
+ {
+ :type => "application/vnd.vmware.vcloud.networkConfigSection+xml",
+ :href => make_href("vApp/#{id}/networkConfigSection/"),
+ :ovf_required => "false",
+ :"ovf:Info" => "The configuration parameters for logical networks",
+ :NetworkConfig => [],
+ }
+ end
+
+ end
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_network_connection_system_section_vapp.rb b/lib/fog/vcloud_director/requests/compute/get_network_connection_system_section_vapp.rb
index 7bd52b4..a336000 100644
--- a/lib/fog/vcloud_director/requests/compute/get_network_connection_system_section_vapp.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_network_connection_system_section_vapp.rb
@@ -20,6 +20,49 @@ module Fog
)
end
end
+
+ class Mock
+
+ def get_network_connection_system_section_vapp(id)
+ type = 'application/vnd.vmware.vcloud.networkConnectionSection+xml'
+
+ unless vm = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{type};version=#{api_version}"},
+ :body => get_vm_network_connection_section_body(id, vm)
+ )
+
+ end
+
+ def get_vm_network_connection_section_body(id, vm)
+ # TODO: Needs work - does not handle multiple NIC case yet, or
+ # DHCP/POOL allocations
+ {
+ :type => "application/vnd.vmware.vcloud.networkConnectionSection+xml",
+ :href => make_href("vApp/#{id}/networkConnectionSection/"),
+ :ovf_required => "false",
+ :"ovf:Info" => "Specifies the available VM network connections",
+ :PrimaryNetworkConnectionIndex => "0",
+ :NetworkConnection => {
+ :network => vm[:nics][0][:network_name],
+ :needsCustomization => "false",
+ :NetworkConnectionIndex => "0",
+ :IpAddress => vm[:nics][0][:ip_address],
+ :IsConnected => "true",
+ :MACAddress => vm[:nics][0][:mac_address],
+ :IpAddressAllocationMode => "MANUAL"
+ }
+ }
+ end
+
+ end
+
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_operating_system_section.rb b/lib/fog/vcloud_director/requests/compute/get_operating_system_section.rb
index 99a2e3a..7a32269 100644
--- a/lib/fog/vcloud_director/requests/compute/get_operating_system_section.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_operating_system_section.rb
@@ -20,6 +20,40 @@ module Fog
)
end
end
+
+ class Mock
+
+ def get_operating_system_section(id)
+
+ type = 'application/vnd.vmware.vcloud.operatingSystemSection+xml'
+
+ unless vm = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{type};version=#{api_version}"},
+ :body => get_vm_operating_system_section_body(id, vm)
+ )
+
+ end
+
+ def get_vm_operating_system_section_body(id, vm)
+ {
+ :xmlns_ns12=>"http://www.vmware.com/vcloud/v1.5",
+ :ovf_id => "94", # TODO: What is this?
+ :ns12_href => make_href("vApp/#{id}/operatingSystemSection/"),
+ :ns12_type => "application/vnd.vmware.vcloud.operatingSystemSection+xml",
+ :vmw_osType => vm[:guest_os_type], # eg "ubuntu64Guest"
+ :"ovf:Info"=>"Specifies the operating system installed",
+ :"ovf:Description"=> vm[:guest_os_description], # eg "Ubuntu Linux (64-bit)",
+ }
+ end
+
+ end
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_organizations_from_query.rb b/lib/fog/vcloud_director/requests/compute/get_organizations_from_query.rb
index 5fa6bf1..c67bf8f 100644
--- a/lib/fog/vcloud_director/requests/compute/get_organizations_from_query.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_organizations_from_query.rb
@@ -79,7 +79,7 @@ module Fog
:OrganizationReference : :OrganizationRecord
%w[firstPage previousPage nextPage lastPage].each do |rel|
- if link = response.body[:Link].detect {|l| l[:rel] == rel}
+ if link = response.body[:Link].find {|l| l[:rel] == rel}
href = Nokogiri::XML.fragment(link[:href])
query = CGI.parse(URI.parse(href.text).query)
response.body[rel.to_sym] = query['page'].first.to_i
diff --git a/lib/fog/vcloud_director/requests/compute/get_runtime_info_section_type.rb b/lib/fog/vcloud_director/requests/compute/get_runtime_info_section_type.rb
index 35e42c6..b73826f 100644
--- a/lib/fog/vcloud_director/requests/compute/get_runtime_info_section_type.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_runtime_info_section_type.rb
@@ -20,6 +20,38 @@ module Fog
)
end
end
+
+ class Mock
+ def get_runtime_info_section_type(id)
+
+ type = 'application/vnd.vmware.vcloud.virtualHardwareSection+xml'
+
+ unless vm = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{type};version=#{api_version}"},
+ :body => get_vm_runtime_info_section_body(id, vm)
+ )
+ end
+
+ def get_vm_runtime_info_section_body(id, vm)
+ {
+ :xmlns_ns12 => "http://www.vmware.com/vcloud/v1.5",
+ :ns12_href => make_href("vApp/#{id}/runtimeInfoSection"),
+ :ns12_type => "application/vnd.vmware.vcloud.virtualHardwareSection+xml",
+ :"ovf:Info" => "Specifies Runtime info",
+ :VMWareTools => {
+ :version => "9282",
+ }
+ }
+ end
+
+ end
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_snapshot_section.rb b/lib/fog/vcloud_director/requests/compute/get_snapshot_section.rb
index c549f9a..d865c79 100644
--- a/lib/fog/vcloud_director/requests/compute/get_snapshot_section.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_snapshot_section.rb
@@ -20,6 +20,36 @@ module Fog
)
end
end
+
+ class Mock
+
+ def get_snapshot_section(id)
+ type = 'application/vnd.vmware.vcloud.snapshotSection+xml'
+
+ unless data[:vms][id] || data[:vapps][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{type};version=#{api_version}"},
+ :body => get_snapshot_section_body(id)
+ )
+ end
+
+ def get_snapshot_section_body(id)
+ {
+ :type => "application/vnd.vmware.vcloud.snapshotSection+xml",
+ :href => make_href("vApp/#{id}/snapshotSection"),
+ :ovf_required => "false",
+ :"ovf:Info" => "Snapshot information section"
+ }
+ end
+
+ end
+
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_startup_section.rb b/lib/fog/vcloud_director/requests/compute/get_startup_section.rb
index 3066881..0caa287 100644
--- a/lib/fog/vcloud_director/requests/compute/get_startup_section.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_startup_section.rb
@@ -20,6 +20,45 @@ module Fog
)
end
end
+
+ class Mock
+
+ def get_startup_section(id)
+
+ type = 'application/vnd.vmware.vcloud.startupSection+xml'
+
+ unless vapp = data[:vapps][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{type};version=#{api_version}"},
+ :body => get_vapp_ovf_startup_section_body(id, vapp)
+ )
+
+ end
+
+ def get_vapp_ovf_startup_section_body(id, vapp)
+ {
+ :xmlns_ns12 => "http://www.vmware.com/vcloud/v1.5",
+ :ns12_href => make_href("vApp/#{id}"),
+ :ns12_type => "application/vnd.vmware.vcloud.startupSection+xml",
+ :"ovf:Info" => "VApp startup section",
+ :"ovf:Item" => {
+ :ovf_stopDelay => "0",
+ :ovf_stopAction => "powerOff",
+ :ovf_startDelay => "0",
+ :ovf_startAction => "powerOn",
+ :ovf_order => "0",
+ :ovf_id => vapp[:name],
+ },
+ }
+ end
+
+ end
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_users_from_query.rb b/lib/fog/vcloud_director/requests/compute/get_users_from_query.rb
index d945305..f9567ca 100644
--- a/lib/fog/vcloud_director/requests/compute/get_users_from_query.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_users_from_query.rb
@@ -79,7 +79,7 @@ module Fog
:UserReference : :UserRecord
%w[firstPage previousPage nextPage lastPage].each do |rel|
- if link = response.body[:Link].detect {|l| l[:rel] == rel}
+ if link = response.body[:Link].find {|l| l[:rel] == rel}
href = Nokogiri::XML.fragment(link[:href])
query = CGI.parse(URI.parse(href.text).query)
response.body[rel.to_sym] = query['page'].first.to_i
diff --git a/lib/fog/vcloud_director/requests/compute/get_vapp.rb b/lib/fog/vcloud_director/requests/compute/get_vapp.rb
index a94b918..231cef0 100644
--- a/lib/fog/vcloud_director/requests/compute/get_vapp.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_vapp.rb
@@ -22,6 +22,154 @@ module Fog
response
end
end
+
+ class Mock
+
+ def get_vapp(id)
+
+ # Retrieve a vApp or VM.
+ #
+
+ case id
+ when /^vapp-/
+ body = get_mock_vapp_body(id)
+ when /^vm-/
+ body = get_mock_vm_body(id)
+ else
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{body[:type]};version=#{api_version}"},
+ :body => body
+ )
+
+ end
+
+ def get_mock_vm_body(id)
+ unless vm = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ body = {
+ :name => vm[:name],
+ :href => make_href("vApp/#{id}"),
+ :type => "application/application/vnd.vmware.vcloud.vm+xml",
+ :status => vm[:status],
+ :deployed => vm[:deployed],
+ :needsCustomization => vm[:needs_customization],
+ :"ovf:VirtualHardwareSection" => get_vm_virtual_hardware_section_body(id, vm),
+ :"ovf:OperatingSystemSection" => get_vm_operating_system_section_body(id, vm),
+ :NetworkConnectionSection => get_vm_network_connection_section_body(id, vm),
+ :GuestCustomizationSection => get_vm_guest_customization_section_body(id, vm),
+ :RuntimeInfoSection => get_vm_runtime_info_section_body(id, vm),
+ :SnapshotSection => get_snapshot_section_body(id),
+ :DateCreated => vm[:date_created], # eg "2014-03-16T10:52:31.874Z"
+ :VAppScopedLocalId => vm[:parent_vapp].split('-').last, # strip the vapp- prefix
+ :"ovfenv:Environment" => get_vm_ovfenv_environment_section_body(id, vm),
+ :VmCapabilities => get_vm_capabilities_section_body(id, vm),
+ :StorageProfile => get_vm_storage_profile_section_body(id, vm),
+ }
+ body
+ end
+
+ def get_mock_vapp_body(id)
+
+ unless vapp = data[:vapps][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ body = {
+ :deployed => "true",
+ :status => vapp[:status],
+ :name => vapp[:name],
+ :type => "application/vnd.vmware.vcloud.vApp+xml",
+ :href => make_href("vApp/#{id}"),
+ :LeaseSettingsSection => get_vapp_lease_settings_section_body(id),
+ :"ovf:StartupSection" => get_vapp_ovf_startup_section_body(id, vapp),
+ :"ovf:NetworkSection" => get_vapp_ovf_network_section_body(id, vapp),
+ :NetworkConfigSection => get_vapp_network_config_section_body(id, vapp),
+ :SnapshotSection => get_snapshot_section_body(id),
+ :DateCreated => vapp[:date_created], # eg "2014-03-16T10:52:31.874Z"
+ :Owner => get_owner_section_body(id),
+ :InMaintenanceMode => "false",
+ :Children => {
+ :Vm => get_vapp_children_vms_body(id)
+ },
+ }
+ body
+ end
+
+ def get_vapp_ovf_network_section_body(id, vapp)
+ {}
+ end
+
+ def get_vapp_children_vms_body(id)
+ child_vms = data[:vms].select do |vm_id, vm_details|
+ vm_details[:parent_vapp] == id
+ end
+ if RUBY_VERSION.to_f < 1.9
+ # 1.8 Hash.select returns an Array of [k,v] pairs.
+ child_vms = Hash[child_vms]
+ end
+ child_vms.keys.collect do |vm_id|
+ get_mock_vm_body(vm_id)
+ end
+ end
+
+ def get_vm_ovfenv_environment_section_body(id, vm)
+ # TODO: I'm pretty sure this is just repeating info in other
+ # sections, and the OVF part of VMs is extremely verbose. It's
+ # likely to not be needed in Mock mode
+ {}
+ end
+
+ def get_vm_storage_profile_section_body(id, vm)
+ {
+ :type => "application/vnd.vmware.vcloud.vdcStorageProfile+xml",
+ :name => "Mock Storage Profile",
+ :href => make_href("vdcStorageProfile/12345678-1234-1234-1234-1234500e49a8"),
+ }
+ end
+
+ def get_vm_virtual_hardware_section_body(id, vm)
+
+ {:xmlns_ns12=>"http://www.vmware.com/vcloud/v1.5",
+ :ovf_transport=>"",
+ :ns12_href => make_href("vApp/#{id}/virtualHardwareSection/"),
+ :ns12_type=>"application/vnd.vmware.vcloud.virtualHardwareSection+xml",
+ :"ovf:Info"=>"Virtual hardware requirements",
+ :"ovf:System"=>{
+ :"vssd:ElementName"=>"Virtual Hardware Family",
+ :"vssd:InstanceID"=>"0",
+ :"vssd:VirtualSystemIdentifier" => vm[:name],
+ :"vssd:VirtualSystemType"=>"vmx-08"
+ },
+ :"ovf:Item" => get_vm_ovf_item_list(id, vm),
+ }
+ end
+
+ def get_vm_ovf_item_list(id, vm)
+ [
+ get_network_cards_rasd_items_list_body(id, vm),
+ get_disks_rasd_items_list_body(id, vm),
+ get_media_rasd_item_cdrom_body(id, vm),
+ get_media_rasd_item_floppy_body(id, vm),
+ get_cpu_rasd_item_body(id, vm),
+ get_memory_rasd_item_body(id, vm),
+ ].compact.flatten
+ end
+
+
+ end
+
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_vapp_metadata.rb b/lib/fog/vcloud_director/requests/compute/get_vapp_metadata.rb
index 531c92d..d383dbf 100644
--- a/lib/fog/vcloud_director/requests/compute/get_vapp_metadata.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_vapp_metadata.rb
@@ -22,6 +22,63 @@ module Fog
response
end
end
+
+ class Mock
+
+ def get_vapp_metadata(id)
+ unless vm_or_vapp = data[:vapps][id] || vm_or_vapp = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ body = {
+ :xmlns=>xmlns,
+ :xmlns_xsi=>xmlns_xsi,
+ :type=>"application/vnd.vmware.vcloud.metadata+xml",
+ :href=>make_href("vApp/#{id}/metadata"),
+ :xsi_schemaLocation=>xsi_schema_location,
+ :Link=>
+ [{:rel=>"up",
+ :type=>"application/vnd.vmware.vcloud.vApp+xml",
+ :href=>make_href("/vApp/#{id}")},
+ {:rel=>"add",
+ :type=>"application/vnd.vmware.vcloud.metadata+xml",
+ :href=>make_href("vApp/#{id}/metadata")}],
+ :MetadataEntry=>get_metadata_entries(vm_or_vapp[:metadata], id)
+ }
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{body[:type]};version=#{api_version}"},
+ :body => body
+ )
+ end
+
+ private
+
+ def get_metadata_entries(metadata, id)
+ metadata_entries = []
+
+ for key, value in metadata do
+ metadata_entries << {:type=>"application/vnd.vmware.vcloud.metadata.value+xml",
+ :href=>make_href("vApp/#{id}/metadata/#{key}"),
+ :Link=>
+ [{:rel=>"up",
+ :type=>"application/vnd.vmware.vcloud.metadata+xml",
+ :href=>make_href("vApp/#{id}/metadata")},
+ {:rel=>"edit",
+ :type=>"application/vnd.vmware.vcloud.metadata.value+xml",
+ :href=>make_href("vApp/#{id}/metadata/#{key}")},
+ {:rel=>"remove",
+ :href=>make_href("vApp/#{id}/metadata/#{key}")}],
+ :Key=>"#{key}",
+ :TypedValue=>{:xsi_type=>"MetadataStringValue", :Value=>"#{metadata[key]}"}}
+ end
+ metadata_entries
+ end
+
+ end
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_vapp_owner.rb b/lib/fog/vcloud_director/requests/compute/get_vapp_owner.rb
index b6eac94..63dc9e3 100644
--- a/lib/fog/vcloud_director/requests/compute/get_vapp_owner.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_vapp_owner.rb
@@ -20,6 +20,39 @@ module Fog
)
end
end
+
+ class Mock
+ def get_vapp_owner(id)
+
+ type = 'application/vnd.vmware.vcloud.owner+xml'
+
+ unless vapp = data[:vapps][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{type};version=#{api_version}"},
+ :body => get_owner_section_body(id)
+ )
+
+ end
+
+ def get_owner_section_body(id)
+ {
+ :type => 'application/vnd.vmware.vcloud.owner+xml',
+ :User => {
+ :type => "application/vnd.vmware.admin.user+xml",
+ :name => "mockuser",
+ :href => make_href("user/12345678-1234-1234-1234-12345678df2b"),
+ }
+ }
+ end
+
+ end
+
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_vapp_templates_from_query.rb b/lib/fog/vcloud_director/requests/compute/get_vapp_templates_from_query.rb
index e150659..b696a6f 100644
--- a/lib/fog/vcloud_director/requests/compute/get_vapp_templates_from_query.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_vapp_templates_from_query.rb
@@ -79,7 +79,7 @@ module Fog
:VAppTemplateReference : :VAppTemplateRecord
%w[firstPage previousPage nextPage lastPage].each do |rel|
- if link = response.body[:Link].detect {|l| l[:rel] == rel}
+ if link = response.body[:Link].find {|l| l[:rel] == rel}
href = Nokogiri::XML.fragment(link[:href])
query = CGI.parse(URI.parse(href.text).query)
response.body[rel.to_sym] = query['page'].first.to_i
diff --git a/lib/fog/vcloud_director/requests/compute/get_vapps_in_lease_from_query.rb b/lib/fog/vcloud_director/requests/compute/get_vapps_in_lease_from_query.rb
index 33814e5..6245577 100644
--- a/lib/fog/vcloud_director/requests/compute/get_vapps_in_lease_from_query.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_vapps_in_lease_from_query.rb
@@ -78,7 +78,7 @@ module Fog
:VAppReference : :VAppRecord
%w[firstPage previousPage nextPage lastPage].each do |rel|
- if link = response.body[:Link].detect {|l| l[:rel] == rel}
+ if link = response.body[:Link].find {|l| l[:rel] == rel}
href = Nokogiri::XML.fragment(link[:href])
query = CGI.parse(URI.parse(href.text).query)
response.body[rel.to_sym] = query['page'].first.to_i
diff --git a/lib/fog/vcloud_director/requests/compute/get_vdc.rb b/lib/fog/vcloud_director/requests/compute/get_vdc.rb
index 45eb3f5..3a83fcc 100644
--- a/lib/fog/vcloud_director/requests/compute/get_vdc.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_vdc.rb
@@ -110,7 +110,9 @@ module Fog
:Reserved=>"0",
:Used=>"0",
:Overhead=>"0"}},
- :ResourceEntities => {},
+ :ResourceEntities => {
+ :ResourceEntity => []
+ },
:AvailableNetworks => {},
:Capabilities=>
{:SupportedHardwareVersions=>
@@ -128,6 +130,13 @@ module Fog
:href=>make_href("#{item[:type]}/#{item[:type]}-#{id}")}
end
+ body[:ResourceEntities][:ResourceEntity] +=
+ get_vapps_in_this_vdc(vdc_id).map do |vapp_id, vapp|
+ {:type => "application/vnd.vmware.vcloud.vApp+xml",
+ :name => vapp[:name],
+ :href => make_href("vApp/#{vapp_id}")}
+ end
+
body[:AvailableNetworks][:Network] =
data[:networks].map do |id, network|
{:type=>"application/vnd.vmware.vcloud.network+xml",
@@ -152,6 +161,13 @@ module Fog
response.body = body
response
end
+
+ def get_vapps_in_this_vdc(vdc_id)
+ data[:vapps].select do |vapp_id, vapp|
+ vapp[:vdc_id] == vdc_id
+ end
+ end
+
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_vdcs_from_query.rb b/lib/fog/vcloud_director/requests/compute/get_vdcs_from_query.rb
index 627448e..76495e1 100644
--- a/lib/fog/vcloud_director/requests/compute/get_vdcs_from_query.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_vdcs_from_query.rb
@@ -78,7 +78,7 @@ module Fog
:OrgVdcReference : :OrgVdcRecord
%w[firstPage previousPage nextPage lastPage].each do |rel|
- if link = response.body[:Link].detect {|l| l[:rel] == rel}
+ if link = response.body[:Link].find {|l| l[:rel] == rel}
href = Nokogiri::XML.fragment(link[:href])
query = CGI.parse(URI.parse(href.text).query)
response.body[rel.to_sym] = query['page'].first.to_i
diff --git a/lib/fog/vcloud_director/requests/compute/get_vm_capabilities.rb b/lib/fog/vcloud_director/requests/compute/get_vm_capabilities.rb
index e986c33..b3df3ba 100644
--- a/lib/fog/vcloud_director/requests/compute/get_vm_capabilities.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_vm_capabilities.rb
@@ -25,6 +25,37 @@ module Fog
)
end
end
+
+ class Mock
+
+ def get_vm_capabilities(id)
+
+ type = 'application/vnd.vmware.vcloud.vmCapabilitiesSection+xml'
+
+ unless vm = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{type};version=#{api_version}"},
+ :body => get_vm_capabilities_section_body(id, vm)
+ )
+
+ end
+
+ def get_vm_capabilities_section_body(id, vm)
+ {
+ :type => "application/vnd.vmware.vcloud.vmCapabilitiesSection+xml",
+ :href => make_href("vApp/#{id}/vmCapabilities/"),
+ :MemoryHotAddEnabled => "false",
+ :CpuHotAddEnabled => "false",
+ }
+ end
+
+ end
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_vms_by_metadata.rb b/lib/fog/vcloud_director/requests/compute/get_vms_by_metadata.rb
index 1de0204..9a7c31b 100644
--- a/lib/fog/vcloud_director/requests/compute/get_vms_by_metadata.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_vms_by_metadata.rb
@@ -14,7 +14,6 @@ module Fog
:path => "vms/query?format=records&filter=metadata:#{key}==STRING:#{value}"
)
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/get_vms_in_lease_from_query.rb b/lib/fog/vcloud_director/requests/compute/get_vms_in_lease_from_query.rb
index 0e0733f..8dfab73 100644
--- a/lib/fog/vcloud_director/requests/compute/get_vms_in_lease_from_query.rb
+++ b/lib/fog/vcloud_director/requests/compute/get_vms_in_lease_from_query.rb
@@ -79,7 +79,7 @@ module Fog
:VMReference : :VMRecord
%w[firstPage previousPage nextPage lastPage].each do |rel|
- if link = response.body[:Link].detect {|l| l[:rel] == rel}
+ if link = response.body[:Link].find {|l| l[:rel] == rel}
href = Nokogiri::XML.fragment(link[:href])
query = CGI.parse(URI.parse(href.text).query)
response.body[rel.to_sym] = query['page'].first.to_i
@@ -90,6 +90,61 @@ module Fog
response
end
end
+
+ class Mock
+
+ def get_vms_in_lease_from_query(options={})
+
+ if options.key?(:filter) && options[:filter] =~ /^href==([^;,]+)$/
+ href = $1
+ id = href.split('/').last
+ else
+ Fog::Mock.not_implemented("Filter by href is currently the only option implemented in get_vms_in_lease_from_query Mock")
+ end
+
+ vm = data[:vms][id]
+ parent_vapp_id = vm[:parent_vapp]
+ vdc_id = data[:vapps][parent_vapp_id][:vdc_id]
+
+ body = {
+ :xmlns=>xmlns,
+ :xmlns_xsi=>xmlns_xsi,
+ :href=>make_href('query'),
+ :name=>"vm",
+ :type=>"application/vnd.vmware.vcloud.query.records+xml",
+ :xsi_schemaLocation=>xsi_schema_location,
+ :total=>"1",
+ :pageSize=>"25",
+ :page=>"1",
+ :Link=>
+ [{:rel=>"alternate",
+ :type=>"application/vnd.vmware.vcloud.query.references+xml",
+ :href=>make_href('query')},
+ {:rel=>"alternate",
+ :type=>"application/vnd.vmware.vcloud.query.idrecords+xml",
+ :href=>make_href('query')}],
+ :VMRecord=>
+ [{:vdc=>make_href(vdc_id),
+ :numberOfCpus=>vm[:cpu_count],
+ :name=>vm[:name],
+ :containerName=>data[:vapps][parent_vapp_id][:name],
+ :memoryMB=>vm[:memory_in_mb],
+ :isVAppTemplate=>"false",
+ :href=>make_href(id),
+ :taskStatus=>"success",
+ :task=>make_href("task/#{uuid}"),
+ :taskDetails=>" ",
+ :taskStatusName=>"vappUpdateVm"}]
+ }
+
+ Excon::Response.new(
+ :status => 200,
+ :headers => {'Content-Type' => "#{body[:type]};version=#{api_version}"},
+ :body => body
+ )
+ end
+
+ end
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/instantiate_vapp_template.rb b/lib/fog/vcloud_director/requests/compute/instantiate_vapp_template.rb
index 31bc57c..61cc975 100644
--- a/lib/fog/vcloud_director/requests/compute/instantiate_vapp_template.rb
+++ b/lib/fog/vcloud_director/requests/compute/instantiate_vapp_template.rb
@@ -36,8 +36,7 @@ module Fog
def populate_uris(options = {})
options[:vdc_id] || raise("vdc_id option is required")
options[:vdc_uri] = vdc_end_point(options[:vdc_id])
- options[:network_id] || raise("network_id option is required")
- options[:network_uri] = network_end_point(options[:network_id])
+ options[:network_uri] = network_end_point(options[:network_id]) if options[:network_id]
options[:template_uri] = vapp_template_end_point(options[:template_id]) || raise("template_id option is required")
options
end
@@ -90,7 +89,6 @@ module Fog
def endpoint
end_point
end
-
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/post_capture_vapp.rb b/lib/fog/vcloud_director/requests/compute/post_capture_vapp.rb
index 5257f89..ee1995d 100644
--- a/lib/fog/vcloud_director/requests/compute/post_capture_vapp.rb
+++ b/lib/fog/vcloud_director/requests/compute/post_capture_vapp.rb
@@ -12,6 +12,13 @@ module Fog
# @param [String] source_id Object identifier of the vApp to capture.
# @param [Hash] options
# @option options [String] :Description Optional description.
+ # @option options [Hash] :LeaseSettingsSection
+ # * :StorageLeaseInSeconds<~Integer> - Storage lease in seconds.
+ # @option options [Hash] :CustomizationSection
+ # * :goldMaster<~Boolean> - True if this template is a gold master.
+ # * :CustomizeOnInstantiate<~Boolean> - True if instantiating this
+ # template applies customization settings. Otherwise, instantiation
+ # creates an identical copy.
# @return [Excon::Response]
# * body<~Hash>:
#
@@ -21,6 +28,7 @@ module Fog
body = Nokogiri::XML::Builder.new do
attrs = {
:xmlns => 'http://www.vmware.com/vcloud/v1.5',
+ 'xmlns:ovf' => 'http://schemas.dmtf.org/ovf/envelope/1',
:name => name
}
CaptureVAppParams(attrs) {
@@ -28,6 +36,22 @@ module Fog
Description options[:Description]
end
Source(:href => "#{end_point}vApp/#{source_id}")
+ if section = options[:LeaseSettingsSection]
+ LeaseSettingsSection {
+ self['ovf'].Info 'Lease settings section'
+ if section.key?(:StorageLeaseInSeconds)
+ StorageLeaseInSeconds section[:StorageLeaseInSeconds]
+ end
+ }
+ end
+ if section = options[:CustomizationSection]
+ attrs = {}
+ attrs[:goldMaster] = section[:goldMaster] if section.key?(:goldMaster)
+ CustomizationSection(attrs) {
+ self['ovf'].Info 'VApp template customization section'
+ CustomizeOnInstantiate section[:CustomizeOnInstantiate]
+ }
+ end
}
end.to_xml
diff --git a/lib/fog/vcloud_director/requests/compute/post_configure_edge_gateway_services.rb b/lib/fog/vcloud_director/requests/compute/post_configure_edge_gateway_services.rb
index 3793348..2b09c02 100644
--- a/lib/fog/vcloud_director/requests/compute/post_configure_edge_gateway_services.rb
+++ b/lib/fog/vcloud_director/requests/compute/post_configure_edge_gateway_services.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class VcloudDirector
class Real
-
require 'fog/vcloud_director/generators/compute/edge_gateway_service_configuration'
# Configure edge gateway services like firewall, nat and load balancer.
@@ -32,7 +31,6 @@ module Fog
:path => "admin/edgeGateway/#{id}/action/configureServices"
)
end
-
end
class Mock
@@ -43,7 +41,10 @@ module Fog
)
end
- owner = {:href => '', :name => nil, :type => nil} #known-bug: admin-api does not return owner.
+ owner = {
+ :href => make_href("admin/edgeGateway/#{id}"),
+ :type => 'application/vnd.vmware.vcloud.gateway+xml'
+ }
task_id = enqueue_task(
"Configuring edgegateway(#{id})", 'networkConfigureEdgeGatewayServices', owner,
:on_success => lambda do
@@ -51,11 +52,14 @@ module Fog
end
)
+ task = task_body(task_id)
+ task.delete(:Owner) # known bug - admin tasks do not return Owner
+
body = {
:xmlns => xmlns,
:xmlns_xsi => xmlns_xsi,
:xsi_schemaLocation => xsi_schema_location,
- }.merge(task_body(task_id))
+ }.merge(task)
Excon::Response.new(
:status => 202,
@@ -67,4 +71,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/vcloud_director/requests/compute/post_create_catalog_item.rb b/lib/fog/vcloud_director/requests/compute/post_create_catalog_item.rb
new file mode 100644
index 0000000..370775b
--- /dev/null
+++ b/lib/fog/vcloud_director/requests/compute/post_create_catalog_item.rb
@@ -0,0 +1,56 @@
+module Fog
+ module Compute
+ class VcloudDirector
+ class Real
+ # Add an item to a catalog.
+ #
+ # @param [String] id Object identifier of the catalog.
+ # @param [String] name The name of the entity.
+ # @param [Hash] entity A reference to a VAppTemplate or Media object.
+ # * href<~String> - Contains the URI to the entity.
+ # @param [Hash] options
+ # @option options [String] :operationKey Optional unique identifier to
+ # support idempotent semantics for create and delete operations.
+ # @option options [String] :Description Optional description.
+ # @return [Excon::Response]
+ # * body<~Hash>:
+ #
+ # @raise Fog::Compute::VcloudDirector::DuplicateName
+ #
+ # @see http://pubs.vmware.com/vcd-51/topic/com.vmware.vcloud.api.reference.doc_51/doc/operations/POST-CreateCatalogItem.html
+ # @since vCloud API version 0.9
+ def post_create_catalog_item(id, name, entity, options={})
+ body = Nokogiri::XML::Builder.new do
+ attrs = {
+ :xmlns => 'http://www.vmware.com/vcloud/v1.5',
+ :name => name,
+ }
+ attrs[:operationKey] = options[:operationKey] if options.key?(:operationKey)
+ CatalogItem(attrs) {
+ if options.key?(:Description)
+ Description options[:Description]
+ end
+ Entity(entity)
+ }
+ end.to_xml
+
+ begin
+ request(
+ :body => body,
+ :expects => 201,
+ :headers => {'Content-Type' => 'application/vnd.vmware.vcloud.catalogItem+xml'},
+ :method => 'POST',
+ :parser => Fog::ToHashDocument.new,
+ :path => "catalog/#{id}/catalogItems"
+ )
+ rescue Fog::Compute::VcloudDirector::BadRequest => e
+ if e.minor_error_code == 'DUPLICATE_NAME'
+ raise Fog::Compute::VcloudDirector::DuplicateName.new(e.message)
+ end
+ raise
+ end
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/vcloud_director/requests/compute/post_create_org_vdc_network.rb b/lib/fog/vcloud_director/requests/compute/post_create_org_vdc_network.rb
index 2228a7e..99dc189 100644
--- a/lib/fog/vcloud_director/requests/compute/post_create_org_vdc_network.rb
+++ b/lib/fog/vcloud_director/requests/compute/post_create_org_vdc_network.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class VcloudDirector
class Real
-
require 'fog/vcloud_director/generators/compute/org_vdc_network'
# Create an Org vDC network.
@@ -52,7 +51,6 @@ module Fog
# @see http://pubs.vmware.com/vcd-51/topic/com.vmware.vcloud.api.reference.doc_51/doc/operations/POST-CreateOrgVdcNetwork.html
# @since vCloud API version 5.1
def post_create_org_vdc_network(vdc_id, name, options={})
-
body = Fog::Generators::Compute::VcloudDirector::OrgVdcNetwork.new(options.merge(:name => name)).generate_xml
request(
@@ -63,12 +61,10 @@ module Fog
:parser => Fog::ToHashDocument.new,
:path => "admin/vdc/#{vdc_id}/networks"
)
-
end
end
class Mock
-
def post_create_org_vdc_network(vdc_id, name, options={})
unless data[:vdcs][vdc_id]
raise Fog::Compute::VcloudDirector::Forbidden.new(
@@ -168,7 +164,6 @@ module Fog
:headers => {'Content-Type' => "#{body[:type]};version=#{api_version}"},
:body => body
)
-
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/post_deploy_vapp.rb b/lib/fog/vcloud_director/requests/compute/post_deploy_vapp.rb
index 257bd29..49bbde7 100644
--- a/lib/fog/vcloud_director/requests/compute/post_deploy_vapp.rb
+++ b/lib/fog/vcloud_director/requests/compute/post_deploy_vapp.rb
@@ -30,9 +30,9 @@ module Fog
attrs = {
:xmlns => 'http://www.vmware.com/vcloud/v1.5'
}
- attr[:deploymentLeaseSeconds] = options[:deploymentLeaseSeconds] if options.key?(:deploymentLeaseSeconds)
- attr[:forceCustomization] = options[:forceCustomization] if options.key?(:forceCustomization)
- attr[:powerOn] = options[:powerOn] if options.key?(:powerOn)
+ attrs[:deploymentLeaseSeconds] = options[:deploymentLeaseSeconds] if options.key?(:deploymentLeaseSeconds)
+ attrs[:forceCustomization] = options[:forceCustomization] if options.key?(:forceCustomization)
+ attrs[:powerOn] = options[:powerOn] if options.key?(:powerOn)
DeployVAppParams(attrs)
end.to_xml
diff --git a/lib/fog/vcloud_director/requests/compute/post_instantiate_vapp_template.rb b/lib/fog/vcloud_director/requests/compute/post_instantiate_vapp_template.rb
index 6eac236..9cce175 100644
--- a/lib/fog/vcloud_director/requests/compute/post_instantiate_vapp_template.rb
+++ b/lib/fog/vcloud_director/requests/compute/post_instantiate_vapp_template.rb
@@ -128,6 +128,69 @@ module Fog
end
end
end
+
+ class Mock
+
+ def post_instantiate_vapp_template(vdc_id, vapp_template_id, name, options={})
+ unless data[:vdcs][vdc_id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ "No access to entity \"(com.vmware.vcloud.entity.vdc:#{vdc_id})\"."
+ )
+ end
+
+ type = 'vApp'
+ vapp_id = "vapp-#{uuid}"
+ vm_id = "vm-#{uuid}"
+
+ data[:vapps][vapp_id] = {
+ :name => name,
+ :vdc_id => vdc_id,
+ :description => options.fetch(:description, "vApp created from #{vapp_template_id}"),
+ :networks => [],
+ :metadata => {:'vapp_key' => 'vapp_value'},
+ :status => "0",
+ }
+
+ data[:vms][vm_id] = {
+ :name => 'vm-template-name',
+ :parent_vapp => vapp_id,
+ :memory_in_mb => "1024",
+ :cpu_count => "2",
+ :metadata => {:'vm_key' => 'vm_value'},
+ :nics => [
+ {
+ :network_name => 'Default Network',
+ :mac_address => "00:50:56:00:00:00",
+ :ip_address => "192.168.0.1",
+ }
+ ],
+ }
+
+ owner = {
+ :href => make_href("#{type}/#{vapp_id}"),
+ :type => "application/vnd.vmware.vcloud.#{type}+xml"
+ }
+ task_id = enqueue_task(
+ "Creating Virtual Application #{name}(#{vapp_id})", 'vdcInstantiateVapp', owner,
+ :on_success => lambda do
+ data[:vapps][vapp_id][:status] = "8"
+ end
+ )
+
+ body = get_vapp(vapp_id).body
+
+ body[:Tasks] = {
+ :Task => task_body(task_id)
+ }
+
+ Excon::Response.new(
+ :status => 201,
+ :headers => {'Content-Type' => "#{body[:type]};version=#{api_version}"},
+ :body => body
+ )
+ end
+
+ end
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/post_upload_disk.rb b/lib/fog/vcloud_director/requests/compute/post_upload_disk.rb
index 154bfb4..6065b01 100644
--- a/lib/fog/vcloud_director/requests/compute/post_upload_disk.rb
+++ b/lib/fog/vcloud_director/requests/compute/post_upload_disk.rb
@@ -111,7 +111,7 @@ module Fog
:status => 0,
:tasks => [task_id],
:vdc_id => id,
- :vdc_storage_class => data[:vdc_storage_classes].detect {|k,v| v[:default]}.first
+ :vdc_storage_class => data[:vdc_storage_classes].find {|k,v| v[:default]}.first
}
data[:disks][disk_id] = disk
diff --git a/lib/fog/vcloud_director/requests/compute/post_upload_media.rb b/lib/fog/vcloud_director/requests/compute/post_upload_media.rb
index 7b046fb..3baac04 100644
--- a/lib/fog/vcloud_director/requests/compute/post_upload_media.rb
+++ b/lib/fog/vcloud_director/requests/compute/post_upload_media.rb
@@ -98,7 +98,7 @@ module Fog
:status => 0,
:tasks => [task_id],
:vdc_id => vdc_id,
- :vdc_storage_class => data[:vdc_storage_classes].detect {|k,v| v[:default]}.first
+ :vdc_storage_class => data[:vdc_storage_classes].find {|k,v| v[:default]}.first
}
data[:medias][media_id] = media
diff --git a/lib/fog/vcloud_director/requests/compute/post_upload_vapp_template.rb b/lib/fog/vcloud_director/requests/compute/post_upload_vapp_template.rb
index f980d10..96771ee 100644
--- a/lib/fog/vcloud_director/requests/compute/post_upload_vapp_template.rb
+++ b/lib/fog/vcloud_director/requests/compute/post_upload_vapp_template.rb
@@ -34,7 +34,7 @@ module Fog
request(
:body => body,
:expects => 201,
- :headers => {'Content-Type' => 'application/vnd.vmware.vcloud.vAppTemplateParams+xml'},
+ :headers => {'Content-Type' => 'application/vnd.vmware.vcloud.uploadVAppTemplateParams+xml'},
:method => 'POST',
:parser => Fog::ToHashDocument.new,
:path => "vdc/#{vdc_id}/action/uploadVAppTemplate"
diff --git a/lib/fog/vcloud_director/requests/compute/put_cpu.rb b/lib/fog/vcloud_director/requests/compute/put_cpu.rb
index aefea28..23fdcf9 100644
--- a/lib/fog/vcloud_director/requests/compute/put_cpu.rb
+++ b/lib/fog/vcloud_director/requests/compute/put_cpu.rb
@@ -19,7 +19,14 @@ module Fog
# @since vCloud API version 0.9
def put_cpu(id, num_cpus)
data = <<EOF
- <Item xmlns="http://www.vmware.com/vcloud/v1.5" xmlns:rasd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns12="http://www.vmware.com/vcloud/v1.5" ns12:href="#{end_point}vApp/#{id}/virtualHardwareSection/cpu" ns12:type="application/vnd.vmware.vcloud.rasdItem+xml" xsi:schemaLocation="http://www.vmware.com/vcloud/v1.5 http://10.194.1.65/api/v1.5/schema/master.xsd http://schemas.dmtf [...]
+ <Item
+ xmlns="http://www.vmware.com/vcloud/v1.5"
+ xmlns:rasd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ns12="http://www.vmware.com/vcloud/v1.5"
+ ns12:href="#{end_point}vApp/#{id}/virtualHardwareSection/cpu"
+ ns12:type="application/vnd.vmware.vcloud.rasdItem+xml"
+ xsi:schemaLocation="http://www.vmware.com/vcloud/v1.5 #{end_point}v1.5/schema/master.xsd http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2.22.0/CIM_ResourceAllocationSettingData.xsd">
<rasd:AllocationUnits>hertz * 10^6</rasd:AllocationUnits>
<rasd:Description>Number of Virtual CPUs</rasd:Description>
<rasd:ElementName>#{num_cpus} virtual CPU(s)</rasd:ElementName>
@@ -42,6 +49,40 @@ EOF
)
end
end
+
+ class Mock
+
+ def put_cpu(id, num_cpus)
+ unless vm = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ owner = {
+ :href => make_href("vApp/#{id}"),
+ :type => 'application/vnd.vmware.vcloud.vm+xml'
+ }
+ task_id = enqueue_task(
+ "Updating Virtual Machine #{data[:vms][id][:name]}(#{id})", 'vappUpdateVm', owner,
+ :on_success => lambda do
+ data[:vms][id][:cpu_count] = num_cpus
+ end
+ )
+ body = {
+ :xmlns => xmlns,
+ :xmlns_xsi => xmlns_xsi,
+ :xsi_schemaLocation => xsi_schema_location,
+ }.merge(task_body(task_id))
+
+ Excon::Response.new(
+ :status => 202,
+ :headers => {'Content-Type' => "#{body[:type]};version=#{api_version}"},
+ :body => body
+ )
+ end
+
+ end
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/put_memory.rb b/lib/fog/vcloud_director/requests/compute/put_memory.rb
index ef19292..4ef42b5 100644
--- a/lib/fog/vcloud_director/requests/compute/put_memory.rb
+++ b/lib/fog/vcloud_director/requests/compute/put_memory.rb
@@ -19,7 +19,14 @@ module Fog
# @since vCloud API version 0.9
def put_memory(id, memory)
data = <<EOF
- <Item xmlns="http://www.vmware.com/vcloud/v1.5" xmlns:rasd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns12="http://www.vmware.com/vcloud/v1.5" ns12:href="#{end_point}vApp/#{id}/virtualHardwareSection/memory" ns12:type="application/vnd.vmware.vcloud.rasdItem+xml" xsi:schemaLocation="http://www.vmware.com/vcloud/v1.5 http://10.194.1.65/api/v1.5/schema/master.xsd http://schemas.d [...]
+ <Item
+ xmlns="http://www.vmware.com/vcloud/v1.5"
+ xmlns:rasd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ns12="http://www.vmware.com/vcloud/v1.5"
+ ns12:href="#{end_point}vApp/#{id}/virtualHardwareSection/memory"
+ ns12:type="application/vnd.vmware.vcloud.rasdItem+xml"
+ xsi:schemaLocation="http://www.vmware.com/vcloud/v1.5 #{end_point}v1.5/schema/master.xsd http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2.22.0/CIM_ResourceAllocationSettingData.xsd">
<rasd:AllocationUnits>byte * 2^20</rasd:AllocationUnits>
<rasd:Description>Memory Size</rasd:Description>
<rasd:ElementName>#{memory} MB of memory</rasd:ElementName>
@@ -42,6 +49,41 @@ EOF
)
end
end
+
+ class Mock
+
+ def put_memory(id, memory)
+ unless vm = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ owner = {
+ :href => make_href("vApp/#{id}"),
+ :type => 'application/vnd.vmware.vcloud.vm+xml'
+ }
+ task_id = enqueue_task(
+ "Updating Virtual Machine #{data[:vms][id][:name]}(#{id})", 'vappUpdateVm', owner,
+ :on_success => lambda do
+ data[:vms][id][:memory_in_mb] = memory
+ end
+ )
+ body = {
+ :xmlns => xmlns,
+ :xmlns_xsi => xmlns_xsi,
+ :xsi_schemaLocation => xsi_schema_location,
+ }.merge(task_body(task_id))
+
+ Excon::Response.new(
+ :status => 202,
+ :headers => {'Content-Type' => "#{body[:type]};version=#{api_version}"},
+ :body => body
+ )
+
+ end
+
+ end
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/put_network.rb b/lib/fog/vcloud_director/requests/compute/put_network.rb
new file mode 100644
index 0000000..cb32c33
--- /dev/null
+++ b/lib/fog/vcloud_director/requests/compute/put_network.rb
@@ -0,0 +1,162 @@
+module Fog
+ module Compute
+ class VcloudDirector
+ class Real
+ require 'fog/vcloud_director/generators/compute/org_vdc_network'
+
+ # Update an Org vDC network.
+ #
+ # This operation is asynchronous and returns a task that you can
+ # monitor to track the progress of the request.
+ #
+ # Produce media type(s):
+ # application/vnd.vmware.vcloud.orgVdcNetwork+xml
+ # Output type:
+ # TaskType
+ #
+ # @param [String] id Object identifier of the network
+ # @param [String] name The name of the entity.
+ # @param [Hash] options
+ # @option options [String] :Description Optional description.
+ # @option options [Hash] :Configuration Network configuration.
+ # @option options [Hash] :EdgeGateway EdgeGateway that connects this
+ # Org vDC network. Applicable only for routed networks.
+ # @option options [Hash] :ServiceConfig Specifies the service
+ # configuration for an isolated Org vDC networks.
+ # @option options [Boolean] :IsShared True if this network is shared
+ # to multiple Org vDCs.
+ # * :Configuration<~Hash>: NetworkConfigurationType
+ # * :IpScopes<~Hash>:
+ # * :IpScope<~Hash>:
+ # * :IsInherited<~Boolean>: ?
+ # * :Gateway<~String>: IP address of gw
+ # * :Netmask<~String>: Subnet mask of network
+ # * :Dns1<~String>: Primary DNS server.
+ # * :Dns2<~String>: Secondary DNS server.
+ # * :DnsSuffix<~String>: DNS suffix.
+ # * :IsEnabled<~String>: Indicates if subnet is enabled or not.
+ # Default value is True.
+ # * :IpRanges<~Array>: IP ranges used for static pool allocation
+ # in the network. Array of Hashes of:
+ # * :StartAddress - start IP in range
+ # * :EndAddress - end IP in range
+ # * :EdgeGateway<~Hash>: EdgeGateway that connects this Org vDC
+ # network. Applicable only for routed networks.
+ # * :ServiceConfig<~Hash>: Specifies the service configuration for an
+ # isolated network
+ #
+ # @return [Excon::Response]
+ # * body<~Hash>:
+ #
+ # @see http://pubs.vmware.com/vcd-51/topic/com.vmware.vcloud.api.reference.doc_51/doc/operations/POST-CreateOrgVdcNetwork.html
+ # @since vCloud API version 5.1
+ def put_network(id, name, options={})
+ body = Fog::Generators::Compute::VcloudDirector::OrgVdcNetwork.new(options.merge(:name => name)).generate_xml
+
+ request(
+ :body => body,
+ :expects => 202,
+ :headers => {'Content-Type' => 'application/vnd.vmware.vcloud.orgVdcNetwork+xml'},
+ :method => 'PUT',
+ :parser => Fog::ToHashDocument.new,
+ :path => "admin/network/#{id}"
+ )
+ end
+ end
+
+ class Mock
+ def put_network(id, name, options={})
+ original_network = data[:networks][id]
+ unless original_network
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ "No access to entity \"(com.vmware.vcloud.entity.orgVdcNetwork:#{id})\"."
+ )
+ end
+
+ type = 'network'
+
+ # Description
+ # Configuration
+ # IpScopes
+ # IpScope
+ # IsInherited
+ # Gateway
+ # Netmask
+ # Dns1
+ # Dns2
+ # DnsSuffix
+ # IsEnabled
+ # IpRanges
+ # IpRange
+ # StartAddress
+ # EndAddress
+ # FenceMode
+ # EdgeGateway
+ # IsShared
+ #
+ vdc_id = original_network[:vdc],
+
+ network_body = {
+ :name => name,
+ :vdc => vdc_id,
+ }
+
+ [:Description, :IsShared].each do |key|
+ network_body[key] = options[key] if options.key?(key)
+ end
+
+ if options.key?(:EdgeGateway)
+ network_body[:EdgeGateway] =
+ options[:EdgeGateway][:href].split('/').last
+ end
+
+ if configuration = options[:Configuration]
+ if ip_scopes = configuration[:IpScopes]
+ if ip_scope = ip_scopes[:IpScope]
+ [:IsInherited, :Gateway, :Netmask,
+ :Dns1, :Dns2, :DnsSuffix, :IsEnabled].each do |key|
+ network_body[key] = ip_scope[key] if ip_scope.key?(key)
+ end
+ if ip_ranges = ip_scope[:IpRanges]
+ network_body[:IpRanges] = []
+ ip_ranges.each do |ipr|
+ network_body[:IpRanges] << {
+ :StartAddress => ipr[:IpRange][:StartAddress],
+ :EndAddress => ipr[:IpRange][:EndAddress]
+ }
+ end
+ end
+ end
+ end
+ network_body[:FenceMode] = configuration[:FenceMode] if ip_scope.key?(:FenceMode)
+ end
+
+ owner = {
+ :href => make_href("#{type}/#{id}"),
+ :type => "application/vnd.vmware.vcloud.#{type}+xml"
+ }
+ task_id = enqueue_task(
+ "Updating #{type} #{name} (#{id})", 'networkUpdateNetwork', owner,
+ :on_success => lambda do
+ data[:networks][id] = network_body
+ end
+ )
+ task = task_body(task_id)
+ task.delete(:Owner) #known-bug: admin-api does not return owner.
+ body = {
+ :xmlns => xmlns,
+ :xmlns_xsi => xmlns_xsi,
+ :xsi_schemaLocation => xsi_schema_location,
+ }.merge(task)
+
+ Excon::Response.new(
+ :status => 202,
+ :headers => {'Content-Type' => "#{body[:type]};version=#{api_version}"},
+ :body => body
+ )
+
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/vcloud_director/requests/compute/put_product_sections.rb b/lib/fog/vcloud_director/requests/compute/put_product_sections.rb
new file mode 100644
index 0000000..ba6acfb
--- /dev/null
+++ b/lib/fog/vcloud_director/requests/compute/put_product_sections.rb
@@ -0,0 +1,43 @@
+module Fog
+ module Compute
+ class VcloudDirector
+ class Real
+ # Set the value for the specified metadata key to the value provided,
+ # overwriting any existing value.
+ #
+ # @param [String] id Object identifier of the vApp
+ # @param [Array] sections List of sections hashes
+ # @return [Excon::Response]
+ # * body<~Hash>:
+ #
+ # @see http://pubs.vmware.com/vcd-51/topic/com.vmware.vcloud.api.doc_51/GUID-E13A5613-8A41-46E3-889B-8E1EAF10ABBE.html
+ # @since vCloud API version 1.5
+ def put_product_sections(id, sections)
+ xml = '<ProductSectionList xmlns="http://www.vmware.com/vcloud/v1.5" xmlns:ovf="http://schemas.dmtf.org/ovf/envelope/1">'
+ xml += '<ovf:ProductSection>'
+ xml += '<ovf:Info>Global vApp Custom Properties</ovf:Info>'
+ xml += '<ovf:Category>Global</ovf:Category>'
+
+ sections.each do |section|
+ section[:user_configurable] ||= true
+ section[:type] ||= "string"
+ section[:password] ||= false
+ xml += "<ovf:Property ovf:userConfigurable='#{section[:user_configurable]}' ovf:type='#{section[:type]}' ovf:password='#{section[:password]}' ovf:key='#{section[:id]}' ovf:value='#{section[:value]}'/>"
+ end
+
+ xml += '</ovf:ProductSection>'
+ xml += "</ProductSectionList>"
+
+ request(
+ :body => xml,
+ :expects => 202,
+ :headers => {'Content-Type' => 'application/vnd.vmware.vcloud.productSections+xml'},
+ :method => 'PUT',
+ :parser => Fog::ToHashDocument.new,
+ :path => "vApp/#{id}/productSections"
+ )
+ end
+ end
+ end
+ end
+end
diff --git a/lib/fog/vcloud_director/requests/compute/put_vapp_metadata_item_metadata.rb b/lib/fog/vcloud_director/requests/compute/put_vapp_metadata_item_metadata.rb
index 65b665b..08f3bc9 100644
--- a/lib/fog/vcloud_director/requests/compute/put_vapp_metadata_item_metadata.rb
+++ b/lib/fog/vcloud_director/requests/compute/put_vapp_metadata_item_metadata.rb
@@ -45,6 +45,41 @@ module Fog
)
end
end
+
+ class Mock
+
+ def put_vapp_metadata_item_metadata(id, key, value)
+ unless vm_or_vapp = data[:vapps][id] || vm_or_vapp = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ owner = {
+ :href => make_href("vApp/#{id}"),
+ :type => 'application/vnd.vmware.vcloud.vm+xml'
+ }
+ task_id = enqueue_task(
+ "Updating Virtual Machine #{vm_or_vapp[:name]}(#{id})", 'vappUpdateVm', owner,
+ :on_success => lambda do
+ vm_or_vapp[:metadata][key] = value
+ end
+ )
+ body = {
+ :xmlns => xmlns,
+ :xmlns_xsi => xmlns_xsi,
+ :xsi_schemaLocation => xsi_schema_location,
+ }.merge(task_body(task_id))
+
+ Excon::Response.new(
+ :status => 202,
+ :headers => {'Content-Type' => "#{body[:type]};version=#{api_version}"},
+ :body => body
+ )
+
+ end
+
+ end
end
end
end
diff --git a/lib/fog/vcloud_director/requests/compute/put_vapp_name_and_description.rb b/lib/fog/vcloud_director/requests/compute/put_vapp_name_and_description.rb
index a7110cf..95afd37 100644
--- a/lib/fog/vcloud_director/requests/compute/put_vapp_name_and_description.rb
+++ b/lib/fog/vcloud_director/requests/compute/put_vapp_name_and_description.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class VcloudDirector
class Real
-
require 'fog/vcloud_director/generators/compute/vapp'
# Modify the name or description of a vApp.
diff --git a/lib/fog/vcloud_director/requests/compute/put_vm.rb b/lib/fog/vcloud_director/requests/compute/put_vm.rb
index 11bfaa4..19ee495 100644
--- a/lib/fog/vcloud_director/requests/compute/put_vm.rb
+++ b/lib/fog/vcloud_director/requests/compute/put_vm.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class VcloudDirector
class Real
-
require 'fog/vcloud_director/generators/compute/vm'
# Update the name, description and storage profile for VM.
@@ -34,6 +33,40 @@ module Fog
)
end
end
+
+ class Mock
+
+ def put_vm(id, name, options)
+ unless vm = data[:vms][id]
+ raise Fog::Compute::VcloudDirector::Forbidden.new(
+ 'This operation is denied.'
+ )
+ end
+
+ owner = {
+ :href => make_href("vApp/#{id}"),
+ :type => 'application/vnd.vmware.vcloud.vm+xml'
+ }
+ task_id = enqueue_task(
+ "Updating Virtual Machine #{data[:vms][id][:name]}(#{id})", 'vappUpdateVm', owner,
+ :on_success => lambda do
+ data[:vms][id][:name] = name
+ end
+ )
+ body = {
+ :xmlns => xmlns,
+ :xmlns_xsi => xmlns_xsi,
+ :xsi_schemaLocation => xsi_schema_location,
+ }.merge(task_body(task_id))
+
+ Excon::Response.new(
+ :status => 202,
+ :headers => {'Content-Type' => "#{body[:type]};version=#{api_version}"},
+ :body => body
+ )
+ end
+
+ end
end
end
end
diff --git a/lib/fog/version.rb b/lib/fog/version.rb
index b6c2aa7..e9d4f2d 100644
--- a/lib/fog/version.rb
+++ b/lib/fog/version.rb
@@ -1,3 +1,3 @@
module Fog
- VERSION = '1.22.0'
+ VERSION = '1.24.0'
end
diff --git a/lib/fog/vmfusion/compute.rb b/lib/fog/vmfusion/compute.rb
index 1a7d7ee..b21436c 100644
--- a/lib/fog/vmfusion/compute.rb
+++ b/lib/fog/vmfusion/compute.rb
@@ -3,21 +3,17 @@ require 'fog/vmfusion/core'
module Fog
module Compute
class Vmfusion < Fog::Service
-
model_path 'fog/vmfusion/models/compute'
model :server
collection :servers
class Mock
-
def initialize(options={})
Fog::Mock.not_implemented
end
-
end
class Real
-
def initialize(options={})
begin
require 'fission'
@@ -26,7 +22,6 @@ module Fog
raise e.message
end
end
-
end
end
end
diff --git a/lib/fog/vmfusion/core.rb b/lib/fog/vmfusion/core.rb
index 49778d7..2deafe9 100644
--- a/lib/fog/vmfusion/core.rb
+++ b/lib/fog/vmfusion/core.rb
@@ -2,10 +2,8 @@ require 'fog/core'
module Fog
module Vmfusion
-
extend Fog::Provider
service(:compute, 'Compute')
-
end
end
diff --git a/lib/fog/vmfusion/models/compute/server.rb b/lib/fog/vmfusion/models/compute/server.rb
index 0e3c6d2..b0b7869 100644
--- a/lib/fog/vmfusion/models/compute/server.rb
+++ b/lib/fog/vmfusion/models/compute/server.rb
@@ -3,9 +3,7 @@ require 'fog/compute/models/server'
module Fog
module Compute
class Vmfusion
-
class Server < Fog::Compute::Server
-
identity :name
attribute :ipaddress
diff --git a/lib/fog/vmfusion/models/compute/servers.rb b/lib/fog/vmfusion/models/compute/servers.rb
index d8450ca..d0b0a66 100644
--- a/lib/fog/vmfusion/models/compute/servers.rb
+++ b/lib/fog/vmfusion/models/compute/servers.rb
@@ -4,19 +4,16 @@ require 'fog/vmfusion/models/compute/server'
module Fog
module Compute
class Vmfusion
-
class Servers < Fog::Collection
-
model Fog::Compute::Vmfusion::Server
def all(filter = nil)
-
data = []
states = ::Fission::VM.all_with_status.data
filter = {} if filter.nil?
- unless filter.has_key?(:name)
+ unless filter.key?(:name)
vms=::Fission::VM.all.data
vms.each do |vm|
data << { :raw => { :fission => vm,
@@ -28,13 +25,11 @@ module Fog
end
load(data)
-
end
def get(name)
self.all(:name => name).first
end
-
end
end
end
diff --git a/lib/fog/voxel/compute.rb b/lib/fog/voxel/compute.rb
index d68f959..2224dc1 100644
--- a/lib/fog/voxel/compute.rb
+++ b/lib/fog/voxel/compute.rb
@@ -3,7 +3,6 @@ require 'fog/voxel/core'
module Fog
module Compute
class Voxel < Fog::Service
-
requires :voxel_api_key, :voxel_api_secret
recognizes :host, :port, :scheme, :persistent
@@ -65,7 +64,6 @@ module Fog
def reset_data
self.class.data.delete(@voxel_api_key)
end
-
end
class Real
diff --git a/lib/fog/voxel/core.rb b/lib/fog/voxel/core.rb
index f99d18e..b9960fc 100644
--- a/lib/fog/voxel/core.rb
+++ b/lib/fog/voxel/core.rb
@@ -4,7 +4,6 @@ require 'digest/md5'
module Fog
module Voxel
-
extend Fog::Provider
service(:compute, 'Compute')
diff --git a/lib/fog/voxel/models/compute/image.rb b/lib/fog/voxel/models/compute/image.rb
index a07024e..b4b9d10 100644
--- a/lib/fog/voxel/models/compute/image.rb
+++ b/lib/fog/voxel/models/compute/image.rb
@@ -4,11 +4,9 @@ module Fog
module Compute
class Voxel
class Image < Fog::Model
-
identity :id
attribute :summary
-
end
end
end
diff --git a/lib/fog/voxel/models/compute/images.rb b/lib/fog/voxel/models/compute/images.rb
index 8eaa3fa..50d8014 100644
--- a/lib/fog/voxel/models/compute/images.rb
+++ b/lib/fog/voxel/models/compute/images.rb
@@ -4,9 +4,7 @@ require 'fog/voxel/models/compute/image'
module Fog
module Compute
class Voxel
-
class Images < Fog::Collection
-
model Fog::Compute::Voxel::Image
def all
@@ -24,7 +22,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/voxel/models/compute/server.rb b/lib/fog/voxel/models/compute/server.rb
index c55d1e5..fe460d7 100644
--- a/lib/fog/voxel/models/compute/server.rb
+++ b/lib/fog/voxel/models/compute/server.rb
@@ -3,9 +3,7 @@ require 'fog/compute/models/server'
module Fog
module Compute
class Voxel
-
class Server < Fog::Compute::Server
-
identity :id
attribute :name
@@ -69,10 +67,7 @@ module Fog
true
end
-
end
-
end
-
end
end
diff --git a/lib/fog/voxel/models/compute/servers.rb b/lib/fog/voxel/models/compute/servers.rb
index f2cefa8..cc61962 100644
--- a/lib/fog/voxel/models/compute/servers.rb
+++ b/lib/fog/voxel/models/compute/servers.rb
@@ -5,7 +5,6 @@ module Fog
module Compute
class Voxel
class Servers < Fog::Collection
-
model Fog::Compute::Voxel::Server
def all
@@ -24,9 +23,7 @@ module Fog
raise error
end
end
-
end
-
end
end
end
diff --git a/lib/fog/voxel/parsers/compute/basic.rb b/lib/fog/voxel/parsers/compute/basic.rb
index 9bdbc47..455cfb6 100644
--- a/lib/fog/voxel/parsers/compute/basic.rb
+++ b/lib/fog/voxel/parsers/compute/basic.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module Voxel
-
class Basic < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -22,9 +20,7 @@ module Fog
@response['stat'] = attr_value('stat', attrs)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/voxel/parsers/compute/devices_list.rb b/lib/fog/voxel/parsers/compute/devices_list.rb
index 4f45e80..986e303 100644
--- a/lib/fog/voxel/parsers/compute/devices_list.rb
+++ b/lib/fog/voxel/parsers/compute/devices_list.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module Voxel
-
class DevicesList < Fog::Parsers::Base
-
def reset
@device = {}
@response = { 'devices' => [] }
@@ -102,9 +100,7 @@ module Fog
@access_method[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/voxel/parsers/compute/images_list.rb b/lib/fog/voxel/parsers/compute/images_list.rb
index 9501e78..7f95eb6 100644
--- a/lib/fog/voxel/parsers/compute/images_list.rb
+++ b/lib/fog/voxel/parsers/compute/images_list.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module Voxel
-
class ImagesList < Fog::Parsers::Base
-
def reset
@image = {}
@response = { 'images' => [] }
@@ -50,9 +48,7 @@ module Fog
@image['filesystem'][name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/voxel/parsers/compute/voxcloud_create.rb b/lib/fog/voxel/parsers/compute/voxcloud_create.rb
index 12da265..3f4579d 100644
--- a/lib/fog/voxel/parsers/compute/voxcloud_create.rb
+++ b/lib/fog/voxel/parsers/compute/voxcloud_create.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module Voxel
-
class VoxcloudCreate < Fog::Parsers::Base
-
def reset
@response = { 'device' => {} }
end
@@ -31,9 +29,7 @@ module Fog
@response['device'][name] = Time.at(value.to_i)
end
end
-
end
-
end
end
end
diff --git a/lib/fog/voxel/parsers/compute/voxcloud_delete.rb b/lib/fog/voxel/parsers/compute/voxcloud_delete.rb
index ad41dc6..f3ceb1f 100644
--- a/lib/fog/voxel/parsers/compute/voxcloud_delete.rb
+++ b/lib/fog/voxel/parsers/compute/voxcloud_delete.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module Compute
module Voxel
-
class VoxcloudDelete < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -22,9 +20,7 @@ module Fog
}
end
end
-
end
-
end
end
end
diff --git a/lib/fog/voxel/requests/compute/devices_list.rb b/lib/fog/voxel/requests/compute/devices_list.rb
index 259d453..e27a6b6 100644
--- a/lib/fog/voxel/requests/compute/devices_list.rb
+++ b/lib/fog/voxel/requests/compute/devices_list.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Voxel
class Real
-
require 'fog/voxel/parsers/compute/devices_list'
def devices_list(device_id = nil)
@@ -18,7 +17,6 @@ module Fog
request("voxel.devices.list", options)
end
end
-
end
end
end
diff --git a/lib/fog/voxel/requests/compute/devices_power.rb b/lib/fog/voxel/requests/compute/devices_power.rb
index 8ea1aae..00591c9 100644
--- a/lib/fog/voxel/requests/compute/devices_power.rb
+++ b/lib/fog/voxel/requests/compute/devices_power.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Voxel
class Real
-
require 'fog/voxel/parsers/compute/basic'
def devices_power(device_id, power_action)
@@ -16,7 +15,6 @@ module Fog
request("voxel.devices.power", options)
end
end
-
end
end
end
diff --git a/lib/fog/voxel/requests/compute/images_list.rb b/lib/fog/voxel/requests/compute/images_list.rb
index 1bd644f..a596d9b 100644
--- a/lib/fog/voxel/requests/compute/images_list.rb
+++ b/lib/fog/voxel/requests/compute/images_list.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Voxel
class Real
-
require 'fog/voxel/parsers/compute/images_list'
def images_list(image_id = nil)
@@ -25,7 +24,6 @@ module Fog
end
end
end
-
end
end
end
diff --git a/lib/fog/voxel/requests/compute/voxcloud_create.rb b/lib/fog/voxel/requests/compute/voxcloud_create.rb
index b1e58d7..aa898d2 100644
--- a/lib/fog/voxel/requests/compute/voxcloud_create.rb
+++ b/lib/fog/voxel/requests/compute/voxcloud_create.rb
@@ -2,13 +2,12 @@ module Fog
module Compute
class Voxel
class Real
-
require 'fog/voxel/parsers/compute/voxcloud_create'
def voxcloud_create(options)
options[:parser] = Fog::Parsers::Compute::Voxel::VoxcloudCreate.new
- if options.has_key?(:password)
+ if options.key?(:password)
options[:admin_password] = options[:password]
options.delete(:password)
end
@@ -16,7 +15,6 @@ module Fog
request("voxel.voxcloud.create", options)
end
end
-
end
end
end
diff --git a/lib/fog/voxel/requests/compute/voxcloud_delete.rb b/lib/fog/voxel/requests/compute/voxcloud_delete.rb
index 58c94dd..c3d49aa 100644
--- a/lib/fog/voxel/requests/compute/voxcloud_delete.rb
+++ b/lib/fog/voxel/requests/compute/voxcloud_delete.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Voxel
class Real
-
require 'fog/voxel/parsers/compute/voxcloud_delete'
def voxcloud_delete(device_id)
@@ -14,7 +13,6 @@ module Fog
request("voxel.voxcloud.delete", options)
end
end
-
end
end
end
diff --git a/lib/fog/voxel/requests/compute/voxcloud_status.rb b/lib/fog/voxel/requests/compute/voxcloud_status.rb
index ecea33a..a23ccee 100644
--- a/lib/fog/voxel/requests/compute/voxcloud_status.rb
+++ b/lib/fog/voxel/requests/compute/voxcloud_status.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Voxel
class Real
-
require 'fog/voxel/parsers/compute/voxcloud_status'
def voxcloud_status(device_id = nil)
@@ -17,7 +16,6 @@ module Fog
request("voxel.voxcloud.status", options)
end
-
end
end
end
diff --git a/lib/fog/vsphere/compute.rb b/lib/fog/vsphere/compute.rb
index 9598cfc..ae21b29 100644
--- a/lib/fog/vsphere/compute.rb
+++ b/lib/fog/vsphere/compute.rb
@@ -4,7 +4,6 @@ require 'digest/sha2'
module Fog
module Compute
class Vsphere < Fog::Service
-
requires :vsphere_username, :vsphere_password, :vsphere_server
recognizes :vsphere_port, :vsphere_path, :vsphere_ns
recognizes :vsphere_rev, :vsphere_ssl, :vsphere_expected_pubkey_hash
@@ -84,7 +83,6 @@ module Fog
request :set_vm_customvalue
module Shared
-
attr_reader :vsphere_is_vcenter
attr_reader :vsphere_rev
attr_reader :vsphere_server
@@ -111,6 +109,7 @@ module Fog
:corespersocket => 'config.hardware.numCoresPerSocket',
:overall_status => 'overallStatus',
:guest_id => 'config.guestId',
+ :hardware_version => 'config.version',
}
def convert_vm_view_to_attr_hash(vms)
@@ -155,7 +154,6 @@ module Fog
attrs['mac_addresses'] = Proc.new {vm_mob_ref.macs rescue nil}
# Rescue nil to catch testing while vm_mob_ref isn't reaL??
attrs['path'] = "/"+attrs['parent'].path.map(&:last).join('/') rescue nil
- attrs['relative_path'] = (attrs['path'].split('/').reject {|e| e.empty?} - ["Datacenters", attrs['datacenter'], "vm"]).join("/") rescue nil
end
end
# returns the parent object based on a type
@@ -186,11 +184,9 @@ module Fog
def is_uuid?(id)
!(id =~ /[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/).nil?
end
-
end
class Mock
-
include Shared
def self.data
@@ -333,7 +329,6 @@ module Fog
end
class Real
-
include Shared
def initialize(options={})
@@ -418,9 +413,7 @@ module Fog
raise Fog::Vsphere::Errors::SecurityError, "The remote system presented a public key with hash #{pubkey_hash} but we're expecting a hash of #{expected_pubkey_hash || '<unset>'}. If you are sure the remote system is authentic set vsphere_expected_pubkey_hash: <the hash printed in this message> in ~/.fog"
end
end
-
end
-
end
end
end
diff --git a/lib/fog/vsphere/core.rb b/lib/fog/vsphere/core.rb
index 82c7b2a..cb718af 100644
--- a/lib/fog/vsphere/core.rb
+++ b/lib/fog/vsphere/core.rb
@@ -2,7 +2,6 @@ require 'fog/core'
module Fog
module Vsphere
-
extend Fog::Provider
module Errors
diff --git a/lib/fog/vsphere/models/compute/cluster.rb b/lib/fog/vsphere/models/compute/cluster.rb
index d79d335..ed6a568 100644
--- a/lib/fog/vsphere/models/compute/cluster.rb
+++ b/lib/fog/vsphere/models/compute/cluster.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Vsphere
-
class Cluster < Fog::Model
-
identity :id
attribute :name
@@ -23,9 +21,7 @@ module Fog
def to_s
name
end
-
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/clusters.rb b/lib/fog/vsphere/models/compute/clusters.rb
index c78d94b..440b47a 100644
--- a/lib/fog/vsphere/models/compute/clusters.rb
+++ b/lib/fog/vsphere/models/compute/clusters.rb
@@ -4,9 +4,7 @@ require 'fog/vsphere/models/compute/cluster'
module Fog
module Compute
class Vsphere
-
class Clusters < Fog::Collection
-
model Fog::Compute::Vsphere::Cluster
attr_accessor :datacenter
@@ -19,7 +17,6 @@ module Fog
requires :datacenter
new service.get_cluster(id, datacenter)
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/customfield.rb b/lib/fog/vsphere/models/compute/customfield.rb
index f757a00..83bde14 100644
--- a/lib/fog/vsphere/models/compute/customfield.rb
+++ b/lib/fog/vsphere/models/compute/customfield.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Vsphere
-
class Customfield < Fog::Model
-
identity :key
attribute :name
@@ -13,7 +11,6 @@ module Fog
name
end
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/customfields.rb b/lib/fog/vsphere/models/compute/customfields.rb
index 22d88d7..f2341ea 100644
--- a/lib/fog/vsphere/models/compute/customfields.rb
+++ b/lib/fog/vsphere/models/compute/customfields.rb
@@ -4,9 +4,7 @@ require 'fog/vsphere/models/compute/customfield'
module Fog
module Compute
class Vsphere
-
class Customfields < Fog::Collection
-
model Fog::Compute::Vsphere::Customfield
attr_accessor :vm
@@ -20,7 +18,6 @@ module Fog
cv.key == ((key.is_a? String) ? key.to_i : key)
end
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/customvalue.rb b/lib/fog/vsphere/models/compute/customvalue.rb
index 1d8da43..399c0c4 100644
--- a/lib/fog/vsphere/models/compute/customvalue.rb
+++ b/lib/fog/vsphere/models/compute/customvalue.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Vsphere
-
class Customvalue < Fog::Model
-
attribute :value
attribute :key
@@ -11,7 +9,6 @@ module Fog
value
end
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/customvalues.rb b/lib/fog/vsphere/models/compute/customvalues.rb
index b0de1aa..fbec741 100644
--- a/lib/fog/vsphere/models/compute/customvalues.rb
+++ b/lib/fog/vsphere/models/compute/customvalues.rb
@@ -4,9 +4,7 @@ require 'fog/vsphere/models/compute/customvalue'
module Fog
module Compute
class Vsphere
-
class Customvalues < Fog::Collection
-
model Fog::Compute::Vsphere::Customvalue
attr_accessor :vm
@@ -30,7 +28,6 @@ module Fog
raise 'customvalues should have vm'
end.find { | cv | cv.key == key }
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/datacenter.rb b/lib/fog/vsphere/models/compute/datacenter.rb
index 29d1ea0..26b7d6c 100644
--- a/lib/fog/vsphere/models/compute/datacenter.rb
+++ b/lib/fog/vsphere/models/compute/datacenter.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Vsphere
-
class Datacenter < Fog::Model
-
identity :id
attribute :name
attribute :path
@@ -40,9 +38,7 @@ module Fog
def to_s
name
end
-
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/datacenters.rb b/lib/fog/vsphere/models/compute/datacenters.rb
index 234fa82..c5812bc 100644
--- a/lib/fog/vsphere/models/compute/datacenters.rb
+++ b/lib/fog/vsphere/models/compute/datacenters.rb
@@ -4,9 +4,7 @@ require 'fog/vsphere/models/compute/datacenter'
module Fog
module Compute
class Vsphere
-
class Datacenters < Fog::Collection
-
model Fog::Compute::Vsphere::Datacenter
def all(filters = {})
@@ -16,7 +14,6 @@ module Fog
def get(name)
new service.get_datacenter(name)
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/datastore.rb b/lib/fog/vsphere/models/compute/datastore.rb
index 0735f41..6baa221 100644
--- a/lib/fog/vsphere/models/compute/datastore.rb
+++ b/lib/fog/vsphere/models/compute/datastore.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Vsphere
-
class Datastore < Fog::Model
-
identity :id
attribute :name
@@ -17,9 +15,7 @@ module Fog
def to_s
name
end
-
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/datastores.rb b/lib/fog/vsphere/models/compute/datastores.rb
index acec5a1..67bbcd0 100644
--- a/lib/fog/vsphere/models/compute/datastores.rb
+++ b/lib/fog/vsphere/models/compute/datastores.rb
@@ -4,9 +4,7 @@ require 'fog/vsphere/models/compute/datastore'
module Fog
module Compute
class Vsphere
-
class Datastores < Fog::Collection
-
model Fog::Compute::Vsphere::Datastore
attr_accessor :datacenter
@@ -18,7 +16,6 @@ module Fog
requires :datacenter
new service.get_datastore(id, datacenter)
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/folder.rb b/lib/fog/vsphere/models/compute/folder.rb
index abc0ff9..7dea57e 100644
--- a/lib/fog/vsphere/models/compute/folder.rb
+++ b/lib/fog/vsphere/models/compute/folder.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Vsphere
-
class Folder < Fog::Model
-
identity :id
attribute :name
@@ -20,9 +18,7 @@ module Fog
def to_s
name
end
-
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/folders.rb b/lib/fog/vsphere/models/compute/folders.rb
index 4341730..467bb78 100644
--- a/lib/fog/vsphere/models/compute/folders.rb
+++ b/lib/fog/vsphere/models/compute/folders.rb
@@ -4,9 +4,7 @@ require 'fog/vsphere/models/compute/folder'
module Fog
module Compute
class Vsphere
-
class Folders < Fog::Collection
-
model Fog::Compute::Vsphere::Folder
attr_accessor :datacenter, :type, :path
@@ -20,7 +18,6 @@ module Fog
requires :datacenter
new service.get_folder(id, datacenter, type)
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/interface.rb b/lib/fog/vsphere/models/compute/interface.rb
index e708a41..198501a 100644
--- a/lib/fog/vsphere/models/compute/interface.rb
+++ b/lib/fog/vsphere/models/compute/interface.rb
@@ -1,13 +1,11 @@
module Fog
module Compute
class Vsphere
-
class Interface < Fog::Model
-
SAVE_MUTEX = Mutex.new
identity :mac
- alias :id :mac
+ alias_method :id, :mac
attribute :network
attribute :name
@@ -22,7 +20,7 @@ module Fog
# Assign server first to prevent race condition with persisted?
self.server_id = attributes.delete(:server_id)
- if attributes.has_key? :type then
+ if attributes.key? :type then
if attributes[:type].is_a? String then
attributes[:type] = Fog::Vsphere.class_from_string(attributes[:type], "RbVmomi::VIM")
end
@@ -87,9 +85,7 @@ module Fog
:type=> Fog::Vsphere.class_from_string(default_type, "RbVmomi::VIM"),
}
end
-
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/interfaces.rb b/lib/fog/vsphere/models/compute/interfaces.rb
index 93aac6b..04d3dbf 100644
--- a/lib/fog/vsphere/models/compute/interfaces.rb
+++ b/lib/fog/vsphere/models/compute/interfaces.rb
@@ -4,15 +4,13 @@ require 'fog/vsphere/models/compute/interface'
module Fog
module Compute
class Vsphere
-
class Interfaces < Fog::Collection
-
model Fog::Compute::Vsphere::Interface
- attribute :server
+ attribute :server_id
def all(filters = {})
- requires :server
+ requires :server_id
case server
when Fog::Compute::Vsphere::Server
@@ -28,7 +26,7 @@ module Fog
end
def get(id)
- requires :server
+ requires :server_id
case server
when Fog::Compute::Vsphere::Server
@@ -48,13 +46,22 @@ module Fog
end
def new(attributes = {})
- if server
- super({ :server_id => server.id }.merge(attributes))
+ if server_id
+ super({ :server_id => server_id }.merge(attributes))
else
super
end
end
- end
+
+ def server
+ return nil if server_id.nil?
+ service.servers.get(server_id)
+ end
+
+ def server=(new_server)
+ server_id = new_server.id
+ end
+ end
end
end
end
diff --git a/lib/fog/vsphere/models/compute/interfacetype.rb b/lib/fog/vsphere/models/compute/interfacetype.rb
index 68a2578..66f1b3f 100644
--- a/lib/fog/vsphere/models/compute/interfacetype.rb
+++ b/lib/fog/vsphere/models/compute/interfacetype.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Vsphere
-
class Interfacetype < Fog::Model
-
identity :id
# attribute :class
@@ -18,9 +16,7 @@ module Fog
def to_s
name
end
-
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/interfacetypes.rb b/lib/fog/vsphere/models/compute/interfacetypes.rb
index d090f4b..a5365b4 100644
--- a/lib/fog/vsphere/models/compute/interfacetypes.rb
+++ b/lib/fog/vsphere/models/compute/interfacetypes.rb
@@ -4,9 +4,7 @@ require 'fog/vsphere/models/compute/interfacetype'
module Fog
module Compute
class Vsphere
-
class Interfacetypes < Fog::Collection
-
model Fog::Compute::Vsphere::Interfacetype
attr_accessor :datacenter
attr_accessor :servertype
@@ -31,10 +29,7 @@ module Fog
rescue Fog::Compute::Vsphere::NotFound
nil
end
-
end
-
end
end
end
-
diff --git a/lib/fog/vsphere/models/compute/network.rb b/lib/fog/vsphere/models/compute/network.rb
index 223c957..c053189 100644
--- a/lib/fog/vsphere/models/compute/network.rb
+++ b/lib/fog/vsphere/models/compute/network.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Vsphere
-
class Network < Fog::Model
-
identity :id
attribute :name
@@ -13,9 +11,7 @@ module Fog
def to_s
name
end
-
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/networks.rb b/lib/fog/vsphere/models/compute/networks.rb
index 56581ed..c727cb9 100644
--- a/lib/fog/vsphere/models/compute/networks.rb
+++ b/lib/fog/vsphere/models/compute/networks.rb
@@ -4,9 +4,7 @@ require 'fog/vsphere/models/compute/network'
module Fog
module Compute
class Vsphere
-
class Networks < Fog::Collection
-
model Fog::Compute::Vsphere::Network
attr_accessor :datacenter
diff --git a/lib/fog/vsphere/models/compute/resource_pool.rb b/lib/fog/vsphere/models/compute/resource_pool.rb
index 47beb1e..d5f1b91 100644
--- a/lib/fog/vsphere/models/compute/resource_pool.rb
+++ b/lib/fog/vsphere/models/compute/resource_pool.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Vsphere
-
class ResourcePool < Fog::Model
-
identity :id
attribute :name
@@ -15,9 +13,7 @@ module Fog
def to_s
name
end
-
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/resource_pools.rb b/lib/fog/vsphere/models/compute/resource_pools.rb
index ef132ae..4407eba 100644
--- a/lib/fog/vsphere/models/compute/resource_pools.rb
+++ b/lib/fog/vsphere/models/compute/resource_pools.rb
@@ -4,9 +4,7 @@ require 'fog/vsphere/models/compute/resource_pool'
module Fog
module Compute
class Vsphere
-
class ResourcePools < Fog::Collection
-
model Fog::Compute::Vsphere::ResourcePool
attr_accessor :datacenter, :cluster
@@ -19,7 +17,6 @@ module Fog
requires :cluster
new service.get_resource_pool(id, cluster, datacenter)
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/scsicontroller.rb b/lib/fog/vsphere/models/compute/scsicontroller.rb
index 0eecc33..6a7fed7 100644
--- a/lib/fog/vsphere/models/compute/scsicontroller.rb
+++ b/lib/fog/vsphere/models/compute/scsicontroller.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Vsphere
-
class SCSIController < Fog::Model
-
attribute :shared_bus
attribute :type
attribute :unit_number
@@ -13,7 +11,6 @@ module Fog
"#{type} ##{key}: shared: #{shared_bus}, unit_number: #{unit_number}"
end
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/server.rb b/lib/fog/vsphere/models/compute/server.rb
index d2ee7eb..3bfcba5 100644
--- a/lib/fog/vsphere/models/compute/server.rb
+++ b/lib/fog/vsphere/models/compute/server.rb
@@ -3,7 +3,6 @@ require 'fog/compute/models/server'
module Fog
module Compute
class Vsphere
-
class Server < Fog::Compute::Server
extend Fog::Deprecation
deprecate(:ipaddress, :public_ip_address)
@@ -33,7 +32,6 @@ module Fog
attribute :connection_state
attribute :mo_ref
attribute :path
- attribute :relative_path
attribute :memory_mb
attribute :cpus
attribute :corespersocket
@@ -46,6 +44,7 @@ module Fog
attribute :resource_pool
attribute :instance_uuid # move this --> id
attribute :guest_id
+ attribute :hardware_version
attribute :scsi_controller # this is the first scsi controller. Right now no more of them can be used.
def initialize(attributes={} )
@@ -66,7 +65,6 @@ module Fog
end
# End Lazy Loaded Attributes
-
def vm_reconfig_memory(options = {})
requires :instance_uuid, :memory
service.vm_reconfig_memory('instance_uuid' => instance_uuid, 'memory' => memory_mb)
@@ -123,10 +121,10 @@ module Fog
# * See more options in vm_clone request/compute/vm_clone.rb
#
def clone(options = {})
- requires :name, :datacenter, :relative_path
+ requires :name, :datacenter, :path
# Convert symbols to strings
- req_options = options.inject({}) { |hsh, (k,v)| hsh[k.to_s] = v; hsh }
+ req_options = options.reduce({}) { |hsh, (k,v)| hsh[k.to_s] = v; hsh }
# Give our path to the request
req_options['template_path'] ="#{relative_path}/#{name}"
@@ -184,7 +182,7 @@ module Fog
end
def interfaces
- attributes[:interfaces] ||= id.nil? ? [] : service.interfaces( :server => self )
+ attributes[:interfaces] ||= id.nil? ? [] : service.interfaces( :server_id => self.id )
end
def interface_ready? attrs
@@ -209,7 +207,7 @@ module Fog
end
def volumes
- attributes[:volumes] ||= id.nil? ? [] : service.volumes(:server => self)
+ attributes[:volumes] ||= id.nil? ? [] : service.volumes(:server_id => self.id)
end
def customvalues
@@ -248,6 +246,12 @@ module Fog
super
end
+ def relative_path
+ requires :path, :datacenter
+
+ (path.split('/').reject {|e| e.empty?} - ["Datacenters", datacenter, "vm"]).join("/")
+ end
+
private
def defaults
@@ -283,9 +287,7 @@ module Fog
Fog::Compute::Vsphere::SCSIController.new(self.attributes[:scsi_controller])
end
end
-
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/servers.rb b/lib/fog/vsphere/models/compute/servers.rb
index 727b873..7c7b9f1 100644
--- a/lib/fog/vsphere/models/compute/servers.rb
+++ b/lib/fog/vsphere/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/vsphere/models/compute/server'
module Fog
module Compute
class Vsphere
-
class Servers < Fog::Collection
-
model Fog::Compute::Vsphere::Server
attr_accessor :datacenter
attr_accessor :network
diff --git a/lib/fog/vsphere/models/compute/servertype.rb b/lib/fog/vsphere/models/compute/servertype.rb
index ebfc1ac..6bc0665 100644
--- a/lib/fog/vsphere/models/compute/servertype.rb
+++ b/lib/fog/vsphere/models/compute/servertype.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class Vsphere
-
class Servertype < Fog::Model
-
identity :id
attribute :family
@@ -33,7 +31,6 @@ module Fog
}
end
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/servertypes.rb b/lib/fog/vsphere/models/compute/servertypes.rb
index 3dcdd2c..d3f0453 100644
--- a/lib/fog/vsphere/models/compute/servertypes.rb
+++ b/lib/fog/vsphere/models/compute/servertypes.rb
@@ -4,9 +4,7 @@ require 'fog/vsphere/models/compute/servertype'
module Fog
module Compute
class Vsphere
-
class Servertypes < Fog::Collection
-
model Fog::Compute::Vsphere::Servertype
attr_accessor :datacenter, :id, :fullname
@@ -20,10 +18,7 @@ module Fog
rescue Fog::Compute::Vsphere::NotFound
nil
end
-
end
-
end
end
end
-
diff --git a/lib/fog/vsphere/models/compute/template.rb b/lib/fog/vsphere/models/compute/template.rb
index 06e0e60..76140a3 100644
--- a/lib/fog/vsphere/models/compute/template.rb
+++ b/lib/fog/vsphere/models/compute/template.rb
@@ -1,15 +1,11 @@
module Fog
module Compute
class Vsphere
-
class Template < Fog::Model
-
identity :id
attribute :name
attribute :uuid
-
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/templates.rb b/lib/fog/vsphere/models/compute/templates.rb
index 1d559d8..bc76c85 100644
--- a/lib/fog/vsphere/models/compute/templates.rb
+++ b/lib/fog/vsphere/models/compute/templates.rb
@@ -4,9 +4,7 @@ require 'fog/vsphere/models/compute/template'
module Fog
module Compute
class Vsphere
-
class Templates < Fog::Collection
-
model Fog::Compute::Vsphere::Template
def all(filters = {})
@@ -16,7 +14,6 @@ module Fog
def get(id)
new service.get_template(id)
end
-
end
end
end
diff --git a/lib/fog/vsphere/models/compute/volume.rb b/lib/fog/vsphere/models/compute/volume.rb
index 141c407..38d9801 100644
--- a/lib/fog/vsphere/models/compute/volume.rb
+++ b/lib/fog/vsphere/models/compute/volume.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Vsphere
-
class Volume < Fog::Model
DISK_SIZE_TO_GB = 1048576
identity :id
@@ -49,7 +48,7 @@ module Fog
requires :server_id, :size, :datastore
if unit_number.nil?
- used_unit_numbers = server.volumes.collect { |volume| volume.unit_number }
+ used_unit_numbers = server.volumes.map { |volume| volume.unit_number }
max_unit_number = used_unit_numbers.max
if max_unit_number > server.volumes.size
diff --git a/lib/fog/vsphere/models/compute/volumes.rb b/lib/fog/vsphere/models/compute/volumes.rb
index f3f3ae1..0aec5c7 100644
--- a/lib/fog/vsphere/models/compute/volumes.rb
+++ b/lib/fog/vsphere/models/compute/volumes.rb
@@ -4,15 +4,13 @@ require 'fog/vsphere/models/compute/volume'
module Fog
module Compute
class Vsphere
-
class Volumes < Fog::Collection
-
- attribute :server
+ attribute :server_id
model Fog::Compute::Vsphere::Volume
def all(filters = {})
- requires :server
+ requires :server_id
case server
when Fog::Compute::Vsphere::Server
@@ -32,17 +30,25 @@ module Fog
end
def new(attributes = {})
- if server
+ if server_id
# Default to the root volume datastore if one is not configured.
- datastore = ! attributes.has_key?(:datastore) && self.any? ? self.first.datastore : nil
+ datastore = ! attributes.key?(:datastore) && self.any? ? self.first.datastore : nil
- super({ :server_id => server.id, :datastore => datastore }.merge!(attributes))
+ super({ :server_id => server_id, :datastore => datastore }.merge!(attributes))
else
super
end
end
- end
+ def server
+ return nil if server_id.nil?
+ service.servers.get(server_id)
+ end
+
+ def server=(new_server)
+ server_id = new_server.id
+ end
+ end
end
end
end
diff --git a/lib/fog/vsphere/requests/compute/create_folder.rb b/lib/fog/vsphere/requests/compute/create_folder.rb
index af63238..4baa564 100644
--- a/lib/fog/vsphere/requests/compute/create_folder.rb
+++ b/lib/fog/vsphere/requests/compute/create_folder.rb
@@ -11,7 +11,7 @@ module Fog
new_folder = parent_folder.CreateFolder(:name => name)
# output is cleaned up to return the new path
# new path will be path/name, example: "Production/Pool1"
- new_folder.path.reject { |a| a.first.class == "Folder" }.collect { |a| a.first.name }.join("/").sub(/^\/?Datacenters\/#{datacenter}\/vm\/?/, '')
+ new_folder.path.reject { |a| a.first.class == "Folder" }.map { |a| a.first.name }.join("/").sub(/^\/?Datacenters\/#{datacenter}\/vm\/?/, '')
rescue => e
raise e, "failed to create folder: #{e}"
end
diff --git a/lib/fog/vsphere/requests/compute/create_vm.rb b/lib/fog/vsphere/requests/compute/create_vm.rb
index e381c04..c4ba7f2 100644
--- a/lib/fog/vsphere/requests/compute/create_vm.rb
+++ b/lib/fog/vsphere/requests/compute/create_vm.rb
@@ -8,6 +8,7 @@ module Fog
vm_cfg = {
:name => attributes[:name],
:guestId => attributes[:guest_id],
+ :version => attributes[:hardware_version],
:files => { :vmPathName => vm_path_name(attributes) },
:numCPUs => attributes[:cpus],
:numCoresPerSocket => attributes[:corespersocket],
@@ -106,7 +107,7 @@ module Fog
end
def controller_get_shared_from_options options
- if (options.has_key? :shared and options[:shared]==false) or not options.has_key? :shared then
+ if (options.key? :shared and options[:shared]==false) or not options.key? :shared then
:noSharing
elsif options[:shared]==true then
:virtualSharing
@@ -149,13 +150,11 @@ module Fog
}
]
end
-
end
class Mock
def create_vm attributes = { }
end
-
end
end
end
diff --git a/lib/fog/vsphere/requests/compute/current_time.rb b/lib/fog/vsphere/requests/compute/current_time.rb
index 96c066e..78bd4fb 100644
--- a/lib/fog/vsphere/requests/compute/current_time.rb
+++ b/lib/fog/vsphere/requests/compute/current_time.rb
@@ -2,20 +2,16 @@ module Fog
module Compute
class Vsphere
class Real
-
def current_time
current_time = @connection.serviceInstance.CurrentTime
{ 'current_time' => current_time }
end
-
end
class Mock
-
def current_time
{ 'current_time' => Time.now.utc }
end
-
end
end
end
diff --git a/lib/fog/vsphere/requests/compute/get_folder.rb b/lib/fog/vsphere/requests/compute/get_folder.rb
index 0990ba5..7e1c57c 100644
--- a/lib/fog/vsphere/requests/compute/get_folder.rb
+++ b/lib/fog/vsphere/requests/compute/get_folder.rb
@@ -35,7 +35,7 @@ module Fog
return dc_root_folder if paths.empty?
# Walk the tree resetting the folder pointer as we go
- paths.inject(dc_root_folder) do |last_returned_folder, sub_folder|
+ paths.reduce(dc_root_folder) do |last_returned_folder, sub_folder|
# JJM VIM::Folder#find appears to be quite efficient as it uses the
# searchIndex It certainly appears to be faster than
# VIM::Folder#inventory since that returns _all_ managed objects of
@@ -69,7 +69,6 @@ module Fog
def get_folder(path, filters = { })
end
end
-
end
end
end
diff --git a/lib/fog/vsphere/requests/compute/get_virtual_machine.rb b/lib/fog/vsphere/requests/compute/get_virtual_machine.rb
index c73900c..900901b 100644
--- a/lib/fog/vsphere/requests/compute/get_virtual_machine.rb
+++ b/lib/fog/vsphere/requests/compute/get_virtual_machine.rb
@@ -38,9 +38,7 @@ module Fog
end
vm ? vm : raise(Fog::Compute::Vsphere::NotFound, "#{id} was not found")
end
-
end
-
end
end
end
diff --git a/lib/fog/vsphere/requests/compute/get_vm_first_scsi_controller.rb b/lib/fog/vsphere/requests/compute/get_vm_first_scsi_controller.rb
index 60e6eef..0b2d80e 100644
--- a/lib/fog/vsphere/requests/compute/get_vm_first_scsi_controller.rb
+++ b/lib/fog/vsphere/requests/compute/get_vm_first_scsi_controller.rb
@@ -6,6 +6,7 @@ module Fog
def get_vm_first_scsi_controller(vm_id)
Fog::Compute::Vsphere::SCSIController.new(get_vm_first_scsi_controller_raw(vm_id))
end
+
def get_vm_first_scsi_controller_raw(vm_id)
ctrl=get_vm_ref(vm_id).config.hardware.device.grep(RbVmomi::VIM::VirtualSCSIController).select{ | ctrl | ctrl.key == 1000 }.first
{
@@ -15,7 +16,6 @@ module Fog
:key => ctrl.key,
}
end
-
end
class Mock
def get_vm_first_scsi_controller(vm_id)
diff --git a/lib/fog/vsphere/requests/compute/list_clusters.rb b/lib/fog/vsphere/requests/compute/list_clusters.rb
index 2092213..96d113b 100644
--- a/lib/fog/vsphere/requests/compute/list_clusters.rb
+++ b/lib/fog/vsphere/requests/compute/list_clusters.rb
@@ -26,7 +26,6 @@ module Fog
:datacenter => datacenter_name || parent_attribute(cluster.path, :datacenter)[1],
}
end
-
end
class Mock
def list_clusters(filters = { })
diff --git a/lib/fog/vsphere/requests/compute/list_customfields.rb b/lib/fog/vsphere/requests/compute/list_customfields.rb
index d86e75c..1ea35e4 100644
--- a/lib/fog/vsphere/requests/compute/list_customfields.rb
+++ b/lib/fog/vsphere/requests/compute/list_customfields.rb
@@ -11,7 +11,6 @@ module Fog
}
end
end
-
end
class Mock
def list_vm_customfields()
diff --git a/lib/fog/vsphere/requests/compute/list_datacenters.rb b/lib/fog/vsphere/requests/compute/list_datacenters.rb
index 60b5a5c..8ec3a74 100644
--- a/lib/fog/vsphere/requests/compute/list_datacenters.rb
+++ b/lib/fog/vsphere/requests/compute/list_datacenters.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Vsphere
class Real
-
def list_datacenters filters = {}
raw_datacenters.map do |dc|
{
diff --git a/lib/fog/vsphere/requests/compute/list_datastores.rb b/lib/fog/vsphere/requests/compute/list_datastores.rb
index 38c9e63..037ffde 100644
--- a/lib/fog/vsphere/requests/compute/list_datastores.rb
+++ b/lib/fog/vsphere/requests/compute/list_datastores.rb
@@ -29,7 +29,6 @@ module Fog
:datacenter => datacenter,
}
end
-
end
class Mock
def list_datastores(datacenter_name)
diff --git a/lib/fog/vsphere/requests/compute/list_folders.rb b/lib/fog/vsphere/requests/compute/list_folders.rb
index 8335fb9..3f34031 100644
--- a/lib/fog/vsphere/requests/compute/list_folders.rb
+++ b/lib/fog/vsphere/requests/compute/list_folders.rb
@@ -38,7 +38,6 @@ module Fog
def child_folders folder
[folder, folder.childEntity.grep(RbVmomi::VIM::Folder).map(&method(:child_folders)).flatten]
end
-
end
end
end
diff --git a/lib/fog/vsphere/requests/compute/list_interface_types.rb b/lib/fog/vsphere/requests/compute/list_interface_types.rb
index afea5af..561fc2f 100644
--- a/lib/fog/vsphere/requests/compute/list_interface_types.rb
+++ b/lib/fog/vsphere/requests/compute/list_interface_types.rb
@@ -6,10 +6,11 @@ module Fog
datacenter_name = filters[:datacenter]
servertype_name = filters[:servertype]
get_raw_server_type(servertype_name, datacenter_name)[:supportedEthernetCard].map do | nictype |
- next if filters.has_key?(:id) and filters[:id] != nictype
+ next if filters.key?(:id) and filters[:id] != nictype
interface_type_attributes(nictype, servertype_name, datacenter_name)
end.compact
end
+
def interface_type_attributes(nic, servertype, datacenter)
{
:id => nic,
diff --git a/lib/fog/vsphere/requests/compute/list_networks.rb b/lib/fog/vsphere/requests/compute/list_networks.rb
index a8460ec..df8c8c2 100644
--- a/lib/fog/vsphere/requests/compute/list_networks.rb
+++ b/lib/fog/vsphere/requests/compute/list_networks.rb
@@ -26,7 +26,6 @@ module Fog
:datacenter => datacenter,
}
end
-
end
class Mock
def list_networks(datacenter_name)
diff --git a/lib/fog/vsphere/requests/compute/list_resource_pools.rb b/lib/fog/vsphere/requests/compute/list_resource_pools.rb
index 8df2809..aedc4f4 100644
--- a/lib/fog/vsphere/requests/compute/list_resource_pools.rb
+++ b/lib/fog/vsphere/requests/compute/list_resource_pools.rb
@@ -28,7 +28,6 @@ module Fog
:datacenter => datacenter
}
end
-
end
class Mock
def list_resource_pools(filters = { })
diff --git a/lib/fog/vsphere/requests/compute/list_server_types.rb b/lib/fog/vsphere/requests/compute/list_server_types.rb
index 57e0e4f..d221577 100644
--- a/lib/fog/vsphere/requests/compute/list_server_types.rb
+++ b/lib/fog/vsphere/requests/compute/list_server_types.rb
@@ -49,7 +49,6 @@ module Fog
:datacenter=>"Solutions"}]
end
end
-
end
end
end
diff --git a/lib/fog/vsphere/requests/compute/list_templates.rb b/lib/fog/vsphere/requests/compute/list_templates.rb
index 63d4da7..52011aa 100644
--- a/lib/fog/vsphere/requests/compute/list_templates.rb
+++ b/lib/fog/vsphere/requests/compute/list_templates.rb
@@ -38,7 +38,6 @@ module Fog
vms.map(&method(:convert_vm_mob_ref_to_attr_hash))
end
-
end
class Mock
def list_templates(filters = { })
diff --git a/lib/fog/vsphere/requests/compute/list_virtual_machines.rb b/lib/fog/vsphere/requests/compute/list_virtual_machines.rb
index f9be389..0f7623e 100644
--- a/lib/fog/vsphere/requests/compute/list_virtual_machines.rb
+++ b/lib/fog/vsphere/requests/compute/list_virtual_machines.rb
@@ -55,7 +55,6 @@ module Fog
end
class Mock
-
def get_folder_path(folder, root = nil)
nil
end
diff --git a/lib/fog/vsphere/requests/compute/list_vm_customvalues.rb b/lib/fog/vsphere/requests/compute/list_vm_customvalues.rb
index fab12c9..ba2078f 100644
--- a/lib/fog/vsphere/requests/compute/list_vm_customvalues.rb
+++ b/lib/fog/vsphere/requests/compute/list_vm_customvalues.rb
@@ -9,9 +9,7 @@ module Fog
:value => customvalue.value,
}
end
-
end
-
end
class Mock
def list_vm_customfields(vm_id)
diff --git a/lib/fog/vsphere/requests/compute/list_vm_interfaces.rb b/lib/fog/vsphere/requests/compute/list_vm_interfaces.rb
index 6ec9a22..420b51a 100644
--- a/lib/fog/vsphere/requests/compute/list_vm_interfaces.rb
+++ b/lib/fog/vsphere/requests/compute/list_vm_interfaces.rb
@@ -40,7 +40,6 @@ module Fog
:key => nic.key,
}
end
-
end
def get_vm_interface(vm_id, options={})
@@ -48,13 +47,12 @@ module Fog
if options.is_a? Fog::Compute::Vsphere::Interface
options
else
- raise ArgumentError, "Either key or name is a required parameter. options: #{options}" unless options.has_key? :key or options.has_key? :mac or options.has_key? :name
+ raise ArgumentError, "Either key or name is a required parameter. options: #{options}" unless options.key? :key or options.key? :mac or options.key? :name
list_vm_interfaces(vm_id).find do | nic |
- (options.has_key? :key and nic[:key]==options[:key].to_i) or (options.has_key? :mac and nic[:mac]==options[:mac]) or (options.has_key? :name and nic[:name]==options[:name])
+ (options.key? :key and nic[:key]==options[:key].to_i) or (options.key? :mac and nic[:mac]==options[:mac]) or (options.key? :name and nic[:name]==options[:name])
end
end
end
-
end
class Mock
def list_vm_interfaces(vm_id)
diff --git a/lib/fog/vsphere/requests/compute/list_vm_volumes.rb b/lib/fog/vsphere/requests/compute/list_vm_volumes.rb
index 2f2097e..e59b22e 100644
--- a/lib/fog/vsphere/requests/compute/list_vm_volumes.rb
+++ b/lib/fog/vsphere/requests/compute/list_vm_volumes.rb
@@ -42,7 +42,6 @@ module Fog
}
end
end
-
end
class Mock
def list_vm_volumes(vm_id)
diff --git a/lib/fog/vsphere/requests/compute/modify_vm_interface.rb b/lib/fog/vsphere/requests/compute/modify_vm_interface.rb
index 2a89181..2ef7721 100644
--- a/lib/fog/vsphere/requests/compute/modify_vm_interface.rb
+++ b/lib/fog/vsphere/requests/compute/modify_vm_interface.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Vsphere
class Real
-
def add_vm_interface(vmid, options = {})
raise ArgumentError, "instance id is a required parameter" unless vmid
@@ -40,7 +39,6 @@ module Fog
raise ArgumentError, "interface is a required parameter or pass options with type and network"
end
end
-
end
class Mock
diff --git a/lib/fog/vsphere/requests/compute/modify_vm_volume.rb b/lib/fog/vsphere/requests/compute/modify_vm_volume.rb
index 9a58291..dce86d1 100644
--- a/lib/fog/vsphere/requests/compute/modify_vm_volume.rb
+++ b/lib/fog/vsphere/requests/compute/modify_vm_volume.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class Vsphere
class Real
-
def add_vm_volume(volume)
vm_reconfig_hardware('instance_uuid' => volume.server_id, 'hardware_spec' => {'deviceChange'=>[create_disk(volume, volume.unit_number, :add)]})
end
diff --git a/lib/fog/vsphere/requests/compute/set_vm_customvalue.rb b/lib/fog/vsphere/requests/compute/set_vm_customvalue.rb
index e65aa3e..6239ee6 100644
--- a/lib/fog/vsphere/requests/compute/set_vm_customvalue.rb
+++ b/lib/fog/vsphere/requests/compute/set_vm_customvalue.rb
@@ -6,7 +6,6 @@ module Fog
vm_ref = get_vm_ref(vm_id)
vm_ref.setCustomValue(:key => key, :value => value)
end
-
end
class Mock
def set_vm_customvalue(vm_id, key, value)
@@ -16,4 +15,3 @@ module Fog
end
end
end
-
diff --git a/lib/fog/vsphere/requests/compute/vm_clone.rb b/lib/fog/vsphere/requests/compute/vm_clone.rb
index 31e9d40..b86c96a 100644
--- a/lib/fog/vsphere/requests/compute/vm_clone.rb
+++ b/lib/fog/vsphere/requests/compute/vm_clone.rb
@@ -1,7 +1,6 @@
module Fog
module Compute
class Vsphere
-
module Shared
private
def vm_clone_check_options(options)
@@ -15,7 +14,7 @@ module Fog
options["path"] ||= options["template_path"]
required_options = %w{ datacenter template_path name }
required_options.each do |param|
- raise ArgumentError, "#{required_options.join(', ')} are required" unless options.has_key? param
+ raise ArgumentError, "#{required_options.join(', ')} are required" unless options.key? param
end
raise Fog::Compute::Vsphere::NotFound, "Datacenter #{options["datacenter"]} Doesn't Exist!" unless get_datacenter(options["datacenter"])
raise Fog::Compute::Vsphere::NotFound, "Template #{options["template_path"]} Doesn't Exist!" unless get_virtual_machine(options["template_path"], options["datacenter"])
@@ -75,9 +74,6 @@ module Fog
# Added for people still using options['path']
template_path = options['path'] || options['template_path']
- # Default wait enabled
- options['wait'] = true
-
# Options['template_path']<~String>
# Added for people still using options['path']
template_path = options['path'] || options['template_path']
@@ -86,12 +82,12 @@ module Fog
# Options['dest_folder']<~String>
# Grab the destination folder object if it exists else use cloned mach
- dest_folder = get_raw_vmfolder(options['dest_folder'], options['datacenter']) if options.has_key?('dest_folder')
+ dest_folder = get_raw_vmfolder(options['dest_folder'], options['datacenter']) if options.key?('dest_folder')
dest_folder ||= vm_mob_ref.parent
# Options['resource_pool']<~Array>
# Now find _a_ resource pool to use for the clone if one is not specified
- if ( options.has_key?('resource_pool') && options['resource_pool'].is_a?(Array) && options['resource_pool'].length == 2 )
+ if ( options.key?('resource_pool') && options['resource_pool'].is_a?(Array) && options['resource_pool'].length == 2 )
cluster_name = options['resource_pool'][0]
pool_name = options['resource_pool'][1]
resource_pool = get_raw_resource_pool(pool_name, cluster_name, options['datacenter'])
@@ -111,14 +107,14 @@ module Fog
# Options['datastore']<~String>
# Grab the datastore object if option is set
- datastore_obj = get_raw_datastore(options['datastore'], options['datacenter']) if options.has_key?('datastore')
+ datastore_obj = get_raw_datastore(options['datastore'], options['datacenter']) if options.key?('datastore')
# confirm nil if nil or option is not set
datastore_obj ||= nil
virtual_machine_config_spec = RbVmomi::VIM::VirtualMachineConfigSpec()
# Options['network']
# Build up the config spec
- if ( options.has_key?('network_label') )
+ if ( options.key?('network_label') )
#network_obj = datacenter_obj.networkFolder.find(options['network_label'])
config_spec_operation = RbVmomi::VIM::VirtualDeviceConfigSpecOperation('edit')
nic_backing_info = RbVmomi::VIM::VirtualEthernetCardNetworkBackingInfo(:deviceName => options['network_label'])
@@ -143,34 +139,35 @@ module Fog
# https://github.com/rlane/rbvmomi/blob/master/test/test_serialization.rb
# http://www.vmware.com/support/developer/vc-sdk/visdk41pubs/ApiReference/vim.vm.ConfigSpec.html
# FIXME: pad this out with the rest of the useful things in VirtualMachineConfigSpec
- virtual_machine_config_spec.numCPUs = options['numCPUs'] if ( options.has_key?('numCPUs') )
- virtual_machine_config_spec.memoryMB = options['memoryMB'] if ( options.has_key?('memoryMB') )
+ virtual_machine_config_spec.numCPUs = options['numCPUs'] if ( options.key?('numCPUs') )
+ virtual_machine_config_spec.memoryMB = options['memoryMB'] if ( options.key?('memoryMB') )
# Options['customization_spec']
# Build up all the crappy tiered objects like the perl method
# Collect your variables ifset (writing at 11pm revist me)
# * domain <~String> - *REQUIRED* - Sets the server's domain for customization
+ # * dnsSuffixList <~Array> - Optional - Sets the dns search paths in resolv - Example: ["dev.example.com", "example.com"]
# * ipsettings <~Hash> - Optional - If not set defaults to dhcp
# * ip <~String> - *REQUIRED* Sets the ip address of the VM - Example: 10.0.0.10
# * dnsServerList <~Array> - Optional - Sets the nameservers in resolv - Example: ["10.0.0.2", "10.0.0.3"]
# * gateway <~Array> - Optional - Sets the gateway for the interface - Example: ["10.0.0.1"]
# * subnetMask <~String> - *REQUIRED* - Set the netmask of the interface - Example: "255.255.255.0"
# For other ip settings options see http://www.vmware.com/support/developer/vc-sdk/visdk41pubs/ApiReference/vim.vm.customization.IPSettings.html
- if ( options.has_key?('customization_spec') )
+ if ( options.key?('customization_spec') )
cust_options = options['customization_spec']
- if cust_options.has_key?("ipsettings")
- raise ArgumentError, "ip and subnetMask is required for static ip" unless cust_options["ipsettings"].has_key?("ip") and
- cust_options["ipsettings"].has_key?("subnetMask")
+ if cust_options.key?("ipsettings")
+ raise ArgumentError, "ip and subnetMask is required for static ip" unless cust_options["ipsettings"].key?("ip") and
+ cust_options["ipsettings"].key?("subnetMask")
end
- raise ArgumentError, "domain is required" unless cust_options.has_key?("domain")
+ raise ArgumentError, "domain is required" unless cust_options.key?("domain")
cust_domain = cust_options['domain']
- cust_ip_settings = RbVmomi::VIM::CustomizationIPSettings.new(cust_options["ipsettings"]) if cust_options.has_key?("ipsettings")
- cust_ip_settings.ip = RbVmomi::VIM::CustomizationFixedIp("ipAddress" => cust_options["ipsettings"]["ip"]) if cust_options.has_key?("ipsettings")
+ cust_ip_settings = RbVmomi::VIM::CustomizationIPSettings.new(cust_options["ipsettings"]) if cust_options.key?("ipsettings")
+ cust_ip_settings.ip = RbVmomi::VIM::CustomizationFixedIp("ipAddress" => cust_options["ipsettings"]["ip"]) if cust_options.key?("ipsettings")
cust_ip_settings ||= RbVmomi::VIM::CustomizationIPSettings.new("ip" => RbVmomi::VIM::CustomizationDhcpIpGenerator.new())
cust_ip_settings.dnsDomain = cust_domain
cust_global_ip_settings = RbVmomi::VIM::CustomizationGlobalIPSettings.new
cust_global_ip_settings.dnsServerList = cust_ip_settings.dnsServerList
- cust_global_ip_settings.dnsSuffixList = [cust_domain]
- cust_hostname = RbVmomi::VIM::CustomizationFixedName.new(:name => cust_options['hostname']) if cust_options.has_key?('hostname')
+ cust_global_ip_settings.dnsSuffixList = cust_options['dnsSuffixList'] || [cust_domain]
+ cust_hostname = RbVmomi::VIM::CustomizationFixedName.new(:name => cust_options['hostname']) if cust_options.key?('hostname')
cust_hostname ||= RbVmomi::VIM::CustomizationFixedName.new(:name => options['name'])
cust_hwclockutc = cust_options['hw_clock_utc']
cust_timezone = cust_options['time_zone']
@@ -233,7 +230,7 @@ module Fog
clone_spec = RbVmomi::VIM.VirtualMachineCloneSpec(:location => relocation_spec,
:config => virtual_machine_config_spec,
:customization => customization_spec,
- :powerOn => options.has_key?('power_on') ? options['power_on'] : true,
+ :powerOn => options.key?('power_on') ? options['power_on'] : true,
:template => false)
# Perform the actual Clone Task
@@ -245,7 +242,7 @@ module Fog
# to set 'wait' => true if your app wants to wait. Otherwise, you're
# going to have to reload the server model over and over which
# generates a lot of time consuming API calls to vmware.
- if options['wait'] then
+ if options.fetch('wait', true) then
# REVISIT: It would be awesome to call a block passed to this
# request to notify the application how far along in the process we
# are. I'm thinking of updating a progress bar, etc...
@@ -254,7 +251,7 @@ module Fog
tries = 0
new_vm = begin
# Try and find the new VM (folder.find is quite efficient)
- folder.find(options['name'], RbVmomi::VIM::VirtualMachine) or raise Fog::Vsphere::Errors::NotFound
+ dest_folder.find(options['name'], RbVmomi::VIM::VirtualMachine) or raise Fog::Vsphere::Errors::NotFound
rescue Fog::Vsphere::Errors::NotFound
tries += 1
if tries <= 10 then
@@ -272,7 +269,6 @@ module Fog
'task_ref' => task._ref
}
end
-
end
class Mock
@@ -301,7 +297,6 @@ module Fog
'task_ref' => "task-#{Fog::Mock.random_numbers(4)}",
}
end
-
end
end
end
diff --git a/lib/fog/vsphere/requests/compute/vm_config_vnc.rb b/lib/fog/vsphere/requests/compute/vm_config_vnc.rb
index 8be8839..ddfa0ea 100644
--- a/lib/fog/vsphere/requests/compute/vm_config_vnc.rb
+++ b/lib/fog/vsphere/requests/compute/vm_config_vnc.rb
@@ -3,7 +3,7 @@ module Fog
class Vsphere
class Real
def vm_config_vnc(options = { })
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
search_filter = { :uuid => options['instance_uuid'], 'vmSearch' => true, 'instanceUuid' => true }
vm_mob_ref = @connection.searchIndex.FindAllByUuid(search_filter).first
@@ -20,7 +20,6 @@ module Fog
# return a hash of VNC attributes required to view the console
def vm_get_vnc uuid
-
search_filter = { :uuid => uuid, 'vmSearch' => true, 'instanceUuid' => true }
vm = @connection.searchIndex.FindAllByUuid(search_filter).first
Hash[vm.config.extraConfig.map do |config|
@@ -29,12 +28,11 @@ module Fog
end
end.compact]
end
-
end
class Mock
def vm_config_vnc(options = { })
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
{ 'task_state' => 'success' }
end
diff --git a/lib/fog/vsphere/requests/compute/vm_destroy.rb b/lib/fog/vsphere/requests/compute/vm_destroy.rb
index 9f3ada4..200889e 100644
--- a/lib/fog/vsphere/requests/compute/vm_destroy.rb
+++ b/lib/fog/vsphere/requests/compute/vm_destroy.rb
@@ -2,25 +2,21 @@ module Fog
module Compute
class Vsphere
class Real
-
def vm_destroy(options = {})
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
vm_mob_ref = get_vm_ref(options['instance_uuid'])
task = vm_mob_ref.Destroy_Task
task.wait_for_completion
{ 'task_state' => task.info.state }
end
-
end
class Mock
-
def vm_destroy(options = {})
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
{ 'task_state' => 'success' }
end
-
end
end
end
diff --git a/lib/fog/vsphere/requests/compute/vm_migrate.rb b/lib/fog/vsphere/requests/compute/vm_migrate.rb
index edc34b9..c4a422a 100644
--- a/lib/fog/vsphere/requests/compute/vm_migrate.rb
+++ b/lib/fog/vsphere/requests/compute/vm_migrate.rb
@@ -2,11 +2,10 @@ module Fog
module Compute
class Vsphere
class Real
-
def vm_migrate(options = {})
#priority is the only required option, and it has a sane default option.
priority = options['priority'].nil? ? 'defaultPriority' : options["priority"]
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
# Find the VM Object
search_filter = { :uuid => options['instance_uuid'], 'vmSearch' => true, 'instanceUuid' => true }
@@ -20,17 +19,14 @@ module Fog
task.wait_for_completion
{ 'task_state' => task.info.state }
end
-
end
class Mock
-
def vm_migrate(options = {})
priority = options['priority'].nil? ? 'defaultPriority' : options["priority"]
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
{ 'task_state' => 'success' }
end
-
end
end
end
diff --git a/lib/fog/vsphere/requests/compute/vm_power_off.rb b/lib/fog/vsphere/requests/compute/vm_power_off.rb
index 423e623..fc954d3 100644
--- a/lib/fog/vsphere/requests/compute/vm_power_off.rb
+++ b/lib/fog/vsphere/requests/compute/vm_power_off.rb
@@ -2,10 +2,9 @@ module Fog
module Compute
class Vsphere
class Real
-
def vm_power_off(options = {})
options = { 'force' => false }.merge(options)
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
search_filter = { :uuid => options['instance_uuid'], 'vmSearch' => true, 'instanceUuid' => true }
vm_mob_ref = @connection.searchIndex.FindAllByUuid(search_filter).first
@@ -22,13 +21,11 @@ module Fog
}
end
end
-
end
class Mock
-
def vm_power_off(options = {})
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
vm = get_virtual_machine(options['instance_uuid'])
vm["power_state"] = "poweredOff"
{
@@ -36,7 +33,6 @@ module Fog
'power_off_type' => options['force'] ? 'cut_power' : 'shutdown_guest',
}
end
-
end
end
end
diff --git a/lib/fog/vsphere/requests/compute/vm_power_on.rb b/lib/fog/vsphere/requests/compute/vm_power_on.rb
index 035d268..40059cb 100644
--- a/lib/fog/vsphere/requests/compute/vm_power_on.rb
+++ b/lib/fog/vsphere/requests/compute/vm_power_on.rb
@@ -2,9 +2,8 @@ module Fog
module Compute
class Vsphere
class Real
-
def vm_power_on(options = {})
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
search_filter = { :uuid => options['instance_uuid'], 'vmSearch' => true, 'instanceUuid' => true }
vm_mob_ref = @connection.searchIndex.FindAllByUuid(search_filter).first
@@ -14,16 +13,13 @@ module Fog
# 'success', 'running', 'queued', 'error'
{ 'task_state' => task.info.state }
end
-
end
class Mock
-
def vm_power_on(options = {})
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
{ 'task_state' => 'success' }
end
-
end
end
end
diff --git a/lib/fog/vsphere/requests/compute/vm_reboot.rb b/lib/fog/vsphere/requests/compute/vm_reboot.rb
index c506ece..7d39682 100644
--- a/lib/fog/vsphere/requests/compute/vm_reboot.rb
+++ b/lib/fog/vsphere/requests/compute/vm_reboot.rb
@@ -2,10 +2,9 @@ module Fog
module Compute
class Vsphere
class Real
-
def vm_reboot(options = {})
options = { 'force' => false }.merge(options)
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
search_filter = { :uuid => options['instance_uuid'], 'vmSearch' => true, 'instanceUuid' => true }
vm_mob_ref = @connection.searchIndex.FindAllByUuid(search_filter).first
@@ -19,16 +18,13 @@ module Fog
{ 'task_state' => "running", 'reboot_type' => 'reboot_guest' }
end
end
-
end
class Mock
-
def vm_reboot(options = {})
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
{ 'task_state' => "running", 'reboot_type' => options['force'] ? 'reset_power' : 'reboot_guest' }
end
-
end
end
end
diff --git a/lib/fog/vsphere/requests/compute/vm_reconfig_cpus.rb b/lib/fog/vsphere/requests/compute/vm_reconfig_cpus.rb
index 28589be..ffff6bb 100644
--- a/lib/fog/vsphere/requests/compute/vm_reconfig_cpus.rb
+++ b/lib/fog/vsphere/requests/compute/vm_reconfig_cpus.rb
@@ -3,8 +3,8 @@ module Fog
class Vsphere
class Real
def vm_reconfig_cpus(options = {})
- raise ArgumentError, "cpus is a required parameter" unless options.has_key? 'cpus'
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "cpus is a required parameter" unless options.key? 'cpus'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
hardware_spec={'numCPUs' => options['cpus'], 'numCoresPerSocket' => options['corespersocket']}
vm_reconfig_hardware('instance_uuid' => options['instance_uuid'], 'hardware_spec' => hardware_spec )
end
@@ -12,8 +12,8 @@ module Fog
class Mock
def vm_reconfig_cpus(options = {})
- raise ArgumentError, "cpus is a required parameter" unless options.has_key? 'cpus'
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "cpus is a required parameter" unless options.key? 'cpus'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
hardware_spec={'numCPUs' => options['cpus'], 'numCoresPerSocket' => options['corespersocket']}
vm_reconfig_hardware('instance_uuid' => options['instance_uuid'], 'hardware_spec' => hardware_spec )
end
diff --git a/lib/fog/vsphere/requests/compute/vm_reconfig_hardware.rb b/lib/fog/vsphere/requests/compute/vm_reconfig_hardware.rb
index 028e2f9..a491b9c 100644
--- a/lib/fog/vsphere/requests/compute/vm_reconfig_hardware.rb
+++ b/lib/fog/vsphere/requests/compute/vm_reconfig_hardware.rb
@@ -3,8 +3,8 @@ module Fog
class Vsphere
class Real
def vm_reconfig_hardware(options = {})
- raise ArgumentError, "hardware_spec is a required parameter" unless options.has_key? 'hardware_spec'
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "hardware_spec is a required parameter" unless options.key? 'hardware_spec'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
vm_mob_ref = get_vm_ref(options['instance_uuid'])
task = vm_mob_ref.ReconfigVM_Task(:spec => RbVmomi::VIM.VirtualMachineConfigSpec(options['hardware_spec']))
task.wait_for_completion
@@ -14,8 +14,8 @@ module Fog
class Mock
def vm_reconfig_hardware(options = {})
- raise ArgumentError, "hardware_spec is a required parameter" unless options.has_key? 'hardware_spec'
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "hardware_spec is a required parameter" unless options.key? 'hardware_spec'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
{ 'task_state' => 'success' }
end
end
diff --git a/lib/fog/vsphere/requests/compute/vm_reconfig_memory.rb b/lib/fog/vsphere/requests/compute/vm_reconfig_memory.rb
index 860b607..fef3284 100644
--- a/lib/fog/vsphere/requests/compute/vm_reconfig_memory.rb
+++ b/lib/fog/vsphere/requests/compute/vm_reconfig_memory.rb
@@ -3,8 +3,8 @@ module Fog
class Vsphere
class Real
def vm_reconfig_memory(options = {})
- raise ArgumentError, "memory is a required parameter" unless options.has_key? 'memory'
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "memory is a required parameter" unless options.key? 'memory'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
hardware_spec={'memoryMB' => options['memory']}
vm_reconfig_hardware('instance_uuid' => options['instance_uuid'], 'hardware_spec' => hardware_spec )
end
@@ -12,8 +12,8 @@ module Fog
class Mock
def vm_reconfig_memory(options = {})
- raise ArgumentError, "memory is a required parameter" unless options.has_key? 'memory'
- raise ArgumentError, "instance_uuid is a required parameter" unless options.has_key? 'instance_uuid'
+ raise ArgumentError, "memory is a required parameter" unless options.key? 'memory'
+ raise ArgumentError, "instance_uuid is a required parameter" unless options.key? 'instance_uuid'
hardware_spec={'memoryMB' => options['memory']}
vm_reconfig_hardware('instance_uuid' => options['instance_uuid'], 'hardware_spec' => hardware_spec )
end
diff --git a/lib/fog/xenserver/compute.rb b/lib/fog/xenserver/compute.rb
index 0f5c5f2..aa5e000 100644
--- a/lib/fog/xenserver/compute.rb
+++ b/lib/fog/xenserver/compute.rb
@@ -3,7 +3,6 @@ require 'fog/xenserver/core'
module Fog
module Compute
class XenServer < Fog::Service
-
require 'fog/xenserver/utilities'
require 'fog/xenserver/parser'
@@ -114,6 +113,8 @@ module Fog
request :snapshot_revert
class Real
+
+ attr_reader :connection
def initialize(options={})
@host = options[:xenserver_url]
@@ -143,11 +144,9 @@ module Fog
def default_network
networks.find { |n| n.name == (@defaults[:network] || "Pool-wide network associated with eth0") }
end
-
end
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {}
@@ -167,10 +166,7 @@ module Fog
@connection = Fog::XML::Connection.new(@host)
@connection.authenticate(@username, @password)
end
-
end
end
end
end
-
-
diff --git a/lib/fog/xenserver/core.rb b/lib/fog/xenserver/core.rb
index 5df39cd..f0c87cf 100644
--- a/lib/fog/xenserver/core.rb
+++ b/lib/fog/xenserver/core.rb
@@ -3,7 +3,6 @@ require 'fog/xml'
module Fog
module XenServer
-
class InvalidLogin < Fog::Errors::Error; end
class NotFound < Fog::Errors::Error; end
class RequestFailed < Fog::Errors::Error; end
@@ -14,6 +13,8 @@ module Fog
class Connection
require 'xmlrpc/client'
+
+ attr_reader :credentials
def initialize(host, timeout)
@factory = XMLRPC::Client.new(host, '/')
@@ -55,7 +56,6 @@ module Fog
end
class NokogiriStreamParser < XMLRPC::XMLParser::AbstractStreamParser
-
def initialize
require 'nokogiri/xml/sax/document'
require 'nokogiri/xml/sax/parser'
@@ -75,10 +75,6 @@ module Fog
end
end
-
end
-
end
end
-
-
diff --git a/lib/fog/xenserver/examples/networks-and-vlans.rb b/lib/fog/xenserver/examples/networks-and-vlans.rb
index f87c8a7..948dea0 100644
--- a/lib/fog/xenserver/examples/networks-and-vlans.rb
+++ b/lib/fog/xenserver/examples/networks-and-vlans.rb
@@ -29,7 +29,6 @@ vlans = [
{ "name" => "VLAN 55", "vlanid" => 55}
]
-
vlans.each do |vlan|
# Do not create duplicated networks
if xenserver.networks.find { |n| n.name == vlan['name'] }
diff --git a/lib/fog/xenserver/models/compute/guest_metrics.rb b/lib/fog/xenserver/models/compute/guest_metrics.rb
index 662c83c..a9769af 100644
--- a/lib/fog/xenserver/models/compute/guest_metrics.rb
+++ b/lib/fog/xenserver/models/compute/guest_metrics.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class XenServer
-
class GuestMetrics < Fog::Model
# API Reference here:
# http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=VM_guest_metrics
@@ -21,9 +20,7 @@ module Fog
attribute :other_config
attribute :pv_drivers_up_to_date, :aliases => :PV_drivers_up_to_date
attribute :pv_drivers_version, :aliases => :PV_drivers_version
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/host.rb b/lib/fog/xenserver/models/compute/host.rb
index 5dec0e8..a0a389d 100644
--- a/lib/fog/xenserver/models/compute/host.rb
+++ b/lib/fog/xenserver/models/compute/host.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class XenServer
-
class Host < Fog::Model
# API Reference here:
# http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=host
@@ -60,15 +59,15 @@ module Fog
attribute :software_version
def pifs
- __pifs.collect { |pif| service.pifs.get pif }
+ __pifs.map { |pif| service.pifs.get pif }
end
def pbds
- __pbds.collect { |pbd| service.pbds.get pbd }
+ __pbds.map { |pbd| service.pbds.get pbd }
end
def resident_servers
- __resident_vms.collect { |ref| service.servers.get ref }
+ __resident_vms.map { |ref| service.servers.get ref }
end
def resident_vms
@@ -151,9 +150,7 @@ module Fog
# then reload manually
#reload
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/host_cpu.rb b/lib/fog/xenserver/models/compute/host_cpu.rb
index 4d96fb8..4807b13 100644
--- a/lib/fog/xenserver/models/compute/host_cpu.rb
+++ b/lib/fog/xenserver/models/compute/host_cpu.rb
@@ -3,14 +3,12 @@ require 'fog/core/model'
module Fog
module Compute
class XenServer
-
#
# A physical CPU
#
# @see http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=host_cpu
#
class HostCpu < Fog::Model
-
identity :reference
attribute :uuid
@@ -30,9 +28,7 @@ module Fog
def host
service.hosts.get __host
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/host_metrics.rb b/lib/fog/xenserver/models/compute/host_metrics.rb
index 7a4408d..5c0c85d 100644
--- a/lib/fog/xenserver/models/compute/host_metrics.rb
+++ b/lib/fog/xenserver/models/compute/host_metrics.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class XenServer
-
class HostMetrics < Fog::Model
# API Reference here:
# http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=host_metrics
@@ -21,9 +20,7 @@ module Fog
super
self.last_updated = attributes[:last_updated].to_time
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/hosts.rb b/lib/fog/xenserver/models/compute/hosts.rb
index 4342b04..42df5cc 100644
--- a/lib/fog/xenserver/models/compute/hosts.rb
+++ b/lib/fog/xenserver/models/compute/hosts.rb
@@ -4,9 +4,7 @@ require 'fog/xenserver/models/compute/host'
module Fog
module Compute
class XenServer
-
class Hosts < Fog::Collection
-
model Fog::Compute::XenServer::Host
def all(options={})
@@ -21,9 +19,7 @@ module Fog
nil
end
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/network.rb b/lib/fog/xenserver/models/compute/network.rb
index 91b0f7c..a0a63f0 100644
--- a/lib/fog/xenserver/models/compute/network.rb
+++ b/lib/fog/xenserver/models/compute/network.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class XenServer
-
class Network < Fog::Model
# API Reference here:
# http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=network
@@ -86,7 +85,6 @@ module Fog
true
end
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/networks.rb b/lib/fog/xenserver/models/compute/networks.rb
index 0048991..87f1cfe 100644
--- a/lib/fog/xenserver/models/compute/networks.rb
+++ b/lib/fog/xenserver/models/compute/networks.rb
@@ -4,9 +4,7 @@ require 'fog/xenserver/models/compute/network'
module Fog
module Compute
class XenServer
-
class Networks < Fog::Collection
-
model Fog::Compute::XenServer::Network
def initialize(attributes)
@@ -25,9 +23,7 @@ module Fog
rescue Fog::XenServer::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/pbd.rb b/lib/fog/xenserver/models/compute/pbd.rb
index f7680da..f980a7c 100644
--- a/lib/fog/xenserver/models/compute/pbd.rb
+++ b/lib/fog/xenserver/models/compute/pbd.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class XenServer
-
class PBD < Fog::Model
# API Reference here:
# http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=PBD
@@ -32,9 +31,7 @@ module Fog
def unplug
service.unplug_pbd reference
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/pbds.rb b/lib/fog/xenserver/models/compute/pbds.rb
index de765a3..dfd5014 100644
--- a/lib/fog/xenserver/models/compute/pbds.rb
+++ b/lib/fog/xenserver/models/compute/pbds.rb
@@ -4,9 +4,7 @@ require 'fog/xenserver/models/compute/pbd'
module Fog
module Compute
class XenServer
-
class Pbds < Fog::Collection
-
model Fog::Compute::XenServer::PBD
def initialize(attributes)
@@ -25,9 +23,7 @@ module Fog
nil
end
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/pif.rb b/lib/fog/xenserver/models/compute/pif.rb
index 07e5cfe..d40164e 100644
--- a/lib/fog/xenserver/models/compute/pif.rb
+++ b/lib/fog/xenserver/models/compute/pif.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class XenServer
-
class PIF < Fog::Model
# API Reference here:
# http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=PIF
@@ -49,9 +48,7 @@ module Fog
def host
service.hosts.get __host
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/pifs.rb b/lib/fog/xenserver/models/compute/pifs.rb
index f7e8ae4..2a2226e 100644
--- a/lib/fog/xenserver/models/compute/pifs.rb
+++ b/lib/fog/xenserver/models/compute/pifs.rb
@@ -4,9 +4,7 @@ require 'fog/xenserver/models/compute/pif'
module Fog
module Compute
class XenServer
-
class Pifs < Fog::Collection
-
model Fog::Compute::XenServer::PIF
def initialize(attributes)
@@ -25,9 +23,7 @@ module Fog
rescue Fog::XenServer::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/pool.rb b/lib/fog/xenserver/models/compute/pool.rb
index 592e48a..57a19d1 100644
--- a/lib/fog/xenserver/models/compute/pool.rb
+++ b/lib/fog/xenserver/models/compute/pool.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class XenServer
-
class Pool < Fog::Model
# API Reference here:
# http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=pool
@@ -38,7 +37,6 @@ module Fog
attribute :wlb_username
attribute :wlb_verify_cert
-
def default_sr
service.storage_repositories.get __default_sr
end
@@ -46,7 +44,7 @@ module Fog
def default_sr=(sr)
service.set_attribute( 'pool', reference, 'default_SR', sr.reference )
end
- alias :default_storage_repository= :default_sr=
+ alias_method :default_storage_repository=, :default_sr=
def default_storage_repository
default_sr
@@ -71,9 +69,7 @@ module Fog
# then reload manually
#reload
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/pools.rb b/lib/fog/xenserver/models/compute/pools.rb
index c39c074..c96019a 100644
--- a/lib/fog/xenserver/models/compute/pools.rb
+++ b/lib/fog/xenserver/models/compute/pools.rb
@@ -4,9 +4,7 @@ require 'fog/xenserver/models/compute/pool'
module Fog
module Compute
class XenServer
-
class Pools < Fog::Collection
-
model Fog::Compute::XenServer::Pool
def initialize(attributes)
@@ -25,9 +23,7 @@ module Fog
nil
end
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/server.rb b/lib/fog/xenserver/models/compute/server.rb
index 6418cc0..31e6337 100644
--- a/lib/fog/xenserver/models/compute/server.rb
+++ b/lib/fog/xenserver/models/compute/server.rb
@@ -3,7 +3,6 @@ require 'fog/compute/models/server'
module Fog
module Compute
class XenServer
-
class Server < Fog::Compute::Server
# API Reference here:
# http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=VM
@@ -90,7 +89,7 @@ module Fog
attribute :snapshots
def vbds
- __vbds.collect {|vbd| service.vbds.get vbd }
+ __vbds.map {|vbd| service.vbds.get vbd }
end
def affinity
@@ -98,7 +97,7 @@ module Fog
end
def consoles
- __consoles.collect {|console| service.consoles.get console }
+ __consoles.map {|console| service.consoles.get console }
end
def destroy
@@ -131,12 +130,12 @@ module Fog
end
def vifs
- __vifs.collect { |vif| service.vifs.get vif }
+ __vifs.map { |vif| service.vifs.get vif }
end
# associations
def networks
- vifs.collect { |v| v.network }
+ vifs.map { |v| v.network }
end
def resident_on
@@ -244,7 +243,6 @@ module Fog
service.snapshot_revert(snapshot_ref)
end
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/servers.rb b/lib/fog/xenserver/models/compute/servers.rb
index a62af7e..3fe1f9c 100644
--- a/lib/fog/xenserver/models/compute/servers.rb
+++ b/lib/fog/xenserver/models/compute/servers.rb
@@ -4,9 +4,7 @@ require 'fog/xenserver/models/compute/server'
module Fog
module Compute
class XenServer
-
class Servers < Fog::Collection
-
model Fog::Compute::XenServer::Server
def templates
@@ -60,9 +58,7 @@ module Fog
rescue Fog::XenServer::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/storage_repositories.rb b/lib/fog/xenserver/models/compute/storage_repositories.rb
index e3be7b9..59c73b9 100644
--- a/lib/fog/xenserver/models/compute/storage_repositories.rb
+++ b/lib/fog/xenserver/models/compute/storage_repositories.rb
@@ -4,9 +4,7 @@ require 'fog/xenserver/models/compute/storage_repository'
module Fog
module Compute
class XenServer
-
class StorageRepositories < Fog::Collection
-
model Fog::Compute::XenServer::StorageRepository
def all
@@ -23,9 +21,7 @@ module Fog
nil
end
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/storage_repository.rb b/lib/fog/xenserver/models/compute/storage_repository.rb
index d882365..b4a727c 100644
--- a/lib/fog/xenserver/models/compute/storage_repository.rb
+++ b/lib/fog/xenserver/models/compute/storage_repository.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class XenServer
-
class StorageRepository < Fog::Model
# API Reference here:
# http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=SR
@@ -31,11 +30,11 @@ module Fog
attribute :virtual_allocation
def vdis
- __vdis.collect { |vdi| service.vdis.get vdi }
+ __vdis.map { |vdi| service.vdis.get vdi }
end
def pbds
- __pbds.collect { |pbd| service.pbds.get pbd }
+ __pbds.map { |pbd| service.pbds.get pbd }
end
def scan
@@ -85,9 +84,7 @@ module Fog
# then reload manually
#reload
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/vbd.rb b/lib/fog/xenserver/models/compute/vbd.rb
index e79f6b7..637d5e3 100644
--- a/lib/fog/xenserver/models/compute/vbd.rb
+++ b/lib/fog/xenserver/models/compute/vbd.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class XenServer
-
class VBD < Fog::Model
# API Reference here:
# http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=VBD
@@ -83,9 +82,7 @@ module Fog
rec = service.get_record( __metrics, 'VBD_metrics' )
Fog::Compute::XenServer::VbdMetrics.new(rec)
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/vbd_metrics.rb b/lib/fog/xenserver/models/compute/vbd_metrics.rb
index 53933d6..224d79e 100644
--- a/lib/fog/xenserver/models/compute/vbd_metrics.rb
+++ b/lib/fog/xenserver/models/compute/vbd_metrics.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class XenServer
-
class VbdMetrics < Fog::Model
# API Reference here:
# http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=VBD_metrics
@@ -21,7 +20,6 @@ module Fog
self.last_updated = attributes[:last_updated].to_time
end
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/vbds.rb b/lib/fog/xenserver/models/compute/vbds.rb
index 0e9eb95..5fb7282 100644
--- a/lib/fog/xenserver/models/compute/vbds.rb
+++ b/lib/fog/xenserver/models/compute/vbds.rb
@@ -4,9 +4,7 @@ require 'fog/xenserver/models/compute/vbd'
module Fog
module Compute
class XenServer
-
class Vbds < Fog::Collection
-
model Fog::Compute::XenServer::VBD
def initialize(attributes)
@@ -25,9 +23,7 @@ module Fog
rescue Fog::XenServer::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/vdi.rb b/lib/fog/xenserver/models/compute/vdi.rb
index 739e613..36e917f 100644
--- a/lib/fog/xenserver/models/compute/vdi.rb
+++ b/lib/fog/xenserver/models/compute/vdi.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class XenServer
-
class VDI < Fog::Model
# API Reference here:
# http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=VDI
@@ -69,13 +68,13 @@ module Fog
end
def snapshots
- __snapshots.collect do |ref|
+ __snapshots.map do |ref|
service.vdis.get ref
end
end
def vbds
- __vbds.collect do |ref|
+ __vbds.map do |ref|
service.vbds.get ref
end
end
@@ -97,9 +96,7 @@ module Fog
def sr
storage_repository
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/vdis.rb b/lib/fog/xenserver/models/compute/vdis.rb
index abe8f73..18ba41e 100644
--- a/lib/fog/xenserver/models/compute/vdis.rb
+++ b/lib/fog/xenserver/models/compute/vdis.rb
@@ -4,9 +4,7 @@ require 'fog/xenserver/models/compute/vdi'
module Fog
module Compute
class XenServer
-
class Vdis < Fog::Collection
-
model Fog::Compute::XenServer::VDI
def all(options = {})
@@ -21,9 +19,7 @@ module Fog
rescue Fog::XenServer::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/vif.rb b/lib/fog/xenserver/models/compute/vif.rb
index 7523a9d..dc46cca 100644
--- a/lib/fog/xenserver/models/compute/vif.rb
+++ b/lib/fog/xenserver/models/compute/vif.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class XenServer
-
class VIF < Fog::Model
# API Reference here:
# http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=VIF
@@ -32,7 +31,6 @@ module Fog
attribute :status_detail
attribute :__vm, :aliases => :VM
-
def destroy
service.destroy_vif reference
end
@@ -52,9 +50,7 @@ module Fog
ref = service.create_vif attributes[:server], attributes[:__network]
merge_attributes service.vifs.get(ref).attributes
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/vifs.rb b/lib/fog/xenserver/models/compute/vifs.rb
index 1b95551..59baae7 100644
--- a/lib/fog/xenserver/models/compute/vifs.rb
+++ b/lib/fog/xenserver/models/compute/vifs.rb
@@ -4,9 +4,7 @@ require 'fog/xenserver/models/compute/vif'
module Fog
module Compute
class XenServer
-
class Vifs < Fog::Collection
-
model Fog::Compute::XenServer::VIF
def all(options = {})
@@ -21,9 +19,7 @@ module Fog
rescue Fog::XenServer::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/vlan.rb b/lib/fog/xenserver/models/compute/vlan.rb
index 80d6fcf..e44e979 100644
--- a/lib/fog/xenserver/models/compute/vlan.rb
+++ b/lib/fog/xenserver/models/compute/vlan.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module Compute
class XenServer
-
class VLAN < Fog::Model
# API Reference here:
# @see http://docs.vmd.citrix.com/XenServer/6.2.0/1.0/en_gb/api/?c=VLAN
@@ -73,9 +72,7 @@ module Fog
service.destroy_vlan reference
true
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/models/compute/vlans.rb b/lib/fog/xenserver/models/compute/vlans.rb
index fba9fbb..576250b 100644
--- a/lib/fog/xenserver/models/compute/vlans.rb
+++ b/lib/fog/xenserver/models/compute/vlans.rb
@@ -4,9 +4,7 @@ require 'fog/xenserver/models/compute/vlan'
module Fog
module Compute
class XenServer
-
class Vlans < Fog::Collection
-
model Fog::Compute::XenServer::VLAN
# Return the list of VLANs available
@@ -31,9 +29,7 @@ module Fog
rescue Fog::XenServer::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/parser.rb b/lib/fog/xenserver/parser.rb
index c5e0925..414b7c2 100644
--- a/lib/fog/xenserver/parser.rb
+++ b/lib/fog/xenserver/parser.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module XenServer
class Base
-
attr_reader :response
def initialize
@@ -29,7 +28,6 @@ module Fog
@response
end
-
end
end
end
diff --git a/lib/fog/xenserver/parsers/get_hosts.rb b/lib/fog/xenserver/parsers/get_hosts.rb
index cea3bce..78785e8 100644
--- a/lib/fog/xenserver/parsers/get_hosts.rb
+++ b/lib/fog/xenserver/parsers/get_hosts.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module XenServer
class GetHosts < Fog::Parsers::XenServer::Base
-
def reset
@response = []
end
@@ -11,9 +10,7 @@ module Fog
parser = Fog::Parsers::XenServer::Base.new
data.each_pair {|reference, host_hash| @response << parser.parse( host_hash ).merge(:reference => reference) }
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/parsers/get_networks.rb b/lib/fog/xenserver/parsers/get_networks.rb
index 0c4a320..60e2fe2 100644
--- a/lib/fog/xenserver/parsers/get_networks.rb
+++ b/lib/fog/xenserver/parsers/get_networks.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module XenServer
class GetNetworks < Fog::Parsers::XenServer::Base
-
def reset
@response = []
end
@@ -11,9 +10,7 @@ module Fog
parser = Fog::Parsers::XenServer::Base.new
data.each_pair {|reference, network_hash| @response << parser.parse( network_hash ).merge(:reference => reference) }
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/parsers/get_pools.rb b/lib/fog/xenserver/parsers/get_pools.rb
index 3ff4573..5c39cd1 100644
--- a/lib/fog/xenserver/parsers/get_pools.rb
+++ b/lib/fog/xenserver/parsers/get_pools.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module XenServer
class GetPools < Fog::Parsers::XenServer::Base
-
def reset
@response = []
end
@@ -11,9 +10,7 @@ module Fog
parser = Fog::Parsers::XenServer::Base.new
data.each_pair {|reference, pool_hash| @response << parser.parse( pool_hash ).merge(:reference => reference) }
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/parsers/get_records.rb b/lib/fog/xenserver/parsers/get_records.rb
index 6ba1874..c8a34c7 100644
--- a/lib/fog/xenserver/parsers/get_records.rb
+++ b/lib/fog/xenserver/parsers/get_records.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module XenServer
class GetRecords < Fog::Parsers::XenServer::Base
-
def reset
@response = []
end
@@ -11,9 +10,7 @@ module Fog
parser = Fog::Parsers::XenServer::Base.new
data.each_pair {|reference, hash| @response << parser.parse( hash ).merge(:reference => reference) }
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/parsers/get_storage_repositories.rb b/lib/fog/xenserver/parsers/get_storage_repositories.rb
index d1b1a8a..379f241 100644
--- a/lib/fog/xenserver/parsers/get_storage_repositories.rb
+++ b/lib/fog/xenserver/parsers/get_storage_repositories.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module XenServer
class GetStorageRepositories < Fog::Parsers::XenServer::Base
-
def reset
@response = []
end
@@ -11,9 +10,7 @@ module Fog
parser = Fog::Parsers::XenServer::Base.new
data.each_pair {|reference, sr_hash| @response << parser.parse( sr_hash ).merge(:reference => reference) }
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/parsers/get_vbds.rb b/lib/fog/xenserver/parsers/get_vbds.rb
index 7b5a59c..d5e4ef9 100644
--- a/lib/fog/xenserver/parsers/get_vbds.rb
+++ b/lib/fog/xenserver/parsers/get_vbds.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module XenServer
class GetVBDs < Fog::Parsers::XenServer::Base
-
def reset
@response = []
end
@@ -11,9 +10,7 @@ module Fog
parser = Fog::Parsers::XenServer::Base.new
data.each_pair {|reference, hash| @response << parser.parse( hash ).merge(:reference => reference) }
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/parsers/get_vifs.rb b/lib/fog/xenserver/parsers/get_vifs.rb
index 6e83ad6..bc61117 100644
--- a/lib/fog/xenserver/parsers/get_vifs.rb
+++ b/lib/fog/xenserver/parsers/get_vifs.rb
@@ -2,7 +2,6 @@ module Fog
module Parsers
module XenServer
class GetVIFs < Fog::Parsers::XenServer::Base
-
def reset
@response = []
end
@@ -11,9 +10,7 @@ module Fog
parser = Fog::Parsers::XenServer::Base.new
data.each_pair {|reference, vif_hash| @response << parser.parse( vif_hash ).merge(:reference => reference) }
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/parsers/get_vms.rb b/lib/fog/xenserver/parsers/get_vms.rb
index f91c483..ce03579 100644
--- a/lib/fog/xenserver/parsers/get_vms.rb
+++ b/lib/fog/xenserver/parsers/get_vms.rb
@@ -1,9 +1,7 @@
module Fog
module Parsers
module XenServer
-
class GetVms < Fog::Parsers::XenServer::Base
-
def reset
@response = []
end
@@ -12,9 +10,7 @@ module Fog
parser = Fog::Parsers::XenServer::Base.new
data.each_pair {|reference, vm_hash| @response << parser.parse( vm_hash ).merge(:reference => reference) }
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/clone_server.rb b/lib/fog/xenserver/requests/compute/clone_server.rb
index 0c926fe..50a18ea 100644
--- a/lib/fog/xenserver/requests/compute/clone_server.rb
+++ b/lib/fog/xenserver/requests/compute/clone_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class XenServer
class Real
-
def clone_server( server_name, template_ref )
# Clone the VM template
if template_ref.kind_of? Fog::Compute::XenServer::Server
@@ -16,16 +15,13 @@ module Fog
template_ref, server_name
)
end
-
end
class Mock
-
def clone_server( server_name, template_ref )
Fog::Mock.not_implemented
end
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/create_network.rb b/lib/fog/xenserver/requests/compute/create_network.rb
index 265efde..3cfb844 100644
--- a/lib/fog/xenserver/requests/compute/create_network.rb
+++ b/lib/fog/xenserver/requests/compute/create_network.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class XenServer
-
class Real
-
# Create a Network
#
# @see http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/api/?c=network
@@ -30,13 +28,10 @@ module Fog
end
class Mock
-
def create_network( name, description = '', config = {} )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/create_server.rb b/lib/fog/xenserver/requests/compute/create_server.rb
index 2daadf2..2bceb09 100644
--- a/lib/fog/xenserver/requests/compute/create_server.rb
+++ b/lib/fog/xenserver/requests/compute/create_server.rb
@@ -2,7 +2,6 @@ module Fog
module Compute
class XenServer
class Real
-
def get_vm_by_name(label)
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VM.get_by_name_label' }, label)
end
@@ -22,7 +21,7 @@ module Fog
if not config[:affinity]
config[:affinity] = config[:affinity].reference \
if config[:affinity].kind_of? Fog::Compute::XenServer::Host
- config.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
+ config.reduce({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
%w{ VCPUs_at_startup
VCPUs_max
VCPUs_params
@@ -56,8 +55,7 @@ module Fog
:actions_after_shutdown => 'Destroy',
:actions_after_reboot => 'Restart',
:actions_after_crash => 'Restart',
- :platform => { 'nx' => false, 'acpi' => true, 'apic' => 'true', 'pae' => true, 'viridian' => true},
- :platform => {},
+ :platform => { :'nx' => 'true', :'acpi' => 'true', :'apic' => 'true', :'pae' => 'true', :'viridian' => 'true' },
:other_config => {},
:pool_name => '',
:PV_bootloader => 'pygrub', #pvgrub, eliloader
@@ -110,11 +108,9 @@ module Fog
ref
end
-
end
class Mock
-
def create_server( name_label, template = nil, network = nil, extra_args = {})
Fog::Mock.not_implemented
end
@@ -122,9 +118,7 @@ module Fog
def create_server_raw(config = {})
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/create_sr.rb b/lib/fog/xenserver/requests/compute/create_sr.rb
index 54530c6..7887685 100644
--- a/lib/fog/xenserver/requests/compute/create_sr.rb
+++ b/lib/fog/xenserver/requests/compute/create_sr.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class XenServer
-
class Real
-
#
# Create a storage repository (SR)
#
@@ -48,11 +46,9 @@ module Fog
sm_config || {}
)
end
-
end
class Mock
-
def create_sr( host_ref,
name_label,
type,
@@ -64,9 +60,7 @@ module Fog
sm_config = {} )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/create_vbd.rb b/lib/fog/xenserver/requests/compute/create_vbd.rb
index e54a733..c7af83c 100644
--- a/lib/fog/xenserver/requests/compute/create_vbd.rb
+++ b/lib/fog/xenserver/requests/compute/create_vbd.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class XenServer
-
class Real
-
def create_vbd( vm_ref, vdi_ref, config = {} )
raise ArgumentError.new('Invalid config') if config.nil?
vm_ref = vm_ref.reference if vm_ref.kind_of? Fog::Compute::XenServer::Server
@@ -28,13 +26,10 @@ module Fog
end
class Mock
-
def create_vbd( config )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/create_vdi.rb b/lib/fog/xenserver/requests/compute/create_vdi.rb
index cf28541..9e8c3b1 100644
--- a/lib/fog/xenserver/requests/compute/create_vdi.rb
+++ b/lib/fog/xenserver/requests/compute/create_vdi.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class XenServer
-
class Real
-
def create_vdi( config )
raise ArgumentError.new('Invalid config') if config.nil?
raise ArgumentError.new('Missing virtual_size attribute') if config[:virtual_size].nil?
@@ -21,13 +19,10 @@ module Fog
end
class Mock
-
def create_vdi( ref )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/create_vif.rb b/lib/fog/xenserver/requests/compute/create_vif.rb
index b1d5d39..9c8b025 100644
--- a/lib/fog/xenserver/requests/compute/create_vif.rb
+++ b/lib/fog/xenserver/requests/compute/create_vif.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class XenServer
-
class Real
-
def create_vif( vm_ref, network_ref, device = -1)
raise ArgumentError.new('Invalid vm_ref') if vm_ref.nil?
raise ArgumentError.new('Invalid network_ref') if network_ref.nil?
@@ -45,13 +43,10 @@ module Fog
end
class Mock
-
def create_vif( vm_ref, network_ref )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/create_vlan.rb b/lib/fog/xenserver/requests/compute/create_vlan.rb
index 19dfc1a..2ab5c29 100644
--- a/lib/fog/xenserver/requests/compute/create_vlan.rb
+++ b/lib/fog/xenserver/requests/compute/create_vlan.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class XenServer
-
class Real
-
#
# Create a VLAN
#
@@ -23,13 +21,10 @@ module Fog
end
class Mock
-
def create_vlan( pif_ref, vlan_id, network_ref )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/destroy_network.rb b/lib/fog/xenserver/requests/compute/destroy_network.rb
index 87b38e5..bc43633 100644
--- a/lib/fog/xenserver/requests/compute/destroy_network.rb
+++ b/lib/fog/xenserver/requests/compute/destroy_network.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class XenServer
-
class Real
-
#
# Destroy a Network
#
@@ -18,15 +16,12 @@ module Fog
ref
)
end
-
end
class Mock
-
def destroy_network( ref )
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/destroy_server.rb b/lib/fog/xenserver/requests/compute/destroy_server.rb
index 45c1111..909279b 100644
--- a/lib/fog/xenserver/requests/compute/destroy_server.rb
+++ b/lib/fog/xenserver/requests/compute/destroy_server.rb
@@ -1,21 +1,16 @@
module Fog
module Compute
class XenServer
-
class Real
-
def destroy_server( vm_ref , extra_args = {})
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VM.destroy'}, vm_ref)
end
-
end
class Mock
-
def destroy_server()
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/destroy_sr.rb b/lib/fog/xenserver/requests/compute/destroy_sr.rb
index 67cc35a..b17979c 100644
--- a/lib/fog/xenserver/requests/compute/destroy_sr.rb
+++ b/lib/fog/xenserver/requests/compute/destroy_sr.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class XenServer
-
class Real
-
#
# Destroy a Storage Repository
#
@@ -15,15 +13,12 @@ module Fog
sr_ref
)
end
-
end
class Mock
-
def destroy_sr( sr_ref )
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/destroy_vdi.rb b/lib/fog/xenserver/requests/compute/destroy_vdi.rb
index ac4f428..82f66b8 100644
--- a/lib/fog/xenserver/requests/compute/destroy_vdi.rb
+++ b/lib/fog/xenserver/requests/compute/destroy_vdi.rb
@@ -1,21 +1,16 @@
module Fog
module Compute
class XenServer
-
class Real
-
def destroy_vdi( vdi_ref, extra_args = {})
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VDI.destroy'}, vdi_ref)
end
-
end
class Mock
-
def destroy_vdi()
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/destroy_vif.rb b/lib/fog/xenserver/requests/compute/destroy_vif.rb
index d709209..2861400 100644
--- a/lib/fog/xenserver/requests/compute/destroy_vif.rb
+++ b/lib/fog/xenserver/requests/compute/destroy_vif.rb
@@ -1,21 +1,16 @@
module Fog
module Compute
class XenServer
-
class Real
-
def destroy_vif( ref, extra_args = {})
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VIF.destroy'}, ref)
end
-
end
class Mock
-
def destroy_vif()
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/destroy_vlan.rb b/lib/fog/xenserver/requests/compute/destroy_vlan.rb
index 809584e..62d0df5 100644
--- a/lib/fog/xenserver/requests/compute/destroy_vlan.rb
+++ b/lib/fog/xenserver/requests/compute/destroy_vlan.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class XenServer
-
class Real
-
# Destroy a VLAN
#
# @see http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/api/?c=VLAN
@@ -17,15 +15,12 @@ module Fog
ref
)
end
-
end
class Mock
-
def destroy_vlan( ref )
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/disable_host.rb b/lib/fog/xenserver/requests/compute/disable_host.rb
index 989a8f4..80248e7 100644
--- a/lib/fog/xenserver/requests/compute/disable_host.rb
+++ b/lib/fog/xenserver/requests/compute/disable_host.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class XenServer
-
class Real
-
#
# Puts the host into a state in which no new VMs can be started.
# Currently active VMs on the host continue to execute.
@@ -13,17 +11,13 @@ module Fog
def disable_host( ref )
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => "host.disable"}, ref)
end
-
end
class Mock
-
def disable_host( ref )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/eject_vbd.rb b/lib/fog/xenserver/requests/compute/eject_vbd.rb
index 5412da2..f3be5f3 100644
--- a/lib/fog/xenserver/requests/compute/eject_vbd.rb
+++ b/lib/fog/xenserver/requests/compute/eject_vbd.rb
@@ -1,21 +1,16 @@
module Fog
module Compute
class XenServer
-
class Real
-
def eject_vbd(ref, extra_args = {})
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VBD.eject'}, ref)
end
-
end
class Mock
-
def eject_vbd(ref, extra_args = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/enable_host.rb b/lib/fog/xenserver/requests/compute/enable_host.rb
index d77b7cb..818f844 100644
--- a/lib/fog/xenserver/requests/compute/enable_host.rb
+++ b/lib/fog/xenserver/requests/compute/enable_host.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class XenServer
-
class Real
-
#
# Puts the host into a state in which VMs can be started.
#
@@ -12,17 +10,13 @@ module Fog
def enable_host( ref )
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => "host.enable"}, ref)
end
-
end
class Mock
-
def enable_host( ref )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/get_record.rb b/lib/fog/xenserver/requests/compute/get_record.rb
index 2585b73..254eaba 100644
--- a/lib/fog/xenserver/requests/compute/get_record.rb
+++ b/lib/fog/xenserver/requests/compute/get_record.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class XenServer
-
class Real
-
require 'fog/xenserver/parser'
def get_record( ref, klass, options = {} )
@@ -13,17 +11,13 @@ module Fog
def get_record_by_ref( ref, klass, options = {} )
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => "#{klass}.get_record"}, ref).merge(:reference => ref)
end
-
end
class Mock
-
def get_record_by_ref
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/get_records.rb b/lib/fog/xenserver/requests/compute/get_records.rb
index 2d4ca7a..a8dc8ed 100644
--- a/lib/fog/xenserver/requests/compute/get_records.rb
+++ b/lib/fog/xenserver/requests/compute/get_records.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class XenServer
-
class Real
-
require 'fog/xenserver/parsers/get_records'
def get_records( klass, options = {} )
@@ -14,17 +12,13 @@ module Fog
[]
end
end
-
end
class Mock
-
def get_vms
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/insert_vbd.rb b/lib/fog/xenserver/requests/compute/insert_vbd.rb
index 383181b..a80ad47 100644
--- a/lib/fog/xenserver/requests/compute/insert_vbd.rb
+++ b/lib/fog/xenserver/requests/compute/insert_vbd.rb
@@ -1,21 +1,16 @@
module Fog
module Compute
class XenServer
-
class Real
-
def insert_vbd(ref, vdi_ref, extra_args = {})
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VBD.insert'}, ref, vdi_ref)
end
-
end
class Mock
-
def insert_vbd(ref, vdi_ref, extra_args = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/provision_server.rb b/lib/fog/xenserver/requests/compute/provision_server.rb
index a8ab8a3..3d57f57 100644
--- a/lib/fog/xenserver/requests/compute/provision_server.rb
+++ b/lib/fog/xenserver/requests/compute/provision_server.rb
@@ -2,20 +2,16 @@ module Fog
module Compute
class XenServer
class Real
-
def provision_server( ref )
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VM.provision'}, ref)
end
-
end
class Mock
-
def provision_server( ref )
Fog::Mock.not_implemented
end
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/reboot_host.rb b/lib/fog/xenserver/requests/compute/reboot_host.rb
index 45ddf36..394c27d 100644
--- a/lib/fog/xenserver/requests/compute/reboot_host.rb
+++ b/lib/fog/xenserver/requests/compute/reboot_host.rb
@@ -1,23 +1,17 @@
module Fog
module Compute
class XenServer
-
class Real
-
def reboot_host( ref )
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => "host.reboot"}, ref)
end
-
end
class Mock
-
def reboot_host( ref )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/reboot_server.rb b/lib/fog/xenserver/requests/compute/reboot_server.rb
index 7030e06..e999bd3 100644
--- a/lib/fog/xenserver/requests/compute/reboot_server.rb
+++ b/lib/fog/xenserver/requests/compute/reboot_server.rb
@@ -1,23 +1,17 @@
module Fog
module Compute
class XenServer
-
class Real
-
def reboot_server( ref, stype = 'clean' )
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => "VM.#{stype}_reboot"}, ref)
end
-
end
class Mock
-
def reboot_server( ref, stype )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/scan_sr.rb b/lib/fog/xenserver/requests/compute/scan_sr.rb
index 05db41d..a661873 100644
--- a/lib/fog/xenserver/requests/compute/scan_sr.rb
+++ b/lib/fog/xenserver/requests/compute/scan_sr.rb
@@ -1,21 +1,16 @@
module Fog
module Compute
class XenServer
-
class Real
-
def scan_sr( ref, extra_args = {})
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'SR.scan'}, ref)
end
-
end
class Mock
-
def scan_sr(ref, extra_args = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/set_affinity.rb b/lib/fog/xenserver/requests/compute/set_affinity.rb
index 0ce91a9..09e8585 100644
--- a/lib/fog/xenserver/requests/compute/set_affinity.rb
+++ b/lib/fog/xenserver/requests/compute/set_affinity.rb
@@ -1,25 +1,19 @@
module Fog
module Compute
class XenServer
-
class Real
-
require 'fog/xenserver/parser'
def set_affinity( host_ref )
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VM.set_affinity'}, host_ref)
end
-
end
class Mock
-
def set_affinity( uuid )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/set_attribute.rb b/lib/fog/xenserver/requests/compute/set_attribute.rb
index adaa1d7..42b1578 100644
--- a/lib/fog/xenserver/requests/compute/set_attribute.rb
+++ b/lib/fog/xenserver/requests/compute/set_attribute.rb
@@ -1,25 +1,19 @@
module Fog
module Compute
class XenServer
-
class Real
-
require 'fog/xenserver/parser'
def set_attribute( klass, ref, attr_name, *value )
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => "#{klass}.set_#{attr_name.gsub('-','_')}"}, ref, *value)
end
-
end
class Mock
-
def set_attribute( klass, ref, attr_name, value )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/shutdown_host.rb b/lib/fog/xenserver/requests/compute/shutdown_host.rb
index 4a1aef9..115809f 100644
--- a/lib/fog/xenserver/requests/compute/shutdown_host.rb
+++ b/lib/fog/xenserver/requests/compute/shutdown_host.rb
@@ -1,23 +1,17 @@
module Fog
module Compute
class XenServer
-
class Real
-
def shutdown_host( ref )
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => "host.shutdown"}, ref)
end
-
end
class Mock
-
def shutdown_host( ref )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/shutdown_server.rb b/lib/fog/xenserver/requests/compute/shutdown_server.rb
index 9aa806e..5912346 100644
--- a/lib/fog/xenserver/requests/compute/shutdown_server.rb
+++ b/lib/fog/xenserver/requests/compute/shutdown_server.rb
@@ -1,23 +1,17 @@
module Fog
module Compute
class XenServer
-
class Real
-
def shutdown_server( vm_ref, stype = 'clean' )
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => "VM.#{stype}_shutdown"}, vm_ref)
end
-
end
class Mock
-
def shutdown_server( vm_ref )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/snapshot_revert.rb b/lib/fog/xenserver/requests/compute/snapshot_revert.rb
index c6b7186..01aa668 100644
--- a/lib/fog/xenserver/requests/compute/snapshot_revert.rb
+++ b/lib/fog/xenserver/requests/compute/snapshot_revert.rb
@@ -1,21 +1,16 @@
module Fog
module Compute
class XenServer
-
class Real
-
def snapshot_revert( snapshot_ref, extra_args = {})
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VM.revert'}, snapshot_ref)
end
-
end
class Mock
-
def snapshot_revert()
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/snapshot_server.rb b/lib/fog/xenserver/requests/compute/snapshot_server.rb
index 197ea09..f2e8014 100644
--- a/lib/fog/xenserver/requests/compute/snapshot_server.rb
+++ b/lib/fog/xenserver/requests/compute/snapshot_server.rb
@@ -1,21 +1,16 @@
module Fog
module Compute
class XenServer
-
class Real
-
def snapshot_server( vm_ref , name, extra_args = {})
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VM.snapshot'}, vm_ref, name)
end
-
end
class Mock
-
def snapshot_server()
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/start_server.rb b/lib/fog/xenserver/requests/compute/start_server.rb
index e756d99..93e934b 100644
--- a/lib/fog/xenserver/requests/compute/start_server.rb
+++ b/lib/fog/xenserver/requests/compute/start_server.rb
@@ -1,23 +1,17 @@
module Fog
module Compute
-
class XenServer
class Real
-
def start_server( vm_ref )
start_vm( vm_ref )
end
-
end
class Mock
-
def start_server( vm_ref )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/start_vm.rb b/lib/fog/xenserver/requests/compute/start_vm.rb
index 4b26315..0910812 100644
--- a/lib/fog/xenserver/requests/compute/start_vm.rb
+++ b/lib/fog/xenserver/requests/compute/start_vm.rb
@@ -1,25 +1,19 @@
module Fog
module Compute
class XenServer
-
class Real
-
# http://bit.ly/8ZPyCN
# VM.start( session, VM_ref, start_paused, force)
def start_vm( vm_ref )
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VM.start'}, vm_ref, false, false)
end
-
end
class Mock
-
def start_vm( vm_ref )
Fog::Mock.not_implemented
end
-
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/unplug_pbd.rb b/lib/fog/xenserver/requests/compute/unplug_pbd.rb
index 94e8e52..0bb2c60 100644
--- a/lib/fog/xenserver/requests/compute/unplug_pbd.rb
+++ b/lib/fog/xenserver/requests/compute/unplug_pbd.rb
@@ -1,24 +1,19 @@
module Fog
module Compute
class XenServer
-
class Real
-
def unplug_pbd( ref )
@connection.request(
{:parser => Fog::Parsers::XenServer::Base.new, :method => 'PBD.unplug'},
ref
)
end
-
end
class Mock
-
def unplug_pbd( ref )
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/xenserver/requests/compute/unplug_vbd.rb b/lib/fog/xenserver/requests/compute/unplug_vbd.rb
index 4bae72d..658392d 100644
--- a/lib/fog/xenserver/requests/compute/unplug_vbd.rb
+++ b/lib/fog/xenserver/requests/compute/unplug_vbd.rb
@@ -1,9 +1,7 @@
module Fog
module Compute
class XenServer
-
class Real
-
def unplug_vbd( vbd_ref, extra_args = {})
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VBD.unplug'}, vbd_ref)
end
@@ -11,11 +9,9 @@ module Fog
def unplug_force_vbd(ref, extra_args = {})
@connection.request({:parser => Fog::Parsers::XenServer::Base.new, :method => 'VBD.unplug_force'}, ref)
end
-
end
class Mock
-
def unplug_vbd(ref, extra_args = {})
Fog::Mock.not_implemented
end
@@ -23,7 +19,6 @@ module Fog
def unplug_force_vbd(ref, extra_args = {})
Fog::Mock.not_implemented
end
-
end
end
end
diff --git a/lib/fog/xml.rb b/lib/fog/xml.rb
index 13d3c88..2fea6aa 100644
--- a/lib/fog/xml.rb
+++ b/lib/fog/xml.rb
@@ -1,29 +1,4 @@
require "nokogiri"
require "fog/core/parser"
require "fog/xml/sax_parser_connection"
-
-module Fog
-
- # @note Extracting XML components out of core is a work in progress.
- #
- # The {XML} module includes functionality that is common between APIs using
- # XML to send and receive data.
- #
- # The intent is to provide common code for provider APIs using XML but not
- # require it for those using JSON.
- #
- # @todo Add +require "fog/xml"+ and/or +include Fog::XML+ to providers using
- # its services
- #
- module XML
- class Connection < Fog::XML::SAXParserConnection
- def request(params, &block)
- if (parser = params.delete(:parser))
- super(parser, params)
- else
- original_request(params)
- end
- end
- end
- end
-end
+require "fog/xml/connection"
diff --git a/lib/fog/xml/connection.rb b/lib/fog/xml/connection.rb
index fedcc4b..32fd7d9 100644
--- a/lib/fog/xml/connection.rb
+++ b/lib/fog/xml/connection.rb
@@ -1,6 +1,17 @@
module Fog
+ # @note Extracting XML components out of core is a work in progress.
+ #
+ # The {XML} module includes functionality that is common between APIs using
+ # XML to send and receive data.
+ #
+ # The intent is to provide common code for provider APIs using XML but not
+ # require it for those using JSON.
+ #
+ # @todo Add +require "fog/xml"+ and/or +include Fog::XML+ to providers using
+ # its services
+ #
module XML
- class Connection < SAXParserConnection
+ class Connection < Fog::XML::SAXParserConnection
def request(params, &block)
if (parser = params.delete(:parser))
super(parser, params)
diff --git a/lib/fog/xml/sax_parser_connection.rb b/lib/fog/xml/sax_parser_connection.rb
index a5065bc..f80f98f 100644
--- a/lib/fog/xml/sax_parser_connection.rb
+++ b/lib/fog/xml/sax_parser_connection.rb
@@ -1,7 +1,6 @@
module Fog
module XML
class SAXParserConnection < Fog::Core::Connection
-
# Makes a request using the connection using Excon
#
# @param [Hash] params
diff --git a/lib/fog/zerigo/core.rb b/lib/fog/zerigo/core.rb
index 0b82845..b5e6f53 100644
--- a/lib/fog/zerigo/core.rb
+++ b/lib/fog/zerigo/core.rb
@@ -3,10 +3,8 @@ require 'fog/xml'
module Fog
module Zerigo
-
extend Fog::Provider
service(:dns, 'DNS')
-
end
end
diff --git a/lib/fog/zerigo/dns.rb b/lib/fog/zerigo/dns.rb
index ca80c59..9ce50ae 100644
--- a/lib/fog/zerigo/dns.rb
+++ b/lib/fog/zerigo/dns.rb
@@ -3,7 +3,6 @@ require 'fog/zerigo/core'
module Fog
module DNS
class Zerigo < Fog::Service
-
requires :zerigo_email, :zerigo_token
recognizes :host, :persistent, :port, :scheme, :timeout
@@ -30,7 +29,6 @@ module Fog
request :update_zone
class Mock
-
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = key == :zones ? [] : {}
@@ -63,12 +61,11 @@ module Fog
end
def find_host(host_id)
- self.data[:zones].collect { |z| z['hosts'].find { |h| h['id'] == host_id } }.compact.first
+ self.data[:zones].map { |z| z['hosts'].find { |h| h['id'] == host_id } }.compact.first
end
end
class Real
-
def initialize(options={})
require 'fog/core/parser'
@@ -100,7 +97,7 @@ module Fog
end
begin
- response = @connection.request(params.merge!({:host => @host}))
+ response = @connection.request(params)
rescue Excon::Errors::HTTPStatusError => error
raise case error
when Excon::Errors::NotFound
@@ -112,7 +109,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/zerigo/models/dns/record.rb b/lib/fog/zerigo/models/dns/record.rb
index 8223714..ae22769 100644
--- a/lib/fog/zerigo/models/dns/record.rb
+++ b/lib/fog/zerigo/models/dns/record.rb
@@ -3,7 +3,6 @@ require 'fog/core/model'
module Fog
module DNS
class Zerigo
-
class Record < Fog::Model
extend Fog::Deprecation
deprecate :ip, :value
@@ -61,9 +60,7 @@ module Fog
def zone=(new_zone)
@zone = new_zone
end
-
end
-
end
end
end
diff --git a/lib/fog/zerigo/models/dns/records.rb b/lib/fog/zerigo/models/dns/records.rb
index a43071c..4874fc1 100644
--- a/lib/fog/zerigo/models/dns/records.rb
+++ b/lib/fog/zerigo/models/dns/records.rb
@@ -4,9 +4,7 @@ require 'fog/zerigo/models/dns/record'
module Fog
module DNS
class Zerigo
-
class Records < Fog::Collection
-
attribute :zone
model Fog::DNS::Zerigo::Record
@@ -41,9 +39,7 @@ module Fog
requires :zone
super({ :zone => zone }.merge!(attributes))
end
-
end
-
end
end
end
diff --git a/lib/fog/zerigo/models/dns/zone.rb b/lib/fog/zerigo/models/dns/zone.rb
index d55c5c1..046f46f 100644
--- a/lib/fog/zerigo/models/dns/zone.rb
+++ b/lib/fog/zerigo/models/dns/zone.rb
@@ -4,9 +4,7 @@ require 'fog/zerigo/models/dns/records'
module Fog
module DNS
class Zerigo
-
class Zone < Fog::Model
-
identity :id
attribute :created_at, :aliases => 'created-at'
@@ -80,9 +78,7 @@ module Fog
merge_attributes(data.body)
true
end
-
end
-
end
end
end
diff --git a/lib/fog/zerigo/models/dns/zones.rb b/lib/fog/zerigo/models/dns/zones.rb
index ab44de7..96c79ef 100644
--- a/lib/fog/zerigo/models/dns/zones.rb
+++ b/lib/fog/zerigo/models/dns/zones.rb
@@ -4,9 +4,7 @@ require 'fog/zerigo/models/dns/zone'
module Fog
module DNS
class Zerigo
-
class Zones < Fog::Collection
-
model Fog::DNS::Zerigo::Zone
def all(options = {})
@@ -22,9 +20,7 @@ module Fog
rescue Fog::Service::NotFound
nil
end
-
end
-
end
end
end
diff --git a/lib/fog/zerigo/parsers/dns/count_hosts.rb b/lib/fog/zerigo/parsers/dns/count_hosts.rb
index 95fc7ec..54873d0 100644
--- a/lib/fog/zerigo/parsers/dns/count_hosts.rb
+++ b/lib/fog/zerigo/parsers/dns/count_hosts.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Zerigo
-
class CountHosts < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = value.to_i
end
end
-
end
-
end
end
end
diff --git a/lib/fog/zerigo/parsers/dns/count_zones.rb b/lib/fog/zerigo/parsers/dns/count_zones.rb
index 3c58956..9ce14dd 100644
--- a/lib/fog/zerigo/parsers/dns/count_zones.rb
+++ b/lib/fog/zerigo/parsers/dns/count_zones.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Zerigo
-
class CountZones < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -15,9 +13,7 @@ module Fog
@response[name] = value.to_i
end
end
-
end
-
end
end
end
diff --git a/lib/fog/zerigo/parsers/dns/create_host.rb b/lib/fog/zerigo/parsers/dns/create_host.rb
index 2a93d70..285cb8b 100644
--- a/lib/fog/zerigo/parsers/dns/create_host.rb
+++ b/lib/fog/zerigo/parsers/dns/create_host.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Zerigo
-
class CreateHost < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -19,9 +17,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/zerigo/parsers/dns/create_zone.rb b/lib/fog/zerigo/parsers/dns/create_zone.rb
index 77bcb14..0667377 100644
--- a/lib/fog/zerigo/parsers/dns/create_zone.rb
+++ b/lib/fog/zerigo/parsers/dns/create_zone.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Zerigo
-
class CreateZone < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -17,9 +15,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/zerigo/parsers/dns/find_hosts.rb b/lib/fog/zerigo/parsers/dns/find_hosts.rb
index 03ca761..b476613 100644
--- a/lib/fog/zerigo/parsers/dns/find_hosts.rb
+++ b/lib/fog/zerigo/parsers/dns/find_hosts.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Zerigo
-
class FindHosts < Fog::Parsers::Base
-
def reset
@host = {}
@response = { 'hosts' => [] }
@@ -23,9 +21,7 @@ module Fog
@host = {}
end
end
-
end
-
end
end
end
diff --git a/lib/fog/zerigo/parsers/dns/get_host.rb b/lib/fog/zerigo/parsers/dns/get_host.rb
index 74188d3..d85c8b2 100644
--- a/lib/fog/zerigo/parsers/dns/get_host.rb
+++ b/lib/fog/zerigo/parsers/dns/get_host.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Zerigo
-
class GetHost < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -19,9 +17,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/zerigo/parsers/dns/get_zone.rb b/lib/fog/zerigo/parsers/dns/get_zone.rb
index c0fb480..8230454 100644
--- a/lib/fog/zerigo/parsers/dns/get_zone.rb
+++ b/lib/fog/zerigo/parsers/dns/get_zone.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Zerigo
-
class GetZone < Fog::Parsers::Base
-
def reset
@host = {}
@hosts = []
@@ -47,11 +45,8 @@ module Fog
@response[name] = value
end
end
-
end
-
end
-
end
end
end
diff --git a/lib/fog/zerigo/parsers/dns/get_zone_stats.rb b/lib/fog/zerigo/parsers/dns/get_zone_stats.rb
index c542481..2bda876 100644
--- a/lib/fog/zerigo/parsers/dns/get_zone_stats.rb
+++ b/lib/fog/zerigo/parsers/dns/get_zone_stats.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Zerigo
-
class GetZoneStats < Fog::Parsers::Base
-
def reset
@response = {}
end
@@ -17,9 +15,7 @@ module Fog
@response[name] = value
end
end
-
end
-
end
end
end
diff --git a/lib/fog/zerigo/parsers/dns/list_hosts.rb b/lib/fog/zerigo/parsers/dns/list_hosts.rb
index 326935c..4d12a7b 100644
--- a/lib/fog/zerigo/parsers/dns/list_hosts.rb
+++ b/lib/fog/zerigo/parsers/dns/list_hosts.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Zerigo
-
class ListHosts < Fog::Parsers::Base
-
def reset
@host = {}
@response = { 'hosts' => [] }
@@ -23,9 +21,7 @@ module Fog
@host = {}
end
end
-
end
-
end
end
end
diff --git a/lib/fog/zerigo/parsers/dns/list_zones.rb b/lib/fog/zerigo/parsers/dns/list_zones.rb
index 73359f8..5fcec25 100644
--- a/lib/fog/zerigo/parsers/dns/list_zones.rb
+++ b/lib/fog/zerigo/parsers/dns/list_zones.rb
@@ -2,9 +2,7 @@ module Fog
module Parsers
module DNS
module Zerigo
-
class ListZones < Fog::Parsers::Base
-
def reset
@zone = {}
@response = { 'zones' => [] }
@@ -21,9 +19,7 @@ module Fog
@zone = {}
end
end
-
end
-
end
end
end
diff --git a/lib/fog/zerigo/requests/dns/count_hosts.rb b/lib/fog/zerigo/requests/dns/count_hosts.rb
index 7b3c642..f8f051e 100644
--- a/lib/fog/zerigo/requests/dns/count_hosts.rb
+++ b/lib/fog/zerigo/requests/dns/count_hosts.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Zerigo
class Real
-
require 'fog/zerigo/parsers/dns/count_hosts'
# total number of hosts available for the specified zone. It is the same value as provided
@@ -21,7 +20,6 @@ module Fog
:path => "/api/1.1/zones/#{zone_id}/hosts/count.xml"
)
end
-
end
class Mock # :nodoc:all
diff --git a/lib/fog/zerigo/requests/dns/count_zones.rb b/lib/fog/zerigo/requests/dns/count_zones.rb
index 76b83d7..7d5b6f3 100644
--- a/lib/fog/zerigo/requests/dns/count_zones.rb
+++ b/lib/fog/zerigo/requests/dns/count_zones.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Zerigo
class Real
-
require 'fog/zerigo/parsers/dns/count_zones'
# Total number of zones hosted Zerigo for this account. It is the same value as provided
@@ -21,7 +20,6 @@ module Fog
:path => "/api/1.1/zones/count.xml"
)
end
-
end
class Mock # :nodoc:all
diff --git a/lib/fog/zerigo/requests/dns/create_host.rb b/lib/fog/zerigo/requests/dns/create_host.rb
index 668b444..e6f87e3 100644
--- a/lib/fog/zerigo/requests/dns/create_host.rb
+++ b/lib/fog/zerigo/requests/dns/create_host.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Zerigo
class Real
-
require 'fog/zerigo/parsers/dns/create_host'
# Create a new host in the specified zone
@@ -32,7 +31,6 @@ module Fog
# * 'zone-id'<~String>
# * 'status'<~Integer> - 201 if successful
def create_host(zone_id, host_type, data, options = {})
-
optional_tags= ''
options.each { |option, value|
case option
@@ -55,7 +53,6 @@ module Fog
:path => "/api/1.1/zones/#{zone_id}/hosts.xml"
)
end
-
end
class Mock # :nodoc:all
diff --git a/lib/fog/zerigo/requests/dns/create_zone.rb b/lib/fog/zerigo/requests/dns/create_zone.rb
index 67f2889..1849209 100644
--- a/lib/fog/zerigo/requests/dns/create_zone.rb
+++ b/lib/fog/zerigo/requests/dns/create_zone.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Zerigo
class Real
-
require 'fog/zerigo/parsers/dns/create_zone'
# Create a new zone for Zerigo's DNS servers to serve/host
@@ -47,7 +46,6 @@ module Fog
# * 'status'<~Integer> - 201 if successful
def create_zone(domain, default_ttl, ns_type, options = {})
-
optional_tags= ''
options.each { |option, value|
case option
@@ -82,7 +80,6 @@ module Fog
:path => '/api/1.1/zones.xml'
)
end
-
end
class Mock # :nodoc:all
@@ -126,7 +123,6 @@ module Fog
response
end
end
-
end
end
end
diff --git a/lib/fog/zerigo/requests/dns/delete_host.rb b/lib/fog/zerigo/requests/dns/delete_host.rb
index 5eed49a..8c374f3 100644
--- a/lib/fog/zerigo/requests/dns/delete_host.rb
+++ b/lib/fog/zerigo/requests/dns/delete_host.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Zerigo
class Real
-
# Delete a host record
#
# ==== Parameters
@@ -17,7 +16,6 @@ module Fog
:path => "/api/1.1/hosts/#{host_id}.xml"
)
end
-
end
class Mock # :nodoc:all
diff --git a/lib/fog/zerigo/requests/dns/delete_zone.rb b/lib/fog/zerigo/requests/dns/delete_zone.rb
index 8a0a2d5..0eb3d32 100644
--- a/lib/fog/zerigo/requests/dns/delete_zone.rb
+++ b/lib/fog/zerigo/requests/dns/delete_zone.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Zerigo
class Real
-
# Delete a zone from Zerigo
#
# ==== Parameters
@@ -18,7 +17,6 @@ module Fog
:path => "/api/1.1/zones/#{zone_id}.xml"
)
end
-
end
class Mock # :nodoc:all
diff --git a/lib/fog/zerigo/requests/dns/find_hosts.rb b/lib/fog/zerigo/requests/dns/find_hosts.rb
index cd2f074..8b0c3b7 100644
--- a/lib/fog/zerigo/requests/dns/find_hosts.rb
+++ b/lib/fog/zerigo/requests/dns/find_hosts.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Zerigo
class Real
-
require 'fog/zerigo/parsers/dns/find_hosts'
# Get list of all the host records that match the FQDN. If desired, can limit
@@ -48,7 +47,6 @@ module Fog
)
end
end
-
end
class Mock # :nodoc:all
@@ -60,7 +58,7 @@ module Fog
response.status = 404
else
hosts = zone ? zone['hosts'].select { |z| z['fqdn'] == fqdn } :
- self.data[:zones].collect { |z| z['hosts'].find { |h| h['fqdn'] == fqdn } }.compact
+ self.data[:zones].map { |z| z['hosts'].find { |h| h['fqdn'] == fqdn } }.compact
response.status = 200
response.body = {
diff --git a/lib/fog/zerigo/requests/dns/get_host.rb b/lib/fog/zerigo/requests/dns/get_host.rb
index 7e914d8..9e4f1fc 100644
--- a/lib/fog/zerigo/requests/dns/get_host.rb
+++ b/lib/fog/zerigo/requests/dns/get_host.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Zerigo
class Real
-
require 'fog/zerigo/parsers/dns/get_host'
# get details about a given host record
@@ -32,7 +31,6 @@ module Fog
:path => "/api/1.1/hosts/#{host_id}.xml"
)
end
-
end
class Mock # :nodoc:all
diff --git a/lib/fog/zerigo/requests/dns/get_zone.rb b/lib/fog/zerigo/requests/dns/get_zone.rb
index 933aaa5..1f4d298 100644
--- a/lib/fog/zerigo/requests/dns/get_zone.rb
+++ b/lib/fog/zerigo/requests/dns/get_zone.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Zerigo
class Real
-
require 'fog/zerigo/parsers/dns/get_zone'
# Get details of a DNS zone. The response is similar to list_zones, with the
@@ -42,7 +41,6 @@ module Fog
:path => "/api/1.1/zones/#{zone_id_or_domain}.xml"
)
end
-
end
class Mock # :nodoc:all
diff --git a/lib/fog/zerigo/requests/dns/get_zone_stats.rb b/lib/fog/zerigo/requests/dns/get_zone_stats.rb
index f21fdb0..b9656a9 100644
--- a/lib/fog/zerigo/requests/dns/get_zone_stats.rb
+++ b/lib/fog/zerigo/requests/dns/get_zone_stats.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Zerigo
class Real
-
require 'fog/zerigo/parsers/dns/get_zone_stats'
# returns current traffic statistics about this zone. Queries is measured from the
@@ -29,7 +28,6 @@ module Fog
:path => "/api/1.1/zones/#{zone_id}/stats.xml"
)
end
-
end
class Mock # :nodoc:all
diff --git a/lib/fog/zerigo/requests/dns/list_hosts.rb b/lib/fog/zerigo/requests/dns/list_hosts.rb
index 1751f8b..6c14478 100644
--- a/lib/fog/zerigo/requests/dns/list_hosts.rb
+++ b/lib/fog/zerigo/requests/dns/list_hosts.rb
@@ -2,13 +2,16 @@ module Fog
module DNS
class Zerigo
class Real
-
- require 'fog/zerigo/parsers/dns/list_hosts'
+ require "fog/zerigo/parsers/dns/list_hosts"
# Get list of all DNS zones hosted on Slicehost (for this account)
#
# ==== Parameters
# * zone_id<~Integer> - the zone ID of the zone from which to get the host records for
+ # * 'options'<~Hash> - optional parameters
+ # * 'page' <~Integer>
+ # * 'per_page' <~Integer>
+ # * 'fqdn' <~String>
# ==== Returns
# * response<~Excon::Response>:
# * body<~Hash>:
@@ -25,28 +28,39 @@ module Fog
# * 'updated-at'<~String>
# * 'zone-id'<~String>
# * 'status'<~Integer> - 200 indicates success
- def list_hosts(zone_id)
+ def list_hosts(zone_id, options={})
request(
+ :query => options,
:expects => 200,
- :method => 'GET',
+ :method => "GET",
:parser => Fog::Parsers::DNS::Zerigo::ListHosts.new,
:path => "/api/1.1/zones/#{zone_id}/hosts.xml"
)
end
-
end
class Mock # :nodoc:all
- def list_hosts(zone_id)
+ def list_hosts(zone_id, options={})
zone = find_by_zone_id(zone_id)
response = Excon::Response.new
if zone
- response.status = 200
- response.body = {
- 'hosts' => zone['hosts']
- }
+ if options.empty?
+ response.status = 200
+ response.body = {
+ "hosts" => zone["hosts"]
+ }
+ else
+ hosts = zone["hosts"]
+ hosts = hosts.select {|h| h["fqdn"] == options["fqdn"]} if options["fqdn"]
+ hosts = options["per_page"] ? hosts.each_slice(options["per_page"] - 1).to_a : hosts.each_slice(100).to_a
+ hosts = options["page"] ? hosts[options["page"]] : hosts[0]
+ response.status = 200
+ response.body = {
+ "hosts" => hosts
+ }
+ end
else
response.status = 404
end
diff --git a/lib/fog/zerigo/requests/dns/list_zones.rb b/lib/fog/zerigo/requests/dns/list_zones.rb
index 3a4a34f..2d11a64 100644
--- a/lib/fog/zerigo/requests/dns/list_zones.rb
+++ b/lib/fog/zerigo/requests/dns/list_zones.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Zerigo
class Real
-
require 'fog/zerigo/parsers/dns/list_zones'
# Get list of all DNS zones hosted on Slicehost (for this account)
@@ -44,11 +43,9 @@ module Fog
:path => '/api/1.1/zones.xml'
)
end
-
end
class Mock # :nodoc:all
-
def list_zones
response = Excon::Response.new
@@ -59,7 +56,6 @@ module Fog
response
end
-
end
end
end
diff --git a/lib/fog/zerigo/requests/dns/update_host.rb b/lib/fog/zerigo/requests/dns/update_host.rb
index 3f0b1e5..c0dc6f9 100644
--- a/lib/fog/zerigo/requests/dns/update_host.rb
+++ b/lib/fog/zerigo/requests/dns/update_host.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Zerigo
class Real
-
# Update a host record
#
# ==== Parameters
@@ -19,7 +18,6 @@ module Fog
# * 'status'<~Integer> - 200 for success
#
def update_host(host_id, options = {})
-
optional_tags= ''
options.each { |option, value|
case option
@@ -45,7 +43,6 @@ module Fog
:path => "/api/1.1/hosts/#{host_id}.xml"
)
end
-
end
class Mock # :nodoc:all
diff --git a/lib/fog/zerigo/requests/dns/update_zone.rb b/lib/fog/zerigo/requests/dns/update_zone.rb
index bfcf313..75aa91b 100644
--- a/lib/fog/zerigo/requests/dns/update_zone.rb
+++ b/lib/fog/zerigo/requests/dns/update_zone.rb
@@ -2,7 +2,6 @@ module Fog
module DNS
class Zerigo
class Real
-
# Update the parameters of a zone
# ==== Parameters
#
@@ -25,7 +24,6 @@ module Fog
# * response<~Excon::Response>:
# * 'status'<~Integer> - 200 for success
def update_zone(zone_id, options = {})
-
optional_tags= ''
options.each { |option, value|
case option
@@ -63,7 +61,6 @@ module Fog
:path => "/api/1.1/zones/#{zone_id}.xml"
)
end
-
end
class Mock # :nodoc:all
diff --git a/lib/tasks/changelog_task.rb b/lib/tasks/changelog_task.rb
index 4ec317a..db5ef3d 100644
--- a/lib/tasks/changelog_task.rb
+++ b/lib/tasks/changelog_task.rb
@@ -4,7 +4,6 @@ require "rake/tasklib"
module Fog
module Rake
class ChangelogTask < ::Rake::TaskLib
-
def initialize
desc "Update the changelog since the last release"
task(:changelog) do
@@ -99,12 +98,13 @@ Watchers | #{watchers}
def committers_sorted_by_commits
committer_pairs = @committers.to_a.sort {|x,y| y[1] <=> x[1]}
committer_pairs.reject! {|pair| pair.last < 1 }
- committer_pairs.collect {|pair| pair.first }
+ committer_pairs.map {|pair| pair.first }
end
def former_mvp?(committer)
[
'Aaron Suggs',
+ 'ller', #"Achim Ledermüller" UTF-8 fail?
'Ash Wilson',
'Benson Kalahar',
'Brian Hartsock',
@@ -122,6 +122,7 @@ Watchers | #{watchers}
'Kyle Rames',
'Lincoln Stoll',
'Luqman Amjad',
+ 'Michael Hale',
'Michael Zeng',
'Mike Hagedorn',
'Mike Pountney',
@@ -206,7 +207,6 @@ Watchers | #{watchers}
def timestamp
@time ||= Time.now.utc.strftime('%m/%d/%Y')
end
-
end
end
end
diff --git a/lib/tasks/github_release_task.rb b/lib/tasks/github_release_task.rb
index ee7ad79..0e94749 100644
--- a/lib/tasks/github_release_task.rb
+++ b/lib/tasks/github_release_task.rb
@@ -6,7 +6,6 @@ require 'netrc'
module Fog
module Rake
class GithubReleaseTask < ::Rake::TaskLib
-
def initialize
desc "Update the changelog since the last release"
task(:github_release) do
@@ -36,7 +35,7 @@ module Fog
def releases
return @releases if @releases
response = github.releases("fog/fog")
- @releases = response.collect {|r| r.tag_name }
+ @releases = response.map {|r| r.tag_name }
end
def release_exists?
@@ -64,4 +63,4 @@ module Fog
end
end
end
-end
\ No newline at end of file
+end
diff --git a/metadata.yml b/metadata.yml
index f90ab11..3fe2753 100644
--- a/metadata.yml
+++ b/metadata.yml
@@ -1,14 +1,14 @@
--- !ruby/object:Gem::Specification
name: fog
version: !ruby/object:Gem::Version
- version: 1.22.0
+ version: 1.24.0
platform: ruby
authors:
- geemus (Wesley Beary)
autorequire:
bindir: bin
cert_chain: []
-date: 2014-04-17 00:00:00.000000000 Z
+date: 2014-10-09 00:00:00.000000000 Z
dependencies:
- !ruby/object:Gem::Dependency
name: fog-core
@@ -16,20 +16,14 @@ dependencies:
requirements:
- - ~>
- !ruby/object:Gem::Version
- version: '1.21'
- - - ! '>='
- - !ruby/object:Gem::Version
- version: 1.21.1
+ version: '1.23'
type: :runtime
prerelease: false
version_requirements: !ruby/object:Gem::Requirement
requirements:
- - ~>
- !ruby/object:Gem::Version
- version: '1.21'
- - - ! '>='
- - !ruby/object:Gem::Version
- version: 1.21.1
+ version: '1.23'
- !ruby/object:Gem::Dependency
name: fog-json
requirement: !ruby/object:Gem::Requirement
@@ -65,6 +59,20 @@ dependencies:
- !ruby/object:Gem::Version
version: 1.5.11
- !ruby/object:Gem::Dependency
+ name: ipaddress
+ requirement: !ruby/object:Gem::Requirement
+ requirements:
+ - - ~>
+ - !ruby/object:Gem::Version
+ version: '0.5'
+ type: :runtime
+ prerelease: false
+ version_requirements: !ruby/object:Gem::Requirement
+ requirements:
+ - - ~>
+ - !ruby/object:Gem::Version
+ version: '0.5'
+- !ruby/object:Gem::Dependency
name: fog-brightbox
requirement: !ruby/object:Gem::Requirement
requirements:
@@ -79,13 +87,13 @@ dependencies:
- !ruby/object:Gem::Version
version: '0'
- !ruby/object:Gem::Dependency
- name: minitest
+ name: fog-softlayer
requirement: !ruby/object:Gem::Requirement
requirements:
- - ! '>='
- !ruby/object:Gem::Version
version: '0'
- type: :development
+ type: :runtime
prerelease: false
version_requirements: !ruby/object:Gem::Requirement
requirements:
@@ -93,7 +101,35 @@ dependencies:
- !ruby/object:Gem::Version
version: '0'
- !ruby/object:Gem::Dependency
- name: jekyll
+ name: fog-sakuracloud
+ requirement: !ruby/object:Gem::Requirement
+ requirements:
+ - - ! '>='
+ - !ruby/object:Gem::Version
+ version: 0.0.4
+ type: :runtime
+ prerelease: false
+ version_requirements: !ruby/object:Gem::Requirement
+ requirements:
+ - - ! '>='
+ - !ruby/object:Gem::Version
+ version: 0.0.4
+- !ruby/object:Gem::Dependency
+ name: fog-radosgw
+ requirement: !ruby/object:Gem::Requirement
+ requirements:
+ - - ! '>='
+ - !ruby/object:Gem::Version
+ version: 0.0.2
+ type: :runtime
+ prerelease: false
+ version_requirements: !ruby/object:Gem::Requirement
+ requirements:
+ - - ! '>='
+ - !ruby/object:Gem::Version
+ version: 0.0.2
+- !ruby/object:Gem::Dependency
+ name: minitest
requirement: !ruby/object:Gem::Requirement
requirements:
- - ! '>='
@@ -219,6 +255,20 @@ dependencies:
- !ruby/object:Gem::Version
version: '0'
- !ruby/object:Gem::Dependency
+ name: opennebula
+ requirement: !ruby/object:Gem::Requirement
+ requirements:
+ - - ! '>='
+ - !ruby/object:Gem::Version
+ version: 4.4.0
+ type: :development
+ prerelease: false
+ version_requirements: !ruby/object:Gem::Requirement
+ requirements:
+ - - ! '>='
+ - !ruby/object:Gem::Version
+ version: 4.4.0
+- !ruby/object:Gem::Dependency
name: google-api-client
requirement: !ruby/object:Gem::Requirement
requirements:
@@ -238,6 +288,34 @@ dependencies:
- - ! '>='
- !ruby/object:Gem::Version
version: 0.6.2
+- !ruby/object:Gem::Dependency
+ name: docker-api
+ requirement: !ruby/object:Gem::Requirement
+ requirements:
+ - - ! '>='
+ - !ruby/object:Gem::Version
+ version: 1.8.0
+ type: :development
+ prerelease: false
+ version_requirements: !ruby/object:Gem::Requirement
+ requirements:
+ - - ! '>='
+ - !ruby/object:Gem::Version
+ version: 1.8.0
+- !ruby/object:Gem::Dependency
+ name: rubocop
+ requirement: !ruby/object:Gem::Requirement
+ requirements:
+ - - ! '>='
+ - !ruby/object:Gem::Version
+ version: '0'
+ type: :development
+ prerelease: false
+ version_requirements: !ruby/object:Gem::Requirement
+ requirements:
+ - - ! '>='
+ - !ruby/object:Gem::Version
+ version: '0'
description: The Ruby cloud services library. Supports all major cloud providers including
AWS, Rackspace, Linode, Blue Box, StormOnDemand, and many others. Full support for
most AWS services including EC2, S3, CloudWatch, SimpleDB, ELB, and RDS.
@@ -251,6 +329,8 @@ files:
- .document
- .gitignore
- .irbrc
+- .rubocop.yml
+- .rubocop_todo.yml
- .travis.yml
- .yardopts
- CHANGELOG.md
@@ -547,11 +627,13 @@ files:
- lib/fog/aws/parsers/compute/describe_tags.rb
- lib/fog/aws/parsers/compute/describe_volume_status.rb
- lib/fog/aws/parsers/compute/describe_volumes.rb
+- lib/fog/aws/parsers/compute/describe_vpc_attribute.rb
- lib/fog/aws/parsers/compute/describe_vpcs.rb
- lib/fog/aws/parsers/compute/detach_volume.rb
- lib/fog/aws/parsers/compute/get_console_output.rb
- lib/fog/aws/parsers/compute/get_password_data.rb
- lib/fog/aws/parsers/compute/import_key_pair.rb
+- lib/fog/aws/parsers/compute/modify_subnet_attribute.rb
- lib/fog/aws/parsers/compute/monitor_unmonitor_instances.rb
- lib/fog/aws/parsers/compute/network_acl_parser.rb
- lib/fog/aws/parsers/compute/network_interface_parser.rb
@@ -564,10 +646,13 @@ files:
- lib/fog/aws/parsers/compute/start_stop_instances.rb
- lib/fog/aws/parsers/compute/terminate_instances.rb
- lib/fog/aws/parsers/dns/change_resource_record_sets.rb
+- lib/fog/aws/parsers/dns/create_health_check.rb
- lib/fog/aws/parsers/dns/create_hosted_zone.rb
- lib/fog/aws/parsers/dns/delete_hosted_zone.rb
- lib/fog/aws/parsers/dns/get_change.rb
- lib/fog/aws/parsers/dns/get_hosted_zone.rb
+- lib/fog/aws/parsers/dns/health_check.rb
+- lib/fog/aws/parsers/dns/list_health_checks.rb
- lib/fog/aws/parsers/dns/list_hosted_zones.rb
- lib/fog/aws/parsers/dns/list_resource_record_sets.rb
- lib/fog/aws/parsers/elasticache/authorize_cache_security_group_ingress.rb
@@ -619,6 +704,7 @@ files:
- lib/fog/aws/parsers/iam/create_access_key.rb
- lib/fog/aws/parsers/iam/create_group.rb
- lib/fog/aws/parsers/iam/create_user.rb
+- lib/fog/aws/parsers/iam/get_account_password_policy.rb
- lib/fog/aws/parsers/iam/get_account_summary.rb
- lib/fog/aws/parsers/iam/get_group.rb
- lib/fog/aws/parsers/iam/get_group_policy.rb
@@ -673,6 +759,7 @@ files:
- lib/fog/aws/parsers/rds/event_list.rb
- lib/fog/aws/parsers/rds/modify_db_instance.rb
- lib/fog/aws/parsers/rds/modify_db_parameter_group.rb
+- lib/fog/aws/parsers/rds/promote_read_replica.rb
- lib/fog/aws/parsers/rds/reboot_db_instance.rb
- lib/fog/aws/parsers/rds/restore_db_instance_from_db_snapshot.rb
- lib/fog/aws/parsers/rds/restore_db_instance_to_point_in_time.rb
@@ -928,6 +1015,7 @@ files:
- lib/fog/aws/requests/compute/describe_tags.rb
- lib/fog/aws/requests/compute/describe_volume_status.rb
- lib/fog/aws/requests/compute/describe_volumes.rb
+- lib/fog/aws/requests/compute/describe_vpc_attribute.rb
- lib/fog/aws/requests/compute/describe_vpcs.rb
- lib/fog/aws/requests/compute/detach_internet_gateway.rb
- lib/fog/aws/requests/compute/detach_network_interface.rb
@@ -941,6 +1029,7 @@ files:
- lib/fog/aws/requests/compute/modify_instance_attribute.rb
- lib/fog/aws/requests/compute/modify_network_interface_attribute.rb
- lib/fog/aws/requests/compute/modify_snapshot_attribute.rb
+- lib/fog/aws/requests/compute/modify_subnet_attribute.rb
- lib/fog/aws/requests/compute/modify_volume_attribute.rb
- lib/fog/aws/requests/compute/modify_vpc_attribute.rb
- lib/fog/aws/requests/compute/monitor_instances.rb
@@ -969,10 +1058,14 @@ files:
- lib/fog/aws/requests/data_pipeline/put_pipeline_definition.rb
- lib/fog/aws/requests/data_pipeline/query_objects.rb
- lib/fog/aws/requests/dns/change_resource_record_sets.rb
+- lib/fog/aws/requests/dns/create_health_check.rb
- lib/fog/aws/requests/dns/create_hosted_zone.rb
+- lib/fog/aws/requests/dns/delete_health_check.rb
- lib/fog/aws/requests/dns/delete_hosted_zone.rb
- lib/fog/aws/requests/dns/get_change.rb
+- lib/fog/aws/requests/dns/get_health_check.rb
- lib/fog/aws/requests/dns/get_hosted_zone.rb
+- lib/fog/aws/requests/dns/list_health_checks.rb
- lib/fog/aws/requests/dns/list_hosted_zones.rb
- lib/fog/aws/requests/dns/list_resource_record_sets.rb
- lib/fog/aws/requests/dynamodb/batch_get_item.rb
@@ -1072,6 +1165,7 @@ files:
- lib/fog/aws/requests/iam/create_user.rb
- lib/fog/aws/requests/iam/delete_access_key.rb
- lib/fog/aws/requests/iam/delete_account_alias.rb
+- lib/fog/aws/requests/iam/delete_account_password_policy.rb
- lib/fog/aws/requests/iam/delete_group.rb
- lib/fog/aws/requests/iam/delete_group_policy.rb
- lib/fog/aws/requests/iam/delete_instance_profile.rb
@@ -1082,6 +1176,7 @@ files:
- lib/fog/aws/requests/iam/delete_signing_certificate.rb
- lib/fog/aws/requests/iam/delete_user.rb
- lib/fog/aws/requests/iam/delete_user_policy.rb
+- lib/fog/aws/requests/iam/get_account_password_policy.rb
- lib/fog/aws/requests/iam/get_account_summary.rb
- lib/fog/aws/requests/iam/get_group.rb
- lib/fog/aws/requests/iam/get_group_policy.rb
@@ -1112,6 +1207,7 @@ files:
- lib/fog/aws/requests/iam/remove_role_from_instance_profile.rb
- lib/fog/aws/requests/iam/remove_user_from_group.rb
- lib/fog/aws/requests/iam/update_access_key.rb
+- lib/fog/aws/requests/iam/update_account_password_policy.rb
- lib/fog/aws/requests/iam/update_group.rb
- lib/fog/aws/requests/iam/update_login_profile.rb
- lib/fog/aws/requests/iam/update_server_certificate.rb
@@ -1147,6 +1243,7 @@ files:
- lib/fog/aws/requests/rds/list_tags_for_resource.rb
- lib/fog/aws/requests/rds/modify_db_instance.rb
- lib/fog/aws/requests/rds/modify_db_parameter_group.rb
+- lib/fog/aws/requests/rds/promote_read_replica.rb
- lib/fog/aws/requests/rds/reboot_db_instance.rb
- lib/fog/aws/requests/rds/remove_tags_from_resource.rb
- lib/fog/aws/requests/rds/restore_db_instance_from_db_snapshot.rb
@@ -1258,6 +1355,7 @@ files:
- lib/fog/aws/requests/storage/get_object_url.rb
- lib/fog/aws/requests/storage/get_request_payment.rb
- lib/fog/aws/requests/storage/get_service.rb
+- lib/fog/aws/requests/storage/head_bucket.rb
- lib/fog/aws/requests/storage/head_object.rb
- lib/fog/aws/requests/storage/initiate_multipart_upload.rb
- lib/fog/aws/requests/storage/list_multipart_uploads.rb
@@ -1329,14 +1427,15 @@ files:
- lib/fog/bin/linode.rb
- lib/fog/bin/local.rb
- lib/fog/bin/ninefold.rb
+- lib/fog/bin/opennebula.rb
- lib/fog/bin/openstack.rb
- lib/fog/bin/openvz.rb
- lib/fog/bin/ovirt.rb
- lib/fog/bin/rackspace.rb
- lib/fog/bin/rage4.rb
- lib/fog/bin/riakcs.rb
-- lib/fog/bin/sakuracloud.rb
- lib/fog/bin/serverlove.rb
+- lib/fog/bin/softlayer.rb
- lib/fog/bin/stormondemand.rb
- lib/fog/bin/terremark.rb
- lib/fog/bin/vcloud.rb
@@ -1527,106 +1626,511 @@ files:
- lib/fog/cloudstack/models/compute/zone.rb
- lib/fog/cloudstack/models/compute/zones.rb
- lib/fog/cloudstack/requests/compute/acquire_ip_address.rb
+- lib/fog/cloudstack/requests/compute/activate_project.rb
+- lib/fog/cloudstack/requests/compute/add_account_to_project.rb
+- lib/fog/cloudstack/requests/compute/add_baremetal_dhcp.rb
+- lib/fog/cloudstack/requests/compute/add_baremetal_host.rb
+- lib/fog/cloudstack/requests/compute/add_baremetal_pxe_kick_start_server.rb
+- lib/fog/cloudstack/requests/compute/add_baremetal_pxe_ping_server.rb
+- lib/fog/cloudstack/requests/compute/add_big_switch_vns_device.rb
+- lib/fog/cloudstack/requests/compute/add_cisco_asa1000v_resource.rb
+- lib/fog/cloudstack/requests/compute/add_cisco_vnmc_resource.rb
+- lib/fog/cloudstack/requests/compute/add_cluster.rb
+- lib/fog/cloudstack/requests/compute/add_external_firewall.rb
+- lib/fog/cloudstack/requests/compute/add_external_load_balancer.rb
+- lib/fog/cloudstack/requests/compute/add_f5_load_balancer.rb
+- lib/fog/cloudstack/requests/compute/add_guest_os.rb
+- lib/fog/cloudstack/requests/compute/add_guest_os_mapping.rb
+- lib/fog/cloudstack/requests/compute/add_host.rb
+- lib/fog/cloudstack/requests/compute/add_image_store.rb
+- lib/fog/cloudstack/requests/compute/add_ip_to_nic.rb
+- lib/fog/cloudstack/requests/compute/add_ldap_configuration.rb
+- lib/fog/cloudstack/requests/compute/add_netscaler_load_balancer.rb
+- lib/fog/cloudstack/requests/compute/add_network_device.rb
+- lib/fog/cloudstack/requests/compute/add_network_service_provider.rb
+- lib/fog/cloudstack/requests/compute/add_nic_to_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/add_nicira_nvp_device.rb
+- lib/fog/cloudstack/requests/compute/add_open_daylight_controller.rb
+- lib/fog/cloudstack/requests/compute/add_palo_alto_firewall.rb
+- lib/fog/cloudstack/requests/compute/add_region.rb
+- lib/fog/cloudstack/requests/compute/add_resource_detail.rb
+- lib/fog/cloudstack/requests/compute/add_s3.rb
+- lib/fog/cloudstack/requests/compute/add_secondary_storage.rb
+- lib/fog/cloudstack/requests/compute/add_srx_firewall.rb
+- lib/fog/cloudstack/requests/compute/add_stratosphere_ssp.rb
+- lib/fog/cloudstack/requests/compute/add_swift.rb
+- lib/fog/cloudstack/requests/compute/add_traffic_monitor.rb
+- lib/fog/cloudstack/requests/compute/add_traffic_type.rb
+- lib/fog/cloudstack/requests/compute/add_ucs_manager.rb
+- lib/fog/cloudstack/requests/compute/add_vmware_dc.rb
+- lib/fog/cloudstack/requests/compute/add_vpn_user.rb
+- lib/fog/cloudstack/requests/compute/archive_alerts.rb
+- lib/fog/cloudstack/requests/compute/archive_events.rb
+- lib/fog/cloudstack/requests/compute/assign_cert_to_load_balancer.rb
+- lib/fog/cloudstack/requests/compute/assign_to_global_load_balancer_rule.rb
- lib/fog/cloudstack/requests/compute/assign_to_load_balancer_rule.rb
- lib/fog/cloudstack/requests/compute/assign_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/associate_ip_address.rb
+- lib/fog/cloudstack/requests/compute/associate_lun.rb
+- lib/fog/cloudstack/requests/compute/associate_ucs_profile_to_blade.rb
+- lib/fog/cloudstack/requests/compute/attach_iso.rb
- lib/fog/cloudstack/requests/compute/attach_volume.rb
- lib/fog/cloudstack/requests/compute/authorize_security_group_egress.rb
- lib/fog/cloudstack/requests/compute/authorize_security_group_ingress.rb
+- lib/fog/cloudstack/requests/compute/cancel_host_maintenance.rb
+- lib/fog/cloudstack/requests/compute/cancel_storage_maintenance.rb
+- lib/fog/cloudstack/requests/compute/change_service_for_router.rb
+- lib/fog/cloudstack/requests/compute/change_service_for_system_vm.rb
- lib/fog/cloudstack/requests/compute/change_service_for_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/clean_vmreservations.rb
+- lib/fog/cloudstack/requests/compute/configure_f5_load_balancer.rb
+- lib/fog/cloudstack/requests/compute/configure_internal_load_balancer_element.rb
+- lib/fog/cloudstack/requests/compute/configure_netscaler_load_balancer.rb
+- lib/fog/cloudstack/requests/compute/configure_ovs_element.rb
+- lib/fog/cloudstack/requests/compute/configure_palo_alto_firewall.rb
+- lib/fog/cloudstack/requests/compute/configure_srx_firewall.rb
+- lib/fog/cloudstack/requests/compute/configure_virtual_router_element.rb
+- lib/fog/cloudstack/requests/compute/copy_iso.rb
+- lib/fog/cloudstack/requests/compute/copy_template.rb
- lib/fog/cloudstack/requests/compute/create_account.rb
+- lib/fog/cloudstack/requests/compute/create_affinity_group.rb
+- lib/fog/cloudstack/requests/compute/create_auto_scale_policy.rb
+- lib/fog/cloudstack/requests/compute/create_auto_scale_vm_group.rb
+- lib/fog/cloudstack/requests/compute/create_auto_scale_vm_profile.rb
+- lib/fog/cloudstack/requests/compute/create_condition.rb
+- lib/fog/cloudstack/requests/compute/create_counter.rb
- lib/fog/cloudstack/requests/compute/create_disk_offering.rb
- lib/fog/cloudstack/requests/compute/create_domain.rb
+- lib/fog/cloudstack/requests/compute/create_egress_firewall_rule.rb
+- lib/fog/cloudstack/requests/compute/create_firewall_rule.rb
+- lib/fog/cloudstack/requests/compute/create_global_load_balancer_rule.rb
+- lib/fog/cloudstack/requests/compute/create_instance_group.rb
+- lib/fog/cloudstack/requests/compute/create_internal_load_balancer_element.rb
+- lib/fog/cloudstack/requests/compute/create_ip_forwarding_rule.rb
+- lib/fog/cloudstack/requests/compute/create_lb_health_check_policy.rb
+- lib/fog/cloudstack/requests/compute/create_lb_stickiness_policy.rb
+- lib/fog/cloudstack/requests/compute/create_load_balancer.rb
- lib/fog/cloudstack/requests/compute/create_load_balancer_rule.rb
+- lib/fog/cloudstack/requests/compute/create_lun_on_filer.rb
- lib/fog/cloudstack/requests/compute/create_network.rb
+- lib/fog/cloudstack/requests/compute/create_network_acl.rb
+- lib/fog/cloudstack/requests/compute/create_network_acl_list.rb
+- lib/fog/cloudstack/requests/compute/create_network_offering.rb
+- lib/fog/cloudstack/requests/compute/create_physical_network.rb
+- lib/fog/cloudstack/requests/compute/create_pod.rb
+- lib/fog/cloudstack/requests/compute/create_pool.rb
- lib/fog/cloudstack/requests/compute/create_port_forwarding_rule.rb
+- lib/fog/cloudstack/requests/compute/create_portable_ip_range.rb
+- lib/fog/cloudstack/requests/compute/create_private_gateway.rb
+- lib/fog/cloudstack/requests/compute/create_project.rb
+- lib/fog/cloudstack/requests/compute/create_remote_access_vpn.rb
+- lib/fog/cloudstack/requests/compute/create_secondary_staging_store.rb
- lib/fog/cloudstack/requests/compute/create_security_group.rb
+- lib/fog/cloudstack/requests/compute/create_service_instance.rb
+- lib/fog/cloudstack/requests/compute/create_service_offering.rb
- lib/fog/cloudstack/requests/compute/create_snapshot.rb
- lib/fog/cloudstack/requests/compute/create_snapshot_policy.rb
- lib/fog/cloudstack/requests/compute/create_ssh_key_pair.rb
+- lib/fog/cloudstack/requests/compute/create_static_route.rb
+- lib/fog/cloudstack/requests/compute/create_storage_network_ip_range.rb
+- lib/fog/cloudstack/requests/compute/create_storage_pool.rb
+- lib/fog/cloudstack/requests/compute/create_tags.rb
+- lib/fog/cloudstack/requests/compute/create_template.rb
- lib/fog/cloudstack/requests/compute/create_user.rb
+- lib/fog/cloudstack/requests/compute/create_virtual_router_element.rb
+- lib/fog/cloudstack/requests/compute/create_vlan_ip_range.rb
+- lib/fog/cloudstack/requests/compute/create_vm_snapshot.rb
- lib/fog/cloudstack/requests/compute/create_volume.rb
+- lib/fog/cloudstack/requests/compute/create_volume_on_filer.rb
+- lib/fog/cloudstack/requests/compute/create_vpc.rb
+- lib/fog/cloudstack/requests/compute/create_vpcoffering.rb
+- lib/fog/cloudstack/requests/compute/create_vpn_connection.rb
+- lib/fog/cloudstack/requests/compute/create_vpn_customer_gateway.rb
+- lib/fog/cloudstack/requests/compute/create_vpn_gateway.rb
- lib/fog/cloudstack/requests/compute/create_zone.rb
+- lib/fog/cloudstack/requests/compute/dedicate_cluster.rb
+- lib/fog/cloudstack/requests/compute/dedicate_guest_vlan_range.rb
+- lib/fog/cloudstack/requests/compute/dedicate_host.rb
+- lib/fog/cloudstack/requests/compute/dedicate_pod.rb
+- lib/fog/cloudstack/requests/compute/dedicate_public_ip_range.rb
+- lib/fog/cloudstack/requests/compute/dedicate_zone.rb
- lib/fog/cloudstack/requests/compute/delete_account.rb
+- lib/fog/cloudstack/requests/compute/delete_account_from_project.rb
+- lib/fog/cloudstack/requests/compute/delete_affinity_group.rb
+- lib/fog/cloudstack/requests/compute/delete_alerts.rb
+- lib/fog/cloudstack/requests/compute/delete_auto_scale_policy.rb
+- lib/fog/cloudstack/requests/compute/delete_auto_scale_vm_group.rb
+- lib/fog/cloudstack/requests/compute/delete_auto_scale_vm_profile.rb
+- lib/fog/cloudstack/requests/compute/delete_big_switch_vns_device.rb
+- lib/fog/cloudstack/requests/compute/delete_cisco_asa1000v_resource.rb
+- lib/fog/cloudstack/requests/compute/delete_cisco_nexus_vsm.rb
+- lib/fog/cloudstack/requests/compute/delete_cisco_vnmc_resource.rb
+- lib/fog/cloudstack/requests/compute/delete_cluster.rb
+- lib/fog/cloudstack/requests/compute/delete_condition.rb
+- lib/fog/cloudstack/requests/compute/delete_counter.rb
- lib/fog/cloudstack/requests/compute/delete_disk_offering.rb
- lib/fog/cloudstack/requests/compute/delete_domain.rb
+- lib/fog/cloudstack/requests/compute/delete_egress_firewall_rule.rb
+- lib/fog/cloudstack/requests/compute/delete_events.rb
+- lib/fog/cloudstack/requests/compute/delete_external_firewall.rb
+- lib/fog/cloudstack/requests/compute/delete_external_load_balancer.rb
+- lib/fog/cloudstack/requests/compute/delete_f5_load_balancer.rb
+- lib/fog/cloudstack/requests/compute/delete_firewall_rule.rb
+- lib/fog/cloudstack/requests/compute/delete_global_load_balancer_rule.rb
+- lib/fog/cloudstack/requests/compute/delete_host.rb
+- lib/fog/cloudstack/requests/compute/delete_image_store.rb
+- lib/fog/cloudstack/requests/compute/delete_instance_group.rb
+- lib/fog/cloudstack/requests/compute/delete_ip_forwarding_rule.rb
+- lib/fog/cloudstack/requests/compute/delete_iso.rb
+- lib/fog/cloudstack/requests/compute/delete_lb_health_check_policy.rb
+- lib/fog/cloudstack/requests/compute/delete_lb_stickiness_policy.rb
+- lib/fog/cloudstack/requests/compute/delete_ldap_configuration.rb
+- lib/fog/cloudstack/requests/compute/delete_load_balancer.rb
- lib/fog/cloudstack/requests/compute/delete_load_balancer_rule.rb
+- lib/fog/cloudstack/requests/compute/delete_netscaler_load_balancer.rb
+- lib/fog/cloudstack/requests/compute/delete_network.rb
+- lib/fog/cloudstack/requests/compute/delete_network_acl.rb
+- lib/fog/cloudstack/requests/compute/delete_network_acl_list.rb
+- lib/fog/cloudstack/requests/compute/delete_network_device.rb
+- lib/fog/cloudstack/requests/compute/delete_network_offering.rb
+- lib/fog/cloudstack/requests/compute/delete_network_service_provider.rb
+- lib/fog/cloudstack/requests/compute/delete_nicira_nvp_device.rb
+- lib/fog/cloudstack/requests/compute/delete_open_daylight_controller.rb
+- lib/fog/cloudstack/requests/compute/delete_palo_alto_firewall.rb
+- lib/fog/cloudstack/requests/compute/delete_physical_network.rb
+- lib/fog/cloudstack/requests/compute/delete_pod.rb
+- lib/fog/cloudstack/requests/compute/delete_pool.rb
- lib/fog/cloudstack/requests/compute/delete_port_forwarding_rule.rb
+- lib/fog/cloudstack/requests/compute/delete_portable_ip_range.rb
+- lib/fog/cloudstack/requests/compute/delete_private_gateway.rb
+- lib/fog/cloudstack/requests/compute/delete_project.rb
+- lib/fog/cloudstack/requests/compute/delete_project_invitation.rb
+- lib/fog/cloudstack/requests/compute/delete_remote_access_vpn.rb
+- lib/fog/cloudstack/requests/compute/delete_secondary_staging_store.rb
- lib/fog/cloudstack/requests/compute/delete_security_group.rb
+- lib/fog/cloudstack/requests/compute/delete_service_offering.rb
- lib/fog/cloudstack/requests/compute/delete_snapshot.rb
- lib/fog/cloudstack/requests/compute/delete_snapshot_policies.rb
+- lib/fog/cloudstack/requests/compute/delete_srx_firewall.rb
- lib/fog/cloudstack/requests/compute/delete_ssh_key_pair.rb
+- lib/fog/cloudstack/requests/compute/delete_ssl_cert.rb
+- lib/fog/cloudstack/requests/compute/delete_static_route.rb
+- lib/fog/cloudstack/requests/compute/delete_storage_network_ip_range.rb
+- lib/fog/cloudstack/requests/compute/delete_storage_pool.rb
+- lib/fog/cloudstack/requests/compute/delete_tags.rb
- lib/fog/cloudstack/requests/compute/delete_template.rb
+- lib/fog/cloudstack/requests/compute/delete_traffic_monitor.rb
+- lib/fog/cloudstack/requests/compute/delete_traffic_type.rb
+- lib/fog/cloudstack/requests/compute/delete_ucs_manager.rb
- lib/fog/cloudstack/requests/compute/delete_user.rb
+- lib/fog/cloudstack/requests/compute/delete_vlan_ip_range.rb
+- lib/fog/cloudstack/requests/compute/delete_vm_snapshot.rb
- lib/fog/cloudstack/requests/compute/delete_volume.rb
+- lib/fog/cloudstack/requests/compute/delete_vpc.rb
+- lib/fog/cloudstack/requests/compute/delete_vpcoffering.rb
+- lib/fog/cloudstack/requests/compute/delete_vpn_connection.rb
+- lib/fog/cloudstack/requests/compute/delete_vpn_customer_gateway.rb
+- lib/fog/cloudstack/requests/compute/delete_vpn_gateway.rb
+- lib/fog/cloudstack/requests/compute/delete_zone.rb
- lib/fog/cloudstack/requests/compute/deploy_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/destroy_lun_on_filer.rb
+- lib/fog/cloudstack/requests/compute/destroy_router.rb
+- lib/fog/cloudstack/requests/compute/destroy_system_vm.rb
- lib/fog/cloudstack/requests/compute/destroy_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/destroy_volume_on_filer.rb
+- lib/fog/cloudstack/requests/compute/detach_iso.rb
- lib/fog/cloudstack/requests/compute/detach_volume.rb
- lib/fog/cloudstack/requests/compute/disable_account.rb
+- lib/fog/cloudstack/requests/compute/disable_auto_scale_vm_group.rb
+- lib/fog/cloudstack/requests/compute/disable_cisco_nexus_vsm.rb
+- lib/fog/cloudstack/requests/compute/disable_static_nat.rb
- lib/fog/cloudstack/requests/compute/disable_user.rb
+- lib/fog/cloudstack/requests/compute/disassociate_ip_address.rb
+- lib/fog/cloudstack/requests/compute/disassociate_ucs_profile_from_blade.rb
+- lib/fog/cloudstack/requests/compute/dissociate_lun.rb
- lib/fog/cloudstack/requests/compute/enable_account.rb
+- lib/fog/cloudstack/requests/compute/enable_auto_scale_vm_group.rb
+- lib/fog/cloudstack/requests/compute/enable_cisco_nexus_vsm.rb
+- lib/fog/cloudstack/requests/compute/enable_static_nat.rb
+- lib/fog/cloudstack/requests/compute/enable_storage_maintenance.rb
- lib/fog/cloudstack/requests/compute/enable_user.rb
+- lib/fog/cloudstack/requests/compute/expunge_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/extract_iso.rb
+- lib/fog/cloudstack/requests/compute/extract_template.rb
+- lib/fog/cloudstack/requests/compute/extract_volume.rb
+- lib/fog/cloudstack/requests/compute/find_hosts_for_migration.rb
+- lib/fog/cloudstack/requests/compute/find_storage_pools_for_migration.rb
+- lib/fog/cloudstack/requests/compute/generate_alert.rb
- lib/fog/cloudstack/requests/compute/generate_usage_records.rb
+- lib/fog/cloudstack/requests/compute/get_api_limit.rb
+- lib/fog/cloudstack/requests/compute/get_cloud_identifier.rb
+- lib/fog/cloudstack/requests/compute/get_user.rb
+- lib/fog/cloudstack/requests/compute/get_virtual_machine_user_data.rb
- lib/fog/cloudstack/requests/compute/get_vm_password.rb
+- lib/fog/cloudstack/requests/compute/import_ldap_users.rb
+- lib/fog/cloudstack/requests/compute/instantiate_ucs_template_and_assocaciate_to_blade.rb
+- lib/fog/cloudstack/requests/compute/ldap_config.rb
+- lib/fog/cloudstack/requests/compute/ldap_create_account.rb
+- lib/fog/cloudstack/requests/compute/ldap_remove.rb
- lib/fog/cloudstack/requests/compute/list_accounts.rb
+- lib/fog/cloudstack/requests/compute/list_affinity_group_types.rb
+- lib/fog/cloudstack/requests/compute/list_affinity_groups.rb
- lib/fog/cloudstack/requests/compute/list_alerts.rb
+- lib/fog/cloudstack/requests/compute/list_apis.rb
- lib/fog/cloudstack/requests/compute/list_async_jobs.rb
+- lib/fog/cloudstack/requests/compute/list_auto_scale_policies.rb
+- lib/fog/cloudstack/requests/compute/list_auto_scale_vm_groups.rb
+- lib/fog/cloudstack/requests/compute/list_auto_scale_vm_profiles.rb
+- lib/fog/cloudstack/requests/compute/list_baremetal_dhcp.rb
+- lib/fog/cloudstack/requests/compute/list_baremetal_pxe_servers.rb
+- lib/fog/cloudstack/requests/compute/list_big_switch_vns_devices.rb
- lib/fog/cloudstack/requests/compute/list_capabilities.rb
- lib/fog/cloudstack/requests/compute/list_capacity.rb
+- lib/fog/cloudstack/requests/compute/list_cisco_asa1000v_resources.rb
+- lib/fog/cloudstack/requests/compute/list_cisco_nexus_vsms.rb
+- lib/fog/cloudstack/requests/compute/list_cisco_vnmc_resources.rb
- lib/fog/cloudstack/requests/compute/list_clusters.rb
+- lib/fog/cloudstack/requests/compute/list_conditions.rb
- lib/fog/cloudstack/requests/compute/list_configurations.rb
+- lib/fog/cloudstack/requests/compute/list_counters.rb
+- lib/fog/cloudstack/requests/compute/list_dedicated_clusters.rb
+- lib/fog/cloudstack/requests/compute/list_dedicated_guest_vlan_ranges.rb
+- lib/fog/cloudstack/requests/compute/list_dedicated_hosts.rb
+- lib/fog/cloudstack/requests/compute/list_dedicated_pods.rb
+- lib/fog/cloudstack/requests/compute/list_dedicated_zones.rb
+- lib/fog/cloudstack/requests/compute/list_deployment_planners.rb
- lib/fog/cloudstack/requests/compute/list_disk_offerings.rb
- lib/fog/cloudstack/requests/compute/list_domain_children.rb
- lib/fog/cloudstack/requests/compute/list_domains.rb
+- lib/fog/cloudstack/requests/compute/list_egress_firewall_rules.rb
+- lib/fog/cloudstack/requests/compute/list_event_types.rb
- lib/fog/cloudstack/requests/compute/list_events.rb
- lib/fog/cloudstack/requests/compute/list_external_firewalls.rb
- lib/fog/cloudstack/requests/compute/list_external_load_balancers.rb
+- lib/fog/cloudstack/requests/compute/list_f5_load_balancer_networks.rb
+- lib/fog/cloudstack/requests/compute/list_f5_load_balancers.rb
- lib/fog/cloudstack/requests/compute/list_firewall_rules.rb
+- lib/fog/cloudstack/requests/compute/list_global_load_balancer_rules.rb
+- lib/fog/cloudstack/requests/compute/list_guest_os_mapping.rb
- lib/fog/cloudstack/requests/compute/list_hosts.rb
+- lib/fog/cloudstack/requests/compute/list_hypervisor_capabilities.rb
- lib/fog/cloudstack/requests/compute/list_hypervisors.rb
+- lib/fog/cloudstack/requests/compute/list_image_stores.rb
- lib/fog/cloudstack/requests/compute/list_instance_groups.rb
+- lib/fog/cloudstack/requests/compute/list_internal_load_balancer_elements.rb
+- lib/fog/cloudstack/requests/compute/list_internal_load_balancer_vms.rb
+- lib/fog/cloudstack/requests/compute/list_ip_forwarding_rules.rb
+- lib/fog/cloudstack/requests/compute/list_iso_permissions.rb
- lib/fog/cloudstack/requests/compute/list_isos.rb
+- lib/fog/cloudstack/requests/compute/list_lb_health_check_policies.rb
+- lib/fog/cloudstack/requests/compute/list_lb_stickiness_policies.rb
+- lib/fog/cloudstack/requests/compute/list_ldap_configurations.rb
+- lib/fog/cloudstack/requests/compute/list_ldap_users.rb
- lib/fog/cloudstack/requests/compute/list_load_balancer_rule_instances.rb
- lib/fog/cloudstack/requests/compute/list_load_balancer_rules.rb
+- lib/fog/cloudstack/requests/compute/list_load_balancers.rb
+- lib/fog/cloudstack/requests/compute/list_luns_on_filer.rb
+- lib/fog/cloudstack/requests/compute/list_netscaler_load_balancer_networks.rb
+- lib/fog/cloudstack/requests/compute/list_netscaler_load_balancers.rb
+- lib/fog/cloudstack/requests/compute/list_network_acl_lists.rb
+- lib/fog/cloudstack/requests/compute/list_network_acls.rb
+- lib/fog/cloudstack/requests/compute/list_network_device.rb
+- lib/fog/cloudstack/requests/compute/list_network_isolation_methods.rb
- lib/fog/cloudstack/requests/compute/list_network_offerings.rb
+- lib/fog/cloudstack/requests/compute/list_network_service_providers.rb
- lib/fog/cloudstack/requests/compute/list_networks.rb
+- lib/fog/cloudstack/requests/compute/list_nicira_nvp_device_networks.rb
+- lib/fog/cloudstack/requests/compute/list_nicira_nvp_devices.rb
+- lib/fog/cloudstack/requests/compute/list_nics.rb
+- lib/fog/cloudstack/requests/compute/list_open_daylight_controllers.rb
- lib/fog/cloudstack/requests/compute/list_os_categories.rb
- lib/fog/cloudstack/requests/compute/list_os_types.rb
+- lib/fog/cloudstack/requests/compute/list_ovs_elements.rb
+- lib/fog/cloudstack/requests/compute/list_palo_alto_firewall_networks.rb
+- lib/fog/cloudstack/requests/compute/list_palo_alto_firewalls.rb
+- lib/fog/cloudstack/requests/compute/list_physical_networks.rb
- lib/fog/cloudstack/requests/compute/list_pods.rb
+- lib/fog/cloudstack/requests/compute/list_pools.rb
- lib/fog/cloudstack/requests/compute/list_port_forwarding_rules.rb
+- lib/fog/cloudstack/requests/compute/list_portable_ip_ranges.rb
+- lib/fog/cloudstack/requests/compute/list_private_gateways.rb
+- lib/fog/cloudstack/requests/compute/list_project_accounts.rb
+- lib/fog/cloudstack/requests/compute/list_project_invitations.rb
+- lib/fog/cloudstack/requests/compute/list_projects.rb
- lib/fog/cloudstack/requests/compute/list_public_ip_addresses.rb
+- lib/fog/cloudstack/requests/compute/list_regions.rb
+- lib/fog/cloudstack/requests/compute/list_remote_access_vpns.rb
+- lib/fog/cloudstack/requests/compute/list_resource_details.rb
- lib/fog/cloudstack/requests/compute/list_resource_limits.rb
+- lib/fog/cloudstack/requests/compute/list_routers.rb
+- lib/fog/cloudstack/requests/compute/list_s3s.rb
+- lib/fog/cloudstack/requests/compute/list_secondary_staging_stores.rb
- lib/fog/cloudstack/requests/compute/list_security_groups.rb
- lib/fog/cloudstack/requests/compute/list_service_offerings.rb
- lib/fog/cloudstack/requests/compute/list_snapshot_policies.rb
- lib/fog/cloudstack/requests/compute/list_snapshots.rb
+- lib/fog/cloudstack/requests/compute/list_srx_firewall_networks.rb
+- lib/fog/cloudstack/requests/compute/list_srx_firewalls.rb
- lib/fog/cloudstack/requests/compute/list_ssh_key_pairs.rb
+- lib/fog/cloudstack/requests/compute/list_ssl_certs.rb
+- lib/fog/cloudstack/requests/compute/list_static_routes.rb
+- lib/fog/cloudstack/requests/compute/list_storage_network_ip_range.rb
- lib/fog/cloudstack/requests/compute/list_storage_pools.rb
+- lib/fog/cloudstack/requests/compute/list_storage_providers.rb
+- lib/fog/cloudstack/requests/compute/list_supported_network_services.rb
+- lib/fog/cloudstack/requests/compute/list_swifts.rb
+- lib/fog/cloudstack/requests/compute/list_system_vms.rb
+- lib/fog/cloudstack/requests/compute/list_tags.rb
+- lib/fog/cloudstack/requests/compute/list_template_permissions.rb
- lib/fog/cloudstack/requests/compute/list_templates.rb
+- lib/fog/cloudstack/requests/compute/list_traffic_monitors.rb
+- lib/fog/cloudstack/requests/compute/list_traffic_type_implementors.rb
+- lib/fog/cloudstack/requests/compute/list_traffic_types.rb
+- lib/fog/cloudstack/requests/compute/list_ucs_blades.rb
+- lib/fog/cloudstack/requests/compute/list_ucs_managers.rb
+- lib/fog/cloudstack/requests/compute/list_ucs_profiles.rb
+- lib/fog/cloudstack/requests/compute/list_ucs_templates.rb
- lib/fog/cloudstack/requests/compute/list_usage_records.rb
+- lib/fog/cloudstack/requests/compute/list_usage_types.rb
- lib/fog/cloudstack/requests/compute/list_users.rb
- lib/fog/cloudstack/requests/compute/list_virtual_machines.rb
+- lib/fog/cloudstack/requests/compute/list_virtual_router_elements.rb
+- lib/fog/cloudstack/requests/compute/list_vlan_ip_ranges.rb
+- lib/fog/cloudstack/requests/compute/list_vm_snapshot.rb
+- lib/fog/cloudstack/requests/compute/list_vmware_dcs.rb
- lib/fog/cloudstack/requests/compute/list_volumes.rb
+- lib/fog/cloudstack/requests/compute/list_volumes_on_filer.rb
+- lib/fog/cloudstack/requests/compute/list_vpc_offerings.rb
+- lib/fog/cloudstack/requests/compute/list_vpcs.rb
+- lib/fog/cloudstack/requests/compute/list_vpn_connections.rb
+- lib/fog/cloudstack/requests/compute/list_vpn_customer_gateways.rb
+- lib/fog/cloudstack/requests/compute/list_vpn_gateways.rb
+- lib/fog/cloudstack/requests/compute/list_vpn_users.rb
- lib/fog/cloudstack/requests/compute/list_zones.rb
+- lib/fog/cloudstack/requests/compute/lock_account.rb
+- lib/fog/cloudstack/requests/compute/lock_user.rb
+- lib/fog/cloudstack/requests/compute/mark_default_zone_for_account.rb
+- lib/fog/cloudstack/requests/compute/migrate_system_vm.rb
- lib/fog/cloudstack/requests/compute/migrate_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/migrate_virtual_machine_with_volume.rb
+- lib/fog/cloudstack/requests/compute/migrate_volume.rb
+- lib/fog/cloudstack/requests/compute/modify_pool.rb
+- lib/fog/cloudstack/requests/compute/prepare_host_for_maintenance.rb
+- lib/fog/cloudstack/requests/compute/prepare_template.rb
- lib/fog/cloudstack/requests/compute/query_async_job_result.rb
+- lib/fog/cloudstack/requests/compute/reboot_router.rb
+- lib/fog/cloudstack/requests/compute/reboot_system_vm.rb
- lib/fog/cloudstack/requests/compute/reboot_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/reconnect_host.rb
- lib/fog/cloudstack/requests/compute/recover_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/refresh_ucs_blades.rb
+- lib/fog/cloudstack/requests/compute/register_iso.rb
- lib/fog/cloudstack/requests/compute/register_ssh_key_pair.rb
- lib/fog/cloudstack/requests/compute/register_template.rb
- lib/fog/cloudstack/requests/compute/register_user_keys.rb
+- lib/fog/cloudstack/requests/compute/release_dedicated_cluster.rb
+- lib/fog/cloudstack/requests/compute/release_dedicated_guest_vlan_range.rb
+- lib/fog/cloudstack/requests/compute/release_dedicated_host.rb
+- lib/fog/cloudstack/requests/compute/release_dedicated_pod.rb
+- lib/fog/cloudstack/requests/compute/release_dedicated_zone.rb
+- lib/fog/cloudstack/requests/compute/release_host_reservation.rb
+- lib/fog/cloudstack/requests/compute/release_public_ip_range.rb
+- lib/fog/cloudstack/requests/compute/remove_cert_from_load_balancer.rb
+- lib/fog/cloudstack/requests/compute/remove_from_global_load_balancer_rule.rb
- lib/fog/cloudstack/requests/compute/remove_from_load_balancer_rule.rb
+- lib/fog/cloudstack/requests/compute/remove_guest_os.rb
+- lib/fog/cloudstack/requests/compute/remove_guest_os_mapping.rb
+- lib/fog/cloudstack/requests/compute/remove_ip_from_nic.rb
+- lib/fog/cloudstack/requests/compute/remove_nic_from_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/remove_region.rb
+- lib/fog/cloudstack/requests/compute/remove_resource_detail.rb
+- lib/fog/cloudstack/requests/compute/remove_vmware_dc.rb
+- lib/fog/cloudstack/requests/compute/remove_vpn_user.rb
+- lib/fog/cloudstack/requests/compute/replace_network_acl_list.rb
+- lib/fog/cloudstack/requests/compute/reset_api_limit.rb
- lib/fog/cloudstack/requests/compute/reset_password_for_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/reset_ssh_key_for_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/reset_vpn_connection.rb
+- lib/fog/cloudstack/requests/compute/resize_volume.rb
+- lib/fog/cloudstack/requests/compute/restart_network.rb
+- lib/fog/cloudstack/requests/compute/restart_vpc.rb
+- lib/fog/cloudstack/requests/compute/restore_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/revert_snapshot.rb
+- lib/fog/cloudstack/requests/compute/revert_to_vm_snapshot.rb
- lib/fog/cloudstack/requests/compute/revoke_security_group_egress.rb
- lib/fog/cloudstack/requests/compute/revoke_security_group_ingress.rb
+- lib/fog/cloudstack/requests/compute/scale_system_vm.rb
+- lib/fog/cloudstack/requests/compute/scale_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/start_internal_load_balancer_vm.rb
+- lib/fog/cloudstack/requests/compute/start_router.rb
+- lib/fog/cloudstack/requests/compute/start_system_vm.rb
- lib/fog/cloudstack/requests/compute/start_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/stop_internal_load_balancer_vm.rb
+- lib/fog/cloudstack/requests/compute/stop_router.rb
+- lib/fog/cloudstack/requests/compute/stop_system_vm.rb
- lib/fog/cloudstack/requests/compute/stop_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/suspend_project.rb
- lib/fog/cloudstack/requests/compute/update_account.rb
+- lib/fog/cloudstack/requests/compute/update_auto_scale_policy.rb
+- lib/fog/cloudstack/requests/compute/update_auto_scale_vm_group.rb
+- lib/fog/cloudstack/requests/compute/update_auto_scale_vm_profile.rb
+- lib/fog/cloudstack/requests/compute/update_cloud_to_use_object_store.rb
+- lib/fog/cloudstack/requests/compute/update_cluster.rb
+- lib/fog/cloudstack/requests/compute/update_configuration.rb
+- lib/fog/cloudstack/requests/compute/update_default_nic_for_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/update_disk_offering.rb
- lib/fog/cloudstack/requests/compute/update_domain.rb
+- lib/fog/cloudstack/requests/compute/update_egress_firewall_rule.rb
+- lib/fog/cloudstack/requests/compute/update_firewall_rule.rb
+- lib/fog/cloudstack/requests/compute/update_global_load_balancer_rule.rb
+- lib/fog/cloudstack/requests/compute/update_guest_os.rb
+- lib/fog/cloudstack/requests/compute/update_guest_os_mapping.rb
+- lib/fog/cloudstack/requests/compute/update_host.rb
+- lib/fog/cloudstack/requests/compute/update_host_password.rb
+- lib/fog/cloudstack/requests/compute/update_hypervisor_capabilities.rb
+- lib/fog/cloudstack/requests/compute/update_instance_group.rb
+- lib/fog/cloudstack/requests/compute/update_ip_address.rb
+- lib/fog/cloudstack/requests/compute/update_iso.rb
+- lib/fog/cloudstack/requests/compute/update_iso_permissions.rb
+- lib/fog/cloudstack/requests/compute/update_lb_health_check_policy.rb
+- lib/fog/cloudstack/requests/compute/update_lb_stickiness_policy.rb
+- lib/fog/cloudstack/requests/compute/update_load_balancer.rb
+- lib/fog/cloudstack/requests/compute/update_load_balancer_rule.rb
+- lib/fog/cloudstack/requests/compute/update_network.rb
+- lib/fog/cloudstack/requests/compute/update_network_acl_item.rb
+- lib/fog/cloudstack/requests/compute/update_network_acl_list.rb
+- lib/fog/cloudstack/requests/compute/update_network_offering.rb
+- lib/fog/cloudstack/requests/compute/update_network_service_provider.rb
+- lib/fog/cloudstack/requests/compute/update_physical_network.rb
+- lib/fog/cloudstack/requests/compute/update_pod.rb
+- lib/fog/cloudstack/requests/compute/update_port_forwarding_rule.rb
+- lib/fog/cloudstack/requests/compute/update_project.rb
+- lib/fog/cloudstack/requests/compute/update_project_invitation.rb
+- lib/fog/cloudstack/requests/compute/update_region.rb
+- lib/fog/cloudstack/requests/compute/update_remote_access_vpn.rb
- lib/fog/cloudstack/requests/compute/update_resource_count.rb
+- lib/fog/cloudstack/requests/compute/update_resource_limit.rb
+- lib/fog/cloudstack/requests/compute/update_service_offering.rb
+- lib/fog/cloudstack/requests/compute/update_storage_network_ip_range.rb
+- lib/fog/cloudstack/requests/compute/update_storage_pool.rb
+- lib/fog/cloudstack/requests/compute/update_template.rb
+- lib/fog/cloudstack/requests/compute/update_template_permissions.rb
+- lib/fog/cloudstack/requests/compute/update_traffic_type.rb
- lib/fog/cloudstack/requests/compute/update_user.rb
- lib/fog/cloudstack/requests/compute/update_virtual_machine.rb
+- lib/fog/cloudstack/requests/compute/update_vm_affinity_group.rb
+- lib/fog/cloudstack/requests/compute/update_volume.rb
+- lib/fog/cloudstack/requests/compute/update_vpc.rb
+- lib/fog/cloudstack/requests/compute/update_vpcoffering.rb
+- lib/fog/cloudstack/requests/compute/update_vpn_connection.rb
+- lib/fog/cloudstack/requests/compute/update_vpn_customer_gateway.rb
+- lib/fog/cloudstack/requests/compute/update_vpn_gateway.rb
+- lib/fog/cloudstack/requests/compute/update_zone.rb
+- lib/fog/cloudstack/requests/compute/upgrade_router_template.rb
+- lib/fog/cloudstack/requests/compute/upload_custom_certificate.rb
+- lib/fog/cloudstack/requests/compute/upload_ssl_cert.rb
+- lib/fog/cloudstack/requests/compute/upload_volume.rb
- lib/fog/core/deprecated/connection.rb
-- lib/fog/core/deprecated_connection_accessors.rb
- lib/fog/core/parser.rb
- lib/fog/digitalocean.rb
- lib/fog/digitalocean/CHANGELOG.md
@@ -2038,6 +2542,8 @@ files:
- lib/fog/google/Rakefile
- lib/fog/google/compute.rb
- lib/fog/google/core.rb
+- lib/fog/google/dns.rb
+- lib/fog/google/examples/backend_services.rb
- lib/fog/google/examples/bootstrap.rb
- lib/fog/google/examples/create.rb
- lib/fog/google/examples/eric-fail.rb
@@ -2045,14 +2551,27 @@ files:
- lib/fog/google/examples/get_list_snapshots.rb
- lib/fog/google/examples/image_all.rb
- lib/fog/google/examples/image_create.rb
+- lib/fog/google/examples/l7_load_balance.rb
- lib/fog/google/examples/launch_micro_instance.rb
- lib/fog/google/examples/load-balance.rb
- lib/fog/google/examples/metadata.rb
+- lib/fog/google/examples/monitoring/metric_descriptors.rb
+- lib/fog/google/examples/monitoring/timeseries_collection.rb
+- lib/fog/google/examples/monitoring/timeseries_descriptors.rb
- lib/fog/google/examples/network.rb
- lib/fog/google/examples/precreated_client.rb
+- lib/fog/google/examples/sql/flags.rb
+- lib/fog/google/examples/sql/instances.rb
+- lib/fog/google/examples/sql/operations.rb
+- lib/fog/google/examples/sql/ssl_certs.rb
+- lib/fog/google/examples/sql/tiers.rb
- lib/fog/google/models/compute/address.rb
- lib/fog/google/models/compute/addresses.rb
+- lib/fog/google/models/compute/backend_service.rb
+- lib/fog/google/models/compute/backend_services.rb
- lib/fog/google/models/compute/disk.rb
+- lib/fog/google/models/compute/disk_type.rb
+- lib/fog/google/models/compute/disk_types.rb
- lib/fog/google/models/compute/disks.rb
- lib/fog/google/models/compute/firewall.rb
- lib/fog/google/models/compute/firewalls.rb
@@ -2060,6 +2579,8 @@ files:
- lib/fog/google/models/compute/flavors.rb
- lib/fog/google/models/compute/forwarding_rule.rb
- lib/fog/google/models/compute/forwarding_rules.rb
+- lib/fog/google/models/compute/global_forwarding_rule.rb
+- lib/fog/google/models/compute/global_forwarding_rules.rb
- lib/fog/google/models/compute/http_health_check.rb
- lib/fog/google/models/compute/http_health_checks.rb
- lib/fog/google/models/compute/image.rb
@@ -2072,20 +2593,47 @@ files:
- lib/fog/google/models/compute/projects.rb
- lib/fog/google/models/compute/region.rb
- lib/fog/google/models/compute/regions.rb
+- lib/fog/google/models/compute/resource_view.rb
+- lib/fog/google/models/compute/resource_views.rb
- lib/fog/google/models/compute/route.rb
- lib/fog/google/models/compute/routes.rb
- lib/fog/google/models/compute/server.rb
- lib/fog/google/models/compute/servers.rb
- lib/fog/google/models/compute/snapshot.rb
- lib/fog/google/models/compute/snapshots.rb
+- lib/fog/google/models/compute/target_http_proxies.rb
+- lib/fog/google/models/compute/target_http_proxy.rb
+- lib/fog/google/models/compute/target_instance.rb
+- lib/fog/google/models/compute/target_instances.rb
- lib/fog/google/models/compute/target_pool.rb
- lib/fog/google/models/compute/target_pools.rb
+- lib/fog/google/models/compute/url_map.rb
+- lib/fog/google/models/compute/url_maps.rb
- lib/fog/google/models/compute/zone.rb
- lib/fog/google/models/compute/zones.rb
+- lib/fog/google/models/monitoring/metric_descriptor.rb
+- lib/fog/google/models/monitoring/metric_descriptors.rb
+- lib/fog/google/models/monitoring/timeseries.rb
+- lib/fog/google/models/monitoring/timeseries_collection.rb
+- lib/fog/google/models/monitoring/timeseries_descriptor.rb
+- lib/fog/google/models/monitoring/timeseries_descriptors.rb
+- lib/fog/google/models/sql/backup_run.rb
+- lib/fog/google/models/sql/backup_runs.rb
+- lib/fog/google/models/sql/flag.rb
+- lib/fog/google/models/sql/flags.rb
+- lib/fog/google/models/sql/instance.rb
+- lib/fog/google/models/sql/instances.rb
+- lib/fog/google/models/sql/operation.rb
+- lib/fog/google/models/sql/operations.rb
+- lib/fog/google/models/sql/ssl_cert.rb
+- lib/fog/google/models/sql/ssl_certs.rb
+- lib/fog/google/models/sql/tier.rb
+- lib/fog/google/models/sql/tiers.rb
- lib/fog/google/models/storage/directories.rb
- lib/fog/google/models/storage/directory.rb
- lib/fog/google/models/storage/file.rb
- lib/fog/google/models/storage/files.rb
+- lib/fog/google/monitoring.rb
- lib/fog/google/parsers/storage/access_control_list.rb
- lib/fog/google/parsers/storage/copy_object.rb
- lib/fog/google/parsers/storage/get_bucket.rb
@@ -2094,28 +2642,47 @@ files:
- lib/fog/google/parsers/storage/get_bucket_versioning.rb
- lib/fog/google/parsers/storage/get_request_payment.rb
- lib/fog/google/parsers/storage/get_service.rb
+- lib/fog/google/requests/compute/add_backend_service_backends.rb
+- lib/fog/google/requests/compute/add_region_view_resources.rb
+- lib/fog/google/requests/compute/add_server_access_config.rb
- lib/fog/google/requests/compute/add_target_pool_health_checks.rb
- lib/fog/google/requests/compute/add_target_pool_instances.rb
+- lib/fog/google/requests/compute/add_url_map_host_rules.rb
+- lib/fog/google/requests/compute/add_url_map_path_matchers.rb
+- lib/fog/google/requests/compute/add_zone_view_resources.rb
- lib/fog/google/requests/compute/attach_disk.rb
- lib/fog/google/requests/compute/delete_address.rb
+- lib/fog/google/requests/compute/delete_backend_service.rb
- lib/fog/google/requests/compute/delete_disk.rb
- lib/fog/google/requests/compute/delete_firewall.rb
- lib/fog/google/requests/compute/delete_forwarding_rule.rb
+- lib/fog/google/requests/compute/delete_global_forwarding_rule.rb
- lib/fog/google/requests/compute/delete_global_operation.rb
- lib/fog/google/requests/compute/delete_http_health_check.rb
- lib/fog/google/requests/compute/delete_image.rb
- lib/fog/google/requests/compute/delete_network.rb
- lib/fog/google/requests/compute/delete_region_operation.rb
+- lib/fog/google/requests/compute/delete_region_view.rb
- lib/fog/google/requests/compute/delete_route.rb
- lib/fog/google/requests/compute/delete_server.rb
+- lib/fog/google/requests/compute/delete_server_access_config.rb
- lib/fog/google/requests/compute/delete_snapshot.rb
+- lib/fog/google/requests/compute/delete_target_http_proxy.rb
+- lib/fog/google/requests/compute/delete_target_instance.rb
- lib/fog/google/requests/compute/delete_target_pool.rb
+- lib/fog/google/requests/compute/delete_url_map.rb
- lib/fog/google/requests/compute/delete_zone_operation.rb
+- lib/fog/google/requests/compute/delete_zone_view.rb
- lib/fog/google/requests/compute/detach_disk.rb
- lib/fog/google/requests/compute/get_address.rb
+- lib/fog/google/requests/compute/get_backend_service.rb
+- lib/fog/google/requests/compute/get_backend_service_health.rb
+- lib/fog/google/requests/compute/get_backend_services.rb
- lib/fog/google/requests/compute/get_disk.rb
+- lib/fog/google/requests/compute/get_disk_type.rb
- lib/fog/google/requests/compute/get_firewall.rb
- lib/fog/google/requests/compute/get_forwarding_rule.rb
+- lib/fog/google/requests/compute/get_global_forwarding_rule.rb
- lib/fog/google/requests/compute/get_global_operation.rb
- lib/fog/google/requests/compute/get_http_health_check.rb
- lib/fog/google/requests/compute/get_image.rb
@@ -2124,50 +2691,112 @@ files:
- lib/fog/google/requests/compute/get_project.rb
- lib/fog/google/requests/compute/get_region.rb
- lib/fog/google/requests/compute/get_region_operation.rb
+- lib/fog/google/requests/compute/get_region_view.rb
- lib/fog/google/requests/compute/get_route.rb
- lib/fog/google/requests/compute/get_server.rb
+- lib/fog/google/requests/compute/get_server_serial_port_output.rb
- lib/fog/google/requests/compute/get_snapshot.rb
+- lib/fog/google/requests/compute/get_target_http_proxy.rb
+- lib/fog/google/requests/compute/get_target_instance.rb
- lib/fog/google/requests/compute/get_target_pool.rb
- lib/fog/google/requests/compute/get_target_pool_health.rb
+- lib/fog/google/requests/compute/get_url_map.rb
- lib/fog/google/requests/compute/get_zone.rb
- lib/fog/google/requests/compute/get_zone_operation.rb
+- lib/fog/google/requests/compute/get_zone_view.rb
- lib/fog/google/requests/compute/insert_address.rb
+- lib/fog/google/requests/compute/insert_backend_service.rb
- lib/fog/google/requests/compute/insert_disk.rb
- lib/fog/google/requests/compute/insert_firewall.rb
- lib/fog/google/requests/compute/insert_forwarding_rule.rb
+- lib/fog/google/requests/compute/insert_global_forwarding_rule.rb
- lib/fog/google/requests/compute/insert_http_health_check.rb
- lib/fog/google/requests/compute/insert_image.rb
- lib/fog/google/requests/compute/insert_network.rb
+- lib/fog/google/requests/compute/insert_region_view.rb
- lib/fog/google/requests/compute/insert_route.rb
- lib/fog/google/requests/compute/insert_server.rb
- lib/fog/google/requests/compute/insert_snapshot.rb
+- lib/fog/google/requests/compute/insert_target_http_proxy.rb
+- lib/fog/google/requests/compute/insert_target_instance.rb
- lib/fog/google/requests/compute/insert_target_pool.rb
+- lib/fog/google/requests/compute/insert_url_map.rb
+- lib/fog/google/requests/compute/insert_zone_view.rb
- lib/fog/google/requests/compute/list_addresses.rb
- lib/fog/google/requests/compute/list_aggregated_addresses.rb
+- lib/fog/google/requests/compute/list_aggregated_disk_types.rb
+- lib/fog/google/requests/compute/list_aggregated_disks.rb
- lib/fog/google/requests/compute/list_aggregated_machine_types.rb
+- lib/fog/google/requests/compute/list_aggregated_servers.rb
+- lib/fog/google/requests/compute/list_backend_services.rb
+- lib/fog/google/requests/compute/list_disk_types.rb
- lib/fog/google/requests/compute/list_disks.rb
- lib/fog/google/requests/compute/list_firewalls.rb
- lib/fog/google/requests/compute/list_forwarding_rules.rb
+- lib/fog/google/requests/compute/list_global_forwarding_rules.rb
- lib/fog/google/requests/compute/list_global_operations.rb
- lib/fog/google/requests/compute/list_http_health_checks.rb
- lib/fog/google/requests/compute/list_images.rb
- lib/fog/google/requests/compute/list_machine_types.rb
- lib/fog/google/requests/compute/list_networks.rb
- lib/fog/google/requests/compute/list_region_operations.rb
+- lib/fog/google/requests/compute/list_region_view_resources.rb
+- lib/fog/google/requests/compute/list_region_views.rb
- lib/fog/google/requests/compute/list_regions.rb
- lib/fog/google/requests/compute/list_routes.rb
- lib/fog/google/requests/compute/list_servers.rb
- lib/fog/google/requests/compute/list_snapshots.rb
+- lib/fog/google/requests/compute/list_target_http_proxies.rb
+- lib/fog/google/requests/compute/list_target_instances.rb
- lib/fog/google/requests/compute/list_target_pools.rb
+- lib/fog/google/requests/compute/list_url_maps.rb
- lib/fog/google/requests/compute/list_zone_operations.rb
+- lib/fog/google/requests/compute/list_zone_view_resources.rb
+- lib/fog/google/requests/compute/list_zone_views.rb
- lib/fog/google/requests/compute/list_zones.rb
- lib/fog/google/requests/compute/remove_target_pool_health_checks.rb
- lib/fog/google/requests/compute/remove_target_pool_instance.rb
- lib/fog/google/requests/compute/remove_target_pool_instances.rb
+- lib/fog/google/requests/compute/reset_server.rb
- lib/fog/google/requests/compute/set_common_instance_metadata.rb
- lib/fog/google/requests/compute/set_forwarding_rule_target.rb
+- lib/fog/google/requests/compute/set_global_forwarding_rule_target.rb
- lib/fog/google/requests/compute/set_metadata.rb
+- lib/fog/google/requests/compute/set_server_disk_auto_delete.rb
+- lib/fog/google/requests/compute/set_server_scheduling.rb
- lib/fog/google/requests/compute/set_tags.rb
+- lib/fog/google/requests/compute/set_target_http_proxy_url_map.rb
+- lib/fog/google/requests/compute/update_url_map.rb
+- lib/fog/google/requests/compute/validate_url_map.rb
+- lib/fog/google/requests/dns/create_managed_zone.rb
+- lib/fog/google/requests/dns/delete_managed_zone.rb
+- lib/fog/google/requests/dns/get_managed_zone.rb
+- lib/fog/google/requests/dns/list_managed_zones.rb
+- lib/fog/google/requests/monitoring/list_metric_descriptors.rb
+- lib/fog/google/requests/monitoring/list_timeseries.rb
+- lib/fog/google/requests/monitoring/list_timeseries_descriptors.rb
+- lib/fog/google/requests/sql/clone_instance.rb
+- lib/fog/google/requests/sql/delete_instance.rb
+- lib/fog/google/requests/sql/delete_ssl_cert.rb
+- lib/fog/google/requests/sql/export_instance.rb
+- lib/fog/google/requests/sql/get_backup_run.rb
+- lib/fog/google/requests/sql/get_instance.rb
+- lib/fog/google/requests/sql/get_operation.rb
+- lib/fog/google/requests/sql/get_ssl_cert.rb
+- lib/fog/google/requests/sql/import_instance.rb
+- lib/fog/google/requests/sql/insert_instance.rb
+- lib/fog/google/requests/sql/insert_ssl_cert.rb
+- lib/fog/google/requests/sql/list_backup_runs.rb
+- lib/fog/google/requests/sql/list_flags.rb
+- lib/fog/google/requests/sql/list_instances.rb
+- lib/fog/google/requests/sql/list_operations.rb
+- lib/fog/google/requests/sql/list_ssl_certs.rb
+- lib/fog/google/requests/sql/list_tiers.rb
+- lib/fog/google/requests/sql/reset_instance_ssl_config.rb
+- lib/fog/google/requests/sql/restart_instance.rb
+- lib/fog/google/requests/sql/restore_instance_backup.rb
+- lib/fog/google/requests/sql/set_instance_root_password.rb
+- lib/fog/google/requests/sql/update_instance.rb
- lib/fog/google/requests/storage/copy_object.rb
- lib/fog/google/requests/storage/delete_bucket.rb
- lib/fog/google/requests/storage/delete_object.rb
@@ -2186,6 +2815,7 @@ files:
- lib/fog/google/requests/storage/put_object.rb
- lib/fog/google/requests/storage/put_object_acl.rb
- lib/fog/google/requests/storage/put_object_url.rb
+- lib/fog/google/sql.rb
- lib/fog/google/storage.rb
- lib/fog/hp.rb
- lib/fog/hp/CHANGELOG.hp
@@ -2776,7 +3406,9 @@ files:
- lib/fog/linode/requests/compute/avail_stackscripts.rb
- lib/fog/linode/requests/compute/linode_boot.rb
- lib/fog/linode/requests/compute/linode_config_create.rb
+- lib/fog/linode/requests/compute/linode_config_delete.rb
- lib/fog/linode/requests/compute/linode_config_list.rb
+- lib/fog/linode/requests/compute/linode_config_update.rb
- lib/fog/linode/requests/compute/linode_create.rb
- lib/fog/linode/requests/compute/linode_delete.rb
- lib/fog/linode/requests/compute/linode_disk_create.rb
@@ -2857,6 +3489,30 @@ files:
- lib/fog/ninefold/requests/compute/update_load_balancer_rule.rb
- lib/fog/ninefold/requests/compute/update_virtual_machine.rb
- lib/fog/ninefold/storage.rb
+- lib/fog/opennebula.rb
+- lib/fog/opennebula/README.md
+- lib/fog/opennebula/compute.rb
+- lib/fog/opennebula/core.rb
+- lib/fog/opennebula/models/compute/flavor.rb
+- lib/fog/opennebula/models/compute/flavors.rb
+- lib/fog/opennebula/models/compute/group.rb
+- lib/fog/opennebula/models/compute/groups.rb
+- lib/fog/opennebula/models/compute/interface.rb
+- lib/fog/opennebula/models/compute/interfaces.rb
+- lib/fog/opennebula/models/compute/network.rb
+- lib/fog/opennebula/models/compute/networks.rb
+- lib/fog/opennebula/models/compute/server.rb
+- lib/fog/opennebula/models/compute/servers.rb
+- lib/fog/opennebula/requests/compute/OpenNebulaVNC.rb
+- lib/fog/opennebula/requests/compute/get_vnc_console.rb
+- lib/fog/opennebula/requests/compute/list_groups.rb
+- lib/fog/opennebula/requests/compute/list_networks.rb
+- lib/fog/opennebula/requests/compute/list_vms.rb
+- lib/fog/opennebula/requests/compute/template_pool.rb
+- lib/fog/opennebula/requests/compute/vm_allocate.rb
+- lib/fog/opennebula/requests/compute/vm_destroy.rb
+- lib/fog/opennebula/requests/compute/vm_resume.rb
+- lib/fog/opennebula/requests/compute/vm_stop.rb
- lib/fog/openstack.rb
- lib/fog/openstack/CHANGELOG.md
- lib/fog/openstack/compute.rb
@@ -3032,6 +3688,8 @@ files:
- lib/fog/openstack/requests/compute/server_diagnostics.rb
- lib/fog/openstack/requests/compute/set_metadata.rb
- lib/fog/openstack/requests/compute/set_tenant.rb
+- lib/fog/openstack/requests/compute/start_server.rb
+- lib/fog/openstack/requests/compute/stop_server.rb
- lib/fog/openstack/requests/compute/suspend_server.rb
- lib/fog/openstack/requests/compute/unpause_server.rb
- lib/fog/openstack/requests/compute/update_meta.rb
@@ -3545,6 +4203,7 @@ files:
- lib/fog/rackspace/requests/databases/enable_root_user.rb
- lib/fog/rackspace/requests/databases/get_flavor.rb
- lib/fog/rackspace/requests/databases/get_instance.rb
+- lib/fog/rackspace/requests/databases/grant_user_access.rb
- lib/fog/rackspace/requests/databases/list_databases.rb
- lib/fog/rackspace/requests/databases/list_flavors.rb
- lib/fog/rackspace/requests/databases/list_instances.rb
@@ -3552,6 +4211,7 @@ files:
- lib/fog/rackspace/requests/databases/resize_instance.rb
- lib/fog/rackspace/requests/databases/resize_instance_volume.rb
- lib/fog/rackspace/requests/databases/restart_instance.rb
+- lib/fog/rackspace/requests/databases/revoke_user_access.rb
- lib/fog/rackspace/requests/dns/add_records.rb
- lib/fog/rackspace/requests/dns/callback.rb
- lib/fog/rackspace/requests/dns/create_domains.rb
@@ -3733,40 +4393,6 @@ files:
- lib/fog/riakcs/requests/provisioning/update_user.rb
- lib/fog/riakcs/requests/usage/get_usage.rb
- lib/fog/riakcs/usage.rb
-- lib/fog/sakuracloud.rb
-- lib/fog/sakuracloud/compute.rb
-- lib/fog/sakuracloud/docs/getting_started.md
-- lib/fog/sakuracloud/models/compute/plan.rb
-- lib/fog/sakuracloud/models/compute/plans.rb
-- lib/fog/sakuracloud/models/compute/server.rb
-- lib/fog/sakuracloud/models/compute/servers.rb
-- lib/fog/sakuracloud/models/compute/ssh_key.rb
-- lib/fog/sakuracloud/models/compute/ssh_keys.rb
-- lib/fog/sakuracloud/models/compute/zone.rb
-- lib/fog/sakuracloud/models/compute/zones.rb
-- lib/fog/sakuracloud/models/volume/archive.rb
-- lib/fog/sakuracloud/models/volume/archives.rb
-- lib/fog/sakuracloud/models/volume/disk.rb
-- lib/fog/sakuracloud/models/volume/disks.rb
-- lib/fog/sakuracloud/models/volume/plan.rb
-- lib/fog/sakuracloud/models/volume/plans.rb
-- lib/fog/sakuracloud/requests/compute/boot_server.rb
-- lib/fog/sakuracloud/requests/compute/create_server.rb
-- lib/fog/sakuracloud/requests/compute/delete_server.rb
-- lib/fog/sakuracloud/requests/compute/list_plans.rb
-- lib/fog/sakuracloud/requests/compute/list_servers.rb
-- lib/fog/sakuracloud/requests/compute/list_ssh_keys.rb
-- lib/fog/sakuracloud/requests/compute/list_zones.rb
-- lib/fog/sakuracloud/requests/compute/stop_server.rb
-- lib/fog/sakuracloud/requests/volume/attach_disk.rb
-- lib/fog/sakuracloud/requests/volume/configure_disk.rb
-- lib/fog/sakuracloud/requests/volume/create_disk.rb
-- lib/fog/sakuracloud/requests/volume/delete_disk.rb
-- lib/fog/sakuracloud/requests/volume/list_archives.rb
-- lib/fog/sakuracloud/requests/volume/list_disks.rb
-- lib/fog/sakuracloud/requests/volume/list_plans.rb
-- lib/fog/sakuracloud/volume.rb
-- lib/fog/schema/data_validator.rb
- lib/fog/serverlove.rb
- lib/fog/serverlove/compute.rb
- lib/fog/serverlove/core.rb
@@ -4144,6 +4770,8 @@ files:
- lib/fog/vcloud_director/models/compute/catalog_item.rb
- lib/fog/vcloud_director/models/compute/catalog_items.rb
- lib/fog/vcloud_director/models/compute/catalogs.rb
+- lib/fog/vcloud_director/models/compute/custom_field.rb
+- lib/fog/vcloud_director/models/compute/custom_fields.rb
- lib/fog/vcloud_director/models/compute/disk.rb
- lib/fog/vcloud_director/models/compute/disks.rb
- lib/fog/vcloud_director/models/compute/media.rb
@@ -4174,6 +4802,7 @@ files:
- lib/fog/vcloud_director/parsers/compute/vm_network.rb
- lib/fog/vcloud_director/parsers/compute/vms.rb
- lib/fog/vcloud_director/parsers/compute/vms_by_metadata.rb
+- lib/fog/vcloud_director/query.rb
- lib/fog/vcloud_director/requests/compute/delete_catalog_item.rb
- lib/fog/vcloud_director/requests/compute/delete_catalog_item_metadata_item_metadata.rb
- lib/fog/vcloud_director/requests/compute/delete_disk.rb
@@ -4301,6 +4930,7 @@ files:
- lib/fog/vcloud_director/requests/compute/post_configure_edge_gateway_services.rb
- lib/fog/vcloud_director/requests/compute/post_consolidate_vm_vapp.rb
- lib/fog/vcloud_director/requests/compute/post_consolidate_vm_vapp_template.rb
+- lib/fog/vcloud_director/requests/compute/post_create_catalog_item.rb
- lib/fog/vcloud_director/requests/compute/post_create_org_vdc_network.rb
- lib/fog/vcloud_director/requests/compute/post_deploy_vapp.rb
- lib/fog/vcloud_director/requests/compute/post_detach_disk.rb
@@ -4342,7 +4972,9 @@ files:
- lib/fog/vcloud_director/requests/compute/put_media_metadata_item_metadata.rb
- lib/fog/vcloud_director/requests/compute/put_memory.rb
- lib/fog/vcloud_director/requests/compute/put_metadata_value.rb
+- lib/fog/vcloud_director/requests/compute/put_network.rb
- lib/fog/vcloud_director/requests/compute/put_network_connection_system_section_vapp.rb
+- lib/fog/vcloud_director/requests/compute/put_product_sections.rb
- lib/fog/vcloud_director/requests/compute/put_vapp_metadata_item_metadata.rb
- lib/fog/vcloud_director/requests/compute/put_vapp_name_and_description.rb
- lib/fog/vcloud_director/requests/compute/put_vapp_template_metadata_item_metadata.rb
@@ -4607,6 +5239,7 @@ files:
- tests/aws/models/auto_scaling/configurations_tests.rb
- tests/aws/models/auto_scaling/groups_test.rb
- tests/aws/models/auto_scaling/helper.rb
+- tests/aws/models/auto_scaling/instance_tests.rb
- tests/aws/models/auto_scaling/instances_tests.rb
- tests/aws/models/beanstalk/application_tests.rb
- tests/aws/models/beanstalk/applications_tests.rb
@@ -4722,6 +5355,7 @@ files:
- tests/aws/requests/data_pipeline/helper.rb
- tests/aws/requests/data_pipeline/pipeline_tests.rb
- tests/aws/requests/dns/dns_tests.rb
+- tests/aws/requests/dns/health_check_tests.rb
- tests/aws/requests/dns/helper.rb
- tests/aws/requests/dynamodb/item_tests.rb
- tests/aws/requests/dynamodb/table_tests.rb
@@ -4744,6 +5378,7 @@ files:
- tests/aws/requests/glacier/tree_hash_tests.rb
- tests/aws/requests/glacier/vault_tests.rb
- tests/aws/requests/iam/access_key_tests.rb
+- tests/aws/requests/iam/account_policy_tests.rb
- tests/aws/requests/iam/account_tests.rb
- tests/aws/requests/iam/group_policy_tests.rb
- tests/aws/requests/iam/group_tests.rb
@@ -4945,18 +5580,69 @@ files:
- tests/glesys/requests/compute/server_tests.rb
- tests/glesys/requests/compute/template_tests.rb
- tests/go_grid/requests/compute/image_tests.rb
-- tests/google/helpers/disk_helper.rb
+- tests/google/helpers/google_tests_helper.rb
+- tests/google/models/compute/backend_service_tests.rb
+- tests/google/models/compute/backend_services_tests.rb
- tests/google/models/compute/disk_tests.rb
+- tests/google/models/compute/disk_types_tests.rb
- tests/google/models/compute/disks_tests.rb
+- tests/google/models/compute/forwarding_rule_tests.rb
+- tests/google/models/compute/forwarding_rules_tests.rb
+- tests/google/models/compute/global_forwarding_rule_tests.rb
+- tests/google/models/compute/global_forwarding_rules_tests.rb
+- tests/google/models/compute/http_health_check_tests.rb
+- tests/google/models/compute/http_health_checks_tests.rb
+- tests/google/models/compute/image_tests.rb
+- tests/google/models/compute/images_tests.rb
+- tests/google/models/compute/region_tests.rb
+- tests/google/models/compute/regions_tests.rb
- tests/google/models/compute/server_tests.rb
- tests/google/models/compute/servers_tests.rb
+- tests/google/models/compute/target_http_proxies_tests.rb
+- tests/google/models/compute/target_http_proxy_test.rb
+- tests/google/models/compute/target_instance_tests.rb
+- tests/google/models/compute/target_instances_tests.rb
+- tests/google/models/compute/target_pool_tests.rb
+- tests/google/models/compute/target_pools_tests.rb
+- tests/google/models/compute/url_map_tests.rb
+- tests/google/models/compute/url_maps_tests.rb
+- tests/google/models/monitoring/metric_descriptors_tests.rb
+- tests/google/models/monitoring/timeseries_collection_tests.rb
+- tests/google/models/monitoring/timeseries_descriptors_tests.rb
+- tests/google/models/sql/flags_tests.rb
+- tests/google/models/sql/instance_tests.rb
+- tests/google/models/sql/instances_tests.rb
+- tests/google/models/sql/operation_tests.rb
+- tests/google/models/sql/operations_tests.rb
+- tests/google/models/sql/ssl_cert_tests.rb
+- tests/google/models/sql/ssl_certs_tests.rb
+- tests/google/models/sql/tiers_tests.rb
+- tests/google/requests/compute/backend_service_tests.rb
- tests/google/requests/compute/disk_tests.rb
+- tests/google/requests/compute/disk_type_tests.rb
- tests/google/requests/compute/firewall_tests.rb
+- tests/google/requests/compute/forwarding_rules_tests.rb
+- tests/google/requests/compute/global_forwarding_rules_tests.rb
+- tests/google/requests/compute/http_health_checks_tests.rb
- tests/google/requests/compute/image_tests.rb
- tests/google/requests/compute/network_tests.rb
- tests/google/requests/compute/operation_tests.rb
+- tests/google/requests/compute/region_tests.rb
- tests/google/requests/compute/server_tests.rb
+- tests/google/requests/compute/target_http_proxies_test.rb
+- tests/google/requests/compute/target_instances_tests.rb
+- tests/google/requests/compute/target_pools_tests.rb
+- tests/google/requests/compute/url_maps_tests.rb
- tests/google/requests/compute/zone_tests.rb
+- tests/google/requests/dns/managed_zone_tests.rb
+- tests/google/requests/monitoring/metric_descriptor_tests.rb
+- tests/google/requests/monitoring/timeseries_collection_tests.rb
+- tests/google/requests/monitoring/timeseries_descriptor_tests.rb
+- tests/google/requests/sql/flag_tests.rb
+- tests/google/requests/sql/instance_tests.rb
+- tests/google/requests/sql/operation_tests.rb
+- tests/google/requests/sql/ssl_cert_tests.rb
+- tests/google/requests/sql/tier_tests.rb
- tests/google/requests/storage/bucket_tests.rb
- tests/google/requests/storage/object_tests.rb
- tests/helper.rb
@@ -5164,6 +5850,12 @@ files:
- tests/ninefold/requests/compute/network_tests.rb
- tests/ninefold/requests/compute/template_tests.rb
- tests/ninefold/requests/compute/virtual_machine_tests.rb
+- tests/opennebula/compute_tests.rb
+- tests/opennebula/models/compute/group_tests.rb
+- tests/opennebula/models/compute/groups_tests.rb
+- tests/opennebula/models/compute/network_tests.rb
+- tests/opennebula/models/compute/networks_tests.rb
+- tests/opennebula/requests/compute/vm_allocate_tests.rb
- tests/openstack/authenticate_tests.rb
- tests/openstack/models/compute/images_tests.rb
- tests/openstack/models/compute/security_group_tests.rb
@@ -5418,14 +6110,6 @@ files:
- tests/rage4/requests/dns/dns_tests.rb
- tests/riakcs/requests/provisioning/provisioning_tests.rb
- tests/riakcs/requests/usage/usage_tests.rb
-- tests/sakuracloud/helper.rb
-- tests/sakuracloud/requests/compute/plans_tests.rb
-- tests/sakuracloud/requests/compute/servers_tests.rb
-- tests/sakuracloud/requests/compute/ssh_keys_tests.rb
-- tests/sakuracloud/requests/compute/zones_tests.rb
-- tests/sakuracloud/requests/volume/archives_tests.rb
-- tests/sakuracloud/requests/volume/disks_tests.rb
-- tests/sakuracloud/requests/volume/plans_tests.rb
- tests/serverlove/requests/compute/image_tests.rb
- tests/serverlove/requests/compute/server_tests.rb
- tests/serverlove/util/compute/password_generator_tests.rb
@@ -5583,7 +6267,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
version: '0'
requirements: []
rubyforge_project: fog
-rubygems_version: 2.2.2
+rubygems_version: 2.3.0
signing_key:
specification_version: 2
summary: brings clouds to you
@@ -5597,6 +6281,7 @@ test_files:
- tests/aws/models/auto_scaling/configurations_tests.rb
- tests/aws/models/auto_scaling/groups_test.rb
- tests/aws/models/auto_scaling/helper.rb
+- tests/aws/models/auto_scaling/instance_tests.rb
- tests/aws/models/auto_scaling/instances_tests.rb
- tests/aws/models/beanstalk/application_tests.rb
- tests/aws/models/beanstalk/applications_tests.rb
@@ -5712,6 +6397,7 @@ test_files:
- tests/aws/requests/data_pipeline/helper.rb
- tests/aws/requests/data_pipeline/pipeline_tests.rb
- tests/aws/requests/dns/dns_tests.rb
+- tests/aws/requests/dns/health_check_tests.rb
- tests/aws/requests/dns/helper.rb
- tests/aws/requests/dynamodb/item_tests.rb
- tests/aws/requests/dynamodb/table_tests.rb
@@ -5734,6 +6420,7 @@ test_files:
- tests/aws/requests/glacier/tree_hash_tests.rb
- tests/aws/requests/glacier/vault_tests.rb
- tests/aws/requests/iam/access_key_tests.rb
+- tests/aws/requests/iam/account_policy_tests.rb
- tests/aws/requests/iam/account_tests.rb
- tests/aws/requests/iam/group_policy_tests.rb
- tests/aws/requests/iam/group_tests.rb
@@ -5935,18 +6622,69 @@ test_files:
- tests/glesys/requests/compute/server_tests.rb
- tests/glesys/requests/compute/template_tests.rb
- tests/go_grid/requests/compute/image_tests.rb
-- tests/google/helpers/disk_helper.rb
+- tests/google/helpers/google_tests_helper.rb
+- tests/google/models/compute/backend_service_tests.rb
+- tests/google/models/compute/backend_services_tests.rb
- tests/google/models/compute/disk_tests.rb
+- tests/google/models/compute/disk_types_tests.rb
- tests/google/models/compute/disks_tests.rb
+- tests/google/models/compute/forwarding_rule_tests.rb
+- tests/google/models/compute/forwarding_rules_tests.rb
+- tests/google/models/compute/global_forwarding_rule_tests.rb
+- tests/google/models/compute/global_forwarding_rules_tests.rb
+- tests/google/models/compute/http_health_check_tests.rb
+- tests/google/models/compute/http_health_checks_tests.rb
+- tests/google/models/compute/image_tests.rb
+- tests/google/models/compute/images_tests.rb
+- tests/google/models/compute/region_tests.rb
+- tests/google/models/compute/regions_tests.rb
- tests/google/models/compute/server_tests.rb
- tests/google/models/compute/servers_tests.rb
+- tests/google/models/compute/target_http_proxies_tests.rb
+- tests/google/models/compute/target_http_proxy_test.rb
+- tests/google/models/compute/target_instance_tests.rb
+- tests/google/models/compute/target_instances_tests.rb
+- tests/google/models/compute/target_pool_tests.rb
+- tests/google/models/compute/target_pools_tests.rb
+- tests/google/models/compute/url_map_tests.rb
+- tests/google/models/compute/url_maps_tests.rb
+- tests/google/models/monitoring/metric_descriptors_tests.rb
+- tests/google/models/monitoring/timeseries_collection_tests.rb
+- tests/google/models/monitoring/timeseries_descriptors_tests.rb
+- tests/google/models/sql/flags_tests.rb
+- tests/google/models/sql/instance_tests.rb
+- tests/google/models/sql/instances_tests.rb
+- tests/google/models/sql/operation_tests.rb
+- tests/google/models/sql/operations_tests.rb
+- tests/google/models/sql/ssl_cert_tests.rb
+- tests/google/models/sql/ssl_certs_tests.rb
+- tests/google/models/sql/tiers_tests.rb
+- tests/google/requests/compute/backend_service_tests.rb
- tests/google/requests/compute/disk_tests.rb
+- tests/google/requests/compute/disk_type_tests.rb
- tests/google/requests/compute/firewall_tests.rb
+- tests/google/requests/compute/forwarding_rules_tests.rb
+- tests/google/requests/compute/global_forwarding_rules_tests.rb
+- tests/google/requests/compute/http_health_checks_tests.rb
- tests/google/requests/compute/image_tests.rb
- tests/google/requests/compute/network_tests.rb
- tests/google/requests/compute/operation_tests.rb
+- tests/google/requests/compute/region_tests.rb
- tests/google/requests/compute/server_tests.rb
+- tests/google/requests/compute/target_http_proxies_test.rb
+- tests/google/requests/compute/target_instances_tests.rb
+- tests/google/requests/compute/target_pools_tests.rb
+- tests/google/requests/compute/url_maps_tests.rb
- tests/google/requests/compute/zone_tests.rb
+- tests/google/requests/dns/managed_zone_tests.rb
+- tests/google/requests/monitoring/metric_descriptor_tests.rb
+- tests/google/requests/monitoring/timeseries_collection_tests.rb
+- tests/google/requests/monitoring/timeseries_descriptor_tests.rb
+- tests/google/requests/sql/flag_tests.rb
+- tests/google/requests/sql/instance_tests.rb
+- tests/google/requests/sql/operation_tests.rb
+- tests/google/requests/sql/ssl_cert_tests.rb
+- tests/google/requests/sql/tier_tests.rb
- tests/google/requests/storage/bucket_tests.rb
- tests/google/requests/storage/object_tests.rb
- tests/helper.rb
@@ -6154,6 +6892,12 @@ test_files:
- tests/ninefold/requests/compute/network_tests.rb
- tests/ninefold/requests/compute/template_tests.rb
- tests/ninefold/requests/compute/virtual_machine_tests.rb
+- tests/opennebula/compute_tests.rb
+- tests/opennebula/models/compute/group_tests.rb
+- tests/opennebula/models/compute/groups_tests.rb
+- tests/opennebula/models/compute/network_tests.rb
+- tests/opennebula/models/compute/networks_tests.rb
+- tests/opennebula/requests/compute/vm_allocate_tests.rb
- tests/openstack/authenticate_tests.rb
- tests/openstack/models/compute/images_tests.rb
- tests/openstack/models/compute/security_group_tests.rb
@@ -6408,14 +7152,6 @@ test_files:
- tests/rage4/requests/dns/dns_tests.rb
- tests/riakcs/requests/provisioning/provisioning_tests.rb
- tests/riakcs/requests/usage/usage_tests.rb
-- tests/sakuracloud/helper.rb
-- tests/sakuracloud/requests/compute/plans_tests.rb
-- tests/sakuracloud/requests/compute/servers_tests.rb
-- tests/sakuracloud/requests/compute/ssh_keys_tests.rb
-- tests/sakuracloud/requests/compute/zones_tests.rb
-- tests/sakuracloud/requests/volume/archives_tests.rb
-- tests/sakuracloud/requests/volume/disks_tests.rb
-- tests/sakuracloud/requests/volume/plans_tests.rb
- tests/serverlove/requests/compute/image_tests.rb
- tests/serverlove/requests/compute/server_tests.rb
- tests/serverlove/util/compute/password_generator_tests.rb
diff --git a/tests/aws/credentials_tests.rb b/tests/aws/credentials_tests.rb
index 225505d..54e0869 100644
--- a/tests/aws/credentials_tests.rb
+++ b/tests/aws/credentials_tests.rb
@@ -17,11 +17,10 @@ Shindo.tests('AWS | credentials', ['aws']) do
Excon.stub({:method => :get, :path => "/latest/meta-data/iam/security-credentials/arole"}, {:status => 200, :body => Fog::JSON.encode(credentials)})
-
tests("#fetch_credentials") do
- returns({:aws_access_key_id => 'dummykey',
- :aws_secret_access_key => 'dummysecret',
- :aws_session_token => 'dummytoken',
+ returns({:aws_access_key_id => 'dummykey',
+ :aws_secret_access_key => 'dummysecret',
+ :aws_session_token => 'dummytoken',
:aws_credentials_expire_at => expires_at}) { Fog::Compute::AWS.fetch_credentials(:use_iam_profile => true) }
end
@@ -44,7 +43,6 @@ Shindo.tests('AWS | credentials', ['aws']) do
end
Fog::Time.now = Time.now
-
tests("#fetch_credentials when the url 404s") do
Excon.stub({:method => :get, :path => "/latest/meta-data/iam/security-credentials/"}, {:status => 404, :body => 'not bound'})
returns(default_credentials) {Fog::Compute::AWS.fetch_credentials(:use_iam_profile => true)}
diff --git a/tests/aws/models/auto_scaling/groups_test.rb b/tests/aws/models/auto_scaling/groups_test.rb
index cf09f7a..6cec9e7 100644
--- a/tests/aws/models/auto_scaling/groups_test.rb
+++ b/tests/aws/models/auto_scaling/groups_test.rb
@@ -14,11 +14,11 @@ Shindo.tests('AWS::AutoScaling | group', ['aws', 'auto_scaling_m']) do
}
Fog::AWS[:auto_scaling].configurations.new(lc_params).save
-
+
model_tests(Fog::AWS[:auto_scaling].groups, params, true) do
@instance.update
end
-
+
test("setting attributes in the constructor") do
group = Fog::AWS[:auto_scaling].groups.new(:min_size => 1, :max_size => 2)
group.min_size == 1 && group.max_size == 2
diff --git a/tests/aws/models/auto_scaling/instance_tests.rb b/tests/aws/models/auto_scaling/instance_tests.rb
new file mode 100644
index 0000000..2d280df
--- /dev/null
+++ b/tests/aws/models/auto_scaling/instance_tests.rb
@@ -0,0 +1,15 @@
+require 'fog/aws/models/auto_scaling/instance'
+
+Shindo.tests("Fog::AWS::AutoScaling::Instance", 'aws') do
+ @instance = Fog::AWS::AutoScaling::Instance.new
+
+ test('#healthy? = true') do
+ @instance.health_status = 'Healthy'
+ @instance.healthy? == true
+ end
+
+ test('#heatlhy? = false') do
+ @instance.health_status = 'Unhealthy'
+ @instance.healthy? == false
+ end
+end
diff --git a/tests/aws/models/beanstalk/application_tests.rb b/tests/aws/models/beanstalk/application_tests.rb
index 724c8ad..980077b 100644
--- a/tests/aws/models/beanstalk/application_tests.rb
+++ b/tests/aws/models/beanstalk/application_tests.rb
@@ -66,5 +66,4 @@ Shindo.tests("Fog::AWS[:beanstalk] | application", ['aws', 'beanstalk']) do
end
-
end
diff --git a/tests/aws/models/beanstalk/environment_tests.rb b/tests/aws/models/beanstalk/environment_tests.rb
index 8f919cc..44caf3f 100644
--- a/tests/aws/models/beanstalk/environment_tests.rb
+++ b/tests/aws/models/beanstalk/environment_tests.rb
@@ -90,7 +90,6 @@ Shindo.tests("Fog::AWS[:beanstalk] | environment", ['aws', 'beanstalk']) do
@instance.wait_for { ready? }
end
-
test('#restart_app_server') do
@instance.restart_app_server
diff --git a/tests/aws/models/beanstalk/environments_tests.rb b/tests/aws/models/beanstalk/environments_tests.rb
index e791fd4..3f87059 100644
--- a/tests/aws/models/beanstalk/environments_tests.rb
+++ b/tests/aws/models/beanstalk/environments_tests.rb
@@ -31,4 +31,4 @@ Shindo.tests("Fog::AWS[:beanstalk] | environments", ['aws', 'beanstalk']) do
# delete application
@application.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/aws/models/beanstalk/templates_tests.rb b/tests/aws/models/beanstalk/templates_tests.rb
index ef8f72a..600e329 100644
--- a/tests/aws/models/beanstalk/templates_tests.rb
+++ b/tests/aws/models/beanstalk/templates_tests.rb
@@ -59,4 +59,4 @@ Shindo.tests("Fog::AWS[:beanstalk] | templates", ['aws', 'beanstalk']) do
# delete application
@application.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/aws/models/beanstalk/versions_tests.rb b/tests/aws/models/beanstalk/versions_tests.rb
index f841a51..5845bcd 100644
--- a/tests/aws/models/beanstalk/versions_tests.rb
+++ b/tests/aws/models/beanstalk/versions_tests.rb
@@ -55,7 +55,6 @@ Shindo.tests("Fog::AWS[:beanstalk] | versions", ['aws', 'beanstalk']) do
end
-
# delete application
@application.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/aws/models/cdn/invalidation_tests.rb b/tests/aws/models/cdn/invalidation_tests.rb
index 6cad9e6..3bc94a0 100644
--- a/tests/aws/models/cdn/invalidation_tests.rb
+++ b/tests/aws/models/cdn/invalidation_tests.rb
@@ -29,4 +29,3 @@ Shindo.tests("Fog::CDN[:aws] | invalidation", ['aws', 'cdn']) do
end
end
-
diff --git a/tests/aws/models/cdn/invalidations_tests.rb b/tests/aws/models/cdn/invalidations_tests.rb
index 823811a..dee9ab5 100644
--- a/tests/aws/models/cdn/invalidations_tests.rb
+++ b/tests/aws/models/cdn/invalidations_tests.rb
@@ -12,4 +12,3 @@ Shindo.tests("Fog::CDN[:aws] | invalidations", ['aws', 'cdn']) do
@distribution.destroy
end
end
-
diff --git a/tests/aws/models/cloud_watch/metric_statistics_tests.rb b/tests/aws/models/cloud_watch/metric_statistics_tests.rb
index 48d3111..e84b24c 100644
--- a/tests/aws/models/cloud_watch/metric_statistics_tests.rb
+++ b/tests/aws/models/cloud_watch/metric_statistics_tests.rb
@@ -2,7 +2,7 @@ Shindo.tests("AWS::CloudWatch | metric_statistics", ['aws', 'cloudwatch']) do
tests('success') do
pending if Fog.mocking?
-
+
instanceId = 'i-420c352f'
metricName = 'DiskReadBytes'
namespace = 'AWS/EC2'
@@ -10,15 +10,15 @@ Shindo.tests("AWS::CloudWatch | metric_statistics", ['aws', 'cloudwatch']) do
endTime = Time.now.iso8601
period = 60
statisticTypes = ['Minimum','Maximum','Sum','SampleCount','Average']
-
+
tests("#all").succeeds do
@statistics = Fog::AWS[:cloud_watch].metric_statistics.all({'Statistics' => statisticTypes, 'StartTime' => startTime, 'EndTime' => endTime, 'Period' => period, 'MetricName' => metricName, 'Namespace' => namespace, 'Dimensions' => [{'Name' => 'InstanceId', 'Value' => instanceId}]})
end
-
+
tests("#all_not_empty").returns(true) do
@statistics.length > 0
end
-
+
new_attributes = {
:namespace => 'Custom/Test',
:metric_name => 'ModelTest',
@@ -28,11 +28,11 @@ Shindo.tests("AWS::CloudWatch | metric_statistics", ['aws', 'cloudwatch']) do
tests('#new').returns(new_attributes) do
Fog::AWS[:cloud_watch].metric_statistics.new(new_attributes).attributes
end
-
+
tests('#create').returns(new_attributes) do
Fog::AWS[:cloud_watch].metric_statistics.create(new_attributes).attributes
end
-
+
stats_set_attributes = {
:namespace => 'Custom/Test',
:metric_name => 'ModelTest',
@@ -48,4 +48,4 @@ Shindo.tests("AWS::CloudWatch | metric_statistics", ['aws', 'cloudwatch']) do
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/aws/models/cloud_watch/metrics_tests.rb b/tests/aws/models/cloud_watch/metrics_tests.rb
index 59609ee..4fc7b1e 100644
--- a/tests/aws/models/cloud_watch/metrics_tests.rb
+++ b/tests/aws/models/cloud_watch/metrics_tests.rb
@@ -11,13 +11,13 @@ Shindo.tests("AWS::CloudWatch | metrics", ['aws', 'cloudwatch']) do
tests("#get").returns({:dimensions=>[{"Name"=>"InstanceId", "Value"=>instanceId}], :name=>metricName, :namespace=>namespace}) do
Fog::AWS[:cloud_watch].metrics.get(namespace, metricName, {'InstanceId' => instanceId}).attributes
end
-
+
end
tests('#each') do
Fog.mock!
tests("handle NextToken").returns(1001) do
- count = 0
+ count = 0
Fog::AWS[:cloud_watch].metrics.each {|e| count += 1 }
count
end
diff --git a/tests/aws/models/compute/addresses_tests.rb b/tests/aws/models/compute/addresses_tests.rb
index 78a4ff9..c12dbbf 100644
--- a/tests/aws/models/compute/addresses_tests.rb
+++ b/tests/aws/models/compute/addresses_tests.rb
@@ -2,4 +2,4 @@ Shindo.tests("Fog::Compute[:aws] | addresses", ['aws']) do
collection_tests(Fog::Compute[:aws].addresses, {}, true)
-end
\ No newline at end of file
+end
diff --git a/tests/aws/models/compute/dhcp_option_tests.rb b/tests/aws/models/compute/dhcp_option_tests.rb
index a9a627d..2a649a1 100644
--- a/tests/aws/models/compute/dhcp_option_tests.rb
+++ b/tests/aws/models/compute/dhcp_option_tests.rb
@@ -1,4 +1,3 @@
Shindo.tests("Fog::Compute[:aws] | dhcp_options", ['aws']) do
model_tests(Fog::Compute[:aws].dhcp_options, {'dhcp_configuration_set' => {'domain-name' => 'example.com', 'domain-name-servers' => '10.10.10.10'}}, true)
end
-
diff --git a/tests/aws/models/compute/dhcp_options_tests.rb b/tests/aws/models/compute/dhcp_options_tests.rb
index 3237f32..273309a 100644
--- a/tests/aws/models/compute/dhcp_options_tests.rb
+++ b/tests/aws/models/compute/dhcp_options_tests.rb
@@ -1,4 +1,3 @@
Shindo.tests("Fog::Compute[:aws] | dhcp_options", ['aws']) do
collection_tests(Fog::Compute[:aws].dhcp_options, {'dhcp_configuration_set' => {'domain-name' => 'example.com', 'domain-name-servers' => '10.10.10.10'}}, true)
end
-
diff --git a/tests/aws/models/compute/internet_gateways_tests.rb b/tests/aws/models/compute/internet_gateways_tests.rb
index d2022e9..868c0b6 100644
--- a/tests/aws/models/compute/internet_gateways_tests.rb
+++ b/tests/aws/models/compute/internet_gateways_tests.rb
@@ -1,4 +1,3 @@
Shindo.tests("Fog::Compute[:aws] | internet_gateways", ['aws']) do
collection_tests(Fog::Compute[:aws].internet_gateways, {}, true)
end
-
diff --git a/tests/aws/models/compute/key_pair_tests.rb b/tests/aws/models/compute/key_pair_tests.rb
index 9e4b28e..1a46806 100644
--- a/tests/aws/models/compute/key_pair_tests.rb
+++ b/tests/aws/models/compute/key_pair_tests.rb
@@ -23,5 +23,4 @@ Shindo.tests("Fog::Compute[:aws] | key_pair", ['aws']) do
end
end
-
end
diff --git a/tests/aws/models/compute/key_pairs_tests.rb b/tests/aws/models/compute/key_pairs_tests.rb
index 5f43671..3924418 100644
--- a/tests/aws/models/compute/key_pairs_tests.rb
+++ b/tests/aws/models/compute/key_pairs_tests.rb
@@ -2,4 +2,4 @@ Shindo.tests("Fog::Compute[:aws] | key_pairs", ['aws']) do
collection_tests(Fog::Compute[:aws].key_pairs, {:name => 'fogkeyname'}, true)
-end
\ No newline at end of file
+end
diff --git a/tests/aws/models/compute/network_acl_tests.rb b/tests/aws/models/compute/network_acl_tests.rb
index a90d83a..05d16b8 100644
--- a/tests/aws/models/compute/network_acl_tests.rb
+++ b/tests/aws/models/compute/network_acl_tests.rb
@@ -15,7 +15,7 @@ Shindo.tests("Fog::Compute[:aws] | network_acl", ['aws']) do
@new_nacl.reload
test("associate_with correctly updates new_nacl") do
- @new_nacl.associations.collect { |a| a['subnetId'] } == [@subnet.subnet_id]
+ @new_nacl.associations.map { |a| a['subnetId'] } == [@subnet.subnet_id]
end
@default_nacl.associate_with(@subnet)
@@ -23,11 +23,11 @@ Shindo.tests("Fog::Compute[:aws] | network_acl", ['aws']) do
@default_nacl.reload
test("associate_with correctly updates new_nacl after removal") do
- @new_nacl.associations.collect { |a| a['subnetId'] } == []
+ @new_nacl.associations.map { |a| a['subnetId'] } == []
end
test("associate_with correctly updates default_nacl after removal") do
- @default_nacl.associations.collect { |a| a['subnetId'] } == [@subnet.subnet_id]
+ @default_nacl.associations.map { |a| a['subnetId'] } == [@subnet.subnet_id]
end
@new_nacl.destroy
@@ -105,5 +105,5 @@ Shindo.tests("Fog::Compute[:aws] | network_acl", ['aws']) do
end
@subnet.destroy
- @vpc.destroy
+ @vpc.destroy
end
diff --git a/tests/aws/models/compute/network_acls_tests.rb b/tests/aws/models/compute/network_acls_tests.rb
index ffad2f5..c8fc1bf 100644
--- a/tests/aws/models/compute/network_acls_tests.rb
+++ b/tests/aws/models/compute/network_acls_tests.rb
@@ -2,6 +2,19 @@ Shindo.tests("Fog::Compute[:aws] | network_acls", ['aws']) do
@vpc = Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
collection_tests(Fog::Compute[:aws].network_acls, { :vpc_id => @vpc.id }, true)
-
+
+ tests('tags') do
+ test_tags = {'foo' => 'bar'}
+ @acl = Fog::Compute[:aws].network_acls.create(:vpc_id => @vpc.id, :tags => test_tags)
+
+ tests('@acl.tags').returns(test_tags) do
+ @acl.reload.tags
+ end
+
+ unless Fog.mocking?
+ Fog::Compute[:aws].tags.all('resource-id' => @acl.identity).each {|tag| tag.destroy}
+ end
+ end
+
@vpc.destroy
end
diff --git a/tests/aws/models/compute/network_interfaces_test.rb b/tests/aws/models/compute/network_interfaces_test.rb
index 3aef421..6fdfa59 100644
--- a/tests/aws/models/compute/network_interfaces_test.rb
+++ b/tests/aws/models/compute/network_interfaces_test.rb
@@ -6,7 +6,7 @@ Shindo.tests("Fog::Compute[:aws] | network_interfaces", ['aws']) do
collection_tests(Fog::Compute[:aws].network_interfaces,
{:description => 'nic_desc', :name => 'nic_name', :subnet_id => @subnet_id},
true)
-
+
@subnet.destroy
@vpc.destroy
end
diff --git a/tests/aws/models/compute/security_group_tests.rb b/tests/aws/models/compute/security_group_tests.rb
index 0c19740..9c0c492 100644
--- a/tests/aws/models/compute/security_group_tests.rb
+++ b/tests/aws/models/compute/security_group_tests.rb
@@ -8,6 +8,9 @@ Shindo.tests("Fog::Compute[:aws] | security_group", ['aws']) do
@other_group = Fog::Compute[:aws].security_groups.create(:name => 'fog other group', :description => 'another fog group')
@other_group.reload
+ @other_user_id = Fog::AWS::Mock.owner_id
+ @other_users_group_id = Fog::AWS::Mock.security_group_id
+
test("authorize access by another security group") do
@group.authorize_group_and_owner(@other_group.name)
@group.reload
@@ -35,7 +38,8 @@ Shindo.tests("Fog::Compute[:aws] | security_group", ['aws']) do
group_forms = [
"#{@other_group.owner_id}:#{@other_group.group_id}", # deprecated form
@other_group.group_id,
- {@other_group.owner_id => @other_group.group_id}
+ {@other_group.owner_id => @other_group.group_id},
+ {@other_user_id => @other_users_group_id}
]
group_forms.each do |group_arg|
diff --git a/tests/aws/models/compute/server_tests.rb b/tests/aws/models/compute/server_tests.rb
index 1da42fc..6ed0189 100644
--- a/tests/aws/models/compute/server_tests.rb
+++ b/tests/aws/models/compute/server_tests.rb
@@ -26,7 +26,7 @@ Shindo.tests("Fog::Compute[:aws] | monitor", ['aws']) do
test('#associate_public_ip = false') do
@instance.associate_public_ip = false
@instance.associate_public_ip == false
- end
+ end
end
diff --git a/tests/aws/models/compute/snapshots_tests.rb b/tests/aws/models/compute/snapshots_tests.rb
index 819a559..13d52c8 100644
--- a/tests/aws/models/compute/snapshots_tests.rb
+++ b/tests/aws/models/compute/snapshots_tests.rb
@@ -7,4 +7,4 @@ Shindo.tests("Fog::Compute[:aws] | snapshots", ['aws']) do
@volume.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/aws/models/compute/subnets_tests.rb b/tests/aws/models/compute/subnets_tests.rb
index d7846be..81cee46 100644
--- a/tests/aws/models/compute/subnets_tests.rb
+++ b/tests/aws/models/compute/subnets_tests.rb
@@ -3,4 +3,3 @@ Shindo.tests("Fog::Compute[:aws] | subnets", ['aws']) do
collection_tests(Fog::Compute[:aws].subnets, { :vpc_id => @vpc.id, :cidr_block => '10.0.10.0/28', :availability_zone => 'us-east-1c'}, true)
@vpc.destroy
end
-
diff --git a/tests/aws/models/compute/volumes_tests.rb b/tests/aws/models/compute/volumes_tests.rb
index b6b43f2..d2f2269 100644
--- a/tests/aws/models/compute/volumes_tests.rb
+++ b/tests/aws/models/compute/volumes_tests.rb
@@ -2,4 +2,4 @@ Shindo.tests("Fog::Compute[:aws] | volumes", ['aws']) do
collection_tests(Fog::Compute[:aws].volumes, {:availability_zone => 'us-east-1a', :size => 1, :device => '/dev/sdz1'}, true)
-end
\ No newline at end of file
+end
diff --git a/tests/aws/models/compute/vpcs_tests.rb b/tests/aws/models/compute/vpcs_tests.rb
index 568a19a..05db09c 100644
--- a/tests/aws/models/compute/vpcs_tests.rb
+++ b/tests/aws/models/compute/vpcs_tests.rb
@@ -2,5 +2,18 @@ Shindo.tests("Fog::Compute[:aws] | vpcs", ['aws']) do
collection_tests(Fog::Compute[:aws].vpcs, {:cidr_block => '10.0.10.0/28'}, true)
-end
+ tests('tags') do
+ test_tags = {'foo' => 'bar'}
+ @vpc = Fog::Compute[:aws].vpcs.create(:cidr_block => '1.2.3.4/24', :tags => test_tags)
+
+ tests('@vpc.tags').returns(test_tags) do
+ @vpc.reload.tags
+ end
+ unless Fog.mocking?
+ Fog::Compute[:aws].tags.all('resource-id' => @vpc.id).each {|tag| tag.destroy}
+ end
+
+ @vpc.destroy
+ end
+end
diff --git a/tests/aws/models/dns/record_tests.rb b/tests/aws/models/dns/record_tests.rb
index 5b649ad..0c695c6 100644
--- a/tests/aws/models/dns/record_tests.rb
+++ b/tests/aws/models/dns/record_tests.rb
@@ -31,4 +31,3 @@ Shindo.tests("Fog::Dns[:aws] | record", ['aws', 'dns']) do
end
end
-
diff --git a/tests/aws/models/dns/records_tests.rb b/tests/aws/models/dns/records_tests.rb
index 54239b4..d9e9b73 100644
--- a/tests/aws/models/dns/records_tests.rb
+++ b/tests/aws/models/dns/records_tests.rb
@@ -39,4 +39,3 @@ Shindo.tests("Fog::DNS[:aws] | records", ['aws', 'dns']) do
@zone.destroy
end
end
-
diff --git a/tests/aws/models/elasticache/security_groups_tests.rb b/tests/aws/models/elasticache/security_groups_tests.rb
index c3d22d8..1f46859 100644
--- a/tests/aws/models/elasticache/security_groups_tests.rb
+++ b/tests/aws/models/elasticache/security_groups_tests.rb
@@ -20,7 +20,7 @@ Shindo.tests('AWS::Elasticache | security groups', ['aws', 'elasticache']) do
tests('#authorize_ec2_group') do
@instance.authorize_ec2_group(ec2_group.name)
returns('authorizing') do
- group = @instance.ec2_groups.detect do |g|
+ group = @instance.ec2_groups.find do |g|
g['EC2SecurityGroupName'] == ec2_group.name
end
group['Status']
@@ -33,7 +33,7 @@ Shindo.tests('AWS::Elasticache | security groups', ['aws', 'elasticache']) do
tests('#revoke_ec2_group') do
@instance.revoke_ec2_group(ec2_group.name)
returns('revoking') do
- group = @instance.ec2_groups.detect do |g|
+ group = @instance.ec2_groups.find do |g|
g['EC2SecurityGroupName'] == ec2_group.name
end
group['Status']
diff --git a/tests/aws/models/elasticache/subnet_groups_tests.rb b/tests/aws/models/elasticache/subnet_groups_tests.rb
index cc508e5..03d5003 100644
--- a/tests/aws/models/elasticache/subnet_groups_tests.rb
+++ b/tests/aws/models/elasticache/subnet_groups_tests.rb
@@ -41,4 +41,4 @@ Shindo.tests('AWS::Elasticache | subnet group', ['aws', 'elasticache']) do
Fog::Compute[:aws].delete_subnet(sn['subnetId'])
end
@vpc.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/aws/models/elb/model_tests.rb b/tests/aws/models/elb/model_tests.rb
index 5e3d071..dcedb3c 100644
--- a/tests/aws/models/elb/model_tests.rb
+++ b/tests/aws/models/elb/model_tests.rb
@@ -1,18 +1,17 @@
Shindo.tests('AWS::ELB | models', ['aws', 'elb']) do
require 'fog'
- @availability_zones = Fog::Compute[:aws].describe_availability_zones('state' => 'available').body['availabilityZoneInfo'].collect{ |az| az['zoneName'] }
+ Fog::Compute::AWS::Mock.reset if Fog.mocking?
+ @availability_zones = Fog::Compute[:aws].describe_availability_zones('state' => 'available').body['availabilityZoneInfo'].map{ |az| az['zoneName'] }
@key_name = 'fog-test-model'
- @vpc=Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
+ @vpc = Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
@vpc_id = @vpc.id
@subnet = Fog::Compute[:aws].subnets.create({:vpc_id => @vpc_id, :cidr_block => '10.0.10.0/24'})
@subnet_id = @subnet.subnet_id
@scheme = 'internal'
- @igw=Fog::Compute[:aws].internet_gateways.create
+ @igw = Fog::Compute[:aws].internet_gateways.create
@igw_id = @igw.id
@igw.attach(@vpc_id)
-
-
tests('success') do
tests('load_balancers') do
tests('getting a missing elb') do
@@ -57,10 +56,8 @@ Shindo.tests('AWS::ELB | models', ['aws', 'elb']) do
end
end
tests('with vpc') do
- Fog::Compute[:aws].ec2_compatibility_mode(false)
elb2 = Fog::AWS[:elb].load_balancers.create(:id => "#{elb_id}-2", :subnet_ids => [@subnet_id])
- tests("elb source group should be default_elb*").returns(true) { !!(elb2.source_group["GroupName"] =~ /default_elb_*/) }
- tests("should have a 'default_elb_*' security group").returns(true) { Fog::Compute[:aws].security_groups.all.any? { |sg| sg.name =~ /default_elb/ } }
+ tests("elb source group should be default").returns('default') { elb2.source_group["GroupName"] }
tests("subnet ids are correct").returns(@subnet_id) { elb2.subnet_ids.first }
elb2.destroy
end
@@ -69,6 +66,20 @@ Shindo.tests('AWS::ELB | models', ['aws', 'elb']) do
tests("scheme is internal").returns(@scheme) { elb2.scheme }
elb2.destroy
end
+ tests('with default vpc') do
+ Fog::Compute[:aws].disable_ec2_classic if Fog.mocking?
+
+ if Fog::Compute[:aws].supported_platforms.include?("EC2")
+ Formatador.display_line("[yellow]Skipping test [bold]with default vpc[/][yellow] due to AWS account having EC2 available[/]")
+ else
+ elb2 = Fog::AWS[:elb].load_balancers.create(:id => "#{elb_id}-2", :availability_zones => @availability_zones[0])
+ tests("elb source group should start with default_elb_").returns(true) { !!(elb2.source_group["GroupName"] =~ /default_elb_/) }
+ elb2.destroy
+ end
+
+ Fog::Compute[:aws].enable_ec2_classic if Fog.mocking?
+ end
+
if !Fog.mocking?
@igw.detach(@vpc_id)
@igw.destroy
@@ -78,10 +89,13 @@ Shindo.tests('AWS::ELB | models', ['aws', 'elb']) do
end
tests('with availability zones') do
- Fog::Compute[:aws].ec2_compatibility_mode(true)
azs = @availability_zones[1..-1]
elb2 = Fog::AWS[:elb].load_balancers.create(:id => "#{elb_id}-2", :availability_zones => azs)
- tests("elb source group should be amazon-elb-sg").returns(true) { elb2.source_group["GroupName"] == 'amazon-elb-sg' }
+ if Fog::Compute[:aws].supported_platforms.include?("EC2")
+ tests("elb source group should be amazon-elb-sg").returns('amazon-elb-sg') { elb2.source_group["GroupName"] }
+ else
+ tests("elb source group should match default_elb_").returns(true) { !!(elb2.source_group["GroupName"] =~ /default_elb_/) }
+ end
tests("availability zones are correct").returns(azs.sort) { elb2.availability_zones.sort }
elb2.destroy
end
@@ -171,7 +185,7 @@ Shindo.tests('AWS::ELB | models', ['aws', 'elb']) do
tests('instance_health') do
returns('OutOfService') do
- elb.instance_health.detect{|hash| hash['InstanceId'] == server.id}['State']
+ elb.instance_health.find{|hash| hash['InstanceId'] == server.id}['State']
end
returns([server.id]) { elb.instances_out_of_service }
@@ -193,6 +207,14 @@ Shindo.tests('AWS::ELB | models', ['aws', 'elb']) do
returns(@availability_zones) { elb.availability_zones.sort }
end
+ tests('connection_draining') do
+ returns(false) { elb.connection_draining? }
+ returns(300) { elb.connection_draining_timeout }
+ elb.set_connection_draining(true, 60)
+ returns(true) { elb.connection_draining? }
+ returns(60) { elb.connection_draining_timeout }
+ end
+
tests('cross_zone_load_balancing') do
returns(false) {elb.cross_zone_load_balancing?}
elb.cross_zone_load_balancing = true
@@ -330,9 +352,5 @@ Shindo.tests('AWS::ELB | models', ['aws', 'elb']) do
end
Fog::AWS[:iam].delete_server_certificate(@key_name)
-
- @igw.destroy
- @subnet.destroy
- @vpc.destroy
end
end
diff --git a/tests/aws/models/glacier/model_tests.rb b/tests/aws/models/glacier/model_tests.rb
index 45a2b5c..3fd9d41 100644
--- a/tests/aws/models/glacier/model_tests.rb
+++ b/tests/aws/models/glacier/model_tests.rb
@@ -13,7 +13,7 @@ Shindo.tests('AWS::Glacier | models', ['aws', 'glacier']) do
end
tests('all') do
- tests('contains vault').returns(true) { Fog::AWS[:glacier].vaults.collect {|vault| vault.id}.include?(vault.id)}
+ tests('contains vault').returns(true) { Fog::AWS[:glacier].vaults.map {|vault| vault.id}.include?(vault.id)}
end
tests('destroy') do
@@ -44,4 +44,4 @@ Shindo.tests('AWS::Glacier | models', ['aws', 'glacier']) do
end
vault.destroy
end
-end
\ No newline at end of file
+end
diff --git a/tests/aws/models/iam/access_keys_tests.rb b/tests/aws/models/iam/access_keys_tests.rb
index da77ddd..35fca76 100644
--- a/tests/aws/models/iam/access_keys_tests.rb
+++ b/tests/aws/models/iam/access_keys_tests.rb
@@ -2,16 +2,16 @@ Shindo.tests("Fog::Compute[:iam] | access_keys", ['aws','iam']) do
Fog.mock!
iam = Fog::AWS[:iam]
-
+
@username = 'fake_user'
@user = iam.users.create(:id => @username)
-
+
tests('#all', 'there are no access keys for a new user').succeeds do
@user.access_keys.empty?
end
-
-
+
+
tests('#create','an access key').succeeds do
access_key = @user.access_keys.create
access_key.id =~ /[A-Z0-9]{20}/
@@ -20,13 +20,13 @@ Shindo.tests("Fog::Compute[:iam] | access_keys", ['aws','iam']) do
access_key.username == @username
@access_key_id = access_key.id
end
-
+
@user.access_keys.create
-
+
tests('#all','there are two access keys').succeeds do
@user.access_keys.size == 2
end
-
+
tests('#get') do
tests('a valid access key id').succeeds do
access_key = @user.access_keys.get(@access_key_id)
@@ -35,19 +35,19 @@ Shindo.tests("Fog::Compute[:iam] | access_keys", ['aws','iam']) do
access_key.status == "Active"
access_key.username == @username
end
-
+
tests('an invalid access key').succeeds do
@user.access_keys.get('non-existing') == nil
end
end
-
+
tests('#destroy', 'decrease by one the number of access keys').succeeds do
size = @user.access_keys.size
@user.access_keys.get(@access_key_id).destroy
@user.access_keys.size == ( size - 1 )
end
-
+
# clean up
@user.destroy
-
-end
\ No newline at end of file
+
+end
diff --git a/tests/aws/models/iam/policies_tests.rb b/tests/aws/models/iam/policies_tests.rb
index e92a25a..a50eeda 100644
--- a/tests/aws/models/iam/policies_tests.rb
+++ b/tests/aws/models/iam/policies_tests.rb
@@ -2,55 +2,55 @@ Shindo.tests("Fog::Compute[:iam] | policies", ['aws','iam']) do
Fog.mock!
iam = Fog::AWS[:iam]
-
+
@username = 'fake_user'
@user = iam.users.create(:id => @username)
@policy_document = {"Statement"=>[{"Action"=>["sqs:*"], "Effect"=>"Allow", "Resource"=>"*"}]}
@policy_name = 'fake-sqs-policy'
-
+
tests('#all', 'there is no policies').succeeds do
@user.policies.empty?
end
-
- tests('#create') do
+
+ tests('#create') do
tests('a valid policy').succeeds do
policy = @user.policies.create(:id => @policy_name, :document => @policy_document)
policy.id == @policy_name
policy.username == @username
policy.document == @policy_document
end
-
+
# The mocking doesn't validate the document policy
#tests('an invalid valid policy').succeeds do
# raises(Fog::AWS::IAM::Error) { @user.policies.create(id: 'non-valid-document', document: 'invalid json blob') }
#end
end
-
+
@user.policies.create(:id => 'another-policy', :document => {})
-
+
tests('#all','there are two policies').succeeds do
@user.policies.size == 2
end
-
+
tests('#get') do
tests('a valid policy').succeeds do
policy = @user.policies.get(@policy_name)
policy.id == @polic_name
policy.username == @username
- policy.document == @policy_document
+ policy.document == @policy_document
end
-
+
tests('an invalid policy').succeeds do
@user.policies.get('non-existing') == nil
end
end
-
+
tests('#destroy').succeeds do
@user.policies.get(@policy_name).destroy
end
-
+
# clean up
@user.destroy
-
-end
\ No newline at end of file
+
+end
diff --git a/tests/aws/models/iam/roles_tests.rb b/tests/aws/models/iam/roles_tests.rb
index 338a4ce..40da23e 100644
--- a/tests/aws/models/iam/roles_tests.rb
+++ b/tests/aws/models/iam/roles_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests("Fog::Compute[:iam] | roles", ['aws','iam']) do
pending if Fog.mocking?
-
+
@iam = Fog::AWS[:iam]
@role_one_name = 'fake_role_one'
@role_two_name = 'fake_role_two'
@@ -18,15 +18,15 @@ Shindo.tests("Fog::Compute[:iam] | roles", ['aws','iam']) do
tests('#all','there is only one role').succeeds do
@iam.roles.size == 1
end
-
+
tests('#all','the only role should match').succeeds do
@iam.roles.first.rolename == @role_one_name
end
-
+
tests('#create','a second role').succeeds do
@role_two = @iam.roles.create(:rolename => @role_two_name)
@role_two.rolename == @role_two_name
- end
+ end
tests('#all','there are two roles').succeeds do
@iam.roles.size == 2
@@ -39,7 +39,7 @@ Shindo.tests("Fog::Compute[:iam] | roles", ['aws','iam']) do
tests('#get',"returns nil if the role doesn't exists").succeeds do
@iam.roles.get('non-exists') == nil
end
-
+
tests('#create', 'assigns path').succeeds do
@role_three = @iam.roles.create(:rolename => @role_three_name, :path => @role_three_path)
@role_three.path == @role_three_path
@@ -53,11 +53,11 @@ Shindo.tests("Fog::Compute[:iam] | roles", ['aws','iam']) do
tests('#destroy','an existing role').succeeds do
@iam.roles.get(@role_one_name).destroy
end
-
+
tests('#destroy','clean up remaining roles').succeeds do
@iam.roles.get(@role_two_name).destroy
@iam.roles.get(@role_three_name).destroy
@iam.roles.get(@role_four_name).destroy
end
-
-end
\ No newline at end of file
+
+end
diff --git a/tests/aws/models/iam/users_tests.rb b/tests/aws/models/iam/users_tests.rb
index 8c93fc4..ea937c6 100644
--- a/tests/aws/models/iam/users_tests.rb
+++ b/tests/aws/models/iam/users_tests.rb
@@ -17,15 +17,15 @@ Shindo.tests("Fog::Compute[:iam] | users", ['aws','iam']) do
tests('#all','there is only one user').succeeds do
@iam.users.size == 1
end
-
+
tests('#all','the only user should match').succeeds do
@iam.users.first.id == @user_one_name
end
-
+
tests('#create','a second user').succeeds do
@user_two = @iam.users.create(:id => @user_two_name)
@user_two.id == @user_two_name
- end
+ end
tests('#all','there are two users').succeeds do
@iam.users.size == 2
@@ -38,15 +38,15 @@ Shindo.tests("Fog::Compute[:iam] | users", ['aws','iam']) do
tests('#get',"returns nil if the user doesn't exists").succeeds do
@iam.users.get('non-exists') == nil
end
-
+
tests('#policies','it has no policies').succeeds do
@iam.users.get(@user_one_name).policies.empty?
end
-
+
tests('#access_keys','it has no keys').succeeds do
@iam.users.get(@user_one_name).access_keys.empty?
end
-
+
tests('#create', 'assigns path').succeeds do
@user_three = @iam.users.create(:id => @user_three_name, :path => @user_three_path)
@user_three.path == @user_three_path
@@ -60,9 +60,9 @@ Shindo.tests("Fog::Compute[:iam] | users", ['aws','iam']) do
tests('#destroy','an existing user').succeeds do
@iam.users.get(@user_one_name).destroy
end
-
+
tests('#destroy','clean up remaining user').succeeds do
@iam.users.get(@user_two_name).destroy
end
-
-end
\ No newline at end of file
+
+end
diff --git a/tests/aws/models/rds/parameter_group_tests.rb b/tests/aws/models/rds/parameter_group_tests.rb
index 4ee10d9..2cae851 100644
--- a/tests/aws/models/rds/parameter_group_tests.rb
+++ b/tests/aws/models/rds/parameter_group_tests.rb
@@ -16,7 +16,7 @@ Shindo.tests("AWS::RDS | parameter_group", ['aws', 'rds']) do
@instance.modify([{:name => 'query_cache_size', :value => '6553600', :apply_method => 'immediate'}])
tests 'parameter has changed' do
- returns('6553600'){@instance.parameters.detect {|p| p.name == 'query_cache_size'}.value}
+ returns('6553600'){@instance.parameters.find {|p| p.name == 'query_cache_size'}.value}
end
end
diff --git a/tests/aws/models/rds/security_group_tests.rb b/tests/aws/models/rds/security_group_tests.rb
index 821a5ba..cf42f6b 100644
--- a/tests/aws/models/rds/security_group_tests.rb
+++ b/tests/aws/models/rds/security_group_tests.rb
@@ -11,7 +11,7 @@ Shindo.tests("AWS::RDS | security_group", ['aws', 'rds']) do
@instance.authorize_ec2_security_group(@ec2_sec_group.name)
returns('authorizing') do
- @instance.ec2_security_groups.detect{|h| h['EC2SecurityGroupName'] == @ec2_sec_group.name}['Status']
+ @instance.ec2_security_groups.find{|h| h['EC2SecurityGroupName'] == @ec2_sec_group.name}['Status']
end
end
@@ -23,7 +23,7 @@ Shindo.tests("AWS::RDS | security_group", ['aws', 'rds']) do
@instance.revoke_ec2_security_group(@ec2_sec_group.name)
returns('revoking') do
- @instance.ec2_security_groups.detect{|h| h['EC2SecurityGroupName'] == @ec2_sec_group.name}['Status']
+ @instance.ec2_security_groups.find{|h| h['EC2SecurityGroupName'] == @ec2_sec_group.name}['Status']
end
@instance.wait_for { ready? }
@@ -35,7 +35,7 @@ Shindo.tests("AWS::RDS | security_group", ['aws', 'rds']) do
tests("#authorize_cidrip").succeeds do
@cidr = '127.0.0.1/32'
@instance.authorize_cidrip(@cidr)
- returns('authorizing') { @instance.ip_ranges.detect{|h| h['CIDRIP'] == @cidr}['Status'] }
+ returns('authorizing') { @instance.ip_ranges.find{|h| h['CIDRIP'] == @cidr}['Status'] }
end
tests("#revoke_cidrip").succeeds do
@@ -43,7 +43,7 @@ Shindo.tests("AWS::RDS | security_group", ['aws', 'rds']) do
@instance.wait_for { ready? }
@instance.revoke_cidrip(@cidr)
- returns('revoking') { @instance.ip_ranges.detect{|h| h['CIDRIP'] == @cidr}['Status'] }
+ returns('revoking') { @instance.ip_ranges.find{|h| h['CIDRIP'] == @cidr}['Status'] }
@instance.wait_for { ready? }
returns(false) { @instance.ip_ranges.any?{|h| h['CIDRIP'] == @cidr} }
diff --git a/tests/aws/models/rds/snapshot_tests.rb b/tests/aws/models/rds/snapshot_tests.rb
index 262c453..66e1e32 100644
--- a/tests/aws/models/rds/snapshot_tests.rb
+++ b/tests/aws/models/rds/snapshot_tests.rb
@@ -10,4 +10,3 @@ Shindo.tests("AWS::RDS | snapshot", ['aws', 'rds']) do
@server.destroy
end
-
diff --git a/tests/aws/models/rds/snapshots_tests.rb b/tests/aws/models/rds/snapshots_tests.rb
index 10ac42f..0e69ec7 100644
--- a/tests/aws/models/rds/snapshots_tests.rb
+++ b/tests/aws/models/rds/snapshots_tests.rb
@@ -10,4 +10,3 @@ Shindo.tests("AWS::RDS | snapshots", ['aws', 'rds']) do
@server.destroy
end
-
diff --git a/tests/aws/models/storage/file_tests.rb b/tests/aws/models/storage/file_tests.rb
index 94623b5..4e73c81 100644
--- a/tests/aws/models/storage/file_tests.rb
+++ b/tests/aws/models/storage/file_tests.rb
@@ -34,7 +34,6 @@ Shindo.tests("Storage[:aws] | file", ["aws"]) do
end
end
-
@directory.files.create(:key => @instance.key)
@instance.destroy
@@ -75,6 +74,16 @@ Shindo.tests("Storage[:aws] | file", ["aws"]) do
end
+ acl = Fog::Storage[:aws].get_object_acl(@directory.key, @instance.key).body["AccessControlList"]
+
+ tests("#acl").returns(acl) do
+ @instance.acl
+ end
+
+ tests("#public?").returns(acl.any? {|grant| grant['Grantee']['URI'] == 'http://acs.amazonaws.com/groups/global/AllUsers' && grant['Permission'] == 'READ'}) do
+ @instance.public?
+ end
+
end
@directory.versions.each(&:destroy)
diff --git a/tests/aws/models/storage/url_tests.rb b/tests/aws/models/storage/url_tests.rb
index 8f4a1fc..9345b75 100644
--- a/tests/aws/models/storage/url_tests.rb
+++ b/tests/aws/models/storage/url_tests.rb
@@ -10,7 +10,7 @@ Shindo.tests('AWS | url', ["aws"]) do
:aws_secret_access_key => 'abc',
:region => 'us-east-1'
)
-
+
@file = @storage.directories.new(:key => 'fognonbucket').files.new(:key => 'test.txt')
if Fog.mock?
diff --git a/tests/aws/models/storage/version_tests.rb b/tests/aws/models/storage/version_tests.rb
index bfe3c1a..cf21aba 100644
--- a/tests/aws/models/storage/version_tests.rb
+++ b/tests/aws/models/storage/version_tests.rb
@@ -40,7 +40,7 @@ Shindo.tests("Storage[:aws] | version", ["aws"]) do
tests("#destroy removes the specific version").returns(false) do
@version_instance.destroy
- @instance.versions.all.collect(&:version).include?(@version_instance.version)
+ @instance.versions.all.map(&:version).include?(@version_instance.version)
end
end
diff --git a/tests/aws/models/storage/versions_tests.rb b/tests/aws/models/storage/versions_tests.rb
index ec1c0f8..fa02fb3 100644
--- a/tests/aws/models/storage/versions_tests.rb
+++ b/tests/aws/models/storage/versions_tests.rb
@@ -32,21 +32,21 @@ Shindo.tests("Storage[:aws] | versions", ["aws"]) do
end
tests('#versions returns the correct versions').returns(versions) do
- @instance.versions.all.collect(&:version)
+ @instance.versions.all.map(&:version)
end
end
tests("#all") do
tests("#all for a directory returns all versions, regardless of key").returns(versions) do
- @instance.versions.all.collect(&:version)
+ @instance.versions.all.map(&:version)
end
tests("#all for file returns only versions for that file").returns(1) do
- @instance.files.get('two').versions.all.collect(&:version).size
+ @instance.files.get('two').versions.all.map(&:version).size
end
tests("#all for file returns only versions for that file").returns(versions.last) do
- @instance.files.get('two').versions.all.collect(&:version).first
+ @instance.files.get('two').versions.all.map(&:version).first
end
end
diff --git a/tests/aws/requests/auto_scaling/helper.rb b/tests/aws/requests/auto_scaling/helper.rb
index 1487003..570dbd7 100644
--- a/tests/aws/requests/auto_scaling/helper.rb
+++ b/tests/aws/requests/auto_scaling/helper.rb
@@ -1,7 +1,6 @@
class AWS
module AutoScaling
module Formats
-
BASIC = {
'ResponseMetadata' => {'RequestId' => String}
}
@@ -224,7 +223,6 @@ class AWS
'Activity' => [ACTIVITY]
}
})
-
end
end
end
diff --git a/tests/aws/requests/auto_scaling/tag_tests.rb b/tests/aws/requests/auto_scaling/tag_tests.rb
index 30e205c..f445065 100644
--- a/tests/aws/requests/auto_scaling/tag_tests.rb
+++ b/tests/aws/requests/auto_scaling/tag_tests.rb
@@ -40,7 +40,7 @@ Shindo.tests('AWS::AutoScaling | tag requests', ['aws', 'auto_scaling']) do
tests("#describe_auto_scaling_groups(#{asg_name}").formats(AWS::AutoScaling::Formats::DESCRIBE_AUTO_SCALING_GROUPS) do
body = Fog::AWS[:auto_scaling].describe_auto_scaling_groups('AutoScalingGroupNames' => asg_name).body
auto_scaling_group = body['DescribeAutoScalingGroupsResult']['AutoScalingGroups'].first
- returns(true) { auto_scaling_group.has_key?('Tags') }
+ returns(true) { auto_scaling_group.key?('Tags') }
returns(true) { auto_scaling_group['Tags'].size == 1 }
returns(true) { auto_scaling_group['Tags'].first == asg_tag }
body
diff --git a/tests/aws/requests/cloud_watch/get_metric_statistics_tests.rb b/tests/aws/requests/cloud_watch/get_metric_statistics_tests.rb
index 64b396d..8379578 100644
--- a/tests/aws/requests/cloud_watch/get_metric_statistics_tests.rb
+++ b/tests/aws/requests/cloud_watch/get_metric_statistics_tests.rb
@@ -12,7 +12,7 @@ Shindo.tests('AWS::CloudWatch | metric requests', ['aws', 'cloudwatch']) do
'Average' => Float,
'Sum' => Float,
'SampleCount' => Float
- }],
+ }],
},
'ResponseMetadata' => {
'RequestId' => String
diff --git a/tests/aws/requests/cloud_watch/put_metric_data_tests.rb b/tests/aws/requests/cloud_watch/put_metric_data_tests.rb
index 9165e98..ed0381a 100644
--- a/tests/aws/requests/cloud_watch/put_metric_data_tests.rb
+++ b/tests/aws/requests/cloud_watch/put_metric_data_tests.rb
@@ -22,7 +22,7 @@ Shindo.tests('AWS::CloudWatch | metric requests', ['aws', 'cloudwatch']) do
tests('#puts more than one').succeeds do
pending if Fog.mocking?
- datapoints = (0...3).collect do |i|
+ datapoints = (0...3).map do |i|
dp = {'MetricName' => "#{i}RequestTest", 'Unit' => 'None', 'Value' => i}
if i%2==0
dp['Dimensions'] = [{'Name' => 'Ruler', 'Value' => "measurement_#{i}"}]
diff --git a/tests/aws/requests/compute/assign_private_ip_tests.rb b/tests/aws/requests/compute/assign_private_ip_tests.rb
index 3af9507..0ad005e 100644
--- a/tests/aws/requests/compute/assign_private_ip_tests.rb
+++ b/tests/aws/requests/compute/assign_private_ip_tests.rb
@@ -1,6 +1,7 @@
Shindo.tests('Fog::Compute[:aws] | internet_gateway requests', ['aws']) do
tests('success') do
+ Fog::Compute::AWS::Mock.reset if Fog.mocking?
@vpc=Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
@vpc_id = @vpc.id
@@ -29,6 +30,8 @@ Shindo.tests('Fog::Compute[:aws] | internet_gateway requests', ['aws']) do
end
tests('failure') do
+ Fog::Compute::AWS::Mock.reset if Fog.mocking?
+
@vpc=Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
@vpc_id = @vpc.id
@@ -49,4 +52,4 @@ Shindo.tests('Fog::Compute[:aws] | internet_gateway requests', ['aws']) do
@subnet.destroy
@vpc.destroy
end
-end
\ No newline at end of file
+end
diff --git a/tests/aws/requests/compute/client_tests.rb b/tests/aws/requests/compute/client_tests.rb
index 919cf27..6ef2bb2 100644
--- a/tests/aws/requests/compute/client_tests.rb
+++ b/tests/aws/requests/compute/client_tests.rb
@@ -3,20 +3,20 @@ Shindo.tests('Fog::Compute[:aws] | account tests', ['aws']) do
tests('check for vpc') do
tests('supports both vpc and ec2 in compatibility mode').succeeds do
client = Fog::Compute[:aws]
- client.ec2_compatibility_mode(true)
+ client.enable_ec2_classic
data = Fog::Compute[:aws].describe_account_attributes.body
data['accountAttributeSet'].any? { |s| [*s["values"]].include?("VPC") && [*s["values"]].include?("EC2") }
end
tests('supports VPC in vpc mode').succeeds do
client = Fog::Compute[:aws]
- client.ec2_compatibility_mode(true)
+ client.enable_ec2_classic
data = Fog::Compute[:aws].describe_account_attributes.body
data['accountAttributeSet'].any? { |s| [*s["values"]].include?("VPC") }
end
tests('does not support VPC and EC2 in vpc mode').succeeds do
client = Fog::Compute[:aws]
- client.ec2_compatibility_mode(false)
+ client.disable_ec2_classic
data = Fog::Compute[:aws].describe_account_attributes.body
!data['accountAttributeSet'].any? { |s| [*s["values"]].include?("VPC") && [*s["values"]].include?("EC2") }
end
diff --git a/tests/aws/requests/compute/dhcp_options_tests.rb b/tests/aws/requests/compute/dhcp_options_tests.rb
index c1ff8c6..f222e25 100644
--- a/tests/aws/requests/compute/dhcp_options_tests.rb
+++ b/tests/aws/requests/compute/dhcp_options_tests.rb
@@ -13,7 +13,6 @@ Shindo.tests('Fog::Compute[:aws] | dhcp_options requests', ['aws']) do
@vpc=Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
@vpc_id = @vpc.id
-
tests('#create_dhcp_options').formats(@dhcp_options_format) do
data = Fog::Compute[:aws].create_dhcp_options({'domain-name' => 'example.com', 'domain-name-servers' => '10.10.10.10'}).body
@dopt_id = data['dhcpOptionsSet'].first['dhcpOptionsId']
diff --git a/tests/aws/requests/compute/helper.rb b/tests/aws/requests/compute/helper.rb
index 1f072ef..a6f49fa 100644
--- a/tests/aws/requests/compute/helper.rb
+++ b/tests/aws/requests/compute/helper.rb
@@ -1,16 +1,10 @@
class AWS
-
module Compute
-
module Formats
-
BASIC = {
'requestId' => String,
'return' => ::Fog::Boolean
}
-
end
-
end
-
end
diff --git a/tests/aws/requests/compute/image_tests.rb b/tests/aws/requests/compute/image_tests.rb
index 6630f73..2ba422c 100644
--- a/tests/aws/requests/compute/image_tests.rb
+++ b/tests/aws/requests/compute/image_tests.rb
@@ -39,7 +39,7 @@ Shindo.tests('Fog::Compute[:aws] | image requests', ['aws']) do
'requestId' => String,
'imageId' => String
}
-
+
@image_copy_result = {
'requestId' => String,
'imageId' => String
@@ -73,7 +73,7 @@ Shindo.tests('Fog::Compute[:aws] | image requests', ['aws']) do
Fog::Compute[:aws].images.get(create_image_response.body['imageId']) != nil
end
@server.destroy
-
+
tests("#copy_image (#{@image_id}, 'eu-west-1')").formats(@image_copy_result) do
data = Fog::Compute.new(:provider => :aws, :region => "us-west-1", :version => "2013-02-01").copy_image(@image_id, "eu-east-1").body
@eu_image_id = data['imageId']
@@ -133,7 +133,7 @@ Shindo.tests('Fog::Compute[:aws] | image requests', ['aws']) do
Fog::Compute[:aws].describe_images('Owner' => @other_image['imageOwnerAlias'], 'image-id' => @image_id).body
end
end
-
+
#NOTE: waiting for the image to complete can sometimes take up to 1 hour
# for quicker tests: uncomment the rest of this block
#Fog.wait_for { Fog::Compute.new(:provider => :aws, :region => "us-west-1").snapshots.get(@eu_image_id) }
@@ -141,7 +141,7 @@ Shindo.tests('Fog::Compute[:aws] | image requests', ['aws']) do
#tests("#delete_snapshots(#{@eu_image_id})").formats(AWS::Compute::Formats::BASIC) do
# Fog::Compute.new(:provider => :aws, :region => "us-west-1").delete_snapshot(@eu_image_id).body
#end
-
+
end
tests('failure') do
diff --git a/tests/aws/requests/compute/instance_tests.rb b/tests/aws/requests/compute/instance_tests.rb
index 3e2f61b..0302776 100644
--- a/tests/aws/requests/compute/instance_tests.rb
+++ b/tests/aws/requests/compute/instance_tests.rb
@@ -28,6 +28,7 @@ Shindo.tests('Fog::Compute[:aws] | instance requests', ['aws']) do
'privateDnsName' => NilClass,
'productCodes' => Array,
'reason' => Fog::Nullable::String,
+ 'rootDeviceName' => Fog::Nullable::String,
'rootDeviceType' => String,
'sourceDestCheck' => Fog::Nullable::Boolean,
'subnetId' => Fog::Nullable::String,
@@ -80,7 +81,6 @@ Shindo.tests('Fog::Compute[:aws] | instance requests', ['aws']) do
'timestamp' => Time
}
-
@terminate_instances_format = {
'instancesSet' => [{
'currentState' => {'code' => Integer, 'name' => String},
@@ -176,7 +176,7 @@ Shindo.tests('Fog::Compute[:aws] | instance requests', ['aws']) do
key = Fog::Compute[:aws].key_pairs.create(:name => key_name)
tests("#run_instances").formats(@run_instances_format) do
- data = Fog::Compute[:aws].run_instances(@ami, 1, 1, 'InstanceType' => 't1.micro', 'KeyName' => key_name).body
+ data = Fog::Compute[:aws].run_instances(@ami, 1, 1, 'InstanceType' => 't1.micro', 'KeyName' => key_name, 'BlockDeviceMapping' => [{"DeviceName" => "/dev/sdp1", "VirtualName" => nil, "Ebs.VolumeSize" => 15}]).body
@instance_id = data['instancesSet'].first['instanceId']
data
end
@@ -204,11 +204,15 @@ Shindo.tests('Fog::Compute[:aws] | instance requests', ['aws']) do
# Test network interface attachment
tests('#describe_instances networkInterfaces') do
- data = Fog::Compute[:aws].create_network_interface('subnet-12345678').body
+ vpc = Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/16')
+ subnet = Fog::Compute[:aws].subnets.create('vpc_id' => vpc.id, 'cidr_block' => '10.0.10.0/16')
+ data = Fog::Compute[:aws].create_network_interface(subnet.subnet_id).body
@network_interface_id = data['networkInterface']['networkInterfaceId']
- Fog::Compute[:aws].attach_network_interface(@network_interface_id, @instance_id, 1)
+ Fog::Compute[:aws].attach_network_interface(@network_interface_id, @instance_id, '1')
body = Fog::Compute[:aws].describe_instances('instance-id' => "#{@instance_id}").body
tests("returns 1 attachment").returns(1) { body['reservationSet'].first['instancesSet'].first['networkInterfaces'].size }
+ subnet.destroy
+ vpc.destroy
end
another_server.destroy
@@ -269,6 +273,9 @@ Shindo.tests('Fog::Compute[:aws] | instance requests', ['aws']) do
tests('failure') do
+ tests("#run_instances(nil, 1, 1, {'SubnetId'=>'subnet-00000000'}").raises(::Fog::Compute::AWS::Error) do
+ Fog::Compute[:aws].run_instances(nil, 1, 1, {'SubnetId' => 'subnet-000000'})
+ end
tests("#get_console_output('i-00000000')").raises(Fog::Compute::AWS::NotFound) do
Fog::Compute[:aws].get_console_output('i-00000000')
end
diff --git a/tests/aws/requests/compute/internet_gateway_tests.rb b/tests/aws/requests/compute/internet_gateway_tests.rb
index 92d5ce8..be1c93e 100644
--- a/tests/aws/requests/compute/internet_gateway_tests.rb
+++ b/tests/aws/requests/compute/internet_gateway_tests.rb
@@ -10,13 +10,13 @@ Shindo.tests('Fog::Compute[:aws] | internet_gateway requests', ['aws']) do
}
tests('success') do
+ Fog::Compute::AWS::Mock.reset if Fog.mocking?
@vpc=Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
@vpc_id = @vpc.id
@subnet=Fog::Compute[:aws].subnets.create('vpc_id' => @vpc_id, 'cidr_block' => '10.0.10.0/24')
@subnet_id = @subnet.subnet_id
@igw_id = nil
-
tests('#create_internet_gateway').formats(@internet_gateways_format) do
data = Fog::Compute[:aws].create_internet_gateway().body
@igw_id = data['internetGatewaySet'].first['internetGatewayId']
@@ -26,7 +26,7 @@ Shindo.tests('Fog::Compute[:aws] | internet_gateway requests', ['aws']) do
tests('#describe_internet_gateways').formats(@internet_gateways_format) do
Fog::Compute[:aws].describe_internet_gateways.body
end
-
+
tests('#describe_internet_gateways with tags').formats(@internet_gateways_format) do
Fog::Compute[:aws].create_tags @igw_id, {"environment" => "production"}
Fog::Compute[:aws].describe_internet_gateways.body
diff --git a/tests/aws/requests/compute/network_acl_tests.rb b/tests/aws/requests/compute/network_acl_tests.rb
index 59fedcf..3004cf8 100644
--- a/tests/aws/requests/compute/network_acl_tests.rb
+++ b/tests/aws/requests/compute/network_acl_tests.rb
@@ -34,6 +34,8 @@ Shindo.tests('Fog::Compute[:aws] | network acl requests', ['aws']) do
}
tests('success') do
+ Fog::Compute::AWS::Mock.reset if Fog.mocking?
+
@vpc = Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
@subnet = Fog::Compute[:aws].subnets.create('vpc_id' => @vpc.id, 'cidr_block' => '10.0.10.16/28')
@network_acl = nil
@@ -75,12 +77,36 @@ Shindo.tests('Fog::Compute[:aws] | network acl requests', ['aws']) do
Fog::Compute[:aws].replace_network_acl_association(@assoc_id, default_acl['networkAclId']).body
end
+ # Create another network acl to test tag filters
+ test_tags = {'foo' => 'bar'}
+ @another_acl = Fog::Compute[:aws].network_acls.create :vpc_id => @vpc.id, :tags => test_tags
+ tests("#describe_network_acls('tag-key' => 'foo')").formats(@network_acls_format) do
+ body = Fog::Compute[:aws].describe_network_acls('tag-key' => 'foo').body
+ tests("returns 1 acl").returns(1) { body['networkAclSet'].size }
+ body
+ end
+
+ tests("#describe_network_acls('tag-value' => 'bar')").formats(@network_acls_format) do
+ body = Fog::Compute[:aws].describe_network_acls('tag-value' => 'bar').body
+ tests("returns 1 acl").returns(1) { body['networkAclSet'].size }
+ body
+ end
+
+ tests("#describe_network_acls('tag:foo' => 'bar')").formats(@network_acls_format) do
+ body = Fog::Compute[:aws].describe_network_acls('tag:foo' => 'bar').body
+ tests("returns 1 acl").returns(1) { body['networkAclSet'].size }
+ body
+ end
+
tests('#delete_network_acl').formats(AWS::Compute::Formats::BASIC) do
Fog::Compute[:aws].delete_network_acl(@network_acl['networkAclId']).body
end
# Clean up
+ Fog::Compute[:aws].delete_tags(@another_acl.identity, test_tags)
+ @another_acl.destroy
@subnet.destroy
@vpc.destroy
+ Fog::Compute::AWS::Mock.reset if Fog.mocking?
end
end
diff --git a/tests/aws/requests/compute/network_interface_tests.rb b/tests/aws/requests/compute/network_interface_tests.rb
index f08d7d6..db3d927 100644
--- a/tests/aws/requests/compute/network_interface_tests.rb
+++ b/tests/aws/requests/compute/network_interface_tests.rb
@@ -36,6 +36,8 @@ Shindo.tests('Fog::Compute[:aws] | network interface requests', ['aws']) do
}
tests('success') do
+ Fog::Compute::AWS::Mock.reset if Fog.mocking?
+
# Create environment
@vpc = Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
@subnet = Fog::Compute[:aws].subnets.create('vpc_id' => @vpc.id, 'cidr_block' => '10.0.10.16/28')
@@ -120,11 +122,12 @@ Shindo.tests('Fog::Compute[:aws] | network interface requests', ['aws']) do
@server = Fog::Compute[:aws].servers.create({:flavor_id => 'm1.small', :subnet_id => @subnet_id })
@server.wait_for { ready? }
- @instance_id=@server.id
+ @instance_id=@server.id
- # attach
+ # attach
+ @device_index = 1
tests('#attach_network_interface').formats(@attach_network_interface_format) do
- data = Fog::Compute[:aws].attach_network_interface(@nic_id, @instance_id, 1).body
+ data = Fog::Compute[:aws].attach_network_interface(@nic_id, @instance_id, @device_index).body
@attachment_id = data['attachmentId']
data
end
@@ -201,4 +204,47 @@ Shindo.tests('Fog::Compute[:aws] | network interface requests', ['aws']) do
@subnet.destroy
@vpc.destroy
end
+
+ tests('failure') do
+
+ # Attempt to attach a nonexistent interface
+ tests("#attach_network_interface('eni-00000000', 'i-00000000', '1')").raises(::Fog::Compute::AWS::NotFound) do
+ Fog::Compute[:aws].attach_network_interface('eni-00000000', 'i-00000000', '1')
+ end
+
+ # Create environment
+ @vpc = Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
+ @subnet = Fog::Compute[:aws].subnets.create('vpc_id' => @vpc.id, 'cidr_block' => '10.0.10.16/28')
+
+ @subnet_id = @subnet.subnet_id
+
+ data = Fog::Compute[:aws].create_network_interface(@subnet_id).body
+ @nic_id = data['networkInterface']['networkInterfaceId']
+
+ # Attempt to re-use an existing IP for another ENI
+ tests("#create_network_interface('#{@subnet_id}', " \
+ "{'PrivateIpAddress' => " \
+ "'#{data['networkInterface']['privateIpAddress']}'}").raises(::Fog::Compute::AWS::Error) do
+ Fog::Compute[:aws].create_network_interface(@subnet_id, {'PrivateIpAddress' => data['networkInterface']['privateIpAddress']})
+ end
+
+ # Attempt to attach a valid ENI to a nonexistent instance.
+ tests("#attach_network_interface('#{@nic_id}', 'i-00000000', '0')").raises(::Fog::Compute::AWS::NotFound) do
+ Fog::Compute[:aws].attach_network_interface(@nic_id, 'i-00000000', '0')
+ end
+
+ @server = Fog::Compute[:aws].servers.create({:flavor_id => 'm1.small', :subnet_id => @subnet_id })
+ @server.wait_for { ready? }
+ @instance_id=@server.id
+ @device_index = 1
+ data = Fog::Compute[:aws].attach_network_interface(@nic_id, @instance_id, @device_index).body
+
+ # Attempt to attach two ENIs to the same instance with the same device
+ # index.
+ tests("#attach_network_interface('#{@nic_id}', '#{@instance_id}', '#{@device_index}')").raises(::Fog::Compute::AWS::Error) do
+ Fog::Compute[:aws].attach_network_interface(@nic_id, @instance_id, @device_index)
+ end
+
+ Fog::Compute::AWS::Mock.reset if Fog.mocking?
+ end
end
diff --git a/tests/aws/requests/compute/region_tests.rb b/tests/aws/requests/compute/region_tests.rb
index 06813a1..4a89ca2 100644
--- a/tests/aws/requests/compute/region_tests.rb
+++ b/tests/aws/requests/compute/region_tests.rb
@@ -21,12 +21,30 @@ Shindo.tests('Fog::Compute[:aws] | region requests', ['aws']) do
tests("#incorrect_region") do
raises(ArgumentError, "Unknown region: world-antarctica-1") do
- Fog::Compute::AWS.new({:aws_access_key_id => 'dummykey',
- :aws_secret_access_key => 'dummysecret',
+ Fog::Compute::AWS.new({:aws_access_key_id => 'dummykey',
+ :aws_secret_access_key => 'dummysecret',
:aws_session_token => 'dummytoken',
- :region => "world-antarctica-1"})
+ :region => 'world-antarctica-1'})
+ end
+
+ end
+
+ tests("#unknown_endpoint").formats(@regions_format) do
+ Fog::Compute::AWS.new({:aws_access_key_id => 'dummykey',
+ :aws_secret_access_key => 'dummysecret',
+ :aws_session_token => 'dummytoken',
+ :region => 'world-antarctica-1',
+ :endpoint => 'http://aws-clone.example'}).describe_regions.body
+ end
+
+ tests("#invalid_endpoint") do
+ raises(Fog::Compute::AWS::InvalidURIError) do
+ Fog::Compute::AWS.new({:aws_access_key_id => 'dummykey',
+ :aws_secret_access_key => 'dummysecret',
+ :aws_session_token => 'dummytoken',
+ :region => 'world-antarctica-1',
+ :endpoint => 'aws-clone.example'})
end
-
end
end
diff --git a/tests/aws/requests/compute/route_tests.rb b/tests/aws/requests/compute/route_tests.rb
index e1e3a41..d6d775f 100644
--- a/tests/aws/requests/compute/route_tests.rb
+++ b/tests/aws/requests/compute/route_tests.rb
@@ -39,6 +39,7 @@ Shindo.tests('Fog::Compute[:aws] | route table requests', ['aws']) do
'requestId' => String
}
+ Fog::Compute::AWS::Mock.reset if Fog.mocking?
vpc = Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
if !Fog.mocking?
vpc.wait_for { state.eql? "available" }
diff --git a/tests/aws/requests/compute/security_group_tests.rb b/tests/aws/requests/compute/security_group_tests.rb
index ceea99e..fe024c9 100644
--- a/tests/aws/requests/compute/security_group_tests.rb
+++ b/tests/aws/requests/compute/security_group_tests.rb
@@ -1,4 +1,7 @@
Shindo.tests('Fog::Compute[:aws] | security group requests', ['aws']) do
+ # See https://github.com/fog/fog/issues/2932hj0
+ pending
+
@create_security_group_format = {
'requestId' => String,
'groupId' => String,
diff --git a/tests/aws/requests/compute/snapshot_tests.rb b/tests/aws/requests/compute/snapshot_tests.rb
index 601afa6..0a904e1 100644
--- a/tests/aws/requests/compute/snapshot_tests.rb
+++ b/tests/aws/requests/compute/snapshot_tests.rb
@@ -2,6 +2,7 @@ Shindo.tests('Fog::Compute[:aws] | snapshot requests', ['aws']) do
@snapshot_format = {
'description' => Fog::Nullable::String,
+ 'encrypted' => Fog::Boolean,
'ownerId' => String,
'progress' => String,
'snapshotId' => String,
diff --git a/tests/aws/requests/compute/subnet_tests.rb b/tests/aws/requests/compute/subnet_tests.rb
index de9b0a5..201658e 100644
--- a/tests/aws/requests/compute/subnet_tests.rb
+++ b/tests/aws/requests/compute/subnet_tests.rb
@@ -20,17 +20,41 @@ Shindo.tests('Fog::Compute[:aws] | subnet requests', ['aws']) do
'requestId' => String
}
+ @modify_subnet_format = {
+ 'requestId' => String,
+ 'return' => Fog::Boolean
+ }
+
+ @vpc_network = '10.0.10.0/24'
+ @vpc=Fog::Compute[:aws].vpcs.create('cidr_block' => @vpc_network)
+ @vpc_id = @vpc.id
+
tests('success') do
- @vpc=Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
- @vpc_id = @vpc.id
@subnet_id = nil
+ @subnet_network = '10.0.10.16/28'
- tests('#create_subnet').formats(@single_subnet_format) do
- data = Fog::Compute[:aws].create_subnet(@vpc_id, '10.0.10.16/28').body
+ tests("#create_subnet('#{@vpc_id}', '#{@subnet_network}')").formats(@single_subnet_format) do
+ data = Fog::Compute[:aws].create_subnet(@vpc_id, @subnet_network).body
@subnet_id = data['subnet']['subnetId']
data
end
+ tests("modify_subnet('#{@subnet_id}'").formats(@modify_subnet_format) do
+ Fog::Compute[:aws].modify_subnet_attribute(@subnet_id, 'MapPublicIpOnLaunch' => true).body
+ end
+
+ @vpc2=Fog::Compute[:aws].vpcs.create('cidr_block' => @vpc_network)
+ @vpc2_id = @vpc2.id
+
+ # Create a second subnet in a second VPC with the same netblock
+ tests("#create_subnet('#{@vpc2_id}', '#{@subnet_network}')").formats(@single_subnet_format) do
+ data = Fog::Compute[:aws].create_subnet(@vpc2_id, @subnet_network).body
+ @subnet2_id = data['subnet']['subnetId']
+ data
+ end
+
+ Fog::Compute[:aws].delete_subnet(@subnet2_id)
+
tests('#describe_subnets').formats(@subnets_format) do
Fog::Compute[:aws].describe_subnets.body
end
@@ -38,6 +62,24 @@ Shindo.tests('Fog::Compute[:aws] | subnet requests', ['aws']) do
tests("#delete_subnet('#{@subnet_id}')").formats(AWS::Compute::Formats::BASIC) do
Fog::Compute[:aws].delete_subnet(@subnet_id).body
end
- @vpc.destroy
end
+
+ tests('failure') do
+ tests("#create_subnet('vpc-00000000', '10.0.10.0/16')").raises(Fog::Compute::AWS::NotFound) do
+ Fog::Compute[:aws].create_subnet('vpc-00000000', '10.0.10.0/16')
+ end
+
+ tests("#create_subnet('#{@vpc_id}', '10.0.9.16/28')").raises(Fog::Compute::AWS::Error) do
+ Fog::Compute[:aws].create_subnet(@vpc_id, '10.0.9.16/28')
+ end
+
+ # Attempt to create two subnets with conflicting CIDRs in the same VPC
+ tests("#create_subnet('#{@vpc_id}', '10.0.10.0/24'); " \
+ "#create_subnet('#{@vpc_id}', '10.0.10.64/26'); ").raises(::Fog::Compute::AWS::Error) do
+ Fog::Compute[:aws].create_subnet(@vpc_id, '10.0.10.0/24')
+ Fog::Compute[:aws].create_subnet(@vpc_id, '10.0.10.64/26')
+ end
+ end
+
+ @vpc.destroy
end
diff --git a/tests/aws/requests/compute/tag_tests.rb b/tests/aws/requests/compute/tag_tests.rb
index 8708a93..78a6bb8 100644
--- a/tests/aws/requests/compute/tag_tests.rb
+++ b/tests/aws/requests/compute/tag_tests.rb
@@ -11,6 +11,8 @@ Shindo.tests('Fog::Compute[:aws] | tag requests', ['aws']) do
@volume = Fog::Compute[:aws].volumes.create(:availability_zone => 'us-east-1a', :size => 1)
@volume.wait_for { ready? }
+ @vpc = Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
+ @network_acl = Fog::Compute[:aws].network_acls.all('vpc-id' => @vpc.id, 'default' => true).first
tests('success') do
if Fog.mocking?
@@ -26,6 +28,14 @@ Shindo.tests('Fog::Compute[:aws] | tag requests', ['aws']) do
tests("#create_tags('#{@image_id}', 'foo' => 'baz')").formats(AWS::Compute::Formats::BASIC) do
Fog::Compute[:aws].create_tags(@image_id, 'foo' => 'baz').body
end
+
+ tests("#create_tags('#{@vpc.id}', 'type' => 'vpc')").formats(AWS::Compute::Formats::BASIC) do
+ Fog::Compute[:aws].create_tags(@vpc.id, 'type' => 'vpc').body
+ end
+
+ tests("#create_tags('#{@network_acl.network_acl_id}', 'type' => 'network_acl')").formats(AWS::Compute::Formats::BASIC) do
+ Fog::Compute[:aws].create_tags(@network_acl.network_acl_id, 'type' => 'network_acl').body
+ end
end
tests('#describe_tags').formats(@tags_format) do
@@ -73,6 +83,17 @@ Shindo.tests('Fog::Compute[:aws] | tag requests', ['aws']) do
Fog::Compute[:aws].create_tags('vol-00000000', 'baz' => 'qux')
end
+ tests("#create_tags('abc-12345678', 'type' => 'fake_type')").raises(Fog::Service::NotFound) do
+ Fog::Compute[:aws].create_tags('abc-12345678', 'type' => 'fake_type')
+ end
+
+ tests("#create_tags('vpc-12345678', 'type' => 'non-existent_vpc)").raises(Fog::Service::NotFound) do
+ Fog::Compute[:aws].create_tags('vpc-12345678', 'type' => 'non-existent_vpc')
+ end
+
+ tests("#create_tags('vpc-123', 'type' => 'bad_resource_id)").raises(Fog::Service::NotFound) do
+ Fog::Compute[:aws].create_tags('vpc-123', 'type' => 'bad_resource_id')
+ end
end
Fog::Compute::AWS::Mock.reset if Fog.mocking?
end
diff --git a/tests/aws/requests/compute/volume_tests.rb b/tests/aws/requests/compute/volume_tests.rb
index f050d4a..8d3824f 100644
--- a/tests/aws/requests/compute/volume_tests.rb
+++ b/tests/aws/requests/compute/volume_tests.rb
@@ -3,6 +3,7 @@ Shindo.tests('Fog::Compute[:aws] | volume requests', ['aws']) do
@volume_format = {
'availabilityZone' => String,
'createTime' => Time,
+ 'encrypted' => Fog::Boolean,
'iops' => Fog::Nullable::Integer,
'requestId' => String,
'size' => Integer,
@@ -13,12 +14,12 @@ Shindo.tests('Fog::Compute[:aws] | volume requests', ['aws']) do
}
@volume_attachment_format = {
- 'attachTime' => Time,
- 'device' => String,
- 'instanceId' => String,
- 'requestId' => String,
- 'status' => String,
- 'volumeId' => String
+ 'attachTime' => Time,
+ 'device' => String,
+ 'instanceId' => String,
+ 'requestId' => String,
+ 'status' => String,
+ 'volumeId' => String
}
@volume_status_format = {
@@ -54,6 +55,7 @@ Shindo.tests('Fog::Compute[:aws] | volume requests', ['aws']) do
'availabilityZone' => String,
'attachmentSet' => Array,
'createTime' => Time,
+ 'encrypted' => Fog::Boolean,
'iops' => Fog::Nullable::Integer,
'size' => Integer,
'snapshotId' => Fog::Nullable::String,
@@ -183,8 +185,8 @@ Shindo.tests('Fog::Compute[:aws] | volume requests', ['aws']) do
end
# iops:size ratio too big
- tests("#create_volume('#{@server.availability_zone}', 10, 'VolumeType' => 'io1', 'Iops' => 101)").raises(Fog::Compute::AWS::Error) do
- Fog::Compute[:aws].create_volume(@server.availability_zone, 10, 'VolumeType' => 'io1', 'Iops' => 101)
+ tests("#create_volume('#{@server.availability_zone}', 10, 'VolumeType' => 'io1', 'Iops' => 301)").raises(Fog::Compute::AWS::Error) do
+ Fog::Compute[:aws].create_volume(@server.availability_zone, 10, 'VolumeType' => 'io1', 'Iops' => 301)
end
# iops invalid value (lower than 100)
diff --git a/tests/aws/requests/compute/vpc_tests.rb b/tests/aws/requests/compute/vpc_tests.rb
index c69addb..cbdab35 100644
--- a/tests/aws/requests/compute/vpc_tests.rb
+++ b/tests/aws/requests/compute/vpc_tests.rb
@@ -1,6 +1,17 @@
Shindo.tests('Fog::Compute[:aws] | vpc requests', ['aws']) do
- @vpcs_format = {
+ @create_vpcs_format = {
+ 'vpcSet' => [{
+ 'vpcId' => String,
+ 'state' => String,
+ 'cidrBlock' => String,
+ 'dhcpOptionsId' => String,
+ 'tagSet' => Hash
+ }],
+ 'requestId' => String
+ }
+
+ @describe_vpcs_format = {
'vpcSet' => [{
'vpcId' => String,
'state' => String,
@@ -16,24 +27,47 @@ Shindo.tests('Fog::Compute[:aws] | vpc requests', ['aws']) do
@vpc_id = nil
- tests('#create_vpc').formats(@vpcs_format) do
+ tests('#create_vpc').formats(@create_vpcs_format) do
data = Fog::Compute[:aws].create_vpc('10.255.254.0/28').body
@vpc_id = data['vpcSet'].first['vpcId']
data
end
- tests('#describe_vpcs').formats(@vpcs_format) do
+ tests('#describe_vpcs').formats(@describe_vpcs_format) do
Fog::Compute[:aws].describe_vpcs.body
end
+ [ 'enableDnsSupport', 'enableDnsHostnames'].each do |attrib|
+ tests("#describe_vpc_attribute('#{@vpc_id}', #{attrib})").returns(@vpc_id) do
+ Fog::Compute[:aws].describe_vpc_attribute(@vpc_id, attrib).body['vpcId']
+ end
+ end
+ tests("#modify_vpc_attribute('#{@vpc_id}', {'EnableDnsSupport.Value' => false})").formats(AWS::Compute::Formats::BASIC) do
+ Fog::Compute[:aws].modify_vpc_attribute(@vpc_id, {'EnableDnsSupport.Value' => false}).body
+ end
+ tests("#describe_vpc_attribute(#{@vpc_id}, 'enableDnsSupport')").returns(false) do
+ Fog::Compute[:aws].describe_vpc_attribute(@vpc_id, 'enableDnsSupport').body["enableDnsSupport"]
+ end
tests("#modify_vpc_attribute('#{@vpc_id}', {'EnableDnsSupport.Value' => true})").formats(AWS::Compute::Formats::BASIC) do
Fog::Compute[:aws].modify_vpc_attribute(@vpc_id, {'EnableDnsSupport.Value' => true}).body
end
+ tests("#describe_vpc_attribute(#{@vpc_id}, 'enableDnsSupport')").returns(true) do
+ Fog::Compute[:aws].describe_vpc_attribute(@vpc_id, 'enableDnsSupport').body["enableDnsSupport"]
+ end
tests("#modify_vpc_attribute('#{@vpc_id}', {'EnableDnsHostnames.Value' => true})").formats(AWS::Compute::Formats::BASIC) do
Fog::Compute[:aws].modify_vpc_attribute(@vpc_id, {'EnableDnsHostnames.Value' => true}).body
end
+ tests("#describe_vpc_attribute(#{@vpc_id}, 'enableDnsHostnames')").returns(true) do
+ Fog::Compute[:aws].describe_vpc_attribute(@vpc_id, 'enableDnsHostnames').body["enableDnsHostnames"]
+ end
+ tests("#modify_vpc_attribute('#{@vpc_id}', {'EnableDnsHostnames.Value' => false})").formats(AWS::Compute::Formats::BASIC) do
+ Fog::Compute[:aws].modify_vpc_attribute(@vpc_id, {'EnableDnsHostnames.Value' => false}).body
+ end
+ tests("#describe_vpc_attribute(#{@vpc_id}, 'enableDnsHostnames')").returns(false) do
+ Fog::Compute[:aws].describe_vpc_attribute(@vpc_id, 'enableDnsHostnames').body["enableDnsHostnames"]
+ end
tests("#modify_vpc_attribute('#{@vpc_id}')").raises(Fog::Compute::AWS::Error) do
Fog::Compute[:aws].modify_vpc_attribute(@vpc_id).body
@@ -43,8 +77,35 @@ Shindo.tests('Fog::Compute[:aws] | vpc requests', ['aws']) do
Fog::Compute[:aws].modify_vpc_attribute(@vpc_id, {'EnableDnsSupport.Value' => true, 'EnableDnsHostnames.Value' => true}).body
end
+ # Create another vpc to test tag filters
+ test_tags = {'foo' => 'bar'}
+ @another_vpc = Fog::Compute[:aws].vpcs.create :cidr_block => '1.2.3.4/24', :tags => test_tags
+
+ tests("#describe_vpcs('tag-key' => 'foo')").formats(@describe_vpcs_format)do
+ body = Fog::Compute[:aws].describe_vpcs('tag-key' => 'foo').body
+ tests("returns 1 vpc").returns(1) { body['vpcSet'].size }
+ body
+ end
+
+ tests("#describe_vpcs('tag-value' => 'bar')").formats(@describe_vpcs_format)do
+ body = Fog::Compute[:aws].describe_vpcs('tag-value' => 'bar').body
+ tests("returns 1 vpc").returns(1) { body['vpcSet'].size }
+ body
+ end
+
+ tests("#describe_vpcs('tag:foo' => 'bar')").formats(@describe_vpcs_format)do
+ body = Fog::Compute[:aws].describe_vpcs('tag:foo' => 'bar').body
+ tests("returns 1 vpc").returns(1) { body['vpcSet'].size }
+ body
+ end
+
tests("#delete_vpc('#{@vpc_id}')").formats(AWS::Compute::Formats::BASIC) do
Fog::Compute[:aws].delete_vpc(@vpc_id).body
end
+
+ # Clean up
+ Fog::Compute[:aws].delete_tags(@another_vpc.id, test_tags)
+ @another_vpc.destroy
+ Fog::Compute::AWS::Mock.reset if Fog.mocking?
end
end
diff --git a/tests/aws/requests/data_pipeline/helper.rb b/tests/aws/requests/data_pipeline/helper.rb
index d8ee6f5..21a8cf7 100644
--- a/tests/aws/requests/data_pipeline/helper.rb
+++ b/tests/aws/requests/data_pipeline/helper.rb
@@ -1,7 +1,6 @@
class AWS
module DataPipeline
module Formats
-
BASIC = {
'pipelineId' => String,
}
@@ -68,7 +67,6 @@ class AWS
}
]
}
-
end
end
end
diff --git a/tests/aws/requests/data_pipeline/pipeline_tests.rb b/tests/aws/requests/data_pipeline/pipeline_tests.rb
index 0caf79a..ae8194d 100644
--- a/tests/aws/requests/data_pipeline/pipeline_tests.rb
+++ b/tests/aws/requests/data_pipeline/pipeline_tests.rb
@@ -9,7 +9,7 @@ Shindo.tests('AWS::DataPipeline | pipeline_tests', ['aws', 'data_pipeline']) do
name = 'fog-test-pipeline-name'
description = 'Fog test pipeline'
- result = Fog::AWS[:data_pipeline].create_pipeline(unique_id, name, description)
+ result = Fog::AWS[:data_pipeline].create_pipeline(unique_id, name, description, {})
@pipeline_id = result['pipelineId']
result
end
diff --git a/tests/aws/requests/dns/dns_tests.rb b/tests/aws/requests/dns/dns_tests.rb
index 34e6936..1f9f68e 100644
--- a/tests/aws/requests/dns/dns_tests.rb
+++ b/tests/aws/requests/dns/dns_tests.rb
@@ -180,8 +180,9 @@ Shindo.tests('Fog::DNS[:aws] | DNS requests', ['aws', 'dns']) do
# create an ALIAS record
host = @domain_name
alias_target = {
- :hosted_zone_id => hosted_zone_id,
- :dns_name => dns_name
+ :hosted_zone_id => hosted_zone_id,
+ :dns_name => dns_name,
+ :evaluate_target_health => false
}
resource_record = { :name => host, :type => 'A', :alias_target => alias_target }
resource_record_set = resource_record.merge(:action => 'CREATE')
@@ -239,14 +240,13 @@ Shindo.tests('Fog::DNS[:aws] | DNS requests', ['aws', 'dns']) do
end
-
tests('failure') do
tests('create hosted zone using invalid domain name').raises(Excon::Errors::BadRequest) do
pending if Fog.mocking?
response = @r53_connection.create_hosted_zone('invalid-domain')
end
- tests('get hosted zone using invalid ID').raises(Excon::Errors::Forbidden) do
+ tests('get hosted zone using invalid ID').raises(Excon::Errors::NotFound) do
pending if Fog.mocking?
zone_id = 'dummy-id'
response = @r53_connection.get_hosted_zone(zone_id)
@@ -254,5 +254,4 @@ Shindo.tests('Fog::DNS[:aws] | DNS requests', ['aws', 'dns']) do
end
-
end
diff --git a/tests/aws/requests/dns/health_check_tests.rb b/tests/aws/requests/dns/health_check_tests.rb
new file mode 100644
index 0000000..c7cd313
--- /dev/null
+++ b/tests/aws/requests/dns/health_check_tests.rb
@@ -0,0 +1,159 @@
+Shindo.tests('Fog::DNS[:aws] | DNS requests', ['aws', 'dns']) do
+
+ pending if Fog.mocking?
+
+ @r53_connection = Fog::DNS[:aws]
+
+ tests('success') do
+
+ tests('create a health check') do
+ after do
+ @r53_connection.delete_health_check(@response.body['HealthCheck']['Id'])
+ end
+
+ test('create an IP TCP based health check') do
+ @response = @r53_connection.create_health_check('8.8.8.8', '53', 'TCP')
+ @response.status == 201 &&
+ @response.body['HealthCheck']['HealthCheckConfig']['IPAddress'] == '8.8.8.8' &&
+ @response.body['HealthCheck']['HealthCheckConfig']['Port'] == '53'
+ end
+
+ test('create a FQDN HTTP based health check') do
+ @options = {
+ :fqdn => "www.amazon.com",
+ :resource_path => "/gp/cart/view.html/ref=nav_cart"
+ }
+ @response = @r53_connection.create_health_check(nil, '80', 'HTTP', @options)
+ @response.status == 201 &&
+ @response.body['HealthCheck']['HealthCheckConfig']['IPAddress'].nil? &&
+ @response.body['HealthCheck']['HealthCheckConfig']['Port'] == '80' &&
+ @response.body['HealthCheck']['HealthCheckConfig']['FullyQualifiedDomainName'] == 'www.amazon.com'
+ end
+ end
+
+ tests('get a health check') do
+ @options = {
+ :fqdn => "www.amazon.com",
+ :resource_path => "/gp/cart/view.html/ref=nav_cart",
+ :search_string => "Amazon",
+ :request_interval => 10,
+ :failure_threshold => "7"
+ }
+ create_response = @r53_connection.create_health_check('8.8.8.8', '443', 'HTTPS_STR_MATCH', @options)
+ @health_check_id = create_response.body['HealthCheck']['Id']
+ @response = @r53_connection.get_health_check(@health_check_id)
+
+ sleep 2
+ @r53_connection.delete_health_check(@health_check_id)
+
+ test('id') do
+ @response.body['HealthCheck']['Id'] == @health_check_id
+ end
+
+ {
+ 'IPAddress' => '8.8.8.8',
+ 'Port' => '443',
+ 'Type' => 'HTTPS_STR_MATCH',
+ 'FullyQualifiedDomainName' => @options[:fqdn],
+ 'ResourcePath' => @options[:resource_path],
+ 'RequestInterval' => @options[:request_interval],
+ 'FailureThreshold' => @options[:failure_threshold]
+ }.each do |key, value|
+ test("and check property #{key}") do
+ @response.body['HealthCheck']['HealthCheckConfig'][key] == value
+ end
+ end
+ end
+
+ tests('delete a health check') do
+ before do
+ response = @r53_connection.create_health_check('8.8.8.8', '53', 'TCP')
+ @health_check_id = response.body['HealthCheck']['Id']
+ end
+
+ test('setup as IP TCP') do
+ response = @r53_connection.delete_health_check(@health_check_id)
+ response.status == 200
+ end
+ end
+
+ tests('listing health checks') do
+ test('succeeds') do
+ response = @r53_connection.list_health_checks
+ response.status == 200
+ end
+
+ before do
+ response_1 = @r53_connection.create_health_check('8.8.8.8', '53', 'TCP')
+ @health_check_1_id = response_1.body['HealthCheck']['Id']
+ options = {
+ :fqdn => "www.amazon.com",
+ :resource_path => "/gp/cart/view.html/ref=nav_cart"
+ }
+ response_2 = @r53_connection.create_health_check(nil, '80', 'HTTP', options)
+ @health_check_2_id = response_2.body['HealthCheck']['Id']
+ @health_check_ids = [@health_check_1_id, @health_check_2_id]
+ end
+
+ after do
+ @health_check_ids.each { |id| @r53_connection.delete_health_check id }
+ end
+
+ test('contains 2 new health checks') do
+ sleep 2
+ response = @r53_connection.list_health_checks
+ health_checks_by_id = response.body['HealthChecks'].map do |health_check|
+ health_check['Id']
+ end.to_a
+ @health_check_ids.all? { |id| health_checks_by_id.include?(id) }
+ end
+
+ test('contains properties') do
+ sleep 2
+ response = @r53_connection.list_health_checks
+ list_response_2 = response.body['HealthChecks'].find { |health_check| health_check['Id'] == @health_check_2_id }
+
+ list_response_2['HealthCheckConfig']['Type'] == 'HTTP' &&
+ list_response_2['HealthCheckConfig']['FullyQualifiedDomainName'] == 'www.amazon.com' &&
+ list_response_2['HealthCheckConfig']['IPAddress'].nil?
+ end
+ end
+
+ tests('assign a health check to a DNS record') do
+ after do
+ @r53_connection.change_resource_record_sets(@zone_id, [@resource_record.merge(:action => 'DELETE')])
+ @r53_connection.delete_hosted_zone(@zone_id)
+ @r53_connection.delete_health_check @health_check_id
+ end
+
+ health_check_response = @r53_connection.create_health_check('8.8.8.8', '53', 'TCP')
+ raise "Health check was not created" unless health_check_response.status == 201
+ @health_check_id = health_check_response.body['HealthCheck']['Id']
+
+ @domain_name = generate_unique_domain
+ zone_response = @r53_connection.create_hosted_zone(@domain_name)
+ raise "Zone was not created for #{@domain_name}" unless zone_response.status == 201
+ @zone_id = zone_response.body['HostedZone']['Id']
+
+ @resource_record = {
+ :name => "www.#{@domain_name}.",
+ :type => 'A',
+ :ttl => 3600,
+ :resource_records => ['8.8.4.4'],
+ :health_check_id => @health_check_id,
+ :set_identifier => SecureRandom.hex(8),
+ :weight => 50
+ }
+ resource_record_set = [@resource_record.merge(:action => 'CREATE')]
+ record_response = @r53_connection.change_resource_record_sets @zone_id, resource_record_set
+ raise "A record was not created" unless record_response.status == 200
+
+ test('succeeds') do
+ new_record = @r53_connection.list_resource_record_sets(@zone_id).body['ResourceRecordSets'].find do |record|
+ record['Name'] == @resource_record[:name]
+ end
+ new_record['HealthCheckId'] == @health_check_id
+ end
+ end
+ end
+end
diff --git a/tests/aws/requests/dynamodb/item_tests.rb b/tests/aws/requests/dynamodb/item_tests.rb
index 29be359..7acf056 100644
--- a/tests/aws/requests/dynamodb/item_tests.rb
+++ b/tests/aws/requests/dynamodb/item_tests.rb
@@ -4,8 +4,8 @@ Shindo.tests('Fog::AWS[:dynamodb] | item requests', ['aws']) do
unless Fog.mocking?
Fog::AWS[:dynamodb].create_table(
- @table_name,
- {'HashKeyElement' => {'AttributeName' => 'key', 'AttributeType' => 'S'}},
+ @table_name,
+ {'HashKeyElement' => {'AttributeName' => 'key', 'AttributeType' => 'S'}},
{'ReadCapacityUnits' => 5, 'WriteCapacityUnits' => 5}
)
Fog.wait_for { Fog::AWS[:dynamodb].describe_table(@table_name).body['Table']['TableStatus'] == 'ACTIVE' }
diff --git a/tests/aws/requests/elasticache/helper.rb b/tests/aws/requests/elasticache/helper.rb
index b01f56e..6858f13 100644
--- a/tests/aws/requests/elasticache/helper.rb
+++ b/tests/aws/requests/elasticache/helper.rb
@@ -1,7 +1,6 @@
class AWS
module Elasticache
module Formats
-
BASIC = {
'ResponseMetadata' => {'RequestId' => String}
}
@@ -82,7 +81,7 @@ class AWS
'SourceType' => String,
}
EVENT_LIST = [EVENT]
-
+
RESERVED_CACHE_CLUSTER = {
'CacheNodeCount' => Integer,
'CacheNodeType' => String,
@@ -98,7 +97,7 @@ class AWS
'UsagePrice' => Float
}
RESERVED_CACHE_CLUSTER_LIST = [RESERVED_CACHE_CLUSTER]
-
+
end
end
end
diff --git a/tests/aws/requests/elb/helper.rb b/tests/aws/requests/elb/helper.rb
index 1f9e113..46f430c 100644
--- a/tests/aws/requests/elb/helper.rb
+++ b/tests/aws/requests/elb/helper.rb
@@ -1,7 +1,6 @@
class AWS
module ELB
module Formats
-
BASIC = {
'ResponseMetadata' => {'RequestId' => String}
}
@@ -87,7 +86,6 @@ class AWS
DELETE_LOAD_BALANCER = BASIC.merge({
'DeleteLoadBalancerResult' => NilClass
})
-
end
end
end
diff --git a/tests/aws/requests/elb/load_balancer_tests.rb b/tests/aws/requests/elb/load_balancer_tests.rb
index 7436420..e8131ad 100644
--- a/tests/aws/requests/elb/load_balancer_tests.rb
+++ b/tests/aws/requests/elb/load_balancer_tests.rb
@@ -37,9 +37,23 @@ Shindo.tests('AWS::ELB | load_balancer_tests', ['aws', 'elb']) do
end
tests("modify_load_balancer_attributes") do
- Fog::AWS[:elb].modify_load_balancer_attributes(@load_balancer_id, 'CrossZoneLoadBalancing' => {'Enabled' => true}).body
- response = Fog::AWS[:elb].describe_load_balancer_attributes(@load_balancer_id).body
- response['DescribeLoadBalancerAttributesResult']['LoadBalancerAttributes']['CrossZoneLoadBalancing']['Enabled'] == true
+ attributes = {
+ 'ConnectionDraining' => {'Enabled' => true, 'Timeout' => 600},
+ 'CrossZoneLoadBalancing' => {'Enabled' => true}
+ }
+ Fog::AWS[:elb].modify_load_balancer_attributes(@load_balancer_id, attributes).body
+ response = Fog::AWS[:elb].describe_load_balancer_attributes(@load_balancer_id).
+ body['DescribeLoadBalancerAttributesResult']['LoadBalancerAttributes']
+
+ tests("ConnectionDraining is enabled") do
+ response['ConnectionDraining']['Enabled'] == true
+ end
+ tests("ConnectionDraining has a 600 second Timeout").returns(600) do
+ response['ConnectionDraining']['Timeout']
+ end
+ tests("CrossZoneLoadBalancing is enabled") do
+ response['CrossZoneLoadBalancing']['Enabled'] == true
+ end
end
tests("#configure_health_check").formats(AWS::ELB::Formats::CONFIGURE_HEALTH_CHECK) do
diff --git a/tests/aws/requests/elb/policy_tests.rb b/tests/aws/requests/elb/policy_tests.rb
index abed813..fd4a5f1 100644
--- a/tests/aws/requests/elb/policy_tests.rb
+++ b/tests/aws/requests/elb/policy_tests.rb
@@ -43,7 +43,7 @@ Shindo.tests('AWS::ELB | policy_tests', ['aws', 'elb']) do
"PolicyName"=>"fog-app-policy",
"PolicyTypeName"=>"AppCookieStickinessPolicyType"
}) do
- body["DescribeLoadBalancerPoliciesResult"]["PolicyDescriptions"].detect{|e| e['PolicyName'] == 'fog-app-policy' }
+ body["DescribeLoadBalancerPoliciesResult"]["PolicyDescriptions"].find{|e| e['PolicyName'] == 'fog-app-policy' }
end
returns({
@@ -54,7 +54,7 @@ Shindo.tests('AWS::ELB | policy_tests', ['aws', 'elb']) do
"PolicyName"=>"fog-lb-expiry",
"PolicyTypeName"=>"LBCookieStickinessPolicyType"
}) do
- body["DescribeLoadBalancerPoliciesResult"]["PolicyDescriptions"].detect{|e| e['PolicyName'] == 'fog-lb-expiry' }
+ body["DescribeLoadBalancerPoliciesResult"]["PolicyDescriptions"].find{|e| e['PolicyName'] == 'fog-lb-expiry' }
end
returns({
@@ -65,7 +65,7 @@ Shindo.tests('AWS::ELB | policy_tests', ['aws', 'elb']) do
"PolicyName"=>"fog-lb-no-expiry",
"PolicyTypeName"=>"LBCookieStickinessPolicyType"
}) do
- body["DescribeLoadBalancerPoliciesResult"]["PolicyDescriptions"].detect{|e| e['PolicyName'] == 'fog-lb-no-expiry' }
+ body["DescribeLoadBalancerPoliciesResult"]["PolicyDescriptions"].find{|e| e['PolicyName'] == 'fog-lb-no-expiry' }
end
returns({
@@ -76,7 +76,7 @@ Shindo.tests('AWS::ELB | policy_tests', ['aws', 'elb']) do
"PolicyName"=>"fog-policy",
"PolicyTypeName"=>"PublicKeyPolicyType"
}) do
- body["DescribeLoadBalancerPoliciesResult"]["PolicyDescriptions"].detect{|e| e['PolicyName'] == 'fog-policy' }
+ body["DescribeLoadBalancerPoliciesResult"]["PolicyDescriptions"].find{|e| e['PolicyName'] == 'fog-policy' }
end
end
@@ -126,8 +126,7 @@ Shindo.tests('AWS::ELB | policy_tests', ['aws', 'elb']) do
description = Fog::AWS[:elb].describe_load_balancers("LoadBalancerNames" => [@load_balancer_id]).body["DescribeLoadBalancersResult"]["LoadBalancerDescriptions"].first
returns(true) { description["Policies"]["OtherPolicies"].include?(proxy_policy) }
end
-
+
Fog::AWS[:elb].delete_load_balancer(@load_balancer_id)
end
end
-
diff --git a/tests/aws/requests/emr/helper.rb b/tests/aws/requests/emr/helper.rb
index 8dfed64..6d4cb76 100644
--- a/tests/aws/requests/emr/helper.rb
+++ b/tests/aws/requests/emr/helper.rb
@@ -1,7 +1,5 @@
class AWS
-
module EMR
-
module Formats
BASIC = {
'RequestId' => String
@@ -10,12 +8,12 @@ class AWS
RUN_JOB_FLOW = BASIC.merge({
'JobFlowId' => String
})
-
+
ADD_INSTANCE_GROUPS = {
'JobFlowId' => String,
'InstanceGroupIds' => Array
}
-
+
SIMPLE_DESCRIBE_JOB_FLOW = {
'JobFlows' => [{
'Name' => String,
@@ -61,7 +59,7 @@ class AWS
}
}]
}
-
+
JOB_FLOW_WITHOUT_CHANGE = {
'JobFlows' => [{
'Name' => String,
@@ -107,7 +105,7 @@ class AWS
}
}]
}
-
+
DESCRIBE_JOB_FLOW_WITH_INSTANCE_GROUPS = {
'JobFlows' => [{
'Name' => String,
@@ -165,8 +163,6 @@ class AWS
}
}]
}
-
end
end
-
end
diff --git a/tests/aws/requests/glacier/archive_tests.rb b/tests/aws/requests/glacier/archive_tests.rb
index 5f242d3..859fc71 100644
--- a/tests/aws/requests/glacier/archive_tests.rb
+++ b/tests/aws/requests/glacier/archive_tests.rb
@@ -10,4 +10,4 @@ Shindo.tests('AWS::Glacier | glacier archive tests', ['aws']) do
#amazon won't let us delete the vault because it has been written to in the past day
-end
\ No newline at end of file
+end
diff --git a/tests/aws/requests/glacier/multipart_upload_tests.rb b/tests/aws/requests/glacier/multipart_upload_tests.rb
index 1069914..0816013 100644
--- a/tests/aws/requests/glacier/multipart_upload_tests.rb
+++ b/tests/aws/requests/glacier/multipart_upload_tests.rb
@@ -5,12 +5,11 @@ Shindo.tests('AWS::Glacier | glacier archive tests', ['aws']) do
tests('initiate and abort') do
id = Fog::AWS[:glacier].initiate_multipart_upload('Fog-Test-Vault-upload', 1024*1024).headers['x-amz-multipart-upload-id']
- returns(true){ Fog::AWS[:glacier].list_multipart_uploads('Fog-Test-Vault-upload').body['UploadsList'].collect {|item| item['MultipartUploadId']}.include?(id)}
+ returns(true){ Fog::AWS[:glacier].list_multipart_uploads('Fog-Test-Vault-upload').body['UploadsList'].map {|item| item['MultipartUploadId']}.include?(id)}
Fog::AWS[:glacier].abort_multipart_upload('Fog-Test-Vault-upload', id)
- returns(false){ Fog::AWS[:glacier].list_multipart_uploads('Fog-Test-Vault-upload').body['UploadsList'].collect {|item| item['MultipartUploadId']}.include?(id)}
+ returns(false){ Fog::AWS[:glacier].list_multipart_uploads('Fog-Test-Vault-upload').body['UploadsList'].map {|item| item['MultipartUploadId']}.include?(id)}
end
-
tests('do multipart upload') do
hash = Fog::AWS::Glacier::TreeHash.new
id = Fog::AWS[:glacier].initiate_multipart_upload('Fog-Test-Vault-upload', 1024*1024).headers['x-amz-multipart-upload-id']
@@ -24,7 +23,7 @@ Shindo.tests('AWS::Glacier | glacier archive tests', ['aws']) do
archive = Fog::AWS[:glacier].complete_multipart_upload('Fog-Test-Vault-upload', id, 2*1024*1024, hash.hexdigest).headers['x-amz-archive-id']
- Fog::AWS[:glacier].delete_archive('Fog-Test-Vault-upload', archive)
+ Fog::AWS[:glacier].delete_archive('Fog-Test-Vault-upload', archive)
#amazon won't let us delete the vault because it has been written to in the past day
end
-end
\ No newline at end of file
+end
diff --git a/tests/aws/requests/glacier/tree_hash_tests.rb b/tests/aws/requests/glacier/tree_hash_tests.rb
index 292bcc3..fa6aa4d 100644
--- a/tests/aws/requests/glacier/tree_hash_tests.rb
+++ b/tests/aws/requests/glacier/tree_hash_tests.rb
@@ -59,5 +59,4 @@ Shindo.tests('AWS::Glacier | glacier tree hash calcuation', ['aws']) do
end
-
-end
\ No newline at end of file
+end
diff --git a/tests/aws/requests/glacier/vault_tests.rb b/tests/aws/requests/glacier/vault_tests.rb
index 91f9d5a..6907516 100644
--- a/tests/aws/requests/glacier/vault_tests.rb
+++ b/tests/aws/requests/glacier/vault_tests.rb
@@ -5,7 +5,7 @@ Shindo.tests('AWS::Glacier | glacier vault requests', ['aws']) do
Fog::AWS[:glacier].create_vault('Fog-Test-Vault')
tests('list_vaults') do
- returns(true){Fog::AWS[:glacier].list_vaults.body['VaultList'].collect {|data| data['VaultName']}.include?('Fog-Test-Vault')}
+ returns(true){Fog::AWS[:glacier].list_vaults.body['VaultList'].map {|data| data['VaultName']}.include?('Fog-Test-Vault')}
end
tests('describe_vault') do
diff --git a/tests/aws/requests/iam/account_policy_tests.rb b/tests/aws/requests/iam/account_policy_tests.rb
new file mode 100644
index 0000000..7f10dc9
--- /dev/null
+++ b/tests/aws/requests/iam/account_policy_tests.rb
@@ -0,0 +1,20 @@
+Shindo.tests('AWS::IAM | account policy requests', ['aws']) do
+
+ tests('success') do
+ tests("#update_account_password_policy(minimum_password_length, max_password_age, password_reuse_prevention,require_symbols,require_numbers,require_uppercase_characters, require_lowercase_characters,allow_users_to_change_password, hard_expiry, expire_passwords)").formats(AWS::IAM::Formats::BASIC) do
+ minimum_password_length, password_reuse_prevention, max_password_age = 5
+ require_symbols, require_numbers, require_uppercase_characters, require_lowercase_characters, allow_users_to_change_password, hard_expiry, expire_passwords = false
+
+ Fog::AWS[:iam].update_account_password_policy(minimum_password_length, max_password_age, password_reuse_prevention,require_symbols,require_numbers,require_uppercase_characters, require_lowercase_characters,allow_users_to_change_password, hard_expiry, expire_passwords).body
+ end
+
+ tests("#get_account_password_policy()") do
+ Fog::AWS[:iam].get_account_password_policy().body['AccountPasswordPolicy']
+ end
+
+ tests("#delete_account_password_policy()").formats(AWS::IAM::Formats::BASIC) do
+
+ Fog::AWS[:iam].delete_account_password_policy().body
+ end
+ end
+end
diff --git a/tests/aws/requests/iam/helper.rb b/tests/aws/requests/iam/helper.rb
index a894370..f160cab 100644
--- a/tests/aws/requests/iam/helper.rb
+++ b/tests/aws/requests/iam/helper.rb
@@ -1,5 +1,4 @@
class AWS
-
module IAM
# A self-signed test keypair. Generated using the command:
# openssl req -new -newkey rsa:1024 -days 3650 -nodes -x509 -keyout server-private.key -out server-public.crt
@@ -95,13 +94,9 @@ Xb9WSr07saxZQbxBPQyTlb0Q9Tu2djAq2/o/nYD1/50/fXUTuWMB
}
module Formats
-
BASIC = {
'RequestId' => String
}
-
end
-
end
-
end
diff --git a/tests/aws/requests/iam/login_profile_tests.rb b/tests/aws/requests/iam/login_profile_tests.rb
index 5b0ed54..7d1f37f 100644
--- a/tests/aws/requests/iam/login_profile_tests.rb
+++ b/tests/aws/requests/iam/login_profile_tests.rb
@@ -4,17 +4,16 @@ Shindo.tests('AWS::IAM | user requests', ['aws']) do
Fog::AWS[:iam].create_user('fog_user')
end
-
tests('success') do
@login_profile_format = {
'LoginProfile' => {
'UserName' => String,
'CreateDate' => Time
-
+
},
'RequestId' => String
}
-
+
tests("#create_login_profile('fog_user')").formats(@login_profile_format) do
pending if Fog.mocking?
Fog::AWS[:iam].create_login_profile('fog_user', 'somepassword').body
@@ -57,7 +56,6 @@ Shindo.tests('AWS::IAM | user requests', ['aws']) do
end
end
-
unless Fog.mocking?
Fog::AWS[:iam].delete_user('fog_user')
end
diff --git a/tests/aws/requests/iam/role_tests.rb b/tests/aws/requests/iam/role_tests.rb
index ab2e0f0..0c62531 100644
--- a/tests/aws/requests/iam/role_tests.rb
+++ b/tests/aws/requests/iam/role_tests.rb
@@ -39,7 +39,7 @@ Shindo.tests('AWS::IAM | role requests', ['aws']) do
tests("#list_roles").formats(@list_roles_format) do
pending if Fog.mocking?
body = Fog::AWS[:iam].list_roles.body
- returns(true){!! body['Roles'].detect {|role| role['RoleName'] == 'fogrole'}}
+ returns(true){!! body['Roles'].find {|role| role['RoleName'] == 'fogrole'}}
body
end
@@ -53,7 +53,7 @@ Shindo.tests('AWS::IAM | role requests', ['aws']) do
'Roles' => [@role]
},
'RequestId' => String
-
+
}
tests("#create_instance_profile('fogprofile')").formats(@profile_format) do
pending if Fog.mocking?
@@ -81,12 +81,12 @@ Shindo.tests('AWS::IAM | role requests', ['aws']) do
}],
'IsTruncated' => Fog::Boolean,
'RequestId' => String
-
+
}
tests("list_instance_profiles_for_role('fogrole')").formats(@profiles_format) do
pending if Fog.mocking?
body = Fog::AWS[:iam].list_instance_profiles_for_role('fogrole').body
- returns(['fogprofile']) { body['InstanceProfiles'].collect {|hash| hash['InstanceProfileName']}}
+ returns(['fogprofile']) { body['InstanceProfiles'].map {|hash| hash['InstanceProfileName']}}
body
end
@@ -96,7 +96,7 @@ Shindo.tests('AWS::IAM | role requests', ['aws']) do
end
sample_policy = {"Statement" => [{"Effect" => "Allow", "Action" => "*", "Resource" => "*"}]}
-
+
tests("put_role_policy").formats(AWS::IAM::Formats::BASIC) do
pending if Fog.mocking?
Fog::AWS[:iam].put_role_policy('fogrole', 'fogpolicy', sample_policy).body
@@ -104,7 +104,7 @@ Shindo.tests('AWS::IAM | role requests', ['aws']) do
@get_role_policy_format = {
'Policy' => {
- 'RoleName' => String,
+ 'RoleName' => String,
'PolicyName' => String,
'PolicyDocument' => Hash,
},
@@ -122,7 +122,7 @@ Shindo.tests('AWS::IAM | role requests', ['aws']) do
@list_role_policies_format = {
'PolicyNames' => [String],
'IsTruncated' => Fog::Boolean,
- 'RequestId' => String
+ 'RequestId' => String
}
tests("list_role_policies").formats(@list_role_policies_format) do
@@ -137,7 +137,7 @@ Shindo.tests('AWS::IAM | role requests', ['aws']) do
pending if Fog.mocking?
Fog::AWS[:iam].delete_role_policy('fogrole', 'fogpolicy').body
end
-
+
returns([]) do
pending if Fog.mocking?
Fog::AWS[:iam].list_role_policies('fogrole').body['PolicyNames']
@@ -165,4 +165,3 @@ Shindo.tests('AWS::IAM | role requests', ['aws']) do
end
end
-
diff --git a/tests/aws/requests/iam/user_tests.rb b/tests/aws/requests/iam/user_tests.rb
index c46dcc1..7009808 100644
--- a/tests/aws/requests/iam/user_tests.rb
+++ b/tests/aws/requests/iam/user_tests.rb
@@ -66,7 +66,6 @@ Shindo.tests('AWS::IAM | user requests', ['aws']) do
Fog::AWS[:iam].delete_user('fog_user').body
end
-
end
tests('failure') do
diff --git a/tests/aws/requests/rds/describe_events.rb b/tests/aws/requests/rds/describe_events.rb
index 941b4df..4a14e36 100644
--- a/tests/aws/requests/rds/describe_events.rb
+++ b/tests/aws/requests/rds/describe_events.rb
@@ -11,6 +11,6 @@ Shindo.tests('AWS::RDS | describe DB events requests',['aws', 'rds']) do
end
tests('failure') do
- #TODO: What constitutes a failure here?
+ #TODO: What constitutes a failure here?
end
end
diff --git a/tests/aws/requests/rds/helper.rb b/tests/aws/requests/rds/helper.rb
index b41dee6..33ac6cb 100644
--- a/tests/aws/requests/rds/helper.rb
+++ b/tests/aws/requests/rds/helper.rb
@@ -1,11 +1,8 @@
class AWS
-
module RDS
-
module Formats
-
BASIC = {
- 'ResponseMetadata' => {'RequestId' => String}
+ 'ResponseMetadata' => { 'RequestId' => String }
}
DB_AVAILABILITY_ZONE_OPTION = {
@@ -15,11 +12,11 @@ class AWS
DB_PARAMETER_GROUP = {
'DBParameterGroupFamily' => String,
- 'DBParameterGroupName'=> String,
- 'Description'=> String
+ 'DBParameterGroupName' => String,
+ 'Description' => String
}
CREATE_DB_PARAMETER_GROUP = {
- 'ResponseMetadata' => {'RequestId' => String},
+ 'ResponseMetadata' => { 'RequestId' => String },
'CreateDBParameterGroupResult' => {
'DBParameterGroup' => DB_PARAMETER_GROUP
}
@@ -78,8 +75,8 @@ class AWS
})
DESCRIBE_DB_PARAMETER_GROUP = {
- 'ResponseMetadata' => {'RequestId' => String},
- 'DescribeDBParameterGroupsResult' =>{
+ 'ResponseMetadata' => { 'RequestId' => String },
+ 'DescribeDBParameterGroupsResult' => {
'DBParameterGroups' => [DB_PARAMETER_GROUP]
}
}
@@ -96,7 +93,7 @@ class AWS
}
DESCRIBE_ORDERABLE_DB_INSTANCE_OPTION = BASIC.merge({
- 'DescribeOrderableDBInstanceOptionsResult' =>{
+ 'DescribeOrderableDBInstanceOptionsResult' => {
'OrderableDBInstanceOptions' => [ORDERABLE_DB_INSTANCE_OPTION]
}
})
@@ -107,7 +104,6 @@ class AWS
}
})
-
DB_PARAMETER = {
'ParameterValue' => Fog::Nullable::String,
'DataType' => String,
@@ -140,7 +136,7 @@ class AWS
}
})
- SNAPSHOT={
+ SNAPSHOT = {
'AllocatedStorage' => Integer,
'AvailabilityZone' => String,
'DBInstanceIdentifier' => String,
@@ -148,12 +144,14 @@ class AWS
'EngineVersion' => String,
'Engine' => String,
'InstanceCreateTime' => Time,
+ 'Iops' => Fog::Nullable::Integer,
'MasterUsername' => String,
'Port' => Integer,
'SnapshotCreateTime' => Fog::Nullable::Time,
'Status' => String,
'SnapshotType' => String
}
+
INSTANCE = {
'AllocatedStorage' => Integer,
'AutoMinorVersionUpgrade' => Fog::Boolean,
@@ -180,6 +178,7 @@ class AWS
'Engine' => String,
'EngineVersion' => String,
'InstanceCreateTime' => Fog::Nullable::Time,
+ 'Iops' => Fog::Nullable::Integer,
'LatestRestorableTime' => Fog::Nullable::Time,
'LicenseModel' => String,
'MasterUsername' => String,
@@ -193,15 +192,15 @@ class AWS
'AllocatedStorage' => Fog::Nullable::Integer,
'Port' => Fog::Nullable::Integer
},
- 'PreferredBackupWindow'=> String,
- 'PreferredMaintenanceWindow'=> String,
- 'ReadReplicaDBInstanceIdentifiers'=> [Fog::Nullable::String]
+ 'PreferredBackupWindow' => String,
+ 'PreferredMaintenanceWindow' => String,
+ 'ReadReplicaDBInstanceIdentifiers' => [Fog::Nullable::String]
}
REPLICA_INSTANCE = INSTANCE.merge({
'BackupRetentionPeriod' => Fog::Nullable::String,
'PreferredBackupWindow' => Fog::Nullable::String,
- 'ReadReplicaSourceDBInstanceIdentifier'=> String
+ 'ReadReplicaSourceDBInstanceIdentifier' => String
})
CREATE_DB_INSTANCE = BASIC.merge({
@@ -241,6 +240,12 @@ class AWS
}
})
+ PROMOTE_READ_REPLICA = BASIC.merge({
+ 'PromoteReadReplicaResult' => {
+ 'DBInstance' => INSTANCE
+ }
+ })
+
CREATE_DB_SNAPSHOT = BASIC.merge({
'CreateDBSnapshotResult' => {
'DBSnapshot' => SNAPSHOT
@@ -264,9 +269,6 @@ class AWS
'TagList' => Fog::Nullable::Hash
}
}
-
end
-
end
-
end
diff --git a/tests/aws/requests/rds/instance_tests.rb b/tests/aws/requests/rds/instance_tests.rb
index 0080596..cff56d8 100644
--- a/tests/aws/requests/rds/instance_tests.rb
+++ b/tests/aws/requests/rds/instance_tests.rb
@@ -15,16 +15,17 @@ Shindo.tests('AWS::RDS | instance requests', ['aws', 'rds']) do
tests('success') do
tests("#create_db_instance").formats(AWS::RDS::Formats::CREATE_DB_INSTANCE) do
- result = Fog::AWS[:rds].create_db_instance(@db_instance_id, 'AllocatedStorage' => 5,
- 'DBInstanceClass' => 'db.m1.small',
- 'Engine' => 'mysql',
- 'EngineVersion' => '5.1.50',
- 'MasterUsername' => 'foguser',
- 'BackupRetentionPeriod' => 1,
- 'MasterUserPassword' => 'fogpassword').body
+ result = Fog::AWS[:rds].create_db_instance(@db_instance_id,
+ 'AllocatedStorage' => 5,
+ 'DBInstanceClass' => 'db.m1.small',
+ 'Engine' => 'mysql',
+ 'EngineVersion' => '5.1.50',
+ 'MasterUsername' => 'foguser',
+ 'BackupRetentionPeriod' => 1,
+ 'MasterUserPassword' => 'fogpassword').body
instance = result['CreateDBInstanceResult']['DBInstance']
- returns('creating'){ instance['DBInstanceStatus']}
+ returns('creating') { instance['DBInstanceStatus'] }
result
end
@@ -33,14 +34,14 @@ Shindo.tests('AWS::RDS | instance requests', ['aws', 'rds']) do
end
server = Fog::AWS[:rds].servers.get(@db_instance_id)
- server.wait_for {ready?}
+ server.wait_for { ready? }
new_storage = 6
tests("#modify_db_instance with immediate apply").formats(AWS::RDS::Formats::MODIFY_DB_INSTANCE) do
- body = Fog::AWS[:rds].modify_db_instance(@db_instance_id, true, 'AllocatedStorage'=> new_storage).body
+ body = Fog::AWS[:rds].modify_db_instance(@db_instance_id, true, 'AllocatedStorage' => new_storage).body
tests 'pending storage' do
instance = body['ModifyDBInstanceResult']['DBInstance']
- returns(new_storage){instance['PendingModifiedValues']['AllocatedStorage']}
+ returns(new_storage) { instance['PendingModifiedValues']['AllocatedStorage'] }
end
body
end
@@ -49,7 +50,7 @@ Shindo.tests('AWS::RDS | instance requests', ['aws', 'rds']) do
server.wait_for { state == 'available' }
tests 'new storage' do
- returns(new_storage){ server.allocated_storage}
+ returns(new_storage) { server.allocated_storage }
end
tests("reboot db instance") do
@@ -59,11 +60,11 @@ Shindo.tests('AWS::RDS | instance requests', ['aws', 'rds']) do
end
server.wait_for { state == 'rebooting' }
- server.wait_for { state == 'available'}
+ server.wait_for { state == 'available' }
tests("#create_db_snapshot").formats(AWS::RDS::Formats::CREATE_DB_SNAPSHOT) do
body = Fog::AWS[:rds].create_db_snapshot(@db_instance_id, @db_snapshot_id).body
- returns('creating'){ body['CreateDBSnapshotResult']['DBSnapshot']['Status']}
+ returns('creating') { body['CreateDBSnapshotResult']['DBSnapshot']['Status'] }
body
end
@@ -73,29 +74,33 @@ Shindo.tests('AWS::RDS | instance requests', ['aws', 'rds']) do
server.wait_for { state == 'available' }
- tests( "#create read replica").formats(AWS::RDS::Formats::CREATE_READ_REPLICA) do
+ tests("#create read replica").formats(AWS::RDS::Formats::CREATE_READ_REPLICA) do
Fog::AWS[:rds].create_db_instance_read_replica(@db_replica_id, @db_instance_id).body
end
replica = Fog::AWS[:rds].servers.get(@db_replica_id)
- replica.wait_for {ready?}
+ replica.wait_for { ready? }
tests("replica source") do
- returns(@db_instance_id){replica.read_replica_source}
+ returns(@db_instance_id) { replica.read_replica_source }
end
server.reload
tests("replica identifiers") do
- returns([@db_replica_id]){server.read_replica_identifiers}
+ returns([@db_replica_id]) { server.read_replica_identifiers }
+ end
+
+ tests("#promote read replica").formats(AWS::RDS::Formats::PROMOTE_READ_REPLICA) do
+ Fog::AWS[:rds].promote_read_replica(@db_replica_id).body
end
tests("#delete_db_instance").formats(AWS::RDS::Formats::DELETE_DB_INSTANCE) do
- #server.wait_for { state == 'available'}
+ #server.wait_for { state == 'available' }
Fog::AWS[:rds].delete_db_instance(@db_replica_id, nil, true)
body = Fog::AWS[:rds].delete_db_instance(@db_instance_id, @db_final_snapshot_id).body
tests "final snapshot" do
- returns('creating'){Fog::AWS[:rds].describe_db_snapshots(:snapshot_id => @db_final_snapshot_id).body['DescribeDBSnapshotsResult']['DBSnapshots'].first['Status']}
+ returns('creating') { Fog::AWS[:rds].describe_db_snapshots(:snapshot_id => @db_final_snapshot_id).body['DescribeDBSnapshotsResult']['DBSnapshots'].first['Status'] }
end
body
end
@@ -116,13 +121,13 @@ Shindo.tests('AWS::RDS | instance requests', ['aws', 'rds']) do
tests('failure') do
tests "deleting nonexisting instance" do
- raises(Fog::AWS::RDS::NotFound) {Fog::AWS[:rds].delete_db_instance('doesnexist', 'irrelevant')}
+ raises(Fog::AWS::RDS::NotFound) { Fog::AWS[:rds].delete_db_instance('doesnexist', 'irrelevant') }
end
tests "deleting non existing snapshot" do
- raises(Fog::AWS::RDS::NotFound) {Fog::AWS[:rds].delete_db_snapshot('doesntexist')}
+ raises(Fog::AWS::RDS::NotFound) { Fog::AWS[:rds].delete_db_snapshot('doesntexist') }
end
tests "modifying non existing instance" do
- raises(Fog::AWS::RDS::NotFound) { Fog::AWS[:rds].modify_db_instance 'doesntexit', true, 'AllocatedStorage'=> 10}
+ raises(Fog::AWS::RDS::NotFound) { Fog::AWS[:rds].modify_db_instance 'doesntexit', true, 'AllocatedStorage' => 10 }
end
end
end
diff --git a/tests/aws/requests/rds/parameter_group_tests.rb b/tests/aws/requests/rds/parameter_group_tests.rb
index 0db1803..0b120d8 100644
--- a/tests/aws/requests/rds/parameter_group_tests.rb
+++ b/tests/aws/requests/rds/parameter_group_tests.rb
@@ -7,26 +7,26 @@ Shindo.tests('AWS::RDS | parameter group requests', ['aws', 'rds']) do
returns( 'mysql5.1') { body['CreateDBParameterGroupResult']['DBParameterGroup']['DBParameterGroupFamily']}
returns( 'fog-group') { body['CreateDBParameterGroupResult']['DBParameterGroup']['DBParameterGroupName']}
returns( 'Some description') { body['CreateDBParameterGroupResult']['DBParameterGroup']['Description']}
-
+
body
end
-
+
Fog::AWS[:rds].create_db_parameter_group('other-fog-group', 'MySQL5.1', 'Some description')
tests("#describe_db_parameter_groups").formats(AWS::RDS::Formats::DESCRIBE_DB_PARAMETER_GROUP) do
body = Fog::AWS[:rds].describe_db_parameter_groups().body
-
- returns(4) {body['DescribeDBParameterGroupsResult']['DBParameterGroups'].length}
+
+ returns(4) {body['DescribeDBParameterGroupsResult']['DBParameterGroups'].length}
body
end
tests("#describe_db_parameter_groups('fog-group)").formats(AWS::RDS::Formats::DESCRIBE_DB_PARAMETER_GROUP) do
body = Fog::AWS[:rds].describe_db_parameter_groups('fog-group').body
-
- returns(1) {body['DescribeDBParameterGroupsResult']['DBParameterGroups'].length}
-
+
+ returns(1) {body['DescribeDBParameterGroupsResult']['DBParameterGroups'].length}
+
group = body['DescribeDBParameterGroupsResult']['DBParameterGroups'].first
returns( 'mysql5.1') { group['DBParameterGroupFamily']}
returns( 'fog-group') { group['DBParameterGroupName']}
@@ -34,10 +34,10 @@ Shindo.tests('AWS::RDS | parameter group requests', ['aws', 'rds']) do
body
end
-
+
tests("delete_db_parameter_group").formats(AWS::RDS::Formats::BASIC) do
body = Fog::AWS[:rds].delete_db_parameter_group('fog-group').body
-
+
raises(Fog::AWS::RDS::NotFound) {Fog::AWS[:rds].describe_db_parameter_groups('fog-group')}
body
@@ -54,9 +54,9 @@ Shindo.tests('AWS::RDS | parameter group requests', ['aws', 'rds']) do
Fog::AWS[:rds].create_db_parameter_group('fog-group', 'MySQL5.1', 'Some description')
raises(Fog::AWS::RDS::IdentifierTaken) {Fog::AWS[:rds].create_db_parameter_group('fog-group', 'MySQL5.1', 'Some description')}
end
-
+
Fog::AWS[:rds].delete_db_parameter_group('fog-group')
-
+
end
-
-end
\ No newline at end of file
+
+end
diff --git a/tests/aws/requests/rds/parameter_request_tests.rb b/tests/aws/requests/rds/parameter_request_tests.rb
index 3801391..8c35082 100644
--- a/tests/aws/requests/rds/parameter_request_tests.rb
+++ b/tests/aws/requests/rds/parameter_request_tests.rb
@@ -1,28 +1,27 @@
Shindo.tests('AWS::RDS | parameter requests', ['aws', 'rds']) do
tests('success') do
pending if Fog.mocking?
-
+
Fog::AWS[:rds].create_db_parameter_group('fog-group', 'MySQL5.1', 'Some description')
-
+
tests('#modify_db_parameter_group').formats(AWS::RDS::Formats::MODIFY_PARAMETER_GROUP) do
body = Fog::AWS[:rds].modify_db_parameter_group('fog-group',[
{'ParameterName' => 'query_cache_size',
'ParameterValue' => '12345',
- 'ApplyMethod' => 'immediate'}
+ 'ApplyMethod' => 'immediate'}
]).body
-
+
body
end
-
+
tests('#describe_db_parameters').formats(AWS::RDS::Formats::DESCRIBE_DB_PARAMETERS) do
Fog::AWS[:rds].describe_db_parameters('fog-group', :max_records => 20).body
end
-
tests("#describe_db_parameters :source => 'user'")do
body = Fog::AWS[:rds].describe_db_parameters('fog-group', :source => 'user').body
returns(1){ body['DescribeDBParametersResult']['Parameters'].length}
-
+
param = body['DescribeDBParametersResult']['Parameters'].first
returns('query_cache_size'){param['ParameterName']}
returns('12345'){param['ParameterValue']}
@@ -30,6 +29,6 @@ Shindo.tests('AWS::RDS | parameter requests', ['aws', 'rds']) do
returns('query_cache_size'){param['ParameterName']}
end
Fog::AWS[:rds].delete_db_parameter_group('fog-group')
-
+
end
end
diff --git a/tests/aws/requests/rds/security_group_tests.rb b/tests/aws/requests/rds/security_group_tests.rb
index bed6761..0fbc2cb 100644
--- a/tests/aws/requests/rds/security_group_tests.rb
+++ b/tests/aws/requests/rds/security_group_tests.rb
@@ -7,7 +7,7 @@ Shindo.tests('AWS::RDS | security group requests', ['aws', 'rds']) do
else
@owner_id = Fog::AWS[:rds].security_groups.get('default').owner_id
end
-
+
tests('success') do
tests("#create_db_security_group").formats(AWS::RDS::Formats::CREATE_DB_SECURITY_GROUP) do
@@ -17,85 +17,85 @@ Shindo.tests('AWS::RDS | security group requests', ['aws', 'rds']) do
returns( 'Some description') { body['CreateDBSecurityGroupResult']['DBSecurityGroup']['DBSecurityGroupDescription']}
returns( []) { body['CreateDBSecurityGroupResult']['DBSecurityGroup']['EC2SecurityGroups']}
returns( []) { body['CreateDBSecurityGroupResult']['DBSecurityGroup']['IPRanges']}
-
+
body
end
-
+
tests("#describe_db_security_groups").formats(AWS::RDS::Formats::DESCRIBE_DB_SECURITY_GROUP) do
Fog::AWS[:rds].describe_db_security_groups.body
end
-
+
tests("#authorize_db_security_group_ingress CIDR").formats(AWS::RDS::Formats::AUTHORIZE_DB_SECURITY_GROUP) do
@cidr = '0.0.0.0/0'
body = Fog::AWS[:rds].authorize_db_security_group_ingress(@sec_group_name,{'CIDRIP'=>@cidr}).body
-
- returns("authorizing") { body['AuthorizeDBSecurityGroupIngressResult']['DBSecurityGroup']['IPRanges'].detect{|h| h['CIDRIP'] == @cidr}['Status']}
+
+ returns("authorizing") { body['AuthorizeDBSecurityGroupIngressResult']['DBSecurityGroup']['IPRanges'].find{|h| h['CIDRIP'] == @cidr}['Status']}
body
end
-
+
sec_group = Fog::AWS[:rds].security_groups.get(@sec_group_name)
sec_group.wait_for {ready?}
-
+
tests("#authorize_db_security_group_ingress another CIDR").formats(AWS::RDS::Formats::AUTHORIZE_DB_SECURITY_GROUP) do
@cidr = "10.0.0.0/24"
body = Fog::AWS[:rds].authorize_db_security_group_ingress(@sec_group_name,{'CIDRIP'=>@cidr}).body
-
- returns("authorizing") { body['AuthorizeDBSecurityGroupIngressResult']['DBSecurityGroup']['IPRanges'].detect{|h| h['CIDRIP'] == @cidr}['Status']}
+
+ returns("authorizing") { body['AuthorizeDBSecurityGroupIngressResult']['DBSecurityGroup']['IPRanges'].find{|h| h['CIDRIP'] == @cidr}['Status']}
body
end
-
+
sec_group = Fog::AWS[:rds].security_groups.get(@sec_group_name)
sec_group.wait_for {ready?}
-
+
tests("#count CIDRIP").formats(AWS::RDS::Formats::DESCRIBE_DB_SECURITY_GROUP) do
body = Fog::AWS[:rds].describe_db_security_groups(@sec_group_name).body
returns(2) { body['DescribeDBSecurityGroupsResult']['DBSecurityGroups'][0]['IPRanges'].size }
body
end
-
+
tests("#revoke_db_security_group_ingress CIDR").formats(AWS::RDS::Formats::REVOKE_DB_SECURITY_GROUP) do
@cidr = '0.0.0.0/0'
body = Fog::AWS[:rds].revoke_db_security_group_ingress(@sec_group_name,{'CIDRIP'=> @cidr}).body
- returns("revoking") { body['RevokeDBSecurityGroupIngressResult']['DBSecurityGroup']['IPRanges'].detect{|h| h['CIDRIP'] == @cidr}['Status']}
+ returns("revoking") { body['RevokeDBSecurityGroupIngressResult']['DBSecurityGroup']['IPRanges'].find{|h| h['CIDRIP'] == @cidr}['Status']}
body
end
-
+
tests("#authorize_db_security_group_ingress EC2").formats(AWS::RDS::Formats::AUTHORIZE_DB_SECURITY_GROUP) do
@ec2_sec_group = 'default'
body = Fog::AWS[:rds].authorize_db_security_group_ingress(@sec_group_name,{'EC2SecurityGroupName' => @ec2_sec_group, 'EC2SecurityGroupOwnerId' => @owner_id}).body
-
- returns("authorizing") { body['AuthorizeDBSecurityGroupIngressResult']['DBSecurityGroup']['EC2SecurityGroups'].detect{|h| h['EC2SecurityGroupName'] == @ec2_sec_group}['Status']}
- returns(@owner_id) { body['AuthorizeDBSecurityGroupIngressResult']['DBSecurityGroup']['EC2SecurityGroups'].detect{|h| h['EC2SecurityGroupName'] == @ec2_sec_group}['EC2SecurityGroupOwnerId']}
+
+ returns("authorizing") { body['AuthorizeDBSecurityGroupIngressResult']['DBSecurityGroup']['EC2SecurityGroups'].find{|h| h['EC2SecurityGroupName'] == @ec2_sec_group}['Status']}
+ returns(@owner_id) { body['AuthorizeDBSecurityGroupIngressResult']['DBSecurityGroup']['EC2SecurityGroups'].find{|h| h['EC2SecurityGroupName'] == @ec2_sec_group}['EC2SecurityGroupOwnerId']}
body
end
-
+
tests("duplicate #authorize_db_security_group_ingress EC2").raises(Fog::AWS::RDS::AuthorizationAlreadyExists) do
@ec2_sec_group = 'default'
-
+
Fog::AWS[:rds].authorize_db_security_group_ingress(@sec_group_name,{'EC2SecurityGroupName' => @ec2_sec_group, 'EC2SecurityGroupOwnerId' => @owner_id})
end
-
+
sec_group = Fog::AWS[:rds].security_groups.get(@sec_group_name)
sec_group.wait_for {ready?}
-
+
tests("#revoke_db_security_group_ingress EC2").formats(AWS::RDS::Formats::REVOKE_DB_SECURITY_GROUP) do
@ec2_sec_group = 'default'
-
+
body = Fog::AWS[:rds].revoke_db_security_group_ingress(@sec_group_name,{'EC2SecurityGroupName' => @ec2_sec_group, 'EC2SecurityGroupOwnerId' => @owner_id}).body
-
- returns("revoking") { body['RevokeDBSecurityGroupIngressResult']['DBSecurityGroup']['EC2SecurityGroups'].detect{|h| h['EC2SecurityGroupName'] == @ec2_sec_group}['Status']}
+
+ returns("revoking") { body['RevokeDBSecurityGroupIngressResult']['DBSecurityGroup']['EC2SecurityGroups'].find{|h| h['EC2SecurityGroupName'] == @ec2_sec_group}['Status']}
body
end
-
-
+
+
#TODO, authorize ec2 security groups
-
+
tests("#delete_db_security_group").formats(AWS::RDS::Formats::BASIC) do
body = Fog::AWS[:rds].delete_db_security_group(@sec_group_name).body
-
+
raises(Fog::AWS::RDS::NotFound) {Fog::AWS[:rds].describe_db_security_groups(@sec_group_name)}
body
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/aws/requests/redshift/cluster_parameter_group_tests.rb b/tests/aws/requests/redshift/cluster_parameter_group_tests.rb
index d485db1..c7f4360 100644
--- a/tests/aws/requests/redshift/cluster_parameter_group_tests.rb
+++ b/tests/aws/requests/redshift/cluster_parameter_group_tests.rb
@@ -37,13 +37,12 @@ Shindo.tests('Fog::Redshift[:aws] | cluster parameter group requests', ['aws'])
tests('success') do
tests("create_cluster_parameter_group").formats(@cluster_parameter_group_format) do
- body = Fog::AWS[:redshift].create_cluster_parameter_group(:parameter_group_name=> parameter_group,
- :parameter_group_family=>"redshift-1.0",
+ body = Fog::AWS[:redshift].create_cluster_parameter_group(:parameter_group_name=> parameter_group,
+ :parameter_group_family=>"redshift-1.0",
:description=>'testing').body
body
end
-
tests("describe_cluster_parameter_groups").formats(@cluster_parameter_groups_format) do
body = Fog::AWS[:redshift].describe_cluster_parameter_groups.body
body
@@ -55,14 +54,14 @@ Shindo.tests('Fog::Redshift[:aws] | cluster parameter group requests', ['aws'])
end
tests("modify_cluster_parameter_groups").formats(@modify_cluster_parameter_group_format) do
- body = Fog::AWS[:redshift].modify_cluster_parameter_group(:parameter_group_name=>parameter_group,
+ body = Fog::AWS[:redshift].modify_cluster_parameter_group(:parameter_group_name=>parameter_group,
:parameters=>{
:parameter_name=>'extra_float_digits',
:parameter_value=>2}).body
body
end
- tests("delete_cluster_parameter_group") do
+ tests("delete_cluster_parameter_group") do
present = !Fog::AWS[:redshift].describe_cluster_parameter_groups(:parameter_group_name=>parameter_group).body['ParameterGroups'].empty?
tests("verify presence before deletion").returns(true) { present }
diff --git a/tests/aws/requests/redshift/cluster_security_group_tests.rb b/tests/aws/requests/redshift/cluster_security_group_tests.rb
index 946cdd3..6982683 100644
--- a/tests/aws/requests/redshift/cluster_security_group_tests.rb
+++ b/tests/aws/requests/redshift/cluster_security_group_tests.rb
@@ -1,12 +1,12 @@
Shindo.tests('Fog::Redshift[:aws] | cluster security group requests', ['aws']) do
pending if Fog.mocking?
- suffix = rand(65536).to_s(16)
+ suffix = rand(65536).to_s(16)
identifier = "test-cluster-security-group-#{suffix}"
@cluster_security_group_format = {
"ClusterSecurityGroup" => {
- "EC2SecurityGroups" => Fog::Nullable::Array,
- "IPRanges" => Fog::Nullable::Array,
+ "EC2SecurityGroups" => Fog::Nullable::Array,
+ "IPRanges" => Fog::Nullable::Array,
"Description" => String,
"ClusterSecurityGroupName" => String
}
@@ -16,20 +16,18 @@ Shindo.tests('Fog::Redshift[:aws] | cluster security group requests', ['aws']) d
"ClusterSecurityGroups" => [@cluster_security_group_format]
}
-
tests('success') do
tests("create_cluster_security_group").formats(@cluster_security_group_format) do
body = Fog::AWS[:redshift].create_cluster_security_group(:cluster_security_group_name => identifier, :description => 'testing').body
body
end
-
tests("describe_cluster_security_groups").formats(@describe_cluster_security_groups_format) do
body = Fog::AWS[:redshift].describe_cluster_security_groups.body
body
end
- tests("delete_cluster_security_group") do
+ tests("delete_cluster_security_group") do
present = !Fog::AWS[:redshift].describe_cluster_security_groups(:cluster_security_group_name => identifier).body['ClusterSecurityGroups'].empty?
tests("verify presence before deletion").returns(true) { present }
diff --git a/tests/aws/requests/redshift/cluster_snapshot_tests.rb b/tests/aws/requests/redshift/cluster_snapshot_tests.rb
index f40ba78..7365411 100644
--- a/tests/aws/requests/redshift/cluster_snapshot_tests.rb
+++ b/tests/aws/requests/redshift/cluster_snapshot_tests.rb
@@ -4,7 +4,7 @@ Shindo.tests('Fog::Redshift[:aws] | cluster snapshot requests', ['aws']) do
identifier = "test-snapshot-#{suffix}"
cluster = "test-cluster-#{suffix}"
start_time = Fog::Time.now.to_iso8601_basic
- @cluster_snapshot_format = {
+ @cluster_snapshot_format = {
'Snapshot' => {
"AccountsWithRestoreAccess" => Fog::Nullable::Array,
"Port" => Integer,
@@ -35,39 +35,37 @@ Shindo.tests('Fog::Redshift[:aws] | cluster snapshot requests', ['aws']) do
"Snapshots" => [@cluster_snapshot_format]
}
-
tests('success') do
tests("create_cluster_snapshot").formats(@cluster_snapshot_format) do
- Fog::AWS[:redshift].create_cluster(:cluster_identifier => cluster,
- :master_user_password => 'Pass1234',
- :master_username => 'testuser',
- :node_type => 'dw.hs1.xlarge',
+ Fog::AWS[:redshift].create_cluster(:cluster_identifier => cluster,
+ :master_user_password => 'Pass1234',
+ :master_username => 'testuser',
+ :node_type => 'dw.hs1.xlarge',
:cluster_type => 'single-node')
Fog.wait_for do
"available" == Fog::AWS[:redshift].describe_clusters(:cluster_identifier=>cluster).body['ClusterSet'].first['Cluster']['ClusterStatus']
end
- body = Fog::AWS[:redshift].create_cluster_snapshot(:snapshot_identifier => identifier,
+ body = Fog::AWS[:redshift].create_cluster_snapshot(:snapshot_identifier => identifier,
:cluster_identifier => cluster).body
body
end
-
tests('describe_cluster_snaphots').formats(@describe_cluster_snapshots_format) do
sleep 30 unless Fog.mocking?
body = Fog::AWS[:redshift].describe_cluster_snapshots(:start_time=>start_time).body
body
end
- tests('delete_cluster_snapshot').formats(@cluster_snapshot_format) do
+ tests('delete_cluster_snapshot').formats(@cluster_snapshot_format) do
Fog.wait_for do
- "available" == Fog::AWS[:redshift].describe_cluster_snapshots(:snapshot_identifier=>identifier).body['Snapshots'].first['Snapshot']['Status']
+ "available" == Fog::AWS[:redshift].describe_cluster_snapshots(:snapshot_identifier=>identifier).body['Snapshots'].first['Snapshot']['Status']
end
sleep 30 unless Fog.mocking?
- body = Fog::AWS[:redshift].delete_cluster_snapshot(:snapshot_identifier=>identifier).body
+ body = Fog::AWS[:redshift].delete_cluster_snapshot(:snapshot_identifier=>identifier).body
body
end
- Fog::AWS[:redshift].delete_cluster(:cluster_identifier => cluster,
+ Fog::AWS[:redshift].delete_cluster(:cluster_identifier => cluster,
:skip_final_cluster_snapshot => true)
end
diff --git a/tests/aws/requests/redshift/cluster_tests.rb b/tests/aws/requests/redshift/cluster_tests.rb
index 640461f..27d1ded 100644
--- a/tests/aws/requests/redshift/cluster_tests.rb
+++ b/tests/aws/requests/redshift/cluster_tests.rb
@@ -3,7 +3,7 @@ Shindo.tests('Fog::Redshift[:aws] | cluster requests', ['aws']) do
identifier = "test-cluster-#{rand(65536).to_s(16)}"
@cluster_format = {
- 'Cluster' => {
+ 'Cluster' => {
"ClusterParameterGroups" => [{
"ClusterParameterGroup" => {
"ParameterApplyStatus" => String,
@@ -17,7 +17,7 @@ Shindo.tests('Fog::Redshift[:aws] | cluster requests', ['aws']) do
}
}],
"VpcSecurityGroups" => Fog::Nullable::Array,
- "EndPoint" => Fog::Nullable::Hash,
+ "EndPoint" => Fog::Nullable::Hash,
"PendingModifiedValues" => Fog::Nullable::Hash,
"RestoreStatus" => Fog::Nullable::Hash,
"ClusterVersion" => String,
@@ -37,15 +37,15 @@ Shindo.tests('Fog::Redshift[:aws] | cluster requests', ['aws']) do
@describe_clusters_format = {
"ClusterSet" => [{
'Cluster' => @cluster_format['Cluster'].merge({"ClusterCreateTime"=>Time, "AvailabilityZone"=>String, "EndPoint"=>{"Port"=>Integer, "Address"=>String}})
- }]
+ }]
}
tests('success') do
tests('create_cluster').formats(@cluster_format) do
- body = Fog::AWS[:redshift].create_cluster(:cluster_identifier => identifier,
- :master_user_password => 'Password1234',
+ body = Fog::AWS[:redshift].create_cluster(:cluster_identifier => identifier,
+ :master_user_password => 'Password1234',
:master_username => 'testuser',
- :node_type => 'dw.hs1.xlarge',
+ :node_type => 'dw.hs1.xlarge',
:cluster_type => 'single-node').body
Fog.wait_for do
"available" == Fog::AWS[:redshift].describe_clusters(:cluster_identifier=>identifier).body['ClusterSet'].first['Cluster']['ClusterStatus']
@@ -59,7 +59,6 @@ Shindo.tests('Fog::Redshift[:aws] | cluster requests', ['aws']) do
body
end
-
tests('reboot_cluster') do
sleep 30 unless Fog.mocking?
body = Fog::AWS[:redshift].reboot_cluster(:cluster_identifier=>identifier).body
@@ -67,7 +66,6 @@ Shindo.tests('Fog::Redshift[:aws] | cluster requests', ['aws']) do
body
end
-
tests('delete_cluster') do
Fog.wait_for do
"available" == Fog::AWS[:redshift].describe_clusters(:cluster_identifier=>identifier).body['ClusterSet'].first['Cluster']['ClusterStatus']
diff --git a/tests/aws/requests/ses/helper.rb b/tests/aws/requests/ses/helper.rb
index 8ebe694..b1bc5ba 100644
--- a/tests/aws/requests/ses/helper.rb
+++ b/tests/aws/requests/ses/helper.rb
@@ -1,15 +1,9 @@
class AWS
-
module SES
-
module Formats
-
BASIC = {
'ResponseMetadata' => {'RequestId' => String}
}
-
end
-
end
-
end
diff --git a/tests/aws/requests/simpledb/helper.rb b/tests/aws/requests/simpledb/helper.rb
index 8c5d710..edb3799 100644
--- a/tests/aws/requests/simpledb/helper.rb
+++ b/tests/aws/requests/simpledb/helper.rb
@@ -1,16 +1,10 @@
class AWS
-
module SimpleDB
-
module Formats
-
BASIC = {
'BoxUsage' => Float,
'RequestId' => String
}
-
end
-
end
-
end
diff --git a/tests/aws/requests/sqs/helper.rb b/tests/aws/requests/sqs/helper.rb
index 1e0d5d1..273e273 100644
--- a/tests/aws/requests/sqs/helper.rb
+++ b/tests/aws/requests/sqs/helper.rb
@@ -1,15 +1,9 @@
class AWS
-
module SQS
-
module Formats
-
BASIC = {
'ResponseMetadata' => {'RequestId' => String}
}
-
end
-
end
-
end
diff --git a/tests/aws/requests/sqs/message_tests.rb b/tests/aws/requests/sqs/message_tests.rb
index 7584bf2..e8399e8 100644
--- a/tests/aws/requests/sqs/message_tests.rb
+++ b/tests/aws/requests/sqs/message_tests.rb
@@ -48,4 +48,4 @@ Shindo.tests('AWS::SQS | message requests', ['aws']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/aws/requests/sqs/queue_tests.rb b/tests/aws/requests/sqs/queue_tests.rb
index d06daa4..da2bab0 100644
--- a/tests/aws/requests/sqs/queue_tests.rb
+++ b/tests/aws/requests/sqs/queue_tests.rb
@@ -47,4 +47,4 @@ Shindo.tests('AWS::SQS | queue requests', ['aws']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/aws/requests/storage/bucket_tests.rb b/tests/aws/requests/storage/bucket_tests.rb
index 21e97a0..fd84196 100644
--- a/tests/aws/requests/storage/bucket_tests.rb
+++ b/tests/aws/requests/storage/bucket_tests.rb
@@ -54,7 +54,7 @@ Shindo.tests('Fog::Storage[:aws] | bucket requests', ["aws"]) do
tests("#put_bucket('#{@aws_bucket_name}') existing").succeeds do
Fog::Storage[:aws].put_bucket(@aws_bucket_name)
end
- end
+ end
tests("#get_service").formats(@service_format) do
Fog::Storage[:aws].get_service.body
@@ -66,6 +66,10 @@ Shindo.tests('Fog::Storage[:aws] | bucket requests', ["aws"]) do
Fog::Storage[:aws].get_bucket(@aws_bucket_name).body
end
+ tests("#head_bucket('#{@aws_bucket_name}')").succeeds do
+ Fog::Storage[:aws].head_bucket(@aws_bucket_name)
+ end
+
file.destroy
file1 = Fog::Storage[:aws].directories.get(@aws_bucket_name).files.create(:body => 'a', :key => 'a/a1/file1')
diff --git a/tests/aws/requests/storage/versioning_tests.rb b/tests/aws/requests/storage/versioning_tests.rb
index 4b36d23..f6f455d 100644
--- a/tests/aws/requests/storage/versioning_tests.rb
+++ b/tests/aws/requests/storage/versioning_tests.rb
@@ -72,11 +72,11 @@ Shindo.tests('Fog::Storage[:aws] | versioning', ["aws"]) do
v4 = Fog::Storage[:aws].directories.get(@aws_bucket_name).files.create(:body => 'abcd', :key => v1.key)
tests("versions").returns([v4.version, v3.version, v2.version, v1.version]) do
- @versions.body['Versions'].collect {|v| v['Version']['VersionId']}
+ @versions.body['Versions'].map {|v| v['Version']['VersionId']}
end
tests("version sizes").returns([4, 3, 2, 1]) do
- @versions.body['Versions'].collect {|v| v['Version']['Size']}
+ @versions.body['Versions'].map {|v| v['Version']['Size']}
end
tests("latest version").returns(v4.version) do
@@ -116,7 +116,7 @@ Shindo.tests('Fog::Storage[:aws] | versioning', ["aws"]) do
tests("deleting an object just stores a delete marker").returns(true) do
file.destroy
versions = Fog::Storage[:aws].get_bucket_object_versions(@aws_bucket_name)
- versions.body['Versions'].first.has_key?('DeleteMarker')
+ versions.body['Versions'].first.key?('DeleteMarker')
end
tests("there are two versions: the original and the delete marker").returns(2) do
@@ -126,7 +126,7 @@ Shindo.tests('Fog::Storage[:aws] | versioning', ["aws"]) do
tests("deleting the delete marker makes the object available again").returns(file.version) do
versions = Fog::Storage[:aws].get_bucket_object_versions(@aws_bucket_name)
- delete_marker = versions.body['Versions'].find { |v| v.has_key?('DeleteMarker') }
+ delete_marker = versions.body['Versions'].find { |v| v.key?('DeleteMarker') }
Fog::Storage[:aws].delete_object(@aws_bucket_name, file.key, 'versionId' => delete_marker['DeleteMarker']['VersionId'])
res = Fog::Storage[:aws].get_object(@aws_bucket_name, file.key)
@@ -157,10 +157,10 @@ Shindo.tests('Fog::Storage[:aws] | versioning', ["aws"]) do
versions.body['Versions'].each do |version|
object = version[version.keys.first]
next if file_names.index(object['Key']).nil?
- if !all_versions.has_key?(object['Key'])
- all_versions[object['Key']] = version.has_key?('DeleteMarker')
+ if !all_versions.key?(object['Key'])
+ all_versions[object['Key']] = version.key?('DeleteMarker')
else
- all_versions[object['Key']] |= version.has_key?('DeleteMarker')
+ all_versions[object['Key']] |= version.key?('DeleteMarker')
end
end
all_true = true
diff --git a/tests/aws/requests/sts/assume_role_tests.rb b/tests/aws/requests/sts/assume_role_tests.rb
index 3b8fa3e..cce659f 100644
--- a/tests/aws/requests/sts/assume_role_tests.rb
+++ b/tests/aws/requests/sts/assume_role_tests.rb
@@ -10,7 +10,7 @@ Shindo.tests('AWS::STS | assume role', ['aws']) do
'Arn' => String,
'RequestId' => String
}
-
+
tests("#assume_role('rolename', 'assumed_role_session', 'external_id', #{@policy.inspect}, 900)").formats(@response_format) do
pending if Fog.mocking?
Fog::AWS[:sts].assume_role("rolename","assumed_role_session","external_id", @policy, 900).body
diff --git a/tests/aws/requests/sts/get_federation_token_tests.rb b/tests/aws/requests/sts/get_federation_token_tests.rb
index 469569a..75673a2 100644
--- a/tests/aws/requests/sts/get_federation_token_tests.rb
+++ b/tests/aws/requests/sts/get_federation_token_tests.rb
@@ -16,5 +16,5 @@ Shindo.tests('AWS::STS | session tokens', ['aws']) do
tests("#get_federation_token('test at fog.io', #{@policy.inspect})").formats(@federation_format) do
Fog::AWS[:sts].get_federation_token("test at fog.io", @policy).body
end
-
+
end
diff --git a/tests/aws/requests/sts/session_token_tests.rb b/tests/aws/requests/sts/session_token_tests.rb
index ff52b8b..85a0678 100644
--- a/tests/aws/requests/sts/session_token_tests.rb
+++ b/tests/aws/requests/sts/session_token_tests.rb
@@ -12,5 +12,5 @@ Shindo.tests('AWS::STS | session tokens', ['aws']) do
pending if Fog.mocking?
Fog::AWS[:sts].get_session_token.body
end
-
+
end
diff --git a/tests/aws/signaturev4_tests.rb b/tests/aws/signaturev4_tests.rb
index ca43eb1..8734b4f 100644
--- a/tests/aws/signaturev4_tests.rb
+++ b/tests/aws/signaturev4_tests.rb
@@ -18,7 +18,7 @@ Shindo.tests('AWS | signaturev4', ['aws']) do
'AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20110909/us-east-1/host/aws4_request, SignedHeaders=date;host, Signature=0dc122f3b28b831ab48ba65cb47300de53fbe91b577fe113edac383730254a3b'
end
end
-
+
tests('get-vanilla-query-order-key') do
returns(@signer.sign({:query => {'a' => 'foo', 'b' => 'foo'}, :headers => {'Host' => 'host.foo.com', 'Date' => 'Mon, 09 Sep 2011 23:36:00 GMT'}, :method => :get, :path => '/'}, @now)) do
'AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20110909/us-east-1/host/aws4_request, SignedHeaders=date;host, Signature=0dc122f3b28b831ab48ba65cb47300de53fbe91b577fe113edac383730254a3b'
diff --git a/tests/bluebox/requests/blb/lb_tests.rb b/tests/bluebox/requests/blb/lb_tests.rb
index eabc28c..473d2dc 100644
--- a/tests/bluebox/requests/blb/lb_tests.rb
+++ b/tests/bluebox/requests/blb/lb_tests.rb
@@ -2,7 +2,7 @@ require 'securerandom'
Shindo.tests('Bluebox::BLB | lb_tests', ['bluebox']) do
pending if Fog.mocking?
-
+
tests('success') do
@flavor_id = compute_providers[:bluebox][:server_attributes][:flavor_id]
@image_id = compute_providers[:bluebox][:server_attributes][:image_id]
diff --git a/tests/bluebox/requests/compute/helper.rb b/tests/bluebox/requests/compute/helper.rb
index 990929d..7452f8a 100644
--- a/tests/bluebox/requests/compute/helper.rb
+++ b/tests/bluebox/requests/compute/helper.rb
@@ -1,22 +1,16 @@
class Bluebox
-
module Compute
-
module Formats
-
PRODUCT = {
'cost' => String,
'description' => String,
'id' => String
},
-
+
LOCATION = {
'id' => String,
'description' => String
}
-
end
-
end
-
end
diff --git a/tests/bluebox/requests/compute/location_tests.rb b/tests/bluebox/requests/compute/location_tests.rb
index ce4cbc9..b64cf01 100644
--- a/tests/bluebox/requests/compute/location_tests.rb
+++ b/tests/bluebox/requests/compute/location_tests.rb
@@ -1,10 +1,10 @@
Shindo.tests('Fog::Compute[:bluebox] | location requests', ['bluebox']) do
-
+
@location_format = {
'id' => String,
'description' => String
}
-
+
tests('success') do
@location_id = compute_providers[:bluebox][:server_attributes][:location_id]
@@ -29,4 +29,4 @@ Shindo.tests('Fog::Compute[:bluebox] | location requests', ['bluebox']) do
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/bluebox/requests/dns/dns_tests.rb b/tests/bluebox/requests/dns/dns_tests.rb
index 7ef7c7c..5318eb1 100644
--- a/tests/bluebox/requests/dns/dns_tests.rb
+++ b/tests/bluebox/requests/dns/dns_tests.rb
@@ -244,7 +244,6 @@ Shindo.tests('Fog::DNS[:bluebox] | DNS requests', ['bluebox', 'dns']) do
end
-
tests( 'failure') do
#create a zone with invalid parameters
diff --git a/tests/brightbox/compute/schema.rb b/tests/brightbox/compute/schema.rb
index 27c1111..0d85e01 100644
--- a/tests/brightbox/compute/schema.rb
+++ b/tests/brightbox/compute/schema.rb
@@ -240,7 +240,6 @@ class Brightbox
"email_address" => String
}
-
COLLABORATION = {
"id" => String,
"resource_type" => String,
diff --git a/tests/brightbox/requests/compute/cloud_ip_tests.rb b/tests/brightbox/requests/compute/cloud_ip_tests.rb
index c0a274a..2c8885f 100644
--- a/tests/brightbox/requests/compute/cloud_ip_tests.rb
+++ b/tests/brightbox/requests/compute/cloud_ip_tests.rb
@@ -82,5 +82,4 @@ Shindo.tests('Fog::Compute[:brightbox] | cloud ip requests', ['brightbox']) do
end
-
end
diff --git a/tests/brightbox/requests/compute/collaboration_tests.rb b/tests/brightbox/requests/compute/collaboration_tests.rb
index b389615..bc60041 100644
--- a/tests/brightbox/requests/compute/collaboration_tests.rb
+++ b/tests/brightbox/requests/compute/collaboration_tests.rb
@@ -9,7 +9,6 @@ Shindo.tests('Fog::Compute[:brightbox] | collaboration requests', ['brightbox'])
formats(Brightbox::Compute::Formats::Full::COLLABORATION, false) { collaboration }
end
-
tests("#list_collaborations") do
pending if Fog.mocking?
result = Fog::Compute[:brightbox].list_collaborations
@@ -23,7 +22,6 @@ Shindo.tests('Fog::Compute[:brightbox] | collaboration requests', ['brightbox'])
formats(Brightbox::Compute::Formats::Full::COLLABORATION, false) { result }
end
-
tests("#destroy_collaboration") do
pending if Fog.mocking?
result = Fog::Compute[:brightbox].destroy_collaboration(@collaboration_id)
diff --git a/tests/brightbox/requests/compute/helper.rb b/tests/brightbox/requests/compute/helper.rb
index 3ab5485..9921057 100644
--- a/tests/brightbox/requests/compute/helper.rb
+++ b/tests/brightbox/requests/compute/helper.rb
@@ -30,7 +30,7 @@ class Brightbox
server
end
- private
+ private
def self.select_testing_image_from_api
images = Fog::Compute[:brightbox].list_images
raise "No available images!" if images.empty?
diff --git a/tests/clodo/requests/compute/server_tests.rb b/tests/clodo/requests/compute/server_tests.rb
index 814fc22..cc04553 100644
--- a/tests/clodo/requests/compute/server_tests.rb
+++ b/tests/clodo/requests/compute/server_tests.rb
@@ -95,7 +95,7 @@ Shindo.tests('Fog::Compute[:clodo] | server requests', ['clodo']) do
# tests("- delete_ip_address(#{@server_id}, #{@additional_ip['ip']})").success do
# clodo.delete_ip_address(@server_id, @additional_ip['ip'])
# end
-
+
tests("- stop_server(#{@server_id})").succeeds do
clodo.stop_server(@server_id)
end
diff --git a/tests/cloudsigma/models/server_tests.rb b/tests/cloudsigma/models/server_tests.rb
index cf91505..476e6b0 100644
--- a/tests/cloudsigma/models/server_tests.rb
+++ b/tests/cloudsigma/models/server_tests.rb
@@ -69,4 +69,4 @@ Shindo.tests('Fog::Compute[:cloudsigma] | server model', ['cloudsigma']) do
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/cloudsigma/models/volume_tests.rb b/tests/cloudsigma/models/volume_tests.rb
index 8f970dd..baebee2 100644
--- a/tests/cloudsigma/models/volume_tests.rb
+++ b/tests/cloudsigma/models/volume_tests.rb
@@ -18,4 +18,4 @@ Shindo.tests('Fog::Compute[:cloudsigma] | volume model', ['cloudsigma']) do
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/cloudsigma/models/volumes_tests.rb b/tests/cloudsigma/models/volumes_tests.rb
index 35903ff..fcf7bfd 100644
--- a/tests/cloudsigma/models/volumes_tests.rb
+++ b/tests/cloudsigma/models/volumes_tests.rb
@@ -6,4 +6,4 @@ Shindo.tests('Fog::Compute[:cloudsigma] | volumes collection', ['cloudsigma']) d
@instance.wait_for(timeout=60) { status == 'unmounted' }
end
-end
\ No newline at end of file
+end
diff --git a/tests/cloudsigma/requests/server_tests.rb b/tests/cloudsigma/requests/server_tests.rb
index 7b803c0..6a99de0 100644
--- a/tests/cloudsigma/requests/server_tests.rb
+++ b/tests/cloudsigma/requests/server_tests.rb
@@ -50,22 +50,18 @@ Shindo.tests('Fog::Compute[:cloudsigma] | server requests', ['cloudsigma']) do
response.body['result'] == "success"
end
-
server = Fog::Compute[:cloudsigma].servers.get(@server_uuid)
server.wait_for { status == 'running' }
-
tests("#stop_server(#@server_uuid)").succeeds do
response = Fog::Compute[:cloudsigma].stop_server(@server_uuid)
response.body['result'] == "success"
end
-
server = Fog::Compute[:cloudsigma].servers.get(@server_uuid)
server.wait_for { status == 'stopped' }
-
tests("#delete_server(#@server_uuid)").succeeds do
resp = Fog::Compute[:cloudsigma].delete_server(@server_uuid)
diff --git a/tests/cloudsigma/requests/volumes_tests.rb b/tests/cloudsigma/requests/volumes_tests.rb
index c9e6df1..21c541c 100644
--- a/tests/cloudsigma/requests/volumes_tests.rb
+++ b/tests/cloudsigma/requests/volumes_tests.rb
@@ -52,4 +52,4 @@ Shindo.tests('Fog::Compute[:cloudsigma] | volume requests', ['cloudsigma']) do
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/cloudstack/compute/models/security_group_rule_tests.rb b/tests/cloudstack/compute/models/security_group_rule_tests.rb
index 1e5e712..e715f16 100644
--- a/tests/cloudstack/compute/models/security_group_rule_tests.rb
+++ b/tests/cloudstack/compute/models/security_group_rule_tests.rb
@@ -21,7 +21,6 @@ Shindo.tests("Fog::Compute[:#{provider}] | security_group_rules | ingress", [pro
end
-
Shindo.tests("Fog::Compute[:#{provider}] | security_group_rules | egress", [provider.to_s]) do
security_group_rule_tests(Fog::Compute[:cloudstack], config, "egress", config[:mocked])
diff --git a/tests/cloudstack/compute/models/security_groups_tests.rb b/tests/cloudstack/compute/models/security_groups_tests.rb
index c8a9a67..132ea9b 100644
--- a/tests/cloudstack/compute/models/security_groups_tests.rb
+++ b/tests/cloudstack/compute/models/security_groups_tests.rb
@@ -10,7 +10,6 @@ def security_group_tests(provider, params, mocks_implemented = true)
end
end
-
provider, config = :cloudstack, compute_providers[:cloudstack]
Shindo.tests("Fog::Compute[:#{provider}] | security_group", [provider.to_s]) do
diff --git a/tests/cloudstack/compute/models/volumes_tests.rb b/tests/cloudstack/compute/models/volumes_tests.rb
index c293214..7af3935 100644
--- a/tests/cloudstack/compute/models/volumes_tests.rb
+++ b/tests/cloudstack/compute/models/volumes_tests.rb
@@ -1,5 +1,4 @@
def volumes_tests(connection, params = {}, mocks_implemented = true)
-
collection_tests(connection.volumes, params, mocks_implemented) do
if !Fog.mocking? || mocks_implemented
@@ -7,7 +6,6 @@ def volumes_tests(connection, params = {}, mocks_implemented = true)
end
end
-
end
config = compute_providers[:cloudstack]
diff --git a/tests/cloudstack/requests/disk_offering_tests.rb b/tests/cloudstack/requests/disk_offering_tests.rb
index d4802e8..1212991 100644
--- a/tests/cloudstack/requests/disk_offering_tests.rb
+++ b/tests/cloudstack/requests/disk_offering_tests.rb
@@ -26,4 +26,4 @@ Shindo.tests('Fog::Compute[:cloudstack] | disk offering requests', ['cloudstack'
end
-end
\ No newline at end of file
+end
diff --git a/tests/cloudstack/requests/os_type_tests.rb b/tests/cloudstack/requests/os_type_tests.rb
index 514b695..e36533e 100644
--- a/tests/cloudstack/requests/os_type_tests.rb
+++ b/tests/cloudstack/requests/os_type_tests.rb
@@ -26,7 +26,7 @@ Shindo.tests('Fog::Compute[:cloudstack] | os type requests', ['cloudstack']) do
tests('#list_os_types').formats(@os_types_format) do
Fog::Compute[:cloudstack].list_os_types
end
-
+
tests('#list_os_categories').formats(@os_categories_format) do
pending if Fog.mocking?
Fog::Compute[:cloudstack].list_os_categories
@@ -34,4 +34,4 @@ Shindo.tests('Fog::Compute[:cloudstack] | os type requests', ['cloudstack']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/cloudstack/requests/security_group_tests.rb b/tests/cloudstack/requests/security_group_tests.rb
index 9f8f961..bd20daa 100644
--- a/tests/cloudstack/requests/security_group_tests.rb
+++ b/tests/cloudstack/requests/security_group_tests.rb
@@ -26,4 +26,4 @@ Shindo.tests('Fog::Compute[:cloudstack] | security group requests', ['cloudstack
end
-end
\ No newline at end of file
+end
diff --git a/tests/cloudstack/requests/service_offering_tests.rb b/tests/cloudstack/requests/service_offering_tests.rb
index 01360b9..6262ab2 100644
--- a/tests/cloudstack/requests/service_offering_tests.rb
+++ b/tests/cloudstack/requests/service_offering_tests.rb
@@ -35,4 +35,4 @@ Shindo.tests('Fog::Compute[:cloudstack] | service offering requests', ['cloudsta
end
-end
\ No newline at end of file
+end
diff --git a/tests/cloudstack/requests/snapshot_tests.rb b/tests/cloudstack/requests/snapshot_tests.rb
index 4cae8a2..dd0796c 100644
--- a/tests/cloudstack/requests/snapshot_tests.rb
+++ b/tests/cloudstack/requests/snapshot_tests.rb
@@ -29,4 +29,4 @@ Shindo.tests('Fog::Compute[:cloudstack] | snapshot requests', ['cloudstack']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/cloudstack/requests/ssh_key_pair_tests.rb b/tests/cloudstack/requests/ssh_key_pair_tests.rb
index 63e5a9d..2bfbe62 100644
--- a/tests/cloudstack/requests/ssh_key_pair_tests.rb
+++ b/tests/cloudstack/requests/ssh_key_pair_tests.rb
@@ -20,4 +20,4 @@ Shindo.tests('Fog::Compute[:cloudstack] | ssh key pairs requests', ['cloudstack'
end
-end
\ No newline at end of file
+end
diff --git a/tests/cloudstack/requests/template_tests.rb b/tests/cloudstack/requests/template_tests.rb
index 758c2b9..4ce2904 100644
--- a/tests/cloudstack/requests/template_tests.rb
+++ b/tests/cloudstack/requests/template_tests.rb
@@ -28,7 +28,7 @@ Shindo.tests('Fog::Compute[:cloudstack] | template requests', ['cloudstack']) do
'isextractable' => Fog::Boolean,
'checksum' => Fog::Nullable::String,
'sourcetemplateid' => Fog::Nullable::Integer,
- 'accountid' => Fog::Nullable::Integer,
+ 'accountid' => Fog::Nullable::Integer,
'bootable' => Fog::Nullable::Boolean,
'hostid' => Fog::Nullable::Integer,
'hostname' => Fog::Nullable::String,
@@ -50,4 +50,4 @@ Shindo.tests('Fog::Compute[:cloudstack] | template requests', ['cloudstack']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/core/attribute_tests.rb b/tests/core/attribute_tests.rb
index 63fd5e5..7ec97bd 100644
--- a/tests/core/attribute_tests.rb
+++ b/tests/core/attribute_tests.rb
@@ -62,7 +62,7 @@ Shindo.tests('Fog::Attributes', 'core') do
@model.merge_attributes(:bool => true)
@model.bool
end
-
+
tests(':bool => "false"').returns(false) do
@model.merge_attributes(:bool => 'false')
@model.bool
@@ -77,7 +77,7 @@ Shindo.tests('Fog::Attributes', 'core') do
@model.merge_attributes(:bool => "foo")
@model.bool
end
-
+
end
end
diff --git a/tests/core/mocking_tests.rb b/tests/core/mocking_tests.rb
index f9b5382..19cb685 100644
--- a/tests/core/mocking_tests.rb
+++ b/tests/core/mocking_tests.rb
@@ -71,5 +71,5 @@ Shindo.tests('Fog mocking', 'core') do
Fog::Mock.not_implemented
end
-
+
end
diff --git a/tests/core/parser_tests.rb b/tests/core/parser_tests.rb
index ddb0767..e8a5016 100644
--- a/tests/core/parser_tests.rb
+++ b/tests/core/parser_tests.rb
@@ -20,7 +20,6 @@ Shindo.tests('Fog::Parsers', 'core') do
when 'id'
@my_array << value.to_i
end
-
end
end
diff --git a/tests/core/service_tests.rb b/tests/core/service_tests.rb
index 7c5f0ba..d6b9323 100644
--- a/tests/core/service_tests.rb
+++ b/tests/core/service_tests.rb
@@ -23,4 +23,4 @@ Shindo.tests('Fog::Service', ['core']) do
returns('User-Agent' => user_agent) { service.options[:connection_options][:headers] }
end
-end
\ No newline at end of file
+end
diff --git a/tests/core/uuid_tests.rb b/tests/core/uuid_tests.rb
index d4dbe1a..b86e599 100644
--- a/tests/core/uuid_tests.rb
+++ b/tests/core/uuid_tests.rb
@@ -7,4 +7,4 @@ Shindo.tests('Fog::UUID', 'core') do
tests('success').succeeds do
Fog::UUID.uuid =~ /[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/
end
-end
\ No newline at end of file
+end
diff --git a/tests/core/wait_for_tests.rb b/tests/core/wait_for_tests.rb
index 1259b1c..102f325 100644
--- a/tests/core/wait_for_tests.rb
+++ b/tests/core/wait_for_tests.rb
@@ -4,7 +4,7 @@ Shindo.tests('Fog#wait_for', 'core') do
Fog.wait_for(1) { true }
end
end
-
+
tests("failure") do
tests('Fog#wait_for').raises(Fog::Errors::TimeoutError) do
Fog.wait_for(2) { false }
diff --git a/tests/digitalocean/models/compute/flavor_tests.rb b/tests/digitalocean/models/compute/flavor_tests.rb
index 4c29276..322c94c 100644
--- a/tests/digitalocean/models/compute/flavor_tests.rb
+++ b/tests/digitalocean/models/compute/flavor_tests.rb
@@ -20,11 +20,10 @@ Shindo.tests("Fog::Compute[:digitalocean] | flavor model", ['digitalocean', 'com
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
end
end
-
diff --git a/tests/digitalocean/models/compute/image_tests.rb b/tests/digitalocean/models/compute/image_tests.rb
index 8707cd9..fc1606d 100644
--- a/tests/digitalocean/models/compute/image_tests.rb
+++ b/tests/digitalocean/models/compute/image_tests.rb
@@ -21,11 +21,10 @@ Shindo.tests("Fog::Compute[:digitalocean] | image model", ['digitalocean', 'comp
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
end
end
-
diff --git a/tests/digitalocean/models/compute/region_tests.rb b/tests/digitalocean/models/compute/region_tests.rb
index 1a9dc0c..5cb3ee7 100644
--- a/tests/digitalocean/models/compute/region_tests.rb
+++ b/tests/digitalocean/models/compute/region_tests.rb
@@ -20,11 +20,10 @@ Shindo.tests("Fog::Compute[:digitalocean] | region model", ['digitalocean', 'com
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
end
end
-
diff --git a/tests/digitalocean/models/compute/server_tests.rb b/tests/digitalocean/models/compute/server_tests.rb
index 63ec809..ff5d144 100644
--- a/tests/digitalocean/models/compute/server_tests.rb
+++ b/tests/digitalocean/models/compute/server_tests.rb
@@ -91,4 +91,3 @@ Shindo.tests("Fog::Compute[:digitalocean] | server model", ['digitalocean', 'com
server.wait_for { ready? }
end
-
diff --git a/tests/digitalocean/models/compute/ssh_key_tests.rb b/tests/digitalocean/models/compute/ssh_key_tests.rb
index c2753f5..e3a259b 100644
--- a/tests/digitalocean/models/compute/ssh_key_tests.rb
+++ b/tests/digitalocean/models/compute/ssh_key_tests.rb
@@ -41,4 +41,3 @@ Shindo.tests("Fog::Compute[:digitalocean] | ssh_key model", ['digitalocean', 'co
end
end
-
diff --git a/tests/digitalocean/requests/compute/create_ssh_key_tests.rb b/tests/digitalocean/requests/compute/create_ssh_key_tests.rb
index 74a098f..f92aec1 100644
--- a/tests/digitalocean/requests/compute/create_ssh_key_tests.rb
+++ b/tests/digitalocean/requests/compute/create_ssh_key_tests.rb
@@ -14,7 +14,7 @@ Shindo.tests('Fog::Compute[:digitalocean] | create_ssh_key request', ['digitaloc
@key = Fog::Compute[:digitalocean].create_ssh_key 'fookey', 'fookey'
@key.body
end
-
+
end
service.destroy_ssh_key @key.body['ssh_key']['id']
diff --git a/tests/digitalocean/requests/compute/destroy_ssh_key_tests.rb b/tests/digitalocean/requests/compute/destroy_ssh_key_tests.rb
index 7e0388a..7084a42 100644
--- a/tests/digitalocean/requests/compute/destroy_ssh_key_tests.rb
+++ b/tests/digitalocean/requests/compute/destroy_ssh_key_tests.rb
@@ -8,7 +8,7 @@ Shindo.tests('Fog::Compute[:digitalocean] | destroy_ssh_key request', ['digitalo
key = service.create_ssh_key 'fookey', 'fookey'
service.destroy_ssh_key(key.body['ssh_key']['id']).body['status'] == 'OK'
end
-
+
end
tests('failures') do
@@ -18,6 +18,6 @@ Shindo.tests('Fog::Compute[:digitalocean] | destroy_ssh_key request', ['digitalo
pending unless Fog.mocking?
service.destroy_ssh_key('00000000000').body['status'] == 'ERROR'
end
- end
+ end
end
diff --git a/tests/digitalocean/requests/compute/list_servers_tests.rb b/tests/digitalocean/requests/compute/list_servers_tests.rb
index 9e520ff..4e847a2 100644
--- a/tests/digitalocean/requests/compute/list_servers_tests.rb
+++ b/tests/digitalocean/requests/compute/list_servers_tests.rb
@@ -1,5 +1,5 @@
Shindo.tests('Fog::Compute[:digitalocean] | list_servers request', ['digitalocean', 'compute']) do
-
+
@server_format = {
'id' => Integer,
'name' => String,
diff --git a/tests/digitalocean/requests/compute/power_cycle_server_tests.rb b/tests/digitalocean/requests/compute/power_cycle_server_tests.rb
index e393be2..93a2e2d 100644
--- a/tests/digitalocean/requests/compute/power_cycle_server_tests.rb
+++ b/tests/digitalocean/requests/compute/power_cycle_server_tests.rb
@@ -13,8 +13,8 @@ Shindo.tests('Fog::Compute[:digitalocean] | power_cycle_server request', ['digit
server.state == 'off'
end
end
-
+
end
-
+
end
diff --git a/tests/digitalocean/requests/compute/power_state_tests.rb b/tests/digitalocean/requests/compute/power_state_tests.rb
index c8555b0..aec88c6 100644
--- a/tests/digitalocean/requests/compute/power_state_tests.rb
+++ b/tests/digitalocean/requests/compute/power_state_tests.rb
@@ -1,4 +1,4 @@
-Shindo.tests('Fog::Compute[:digitalocean] | power on/off/shutdown requests',
+Shindo.tests('Fog::Compute[:digitalocean] | power on/off/shutdown requests',
['digitalocean', 'compute']) do
service = Fog::Compute[:digitalocean]
@@ -13,11 +13,11 @@ Shindo.tests('Fog::Compute[:digitalocean] | power on/off/shutdown requests',
test('#power_on_server') do
service.power_on_server(server.id).body['status'] == 'OK'
end
-
+
test('#shutdown_server') do
service.shutdown_server(server.id).body['status'] == 'OK'
end
-
+
server.start
end
diff --git a/tests/digitalocean/requests/compute/reboot_server_tests.rb b/tests/digitalocean/requests/compute/reboot_server_tests.rb
index 6b8ec76..1de4f68 100644
--- a/tests/digitalocean/requests/compute/reboot_server_tests.rb
+++ b/tests/digitalocean/requests/compute/reboot_server_tests.rb
@@ -7,8 +7,8 @@ Shindo.tests('Fog::Compute[:digitalocean] | reboot_server request', ['digitaloce
tests('#reboot_server').succeeds do
service.reboot_server(server.id).body['status'] == 'OK'
end
-
+
end
-
+
end
diff --git a/tests/dreamhost/dns_tests.rb b/tests/dreamhost/dns_tests.rb
index 60c8cd5..ac5c63c 100644
--- a/tests/dreamhost/dns_tests.rb
+++ b/tests/dreamhost/dns_tests.rb
@@ -9,7 +9,7 @@ Shindo.tests('Fog::DNS[:dreamhost]', ['dreamhost', 'dns']) do
test("it should respond to #{collection}.get") { eval("service.#{collection}").respond_to? 'get' }
end
end
-
+
tests("requests") do
%w{ list_records create_record delete_record }.each do |request|
test("it should respond to #{request}") { service.respond_to? request }
@@ -17,4 +17,3 @@ Shindo.tests('Fog::DNS[:dreamhost]', ['dreamhost', 'dns']) do
end
end
-
diff --git a/tests/dreamhost/helper.rb b/tests/dreamhost/helper.rb
index d47fc08..e22213e 100644
--- a/tests/dreamhost/helper.rb
+++ b/tests/dreamhost/helper.rb
@@ -2,7 +2,7 @@ def test_domain
'fog-dream.com'
end
-def do_not_delete_record
+def do_not_delete_record
"do-not-delete.#{test_domain}"
end
diff --git a/tests/dreamhost/models/dns/record_tests.rb b/tests/dreamhost/models/dns/record_tests.rb
index 00e3e1c..ba89a88 100644
--- a/tests/dreamhost/models/dns/record_tests.rb
+++ b/tests/dreamhost/models/dns/record_tests.rb
@@ -6,7 +6,7 @@ Shindo.tests("Fog::DNS[:dreamhost] | record", ['dreamhost', 'dns']) do
tests('#attributes') do
tests('should have') do
model_attribute_hash = record.attributes
- attributes = [
+ attributes = [
:name,
:value,
:zone,
@@ -19,7 +19,7 @@ Shindo.tests("Fog::DNS[:dreamhost] | record", ['dreamhost', 'dns']) do
test("#{attribute} method") { record.respond_to? attribute }
end
attributes.each do |attribute|
- test("#{attribute} key") { model_attribute_hash.has_key? attribute }
+ test("#{attribute} key") { model_attribute_hash.key? attribute }
end
end
@@ -33,9 +33,9 @@ Shindo.tests("Fog::DNS[:dreamhost] | record", ['dreamhost', 'dns']) do
:type => 'A',
:value => "8.8.8.8"
sleep 10
- tests('#save') do
+ tests('#save') do
test('returns Fog::DNS::Dreamhost::Record') do
- r.is_a? Fog::DNS::Dreamhost::Record
+ r.is_a? Fog::DNS::Dreamhost::Record
end
test('value is 8.8.8.8') do
r.value == '8.8.8.8'
@@ -70,4 +70,3 @@ Shindo.tests("Fog::DNS[:dreamhost] | record", ['dreamhost', 'dns']) do
cleanup_records
end
-
diff --git a/tests/dreamhost/models/dns/records_tests.rb b/tests/dreamhost/models/dns/records_tests.rb
index 3573e87..af82b30 100644
--- a/tests/dreamhost/models/dns/records_tests.rb
+++ b/tests/dreamhost/models/dns/records_tests.rb
@@ -1,14 +1,14 @@
Shindo.tests("Fog::DNS[:dreamhost] | records", ['dreamhost', 'dns']) do
service = Fog::DNS[:dreamhost]
-
+
tests('#all') do
records = service.records
test('should be an array') { records.is_a? Array }
test('should not be empty') { !records.empty? }
-
+
tests('should list Fog::DNS::Dreamhost::Record') do
records.each do |r|
test("as records") { r.is_a?(Fog::DNS::Dreamhost::Record) }
@@ -26,4 +26,3 @@ Shindo.tests("Fog::DNS[:dreamhost] | records", ['dreamhost', 'dns']) do
end
end
-
diff --git a/tests/dreamhost/models/dns/zone_tests.rb b/tests/dreamhost/models/dns/zone_tests.rb
index 2df835a..e15a142 100644
--- a/tests/dreamhost/models/dns/zone_tests.rb
+++ b/tests/dreamhost/models/dns/zone_tests.rb
@@ -6,7 +6,7 @@ Shindo.tests("Fog::DNS[:dreamhost] | zone", ['dreamhost', 'dns']) do
tests('#attributes') do
tests('should have') do
model_attribute_hash = zone.attributes
- attributes = [
+ attributes = [
:domain,
:id,
]
@@ -14,7 +14,7 @@ Shindo.tests("Fog::DNS[:dreamhost] | zone", ['dreamhost', 'dns']) do
test("#{attribute} method") { zone.respond_to? attribute }
end
attributes.each do |attribute|
- test("#{attribute} key") { model_attribute_hash.has_key? attribute }
+ test("#{attribute} key") { model_attribute_hash.key? attribute }
end
end
@@ -24,7 +24,7 @@ Shindo.tests("Fog::DNS[:dreamhost] | zone", ['dreamhost', 'dns']) do
tests('Write operations') do
name = "#{test_domain}"
- tests('#save') do
+ tests('#save') do
# Does not capture the exception for some reason
#raises(NotImplementedError, 'raises NotImplementedError') do
# service.zones.create :domain => name
@@ -59,4 +59,3 @@ Shindo.tests("Fog::DNS[:dreamhost] | zone", ['dreamhost', 'dns']) do
end
end
-
diff --git a/tests/dreamhost/models/dns/zones_tests.rb b/tests/dreamhost/models/dns/zones_tests.rb
index 3ea0565..ee525b4 100644
--- a/tests/dreamhost/models/dns/zones_tests.rb
+++ b/tests/dreamhost/models/dns/zones_tests.rb
@@ -1,14 +1,14 @@
Shindo.tests("Fog::DNS[:dreamhost] | Zones Collection", ['dreamhost', 'dns']) do
service = Fog::DNS[:dreamhost]
-
+
tests('#all') do
zones = service.zones
test('should be an array') { zones.is_a? Array }
test('should not be empty') { !zones.empty? }
-
+
tests('should list Fog::DNS::Dreamhost::Zone') do
zones.each do |r|
test("as zone") { r.is_a?(Fog::DNS::Dreamhost::Zone) }
@@ -18,7 +18,7 @@ Shindo.tests("Fog::DNS[:dreamhost] | Zones Collection", ['dreamhost', 'dns']) do
tests('#get') do
tests('should fetch a zone') do
- zone = service.zones.get test_domain
+ zone = service.zones.get test_domain
test('should be a Fog::DNS::Dreamhost::Zone') do
zone.is_a? Fog::DNS::Dreamhost::Zone
end
@@ -26,4 +26,3 @@ Shindo.tests("Fog::DNS[:dreamhost] | Zones Collection", ['dreamhost', 'dns']) do
end
end
-
diff --git a/tests/dreamhost/requests/dns/create_record_tests.rb b/tests/dreamhost/requests/dns/create_record_tests.rb
index ab15f25..b97d151 100644
--- a/tests/dreamhost/requests/dns/create_record_tests.rb
+++ b/tests/dreamhost/requests/dns/create_record_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::DNS[:dreamhost] | create_record request', ['dreamhost', 'dns']) do
tests("success") do
-
+
test("create an A resource record without comment") do
name = "foo.testing.#{test_domain}"
type = "A"
@@ -10,14 +10,14 @@ Shindo.tests('Fog::DNS[:dreamhost] | create_record request', ['dreamhost', 'dns'
response.body['result'] == 'success'
end
-
+
test("create an A resource record with comment") do
name = "foo2.testing.#{test_domain}"
type = "A"
value = "1.2.3.4"
comment = "test"
response = Fog::DNS[:dreamhost].create_record(name, type, value, comment)
-
+
response.body['result'] == 'success'
end
@@ -27,7 +27,7 @@ Shindo.tests('Fog::DNS[:dreamhost] | create_record request', ['dreamhost', 'dns'
value = "foobar"
comment = "test"
response = Fog::DNS[:dreamhost].create_record(name, type, value, comment)
-
+
response.body['result'] == 'success'
end
diff --git a/tests/dreamhost/requests/dns/delete_record_tests.rb b/tests/dreamhost/requests/dns/delete_record_tests.rb
index 0f8b82a..2b216a8 100644
--- a/tests/dreamhost/requests/dns/delete_record_tests.rb
+++ b/tests/dreamhost/requests/dns/delete_record_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::DNS[:dreamhost] | delete_record request', ['dreamhost', 'dns']) do
tests("success") do
-
+
test("delete testing records") do
name = "delete-test.#{test_domain}"
type = "A"
diff --git a/tests/dreamhost/requests/dns/list_records_tests.rb b/tests/dreamhost/requests/dns/list_records_tests.rb
index 0c48270..32025cb 100644
--- a/tests/dreamhost/requests/dns/list_records_tests.rb
+++ b/tests/dreamhost/requests/dns/list_records_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::DNS[:dreamhost] | list_records request', ['dreamhost', 'dns']) do
tests("success") do
-
+
response = Fog::DNS[:dreamhost].list_records
test("should return 200") do
@@ -22,7 +22,7 @@ Shindo.tests('Fog::DNS[:dreamhost] | list_records request', ['dreamhost', 'dns']
end
end
end
-
+
end
# helper
diff --git a/tests/ecloud/compute/models/internet_service_tests.rb b/tests/ecloud/compute/models/internet_service_tests.rb
index a965388..cee9131 100644
--- a/tests/ecloud/compute/models/internet_service_tests.rb
+++ b/tests/ecloud/compute/models/internet_service_tests.rb
@@ -3,9 +3,9 @@ provider, config = :ecloud, compute_providers[:ecloud]
Shindo.tests("Fog::Compute[:#{provider}] | internet_services", [provider.to_s, "queries"]) do
connection = Fog::Compute[provider]
organization = connection.organizations.first
- environment = organization.environments.detect { |e| e.name == config[:ecloud_environment_name] } || organization.environments.first
+ environment = organization.environments.find { |e| e.name == config[:ecloud_environment_name] } || organization.environments.first
public_ips = environment.public_ips
- public_ip = public_ips.detect { |i| i.name == config[:ecloud_public_ip_name] } || public_ips.first
+ public_ip = public_ips.find { |i| i.name == config[:ecloud_public_ip_name] } || public_ips.first
@internet_services = public_ip.internet_services
tests('#all').succeeds do
diff --git a/tests/ecloud/compute/models/server_tests.rb b/tests/ecloud/compute/models/server_tests.rb
index 228c14f..501bb3e 100644
--- a/tests/ecloud/compute/models/server_tests.rb
+++ b/tests/ecloud/compute/models/server_tests.rb
@@ -8,7 +8,7 @@ Shindo.tests("Fog::Compute[:#{provider}] | servers", [provider.to_s, "operations
public_ip = environment.public_ips.first
compute_pool = environment.compute_pools.first
image_href = Fog.credentials[:ecloud_image_href] || compute_pool.templates.first.href
- ssh_key = organization.admin.ssh_keys.detect { |key| key.name == "root" } || organization.admin.ssh_keys.first
+ ssh_key = organization.admin.ssh_keys.find { |key| key.name == "root" } || organization.admin.ssh_keys.first
@network = environment.networks.first
options = config[:server_attributes].merge(:network_uri => @network.href, :ssh_key_uri => ssh_key.href)
@@ -25,11 +25,11 @@ Shindo.tests("Fog::Compute[:#{provider}] | servers", [provider.to_s, "operations
@server = compute_pool.servers.get(vm_uri)
tests('#environment_has_a_row_and_group_with_the_right_names').succeeds do
- row = environment.rows.detect { |r| r.name == options[:row] }
+ row = environment.rows.find { |r| r.name == options[:row] }
returns(false, "row is not nil") { row.nil? }
- group = row.groups.detect { |g| g.name == options[:group] }
+ group = row.groups.find { |g| g.name == options[:group] }
returns(false, "group is not nil") { group.nil? }
- server = group.servers.detect { |s| s.name == options[:name] }
+ server = group.servers.find { |s| s.name == options[:name] }
returns(false, "group has server") { server.nil? }
end
@@ -57,7 +57,7 @@ Shindo.tests("Fog::Compute[:#{provider}] | servers", [provider.to_s, "operations
@server.delete_disk(1)
end
- @ip = @network.ips.reload.detect { |i| i.host.nil? && i.detected_on.nil? }
+ @ip = @network.ips.reload.find { |i| i.host.nil? && i.detected_on.nil? }
tests('#add_ip_to_server').succeeds do
@server.add_ip(:href => @network.href, :network_name => @network.name, :ip => @ip.name)
end
@@ -74,7 +74,7 @@ Shindo.tests("Fog::Compute[:#{provider}] | servers", [provider.to_s, "operations
@service = public_ip.internet_services.first
@ip_address = @server.ips.first
- @ip = @server.ips.first.network.ips.detect { |i| i.name == @ip_address.address.name }
+ @ip = @server.ips.first.network.ips.find { |i| i.name == @ip_address.address.name }
@node = @service.nodes.create(:name => @server.name, :port => service_port, :ip_address => @ip.href, :description => "", :enabled => true)
tests('#create_node_service').succeeds do
returns(true, "is a node server") { @node.is_a?(Fog::Compute::Ecloud::Node) }
@@ -103,8 +103,8 @@ Shindo.tests("Fog::Compute[:#{provider}] | servers", [provider.to_s, "operations
returns(true, "server count is reduced") { @new_server_count < @server_count }
end
- @row = environment.rows.detect { |r| r.name == options[:row] }
- @group = @row.groups.detect { |g| g.name == options[:group] }
+ @row = environment.rows.find { |r| r.name == options[:row] }
+ @group = @row.groups.find { |g| g.name == options[:group] }
if @group.servers.empty?
tests('#delete_group').succeeds do
@group.destroy
@@ -127,7 +127,7 @@ Shindo.tests("Fog::Compute[:#{provider}] | server", [provider.to_s, "attributes"
public_ip = environment.public_ips.first
compute_pool = environment.compute_pools.first
image_href = Fog.credentials[:ecloud_image_href] || compute_pool.templates.first.href
- ssh_key = organization.admin.ssh_keys.detect { |key| key.name == "root" }
+ ssh_key = organization.admin.ssh_keys.find { |key| key.name == "root" }
@network = environment.networks.first
options = config[:server_attributes].merge(:network_uri => @network.href, :ssh_key_uri => ssh_key.href)
diff --git a/tests/fogdocker/models/compute/image_tests.rb b/tests/fogdocker/models/compute/image_tests.rb
index fcbbe0b..cf2ccab 100644
--- a/tests/fogdocker/models/compute/image_tests.rb
+++ b/tests/fogdocker/models/compute/image_tests.rb
@@ -21,7 +21,7 @@ Shindo.tests('Fog::Compute[:fogdocker] | image model', ['fogdocker']) do
end
tests("The attributes hash should have key") do
(attributes-[:repo_tags]).each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/fogdocker/models/compute/server_tests.rb b/tests/fogdocker/models/compute/server_tests.rb
index 5f36de8..59ce227 100644
--- a/tests/fogdocker/models/compute/server_tests.rb
+++ b/tests/fogdocker/models/compute/server_tests.rb
@@ -36,7 +36,7 @@ Shindo.tests('Fog::Compute[:fogdocker] | server model', ['fogdocker']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/fogdocker/requests/compute/container_action_tests.rb b/tests/fogdocker/requests/compute/container_action_tests.rb
index 5ffec3e..86adecd 100644
--- a/tests/fogdocker/requests/compute/container_action_tests.rb
+++ b/tests/fogdocker/requests/compute/container_action_tests.rb
@@ -5,7 +5,6 @@ Shindo.tests("Fog::Compute[:fogdocker] | container_action request", 'fogdocker')
response = compute.container_create(:name => name, 'image' => 'mattdm/fedora:f19','Cmd' => ['date'] )
id = response['id']
-
tests("Start Container") do
response = compute.container_action(:id => id, :action => 'start' )
test("should be a kind of Hash") { response.kind_of? Hash}
diff --git a/tests/fogdocker/requests/compute/container_commit_tests.rb b/tests/fogdocker/requests/compute/container_commit_tests.rb
index 19f2494..dcd440b 100644
--- a/tests/fogdocker/requests/compute/container_commit_tests.rb
+++ b/tests/fogdocker/requests/compute/container_commit_tests.rb
@@ -15,5 +15,4 @@ Shindo.tests("Fog::Compute[:fogdocker] | container_create request", 'fogdocker')
test("should have a deleted message") {result.include?('Deleted')}
end
-
end
diff --git a/tests/glesys/requests/compute/helper.rb b/tests/glesys/requests/compute/helper.rb
index 0f37a1f..626a86c 100644
--- a/tests/glesys/requests/compute/helper.rb
+++ b/tests/glesys/requests/compute/helper.rb
@@ -2,7 +2,6 @@ class Glesys
module Compute
module Formats
module Servers
-
LIST = {
'debug' => {
'input' => Array
@@ -38,13 +37,14 @@ class Glesys
'memorysize' => Integer,
'cpucores' => Integer,
'transfer' => Integer,
+ 'bandwidth' => Integer,
'templatename' => String,
'iplist' => [{
'cost' => Integer,
'version' => Fog::Nullable::Integer,
'ipaddress' => Fog::Nullable::String,
'currency' => String
- }],
+ }],
'description' => String,
'hostname' => String,
'disksize' => Integer,
@@ -80,6 +80,7 @@ class Glesys
'memorysize' => String,
'cpucores' => String,
'transfer' => String,
+ 'bandwidth' => String,
'description' => String
}
}
@@ -144,10 +145,8 @@ class Glesys
'text' => String
}
}
-
end
module Ips
-
IPLIST = {
'debug' => {
'input' => []
@@ -229,10 +228,8 @@ class Glesys
'text' => String
}
}
-
end
module Templates
-
LIST = {
'debug' => {
'input' => []
@@ -259,7 +256,6 @@ class Glesys
'text' => String
}
}
-
end
end
end
diff --git a/tests/glesys/requests/compute/ip_tests.rb b/tests/glesys/requests/compute/ip_tests.rb
index 5ecc50b..8c38a32 100644
--- a/tests/glesys/requests/compute/ip_tests.rb
+++ b/tests/glesys/requests/compute/ip_tests.rb
@@ -63,5 +63,4 @@ Shindo.tests('Fog::Compute[:glesys] | ip requests', ['glesys']) do
end
-
end
diff --git a/tests/glesys/requests/compute/server_tests.rb b/tests/glesys/requests/compute/server_tests.rb
index 808de33..31a7eb6 100644
--- a/tests/glesys/requests/compute/server_tests.rb
+++ b/tests/glesys/requests/compute/server_tests.rb
@@ -5,11 +5,11 @@ Shindo.tests('Fog::Compute[:glesys] | server requests', ['glesys']) do
@create = ":hostname => #@hostname, :rootpassword => 'pw#{Time.now.to_i}', "+
":datacenter => 'Falkenberg', :platform => 'Xen', :templatename => 'Debian-6 x64', "+
- ":disksize => '10', :memorysize => '512', :cpucores => '1', :transfer => '500'"
+ ":disksize => '10', :memorysize => '512', :cpucores => '1', :transfer => '500', :bandwidth => '10'"
@create_vz = ":hostname => #@hostname, :rootpassword => 'pw#{Time.now.to_i}', "+
":datacenter => 'Stockholm', :platform => 'OpenVZ', :templatename => 'Debian 6.0 64-bit', "+
- ":disksize => '10', :memorysize => '256', :cpucores => '2', :transfer => '500'"
+ ":disksize => '10', :memorysize => '256', :cpucores => '2', :transfer => '500', :bandwidth => '10'"
tests('success') do
@@ -29,7 +29,8 @@ Shindo.tests('Fog::Compute[:glesys] | server requests', ['glesys']) do
:disksize => "10",
:memorysize => "512",
:cpucores => "1",
- :transfer => "500"
+ :transfer => "500",
+ :bandwidth => "10"
)
@serverid = vm.body['response']['server']['serverid']
@@ -89,7 +90,8 @@ Shindo.tests('Fog::Compute[:glesys] | server requests', ['glesys']) do
:disksize => "10",
:memorysize => "256",
:cpucores => "2",
- :transfer => "500"
+ :transfer => "500",
+ :bandwidth => "10"
)
@serverid = vm.body['response']['server']['serverid']
@@ -110,7 +112,6 @@ Shindo.tests('Fog::Compute[:glesys] | server requests', ['glesys']) do
Fog::Compute[:glesys].destroy(:serverid => @serverid).body['response']
end
-
end
tests('failure') do
diff --git a/tests/google/helpers/disk_helper.rb b/tests/google/helpers/disk_helper.rb
deleted file mode 100644
index bc85be6..0000000
--- a/tests/google/helpers/disk_helper.rb
+++ /dev/null
@@ -1,12 +0,0 @@
-# create a disk to be used in tests
-def create_test_disk(connection, zone)
- zone = 'us-central1-a'
- disk = connection.disks.create({
- :name => "fogservername",
- :size_gb => "2",
- :zone_name => zone,
- :source_image => "debian-7-wheezy-v20140408",
- })
- disk.wait_for { ready? }
- disk
-end
diff --git a/tests/google/helpers/google_tests_helper.rb b/tests/google/helpers/google_tests_helper.rb
new file mode 100644
index 0000000..b7efee3
--- /dev/null
+++ b/tests/google/helpers/google_tests_helper.rb
@@ -0,0 +1,89 @@
+require 'securerandom'
+
+# create a disk to be used in tests
+def create_test_disk(connection, zone)
+ zone = 'us-central1-a'
+ random_string = SecureRandom.hex
+
+ disk = connection.disks.create({
+ :name => "fog-test-disk-#{random_string}",
+ :size_gb => "10",
+ :zone => zone,
+ :source_image => "debian-7-wheezy-v20140408",
+ })
+ disk.wait_for { ready? }
+ disk
+end
+
+def create_test_http_health_check(connection)
+ random_string = SecureRandom.hex
+ health_check = connection.http_health_checks.create({
+ :name => "fog-test-check-#{random_string}"
+ })
+ health_check
+end
+
+def create_test_backend_service(connection)
+ random_string = SecureRandom.hex
+ health_check = create_test_http_health_check(connection)
+ backend_service = connection.backend_services.create({
+ :name => "fog-test-backend-service-#{random_string}",
+ :health_checks => [health_check]
+ })
+end
+
+def create_test_url_map(connection)
+ random_string = SecureRandom.hex
+ backend_service = create_test_backend_service(connection)
+ url_map = connection.url_maps.create({
+ :name => "fog-test-url-map-#{random_string}",
+ :defaultService => backend_service.self_link
+ })
+end
+
+def create_test_server(connection, zone)
+ random_string = SecureRandom.hex
+ disk = create_test_disk(connection,zone)
+ server = connection.servers.create({
+ :name => "fog-test-server-#{random_string}",
+ :disks => [disk],
+ :zone => zone,
+ :machine_type => 'n1-standard-1'
+ })
+end
+
+def create_test_target_http_proxy(connection)
+ random_string = SecureRandom.hex
+ url_map = create_test_url_map(connection)
+ proxy = connection.target_http_proxies.create({
+ :name => "fog-test-target-http-proxy-#{random_string}",
+ :urlMap => url_map.self_link
+ })
+end
+
+def create_test_zone_view(connection, zone)
+ random_string = SecureRandom.hex
+ zone_view = connection.zone_views.create({
+ :name => "fog-test-zone-view-#{random_string}",
+ :zone => zone
+ })
+ zone_view.wait_for {ready?}
+ zone_view
+end
+
+def create_test_target_pool(connection, region)
+ random_string = SecureRandom.hex
+ http_health_check = create_test_http_health_check(connection)
+ instance = create_test_server(connection, 'us-central1-a')
+ target_pool = connection.target_pools.create({
+ :name => "fog-test-target-pool-#{random_string}",
+ :region => region,
+ :healthChecks => [http_health_check.self_link],
+ :instances => [instance.self_link]\
+ })
+end
+
+def wait_operation(connection, response)
+ operation = connection.operations.get(response['name'], response['zone'], response['region'])
+ operation.wait_for { ready? }
+end
diff --git a/tests/google/models/compute/backend_service_tests.rb b/tests/google/models/compute/backend_service_tests.rb
new file mode 100644
index 0000000..16e4ff5
--- /dev/null
+++ b/tests/google/models/compute/backend_service_tests.rb
@@ -0,0 +1,6 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | backend service model", ['google']) do
+ random_string = SecureRandom.hex
+ model_tests(Fog::Compute[:google].backend_services, {:name => "fog-test-backend-service-#{random_string}",
+ :health_checks => [@health_check]})
+end
diff --git a/tests/google/models/compute/backend_services_tests.rb b/tests/google/models/compute/backend_services_tests.rb
new file mode 100644
index 0000000..0eb7c43
--- /dev/null
+++ b/tests/google/models/compute/backend_services_tests.rb
@@ -0,0 +1,8 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | backend_services model", ['google']) do
+ random_string = SecureRandom.hex
+ @health_check = create_test_http_health_check(Fog::Compute[:google])
+ collection_tests(Fog::Compute[:google].backend_services, {:name => "fog-backend-services-test-#{random_string}",
+ :health_checks => [@health_check]})
+
+end
diff --git a/tests/google/models/compute/disk_tests.rb b/tests/google/models/compute/disk_tests.rb
index 0b52c7f..4354e61 100644
--- a/tests/google/models/compute/disk_tests.rb
+++ b/tests/google/models/compute/disk_tests.rb
@@ -1,5 +1,9 @@
Shindo.tests("Fog::Compute[:google] | disk model", ['google']) do
- model_tests(Fog::Compute[:google].disks, {:name => 'fogdiskname', :zone_name => 'us-central1-a'})
+ model_tests(Fog::Compute[:google].disks, {:name => 'fog-disk-model-tests',
+ :zone => 'us-central1-a',
+ :size_gb => 10}) do |model|
+ model.wait_for { ready? }
+ end
end
diff --git a/tests/google/models/compute/disk_types_tests.rb b/tests/google/models/compute/disk_types_tests.rb
new file mode 100644
index 0000000..9eca081
--- /dev/null
+++ b/tests/google/models/compute/disk_types_tests.rb
@@ -0,0 +1,22 @@
+Shindo.tests("Fog::Compute[:google] | disk_types model", ['google']) do
+ @disk_types = Fog::Compute[:google].disk_types
+
+ tests('success') do
+
+ tests('#all').succeeds do
+ @disk_types.all
+ end
+
+ tests('#get').succeeds do
+ disk_type = @disk_types.all.first
+ @disk_types.get(disk_type.name)
+ end
+
+ tests('failure') do
+ tests('#get').returns(nil) do
+ @disk_types.get(Fog::Mock.random_letters_and_numbers(16))
+ end
+ end
+
+ end
+end
diff --git a/tests/google/models/compute/disks_tests.rb b/tests/google/models/compute/disks_tests.rb
index adb97cc..1dd96dc 100644
--- a/tests/google/models/compute/disks_tests.rb
+++ b/tests/google/models/compute/disks_tests.rb
@@ -1,5 +1,9 @@
Shindo.tests("Fog::Compute[:google] | disks", ['google']) do
- collection_tests(Fog::Compute[:google].disks, {:name => 'fogdiskname', :zone_name => 'us-central1-a'})
+ collection_tests(Fog::Compute[:google].disks, {:name => 'fog-disks-collections-tests',
+ :zone => 'us-central1-a',
+ :size_gb => 10}) do |instance|
+ instance.wait_for { ready? }
+ end
end
diff --git a/tests/google/models/compute/forwarding_rule_tests.rb b/tests/google/models/compute/forwarding_rule_tests.rb
new file mode 100644
index 0000000..a1f8c06
--- /dev/null
+++ b/tests/google/models/compute/forwarding_rule_tests.rb
@@ -0,0 +1,8 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | forwarding rule model", ['google']) do
+ random_string = SecureRandom.hex
+ region = 'us-central1'
+ target_pool = create_test_target_pool(Fog::Compute[:google], region)
+ model_tests(Fog::Compute[:google].forwarding_rules, {:name => "fog-test-forwarding-rules-#{random_string}", :region => region, :target => target_pool.self_link})
+
+end
diff --git a/tests/google/models/compute/forwarding_rules_tests.rb b/tests/google/models/compute/forwarding_rules_tests.rb
new file mode 100644
index 0000000..4d4196e
--- /dev/null
+++ b/tests/google/models/compute/forwarding_rules_tests.rb
@@ -0,0 +1,8 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | forwarding rules model", ['google']) do
+ random_string = SecureRandom.hex
+ region = 'us-central1'
+ target_pool = create_test_target_pool(Fog::Compute[:google], region)
+ collection_tests(Fog::Compute[:google].forwarding_rules, {:name => "fog-test-forwarding-rule-#{random_string}", :region => region, :target => target_pool.self_link})
+
+end
diff --git a/tests/google/models/compute/global_forwarding_rule_tests.rb b/tests/google/models/compute/global_forwarding_rule_tests.rb
new file mode 100644
index 0000000..9dc986f
--- /dev/null
+++ b/tests/google/models/compute/global_forwarding_rule_tests.rb
@@ -0,0 +1,7 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | global forwarding rule model", ['google']) do
+ random_string = SecureRandom.hex
+ proxy = create_test_target_http_proxy(Fog::Compute[:google])
+ model_tests(Fog::Compute[:google].global_forwarding_rules, {:name => "fog-test-global-forwarding-rule-#{random_string}", :target => proxy.self_link})
+
+end
diff --git a/tests/google/models/compute/global_forwarding_rules_tests.rb b/tests/google/models/compute/global_forwarding_rules_tests.rb
new file mode 100644
index 0000000..9b8fdeb
--- /dev/null
+++ b/tests/google/models/compute/global_forwarding_rules_tests.rb
@@ -0,0 +1,7 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | global forwarding rules model", ['google']) do
+ random_string = SecureRandom.hex
+ proxy = create_test_target_http_proxy(Fog::Compute[:google])
+ collection_tests(Fog::Compute[:google].global_forwarding_rules, {:name => "fog-test-global-forwarding-rule-#{random_string}", :target => proxy.self_link})
+
+end
diff --git a/tests/google/models/compute/http_health_check_tests.rb b/tests/google/models/compute/http_health_check_tests.rb
new file mode 100644
index 0000000..4c8ff03
--- /dev/null
+++ b/tests/google/models/compute/http_health_check_tests.rb
@@ -0,0 +1,5 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | HTTP health check model", ['google']) do
+ random_string = SecureRandom.hex
+ model_tests(Fog::Compute[:google].http_health_checks, {:name => "fog-test-http-health-check-#{random_string}"})
+end
diff --git a/tests/google/models/compute/http_health_checks_tests.rb b/tests/google/models/compute/http_health_checks_tests.rb
new file mode 100644
index 0000000..d47b81b
--- /dev/null
+++ b/tests/google/models/compute/http_health_checks_tests.rb
@@ -0,0 +1,5 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | HTTP health checks model", ['google']) do
+ random_string = SecureRandom.hex
+ collection_tests(Fog::Compute[:google].http_health_checks, {:name => "fog-test-http-health-check-#{random_string}"})
+end
diff --git a/tests/google/models/compute/image_tests.rb b/tests/google/models/compute/image_tests.rb
new file mode 100644
index 0000000..d25ac87
--- /dev/null
+++ b/tests/google/models/compute/image_tests.rb
@@ -0,0 +1,6 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | image model", ['google']) do
+ random_string = SecureRandom.hex
+ source = 'https://www.google.com/images/srpr/logo4w.png'
+ model_tests(Fog::Compute[:google].images, {:name => "fog-test-images-#{random_string}", "rawDisk" => { "source" => source } })
+end
diff --git a/tests/google/models/compute/images_tests.rb b/tests/google/models/compute/images_tests.rb
new file mode 100644
index 0000000..b8787b3
--- /dev/null
+++ b/tests/google/models/compute/images_tests.rb
@@ -0,0 +1,6 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | images model", ['google']) do
+ random_string = SecureRandom.hex
+ source = 'https://www.google.com/images/srpr/logo4w.png'
+ collection_tests(Fog::Compute[:google].images, {:name => "fog-test-images-#{random_string}", "rawDisk" => { "source" => source } })
+end
diff --git a/tests/google/models/compute/region_tests.rb b/tests/google/models/compute/region_tests.rb
new file mode 100644
index 0000000..2469d66
--- /dev/null
+++ b/tests/google/models/compute/region_tests.rb
@@ -0,0 +1,10 @@
+Shindo.tests("Fog::Compute[:google] | region model", ['google']) do
+ @regions = Fog::Compute[:google].regions
+
+ tests('success') do
+ tests('#up').succeeds do
+ region = @regions.get @regions.all.first.name
+ region.up?
+ end
+ end
+end
diff --git a/tests/google/models/compute/regions_tests.rb b/tests/google/models/compute/regions_tests.rb
new file mode 100644
index 0000000..6e1728a
--- /dev/null
+++ b/tests/google/models/compute/regions_tests.rb
@@ -0,0 +1,19 @@
+Shindo.tests("Fog::Compute[:google] | regions model", ['google']) do
+ @regions = Fog::Compute[:google].regions
+
+ tests('success') do
+ tests('#all').succeeds do
+ @regions.all
+ end
+
+ tests('#get').succeeds do
+ @regions.get @regions.all.first.name
+ end
+ end
+
+ tests('failure') do
+ tests('#get').returns(nil) do
+ @regions.get 'unicorn'
+ end
+ end
+end
diff --git a/tests/google/models/compute/server_tests.rb b/tests/google/models/compute/server_tests.rb
index 8a93c03..2bcd64c 100644
--- a/tests/google/models/compute/server_tests.rb
+++ b/tests/google/models/compute/server_tests.rb
@@ -1,9 +1,15 @@
+require 'securerandom'
+
Shindo.tests("Fog::Compute[:google] | server model", ['google']) do
@zone = 'us-central1-a'
@disk = create_test_disk(Fog::Compute[:google], @zone)
+ random_string = SecureRandom.hex
- model_tests(Fog::Compute[:google].servers, {:name => 'fogservername', :zone_name => @zone, :machine_type => 'n1-standard-1', :disks => [@disk]})
+ model_tests(Fog::Compute[:google].servers, {:name => "fog-test-server-#{random_string}",
+ :zone_name => @zone,
+ :machine_type => 'n1-standard-1',
+ :disks => [@disk]})
tests('servers') do
@instance = nil
@@ -20,12 +26,12 @@ Shindo.tests("Fog::Compute[:google] | server model", ['google']) do
test('#ssh') do
pending if Fog.mocking?
- @instance.ssh("uname") == "Linux"
+ !!(@instance.ssh("uname").first.stdout =~ /Linux/)
end
test('#destroy') do
response = @instance.destroy
- response.body['operationType'] == 'delete'
+ response.operation_type == 'delete'
end
end
end
diff --git a/tests/google/models/compute/servers_tests.rb b/tests/google/models/compute/servers_tests.rb
index c511ab4..d6a46a1 100644
--- a/tests/google/models/compute/servers_tests.rb
+++ b/tests/google/models/compute/servers_tests.rb
@@ -1,8 +1,14 @@
+require 'securerandom'
+
Shindo.tests("Fog::Compute[:google] | servers", ['google']) do
@zone = 'us-central1-a'
@disk = create_test_disk(Fog::Compute[:google], @zone)
+ random_string = SecureRandom.hex
- collection_tests(Fog::Compute[:google].servers, {:name => 'fogservername', :zone_name => @zone, :machine_type => 'n1-standard-1', :disks => [@disk]})
+ collection_tests(Fog::Compute[:google].servers, {:name => "fog-test-server-#{random_string}",
+ :zone_name => @zone,
+ :machine_type => 'n1-standard-1',
+ :disks => [@disk]})
end
diff --git a/tests/google/models/compute/target_http_proxies_tests.rb b/tests/google/models/compute/target_http_proxies_tests.rb
new file mode 100644
index 0000000..bb9ebf1
--- /dev/null
+++ b/tests/google/models/compute/target_http_proxies_tests.rb
@@ -0,0 +1,7 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | target HTTP proxies model", ['google']) do
+ url_map = create_test_url_map(Fog::Compute[:google])
+ random_string = SecureRandom.hex
+ collection_tests(Fog::Compute[:google].target_http_proxies, {:name => "fog-target-http-proxies-test-#{random_string}", :urlMap => url_map.self_link})
+
+end
diff --git a/tests/google/models/compute/target_http_proxy_test.rb b/tests/google/models/compute/target_http_proxy_test.rb
new file mode 100644
index 0000000..c042307
--- /dev/null
+++ b/tests/google/models/compute/target_http_proxy_test.rb
@@ -0,0 +1,6 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | target HTTP proxy model", ['google']) do
+ random_string = SecureRandom.hex
+ url_map = create_test_url_map(Fog::Compute[:google])
+ model_tests(Fog::Compute[:google].target_http_proxies, {:name => "fog-test-target-http-proxy-#{random_string}", :urlMap => url_map.self_link})
+end
diff --git a/tests/google/models/compute/target_instance_tests.rb b/tests/google/models/compute/target_instance_tests.rb
new file mode 100644
index 0000000..7c6a134
--- /dev/null
+++ b/tests/google/models/compute/target_instance_tests.rb
@@ -0,0 +1,7 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | target instance model", ['google']) do
+ random_string = SecureRandom.hex
+ @zone = 'us-central1-a'
+ instance = create_test_server(Fog::Compute[:google], @zone)
+ model_tests(Fog::Compute[:google].target_instances, {:name => "fog-test-target-instance-#{random_string}", :instance => instance.self_link, :zone => @zone})
+end
diff --git a/tests/google/models/compute/target_instances_tests.rb b/tests/google/models/compute/target_instances_tests.rb
new file mode 100644
index 0000000..d9a7f3c
--- /dev/null
+++ b/tests/google/models/compute/target_instances_tests.rb
@@ -0,0 +1,7 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | target instances model", ['google']) do
+ @zone= 'us-central1-a'
+ random_string = SecureRandom.hex
+ instance = create_test_server(Fog::Compute[:google], @zone)
+ collection_tests(Fog::Compute[:google].target_instances, {:name => "fog-test-target-instances-#{random_string}", :instance => instance.self_link, :zone => @zone})
+end
diff --git a/tests/google/models/compute/target_pool_tests.rb b/tests/google/models/compute/target_pool_tests.rb
new file mode 100644
index 0000000..b5fa5ad
--- /dev/null
+++ b/tests/google/models/compute/target_pool_tests.rb
@@ -0,0 +1,12 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | target pool model", ['google']) do
+
+ pending
+
+ random_string = SecureRandom.hex
+ region = 'us-central1'
+ instance = create_test_server(Fog::Compute[:google], 'us-central1-a')
+ health_check = create_test_http_health_check(Fog::Compute[:google])
+ model_tests(Fog::Compute[:google].target_pools, {:name => "fog-test-target-pool-#{random_string}", :region => region, :instances => [instance.self_link], :healthChecks => [health_check.self_link]})
+
+end
diff --git a/tests/google/models/compute/target_pools_tests.rb b/tests/google/models/compute/target_pools_tests.rb
new file mode 100644
index 0000000..6546f79
--- /dev/null
+++ b/tests/google/models/compute/target_pools_tests.rb
@@ -0,0 +1,11 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | target pools model", ['google']) do
+ random_string = SecureRandom.hex
+ region = 'us-central1'
+ instance = create_test_server(Fog::Compute[:google], 'us-central1-a')
+ health_check = create_test_http_health_check(Fog::Compute[:google])
+ collection_tests(
+ Fog::Compute[:google].target_pools,
+ {:name => "fog-test-target-pool-#{random_string}", :region => region, :instances => [instance.self_link], :healthChecks => [health_check.self_link]}
+ )
+end
diff --git a/tests/google/models/compute/url_map_tests.rb b/tests/google/models/compute/url_map_tests.rb
new file mode 100644
index 0000000..8c7ecd0
--- /dev/null
+++ b/tests/google/models/compute/url_map_tests.rb
@@ -0,0 +1,6 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | url map model", ['google']) do
+ random_string = SecureRandom.hex
+ backend_service = create_test_backend_service(Fog::Compute[:google])
+ model_tests(Fog::Compute[:google].url_maps, {:name => "fog-test-url-map-#{random_string}", :defaultService => backend_service.self_link})
+end
diff --git a/tests/google/models/compute/url_maps_tests.rb b/tests/google/models/compute/url_maps_tests.rb
new file mode 100644
index 0000000..2d5aa03
--- /dev/null
+++ b/tests/google/models/compute/url_maps_tests.rb
@@ -0,0 +1,7 @@
+require 'securerandom'
+Shindo.tests("Fog::Compute[:google] | url maps model", ['google']) do
+ backend_service = create_test_backend_service(Fog::Compute[:google])
+ random_string = SecureRandom.hex
+ collection_tests(Fog::Compute[:google].url_maps, {:name => "fog-url-maps-test-#{random_string}", :defaultService => backend_service.self_link})
+
+end
diff --git a/tests/google/models/monitoring/metric_descriptors_tests.rb b/tests/google/models/monitoring/metric_descriptors_tests.rb
new file mode 100644
index 0000000..d3a43ee
--- /dev/null
+++ b/tests/google/models/monitoring/metric_descriptors_tests.rb
@@ -0,0 +1,12 @@
+Shindo.tests('Fog::Google[:monitoring] | metric_descriptors model', ['google']) do
+ @metric_descriptors = Fog::Google[:monitoring].metric_descriptors
+
+ tests('success') do
+
+ tests('#all').succeeds do
+ @metric_descriptors.all
+ end
+
+ end
+
+end
diff --git a/tests/google/models/monitoring/timeseries_collection_tests.rb b/tests/google/models/monitoring/timeseries_collection_tests.rb
new file mode 100644
index 0000000..0b7c4ad
--- /dev/null
+++ b/tests/google/models/monitoring/timeseries_collection_tests.rb
@@ -0,0 +1,12 @@
+Shindo.tests('Fog::Google[:monitoring] | timeseries_collection model', ['google']) do
+ @timeseries_collection = Fog::Google[:monitoring].timeseries_collection
+
+ tests('success') do
+
+ tests('#all').succeeds do
+ @timeseries_collection.all('compute.googleapis.com/instance/uptime', Time.now.strftime("%Y-%m-%dT%H:%M:%S%:z"))
+ end
+
+ end
+
+end
diff --git a/tests/google/models/monitoring/timeseries_descriptors_tests.rb b/tests/google/models/monitoring/timeseries_descriptors_tests.rb
new file mode 100644
index 0000000..33ec2fe
--- /dev/null
+++ b/tests/google/models/monitoring/timeseries_descriptors_tests.rb
@@ -0,0 +1,13 @@
+Shindo.tests('Fog::Google[:monitoring] | timeseries_descriptors model', ['google']) do
+ @timeseries_descriptors = Fog::Google[:monitoring].timeseries_descriptors
+
+ tests('success') do
+
+ tests('#all').succeeds do
+ @timeseries_descriptors.all('compute.googleapis.com/instance/uptime',
+ Time.now.strftime("%Y-%m-%dT%H:%M:%S%:z"))
+ end
+
+ end
+
+end
diff --git a/tests/google/models/sql/flags_tests.rb b/tests/google/models/sql/flags_tests.rb
new file mode 100644
index 0000000..adaba88
--- /dev/null
+++ b/tests/google/models/sql/flags_tests.rb
@@ -0,0 +1,12 @@
+Shindo.tests('Fog::Google[:sql] | flags model', ['google']) do
+ @flags = Fog::Google[:sql].tiers
+
+ tests('success') do
+
+ tests('#all').succeeds do
+ @flags.all
+ end
+
+ end
+
+end
diff --git a/tests/google/models/sql/instance_tests.rb b/tests/google/models/sql/instance_tests.rb
new file mode 100644
index 0000000..8c6e7ed
--- /dev/null
+++ b/tests/google/models/sql/instance_tests.rb
@@ -0,0 +1,56 @@
+Shindo.tests('Fog::Google[:sql] | instance model', ['google']) do
+ @instances = Fog::Google[:sql].instances
+
+ tests('success') do
+
+ tests('#create').succeeds do
+ @instance = @instances.create(:instance => Fog::Mock.random_letters(16), :tier => 'D1')
+ @instance.wait_for { ready? }
+ end
+
+ tests('#update').succeeds do
+ @instance.activation_policy = 'ALWAYS'
+ @instance.update
+ @instance.wait_for { ready? }
+ end
+
+ tests('#clone').succeeds do
+ pending unless Fog.mocking? # Binary log must be activated
+ instance_cloned_id = Fog::Mock.random_letters(16)
+ @instance.clone(instance_cloned_id, :async => false)
+ @instances.get(instance_cloned_id).destroy
+ end
+
+ tests('#export').succeeds do
+ pending unless Fog.mocking? # We don't have access to a Google Cloud Storage bucket
+ @instance.export("gs://#{Fog::Mock.random_letters_and_numbers(16)}/mysql-export", :async => false)
+ end
+
+ tests('#import').succeeds do
+ pending unless Fog.mocking? # We don't have access to a Google Cloud Storage bucket
+ @instance.import("gs://#{Fog::Mock.random_letters_and_numbers(16)}/mysql-export", :async => false)
+ end
+
+ tests('#ready?').succeeds do
+ @instance.ready? == true
+ end
+
+ tests('#reset_ssl_config').succeeds do
+ @instance.reset_ssl_config(:async => false)
+ end
+
+ tests('#restart').succeeds do
+ @instance.restart(:async => false)
+ end
+
+ tests('#set_root_password').succeeds do
+ @instance.set_root_password(Fog::Mock.random_letters_and_numbers(8), :async => false)
+ end
+
+ tests('#destroy').succeeds do
+ @instance.destroy
+ end
+
+ end
+
+end
diff --git a/tests/google/models/sql/instances_tests.rb b/tests/google/models/sql/instances_tests.rb
new file mode 100644
index 0000000..abcb9f6
--- /dev/null
+++ b/tests/google/models/sql/instances_tests.rb
@@ -0,0 +1,32 @@
+Shindo.tests('Fog::Google[:sql] | instances model', ['google']) do
+ @instance = Fog::Google[:sql].instances.create(:instance => Fog::Mock.random_letters(16), :tier => 'D1')
+ @instance.wait_for { ready? }
+ @instances = Fog::Google[:sql].instances
+
+ tests('success') do
+
+ tests('#all').succeeds do
+ @instances.all
+ end
+
+ tests('#get').succeeds do
+ @instances.get(@instance.instance)
+ end
+
+ end
+
+ @instance.destroy(:async => false)
+
+ tests('failure') do
+
+ tests('#all').returns([]) do
+ @instances.all
+ end
+
+ tests('#get').returns(nil) do
+ @instances.get(Fog::Mock.random_letters_and_numbers(16))
+ end
+
+ end
+
+end
diff --git a/tests/google/models/sql/operation_tests.rb b/tests/google/models/sql/operation_tests.rb
new file mode 100644
index 0000000..6d2229c
--- /dev/null
+++ b/tests/google/models/sql/operation_tests.rb
@@ -0,0 +1,25 @@
+Shindo.tests('Fog::Google[:sql] | operation model', ['google']) do
+ @instance = Fog::Google[:sql].instances.create(:instance => Fog::Mock.random_letters(16), :tier => 'D1')
+ @instance.wait_for { ready? }
+ @operations = Fog::Google[:sql].operations
+ @operation = @operations.all(@instance.instance).first
+
+ tests('success') do
+
+ tests('#pending?').succeeds do
+ @operation.pending? == false
+ end
+
+ tests('#ready?').succeeds do
+ @operation.ready? == true
+ end
+
+ tests('#reload').succeeds do
+ @operation.reload
+ end
+
+ end
+
+ @instance.destroy
+
+end
diff --git a/tests/google/models/sql/operations_tests.rb b/tests/google/models/sql/operations_tests.rb
new file mode 100644
index 0000000..e85c167
--- /dev/null
+++ b/tests/google/models/sql/operations_tests.rb
@@ -0,0 +1,38 @@
+Shindo.tests('Fog::Google[:sql] | operations model', ['google']) do
+ @instance = Fog::Google[:sql].instances.create(:instance => Fog::Mock.random_letters(16), :tier => 'D1')
+ @instance.wait_for { ready? }
+ @operations = Fog::Google[:sql].operations
+
+ tests('success') do
+
+ tests('#all').succeeds do
+ @operations.all(@instance.instance)
+ end
+
+ tests('#get').succeeds do
+ @operations.get(@instance.instance, @operations.all(@instance.instance).first.operation)
+ end
+
+ end
+
+ tests('failure') do
+
+ tests('#all').returns([]) do
+ @operations.all(Fog::Mock.random_letters_and_numbers(16))
+ end
+
+ tests('#get').returns(nil) do
+ pending unless Fog.mocking? # Real test fails on google-api-client (mismatch between catalog and real response)
+ @operations.get(@instance.instance, Fog::Mock.random_letters_and_numbers(16))
+ end
+
+ tests('#get').returns(nil) do
+ pending unless Fog.mocking? # Real test fails on google-api-client (mismatch between catalog and real response)
+ @operations.get(Fog::Mock.random_letters_and_numbers(16), Fog::Mock.random_letters_and_numbers(16))
+ end
+
+ end
+
+ @instance.destroy
+
+end
diff --git a/tests/google/models/sql/ssl_cert_tests.rb b/tests/google/models/sql/ssl_cert_tests.rb
new file mode 100644
index 0000000..48d77e7
--- /dev/null
+++ b/tests/google/models/sql/ssl_cert_tests.rb
@@ -0,0 +1,24 @@
+Shindo.tests('Fog::Google[:sql] | ssl_cert model', ['google']) do
+ @instance = Fog::Google[:sql].instances.create(:instance => Fog::Mock.random_letters(16), :tier => 'D1')
+ @instance.wait_for { ready? }
+ @ssl_certs = Fog::Google[:sql].ssl_certs
+
+ tests('success') do
+
+ tests('#create').succeeds do
+ @ssl_cert = @ssl_certs.create(:instance => @instance.instance, :common_name => Fog::Mock.random_letters(16))
+ end
+
+ tests('#reload').succeeds do
+ @ssl_cert.reload
+ end
+
+ tests('#destroy').succeeds do
+ @ssl_cert.destroy
+ end
+
+ end
+
+ @instance.destroy
+
+end
diff --git a/tests/google/models/sql/ssl_certs_tests.rb b/tests/google/models/sql/ssl_certs_tests.rb
new file mode 100644
index 0000000..ffef81d
--- /dev/null
+++ b/tests/google/models/sql/ssl_certs_tests.rb
@@ -0,0 +1,39 @@
+Shindo.tests('Fog::Google[:sql] | ssl_certs model', ['google']) do
+ @instance = Fog::Google[:sql].instances.create(:instance => Fog::Mock.random_letters(16), :tier => 'D1')
+ @instance.wait_for { ready? }
+ @ssl_cert = Fog::Google[:sql].ssl_certs.create(:instance => @instance.instance,
+ :common_name => Fog::Mock.random_letters(16))
+ @ssl_certs = Fog::Google[:sql].ssl_certs
+
+ tests('success') do
+
+ tests('#all').succeeds do
+ @ssl_certs.all(@instance.instance)
+ end
+
+ tests('#get').succeeds do
+ @ssl_certs.get(@instance.instance, @ssl_cert.sha1_fingerprint)
+ end
+
+ end
+
+ tests('failure') do
+
+ tests('#all').returns([]) do
+ @ssl_certs.all(Fog::Mock.random_letters_and_numbers(16))
+ end
+
+ tests('#get').returns(nil) do
+ @ssl_certs.get(@instance.instance, Fog::Mock.random_letters_and_numbers(16))
+ end
+
+ tests('#get').returns(nil) do
+ @ssl_certs.get(Fog::Mock.random_letters_and_numbers(16), Fog::Mock.random_letters_and_numbers(16))
+ end
+
+ end
+
+ @ssl_cert.destroy
+ @instance.destroy
+
+end
diff --git a/tests/google/models/sql/tiers_tests.rb b/tests/google/models/sql/tiers_tests.rb
new file mode 100644
index 0000000..c129930
--- /dev/null
+++ b/tests/google/models/sql/tiers_tests.rb
@@ -0,0 +1,12 @@
+Shindo.tests('Fog::Google[:sql] | tiers model', ['google']) do
+ @tiers = Fog::Google[:sql].tiers
+
+ tests('success') do
+
+ tests('#all').succeeds do
+ @tiers.all
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/compute/backend_service_tests.rb b/tests/google/requests/compute/backend_service_tests.rb
new file mode 100644
index 0000000..5dc0248
--- /dev/null
+++ b/tests/google/requests/compute/backend_service_tests.rb
@@ -0,0 +1,83 @@
+Shindo.tests('Fog::Compute[:google] | backend services requests', ['google']) do
+
+ @google = Fog::Compute[:google]
+
+ @insert_backend_service_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'zone' => String,
+ 'insertTime' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @get_backend_service_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'creationTimestamp' => String,
+ 'name' => String,
+ 'backends' => Array,
+ 'healthChecks' => Array,
+ 'port' => Integer,
+ 'protocol' => String,
+ }
+
+ @delete_backend_service_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'targetId' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'insertTime' => String,
+ 'zone' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @list_backend_services_format = {
+ 'kind' => String,
+ 'selfLink' => String,
+ 'id' => String,
+ 'items' => Array
+ }
+
+ tests('success') do
+
+ backend_service_name = 'test-backend-service'
+ zone_name = 'us-central1-a'
+
+ # These will all fail if errors happen on insert
+ tests("#insert_backend_service").formats(@insert_backend_service_format) do
+ health_check = create_test_http_health_check(Fog::Compute[:google])
+ options = { 'health_check' => health_check }
+ response = @google.insert_backend_service(backend_service_name, options).body
+ wait_operation(@google, response)
+ response
+ end
+
+ tests("#list_backend_services").formats(@list_backend_services_format) do
+ @google.list_backend_services.body
+ end
+
+ tests("#get_backend_service").formats(@get_backend_service_format) do
+ @google.get_backend_service(backend_service_name).body
+ end
+
+ tests("#delete_backend_service").formats(@delete_backend_service_format) do
+ @google.delete_backend_service(backend_service_name).body
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/compute/disk_tests.rb b/tests/google/requests/compute/disk_tests.rb
index d4aa3c5..335b5ab 100644
--- a/tests/google/requests/compute/disk_tests.rb
+++ b/tests/google/requests/compute/disk_tests.rb
@@ -28,6 +28,7 @@ Shindo.tests('Fog::Compute[:google] | disk requests', ['google']) do
'sizeGb' => String,
'sourceImageId' => String,
'sourceImage' => String,
+ 'type' => String,
}
@delete_disk_format = {
@@ -51,11 +52,13 @@ Shindo.tests('Fog::Compute[:google] | disk requests', ['google']) do
disk_name = 'new-disk-test'
disk_size = '2'
zone_name = 'us-central1-a'
- image_name = 'centos-6-v20130813'
+ image_name = 'debian-7-wheezy-v20140408'
# These will all fail if errors happen on insert
tests("#insert_disk").formats(@insert_disk_format) do
- @google.insert_disk(disk_name, zone_name, image_name).body
+ response = @google.insert_disk(disk_name, zone_name, image_name).body
+ wait_operation(@google, response)
+ response
end
tests("#get_disk").formats(@get_disk_format) do
diff --git a/tests/google/requests/compute/disk_type_tests.rb b/tests/google/requests/compute/disk_type_tests.rb
new file mode 100644
index 0000000..41ee8e2
--- /dev/null
+++ b/tests/google/requests/compute/disk_type_tests.rb
@@ -0,0 +1,45 @@
+Shindo.tests('Fog::Compute[:google] | disk_type requests', ['google']) do
+ @google = Fog::Compute[:google]
+
+ @get_disk_type_format = {
+ 'name' => String,
+ 'kind' => String,
+ 'id' => Fog::Nullable::String,
+ 'creationTimestamp' => String,
+ 'deprecated' => Fog::Nullable::Array,
+ 'description' => String,
+ 'selfLink' => String,
+ 'validDiskSize' => String,
+ 'zone' => String,
+ }
+
+ @list_disk_types_format = {
+ 'kind' => String,
+ 'selfLink' => String,
+ 'items' => [@get_disk_type_format],
+ }
+
+ @list_aggregated_disk_types = {
+ 'kind' => String,
+ 'selfLink' => String,
+ 'items' => Hash,
+ }
+
+ tests('success') do
+
+ tests('#list_aggregated_disk_types').formats(@list_aggregated_disk_types) do
+ @google.list_aggregated_disk_types.body
+ end
+
+ tests('#list_disk_types').formats(@list_disk_types_format) do
+ @google.list_disk_types('us-central1-a').body
+ end
+
+ tests('#get_disk_type').formats(@get_disk_type_format) do
+ disk_type = @google.disk_types.first
+ @google.get_disk_type(disk_type.identity, disk_type.zone).body
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/compute/firewall_tests.rb b/tests/google/requests/compute/firewall_tests.rb
index 3ad2826..bb73fc9 100644
--- a/tests/google/requests/compute/firewall_tests.rb
+++ b/tests/google/requests/compute/firewall_tests.rb
@@ -52,7 +52,7 @@ Shindo.tests('Fog::Compute[:google] | firewall requests', ['google']) do
tests('success') do
- firewall_name = 'new-firewall-test'
+ firewall_name = 'fog-test-firewall'
source_range = [ '10.0.0.0/8' ]
allowed = [{
"IPProtocol" => "tcp",
@@ -65,7 +65,9 @@ Shindo.tests('Fog::Compute[:google] | firewall requests', ['google']) do
}]
tests("#insert_firewall").formats(@insert_firewall_format) do
- @google.insert_firewall(firewall_name, source_range, allowed).body
+ response = @google.insert_firewall(firewall_name, allowed, 'default', :source_ranges => source_range).body
+ wait_operation(@google, response)
+ response
end
# TODO: Get better matching for firewall responses.
diff --git a/tests/google/requests/compute/forwarding_rules_tests.rb b/tests/google/requests/compute/forwarding_rules_tests.rb
new file mode 100644
index 0000000..0bbdbf8
--- /dev/null
+++ b/tests/google/requests/compute/forwarding_rules_tests.rb
@@ -0,0 +1,83 @@
+Shindo.tests('Fog::Compute[:google] | forwarding rule requests', ['google']) do
+
+ @google = Fog::Compute[:google]
+
+ @insert_forwarding_rule_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'region' => String,
+ 'insertTime' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @get_forwarding_rule_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'creationTimestamp' => String,
+ 'name' => String,
+ 'region' => String,
+ 'IPAddress' => String,
+ 'IPProtocol' => String,
+ 'portRange' => String,
+ 'target' => String
+ }
+
+ @delete_forwarding_rule_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'targetId' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'insertTime' => String,
+ 'region' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @list_forwarding_rules_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'items' => Array,
+ 'selfLink' => String
+ }
+
+ tests('success') do
+
+ forwarding_rule_name = 'test-forwarding-rule'
+ region_name = 'us-central1'
+ # These will all fail if errors happen on insert
+ tests("#insert_forwarding_rule").formats(@insert_forwarding_rule_format) do
+ target = create_test_target_pool(Fog::Compute[:google], region_name)
+ options = { 'target' => target.self_link }
+ response = @google.insert_forwarding_rule(forwarding_rule_name, region_name, options).body
+ wait_operation(@google, response)
+ response
+ end
+
+ tests("#get_forwarding_rule").formats(@get_forwarding_rule_format) do
+ @google.get_forwarding_rule(forwarding_rule_name, region_name).body
+ end
+
+ tests("#list_forwarding_rules").formats(@list_forwarding_rules_format) do
+ @google.list_forwarding_rules(region_name).body
+ end
+
+ tests("#delete_forwarding_rule").formats(@delete_forwarding_rule_format) do
+ @google.delete_forwarding_rule(forwarding_rule_name, region_name).body
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/compute/global_forwarding_rules_tests.rb b/tests/google/requests/compute/global_forwarding_rules_tests.rb
new file mode 100644
index 0000000..643a4b5
--- /dev/null
+++ b/tests/google/requests/compute/global_forwarding_rules_tests.rb
@@ -0,0 +1,83 @@
+Shindo.tests('Fog::Compute[:google] | global forwarding rule requests', ['google']) do
+
+ @google = Fog::Compute[:google]
+
+ @insert_global_forwarding_rule_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'zone' => String,
+ 'insertTime' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @get_global_forwarding_rule_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'creationTimestamp' => String,
+ 'name' => String,
+ 'region' => String,
+ 'IPAddress' => String,
+ 'IPProtocol' => String,
+ 'portRange' => String,
+ 'target' => String
+ }
+
+ @delete_global_forwarding_rule_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'targetId' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'insertTime' => String,
+ 'zone' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @list_global_forwarding_rules_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'items' => Array,
+ 'selfLink' => String
+ }
+
+ tests('success') do
+
+ global_forwarding_rule_name = 'test-global-forwarding-rule'
+
+ # These will all fail if errors happen on insert
+ tests("#insert_global_forwarding_rule").formats(@insert_global_forwarding_rule_format) do
+ target = create_test_target_http_proxy(Fog::Compute[:google])
+ options = { 'target' => target.self_link }
+ response = @google.insert_global_forwarding_rule(global_forwarding_rule_name, options).body
+ wait_operation(@google, response)
+ response
+ end
+
+ tests("#get_global_forwarding_rule").formats(@get_global_forwarding_rule_format) do
+ @google.get_global_forwarding_rule(global_forwarding_rule_name).body
+ end
+
+ tests("#list_global_forwarding_rules").formats(@list_global_forwarding_rules_format) do
+ @google.list_global_forwarding_rules('global').body
+ end
+
+ tests("#delete_global_forwarding_rule").formats(@delete_global_forwarding_rule_format) do
+ @google.delete_global_forwarding_rule(global_forwarding_rule_name).body
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/compute/http_health_checks_tests.rb b/tests/google/requests/compute/http_health_checks_tests.rb
new file mode 100644
index 0000000..e628775
--- /dev/null
+++ b/tests/google/requests/compute/http_health_checks_tests.rb
@@ -0,0 +1,83 @@
+Shindo.tests('Fog::Compute[:google] | HTTP health checks requests', ['google']) do
+
+ @google = Fog::Compute[:google]
+
+ @insert_http_health_check_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'zone' => String,
+ 'insertTime' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @get_http_health_check_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'creationTimestamp' => String,
+ 'name' => String,
+ 'host' => String,
+ 'requestPath' => String,
+ 'port' => Integer,
+ 'checkIntervalSec' => Integer,
+ 'timeoutSec' => Integer,
+ 'unhealthyThreshold' => Integer,
+ 'healthyThreshold' => Integer
+ }
+
+ @delete_http_health_check_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'targetId' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'insertTime' => String,
+ 'zone' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @list_http_health_checks_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'items' => Array
+ }
+
+ tests('success') do
+
+ http_health_check_name = 'test-http-health-check'
+
+ # These will all fail if errors happen on insert
+ tests("#insert_http_health_check").formats(@insert_http_health_check_format) do
+ response = @google.insert_http_health_check(http_health_check_name).body
+ wait_operation(@google, response)
+ response
+ end
+
+ tests("#get_http_health_check").formats(@get_http_health_check_format) do
+ @google.get_http_health_check(http_health_check_name).body
+ end
+
+ tests("#list_http_health_checks").formats(@list_http_health_checks_format) do
+ @google.list_http_health_checks.body
+ end
+
+ tests("#delete_http_health_check").formats(@delete_http_health_check_format) do
+ @google.delete_http_health_check(http_health_check_name).body
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/compute/image_tests.rb b/tests/google/requests/compute/image_tests.rb
index 7731bd1..859003f 100644
--- a/tests/google/requests/compute/image_tests.rb
+++ b/tests/google/requests/compute/image_tests.rb
@@ -53,17 +53,19 @@ Shindo.tests('Fog::Compute[:google] | image requests', ['google']) do
tests('success') do
- image_name = 'test-image'
+ random_string = SecureRandom.hex
+ image_name = "fog-test-image-#{random_string}"
source = 'https://www.google.com/images/srpr/logo4w.png'
tests("#insert_image").formats(@insert_image_format) do
pending if Fog.mocking?
- @google.insert_image(image_name, source).body
+ response = @google.insert_image(image_name, 'rawDisk' => source).body
+ wait_operation(@google, response)
+ response
end
tests("#get_image").formats(@get_image_format) do
pending if Fog.mocking?
- @google.insert_image(image_name, source)
@google.get_image(image_name).body
end
@@ -73,7 +75,6 @@ Shindo.tests('Fog::Compute[:google] | image requests', ['google']) do
tests("#delete_image").formats(@delete_image_format) do
pending if Fog.mocking?
- @google.insert_image(image_name, source)
@google.delete_image(image_name).body
end
diff --git a/tests/google/requests/compute/region_tests.rb b/tests/google/requests/compute/region_tests.rb
new file mode 100644
index 0000000..1b4a752
--- /dev/null
+++ b/tests/google/requests/compute/region_tests.rb
@@ -0,0 +1,39 @@
+Shindo.tests('Fog::Compute[:google] | region requests', ['google']) do
+ @google = Fog::Compute[:google]
+
+ @get_region_format = {
+ 'kind' => String,
+ 'selfLink' => String,
+ 'id' => String,
+ 'creationTimestamp' => String,
+ 'name' => String,
+ 'description' => String,
+ 'status' => String,
+ 'zones' => Array,
+ 'quotas' => [{ 'metric' => String, 'limit' => Float, 'usage' => Float }],
+ }
+
+ @list_regions_format = {
+ 'kind' => String,
+ 'selfLink' => String,
+ 'id' => String,
+ 'items' => [@get_region_format]
+ }
+
+ tests('success') do
+ tests("#get_region").formats(@get_region_format) do
+ region = @google.list_regions.body['items'].first['name']
+ @google.get_region(region).body
+ end
+
+ tests("#list_regions").formats(@list_regions_format) do
+ @google.list_regions.body
+ end
+ end
+
+ tests('failure') do
+ tests("#get_region").raises(Fog::Errors::NotFound) do
+ @google.get_region('unicorn').body
+ end
+ end
+end
diff --git a/tests/google/requests/compute/target_http_proxies_test.rb b/tests/google/requests/compute/target_http_proxies_test.rb
new file mode 100644
index 0000000..3af0001
--- /dev/null
+++ b/tests/google/requests/compute/target_http_proxies_test.rb
@@ -0,0 +1,79 @@
+Shindo.tests('Fog::Compute[:google] | target HTTP proxy requests', ['google']) do
+
+ @google = Fog::Compute[:google]
+
+ @insert_target_http_proxy_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'zone' => String,
+ 'insertTime' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @get_target_http_proxy_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'creationTimestamp' => String,
+ 'name' => String,
+ 'urlMap' => String,
+ }
+
+ @delete_target_http_proxy_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'targetId' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'insertTime' => String,
+ 'zone' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @list_target_http_proxies_format = {
+ 'kind' => String,
+ 'selfLink' => String,
+ 'id' => String,
+ 'items' => Array
+ }
+
+ tests('success') do
+
+ target_http_proxy_name = 'test-target-http-proxy'
+
+ # These will all fail if errors happen on insert
+ tests("#insert_target_http_proxy").formats(@insert_target_http_proxy_format) do
+ url_map = create_test_url_map(Fog::Compute[:google])
+ options = { 'urlMap' => url_map.self_link }
+ response = @google.insert_target_http_proxy(target_http_proxy_name, options).body
+ wait_operation(@google, response)
+ response
+ end
+
+ tests("#get_target_http_proxy").formats(@get_target_http_proxy_format) do
+ @google.get_target_http_proxy(target_http_proxy_name).body
+ end
+
+ tests("#list_target_http_proxies").formats(@list_target_http_proxies_format) do
+ @google.list_target_http_proxies.body
+ end
+
+ tests("#delete_target_http_proxy").formats(@delete_target_http_proxy_format) do
+ @google.delete_target_http_proxy(target_http_proxy_name).body
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/compute/target_instances_tests.rb b/tests/google/requests/compute/target_instances_tests.rb
new file mode 100644
index 0000000..dbcffac
--- /dev/null
+++ b/tests/google/requests/compute/target_instances_tests.rb
@@ -0,0 +1,83 @@
+Shindo.tests('Fog::Compute[:google] | target instance requests', ['google']) do
+
+ @google = Fog::Compute[:google]
+
+ @insert_target_instance_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'zone' => String,
+ 'insertTime' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @get_target_instance_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'creationTimestamp' => String,
+ 'name' => String,
+ 'zone' => String,
+ 'natPolicy' => String,
+ 'instance' => String,
+ 'description' => String
+ }
+
+ @delete_target_instance_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'targetId' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'insertTime' => String,
+ 'zone' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @list_target_instances_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'items' => Array
+ }
+
+ tests('success') do
+
+ target_instance_name = 'test-target_instance'
+ @zone = 'us-central1-a'
+
+ # These will all fail if errors happen on insert
+ tests("#insert_target_instance").formats(@insert_target_instance_format) do
+ instance = create_test_server(Fog::Compute[:google], @zone)
+ options = { 'instance' => instance.self_link, 'zone' => @zone }
+ response = @google.insert_target_instance(target_instance_name, @zone, options).body
+ wait_operation(@google, response)
+ response
+ end
+
+ tests("#get_target_instance").formats(@get_target_instance_format) do
+ @google.get_target_instance(target_instance_name, @zone).body
+ end
+
+ tests("#list_target_instances").formats(@list_target_instances_format) do
+ @google.list_target_instances(@zone).body
+ end
+
+ tests("#delete_target_instance").formats(@delete_target_instance_format) do
+ @google.delete_target_instance(target_instance_name, @zone).body
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/compute/target_pools_tests.rb b/tests/google/requests/compute/target_pools_tests.rb
new file mode 100644
index 0000000..c3f5e52
--- /dev/null
+++ b/tests/google/requests/compute/target_pools_tests.rb
@@ -0,0 +1,82 @@
+Shindo.tests('Fog::Compute[:google] | target pools requests', ['google']) do
+
+ @google = Fog::Compute[:google]
+
+ @insert_target_pool_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'region' => String,
+ 'insertTime' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @get_target_pool_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'creationTimestamp' => String,
+ 'name' => String,
+ 'region' => String,
+ 'healthChecks' => Array,
+ 'instances' => Array,
+ }
+
+ @delete_target_pool_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'targetId' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'insertTime' => String,
+ 'region' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @list_target_pools_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'items' => Array,
+ 'selfLink' => String
+ }
+
+ tests('success') do
+
+ target_pool_name = 'test-target_pool'
+ region_name = 'us-central1'
+ # These will all fail if errors happen on insert
+ tests("#insert_target_pool").formats(@insert_target_pool_format) do
+ instance = create_test_server(Fog::Compute[:google], 'us-central1-a')
+ health_check = create_test_http_health_check(Fog::Compute[:google])
+ options = { 'instances' => [instance.self_link], 'healthChecks' => [health_check.self_link] }
+ response = @google.insert_target_pool(target_pool_name, region_name, options).body
+ wait_operation(@google, response)
+ response
+ end
+
+ tests("#get_target_pool").formats(@get_target_pool_format) do
+ @google.get_target_pool(target_pool_name, region_name).body
+ end
+
+ tests("#list_target_pools").formats(@list_target_pools_format) do
+ @google.list_target_pools(region_name).body
+ end
+
+ tests("#delete_target_pool").formats(@delete_target_pool_format) do
+ @google.delete_target_pool(target_pool_name, region_name).body
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/compute/url_maps_tests.rb b/tests/google/requests/compute/url_maps_tests.rb
new file mode 100644
index 0000000..e0dd9dd
--- /dev/null
+++ b/tests/google/requests/compute/url_maps_tests.rb
@@ -0,0 +1,82 @@
+Shindo.tests('Fog::Compute[:google] | url map requests', ['google']) do
+
+ @google = Fog::Compute[:google]
+
+ @insert_url_map_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'zone' => String,
+ 'insertTime' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @get_url_map_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'creationTimestamp' => String,
+ 'name' => String,
+ 'hostRules' => Array,
+ 'pathMatchers' => Array,
+ 'tests' => Array,
+ 'defaultService' => String,
+ }
+
+ @delete_url_map_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'name' => String,
+ 'targetLink' => String,
+ 'targetId' => String,
+ 'status' => String,
+ 'user' => String,
+ 'progress' => Integer,
+ 'insertTime' => String,
+ 'zone' => String,
+ 'startTime' => String,
+ 'operationType' => String
+ }
+
+ @list_url_maps_format = {
+ 'kind' => String,
+ 'id' => String,
+ 'selfLink' => String,
+ 'items' => Array
+ }
+
+ tests('success') do
+
+ url_map_name = 'test-url-map'
+
+ # These will all fail if errors happen on insert
+ tests("#insert_url_map").formats(@insert_url_map_format) do
+ backend_service = create_test_backend_service(Fog::Compute[:google])
+ options = { 'defaultService' => backend_service.self_link }
+ response = @google.insert_url_map(url_map_name, options).body
+ wait_operation(@google, response)
+ response
+ end
+
+ tests("#get_url_map").formats(@get_url_map_format) do
+ @google.get_url_map(url_map_name).body
+ end
+
+ tests("#list_url_maps").formats(@list_url_maps_format) do
+ @google.list_url_maps.body
+ end
+
+ tests("#delete_url_map").formats(@delete_url_map_format) do
+ @google.delete_url_map(url_map_name).body
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/compute/zone_tests.rb b/tests/google/requests/compute/zone_tests.rb
index bf518b7..d9eda0f 100644
--- a/tests/google/requests/compute/zone_tests.rb
+++ b/tests/google/requests/compute/zone_tests.rb
@@ -10,12 +10,8 @@ Shindo.tests('Fog::Compute[:google] | zone requests', ['google']) do
'name' => String,
'description' => String,
'status' => String,
- 'maintenanceWindows' => Fog::Nullable::Array,
- 'quotas' => [{
- 'metric' => String,
- 'limit' => Float,
- 'usage' => Float},
- ],
+ 'region' => String,
+ 'maintenanceWindows' => Fog::Nullable::Array
}
@list_zones_format = {
diff --git a/tests/google/requests/dns/managed_zone_tests.rb b/tests/google/requests/dns/managed_zone_tests.rb
new file mode 100644
index 0000000..74b1871
--- /dev/null
+++ b/tests/google/requests/dns/managed_zone_tests.rb
@@ -0,0 +1,66 @@
+Shindo.tests('Fog::DNS[:google] | managed_zone requests', ['google']) do
+
+ @google = Fog::DNS[:google]
+
+ @managed_zone_schema = {
+ 'kind' => String,
+ 'id' => String,
+ 'creationTime' => String,
+ 'name' => String,
+ 'dnsName' => String,
+ 'description' => String,
+ 'nameServers' => [String],
+ }
+
+ @list_managed_zones_schema = {
+ 'kind' => String,
+ 'managedZones' => [@managed_zone_schema],
+ }
+
+ tests('success') do
+
+ zone_name = 'new-zone-test'
+ DEFAULT_ZONE_DNS_NAME = 'fog-test.your-own-domain.com.'
+ # Google requires confirmation of ownership for created domains in some
+ # cases. If you want to run tests in non-mocked mode, set the environment
+ # variable to a domain you own.
+ zone_dns_name = ENV['FOG_TEST_GOOGLE_DNS_ZONE'] || DEFAULT_ZONE_DNS_NAME
+ unless Fog.mocking? or zone_dns_name != DEFAULT_ZONE_DNS_NAME
+ tests('Needs a verified domain, set $FOG_TEST_GOOGLE_DNS_ZONE').pending
+ end
+
+ tests("$FOG_TEST_GOOGLE_DNS_ZONE ends with dot").pending unless zone_dns_name.end_with?('.')
+
+ tests("#create_managed_zone").data_matches_schema(
+ @managed_zone_schema, {:allow_extra_keys => false}) do
+ @google.create_managed_zone(zone_name, zone_dns_name).body
+ end
+
+ tests("#get_managed_zone") do
+ response = @google.get_managed_zone(zone_name).body
+ tests('schema').data_matches_schema(@managed_zone_schema, {:allow_extra_keys => false}) { response }
+ tests('test zone present').returns(zone_name) { response['name'] }
+ end
+
+ tests("#list_managed_zones") do
+ response = @google.list_managed_zones().body
+ tests('schema').data_matches_schema(@list_managed_zones_schema, {:allow_extra_keys => false}) { response }
+ tests('test zone present').returns(true) { response['managedZones'].one? { |zone| zone['name'] == zone_name } }
+ end
+
+ tests("#delete_managed_zone").returns(nil) do
+ @google.delete_managed_zone(zone_name).body
+ end
+ end
+
+ tests('failure') do
+ tests("#delete_managed_zone").raises(Fog::Errors::NotFound) do
+ @google.delete_managed_zone('zone-which-does-not-exist').body
+ end
+
+ tests("#get_managed_zone").raises(Fog::Errors::NotFound) do
+ @google.get_managed_zone('zone-which-does-not-exist').body
+ end
+ end
+
+end
diff --git a/tests/google/requests/monitoring/metric_descriptor_tests.rb b/tests/google/requests/monitoring/metric_descriptor_tests.rb
new file mode 100644
index 0000000..642321f
--- /dev/null
+++ b/tests/google/requests/monitoring/metric_descriptor_tests.rb
@@ -0,0 +1,25 @@
+Shindo.tests('Fog::Google[:monitoring] | metric_descriptor requests', ['google']) do
+ @monitoring = Fog::Google[:monitoring]
+
+ @get_metric_descriptor_format = {
+ 'name' => String,
+ 'description' => String,
+ 'labels' => Array,
+ 'project' => String,
+ 'typeDescriptor' => Hash,
+ }
+
+ @list_metric_descriptors_format = {
+ 'kind' => String,
+ 'metrics' => [@get_metric_descriptor_format],
+ }
+
+ tests('success') do
+
+ tests('#list_metric_descriptors').formats(@list_metric_descriptors_format) do
+ @monitoring.list_metric_descriptors.body
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/monitoring/timeseries_collection_tests.rb b/tests/google/requests/monitoring/timeseries_collection_tests.rb
new file mode 100644
index 0000000..66b19da
--- /dev/null
+++ b/tests/google/requests/monitoring/timeseries_collection_tests.rb
@@ -0,0 +1,25 @@
+Shindo.tests('Fog::Google[:monitoring] | timeseries_collection requests', ['google']) do
+ @monitoring = Fog::Google[:monitoring]
+
+ @get_timeseries_format = {
+ 'timeseriesDesc' => Hash,
+ 'points' => Array,
+ }
+
+ @list_timeseries_format = {
+ 'kind' => String,
+ 'youngest' => String,
+ 'oldest' => String,
+ 'timeseries' => [@get_timeseries_format],
+ }
+
+ tests('success') do
+
+ tests('#list_timeseries').formats(@list_timeseries_format) do
+ @monitoring.list_timeseries('compute.googleapis.com/instance/uptime',
+ Time.now.strftime("%Y-%m-%dT%H:%M:%S%:z")).body
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/monitoring/timeseries_descriptor_tests.rb b/tests/google/requests/monitoring/timeseries_descriptor_tests.rb
new file mode 100644
index 0000000..8ba539e
--- /dev/null
+++ b/tests/google/requests/monitoring/timeseries_descriptor_tests.rb
@@ -0,0 +1,26 @@
+Shindo.tests('Fog::Google[:monitoring] | timeseries_descriptor requests', ['google']) do
+ @monitoring = Fog::Google[:monitoring]
+
+ @get_timeseries_descriptor_format = {
+ 'metric' => String,
+ 'project' => String,
+ 'labels' => Hash,
+ }
+
+ @list_timeseries_descriptors_format = {
+ 'kind' => String,
+ 'youngest' => String,
+ 'oldest' => String,
+ 'timeseries' => [@get_timeseries_descriptor_format],
+ }
+
+ tests('success') do
+
+ tests('#list_timeseries_descriptors').formats(@list_timeseries_descriptors_format) do
+ @monitoring.list_timeseries_descriptors('compute.googleapis.com/instance/uptime',
+ Time.now.strftime("%Y-%m-%dT%H:%M:%S%:z")).body
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/sql/flag_tests.rb b/tests/google/requests/sql/flag_tests.rb
new file mode 100644
index 0000000..f9cf619
--- /dev/null
+++ b/tests/google/requests/sql/flag_tests.rb
@@ -0,0 +1,27 @@
+Shindo.tests('Fog::Google[:sql] | flag requests', ['google']) do
+ @sql = Fog::Google[:sql]
+
+ @get_flag_format = {
+ 'name' => String,
+ 'allowedStringValues' => Fog::Nullable::Array,
+ 'appliesTo' => Array,
+ 'kind' => String,
+ 'maxValue' => Fog::Nullable::String,
+ 'minValue' => Fog::Nullable::String,
+ 'type' => String,
+ }
+
+ @list_flags_format = {
+ 'kind' => String,
+ 'items' => [@get_flag_format],
+ }
+
+ tests('success') do
+
+ tests('#list_flags').formats(@list_flags_format) do
+ @sql.list_flags.body
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/sql/instance_tests.rb b/tests/google/requests/sql/instance_tests.rb
new file mode 100644
index 0000000..0172dde
--- /dev/null
+++ b/tests/google/requests/sql/instance_tests.rb
@@ -0,0 +1,129 @@
+Shindo.tests('Fog::Google[:sql] | instance requests', ['google']) do
+ @sql = Fog::Google[:sql]
+ @instance_id = Fog::Mock.random_letters(16)
+
+ @insert_instance_format = {
+ 'kind' => String,
+ 'operation' => String,
+ }
+
+ @get_instance_format = {
+ 'instance' => String,
+ 'currentDiskSize' => Fog::Nullable::String,
+ 'databaseVersion' => String,
+ 'etag' => String,
+ 'ipAddresses' => Fog::Nullable::String,
+ 'kind' => String,
+ 'maxDiskSize' => String,
+ 'project' => String,
+ 'region' => String,
+ 'serverCaCert' => Hash,
+ 'settings' => Hash,
+ 'state' => String,
+ }
+
+ @list_instances_format = {
+ 'kind' => String,
+ 'items' => [@get_instance_format],
+ }
+
+ @clone_instance_format = {
+ 'kind' => String,
+ 'operation' => String,
+ }
+
+ @export_instance_format = {
+ 'kind' => String,
+ 'operation' => String,
+ }
+
+ @import_instance_format = {
+ 'kind' => String,
+ 'operation' => String,
+ }
+
+ @reset_instance_ssl_config_format = {
+ 'kind' => String,
+ 'operation' => String,
+ }
+
+ @restart_instance_format = {
+ 'kind' => String,
+ 'operation' => String,
+ }
+
+ @set_instance_root_password_format = {
+ 'kind' => String,
+ 'operation' => String,
+ }
+
+ @update_instance_format = {
+ 'kind' => String,
+ 'operation' => String,
+ }
+
+ @delete_instance_format = {
+ 'kind' => String,
+ 'operation' => String,
+ }
+
+ tests('success') do
+
+ tests('#insert_instance').formats(@insert_instance_format) do
+ result = @sql.insert_instance(@instance_id, 'D1').body
+ @sql.instances.get(@instance_id).wait_for { ready? }
+ result
+ end
+
+ tests('#list_instances').formats(@list_instances_format) do
+ @sql.list_instances.body
+ end
+
+ tests('#get_instance').formats(@get_instance_format) do
+ @sql.get_instance(@instance_id).body
+ end
+
+ tests('#update_instance').formats(@update_instance_format) do
+ instance = @sql.instances.get(@instance_id)
+ @sql.update_instance(instance.instance, instance.settings_version, instance.tier, instance.attributes).body
+ end
+
+ tests('#clone_instance').formats(@clone_instance_format) do
+ pending unless Fog.mocking? # Binary log must be activated
+ instance_cloned_id = Fog::Mock.random_letters(16)
+ clone_instance_format = @sql.clone_instance(@instance_id, instance_cloned_id).body
+ @sql.delete_instance(instance_cloned_id)
+ clone_instance_format
+ end
+
+ tests('#export_instance').formats(@export_instance_format) do
+ pending unless Fog.mocking? # We don't have access to a Google Cloud Storage bucket
+ @sql.export_instance(@instance_id, "gs://#{Fog::Mock.random_letters_and_numbers(16)}/mysql-export").body
+ end
+
+ tests('#import_instance').formats(@import_instance_format) do
+ pending unless Fog.mocking? # We don't have access to a Google Cloud Storage bucket
+ @sql.import_instance(@instance_id, "gs://#{Fog::Mock.random_letters_and_numbers(16)}/mysql-export").body
+ end
+
+ tests('#reset_instance_ssl_config').formats(@reset_instance_ssl_config_format) do
+ @sql.reset_instance_ssl_config(@instance_id).body
+ end
+
+ tests('#set_instance_root_password').formats(@set_instance_root_password_format) do
+ @sql.set_instance_root_password(@instance_id, Fog::Mock.random_letters_and_numbers(8)).body
+ end
+
+ tests('#restart_instance').formats(@restart_instance_format) do
+ result = @sql.restart_instance(@instance_id).body
+ @sql.operations.get(@instance_id, result['operation']).wait_for { ready? }
+ result
+ end
+
+ tests('#delete_instance').formats(@delete_instance_format) do
+ @sql.delete_instance(@instance_id).body
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/sql/operation_tests.rb b/tests/google/requests/sql/operation_tests.rb
new file mode 100644
index 0000000..70a97b2
--- /dev/null
+++ b/tests/google/requests/sql/operation_tests.rb
@@ -0,0 +1,42 @@
+Shindo.tests('Fog::Google[:sql] | operation requests', ['google']) do
+ @sql = Fog::Google[:sql]
+ @instance_id = Fog::Mock.random_letters(16)
+ @instance = @sql.instances.create(:instance => @instance_id, :tier => 'D1')
+ @instance.wait_for { ready? }
+
+ @get_operation_format = {
+ 'operation' => String,
+ 'endTime' => Fog::Nullable::String,
+ 'enqueuedTime' => String,
+ 'error' => Fog::Nullable::Array,
+ 'exportContext' => Fog::Nullable::Array,
+ 'importContext' => Fog::Nullable::Array,
+ 'instance' => String,
+ 'kind' => String,
+ 'operationType' => String,
+ 'startTime' => Fog::Nullable::String,
+ 'state' => String,
+ 'userEmailAddress' => String,
+ }
+
+ @list_operations_format = {
+ 'kind' => String,
+ 'items' => [@get_operation_format],
+ }
+
+ tests('success') do
+
+ tests('#list_operations').formats(@list_operations_format) do
+ @sql.list_operations(@instance_id).body
+ end
+
+ tests('#get_operation').formats(@get_operation_format) do
+ operation_id = @sql.operations.all(@instance_id).first.operation
+ @sql.get_operation(@instance_id, operation_id).body
+ end
+
+ end
+
+ @instance.destroy
+
+end
diff --git a/tests/google/requests/sql/ssl_cert_tests.rb b/tests/google/requests/sql/ssl_cert_tests.rb
new file mode 100644
index 0000000..40e73b4
--- /dev/null
+++ b/tests/google/requests/sql/ssl_cert_tests.rb
@@ -0,0 +1,61 @@
+Shindo.tests('Fog::Google[:sql] | ssl_cert requests', ['google']) do
+ @sql = Fog::Google[:sql]
+ @instance_id = Fog::Mock.random_letters(16)
+ @instance = @sql.instances.create(:instance => @instance_id, :tier => 'D1')
+ @instance.wait_for { ready? }
+
+ @get_ssl_cert_format = {
+ 'sha1Fingerprint' => String,
+ 'cert' => String,
+ 'certSerialNumber' => String,
+ 'commonName' => String,
+ 'createTime' => String,
+ 'expirationTime' => Fog::Nullable::String,
+ 'instance' => String,
+ 'kind' => String,
+ }
+
+ @insert_ssl_cert_format = {
+ 'kind' => String,
+ 'serverCaCert' => @get_ssl_cert_format,
+ 'clientCert' => {
+ 'certInfo' => @get_ssl_cert_format,
+ 'certPrivateKey' => String,
+ },
+ }
+
+ @list_ssl_certs_format = {
+ 'kind' => String,
+ 'items' => [@get_ssl_cert_format],
+ }
+
+ @delete_ssl_cert_format = {
+ 'kind' => String,
+ 'operation' => String,
+ }
+
+ tests('success') do
+
+ tests('#insert_ssl_cert').formats(@insert_ssl_cert_format) do
+ @sql.insert_ssl_cert(@instance_id, Fog::Mock.random_letters(16)).body
+ end
+
+ tests('#list_ssl_certs').formats(@list_ssl_certs_format) do
+ @sql.list_ssl_certs(@instance_id).body
+ end
+
+ tests('#get_ssl_cert').formats(@get_ssl_cert_format) do
+ sha1_fingerprint = @sql.ssl_certs.all(@instance_id).first.sha1_fingerprint
+ @sql.get_ssl_cert(@instance_id, sha1_fingerprint).body
+ end
+
+ tests('#delete_ssl_cert').formats(@delete_ssl_cert_format) do
+ sha1_fingerprint = @sql.ssl_certs.all(@instance_id).first.sha1_fingerprint
+ @sql.delete_ssl_cert(@instance_id, sha1_fingerprint).body
+ end
+
+ end
+
+ @instance.destroy
+
+end
diff --git a/tests/google/requests/sql/tier_tests.rb b/tests/google/requests/sql/tier_tests.rb
new file mode 100644
index 0000000..af83ae2
--- /dev/null
+++ b/tests/google/requests/sql/tier_tests.rb
@@ -0,0 +1,25 @@
+Shindo.tests('Fog::Google[:sql] | tier requests', ['google']) do
+ @sql = Fog::Google[:sql]
+
+ @get_tier_format = {
+ 'tier' => String,
+ 'DiskQuota' => String,
+ 'kind' => String,
+ 'RAM' => String,
+ 'region' => Array,
+ }
+
+ @list_tiers_format = {
+ 'kind' => String,
+ 'items' => [@get_tier_format],
+ }
+
+ tests('success') do
+
+ tests('#list_tiers').formats(@list_tiers_format) do
+ @sql.list_tiers.body
+ end
+
+ end
+
+end
diff --git a/tests/google/requests/storage/object_tests.rb b/tests/google/requests/storage/object_tests.rb
index 27086be..e083e68 100644
--- a/tests/google/requests/storage/object_tests.rb
+++ b/tests/google/requests/storage/object_tests.rb
@@ -1,6 +1,9 @@
+require 'securerandom'
+
Shindo.tests('Fog::Storage[:google] | object requests', ["google"]) do
- @directory = Fog::Storage[:google].directories.create(:key => 'fogobjecttests')
+ random_string = SecureRandom.hex
+ @directory = Fog::Storage[:google].directories.create(:key => "fog-test-object-#{random_string}")
tests('success') do
@@ -12,7 +15,7 @@ Shindo.tests('Fog::Storage[:google] | object requests', ["google"]) do
Fog::Storage[:google].copy_object(@directory.identity, 'fog_object', @directory.identity, 'fog_other_object')
end
- @directory.files.get('fog_other_object').destroy
+ Fog::Storage[:google].delete_object(@directory.identity, 'fog_other_object')
tests("#get_object('#{@directory.identity}', 'fog_object')").returns(lorem_file.read) do
Fog::Storage[:google].get_object(@directory.identity, 'fog_object').body
diff --git a/tests/helper.rb b/tests/helper.rb
index 7eae3f2..edc0250 100644
--- a/tests/helper.rb
+++ b/tests/helper.rb
@@ -1,16 +1,3 @@
-require 'simplecov'
-
-if ENV['COVERAGE'] == 'true' && RUBY_VERSION != "1.9.2"
- require 'coveralls'
- SimpleCov.command_name "shindo:#{Process.pid.to_s}"
- SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
- SimpleCov::Formatter::HTMLFormatter,
- Coveralls::SimpleCov::Formatter
- ]
- SimpleCov.merge_timeout 3600
- SimpleCov.start
-end
-
ENV['FOG_RC'] = ENV['FOG_RC'] || File.expand_path('../.fog', __FILE__)
ENV['FOG_CREDENTIAL'] = ENV['FOG_CREDENTIAL'] || 'default'
@@ -49,7 +36,7 @@ available_providers = Fog.available_providers.map {|provider| provider.downcase}
unavailable_providers = all_providers - available_providers
if !ENV['PROVIDER'].nil? && unavailable_providers.include?(ENV['PROVIDER'])
- Formatador.display_line("[red]Requested provider #{ENV['PROVIDER']} is not available.[/]" +
+ Formatador.display_line("[red]Requested provider #{ENV['PROVIDER']} is not available.[/]" +
"[red]Check if .fog file has correct configuration (see '#{Fog.credentials_path}')[/]")
exit(0)
end
diff --git a/tests/helpers/collection_helper.rb b/tests/helpers/collection_helper.rb
index 4026d40..e73e783 100644
--- a/tests/helpers/collection_helper.rb
+++ b/tests/helpers/collection_helper.rb
@@ -1,5 +1,4 @@
def collection_tests(collection, params = {}, mocks_implemented = true)
-
tests('success') do
tests("#new(#{params.inspect})").succeeds do
@@ -11,8 +10,8 @@ def collection_tests(collection, params = {}, mocks_implemented = true)
pending if Fog.mocking? && !mocks_implemented
@instance = collection.create(params)
end
-
# FIXME: work around for timing issue on AWS describe_instances mocks
+
if Fog.mocking? && @instance.respond_to?(:ready?)
@instance.wait_for { ready? }
end
@@ -22,8 +21,6 @@ def collection_tests(collection, params = {}, mocks_implemented = true)
collection.all
end
-
-
if !Fog.mocking? || mocks_implemented
@identity = @instance.identity
end
@@ -73,9 +70,8 @@ def collection_tests(collection, params = {}, mocks_implemented = true)
end
-
if block_given?
- yield
+ yield(@instance)
end
if !Fog.mocking? || mocks_implemented
@@ -98,5 +94,4 @@ def collection_tests(collection, params = {}, mocks_implemented = true)
end
end
-
end
diff --git a/tests/helpers/compute/flavors_helper.rb b/tests/helpers/compute/flavors_helper.rb
index 11b98a3..b9170e8 100644
--- a/tests/helpers/compute/flavors_helper.rb
+++ b/tests/helpers/compute/flavors_helper.rb
@@ -1,5 +1,4 @@
def flavors_tests(connection, params = {}, mocks_implemented = true)
-
tests('success') do
tests("#all").succeeds do
@@ -30,5 +29,4 @@ def flavors_tests(connection, params = {}, mocks_implemented = true)
end
end
-
end
diff --git a/tests/helpers/compute/server_helper.rb b/tests/helpers/compute/server_helper.rb
index 3d37a96..90a79fb 100644
--- a/tests/helpers/compute/server_helper.rb
+++ b/tests/helpers/compute/server_helper.rb
@@ -1,5 +1,4 @@
def server_tests(connection, params = {}, mocks_implemented = true)
-
model_tests(connection.servers, params, mocks_implemented) do
tests('#reload').returns(true) do
@@ -23,5 +22,4 @@ def server_tests(connection, params = {}, mocks_implemented = true)
end
end
-
end
diff --git a/tests/helpers/compute/servers_helper.rb b/tests/helpers/compute/servers_helper.rb
index dfa6cad..60a2922 100644
--- a/tests/helpers/compute/servers_helper.rb
+++ b/tests/helpers/compute/servers_helper.rb
@@ -1,5 +1,4 @@
def servers_tests(connection, params = {}, mocks_implemented = true)
-
collection_tests(connection.servers, params, mocks_implemented) do
if !Fog.mocking? || mocks_implemented
@@ -8,5 +7,4 @@ def servers_tests(connection, params = {}, mocks_implemented = true)
end
end
-
end
diff --git a/tests/helpers/formats_helper.rb b/tests/helpers/formats_helper.rb
index 3d5d398..0053bb5 100644
--- a/tests/helpers/formats_helper.rb
+++ b/tests/helpers/formats_helper.rb
@@ -26,7 +26,6 @@ end
module Shindo
class Tests
-
# Generates a Shindo test that compares a hash schema to the result
# of the passed in block returning true if they match.
#
diff --git a/tests/helpers/formats_helper_tests.rb b/tests/helpers/formats_helper_tests.rb
index f62c79e..dba2386 100644
--- a/tests/helpers/formats_helper_tests.rb
+++ b/tests/helpers/formats_helper_tests.rb
@@ -107,5 +107,4 @@ Shindo.tests('test_helper', 'meta') do
end
-
end
diff --git a/tests/helpers/mock_helper.rb b/tests/helpers/mock_helper.rb
index c2c8508..d1e315b 100644
--- a/tests/helpers/mock_helper.rb
+++ b/tests/helpers/mock_helper.rb
@@ -65,6 +65,9 @@ if Fog.mock?
:ninefold_storage_token => 'ninefold_storage_token',
# :public_key_path => '~/.ssh/id_rsa.pub',
# :private_key_path => '~/.ssh/id_rsa',
+ :opennebula_endpoint => 'http://opennebula:2633/RPC2',
+ :opennebula_username => 'oneadmin',
+ :opennebula_password => 'oneadmin',
:openstack_api_key => 'openstack_api_key',
:openstack_username => 'openstack_username',
:openstack_tenant => 'openstack_tenant',
@@ -74,6 +77,7 @@ if Fog.mock?
:ovirt_password => '123123',
:libvirt_uri => 'qemu://libvirt/system',
:rackspace_api_key => 'rackspace_api_key',
+ :rackspace_region => 'dfw',
:rackspace_username => 'rackspace_username',
:riakcs_access_key_id => 'riakcs_access_key_id',
:riakcs_secret_access_key => 'riakcs_secret_access_key',
diff --git a/tests/helpers/model_helper.rb b/tests/helpers/model_helper.rb
index afbe7a6..e026a7b 100644
--- a/tests/helpers/model_helper.rb
+++ b/tests/helpers/model_helper.rb
@@ -1,5 +1,4 @@
def model_tests(collection, params = {}, mocks_implemented = true)
-
tests('success') do
@instance = collection.new(params)
@@ -10,7 +9,7 @@ def model_tests(collection, params = {}, mocks_implemented = true)
end
if block_given?
- yield
+ yield(@instance)
end
tests("#destroy").succeeds do
@@ -19,7 +18,6 @@ def model_tests(collection, params = {}, mocks_implemented = true)
end
end
-
end
# Generates a unique identifier with a random differentiator.
@@ -31,5 +29,3 @@ def uniq_id(base_name = 'fog-test')
suffix = rand(65536).to_s(16).rjust(4, '0')
[base_name, suffix] * '-'
end
-
-
diff --git a/tests/helpers/responds_to_helper.rb b/tests/helpers/responds_to_helper.rb
index f1482df..5982700 100644
--- a/tests/helpers/responds_to_helper.rb
+++ b/tests/helpers/responds_to_helper.rb
@@ -1,6 +1,5 @@
module Shindo
class Tests
-
def responds_to(method_names)
for method_name in [*method_names]
tests("#respond_to?(:#{method_name})").returns(true) do
@@ -8,6 +7,5 @@ module Shindo
end
end
end
-
end
end
diff --git a/tests/helpers/succeeds_helper.rb b/tests/helpers/succeeds_helper.rb
index fe6fb1b..b54589e 100644
--- a/tests/helpers/succeeds_helper.rb
+++ b/tests/helpers/succeeds_helper.rb
@@ -1,11 +1,9 @@
module Shindo
class Tests
-
def succeeds
test('succeeds') do
!!instance_eval(&Proc.new)
end
end
-
end
end
diff --git a/tests/hp/models/block_storage_v2/volume_backups_tests.rb b/tests/hp/models/block_storage_v2/volume_backups_tests.rb
index 44cfa32..3365821 100644
--- a/tests/hp/models/block_storage_v2/volume_backups_tests.rb
+++ b/tests/hp/models/block_storage_v2/volume_backups_tests.rb
@@ -6,4 +6,4 @@ Shindo.tests("Fog::Compute::HPV2 | volume backups collection", ['hp', 'v2', 'blo
collection_tests(HP[:block_storage_v2].volume_backups, {:name => 'fogbkp2tests', :description => 'fogbkp2tests-desc', :volume_id => @volume.id}, true)
@volume.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/compute/addresses_tests.rb b/tests/hp/models/compute/addresses_tests.rb
index eb82177..a6065be 100644
--- a/tests/hp/models/compute/addresses_tests.rb
+++ b/tests/hp/models/compute/addresses_tests.rb
@@ -2,4 +2,4 @@ Shindo.tests("Fog::Compute[:hp] | addresses", ['hp']) do
collection_tests(Fog::Compute[:hp].addresses, {}, true)
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/compute/key_pair_tests.rb b/tests/hp/models/compute/key_pair_tests.rb
index 4b4c49f..edacef6 100644
--- a/tests/hp/models/compute/key_pair_tests.rb
+++ b/tests/hp/models/compute/key_pair_tests.rb
@@ -23,5 +23,4 @@ Shindo.tests("Fog::Compute[:hp] | key_pair", ['hp']) do
end
end
-
end
diff --git a/tests/hp/models/compute/key_pairs_tests.rb b/tests/hp/models/compute/key_pairs_tests.rb
index 60e34eb..a49b96c 100644
--- a/tests/hp/models/compute/key_pairs_tests.rb
+++ b/tests/hp/models/compute/key_pairs_tests.rb
@@ -2,4 +2,4 @@ Shindo.tests("Fog::Compute[:hp] | key_pairs", ['hp']) do
collection_tests(Fog::Compute[:hp].key_pairs, {:name => 'fogkeyname'}, true)
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/compute_v2/addresses_tests.rb b/tests/hp/models/compute_v2/addresses_tests.rb
index 87d22ac..1fc99bf 100644
--- a/tests/hp/models/compute_v2/addresses_tests.rb
+++ b/tests/hp/models/compute_v2/addresses_tests.rb
@@ -4,4 +4,4 @@ Shindo.tests("Fog::Compute::HPV2 | addresses collection", ['hp', 'v2', 'compute'
collection_tests(service.addresses, {}, true)
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/compute_v2/availability_zone_tests.rb b/tests/hp/models/compute_v2/availability_zone_tests.rb
index e0b5eed..2aab2cf 100644
--- a/tests/hp/models/compute_v2/availability_zone_tests.rb
+++ b/tests/hp/models/compute_v2/availability_zone_tests.rb
@@ -8,6 +8,4 @@ Shindo.tests("Fog::Compute::HPV2 | availability zone model", ['hp', 'v2', 'compu
@zones.first.respond_to?('available?')
end
-
-
end
diff --git a/tests/hp/models/compute_v2/availability_zones_tests.rb b/tests/hp/models/compute_v2/availability_zones_tests.rb
index a97143d..f914203 100644
--- a/tests/hp/models/compute_v2/availability_zones_tests.rb
+++ b/tests/hp/models/compute_v2/availability_zones_tests.rb
@@ -10,4 +10,4 @@ Shindo.tests("Fog::Compute::HPV2 | availability zones collection", ['hp', 'v2',
@zones.get('az1').name == 'az1'
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/compute_v2/key_pair_tests.rb b/tests/hp/models/compute_v2/key_pair_tests.rb
index 4368699..7551b8f 100644
--- a/tests/hp/models/compute_v2/key_pair_tests.rb
+++ b/tests/hp/models/compute_v2/key_pair_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests("Fog::Compute::HPV2 | key_pair model", ['hp', 'v2', 'compute']) do
service = Fog::Compute.new(:provider => 'HP', :version => :v2)
-
+
model_tests(service.key_pairs, {:name => 'fogkeyname'}, true)
after do
@@ -25,5 +25,4 @@ Shindo.tests("Fog::Compute::HPV2 | key_pair model", ['hp', 'v2', 'compute']) do
end
end
-
end
diff --git a/tests/hp/models/compute_v2/key_pairs_tests.rb b/tests/hp/models/compute_v2/key_pairs_tests.rb
index 0f0fddf..a7c0b67 100644
--- a/tests/hp/models/compute_v2/key_pairs_tests.rb
+++ b/tests/hp/models/compute_v2/key_pairs_tests.rb
@@ -4,4 +4,4 @@ Shindo.tests("Fog::Compute::HPV2 | key pairs collection", ['hp', 'v2', 'compute'
collection_tests(service.key_pairs, {:name => 'fogkeyname'}, true)
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/compute_v2/servers_tests.rb b/tests/hp/models/compute_v2/servers_tests.rb
index 2b364f0..27a655b 100644
--- a/tests/hp/models/compute_v2/servers_tests.rb
+++ b/tests/hp/models/compute_v2/servers_tests.rb
@@ -6,4 +6,4 @@ Shindo.tests("Fog::Compute::HPV2 | servers collection", ['hp', 'v2', 'compute'])
collection_tests(service.servers, {:name => 'fogservercolltest', :flavor_id => 100, :image_id => @base_image_id}, true)
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/compute_v2/volume_attachments_tests.rb b/tests/hp/models/compute_v2/volume_attachments_tests.rb
index 34b00f4..c5d280e 100644
--- a/tests/hp/models/compute_v2/volume_attachments_tests.rb
+++ b/tests/hp/models/compute_v2/volume_attachments_tests.rb
@@ -14,4 +14,4 @@ Shindo.tests("Fog::Compute::HPV2 | volume attachments collection", ['hp', 'v2',
@volume.destroy
@server.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/dns/domains_tests.rb b/tests/hp/models/dns/domains_tests.rb
index 5b92d66..fa3f06e 100644
--- a/tests/hp/models/dns/domains_tests.rb
+++ b/tests/hp/models/dns/domains_tests.rb
@@ -11,4 +11,4 @@ Shindo.tests('HP::DNS | domains collection', ['hp', 'dns', 'domains']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/dns/records_tests.rb b/tests/hp/models/dns/records_tests.rb
index ddf6093..17ec76d 100644
--- a/tests/hp/models/dns/records_tests.rb
+++ b/tests/hp/models/dns/records_tests.rb
@@ -6,4 +6,4 @@ Shindo.tests('HP::DNS | records collection', ['hp', 'dns', 'records']) do
collection_tests(@domain.records, attributes, true)
@domain.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/lb/algorithms_tests.rb b/tests/hp/models/lb/algorithms_tests.rb
index f5e32ba..1e342e3 100644
--- a/tests/hp/models/lb/algorithms_tests.rb
+++ b/tests/hp/models/lb/algorithms_tests.rb
@@ -12,4 +12,4 @@ Shindo.tests('HP::LB | algorithms collection', ['hp', 'lb', 'algorithms']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/lb/load_balancer_node_tests.rb b/tests/hp/models/lb/load_balancer_node_tests.rb
index 704423d..c222c40 100644
--- a/tests/hp/models/lb/load_balancer_node_tests.rb
+++ b/tests/hp/models/lb/load_balancer_node_tests.rb
@@ -6,4 +6,4 @@ Shindo.tests('HP::LB | load balancer node model', ['hp', 'lb', 'node']) do
attributes = {:address => '15.185.1.1', :port => '80'}
model_tests(@lb.nodes, attributes, true)
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/lb/load_balancer_nodes_tests.rb b/tests/hp/models/lb/load_balancer_nodes_tests.rb
index 46f8f60..993bb9f 100644
--- a/tests/hp/models/lb/load_balancer_nodes_tests.rb
+++ b/tests/hp/models/lb/load_balancer_nodes_tests.rb
@@ -24,4 +24,4 @@ Shindo.tests('HP::LB | load balancer nodes collection', ['hp', 'lb', 'node']) do
@lb.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/lb/load_balancer_tests.rb b/tests/hp/models/lb/load_balancer_tests.rb
index b24161b..74bf4c2 100644
--- a/tests/hp/models/lb/load_balancer_tests.rb
+++ b/tests/hp/models/lb/load_balancer_tests.rb
@@ -3,4 +3,4 @@ Shindo.tests('HP::LB | load balancer model', ['hp', 'lb', 'load_balancer']) do
attributes = {:name => 'fog-lb', :nodes => [{'address' => '15.185.1.1', 'port' => '80'}]}
model_tests(HP[:lb].load_balancers, attributes, true)
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/lb/load_balancer_virtual_ips_tests.rb b/tests/hp/models/lb/load_balancer_virtual_ips_tests.rb
index f1d0d58..e9472e1 100644
--- a/tests/hp/models/lb/load_balancer_virtual_ips_tests.rb
+++ b/tests/hp/models/lb/load_balancer_virtual_ips_tests.rb
@@ -19,4 +19,4 @@ Shindo.tests('HP::LB | load balancer virtual ips collection', ['hp', 'lb', 'virt
@lb.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/lb/load_balancers_tests.rb b/tests/hp/models/lb/load_balancers_tests.rb
index ee53622..4d231ef 100644
--- a/tests/hp/models/lb/load_balancers_tests.rb
+++ b/tests/hp/models/lb/load_balancers_tests.rb
@@ -19,4 +19,4 @@ Shindo.tests('HP::LB | load balancer collection', ['hp', 'lb', 'load_balancer'])
@lb.destroy
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/lb/protocols_tests.rb b/tests/hp/models/lb/protocols_tests.rb
index 13035c8..55342ca 100644
--- a/tests/hp/models/lb/protocols_tests.rb
+++ b/tests/hp/models/lb/protocols_tests.rb
@@ -12,4 +12,4 @@ Shindo.tests('HP::LB | protocol collection', ['hp', 'lb', 'protocol']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/network/floating_ips_tests.rb b/tests/hp/models/network/floating_ips_tests.rb
index 94cb8c3..5fc986e 100644
--- a/tests/hp/models/network/floating_ips_tests.rb
+++ b/tests/hp/models/network/floating_ips_tests.rb
@@ -5,4 +5,4 @@ Shindo.tests('HP::Network | networking floating ips collection', ['hp', 'network
attributes = {:floating_network_id => @ext_network.id}
collection_tests(HP[:network].floating_ips, attributes, true)
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/network/networks_tests.rb b/tests/hp/models/network/networks_tests.rb
index a5dc755..fd95e37 100644
--- a/tests/hp/models/network/networks_tests.rb
+++ b/tests/hp/models/network/networks_tests.rb
@@ -12,4 +12,4 @@ Shindo.tests('HP::Network | networking networks collection', ['hp', 'networking'
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/network/ports_tests.rb b/tests/hp/models/network/ports_tests.rb
index b504aeb..9e2164f 100644
--- a/tests/hp/models/network/ports_tests.rb
+++ b/tests/hp/models/network/ports_tests.rb
@@ -18,4 +18,4 @@ Shindo.tests('HP::Network | networking ports collection', ['hp', 'networking', '
end
@network.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/network/routers_tests.rb b/tests/hp/models/network/routers_tests.rb
index a06a230..dcd1a00 100644
--- a/tests/hp/models/network/routers_tests.rb
+++ b/tests/hp/models/network/routers_tests.rb
@@ -16,4 +16,4 @@ Shindo.tests('HP::Network | networking routers collection', ['hp', 'networking',
@router.destroy
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/network/security_group_rules_tests.rb b/tests/hp/models/network/security_group_rules_tests.rb
index 96ec337..c08baee 100644
--- a/tests/hp/models/network/security_group_rules_tests.rb
+++ b/tests/hp/models/network/security_group_rules_tests.rb
@@ -20,4 +20,4 @@ Shindo.tests('HP::Network | networking security group rules collection', ['hp',
end
@secgroup.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/network/security_groups_tests.rb b/tests/hp/models/network/security_groups_tests.rb
index b3ddc92..33b5cad 100644
--- a/tests/hp/models/network/security_groups_tests.rb
+++ b/tests/hp/models/network/security_groups_tests.rb
@@ -17,4 +17,4 @@ Shindo.tests('HP::Network | networking security groups collection', ['hp', 'netw
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/network/subnets_tests.rb b/tests/hp/models/network/subnets_tests.rb
index b323cfd..ecac30f 100644
--- a/tests/hp/models/network/subnets_tests.rb
+++ b/tests/hp/models/network/subnets_tests.rb
@@ -19,4 +19,4 @@ Shindo.tests('HP::Network | networking subnets collection', ['hp', 'networking',
end
@network.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/storage/directories_tests.rb b/tests/hp/models/storage/directories_tests.rb
index fc87416..ea9a947 100644
--- a/tests/hp/models/storage/directories_tests.rb
+++ b/tests/hp/models/storage/directories_tests.rb
@@ -20,4 +20,4 @@ Shindo.tests("Fog::Storage[:hp] | directories", ['hp', 'storage']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/storage/directory_tests.rb b/tests/hp/models/storage/directory_tests.rb
index fcf20b5..cf7648f 100644
--- a/tests/hp/models/storage/directory_tests.rb
+++ b/tests/hp/models/storage/directory_tests.rb
@@ -124,7 +124,6 @@ Shindo.tests("Fog::Storage[:hp] | directory", ['hp', 'storage']) do
@instance.revoke('invalid-acl')
end
-
end
end
diff --git a/tests/hp/models/storage/file_tests.rb b/tests/hp/models/storage/file_tests.rb
index 6c2b8f1..1f69982 100644
--- a/tests/hp/models/storage/file_tests.rb
+++ b/tests/hp/models/storage/file_tests.rb
@@ -41,4 +41,4 @@ Shindo.tests("Fog::Storage[:hp] | directory", ['hp', 'storage']) do
@directory.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/hp/models/storage/files_tests.rb b/tests/hp/models/storage/files_tests.rb
index a211dad..4665b20 100644
--- a/tests/hp/models/storage/files_tests.rb
+++ b/tests/hp/models/storage/files_tests.rb
@@ -35,4 +35,4 @@ Shindo.tests("Fog::Storage[:hp] | files", ['hp', 'storage']) do
@file.destroy
@directory.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/compute/metadata_tests.rb b/tests/hp/requests/compute/metadata_tests.rb
index 688a6d1..1094cdd 100644
--- a/tests/hp/requests/compute/metadata_tests.rb
+++ b/tests/hp/requests/compute/metadata_tests.rb
@@ -67,4 +67,4 @@ Shindo.tests("Fog::Compute[:hp] | metadata requests", ['hp']) do
@server.destroy
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/compute/security_group_tests.rb b/tests/hp/requests/compute/security_group_tests.rb
index 0ca237d..d93939d 100644
--- a/tests/hp/requests/compute/security_group_tests.rb
+++ b/tests/hp/requests/compute/security_group_tests.rb
@@ -34,7 +34,6 @@ Shindo.tests("Fog::Compute[:hp] | security group requests", ['hp']) do
Fog::Compute[:hp].list_security_groups.body
end
-
tests("#delete_security_group('#{@sec_group_id}')").succeeds do
Fog::Compute[:hp].delete_security_group(@sec_group_id).body
end
diff --git a/tests/hp/requests/compute/server_volume_tests.rb b/tests/hp/requests/compute/server_volume_tests.rb
index 81ba1fd..51b07a7 100644
--- a/tests/hp/requests/compute/server_volume_tests.rb
+++ b/tests/hp/requests/compute/server_volume_tests.rb
@@ -43,7 +43,6 @@ Shindo.tests("Fog::Compute[:hp] | volume requests", ['hp', 'compute', 'volumes']
end
-
tests('failure') do
tests("#list_server_volumes(0)").raises(Fog::Compute::HP::NotFound) do
diff --git a/tests/hp/requests/compute_v2/availability_zone_tests.rb b/tests/hp/requests/compute_v2/availability_zone_tests.rb
index 18f2e13..d3438e1 100644
--- a/tests/hp/requests/compute_v2/availability_zone_tests.rb
+++ b/tests/hp/requests/compute_v2/availability_zone_tests.rb
@@ -16,4 +16,4 @@ Shindo.tests("Fog::Compute::HPV2 | availability_zone requests", ['hp', 'v2', 'co
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/compute_v2/metadata_tests.rb b/tests/hp/requests/compute_v2/metadata_tests.rb
index f147593..fda13f9 100644
--- a/tests/hp/requests/compute_v2/metadata_tests.rb
+++ b/tests/hp/requests/compute_v2/metadata_tests.rb
@@ -98,4 +98,4 @@ Shindo.tests("Fog::Compute::HPV2 | metadata requests", ['hp', 'v2', 'compute'])
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/compute_v2/server_security_group_tests.rb b/tests/hp/requests/compute_v2/server_security_group_tests.rb
index 2c0f061..767dfd0 100644
--- a/tests/hp/requests/compute_v2/server_security_group_tests.rb
+++ b/tests/hp/requests/compute_v2/server_security_group_tests.rb
@@ -39,5 +39,4 @@ Shindo.tests("Fog::Compute::HPV2 | server security group requests", ['hp', 'v2',
end
-
end
diff --git a/tests/hp/requests/compute_v2/server_volume_tests.rb b/tests/hp/requests/compute_v2/server_volume_tests.rb
index 3abe360..d3a8460 100644
--- a/tests/hp/requests/compute_v2/server_volume_tests.rb
+++ b/tests/hp/requests/compute_v2/server_volume_tests.rb
@@ -48,7 +48,6 @@ Shindo.tests("Fog::Compute::HPV2 | volume requests", ['hp', 'v2', 'compute', 'vo
end
-
tests('failure') do
tests('#list_server_volumes(0)').raises(Fog::Compute::HPV2::NotFound) do
diff --git a/tests/hp/requests/dns/domain_tests.rb b/tests/hp/requests/dns/domain_tests.rb
index b33ef75..9cd06c3 100644
--- a/tests/hp/requests/dns/domain_tests.rb
+++ b/tests/hp/requests/dns/domain_tests.rb
@@ -69,4 +69,4 @@ Shindo.tests("HP::DNS | domain requests", ['hp', 'dns', 'domain']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/dns/records_tests.rb b/tests/hp/requests/dns/records_tests.rb
index d4d9cd8..6c0a500 100644
--- a/tests/hp/requests/dns/records_tests.rb
+++ b/tests/hp/requests/dns/records_tests.rb
@@ -61,5 +61,4 @@ Shindo.tests("HP::DNS | record requests", ['hp', 'dns', 'record']) do
end
-
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/lb/algorithms_tests.rb b/tests/hp/requests/lb/algorithms_tests.rb
index 3148218..b0b2c69 100644
--- a/tests/hp/requests/lb/algorithms_tests.rb
+++ b/tests/hp/requests/lb/algorithms_tests.rb
@@ -11,5 +11,4 @@ Shindo.tests("HP::LB | algorithms", ['hp', 'lb', 'algorithms']) do
end
-
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/lb/limits_tests.rb b/tests/hp/requests/lb/limits_tests.rb
index 6262beb..97f0fb5 100644
--- a/tests/hp/requests/lb/limits_tests.rb
+++ b/tests/hp/requests/lb/limits_tests.rb
@@ -6,7 +6,6 @@ Shindo.tests("HP::LB | limits requests", ['hp', 'lb', 'limits']) do
'maxVIPsPerLoadBalancer' => Integer,
}
-
tests('success') do
tests('#list_limits').formats({'limits' => [{'values' => @limits_format }]}) do
@@ -14,5 +13,4 @@ Shindo.tests("HP::LB | limits requests", ['hp', 'lb', 'limits']) do
end
end
-
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/lb/load_balancer_nodes_tests.rb b/tests/hp/requests/lb/load_balancer_nodes_tests.rb
index b7efd47..193774a 100644
--- a/tests/hp/requests/lb/load_balancer_nodes_tests.rb
+++ b/tests/hp/requests/lb/load_balancer_nodes_tests.rb
@@ -43,5 +43,4 @@ Shindo.tests('HP::LB | load balancer nodes', ['hp', 'lb', 'nodes']) do
end
end
-
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/lb/load_balancer_tests.rb b/tests/hp/requests/lb/load_balancer_tests.rb
index 8e1aec9..19be317 100644
--- a/tests/hp/requests/lb/load_balancer_tests.rb
+++ b/tests/hp/requests/lb/load_balancer_tests.rb
@@ -53,4 +53,4 @@ Shindo.tests("HP::LB | load balancers requests", ['hp', 'lb', 'load_balancer'])
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/lb/protocols_tests.rb b/tests/hp/requests/lb/protocols_tests.rb
index 2df7a19..9b92240 100644
--- a/tests/hp/requests/lb/protocols_tests.rb
+++ b/tests/hp/requests/lb/protocols_tests.rb
@@ -11,5 +11,4 @@ Shindo.tests("HP::LB | protocols requests", ['hp', 'lb', 'protocols']) do
end
end
-
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/lb/versions_tests.rb b/tests/hp/requests/lb/versions_tests.rb
index f1054a6..fa2eab8 100644
--- a/tests/hp/requests/lb/versions_tests.rb
+++ b/tests/hp/requests/lb/versions_tests.rb
@@ -13,5 +13,4 @@ Shindo.tests("HP::LB | versions requests", ['hp', 'lb', 'versions']) do
end
end
-
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/lb/virtual_ips_tests.rb b/tests/hp/requests/lb/virtual_ips_tests.rb
index ade2d5d..3011b40 100644
--- a/tests/hp/requests/lb/virtual_ips_tests.rb
+++ b/tests/hp/requests/lb/virtual_ips_tests.rb
@@ -31,4 +31,4 @@ Shindo.tests("HP::LB | virtual ips requests", ['hp', 'lb', 'virtual_ips']) do
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/network/floating_ip_tests.rb b/tests/hp/requests/network/floating_ip_tests.rb
index 20090e5..6ef9f63 100644
--- a/tests/hp/requests/network/floating_ip_tests.rb
+++ b/tests/hp/requests/network/floating_ip_tests.rb
@@ -67,4 +67,4 @@ Shindo.tests('HP::Network | networking floating ip requests', ['hp', 'networking
# cleanup
HP[:network].delete_port(@port_id)
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/network/network_tests.rb b/tests/hp/requests/network/network_tests.rb
index bf8db6e..7b8ac7f 100644
--- a/tests/hp/requests/network/network_tests.rb
+++ b/tests/hp/requests/network/network_tests.rb
@@ -54,4 +54,4 @@ Shindo.tests('HP::Network | networking network requests', ['hp', 'networking',
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/network/port_tests.rb b/tests/hp/requests/network/port_tests.rb
index 57ac1d4..6d49918 100644
--- a/tests/hp/requests/network/port_tests.rb
+++ b/tests/hp/requests/network/port_tests.rb
@@ -68,4 +68,4 @@ Shindo.tests('HP::Network | networking port requests', ['hp', 'networking', 'por
# cleanup
HP[:network].delete_network(@network_id)
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/network/router_tests.rb b/tests/hp/requests/network/router_tests.rb
index 551bb44..f0e3c0f 100644
--- a/tests/hp/requests/network/router_tests.rb
+++ b/tests/hp/requests/network/router_tests.rb
@@ -105,4 +105,4 @@ Shindo.tests('HP::Network | networking router requests', ['hp', 'networking', 'r
#HP[:network].delete_port(@port_id)
HP[:network].delete_network(@network_id)
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/network/subnet_tests.rb b/tests/hp/requests/network/subnet_tests.rb
index f6c586a..f03cdb4 100644
--- a/tests/hp/requests/network/subnet_tests.rb
+++ b/tests/hp/requests/network/subnet_tests.rb
@@ -68,4 +68,4 @@ Shindo.tests('HP::Network | networking subnet requests', ['hp', 'networking', 's
# cleanup
HP[:network].delete_network(@network_id)
-end
\ No newline at end of file
+end
diff --git a/tests/hp/requests/storage/object_tests.rb b/tests/hp/requests/storage/object_tests.rb
index 389854c..70c3f4e 100644
--- a/tests/hp/requests/storage/object_tests.rb
+++ b/tests/hp/requests/storage/object_tests.rb
@@ -56,7 +56,7 @@ Shindo.tests("Fog::Storage[:hp] | object requests", ['hp', 'storage']) do
Fog::Storage[:hp].delete_object(@dir_name, 'fog_object')
Fog::Storage[:hp].delete_object(@dir_name, 'fog_delete_object')
end
-
+
tests("#get_object_http_url('#{@directory.identity}', 'fog_object', expiration timestamp)").returns(true) do
object_url = Fog::Storage[:hp].get_object_http_url(@dir_name, 'fog_object', (Time.now + 60))
object_url.include? "fog_object"
@@ -115,7 +115,7 @@ Shindo.tests("Fog::Storage[:hp] | object requests", ['hp', 'storage']) do
end
end
-
+
@directory.destroy
end
diff --git a/tests/hp/storage_tests.rb b/tests/hp/storage_tests.rb
index ec8c8b0..48c0536 100644
--- a/tests/hp/storage_tests.rb
+++ b/tests/hp/storage_tests.rb
@@ -1,25 +1,28 @@
-Shindo.tests('Fog::Storage::HP', ['hp', 'storage']) do
- credentials = {
- :auth_token => 'auth_token',
- :endpoint_url => 'http://127.0.0.1/path/',
- :cdn_endpoint_url => 'http://127.0.0.1/cdnpath/',
- :service_catalog => {
- :"Object Storage" => {
- :zone => 'http://127.0.0.1/path/'},
- :"CDN" => {
- :zone => 'http://127.0.0.1/cdnpath/'}},
- :expires => (DateTime.now + 1).to_s
- }
- options = {
- :hp_access_key => 'key',
- :hp_secret_key => 'secret',
- :hp_tenant_id => 'tenant',
- :hp_avl_zone => 'zone',
- :hp_auth_uri => 'https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/tokens',
- :credentials => credentials
- }
- tests('Test cached Storage credentials').returns(credentials) do
- conn = Fog::Storage::HP::Real.new(options)
- conn.credentials
+unless ENV["FOG_MOCK"] == "true"
+ Shindo.tests('Fog::Storage::HP', ['hp', 'storage']) do
+ credentials = {
+ :auth_token => 'auth_token',
+ :endpoint_url => 'http://127.0.0.1/path/',
+ :cdn_endpoint_url => 'http://127.0.0.1/cdnpath/',
+ :service_catalog => {
+ :"Object Storage" => {
+ :zone => 'http://127.0.0.1/path/'},
+ :"CDN" => {
+ :zone => 'http://127.0.0.1/cdnpath/'}},
+ :expires => (DateTime.now + 1).to_s
+ }
+ options = {
+ :hp_access_key => 'key',
+ :hp_secret_key => 'secret',
+ :hp_tenant_id => 'tenant',
+ :hp_avl_zone => 'zone',
+ :hp_auth_uri => 'https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/tokens',
+ :credentials => credentials
+ }
+ tests('Test cached Storage credentials').returns(credentials) do
+
+ conn = Fog::Storage::HP::Real.new(options)
+ conn.credentials
+ end
end
end
diff --git a/tests/hp/user_agent_tests.rb b/tests/hp/user_agent_tests.rb
index 2468d99..0807cdb 100644
--- a/tests/hp/user_agent_tests.rb
+++ b/tests/hp/user_agent_tests.rb
@@ -10,4 +10,4 @@ Shindo.tests('Fog::Compute[:hp] | user agent', ['hp', 'user_agent']) do
conn = Fog::Compute::HP.new(:user_agent => "TesterClient/1.0.0")
conn.instance_variable_get(:@connection_options)[:headers]['User-Agent']
end
-end
\ No newline at end of file
+end
diff --git a/tests/internet_archive/models/storage/directory_tests.rb b/tests/internet_archive/models/storage/directory_tests.rb
index 2faaeaf..d4b6dff 100644
--- a/tests/internet_archive/models/storage/directory_tests.rb
+++ b/tests/internet_archive/models/storage/directory_tests.rb
@@ -39,5 +39,4 @@ Shindo.tests("Storage[:internet_archive] | directory", ["internetarchive"]) do
end
end
-
end
diff --git a/tests/internet_archive/models/storage/url_tests.rb b/tests/internet_archive/models/storage/url_tests.rb
index 798c5e2..e5df5d0 100644
--- a/tests/internet_archive/models/storage/url_tests.rb
+++ b/tests/internet_archive/models/storage/url_tests.rb
@@ -10,7 +10,7 @@ Shindo.tests('InternetArchive | url', ["internetarchive"]) do
:ia_secret_access_key => 'abc',
:region => 'us-east-1'
)
-
+
@file = @storage.directories.new(:key => 'fognonbucket').files.new(:key => 'test.txt')
if Fog.mock?
diff --git a/tests/internet_archive/requests/storage/bucket_tests.rb b/tests/internet_archive/requests/storage/bucket_tests.rb
index a7a3621..a0e9db7 100644
--- a/tests/internet_archive/requests/storage/bucket_tests.rb
+++ b/tests/internet_archive/requests/storage/bucket_tests.rb
@@ -23,14 +23,14 @@ Shindo.tests('Fog::Storage[:internetarchive] | bucket requests', ["internetarchi
}
@bucket_lifecycle_format = {
'Rules' => [{
- 'ID' => String,
+ 'ID' => String,
'Prefix' => Fog::Nullable::String,
- 'Enabled' => Fog::Boolean,
+ 'Enabled' => Fog::Boolean,
'Expiration' => Fog::Nullable::Hash,
'Transition' => Fog::Nullable::Hash
}]
}
-
+
@service_format = {
'Buckets' => [{
'CreationDate' => Time,
diff --git a/tests/internet_archive/signaturev4_tests.rb b/tests/internet_archive/signaturev4_tests.rb
index 9532a49..dc1eaec 100644
--- a/tests/internet_archive/signaturev4_tests.rb
+++ b/tests/internet_archive/signaturev4_tests.rb
@@ -18,7 +18,7 @@ Shindo.tests('InternetArchive | signaturev4', ['internetarchive']) do
'AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20110909/us-east-1/host/aws4_request, SignedHeaders=date;host, Signature=0dc122f3b28b831ab48ba65cb47300de53fbe91b577fe113edac383730254a3b'
end
end
-
+
tests('get-vanilla-query-order-key') do
returns(@signer.sign({:query => {'a' => 'foo', 'b' => 'foo'}, :headers => {'Host' => 'host.foo.com', 'Date' => 'Mon, 09 Sep 2011 23:36:00 GMT'}, :method => :get, :path => '/'}, Fog::Time.now)) do
'AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20110909/us-east-1/host/aws4_request, SignedHeaders=date;host, Signature=0dc122f3b28b831ab48ba65cb47300de53fbe91b577fe113edac383730254a3b'
diff --git a/tests/joyent/requests/compute/machines_tests.rb b/tests/joyent/requests/compute/machines_tests.rb
index 3d2325c..3364411 100644
--- a/tests/joyent/requests/compute/machines_tests.rb
+++ b/tests/joyent/requests/compute/machines_tests.rb
@@ -34,7 +34,6 @@ Shindo.tests("Fog::Compute[:joyent] | machine requests", ["joyent"]) do
@provider = Fog::Compute[:joyent]
-
#
# https://us-west-1.api.joyentcloud.com/docs#ListMachines
#
diff --git a/tests/libvirt/models/compute/interface_tests.rb b/tests/libvirt/models/compute/interface_tests.rb
index 524b0cf..7de6917 100644
--- a/tests/libvirt/models/compute/interface_tests.rb
+++ b/tests/libvirt/models/compute/interface_tests.rb
@@ -17,7 +17,7 @@ Shindo.tests('Fog::Compute[:libvirt] | interface model', ['libvirt']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/libvirt/models/compute/network_tests.rb b/tests/libvirt/models/compute/network_tests.rb
index 0990453..155a598 100644
--- a/tests/libvirt/models/compute/network_tests.rb
+++ b/tests/libvirt/models/compute/network_tests.rb
@@ -17,7 +17,7 @@ Shindo.tests('Fog::Compute[:libvirt] | network model', ['libvirt']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/libvirt/models/compute/nic_tests.rb b/tests/libvirt/models/compute/nic_tests.rb
index 6b4ff89..290bec2 100644
--- a/tests/libvirt/models/compute/nic_tests.rb
+++ b/tests/libvirt/models/compute/nic_tests.rb
@@ -21,7 +21,7 @@ Shindo.tests('Fog::Compute[:libvirt] | nic model', ['libvirt']) do
tests("The attributes hash should have key") do
attributes.delete(:bridge)
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/libvirt/models/compute/pool_tests.rb b/tests/libvirt/models/compute/pool_tests.rb
index 0cb4cd8..03946ab 100644
--- a/tests/libvirt/models/compute/pool_tests.rb
+++ b/tests/libvirt/models/compute/pool_tests.rb
@@ -17,7 +17,7 @@ Shindo.tests('Fog::Compute[:libvirt] | interface model', ['libvirt']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/libvirt/models/compute/server_tests.rb b/tests/libvirt/models/compute/server_tests.rb
index ea1b7f4..8d731c3 100644
--- a/tests/libvirt/models/compute/server_tests.rb
+++ b/tests/libvirt/models/compute/server_tests.rb
@@ -48,7 +48,7 @@ Shindo.tests('Fog::Compute[:libvirt] | server model', ['libvirt']) do
tests("The attributes hash should have key") do
attributes.delete(:volumes)
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/libvirt/models/compute/volume_tests.rb b/tests/libvirt/models/compute/volume_tests.rb
index fadd36b..735a5f3 100644
--- a/tests/libvirt/models/compute/volume_tests.rb
+++ b/tests/libvirt/models/compute/volume_tests.rb
@@ -20,7 +20,7 @@ Shindo.tests('Fog::Compute[:libvirt] | volume model', ['libvirt']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/linode/requests/compute/datacenter_tests.rb b/tests/linode/requests/compute/datacenter_tests.rb
index 3fb7971..3e70e57 100644
--- a/tests/linode/requests/compute/datacenter_tests.rb
+++ b/tests/linode/requests/compute/datacenter_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::Compute[:linode] | datacenter requests', ['linode']) do
@datacenters_format = Linode::Compute::Formats::BASIC.merge({
- 'DATA' => [{
+ 'DATA' => [{
'DATACENTERID' => Integer,
'LOCATION' => String
}]
diff --git a/tests/linode/requests/compute/distribution_tests.rb b/tests/linode/requests/compute/distribution_tests.rb
index 97c8bb4..682469b 100644
--- a/tests/linode/requests/compute/distribution_tests.rb
+++ b/tests/linode/requests/compute/distribution_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::Compute[:linode] | distribution requests', ['linode']) do
@distributions_format = Linode::Compute::Formats::BASIC.merge({
- 'DATA' => [{
+ 'DATA' => [{
'CREATE_DT' => String,
'DISTRIBUTIONID' => Integer,
'IS64BIT' => Integer,
diff --git a/tests/linode/requests/compute/helper.rb b/tests/linode/requests/compute/helper.rb
index 3219853..3a2804b 100644
--- a/tests/linode/requests/compute/helper.rb
+++ b/tests/linode/requests/compute/helper.rb
@@ -1,16 +1,10 @@
class Linode
-
module Compute
-
module Formats
-
BASIC = {
'ERRORARRAY' => [],
'ACTION' => String
}
-
end
-
end
-
end
diff --git a/tests/linode/requests/compute/kernel_tests.rb b/tests/linode/requests/compute/kernel_tests.rb
index fe5c041..42886a6 100644
--- a/tests/linode/requests/compute/kernel_tests.rb
+++ b/tests/linode/requests/compute/kernel_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::Compute[:linode] | kernel requests', ['linode']) do
@kernels_format = Linode::Compute::Formats::BASIC.merge({
- 'DATA' => [{
+ 'DATA' => [{
'LABEL' => String,
'ISXEN' => Integer,
'ISPVOPS' => Integer,
diff --git a/tests/linode/requests/compute/linode_tests.rb b/tests/linode/requests/compute/linode_tests.rb
index 5141714..c1c49bc 100644
--- a/tests/linode/requests/compute/linode_tests.rb
+++ b/tests/linode/requests/compute/linode_tests.rb
@@ -55,7 +55,7 @@ Shindo.tests('Fog::Compute[:linode] | linode requests', ['linode']) do
@disk_format = Linode::Compute::Formats::BASIC.merge({
'DATA' => { 'JobID' => Integer, 'DiskID' => Integer }
- })
+ })
tests('success') do
@@ -75,7 +75,7 @@ Shindo.tests('Fog::Compute[:linode] | linode requests', ['linode']) do
end
tests('#linode_list').formats(@linodes_format) do
- pending if Fog.mocking?
+ pending if Fog.mocking?
Fog::Compute[:linode].linode_list.body
end
@@ -94,7 +94,7 @@ Shindo.tests('Fog::Compute[:linode] | linode requests', ['linode']) do
data = Fog::Compute[:linode].linode_disk_create(@linode_id, 'test1', 'ext3', 1).body
@disk1_id = data['DATA']['DiskID']
data
- end
+ end
tests('#linode_disk_createfromdistribution').formats(@disk_format) do
pending if Fog.mocking?
@@ -110,7 +110,7 @@ Shindo.tests('Fog::Compute[:linode] | linode requests', ['linode']) do
# tests("#linode_reboot(#{@linode_id})").formats(@reboot_format) do
# Fog::Compute[:linode].linode_reboot(@linode_id).body
- # end
+ # end
tests('#linode_disk_delete').formats(@disk_format) do
pending if Fog.mocking?
diff --git a/tests/linode/requests/compute/linodeplans_tests.rb b/tests/linode/requests/compute/linodeplans_tests.rb
index f656b36..f6ec56f 100644
--- a/tests/linode/requests/compute/linodeplans_tests.rb
+++ b/tests/linode/requests/compute/linodeplans_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::Compute[:linode] | linodeplans requests', ['linode']) do
@linodeplans_format = Linode::Compute::Formats::BASIC.merge({
- 'DATA' => [{
+ 'DATA' => [{
'AVAIL' => {
'2' => Integer,
'3' => Integer,
@@ -15,7 +15,8 @@ Shindo.tests('Fog::Compute[:linode] | linodeplans requests', ['linode']) do
'PRICE' => Float,
'RAM' => Integer,
'LABEL' => String,
- 'XFER' => Integer
+ 'XFER' => Integer,
+ 'CORES' => Integer
}]
})
diff --git a/tests/linode/requests/compute/stackscripts_tests.rb b/tests/linode/requests/compute/stackscripts_tests.rb
index a877afa..ed74320 100644
--- a/tests/linode/requests/compute/stackscripts_tests.rb
+++ b/tests/linode/requests/compute/stackscripts_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::Compute[:linode] | stack_script requests', ['linode']) do
@stack_scripts_format = Linode::Compute::Formats::BASIC.merge({
- 'DATA' => [{
+ 'DATA' => [{
'STACKSCRIPTID' => Integer,
'SCRIPT' => String,
'DESCRIPTION' => String,
@@ -16,15 +16,15 @@ Shindo.tests('Fog::Compute[:linode] | stack_script requests', ['linode']) do
'ISPUBLIC' => Integer,
'USERID' => Integer
}]
- })
+ })
tests('success') do
tests('#avail_stackscripts').formats(@stack_scripts_format) do
pending if Fog.mocking?
Fog::Compute[:linode].avail_stackscripts.body
- end
-
+ end
+
tests('#stackscript_list').formats(@stack_scripts_format) do
pending # TODO: REV_NOTE can be either string or float?
pending if Fog.mocking?
diff --git a/tests/linode/requests/dns/dns_tests.rb b/tests/linode/requests/dns/dns_tests.rb
index a0f6e1e..482ef7c 100644
--- a/tests/linode/requests/dns/dns_tests.rb
+++ b/tests/linode/requests/dns/dns_tests.rb
@@ -15,7 +15,7 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
zones = response.body['DATA']
@org_zone_count = zones.count
end
-
+
response.status == 200
end
@@ -30,7 +30,7 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
@master_zone_id = response.body['DATA']['DomainID']
@new_zones << @master_zone_id
end
-
+
response.status == 200
end
@@ -39,14 +39,14 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
type = 'slave'
@domain= generate_unique_domain
- options = { :SOA_email => "netops@#{@domain}", :refresh_sec => 14400, :retry_sec => 3600,
+ options = { :SOA_email => "netops@#{@domain}", :refresh_sec => 14400, :retry_sec => 3600,
:expire_sec => 604800, :ttl_sec => 28800, :status => 0, :master_ips => '1.2.3.4;2.3.4.5' }
response = Fog::DNS[:linode].domain_create( @domain, type, options)
if response.status == 200
@slave_zone_id = response.body['DATA']['DomainID']
@new_zones << @slave_zone_id
end
-
+
response.status == 200
end
@@ -54,7 +54,7 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
pending if Fog.mocking?
result= false
-
+
response = Fog::DNS[:linode].domain_list( @slave_zone_id)
if response.status == 200
zones = response.body['DATA']
@@ -63,13 +63,13 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
zone= zones[0]
if (zone['SOA_EMAIL'] == "netops@#{@domain}") and (zone['REFRESH_SEC'] == 14400) and
(zone['RETRY_SEC'] == 3600) and (zone['EXPIRE_SEC'] == 604800) and (zone['TTL_SEC'] == 28800) and
- (zone['STATUS'] == 0) and (zone['DOMAIN'] == @domain) and (zone['TYPE'] == 'slave')
+ (zone['STATUS'] == 0) and (zone['DOMAIN'] == @domain) and (zone['TYPE'] == 'slave')
(zone['MASTER_IPS'] == '1.2.3.4;2.3.4.5')
result= true
- end
+ end
end
end
-
+
result
end
@@ -77,13 +77,13 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
pending if Fog.mocking?
result= false
-
+
options = { :ttl_sec => 14400 }
response = Fog::DNS[:linode].domain_update( @slave_zone_id, options)
if response.status == 200
result= true
end
-
+
result
end
@@ -91,7 +91,7 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
pending if Fog.mocking?
result= false
-
+
response = Fog::DNS[:linode].domain_list( @slave_zone_id)
if response.status == 200
zones = response.body['DATA']
@@ -100,10 +100,10 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
zone= zones[0]
if (zone['TTL_SEC'] == 14400)
result= true
- end
+ end
end
end
-
+
result
end
@@ -117,7 +117,7 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
record_id = response.body['DATA']['ResourceID']
@new_records << record_id
end
-
+
response.status == 200
end
@@ -131,7 +131,7 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
record_id = response.body['DATA']['ResourceID']
@new_records << record_id
end
-
+
response.status == 200
end
@@ -144,7 +144,7 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
record_id = response.body['DATA']['ResourceID']
@new_records << record_id
end
-
+
response.status == 200
end
@@ -157,7 +157,7 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
@record_id = response.body['DATA']['ResourceID']
@new_records << @record_id
end
-
+
response.status == 200
end
@@ -165,7 +165,7 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
pending if Fog.mocking?
result= false
-
+
domain= 'mail.' + @domain
response = Fog::DNS[:linode].domain_resource_list(@master_zone_id, @record_id)
if response.status == 200
@@ -178,13 +178,13 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
result= true
end
end
-
+
end
-
+
result
end
- test("update record #{@record_id} - change target") do
+ test("update record #{@record_id} - change target") do
pending if Fog.mocking?
options = { :target => 'mail2.' + @domain }
@@ -197,7 +197,7 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
pending if Fog.mocking?
result= false
-
+
domain= 'mail2.' + @domain
response = Fog::DNS[:linode].domain_resource_list(@master_zone_id, @record_id)
if response.status == 200
@@ -209,13 +209,13 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
result= true
end
end
-
+
end
-
+
result
end
-
+
test("delete #{@new_records.count} records created") do
pending if Fog.mocking?
@@ -243,8 +243,8 @@ Shindo.tests('Fog::DNS[:linode] | DNS requests', ['linode', 'dns']) do
end
end
-
+
tests( 'failure') do
end
-
+
end
diff --git a/tests/ninefold/models/storage/file_update_tests.rb b/tests/ninefold/models/storage/file_update_tests.rb
index 1a4fae8..b6f06b7 100644
--- a/tests/ninefold/models/storage/file_update_tests.rb
+++ b/tests/ninefold/models/storage/file_update_tests.rb
@@ -16,4 +16,4 @@ Shindo.tests("Storage[:ninefold] | nested directories", ['ninefold']) do
@directory.destroy(:recursive => true)
end
-end
\ No newline at end of file
+end
diff --git a/tests/ninefold/models/storage/nested_directories_tests.rb b/tests/ninefold/models/storage/nested_directories_tests.rb
index ad0de9e..2f82888 100644
--- a/tests/ninefold/models/storage/nested_directories_tests.rb
+++ b/tests/ninefold/models/storage/nested_directories_tests.rb
@@ -20,4 +20,4 @@ Shindo.tests("Storage[:ninefold] | nested directories", ['ninefold']) do
ninefold.directories.get('sub').destroy(:recursive => true)
end
-end
\ No newline at end of file
+end
diff --git a/tests/ninefold/requests/compute/helper.rb b/tests/ninefold/requests/compute/helper.rb
index 7129955..38260df 100644
--- a/tests/ninefold/requests/compute/helper.rb
+++ b/tests/ninefold/requests/compute/helper.rb
@@ -22,7 +22,6 @@ class Ninefold
Fog::Compute[:ninefold].query_async_job_result(:jobid => job)
end
module_function :wait_for_job
-
end
module Formats
module Lists
diff --git a/tests/ninefold/requests/compute/nat_tests.rb b/tests/ninefold/requests/compute/nat_tests.rb
index 2cba28c..390e9c7 100644
--- a/tests/ninefold/requests/compute/nat_tests.rb
+++ b/tests/ninefold/requests/compute/nat_tests.rb
@@ -56,7 +56,6 @@ Shindo.tests('Fog::Compute[:ninefold] | nat requests', ['ninefold']) do
Ninefold::Compute::TestSupport.wait_for_job(job)['jobresult']
end
-
tests("#disable_static_nat()").formats(Ninefold::Compute::Formats::Nat::DISABLE_NAT_RESPONSE) do
pending if Fog.mocking?
job = Fog::Compute[:ninefold].disable_static_nat(:ipaddressid => @ipid)
diff --git a/tests/ninefold/requests/compute/virtual_machine_tests.rb b/tests/ninefold/requests/compute/virtual_machine_tests.rb
index 818ec15..0bc72c6 100644
--- a/tests/ninefold/requests/compute/virtual_machine_tests.rb
+++ b/tests/ninefold/requests/compute/virtual_machine_tests.rb
@@ -2,7 +2,6 @@ Shindo.tests('Fog::Compute[:ninefold] | server requests', ['ninefold']) do
tests('success') do
-
tests("#deploy_virtual_machine()").formats(Ninefold::Compute::Formats::VirtualMachines::VIRTUAL_MACHINE) do
pending if Fog.mocking?
networks = Fog::Compute[:ninefold].list_networks
diff --git a/tests/opennebula/compute_tests.rb b/tests/opennebula/compute_tests.rb
new file mode 100644
index 0000000..11ebbef
--- /dev/null
+++ b/tests/opennebula/compute_tests.rb
@@ -0,0 +1,16 @@
+Shindo.tests('Fog::Compute[:opennebula]', ['opennebula']) do
+
+ compute = Fog::Compute[:opennebula]
+
+ tests("Compute collections") do
+ %w{networks groups}.each do |collection|
+ test("it should respond to #{collection}") { compute.respond_to? collection }
+ end
+ end
+
+ tests("Compute requests") do
+ %w{list_networks}.each do |request|
+ test("it should respond to #{request}") { compute.respond_to? request }
+ end
+ end
+end
diff --git a/tests/opennebula/models/compute/group_tests.rb b/tests/opennebula/models/compute/group_tests.rb
new file mode 100644
index 0000000..221d93d
--- /dev/null
+++ b/tests/opennebula/models/compute/group_tests.rb
@@ -0,0 +1,27 @@
+Shindo.tests('Fog::Compute[:opennebula] | group model', ['opennebula']) do
+
+ groups = Fog::Compute[:opennebula].groups
+ group = groups.last
+
+ tests('The group model should') do
+ tests('have the action') do
+ test('reload') { group.respond_to? 'reload' }
+ end
+ tests('have attributes') do
+ model_attribute_hash = group.attributes
+ attributes =
+ tests("The group model should respond to") do
+ [:name, :id, :to_label].each do |attribute|
+ test("#{attribute}") { group.respond_to? attribute }
+ end
+ end
+ tests("The attributes hash should have key") do
+ [:name, :id].each do |attribute|
+ test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ end
+ end
+ end
+ test('be a kind of Fog::Compute::OpenNebula::Group') { group.kind_of? Fog::Compute::OpenNebula::Group }
+ end
+
+end
diff --git a/tests/opennebula/models/compute/groups_tests.rb b/tests/opennebula/models/compute/groups_tests.rb
new file mode 100644
index 0000000..da85448
--- /dev/null
+++ b/tests/opennebula/models/compute/groups_tests.rb
@@ -0,0 +1,16 @@
+Shindo.tests('Fog::Compute[:opennebula] | groups collection', ['opennebula']) do
+
+ groups = Fog::Compute[:opennebula].groups
+
+ tests('The groups collection') do
+ test('should be a kind of Fog::Compute::OpenNebula::Groups') { groups.kind_of? Fog::Compute::OpenNebula::Groups }
+ tests('should be able to reload itself').succeeds { groups.reload }
+ tests('should be able to get a model by id') do
+ tests('by instance id').succeeds { groups.get groups.first.id }
+ end
+ tests('should be able to get a model by name') do
+ tests('by instance id').succeeds { groups.get_by_name "fogtest" }
+ end
+ end
+
+end
diff --git a/tests/opennebula/models/compute/network_tests.rb b/tests/opennebula/models/compute/network_tests.rb
new file mode 100644
index 0000000..9e61512
--- /dev/null
+++ b/tests/opennebula/models/compute/network_tests.rb
@@ -0,0 +1,27 @@
+Shindo.tests('Fog::Compute[:opennebula] | network model', ['opennebula']) do
+
+ networks = Fog::Compute[:opennebula].networks
+ network = networks.last
+
+ tests('The network model should') do
+ tests('have the action') do
+ test('reload') { network.respond_to? 'reload' }
+ end
+ tests('have attributes') do
+ model_attribute_hash = network.attributes
+ attributes =
+ tests("The network model should respond to") do
+ [:name, :id, :vlan, :uid, :gid, :description].each do |attribute|
+ test("#{attribute}") { network.respond_to? attribute }
+ end
+ end
+ tests("The attributes hash should have key") do
+ [:name, :id, :uid, :gid].each do |attribute|
+ test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ end
+ end
+ end
+ test('be a kind of Fog::Compute::OpenNebula::Network') { network.kind_of? Fog::Compute::OpenNebula::Network }
+ end
+
+end
diff --git a/tests/opennebula/models/compute/networks_tests.rb b/tests/opennebula/models/compute/networks_tests.rb
new file mode 100644
index 0000000..56c88f0
--- /dev/null
+++ b/tests/opennebula/models/compute/networks_tests.rb
@@ -0,0 +1,13 @@
+Shindo.tests('Fog::Compute[:opennebula] | networks collection', ['opennebula']) do
+
+ networks = Fog::Compute[:opennebula].networks
+
+ tests('The networks collection') do
+ test('should be a kind of Fog::Compute::OpenNebula::Networks') { networks.kind_of? Fog::Compute::OpenNebula::Networks }
+ tests('should be able to reload itself').succeeds { networks.reload }
+ tests('should be able to get a model') do
+ tests('by instance id').succeeds { networks.get networks.first.id }
+ end
+ end
+
+end
diff --git a/tests/opennebula/requests/compute/vm_allocate_tests.rb b/tests/opennebula/requests/compute/vm_allocate_tests.rb
new file mode 100644
index 0000000..aecf6a2
--- /dev/null
+++ b/tests/opennebula/requests/compute/vm_allocate_tests.rb
@@ -0,0 +1,59 @@
+Shindo.tests("Fog::Compute[:opennebula] | vm_create and destroy request", 'opennebula') do
+
+ compute = Fog::Compute[:opennebula]
+ name_base = Time.now.to_i
+ f = compute.flavors.get_by_name("fogtest")
+
+ tests("Get 'fogtest' flavor/template") do
+ test("could not get template with name 'fogtest'! This is required for live tests!") {f.kind_of? Array}
+ raise ArgumentError, "Could not get a template with the name 'fogtest'" unless f
+ end
+
+ f = f.first
+ response = {}
+
+ tests("Allocate VM") do
+ response = compute.vm_allocate({:name => 'fog-'+name_base.to_s, :flavor => f})
+ test("response should be a kind of Hash") { response.kind_of? Hash}
+ test("id should be a one-id (Fixnum)") { response['id'].is_a? Fixnum}
+ end
+ tests("Destroy VM") do
+ compute.vm_destroy(response['id'])
+ vms = compute.list_vms({:id => response['id'], :mock_return => false})
+ test("get vm should be empty") { compute.list_vms({:id => response['id']}).empty?}
+ end
+
+ #tests("Create VM from template (clone)") do
+ # response = compute.create_vm(:name => 'fog-'+(name_base+ 1).to_s, :template_name => 'hwp_small', :cluster_name => 'Default')
+ # test("should be a kind of OVIRT::VM") { response.kind_of? OVIRT::VM}
+ #end
+
+ tests("Fail Creating VM - no flavor") do
+ begin
+ response = compute.vm_allocate({:name => 'fog-'+name_base.to_s, :flavor => nil})
+ test("should be a kind of Hash") { response.kind_of? Hash} #mock never raise exceptions
+ rescue => e
+ #should raise vm name already exist exception.
+ test("error should be a kind of ArgumentError") { e.kind_of? ArgumentError}
+ end
+ end
+ tests("Fail Creating VM - nil name") do
+ begin
+ response = compute.vm_allocate({:name => nil, :flavor => f})
+ test("should be a kind of Hash") { response.kind_of? Hash} #mock never raise exceptions
+ rescue => e
+ #should raise vm name already exist exception.
+ test("error should be a kind of ArgumentError") { e.kind_of? ArgumentError}
+ end
+ end
+ tests("Fail Creating VM - empty name") do
+ begin
+ response = compute.vm_allocate({:name => "", :flavor => f})
+ test("should be a kind of Hash") { response.kind_of? Hash} #mock never raise exceptions
+ rescue => e
+ #should raise vm name already exist exception.
+ test("error should be a kind of ArgumentError") { e.kind_of? ArgumentError}
+ end
+ end
+
+end
diff --git a/tests/openstack/authenticate_tests.rb b/tests/openstack/authenticate_tests.rb
index 7979fba..83a5d03 100644
--- a/tests/openstack/authenticate_tests.rb
+++ b/tests/openstack/authenticate_tests.rb
@@ -102,9 +102,29 @@ Shindo.tests('OpenStack | authenticate', ['openstack']) do
end
end
+ tests("v2 missing storage service") do
+ Excon.stub({ :method => 'POST', :path => "/v2.0/tokens" },
+ { :status => 200, :body => Fog::JSON.encode(body) })
+
+ raises(NoMethodError,
+ "undefined method `join' for \"object-store\":String") do
+ Fog::OpenStack.authenticate_v2(
+ :openstack_auth_uri => URI('http://example/v2.0/tokens'),
+ :openstack_tenant => 'admin',
+ :openstack_service_type => 'object-store')
+ end
+ raises(Fog::Errors::NotFound,
+ "Could not find service object-store. Have compute, image") do
+ Fog::OpenStack.authenticate_v2(
+ :openstack_auth_uri => URI('http://example/v2.0/tokens'),
+ :openstack_tenant => 'admin',
+ :openstack_service_type => %w[object-store])
+ end
+ end
+
tests("v2 auth with two compute services") do
body_clone = body.clone
- body_clone["access"]["serviceCatalog"] <<
+ body_clone["access"]["serviceCatalog"] <<
{
"endpoints" => [{
"adminURL" =>
@@ -161,4 +181,3 @@ Shindo.tests('OpenStack | authenticate', ['openstack']) do
Excon.defaults[:mock] = @old_mock_value
end
end
-
diff --git a/tests/openstack/models/compute/images_tests.rb b/tests/openstack/models/compute/images_tests.rb
index b2dd371..d36c9c1 100644
--- a/tests/openstack/models/compute/images_tests.rb
+++ b/tests/openstack/models/compute/images_tests.rb
@@ -11,4 +11,3 @@ Shindo.tests("Fog::Compute[:openstack] | images collection", ['openstack']) do
end
end
-
diff --git a/tests/openstack/models/compute/security_group_tests.rb b/tests/openstack/models/compute/security_group_tests.rb
index 2a10a97..de91cf6 100644
--- a/tests/openstack/models/compute/security_group_tests.rb
+++ b/tests/openstack/models/compute/security_group_tests.rb
@@ -17,7 +17,7 @@ Shindo.tests("Fog::Compute[:openstack] | security_group", ['openstack']) do
returns('my_group') { security_group.name }
returns('my group') { security_group.description }
returns([]) { security_group.security_group_rules }
- returns(true) { security_group.tenant_id != nil }
+ returns(true, "Tenant Id is not nil") { security_group.tenant_id != nil }
end
tests('#rules').succeeds do
@@ -30,9 +30,9 @@ Shindo.tests("Fog::Compute[:openstack] | security_group", ['openstack']) do
:to_port => 1234,
:ip_range => { "cidr" => "0.0.0.0/0" }
)
- returns(true) { security_group.security_group_rules.count == (rules_count + 1) }
- security_group_rule = security_group.security_group_rules.detect { |r| r.id == rule.id }
- returns(true) { security_group_rule.attributes == rule.attributes }
+ returns(true, "added security group rule") { security_group.security_group_rules.count == (rules_count + 1) }
+ security_group_rule = security_group.security_group_rules.find { |r| r.id == rule.id }
+ returns(true, "security group rule has rule attributes") { security_group_rule.attributes == rule.attributes }
end
tests("#destroy").succeeds do
@@ -44,7 +44,7 @@ Shindo.tests("Fog::Compute[:openstack] | security_group", ['openstack']) do
:ip_range => { "cidr" => "0.0.0.0/0" }
)
rule.destroy
- returns(true) { rule.reload == nil }
+ returns(true, "successfully destroyed rule") { rule.reload == nil }
end
end
ensure
diff --git a/tests/openstack/models/compute/server_tests.rb b/tests/openstack/models/compute/server_tests.rb
index 231e61d..50daf9c 100644
--- a/tests/openstack/models/compute/server_tests.rb
+++ b/tests/openstack/models/compute/server_tests.rb
@@ -63,11 +63,11 @@ Shindo.tests("Fog::Compute[:openstack] | server", ['openstack']) do
end
tests('#failed') do
-
+
fog = Fog::Compute[:openstack]
flavor = fog.flavors.first.id
- image = fog.images.first.id
+ image = fog.images.first.id
tests('successful server').returns(false) do
server = fog.servers.new( :name => 'test server',
@@ -218,4 +218,3 @@ Shindo.tests("Fog::Compute[:openstack] | server", ['openstack']) do
end
end
-
diff --git a/tests/openstack/models/identity/role_tests.rb b/tests/openstack/models/identity/role_tests.rb
index d9bd7b5..51a8287 100644
--- a/tests/openstack/models/identity/role_tests.rb
+++ b/tests/openstack/models/identity/role_tests.rb
@@ -24,4 +24,3 @@ Shindo.tests("Fog::Identity[:openstack] | role", ['openstack']) do
@user.destroy
@tenant.destroy
end
-
diff --git a/tests/openstack/models/image/images_tests.rb b/tests/openstack/models/image/images_tests.rb
index 2d893c8..18f6a7a 100644
--- a/tests/openstack/models/image/images_tests.rb
+++ b/tests/openstack/models/image/images_tests.rb
@@ -11,7 +11,7 @@ Shindo.tests("Fog::Image[:openstack] | images", ['openstack']) do
image = Fog::Image[:openstack].images.get(@instance['image']['id'])
image.id == @instance['image']['id']
end
-
+
tests('#destroy').succeeds do
Fog::Image[:openstack].images.destroy(@instance['image']['id'])
end
diff --git a/tests/openstack/models/network/floating_ip_tests.rb b/tests/openstack/models/network/floating_ip_tests.rb
index a94ed8d..5368ffa 100644
--- a/tests/openstack/models/network/floating_ip_tests.rb
+++ b/tests/openstack/models/network/floating_ip_tests.rb
@@ -5,14 +5,6 @@ Shindo.tests("Fog::Network[:openstack] | floating_ip", ['openstack']) do
tests('#create').succeeds do
@instance = Fog::Network[:openstack].floating_ips.create(:floating_network_id => 'f0000000-0000-0000-0000-000000000000')
-
-
-
-
-
-
-
-
!@instance.id.nil?
end
diff --git a/tests/openstack/models/network/floating_ips_tests.rb b/tests/openstack/models/network/floating_ips_tests.rb
index 7e78144..5095851 100644
--- a/tests/openstack/models/network/floating_ips_tests.rb
+++ b/tests/openstack/models/network/floating_ips_tests.rb
@@ -1,14 +1,6 @@
Shindo.tests("Fog::Network[:openstack] | floating_ips", ['openstack']) do
@floating_ip = Fog::Network[:openstack].floating_ips.create(:floating_network_id => 'f0000000-0000-0000-0000-000000000000')
-
-
-
-
-
-
-
-
@floating_ips = Fog::Network[:openstack].floating_ips
tests('success') do
diff --git a/tests/openstack/models/network/lb_health_monitor_tests.rb b/tests/openstack/models/network/lb_health_monitor_tests.rb
index 084a008..81409dc 100644
--- a/tests/openstack/models/network/lb_health_monitor_tests.rb
+++ b/tests/openstack/models/network/lb_health_monitor_tests.rb
@@ -49,4 +49,4 @@ Shindo.tests("Fog::Network[:openstack] | lb_health_monitor", ['openstack']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/models/network/lb_health_monitors_tests.rb b/tests/openstack/models/network/lb_health_monitors_tests.rb
index 3f20444..b5470e4 100644
--- a/tests/openstack/models/network/lb_health_monitors_tests.rb
+++ b/tests/openstack/models/network/lb_health_monitors_tests.rb
@@ -18,4 +18,4 @@ Shindo.tests("Fog::Network[:openstack] | lb_health_monitors", ['openstack']) do
end
@lb_health_monitor.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/models/network/lb_member_tests.rb b/tests/openstack/models/network/lb_member_tests.rb
index 8427c0c..0bcc1a5 100644
--- a/tests/openstack/models/network/lb_member_tests.rb
+++ b/tests/openstack/models/network/lb_member_tests.rb
@@ -25,4 +25,4 @@ Shindo.tests("Fog::Network[:openstack] | lb_member", ['openstack']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/models/network/lb_members_tests.rb b/tests/openstack/models/network/lb_members_tests.rb
index 3888fa9..53b2ef9 100644
--- a/tests/openstack/models/network/lb_members_tests.rb
+++ b/tests/openstack/models/network/lb_members_tests.rb
@@ -18,4 +18,4 @@ Shindo.tests("Fog::Network[:openstack] | lb_members", ['openstack']) do
end
@lb_member.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/models/network/lb_pool_tests.rb b/tests/openstack/models/network/lb_pool_tests.rb
index 6cfe93a..e97d2f4 100644
--- a/tests/openstack/models/network/lb_pool_tests.rb
+++ b/tests/openstack/models/network/lb_pool_tests.rb
@@ -50,4 +50,4 @@ Shindo.tests("Fog::Network[:openstack] | lb_pool", ['openstack']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/models/network/lb_pools_tests.rb b/tests/openstack/models/network/lb_pools_tests.rb
index db504b4..7a37fea 100644
--- a/tests/openstack/models/network/lb_pools_tests.rb
+++ b/tests/openstack/models/network/lb_pools_tests.rb
@@ -17,4 +17,4 @@ Shindo.tests("Fog::Network[:openstack] | lb_pools", ['openstack']) do
end
@lb_pool.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/models/network/lb_vip_tests.rb b/tests/openstack/models/network/lb_vip_tests.rb
index 390951a..d2adfb2 100644
--- a/tests/openstack/models/network/lb_vip_tests.rb
+++ b/tests/openstack/models/network/lb_vip_tests.rb
@@ -36,4 +36,4 @@ Shindo.tests("Fog::Network[:openstack] | lb_vip", ['openstack']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/models/network/lb_vips_tests.rb b/tests/openstack/models/network/lb_vips_tests.rb
index 51ee026..9c76912 100644
--- a/tests/openstack/models/network/lb_vips_tests.rb
+++ b/tests/openstack/models/network/lb_vips_tests.rb
@@ -18,4 +18,4 @@ Shindo.tests("Fog::Network[:openstack] | lb_vips", ['openstack']) do
end
@lb_vip.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/models/network/network_tests.rb b/tests/openstack/models/network/network_tests.rb
index 4dca50d..5091b04 100644
--- a/tests/openstack/models/network/network_tests.rb
+++ b/tests/openstack/models/network/network_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests("Fog::Network[:openstack] | network", ['openstack']) do
tests('success') do
-
+
tests('#create').succeeds do
@instance = Fog::Network[:openstack].networks.create(:name => 'net_name',
:shared => false,
@@ -9,7 +9,7 @@ Shindo.tests("Fog::Network[:openstack] | network", ['openstack']) do
:tenant_id => 'tenant_id')
!@instance.id.nil?
end
-
+
tests('#create+extensions').succeeds do
net = Fog::Network[:openstack].networks.create(
:name => 'net_name',
@@ -26,9 +26,9 @@ Shindo.tests("Fog::Network[:openstack] | network", ['openstack']) do
net.destroy
net.provider_network_type == 'gre'
end
-
+
tests('have attributes') do
- attributes = [
+ attributes = [
:name,
:subnets,
:shared,
diff --git a/tests/openstack/models/network/networks_tests.rb b/tests/openstack/models/network/networks_tests.rb
index 712b091..9ff67d0 100644
--- a/tests/openstack/models/network/networks_tests.rb
+++ b/tests/openstack/models/network/networks_tests.rb
@@ -18,4 +18,4 @@ Shindo.tests("Fog::Network[:openstack] | networks", ['openstack']) do
end
@network.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/models/network/port_tests.rb b/tests/openstack/models/network/port_tests.rb
index b32863a..af5dd13 100644
--- a/tests/openstack/models/network/port_tests.rb
+++ b/tests/openstack/models/network/port_tests.rb
@@ -25,4 +25,4 @@ Shindo.tests("Fog::Network[:openstack] | port", ['openstack']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/models/network/ports_tests.rb b/tests/openstack/models/network/ports_tests.rb
index d5488b9..7e77f69 100644
--- a/tests/openstack/models/network/ports_tests.rb
+++ b/tests/openstack/models/network/ports_tests.rb
@@ -22,4 +22,4 @@ Shindo.tests("Fog::Network[:openstack] | ports", ['openstack']) do
end
@port.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/models/network/subnet_tests.rb b/tests/openstack/models/network/subnet_tests.rb
index c334b01..21cc9cb 100644
--- a/tests/openstack/models/network/subnet_tests.rb
+++ b/tests/openstack/models/network/subnet_tests.rb
@@ -27,4 +27,4 @@ Shindo.tests("Fog::Network[:openstack] | subnet", ['openstack']) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/models/network/subnets_tests.rb b/tests/openstack/models/network/subnets_tests.rb
index e9e01fd..1a0acc9 100644
--- a/tests/openstack/models/network/subnets_tests.rb
+++ b/tests/openstack/models/network/subnets_tests.rb
@@ -24,4 +24,4 @@ Shindo.tests("Fog::Network[:openstack] | subnets", ['openstack']) do
end
@subnet.destroy
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/models/storage/file_tests.rb b/tests/openstack/models/storage/file_tests.rb
index 5daf228..b4b9361 100644
--- a/tests/openstack/models/storage/file_tests.rb
+++ b/tests/openstack/models/storage/file_tests.rb
@@ -47,7 +47,7 @@ Shindo.tests('Fog::OpenStack::Storage | file', ['openstack']) do
tests('#metadata') do
before do
- @instance.metadata[:foo] = 'bar'
+ @instance.metadata[:foo] = 'bar'
@instance.save
end
@@ -88,38 +88,38 @@ Shindo.tests('Fog::OpenStack::Storage | file', ['openstack']) do
end
tests('#metadata keys') do
-
+
after do
clear_metadata
@instance.save
end
- @instance.metadata[:foo_bar] = 'baz'
+ @instance.metadata[:foo_bar] = 'baz'
tests("should support compound key names").returns('baz') do
@instance.save
object_meta_attributes['X-Object-Meta-Foo-Bar']
end
- @instance.metadata['foo'] = 'bar'
+ @instance.metadata['foo'] = 'bar'
tests("should support string keys").returns('bar') do
@instance.save
object_meta_attributes['X-Object-Meta-Foo']
end
- @instance.metadata['foo_bar'] = 'baz'
+ @instance.metadata['foo_bar'] = 'baz'
tests("should support compound string key names").returns('baz') do
@instance.save
object_meta_attributes['X-Object-Meta-Foo-Bar']
end
- @instance.metadata['foo-bar'] = 'baz'
+ @instance.metadata['foo-bar'] = 'baz'
tests("should support hyphenated keys").returns('baz') do
@instance.save
object_meta_attributes['X-Object-Meta-Foo-Bar']
end
- @instance.metadata['foo-bar'] = 'baz'
- @instance.metadata[:'foo_bar'] = 'bref'
+ @instance.metadata['foo-bar'] = 'baz'
+ @instance.metadata[:'foo_bar'] = 'bref'
tests("should only support one value per metadata key").returns('bref') do
@instance.save
object_meta_attributes['X-Object-Meta-Foo-Bar']
@@ -136,35 +136,34 @@ Shindo.tests('Fog::OpenStack::Storage | file', ['openstack']) do
end
@instance.access_control_allow_origin = 'http://example.com'
- @instance.save
+ @instance.save
tests("#access_control_allow_origin should return access control attribute").returns('http://example.com') do
@instance.access_control_allow_origin
end
@instance.access_control_allow_origin = 'foo'
- @instance.save
+ @instance.save
tests("#access_control_allow_origin= should update access_control_allow_origin").returns('bar') do
@instance.access_control_allow_origin = 'bar'
- @instance.save
+ @instance.save
@instance.access_control_allow_origin
end
tests("#access_control_allow_origin= should not blow up on nil") do
@instance.access_control_allow_origin = nil
- @instance.save
+ @instance.save
end
end
end
-
model_tests(@directory.files, file_attributes, Fog.mocking?) do
tests("#origin") do
tests("#origin should default to nil").returns(nil) do
- @instance.save
+ @instance.save
@instance.origin
end
@@ -176,7 +175,7 @@ Shindo.tests('Fog::OpenStack::Storage | file', ['openstack']) do
@instance.attributes.delete('Origin')
@instance.origin = 'foo'
- @instance.save
+ @instance.save
tests("#origin= should update origin").returns('bar') do
@instance.origin = 'bar'
@instance.save
@@ -185,7 +184,7 @@ Shindo.tests('Fog::OpenStack::Storage | file', ['openstack']) do
tests("#origin= should not blow up on nil") do
@instance.origin = nil
- @instance.save
+ @instance.save
end
end
diff --git a/tests/openstack/requests/compute/address_tests.rb b/tests/openstack/requests/compute/address_tests.rb
index 3d02404..1d94f7b 100644
--- a/tests/openstack/requests/compute/address_tests.rb
+++ b/tests/openstack/requests/compute/address_tests.rb
@@ -15,7 +15,7 @@ Shindo.tests('Fog::Compute[:openstack] | address requests', ['openstack']) do
@address_pools_format = {
"name" => String
}
-
+
tests('success') do
tests('#allocate_address').formats({"floating_ip" => @address_format}) do
@@ -36,7 +36,7 @@ Shindo.tests('Fog::Compute[:openstack] | address requests', ['openstack']) do
tests('#list_address_pools').formats({"floating_ip_pools" => [@address_pools_format]}) do
compute.list_address_pools.body
end
-
+
compute.servers.get(@server_id).wait_for { ready? }
tests('#associate_address(server_id, ip_address)').succeeds do
diff --git a/tests/openstack/requests/compute/helper.rb b/tests/openstack/requests/compute/helper.rb
index ed24028..2d0e0cc 100644
--- a/tests/openstack/requests/compute/helper.rb
+++ b/tests/openstack/requests/compute/helper.rb
@@ -1,19 +1,13 @@
class OpenStack
-
module Compute
-
module Formats
-
SUMMARY = {
'id' => String,
'name' => String,
'links' => Array
}
-
end
-
end
-
end
def get_flavor_ref
diff --git a/tests/openstack/requests/compute/limit_tests.rb b/tests/openstack/requests/compute/limit_tests.rb
index 0cc6a23..ffd032e 100644
--- a/tests/openstack/requests/compute/limit_tests.rb
+++ b/tests/openstack/requests/compute/limit_tests.rb
@@ -57,4 +57,3 @@ Shindo.tests('Fog::Compute[:openstack] | limits requests', ['openstack']) do
end
end
end
-
diff --git a/tests/openstack/requests/compute/quota_tests.rb b/tests/openstack/requests/compute/quota_tests.rb
index 5be0c04..677edf7 100644
--- a/tests/openstack/requests/compute/quota_tests.rb
+++ b/tests/openstack/requests/compute/quota_tests.rb
@@ -58,4 +58,3 @@ Shindo.tests('Fog::Compute[:openstack] | quota requests', ['openstack']) do
end
end
-
diff --git a/tests/openstack/requests/compute/server_tests.rb b/tests/openstack/requests/compute/server_tests.rb
index 2875c6c..a1cffbe 100644
--- a/tests/openstack/requests/compute/server_tests.rb
+++ b/tests/openstack/requests/compute/server_tests.rb
@@ -25,7 +25,7 @@ Shindo.tests('Fog::Compute[:openstack] | server requests', ['openstack']) do
'links' => Array,
'security_groups' => Fog::Nullable::Array,
}
-
+
@reservation_format = {
'reservation_id' => String,
}
@@ -70,7 +70,7 @@ Shindo.tests('Fog::Compute[:openstack] | server requests', ['openstack']) do
@reservation_id = data['reservation_id']
data
end
-
+
tests('#validate_multi_create') do
passed = false
@multi_create_servers = []
@@ -88,7 +88,7 @@ Shindo.tests('Fog::Compute[:openstack] | server requests', ['openstack']) do
Fog::Compute[:openstack].servers.get(server).destroy
}
end
-
+
#LIST
#NOTE: we can remove strict=false if we remove uuid from GET /servers
tests('#list_servers').formats({'servers' => [OpenStack::Compute::Formats::SUMMARY]}, false) do
@@ -101,7 +101,7 @@ Shindo.tests('Fog::Compute[:openstack] | server requests', ['openstack']) do
end
#CHANGE PASSWORD
- if set_password_enabled
+ if set_password_enabled
tests("#change_server_password(#{@server_id}, 'fogupdatedserver')").succeeds do
Fog::Compute[:openstack].change_server_password(@server_id, 'foggy')
end
@@ -113,7 +113,7 @@ Shindo.tests('Fog::Compute[:openstack] | server requests', ['openstack']) do
Fog::Compute[:openstack].update_server(@server_id, :name => 'fogupdatedserver')
end
Fog::Compute[:openstack].servers.get(@server_id).wait_for { ready? }
-
+
#ADD SECURITY GROUP
tests("#add_security_group(#{@server_id}, #{@security_group_name})").succeeds do
Fog::Compute[:openstack].add_security_group(@server_id, @security_group_name)
@@ -164,6 +164,18 @@ Shindo.tests('Fog::Compute[:openstack] | server requests', ['openstack']) do
Fog::Compute[:openstack].servers.get(@server_id).wait_for { ready? } if not Fog.mocking?
+ #STOP
+ tests("#stop_server(#{@server_id})").succeeds do
+ Fog::Compute[:openstack].stop_server(@server_id)
+ end
+
+ #START
+ tests("#start_server(#{@server_id})").succeeds do
+ Fog::Compute[:openstack].start_server(@server_id)
+ end
+
+ Fog::Compute[:openstack].servers.get(@server_id).wait_for { ready? } if not Fog.mocking?
+
#DELETE
tests("#delete_server(#{@server_id})").succeeds do
Fog::Compute[:openstack].delete_server(@server_id)
@@ -195,6 +207,15 @@ Shindo.tests('Fog::Compute[:openstack] | server requests', ['openstack']) do
Fog::Compute[:openstack].reboot_server(0)
end
+ tests('#start_server(0)').raises(Fog::Compute::OpenStack::NotFound) do
+ pending if Fog.mocking?
+ Fog::Compute[:openstack].start_server(0)
+ end
+
+ tests('#stop_server(0)').raises(Fog::Compute::OpenStack::NotFound) do
+ pending if Fog.mocking?
+ Fog::Compute[:openstack].stop_server(0)
+ end
end
end
diff --git a/tests/openstack/requests/identity/helper.rb b/tests/openstack/requests/identity/helper.rb
index ad9bc74..bffc543 100644
--- a/tests/openstack/requests/identity/helper.rb
+++ b/tests/openstack/requests/identity/helper.rb
@@ -1,7 +1,5 @@
class OpenStack
-
module Identity
-
def self.get_tenant_id
identity = Fog::Identity[:openstack]
ENV['OPENSTACK_TENANT_NAME'] || identity.list_tenants.body['tenants'].first['id']
@@ -11,7 +9,5 @@ class OpenStack
identity = Fog::Identity[:openstack]
ENV['OPENSTACK_USER_ID'] || identity.list_users.body['users'].first['id']
end
-
end
-
end
diff --git a/tests/openstack/requests/identity/role_tests.rb b/tests/openstack/requests/identity/role_tests.rb
index 6bf25ab..b1187ca 100644
--- a/tests/openstack/requests/identity/role_tests.rb
+++ b/tests/openstack/requests/identity/role_tests.rb
@@ -43,4 +43,3 @@ Shindo.tests('Fog::Identity[:openstack] | role requests', ['openstack']) do
end
end
-
diff --git a/tests/openstack/requests/network/lb_health_monitor_tests.rb b/tests/openstack/requests/network/lb_health_monitor_tests.rb
index 559454c..5d117d8 100644
--- a/tests/openstack/requests/network/lb_health_monitor_tests.rb
+++ b/tests/openstack/requests/network/lb_health_monitor_tests.rb
@@ -90,4 +90,4 @@ Shindo.tests('Fog::Network[:openstack] | lb_health_monitor requests', ['openstac
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/requests/network/lb_member_tests.rb b/tests/openstack/requests/network/lb_member_tests.rb
index 7f5c857..721e358 100644
--- a/tests/openstack/requests/network/lb_member_tests.rb
+++ b/tests/openstack/requests/network/lb_member_tests.rb
@@ -57,4 +57,4 @@ Shindo.tests('Fog::Network[:openstack] | lb_member requests', ['openstack']) do
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/requests/network/lb_pool_tests.rb b/tests/openstack/requests/network/lb_pool_tests.rb
index 5646ff1..994c8d4 100644
--- a/tests/openstack/requests/network/lb_pool_tests.rb
+++ b/tests/openstack/requests/network/lb_pool_tests.rb
@@ -77,4 +77,4 @@ Shindo.tests('Fog::Network[:openstack] | lb_pool requests', ['openstack']) do
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/requests/network/lb_vip_tests.rb b/tests/openstack/requests/network/lb_vip_tests.rb
index b79fb94..b0b7011 100644
--- a/tests/openstack/requests/network/lb_vip_tests.rb
+++ b/tests/openstack/requests/network/lb_vip_tests.rb
@@ -68,4 +68,4 @@ Shindo.tests('Fog::Network[:openstack] | lb_vip requests', ['openstack']) do
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/requests/network/port_tests.rb b/tests/openstack/requests/network/port_tests.rb
index ea59230..6e253d2 100644
--- a/tests/openstack/requests/network/port_tests.rb
+++ b/tests/openstack/requests/network/port_tests.rb
@@ -60,4 +60,4 @@ Shindo.tests('Fog::Network[:openstack] | port requests', ['openstack']) do
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/requests/network/router_tests.rb b/tests/openstack/requests/network/router_tests.rb
index 75a3ea4..d0d9746 100644
--- a/tests/openstack/requests/network/router_tests.rb
+++ b/tests/openstack/requests/network/router_tests.rb
@@ -8,11 +8,11 @@ Shindo.tests('Fog::Network[:openstack] | router requests', ['openstack']) do
:tenant_id => String,
:external_gateway_info => Fog::Nullable::Hash,
}
-
+
tests('success') do
tests('#create_router').formats({'router' => @router_format}) do
attributes = {
- :admin_state_up => true,
+ :admin_state_up => true,
:tenant_id => 'tenant_id'
}
Fog::Network[:openstack].create_router('router_name', attributes).body
@@ -30,7 +30,7 @@ Shindo.tests('Fog::Network[:openstack] | router requests', ['openstack']) do
tests('#update_router').formats({'router' => @router_format}) do
router_id = Fog::Network[:openstack].routers.all.first.id
attributes = {
- :name => 'net_name',
+ :name => 'net_name',
:external_gateway_info => { :network_id => 'net_id' },
:status => 'ACTIVE',
:admin_state_up => true
@@ -42,7 +42,7 @@ Shindo.tests('Fog::Network[:openstack] | router requests', ['openstack']) do
router_id = Fog::Network[:openstack].routers.all.first.id
net = Fog::Network[:openstack].networks.first
attributes = {
- :name => 'net_name',
+ :name => 'net_name',
:external_gateway_info => net,
:status => 'ACTIVE',
:admin_state_up => true
diff --git a/tests/openstack/requests/network/subnet_tests.rb b/tests/openstack/requests/network/subnet_tests.rb
index 1fc1c7c..ada254d 100644
--- a/tests/openstack/requests/network/subnet_tests.rb
+++ b/tests/openstack/requests/network/subnet_tests.rb
@@ -63,4 +63,4 @@ Shindo.tests('Fog::Network[:openstack] | subnet requests', ['openstack']) do
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/requests/volume/quota_tests.rb b/tests/openstack/requests/volume/quota_tests.rb
index 5e5290a..1531f16 100644
--- a/tests/openstack/requests/volume/quota_tests.rb
+++ b/tests/openstack/requests/volume/quota_tests.rb
@@ -48,4 +48,3 @@ Shindo.tests('Fog::Volume[:openstack] | quota requests', ['openstack']) do
end
end
-
diff --git a/tests/openstack/storage_tests.rb b/tests/openstack/storage_tests.rb
index d7f2131..d514d0b 100644
--- a/tests/openstack/storage_tests.rb
+++ b/tests/openstack/storage_tests.rb
@@ -16,4 +16,3 @@ Shindo.tests('Fog::Storage[:openstack]', ['openstack', 'storage']) do
end
end
-
diff --git a/tests/openstack/version_tests.rb b/tests/openstack/version_tests.rb
index 1e9ecae..13ce039 100644
--- a/tests/openstack/version_tests.rb
+++ b/tests/openstack/version_tests.rb
@@ -52,4 +52,4 @@ Shindo.tests('OpenStack | versions', ['openstack']) do
Excon.stubs.clear
Excon.defaults[:mock] = @old_mock_value
end
-end
\ No newline at end of file
+end
diff --git a/tests/openstack/volume_tests.rb b/tests/openstack/volume_tests.rb
index 2a8b0ba..044da88 100644
--- a/tests/openstack/volume_tests.rb
+++ b/tests/openstack/volume_tests.rb
@@ -12,4 +12,3 @@ Shindo.tests('Fog::Volume[:openstack]', ['openstack', 'volume']) do
end
end
-
diff --git a/tests/openvz/models/compute/server_tests.rb b/tests/openvz/models/compute/server_tests.rb
index 251f487..d7195d0 100644
--- a/tests/openvz/models/compute/server_tests.rb
+++ b/tests/openvz/models/compute/server_tests.rb
@@ -53,4 +53,3 @@ Shindo.tests("Fog::Compute[:openvz] | server model", ['openvz', 'compute']) do
server.start
end
-
diff --git a/tests/ovirt/models/compute/cluster_tests.rb b/tests/ovirt/models/compute/cluster_tests.rb
index 004cce7..ec6ab9e 100644
--- a/tests/ovirt/models/compute/cluster_tests.rb
+++ b/tests/ovirt/models/compute/cluster_tests.rb
@@ -21,7 +21,7 @@ Shindo.tests('Fog::Compute[:ovirt] | cluster model', ['ovirt']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/ovirt/models/compute/interface_tests.rb b/tests/ovirt/models/compute/interface_tests.rb
index 5fc836c..591d08f 100644
--- a/tests/ovirt/models/compute/interface_tests.rb
+++ b/tests/ovirt/models/compute/interface_tests.rb
@@ -17,7 +17,7 @@ Shindo.tests('Fog::Compute[:ovirt] | interface model', ['ovirt']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/ovirt/models/compute/server_tests.rb b/tests/ovirt/models/compute/server_tests.rb
index 06c0d88..60d7e86 100644
--- a/tests/ovirt/models/compute/server_tests.rb
+++ b/tests/ovirt/models/compute/server_tests.rb
@@ -41,7 +41,7 @@ Shindo.tests('Fog::Compute[:ovirt] | server model', ['ovirt']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/ovirt/models/compute/template_tests.rb b/tests/ovirt/models/compute/template_tests.rb
index b831c45..be7866e 100644
--- a/tests/ovirt/models/compute/template_tests.rb
+++ b/tests/ovirt/models/compute/template_tests.rb
@@ -18,7 +18,7 @@ Shindo.tests('Fog::Compute[:ovirt] | template model', ['ovirt']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/rackspace/auto_scale_tests.rb b/tests/rackspace/auto_scale_tests.rb
index 6b41614..9cafb80 100644
--- a/tests/rackspace/auto_scale_tests.rb
+++ b/tests/rackspace/auto_scale_tests.rb
@@ -23,7 +23,6 @@ Shindo.tests('Fog::Rackspace::AutoScale', ['rackspace']) do
assert_method 'https://lon.identity.api.rackspacecloud.com/v2.0', :authenticate_v2
end
-
tests('current authentation') do
pending if Fog.mocking?
@@ -33,7 +32,7 @@ Shindo.tests('Fog::Rackspace::AutoScale', ['rackspace']) do
returns(false, "path populated") { @service.instance_variable_get("@uri").host.nil? }
identity_service = @service.instance_variable_get("@identity_service")
returns(false, "identity service was used") { identity_service.nil? }
- returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").has_key?(:ssl_verify_peer) }
+ returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").key?(:ssl_verify_peer) }
@service.list_groups
end
tests('dfw region').succeeds do
@@ -81,4 +80,4 @@ Shindo.tests('Fog::Rackspace::AutoScale', ['rackspace']) do
returns(true) { [200, 203].include? @service.list_groups.status }
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/block_storage_tests.rb b/tests/rackspace/block_storage_tests.rb
index 951e736..4fd5d75 100644
--- a/tests/rackspace/block_storage_tests.rb
+++ b/tests/rackspace/block_storage_tests.rb
@@ -52,7 +52,7 @@ Shindo.tests('Fog::Rackspace::BlockStorage', ['rackspace']) do
identity_service = @service.instance_variable_get("@identity_service")
returns(false, "identity service was used") { identity_service.nil? }
- returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").has_key?(:ssl_verify_peer) }
+ returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").key?(:ssl_verify_peer) }
@service.list_volumes
end
tests('dfw region').succeeds do
@@ -116,4 +116,4 @@ Shindo.tests('Fog::Rackspace::BlockStorage', ['rackspace']) do
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/cdn_tests.rb b/tests/rackspace/cdn_tests.rb
index 37f875b..ecf7191 100644
--- a/tests/rackspace/cdn_tests.rb
+++ b/tests/rackspace/cdn_tests.rb
@@ -1,5 +1,5 @@
Shindo.tests('Fog::CDN::Rackspace', ['rackspace']) do
-
+
def assert_method(url, method)
@service.instance_variable_set "@rackspace_auth_url", url
returns(method) { @service.send :authentication_method }
@@ -12,15 +12,15 @@ Shindo.tests('Fog::CDN::Rackspace', ['rackspace']) do
assert_method 'https://identity.api.rackspacecloud.com', :authenticate_v1
assert_method 'https://identity.api.rackspacecloud.com/v1', :authenticate_v1
- assert_method 'https://identity.api.rackspacecloud.com/v1.1', :authenticate_v1
+ assert_method 'https://identity.api.rackspacecloud.com/v1.1', :authenticate_v1
assert_method 'https://identity.api.rackspacecloud.com/v2.0', :authenticate_v2
-
- assert_method 'https://lon.identity.api.rackspacecloud.com', :authenticate_v1
+
+ assert_method 'https://lon.identity.api.rackspacecloud.com', :authenticate_v1
assert_method 'https://lon.identity.api.rackspacecloud.com/v1', :authenticate_v1
assert_method 'https://lon.identity.api.rackspacecloud.com/v1.1', :authenticate_v1
assert_method 'https://lon.identity.api.rackspacecloud.com/v2.0', :authenticate_v2
end
-
+
tests('authentication v1') do
pending if Fog.mocking?
@@ -32,7 +32,7 @@ Shindo.tests('Fog::CDN::Rackspace', ['rackspace']) do
@service.get_containers
end
tests('custom endpoint') do
- @service = Fog::CDN::Rackspace.new :rackspace_auth_url => 'https://identity.api.rackspacecloud.com/v1.0',
+ @service = Fog::CDN::Rackspace.new :rackspace_auth_url => 'https://identity.api.rackspacecloud.com/v1.0',
:rackspace_cdn_url => 'https://my-custom-cdn-endpoint.com'
returns(true, "auth token populated") { !@service.send(:auth_token).nil? }
returns(true, "uses custom endpoint") { (@service.instance_variable_get("@uri").host =~ /my-custom-cdn-endpoint\.com/) != nil }
@@ -41,14 +41,14 @@ Shindo.tests('Fog::CDN::Rackspace', ['rackspace']) do
tests('authentication v2') do
pending if Fog.mocking?
-
+
tests('variables populated').succeeds do
@service = Fog::CDN::Rackspace.new :rackspace_auth_url => 'https://identity.api.rackspacecloud.com/v2.0', :connection_options => { :ssl_verify_peer => true }
returns(true, "auth token populated") { !@service.send(:auth_token).nil? }
returns(false, "path populated") { @service.instance_variable_get("@uri").path.nil? }
identity_service = @service.instance_variable_get("@identity_service")
returns(false, "identity service was used") { identity_service.nil? }
- returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").has_key?(:ssl_verify_peer) }
+ returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").key?(:ssl_verify_peer) }
@service.get_containers
end
@@ -65,30 +65,30 @@ Shindo.tests('Fog::CDN::Rackspace', ['rackspace']) do
@service.get_containers
end
tests('custom endpoint') do
- @service = Fog::CDN::Rackspace.new :rackspace_auth_url => 'https://identity.api.rackspacecloud.com/v2.0',
+ @service = Fog::CDN::Rackspace.new :rackspace_auth_url => 'https://identity.api.rackspacecloud.com/v2.0',
:rackspace_cdn_url => 'https://my-custom-cdn-endpoint.com'
returns(true, "auth token populated") { !@service.send(:auth_token).nil? }
returns(true, "uses custom endpoint") { (@service.instance_variable_get("@uri").host =~ /my-custom-cdn-endpoint\.com/) != nil }
end
end
-
+
tests('default auth') do
pending if Fog.mocking?
-
+
tests('no params').succeeds do
@service = Fog::CDN::Rackspace.new :rackspace_region => nil
returns(true, "auth token populated") { !@service.send(:auth_token).nil? }
returns(true, "uses DFW") { (@service.instance_variable_get("@uri").host =~ /cdn1/) != nil }
@service.get_containers
end
-
+
tests('specify region').succeeds do
@service = Fog::CDN::Rackspace.new :rackspace_region => :ord
returns(true, "auth token populated") { !@service.send(:auth_token).nil? }
returns(true) { (@service.instance_variable_get("@uri").host =~ /cdn2/) != nil }
@service.get_containers
end
-
+
tests('custom endpoint') do
@service = Fog::CDN::Rackspace.new :rackspace_cdn_url => 'https://my-custom-cdn-endpoint.com'
returns(true, "auth token populated") { !@service.send(:auth_token).nil? }
@@ -111,7 +111,7 @@ Shindo.tests('Fog::CDN::Rackspace', ['rackspace']) do
end
pending if Fog.mocking?
-
+
def container_meta_attributes
@cdn.head_container(@directory.key).headers
end
@@ -129,15 +129,15 @@ Shindo.tests('Fog::CDN::Rackspace', ['rackspace']) do
@directory = Fog::Storage[:rackspace].directories.create(directory_attributes)
@cdn = @directory.service.cdn
-
- begin
+
+ begin
tests('publish_container').succeeds do
- returns(nil, "CDN is not enabled") { container_meta_attributes['X-CDN-Enabled'] }
+ returns("False", "CDN is not enabled") { container_meta_attributes['X-CDN-Enabled'] }
urls = @cdn.publish_container @directory
returns(true, "hash contains expected urls") { Fog::CDN::Rackspace::Base::URI_HEADERS.values.all? { |url_type| urls[url_type] } }
- returns("True", "CDN is enabled") { container_meta_attributes['X-Cdn-Enabled'] }
+ returns("True", "CDN is enabled") { container_meta_attributes['X-Cdn-Enabled'] }
end
-
+
tests('urls') do
tests('CDN enabled container').returns(false) do
@cdn.publish_container @directory
@@ -152,22 +152,22 @@ Shindo.tests('Fog::CDN::Rackspace', ['rackspace']) do
@cdn.urls(non_existent_container).empty?
end
end
-
+
tests('urls_from_headers') do
- headers = {
- "X-Cdn-Streaming-Uri"=>"http://168e307d41afe64f1a62-d1e9259b2132e81da48ed3e1e802ef22.r2.stream.cf1.rackcdn.com",
- "X-Cdn-Uri"=>"http://6e8f4bf5125c9c2e4e3a-d1e9259b2132e81da48ed3e1e802ef22.r2.cf1.rackcdn.com",
- "Date"=>"Fri, 15 Feb 2013 18:36:41 GMT",
- "Content-Length"=>"0",
- "X-Trans-Id"=>"tx424df53b79bc43fe994d3cec0c4d2d8a",
- "X-Ttl"=>"3600",
- "X-Cdn-Ssl-Uri"=>"https://f83cb7d39e0b9ff9581b-d1e9259b2132e81da48ed3e1e802ef22.ssl.cf1.rackcdn.com",
- "X-Cdn-Ios-Uri"=>"http://a590286a323fec6aed22-d1e9259b2132e81da48ed3e1e802ef22.iosr.cf1.rackcdn.com",
- "X-Cdn-Enabled"=>"True",
- "Content-Type"=>"text/html; charset=UTF-8",
+ headers = {
+ "X-Cdn-Streaming-Uri"=>"http://168e307d41afe64f1a62-d1e9259b2132e81da48ed3e1e802ef22.r2.stream.cf1.rackcdn.com",
+ "X-Cdn-Uri"=>"http://6e8f4bf5125c9c2e4e3a-d1e9259b2132e81da48ed3e1e802ef22.r2.cf1.rackcdn.com",
+ "Date"=>"Fri, 15 Feb 2013 18:36:41 GMT",
+ "Content-Length"=>"0",
+ "X-Trans-Id"=>"tx424df53b79bc43fe994d3cec0c4d2d8a",
+ "X-Ttl"=>"3600",
+ "X-Cdn-Ssl-Uri"=>"https://f83cb7d39e0b9ff9581b-d1e9259b2132e81da48ed3e1e802ef22.ssl.cf1.rackcdn.com",
+ "X-Cdn-Ios-Uri"=>"http://a590286a323fec6aed22-d1e9259b2132e81da48ed3e1e802ef22.iosr.cf1.rackcdn.com",
+ "X-Cdn-Enabled"=>"True",
+ "Content-Type"=>"text/html; charset=UTF-8",
"X-Log-Retention"=>"False"
}
-
+
urls = @cdn.send(:urls_from_headers, headers)
returns(4) { urls.size }
returns("http://168e307d41afe64f1a62-d1e9259b2132e81da48ed3e1e802ef22.r2.stream.cf1.rackcdn.com") { urls[:streaming_uri] }
@@ -175,13 +175,12 @@ Shindo.tests('Fog::CDN::Rackspace', ['rackspace']) do
returns("https://f83cb7d39e0b9ff9581b-d1e9259b2132e81da48ed3e1e802ef22.ssl.cf1.rackcdn.com") { urls[:ssl_uri] }
returns("http://a590286a323fec6aed22-d1e9259b2132e81da48ed3e1e802ef22.iosr.cf1.rackcdn.com") { urls[:ios_uri] }
end
-
+
tests('purge') do
pending
end
-
+
ensure
@directory.destroy if @directory
end
end
-
diff --git a/tests/rackspace/compute_tests.rb b/tests/rackspace/compute_tests.rb
index e15fd7c..492846c 100644
--- a/tests/rackspace/compute_tests.rb
+++ b/tests/rackspace/compute_tests.rb
@@ -49,7 +49,7 @@ Shindo.tests('Rackspace | Compute', ['rackspace']) do
identity_service = @service.instance_variable_get("@identity_service")
returns(false, "identity service was used") { identity_service.nil? }
- returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").has_key?(:ssl_verify_peer) }
+ returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").key?(:ssl_verify_peer) }
@service.list_flavors
end
diff --git a/tests/rackspace/compute_v2_tests.rb b/tests/rackspace/compute_v2_tests.rb
index 2def605..2e4412c 100644
--- a/tests/rackspace/compute_v2_tests.rb
+++ b/tests/rackspace/compute_v2_tests.rb
@@ -51,7 +51,7 @@ Shindo.tests('Fog::Compute::RackspaceV2', ['rackspace']) do
returns(false, "path populated") { @service.instance_variable_get("@uri").host.nil? }
identity_service = @service.instance_variable_get("@identity_service")
returns(false, "identity service was used") { identity_service.nil? }
- returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").has_key?(:ssl_verify_peer) }
+ returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").key?(:ssl_verify_peer) }
@service.list_flavors
end
tests('dfw region').succeeds do
diff --git a/tests/rackspace/databases_tests.rb b/tests/rackspace/databases_tests.rb
index ad955fb..e1f6557 100644
--- a/tests/rackspace/databases_tests.rb
+++ b/tests/rackspace/databases_tests.rb
@@ -2,7 +2,6 @@ Shindo.tests('Fog::Rackspace::Databases', ['rackspace']) do |variable|
pending if Fog.mocking?
-
def assert_method(url, method)
@service.instance_variable_set "@rackspace_auth_url", url
returns(method) { @service.send :authentication_method }
@@ -52,7 +51,7 @@ Shindo.tests('Fog::Rackspace::Databases', ['rackspace']) do |variable|
identity_service = @service.instance_variable_get("@identity_service")
returns(false, "identity service was used") { identity_service.nil? }
- returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").has_key?(:ssl_verify_peer) }
+ returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").key?(:ssl_verify_peer) }
@service.flavors
end
tests('dfw region').succeeds do
diff --git a/tests/rackspace/dns_tests.rb b/tests/rackspace/dns_tests.rb
index 353f420..a4aeb37 100644
--- a/tests/rackspace/dns_tests.rb
+++ b/tests/rackspace/dns_tests.rb
@@ -54,7 +54,7 @@ Shindo.tests('Fog::DNS::Rackspace', ['rackspace']) do
identity_service = @service.instance_variable_get("@identity_service")
returns(false, "identity service was used") { identity_service.nil? }
- returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").has_key?(:ssl_verify_peer) }
+ returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").key?(:ssl_verify_peer) }
@service.list_domains
end
tests('custom endpoint') do
@@ -107,4 +107,4 @@ Shindo.tests('Fog::DNS::Rackspace', ['rackspace']) do
returns("param1=1¶m2=2") { @service.send(:array_to_query_string, {:param1 => [1], :param2 => [2]}) }
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/helper.rb b/tests/rackspace/helper.rb
index 5a906ad..fb893ac 100644
--- a/tests/rackspace/helper.rb
+++ b/tests/rackspace/helper.rb
@@ -60,6 +60,19 @@ module Shindo
sleep 30 unless Fog.mocking?
end
+ def wait_for_volume_state(service, volume_id, state)
+ current_state = nil
+ until current_state == state
+ current_state = service.get_volume(volume_id).body['volume']['status']
+ if current_state == 'error'
+ Fog::Logger.warning caller
+ Fog::Logger.warning "Volume is in an error state!"
+ return
+ end
+ sleep 10 unless Fog.mocking?
+ end
+ end
+
def rackspace_test_image_id(service)
image_id = Fog.credentials[:rackspace_image_id]
# I chose to use the first Ubuntu because it will work with the smallest flavor and it doesn't require a license
diff --git a/tests/rackspace/identity_tests.rb b/tests/rackspace/identity_tests.rb
index 68b6ad7..8da9423 100644
--- a/tests/rackspace/identity_tests.rb
+++ b/tests/rackspace/identity_tests.rb
@@ -23,4 +23,4 @@ Shindo.tests('Fog::Rackspace::Identity', ['rackspace']) do
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/load_balancer_tests.rb b/tests/rackspace/load_balancer_tests.rb
index f3b0f09..b25264c 100644
--- a/tests/rackspace/load_balancer_tests.rb
+++ b/tests/rackspace/load_balancer_tests.rb
@@ -51,7 +51,7 @@ Shindo.tests('Fog::Rackspace::LoadBalancers', ['rackspace']) do
returns(false, "path populated") { @service.instance_variable_get("@uri").host.nil? }
identity_service = @service.instance_variable_get("@identity_service")
returns(false, "identity service was used") { identity_service.nil? }
- returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").has_key?(:ssl_verify_peer) }
+ returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").key?(:ssl_verify_peer) }
@service.list_load_balancers
end
tests('dfw region').succeeds do
@@ -101,7 +101,6 @@ Shindo.tests('Fog::Rackspace::LoadBalancers', ['rackspace']) do
end
end
-
tests('reauthentication') do
pending if Fog.mocking?
diff --git a/tests/rackspace/models/auto_scale/group_tests.rb b/tests/rackspace/models/auto_scale/group_tests.rb
index 18f57b6..03e8d0d 100644
--- a/tests/rackspace/models/auto_scale/group_tests.rb
+++ b/tests/rackspace/models/auto_scale/group_tests.rb
@@ -9,7 +9,6 @@ Shindo.tests('Fog::Rackspace::AutoScale | group', ['rackspace', 'rackspace_autos
:group_config => GROUP_CONFIG_OPTIONS
}
-
model_tests(service.groups, options, false) do
pending if Fog.mocking?
tests('#policies').succeeds do
@@ -33,4 +32,4 @@ Shindo.tests('Fog::Rackspace::AutoScale | group', ['rackspace', 'rackspace_autos
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/models/auto_scale/groups_tests.rb b/tests/rackspace/models/auto_scale/groups_tests.rb
index fcb4d0c..d87970d 100644
--- a/tests/rackspace/models/auto_scale/groups_tests.rb
+++ b/tests/rackspace/models/auto_scale/groups_tests.rb
@@ -14,4 +14,4 @@ Shindo.tests('Fog::Rackspace::AutoScale | groups', ['rackspace', 'rackspace_auto
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/models/auto_scale/policies_tests.rb b/tests/rackspace/models/auto_scale/policies_tests.rb
index 15931ff..a2156e2 100644
--- a/tests/rackspace/models/auto_scale/policies_tests.rb
+++ b/tests/rackspace/models/auto_scale/policies_tests.rb
@@ -2,7 +2,6 @@ Shindo.tests('Fog::Rackspace::AutoScale | policies', ['rackspace', 'rackspace_au
pending if Fog.mocking?
service = Fog::Rackspace::AutoScale.new :rackspace_region => :ord
-
begin
group = service.groups.create({
:policies => POLICIES_OPTIONS,
@@ -22,4 +21,4 @@ Shindo.tests('Fog::Rackspace::AutoScale | policies', ['rackspace', 'rackspace_au
deactive_auto_scale_group(group)
group.destroy if group
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/models/auto_scale/policy_tests.rb b/tests/rackspace/models/auto_scale/policy_tests.rb
index 3cb02fb..e8566b2 100644
--- a/tests/rackspace/models/auto_scale/policy_tests.rb
+++ b/tests/rackspace/models/auto_scale/policy_tests.rb
@@ -32,4 +32,4 @@ Shindo.tests('Fog::Rackspace::AutoScale | policy', ['rackspace', 'rackspace_auto
group.destroy if group
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/models/auto_scale/webhook_tests.rb b/tests/rackspace/models/auto_scale/webhook_tests.rb
index 72833f9..0e8e79e 100644
--- a/tests/rackspace/models/auto_scale/webhook_tests.rb
+++ b/tests/rackspace/models/auto_scale/webhook_tests.rb
@@ -39,4 +39,4 @@ Shindo.tests('Fog::Rackspace::AutoScale | webhook', ['rackspace', 'rackspace_aut
group.destroy if group
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/models/auto_scale/webhooks_tests.rb b/tests/rackspace/models/auto_scale/webhooks_tests.rb
index a018239..4ebf880 100644
--- a/tests/rackspace/models/auto_scale/webhooks_tests.rb
+++ b/tests/rackspace/models/auto_scale/webhooks_tests.rb
@@ -25,4 +25,4 @@ Shindo.tests('Fog::Rackspace::AutoScale | webhooks', ['rackspace', 'rackspace_au
group.destroy if group
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/models/compute_v2/image_tests.rb b/tests/rackspace/models/compute_v2/image_tests.rb
index f3c4371..3641229 100644
--- a/tests/rackspace/models/compute_v2/image_tests.rb
+++ b/tests/rackspace/models/compute_v2/image_tests.rb
@@ -58,7 +58,6 @@ Shindo.tests('Fog::Compute::RackspaceV2 | image', ['rackspace']) do
end
end
-
tests("success") do
begin
server = service.servers.create(options)
diff --git a/tests/rackspace/models/compute_v2/keypairs_tests.rb b/tests/rackspace/models/compute_v2/keypairs_tests.rb
index a9ac0f1..5e1e0eb 100644
--- a/tests/rackspace/models/compute_v2/keypairs_tests.rb
+++ b/tests/rackspace/models/compute_v2/keypairs_tests.rb
@@ -42,6 +42,6 @@ Shindo.tests('Fog::Compute::RackspaceV2 | key_pairs', ['rackspace']) do
ensure
key.destroy if key
end
-
+
end
end
diff --git a/tests/rackspace/models/compute_v2/metadata_tests.rb b/tests/rackspace/models/compute_v2/metadata_tests.rb
index 8f117ef..b2a5e04 100644
--- a/tests/rackspace/models/compute_v2/metadata_tests.rb
+++ b/tests/rackspace/models/compute_v2/metadata_tests.rb
@@ -4,13 +4,13 @@ Shindo.tests('Fog::Compute::RackspaceV2 | metadata', ['rackspace']) do
service = Fog::Compute::RackspaceV2.new
test_time = Time.now.to_i.to_s
-
+
tests('success') do
begin
- @server = service.servers.create(:name => "fog_server_#{test_time}",
+ @server = service.servers.create(:name => "fog_server_#{test_time}",
:flavor_id => rackspace_test_flavor_id(service),
:image_id => rackspace_test_image_id(service))
-
+
@server.wait_for { ready? }
tests('server') do
@@ -18,7 +18,7 @@ Shindo.tests('Fog::Compute::RackspaceV2 | metadata', ['rackspace']) do
@server.wait_for { ready? }
end
end
-
+
tests('image') do
@image = @server.create_image("fog_image_#{test_time}", :metadata => {:my_key => 'my_value'})
@image.wait_for { ready? }
@@ -27,18 +27,18 @@ Shindo.tests('Fog::Compute::RackspaceV2 | metadata', ['rackspace']) do
metadata = @image.metadata.all
my_metadata = metadata.select {|datum| datum.key == 'my_key'}
returns(1) { my_metadata.size }
- returns('my_value') {my_metadata[0].value }
+ returns('my_value') {my_metadata[0].value }
end
tests("#get('my_key')").returns('my_value') do
pending if Fog.mocking? && !mocks_implemented
- @image.metadata.get('my_key').value
- end
+ @image.metadata.get('my_key').value
+ end
end
-
+
ensure
@image.destroy if @image
@server.destroy if @server
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/models/compute_v2/server_tests.rb b/tests/rackspace/models/compute_v2/server_tests.rb
index 8751b13..da2545b 100644
--- a/tests/rackspace/models/compute_v2/server_tests.rb
+++ b/tests/rackspace/models/compute_v2/server_tests.rb
@@ -67,11 +67,11 @@ Shindo.tests('Fog::Compute::RackspaceV2 | server', ['rackspace']) do
model_tests(service.servers, options, true) do
@instance.wait_for { ready? }
-
+
tests('#metadata[\'fog_test\']').returns('true') do
@instance.metadata['fog_test']
end
-
+
tests("includes #{@network.label}").returns(true) do
@instance.addresses.keys.include?(@network.label)
end
@@ -95,7 +95,7 @@ Shindo.tests('Fog::Compute::RackspaceV2 | server', ['rackspace']) do
returns("::1") { @instance.access_ipv6_address }
returns(new_name) { @instance.name }
end
-
+
tests('#reboot("SOFT")').succeeds do
@instance.reboot('SOFT')
returns('REBOOT') { @instance.state }
@@ -224,13 +224,13 @@ Shindo.tests('Fog::Compute::RackspaceV2 | server', ['rackspace']) do
server
}
- commands = lambda {
- Fog::SSH::Mock.data[@address].first[:commands]
+ commands = lambda {
+ Fog::SSH::Mock.data[@address].first[:commands]
}
test("leaves user unlocked only when requested") do
create_server.call(ATTRIBUTES.merge(:no_passwd_lock => true))
- commands.call.none? { |c| c =~ /passwd\s+-l\s+root/ }
+ commands.call.none? { |c| c =~ /passwd\s+-l\s+root/ }
end
test("provide a password when the passed isn't locked") do
@@ -260,7 +260,7 @@ Shindo.tests('Fog::Compute::RackspaceV2 | server', ['rackspace']) do
@instance.resize(4)
returns('RESIZE') { @instance.state }
end
-
+
@instance.wait_for { ready?('VERIFY_RESIZE') }
sleep 60 unless Fog.mocking?
tests('#revert_resize').succeeds do
diff --git a/tests/rackspace/models/databases/database_tests.rb b/tests/rackspace/models/databases/database_tests.rb
index 34169dd..95157fd 100644
--- a/tests/rackspace/models/databases/database_tests.rb
+++ b/tests/rackspace/models/databases/database_tests.rb
@@ -13,5 +13,17 @@ Shindo.tests('Fog::Rackspace::Databases | database', ['rackspace']) do
model_tests(instance.databases, { :name => "db_#{Time.now.to_i.to_s}" }, false)
+ user_no_host = instance.users.create(:name => "foo", :password => "foo")
+ user_with_host = instance.users.create(:name => "bar", :host => "10.20.30.40", :password => "bar")
+
+ db = instance.databases.create(:name => "Test_#{Time.now.to_i}")
+
+ db.grant_access_for(user_no_host)
+ db.grant_access_for(user_with_host)
+
+ db.revoke_access_for(user_no_host)
+ db.revoke_access_for(user_with_host)
+
+
instance.destroy
end
diff --git a/tests/rackspace/models/identity/service_catalog_tests.rb b/tests/rackspace/models/identity/service_catalog_tests.rb
index 821216d..a35479b 100644
--- a/tests/rackspace/models/identity/service_catalog_tests.rb
+++ b/tests/rackspace/models/identity/service_catalog_tests.rb
@@ -37,20 +37,20 @@ Shindo.tests('Fog::Rackspace::ServiceCatalog | users', ['rackspace']) do
@service_catalog = Fog::Rackspace::Identity::ServiceCatalog.from_response(nil, before_hash)
end
-
+
tests('services') do
services = ["cloudBlockStorage", "cloudDNS", "cloudDatabases", "cloudFiles", "cloudFilesCDN", "cloudLoadBalancers", "cloudMonitoring", "cloudServers", "cloudServersOpenStack", "not_here"]
- returns(services) { @service_catalog.services.collect {|s| s.to_s }.sort }
+ returns(services) { @service_catalog.services.map {|s| s.to_s }.sort }
end
-
+
tests('get_endpoints') do
endpoints = [{"region"=>"DFW", "versionId"=>"2", "tenantId"=>"777", "versionList"=>"https://dfw.servers.api.rackspacecloud.com/", "versionInfo"=>"https://dfw.servers.api.rackspacecloud.com/v2", "publicURL"=>"https://dfw.servers.api.rackspacecloud.com/v2/777"}, {"region"=>"ORD", "versionId"=>"2", "tenantId"=>"777", "versionList"=>"https://ord.servers.api.rackspacecloud.com/", "versionInfo"=>"https://ord.servers.api.rackspacecloud.com/v2", "publicURL"=>"https://ord.servers.api.rackspac [...]
returns(endpoints) { @service_catalog.get_endpoints(:cloudServersOpenStack) }
returns(endpoints) { @service_catalog.get_endpoints('cloudServersOpenStack') }
returns({}) { @service_catalog.get_endpoints('non-existent') }
end
-
+
tests('get_endpoint') do
tests('service with mulitple endpoints') do
returns("https://dfw.servers.api.rackspacecloud.com/v2/777") { @service_catalog.get_endpoint(:cloudServersOpenStack, :dfw) }
@@ -59,7 +59,7 @@ Shindo.tests('Fog::Rackspace::ServiceCatalog | users', ['rackspace']) do
returns("https://dfw.servers.api.rackspacecloud.com/v2/777") { @service_catalog.get_endpoint('cloudServersOpenStack', 'dfw') }
returns("https://servers.api.rackspacecloud.com/v2/777") { @service_catalog.get_endpoint('cloudServersOpenStack', :global) }
end
-
+
tests('with one endpoint') do
tests('catalog contains global endpoint') do
catalog_hash = [{"type"=>"volume", "endpoints"=>[{"tenantId"=>"777", "publicURL"=>"https://blockstorage.api.rackspacecloud.com/v1/777"}], "name"=>"cloudBlockStorage"}]
@@ -98,7 +98,7 @@ Shindo.tests('Fog::Rackspace::ServiceCatalog | users', ['rackspace']) do
returns("https://snet-storage101.ord1.clouddrive.com/v1/Mosso777") { @service_catalog.get_endpoint(:cloudFiles, :ord, true) }
returns("https://storage101.ord1.clouddrive.com/v1/Mosso777") { @service_catalog.get_endpoint(:cloudFiles, :ord, false) }
end
-
+
tests('error conditions') do
raises(RuntimeError) { @service_catalog.get_endpoint(:cloudServersOpenStack) }
raises(RuntimeError) { @service_catalog.get_endpoint(:cloudServersOpenStack, :sat) }
@@ -106,9 +106,9 @@ Shindo.tests('Fog::Rackspace::ServiceCatalog | users', ['rackspace']) do
raises(RuntimeError) { @service_catalog.get_endpoint(:not_here, :dfw) }
raises(RuntimeError) { @service_catalog.get_endpoint('non-existent') }
raises(RuntimeError) { @service_catalog.get_endpoint(:cloudServersOpenStack, :ord, true) }
- end
+ end
end
-
+
tests('reload').succeeds do
pending if Fog.mocking?
@@ -151,4 +151,4 @@ Shindo.tests('Fog::Rackspace::ServiceCatalog | users', ['rackspace']) do
end
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/models/load_balancers/load_balancer_tests.rb b/tests/rackspace/models/load_balancers/load_balancer_tests.rb
index bea2754..94348e7 100644
--- a/tests/rackspace/models/load_balancers/load_balancer_tests.rb
+++ b/tests/rackspace/models/load_balancers/load_balancer_tests.rb
@@ -2,16 +2,29 @@ Shindo.tests('Fog::Rackspace::LoadBalancers | load_balancer', ['rackspace']) do
pending if Fog.mocking?
- LOAD_BALANCER_ATTRIBUTES = {
- :name => 'fog' + Time.now.to_i.to_s,
- :protocol => 'HTTP',
- :port => 80,
- :virtual_ips => [{ :type => 'PUBLIC'}],
- :nodes => [{ :address => '1.1.1.1', :port => 80, :condition => 'ENABLED'}]
- }
+ MINIMAL_LB_ATTRIBUTES = {
+ :name => "fog#{Time.now.to_i}",
+ :protocol => 'HTTP',
+ :virtual_ips => [{ :type => 'PUBLIC' }],
+ }
+
+ NORMAL_LB_ATTRIBUTES = MINIMAL_LB_ATTRIBUTES.merge({
+ :port => 8080,
+ :nodes => [{ :address => '1.1.1.1', :port => 80, :condition => 'ENABLED' }]
+ })
+
+ FULL_LB_ATTRIBUTES = NORMAL_LB_ATTRIBUTES.merge({
+ :algorithm => 'LEAST_CONNECTIONS',
+ :timeout => 60
+ })
+
+ HTTPS_REDIRECT_LB_ATTRIBUTES = FULL_LB_ATTRIBUTES.merge({
+ :protocol => 'HTTPS',
+ :https_redirect => true
+ })
given_a_load_balancer_service do
- model_tests(@service.load_balancers, LOAD_BALANCER_ATTRIBUTES, false) do
+ model_tests(@service.load_balancers, NORMAL_LB_ATTRIBUTES, false) do
@instance.wait_for { ready? }
tests('#save => saving existing with port = 88').succeeds do
@@ -41,7 +54,7 @@ Shindo.tests('Fog::Rackspace::LoadBalancers | load_balancer', ['rackspace']) do
returns(false) { @instance.connection_logging }
end
- @instance.wait_for { ready? }
+ @instance.wait_for { ready? }
tests('#enable_content_caching').succeeds do
@instance.enable_content_caching
returns(true) { @instance.content_caching }
@@ -169,11 +182,20 @@ Shindo.tests('Fog::Rackspace::LoadBalancers | load_balancer', ['rackspace']) do
@instance.wait_for { ready? }
end
- tests('create(...with algorithm...)') do
- attributes = LOAD_BALANCER_ATTRIBUTES.clone
- attributes[:algorithm] = 'LEAST_CONNECTIONS'
- attributes[:timeout] = 60
- @lb = @service.load_balancers.create attributes
+ tests('create with minimal attributes') do
+ @lb = @service.load_balancers.create MINIMAL_LB_ATTRIBUTES
+
+ returns(MINIMAL_LB_ATTRIBUTES[:name]) { @lb.name }
+ returns('HTTP') { @lb.protocol }
+ returns(80) { @lb.port }
+
+ @lb.wait_for { ready? }
+
+ @lb.destroy
+ end
+
+ tests('create with full attributes') do
+ @lb = @service.load_balancers.create FULL_LB_ATTRIBUTES
returns('LEAST_CONNECTIONS') { @lb.algorithm }
returns(60) { @lb.timeout }
@@ -182,9 +204,19 @@ Shindo.tests('Fog::Rackspace::LoadBalancers | load_balancer', ['rackspace']) do
@lb.destroy
end
+ tests('create with httpsRedirect') do
+ @lb = @service.load_balancers.create HTTPS_REDIRECT_LB_ATTRIBUTES
+ returns('HTTPS') { @lb.protocol }
+ returns(true) { @lb.https_redirect }
+
+ @lb.wait_for { ready? }
+
+ @lb.destroy
+ end
+
tests('failure') do
- @lb = @service.load_balancers.new LOAD_BALANCER_ATTRIBUTES
+ @lb = @service.load_balancers.new NORMAL_LB_ATTRIBUTES
tests('#usage => Requires ID').raises(ArgumentError) do
@lb.usage
end
diff --git a/tests/rackspace/models/monitoring/alarm_examples_tests.rb b/tests/rackspace/models/monitoring/alarm_examples_tests.rb
index 1e3e4b5..fd9d568 100644
--- a/tests/rackspace/models/monitoring/alarm_examples_tests.rb
+++ b/tests/rackspace/models/monitoring/alarm_examples_tests.rb
@@ -12,7 +12,7 @@ Shindo.tests('Fog::Rackspace::Monitoring | alarm_examples', ['rackspace','racksp
service.alarm_examples.get(alarm_example_id)
end
tests('evaluate').succeeds do
- values = {'string'=> '12345'}
+ values = {'string'=> '12345'}
service.alarm_examples.evaluate(alarm_example_id,values)
end
end
diff --git a/tests/rackspace/models/monitoring/alarm_tests.rb b/tests/rackspace/models/monitoring/alarm_tests.rb
index d1bf796..c34b65d 100644
--- a/tests/rackspace/models/monitoring/alarm_tests.rb
+++ b/tests/rackspace/models/monitoring/alarm_tests.rb
@@ -18,7 +18,7 @@ Shindo.tests('Fog::Rackspace::Monitoring | alarm', ['rackspace','rackspace_monit
check.entity = entity
alarm = Fog::Rackspace::Monitoring::Alarm.new
alarm.check = check.id
-
+
returns(Fog::Rackspace::Monitoring::Alarm) { alarm.class }
returns(check_id) { alarm.check.id }
end
diff --git a/tests/rackspace/models/monitoring/check_tests.rb b/tests/rackspace/models/monitoring/check_tests.rb
index 1a5b3b4..9a788b9 100644
--- a/tests/rackspace/models/monitoring/check_tests.rb
+++ b/tests/rackspace/models/monitoring/check_tests.rb
@@ -2,7 +2,6 @@ Shindo.tests('Fog::Rackspace::Monitoring | check', ['rackspace','rackspace_monit
pending if Fog.mocking?
service = Fog::Rackspace::Monitoring.new
-
tests('#entity=') do
tests('should create new entity if object is a string') do
check = Fog::Rackspace::Monitoring::Check.new
diff --git a/tests/rackspace/models/monitoring/check_types_tests.rb b/tests/rackspace/models/monitoring/check_types_tests.rb
index 9d30fd2..2377f99 100644
--- a/tests/rackspace/models/monitoring/check_types_tests.rb
+++ b/tests/rackspace/models/monitoring/check_types_tests.rb
@@ -1,9 +1,9 @@
Shindo.tests('Fog::Rackspace::Monitoring | check_types', ['rackspace','rackspace_monitoring']) do
pending if Fog.mocking?
service = Fog::Rackspace::Monitoring.new
-
+
@check_types = service.check_types
-
+
tests('#all').succeeds do
@check_types.all
end
diff --git a/tests/rackspace/models/monitoring/data_points_tests.rb b/tests/rackspace/models/monitoring/data_points_tests.rb
index fe00860..1875e4b 100644
--- a/tests/rackspace/models/monitoring/data_points_tests.rb
+++ b/tests/rackspace/models/monitoring/data_points_tests.rb
@@ -1,14 +1,14 @@
Shindo.tests('Fog::Rackspace::Monitoring | datapoints', ['rackspace','rackspace_monitoring']) do
pending if Fog.mocking?
service = Fog::Rackspace::Monitoring.new
-
+
begin
label = "fog_#{Time.now.to_i.to_s}"
@entity = service.entities.create :label => label
@check = service.checks.create CHECK_CREATE_OPTIONS.merge(:label => label, :entity => @entity)
sleep(@check.period + 30) unless Fog.mocking?
@metric = service.metrics(:check => @check).first
-
+
tests('#datapoints').succeeds do
service.data_points(:metric => @metric).fetch({ :from => ((Time.now.to_i * 1000) - (3600 * 1000)) })
end
diff --git a/tests/rackspace/models/monitoring/metric_tests.rb b/tests/rackspace/models/monitoring/metric_tests.rb
index a907f4a..53e1fe7 100644
--- a/tests/rackspace/models/monitoring/metric_tests.rb
+++ b/tests/rackspace/models/monitoring/metric_tests.rb
@@ -1,14 +1,14 @@
Shindo.tests('Fog::Rackspace::Monitoring | metrics', ['rackspace','rackspace_monitoring']) do
pending if Fog.mocking?
service = Fog::Rackspace::Monitoring.new
-
+
begin
label = "fog_#{Time.now.to_i.to_s}"
@entity = service.entities.create :label => label
@check = service.checks.create CHECK_CREATE_OPTIONS.merge(:label => label, :entity => @entity)
sleep(@check.period + 30) unless Fog.mocking?
@metric = service.metrics(:check => @check).first
-
+
tests('#datapoints').succeeds do
@metric.datapoints
end
diff --git a/tests/rackspace/models/monitoring/metrics_tests.rb b/tests/rackspace/models/monitoring/metrics_tests.rb
index 46d6a98..7805cc4 100644
--- a/tests/rackspace/models/monitoring/metrics_tests.rb
+++ b/tests/rackspace/models/monitoring/metrics_tests.rb
@@ -6,7 +6,7 @@ Shindo.tests('Fog::Rackspace::Monitoring | metrics', ['rackspace','rackspace_mon
label = "fog_#{Time.now.to_i.to_s}"
@entity = service.entities.create :label => label
@check = service.checks.create CHECK_CREATE_OPTIONS.merge(:label => label, :entity => @entity)
-
+
tests('#list_metrics').succeeds do
service.metrics(:check => @check).all
end
diff --git a/tests/rackspace/models/monitoring/notification_tests.rb b/tests/rackspace/models/monitoring/notification_tests.rb
index 08ba1ea..96417f9 100644
--- a/tests/rackspace/models/monitoring/notification_tests.rb
+++ b/tests/rackspace/models/monitoring/notification_tests.rb
@@ -3,7 +3,7 @@ Shindo.tests('Fog::Rackspace::Monitoring | notification', ['rackspace','rackspac
service = Fog::Rackspace::Monitoring.new
options = { :label => "fog_#{Time.now.to_i.to_s}", :type => "email", :details => {:address => "test at test.com"} }
-
+
model_tests(service.notifications, options, false) do
tests('#update').succeeds do
diff --git a/tests/rackspace/models/storage/account_tests.rb b/tests/rackspace/models/storage/account_tests.rb
index fcc9fa7..27ea243 100644
--- a/tests/rackspace/models/storage/account_tests.rb
+++ b/tests/rackspace/models/storage/account_tests.rb
@@ -19,8 +19,8 @@ Shindo.tests('Fog::Rackspace::Storage | account', ['rackspace']) do
key = "testing-update-#{Time.now.to_i}"
@account.meta_temp_url_key = "testing-update-#{Time.now.to_i}"
@account.save
-
+
headers = @account.service.head_containers.headers
returns(key) { headers['X-Account-Meta-Temp-Url-Key'] }
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/models/storage/directories_tests.rb b/tests/rackspace/models/storage/directories_tests.rb
index 85eca32..fed33dd 100644
--- a/tests/rackspace/models/storage/directories_tests.rb
+++ b/tests/rackspace/models/storage/directories_tests.rb
@@ -4,7 +4,7 @@ Shindo.tests('Fog::Rackspace::Storage | directories', ['rackspace']) do
begin
@name = "fog-directories-test-#{Time.now.to_i.to_s}"
- @filename = 'lorem.txt'
+ @filename = 'lorem.txt'
@dir = @service.directories.create :key => @name, :metadata => {:fog_test => true}
@file = @dir.files.create :key => @filename, :body => lorem_file
@@ -17,10 +17,10 @@ Shindo.tests('Fog::Rackspace::Storage | directories', ['rackspace']) do
returns( Fog::Storage.get_body_size(lorem_file)) {instance.bytes }
returns(@filename) { instance.files.first.key }
end
-
+
ensure
@file.destroy if @file
@dir.destroy if @dir
end
-
-end
\ No newline at end of file
+
+end
diff --git a/tests/rackspace/models/storage/directory_tests.rb b/tests/rackspace/models/storage/directory_tests.rb
index c4494e7..e6723e9 100644
--- a/tests/rackspace/models/storage/directory_tests.rb
+++ b/tests/rackspace/models/storage/directory_tests.rb
@@ -1,41 +1,41 @@
Shindo.tests('Fog::Rackspace::Storage | directory', ['rackspace']) do
@service = Fog::Storage[:rackspace]
-
+
def container_meta_attributes
@service.head_container(@instance.key).headers.reject {|k, v| !(k =~ /X-Container-Meta-/)}
end
-
+
directory_attributes = {
# Add a random suffix to prevent collision
:key => "fog-directory-tests-#{rand(65536)}"
}
-
+
model_tests(@service.directories, directory_attributes, Fog.mocking?) do
-
+
tests('#public?').returns(false) do
@instance.public?
end
-
+
tests('#public_url') do
-
+
tests('http').returns(nil) do
@instance.public_url
end
- @instance.cdn_cname = "my_cname.com"
+ @instance.cdn_cname = "my_cname.com"
tests('cdn_cname').returns(nil) do
@instance.public_url
end
-
+
@instance.cdn_cname = nil
@service.instance_variable_set "@rackspace_cdn_ssl", true
tests('ssl').returns(nil) do
@instance.public_url
- end
- @service.instance_variable_set "@rackspace_cdn_ssl", nil
+ end
+ @service.instance_variable_set "@rackspace_cdn_ssl", nil
end
-
+
tests('#ios_url').returns(nil) do
@instance.ios_url
end
@@ -43,11 +43,11 @@ Shindo.tests('Fog::Rackspace::Storage | directory', ['rackspace']) do
tests('#streaming_url').returns(nil) do
@instance.streaming_url
end
-
+
tests('cdn') do
@instance.public = true
@instance.save
-
+
tests('#public?').returns(true) do
@instance.public?
end
@@ -58,7 +58,7 @@ Shindo.tests('Fog::Rackspace::Storage | directory', ['rackspace']) do
@instance.public_url =~ /http:\/\//
end
- @instance.cdn_cname = "my_cname.com"
+ @instance.cdn_cname = "my_cname.com"
tests('cdn_cname').returns(0) do
@instance.public_url =~ /my_cname\.com/
end
@@ -67,7 +67,7 @@ Shindo.tests('Fog::Rackspace::Storage | directory', ['rackspace']) do
@service.instance_variable_set "@rackspace_cdn_ssl", true
tests('ssl').returns(0) do
@instance.public_url =~ /https:\/\/.+\.ssl\./
- end
+ end
@service.instance_variable_set "@rackspace_cdn_ssl", nil
end
@@ -78,13 +78,13 @@ Shindo.tests('Fog::Rackspace::Storage | directory', ['rackspace']) do
tests('#streaming_url').returns(0) do
@instance.streaming_url =~ /http:\/\/.+\.stream\./
end
-
+
end
tests("reload") do
@instance.reload
returns(nil) { @instance.instance_variable_get("@urls") }
returns(nil) { @instance.instance_variable_get("@files") }
- returns(nil) { @instance.instance_variable_get("@public") }
+ returns(nil) { @instance.instance_variable_get("@public") }
end
end
@@ -112,27 +112,27 @@ Shindo.tests('Fog::Rackspace::Storage | directory', ['rackspace']) do
@instance.save
container_meta_attributes
end
-
+
tests('should retrieve metadata when necessary') do
@service.put_container(@instance.key, {"X-Container-Meta-List-Test"=>"true"} )
dir = @service.directories.find {|d| d.key == @instance.key }
returns(nil) { dir.instance_variable_get("@metadata") }
returns('true') { dir.metadata[:list_test] }
end
-
+
tests("should reload metadata after calling reload").returns("42") do
@service.put_container @instance.key, "X-Container-Meta-Answer" => 42
@instance.reload
@instance.metadata[:answer]
end
-
+
tests("should reload metadata after calling reload").returns("42") do
@service.put_container @instance.key, "X-Container-Meta-Answer" => 42
@instance.reload
@instance.metadata[:answer]
end
-
+
end
end
-
-end
\ No newline at end of file
+
+end
diff --git a/tests/rackspace/models/storage/file_tests.rb b/tests/rackspace/models/storage/file_tests.rb
index 4c204d4..160f008 100644
--- a/tests/rackspace/models/storage/file_tests.rb
+++ b/tests/rackspace/models/storage/file_tests.rb
@@ -68,7 +68,7 @@ Shindo.tests('Fog::Rackspace::Storage | file', ['rackspace']) do
tests('#metadata') do
before do
- @instance.metadata[:foo] = 'bar'
+ @instance.metadata[:foo] = 'bar'
@instance.save
end
@@ -89,17 +89,17 @@ Shindo.tests('Fog::Rackspace::Storage | file', ['rackspace']) do
@instance.metadata[:foo] = nil
@instance.save
object_meta_attributes
- end
+ end
tests("removes one key while leaving the other") do
@instance.metadata[:color] = "green"
@instance.save
returns({"X-Object-Meta-Foo"=>"bar", "X-Object-Meta-Color"=>"green"}) { object_meta_attributes }
-
+
tests("set metadata[:color] = nil").returns({"X-Object-Meta-Foo"=>"bar"}) do
@instance.metadata[:color] = nil
@instance.save
-
+
object_meta_attributes
end
end
@@ -118,10 +118,10 @@ Shindo.tests('Fog::Rackspace::Storage | file', ['rackspace']) do
ensure
@file.destroy if @file
end
-
+
tests('urls') do
tests('no CDN') do
-
+
tests('url') do
tests('http').succeeds do
expire_time = Time.now + 3600
@@ -152,7 +152,7 @@ Shindo.tests('Fog::Rackspace::Storage | file', ['rackspace']) do
@directory.service.instance_variable_set "@rackspace_cdn_ssl", true
tests('ssl').returns(nil) do
@instance.public_url
- end
+ end
@directory.service.instance_variable_set "@rackspace_cdn_ssl", nil
end
@@ -168,12 +168,12 @@ Shindo.tests('Fog::Rackspace::Storage | file', ['rackspace']) do
tests('#public_url') do
@directory.public = true
@directory.save
-
+
tests('http').returns(0) do
@instance.public_url =~ /http:\/\/.*#{@instance.key}/
end
- @directory.cdn_cname = "my_cname.com"
+ @directory.cdn_cname = "my_cname.com"
tests('cdn_cname').returns(0) do
@instance.public_url =~ /my_cname\.com.*#{@instance.key}/
end
@@ -182,7 +182,7 @@ Shindo.tests('Fog::Rackspace::Storage | file', ['rackspace']) do
@directory.service.instance_variable_set "@rackspace_cdn_ssl", true
tests('ssl').returns(0) do
@instance.public_url =~ /https:\/\/.+\.ssl\..*#{@instance.key}/
- end
+ end
@directory.service.instance_variable_set "@rackspace_cdn_ssl", nil
end
@@ -216,33 +216,33 @@ Shindo.tests('Fog::Rackspace::Storage | file', ['rackspace']) do
end
end
end
-
+
tests('#metadata keys') do
-
+
after do
clear_metadata
@instance.save
end
- @instance.metadata[:foo_bar] = 'baz'
+ @instance.metadata[:foo_bar] = 'baz'
tests("should support compound key names").returns('baz') do
@instance.save
object_meta_attributes['X-Object-Meta-Foo-Bar']
end
- @instance.metadata['foo'] = 'bar'
+ @instance.metadata['foo'] = 'bar'
tests("should support string keys").returns('bar') do
@instance.save
object_meta_attributes['X-Object-Meta-Foo']
end
- @instance.metadata['foo_bar'] = 'baz'
+ @instance.metadata['foo_bar'] = 'baz'
tests("should support compound string key names").returns('baz') do
@instance.save
object_meta_attributes['X-Object-Meta-Foo-Bar']
end
- @instance.metadata['foo-bar'] = 'baz'
+ @instance.metadata['foo-bar'] = 'baz'
tests("should support hyphenated keys").returns('baz') do
@instance.save
object_meta_attributes['X-Object-Meta-Foo-Bar']
@@ -258,41 +258,43 @@ Shindo.tests('Fog::Rackspace::Storage | file', ['rackspace']) do
end
@instance.access_control_allow_origin = 'http://example.com'
- @instance.save
+ @instance.save
tests("#access_control_allow_origin should return access control attribute").returns('http://example.com') do
@instance.access_control_allow_origin
end
@instance.access_control_allow_origin = 'foo'
- @instance.save
+ @instance.save
tests("#access_control_allow_origin= should update access_control_allow_origin").returns('bar') do
@instance.access_control_allow_origin = 'bar'
- @instance.save
+ @instance.save
@instance.access_control_allow_origin
end
tests("#access_control_allow_origin= should not blow up on nil") do
@instance.access_control_allow_origin = nil
- @instance.save
+ @instance.save
end
end
tests("#delete_at") do
+ @delete_at_time = (Time.now + 300).to_i
+
tests("#delete_at should default to nil").returns(nil) do
@instance.delete_at
end
- @instance.delete_at = 1
+ @instance.delete_at = @delete_at_time
@instance.save
- tests("#delete_at should return delete_at attribute").returns(1) do
+ tests("#delete_at should return delete_at attribute").returns(@delete_at_time) do
@instance.delete_at
end
- @instance.delete_at = 1
+ @instance.delete_at = @delete_at_time
@instance.save
- tests("#delete_at= should update delete_at").returns(2) do
- @instance.delete_at = 2
+ tests("#delete_at= should update delete_at").returns(@delete_at_time + 100) do
+ @instance.delete_at = @delete_at_time + 100
@instance.save
@instance.delete_at
end
@@ -304,20 +306,22 @@ Shindo.tests('Fog::Rackspace::Storage | file', ['rackspace']) do
end
tests("#delete_after") do
+ @delete_after_time = (Time.now + 300).to_i
+
tests("#delete_after should default to nil").returns(nil) do
@instance.delete_after
end
- @instance.delete_after = 1
+ @instance.delete_after = @delete_after_time
@instance.save
- tests("#delete_after should return delete_after attribute").returns(1) do
+ tests("#delete_after should return delete_after attribute").returns(@delete_after_time) do
@instance.delete_after
end
- @instance.delete_after = 1
+ @instance.delete_after = @delete_after_time
@instance.save
- tests("#delete_after= should update delete_after").returns(2) do
- @instance.delete_after = 2
+ tests("#delete_after= should update delete_after").returns(@delete_after_time + 100) do
+ @instance.delete_after = @delete_after_time + 100
@instance.save
@instance.delete_after
end
@@ -329,13 +333,12 @@ Shindo.tests('Fog::Rackspace::Storage | file', ['rackspace']) do
end
end
-
model_tests(@directory.files, file_attributes, Fog.mocking?) do
tests("#origin") do
tests("#origin should default to nil").returns(nil) do
- @instance.save
+ @instance.save
@instance.origin
end
@@ -347,7 +350,7 @@ Shindo.tests('Fog::Rackspace::Storage | file', ['rackspace']) do
@instance.attributes.delete('Origin')
@instance.origin = 'foo'
- @instance.save
+ @instance.save
tests("#origin= should update origin").returns('bar') do
@instance.origin = 'bar'
@instance.save
@@ -356,7 +359,7 @@ Shindo.tests('Fog::Rackspace::Storage | file', ['rackspace']) do
tests("#origin= should not blow up on nil") do
@instance.origin = nil
- @instance.save
+ @instance.save
end
end
diff --git a/tests/rackspace/models/storage/files_tests.rb b/tests/rackspace/models/storage/files_tests.rb
index 0124bbf..9eace79 100644
--- a/tests/rackspace/models/storage/files_tests.rb
+++ b/tests/rackspace/models/storage/files_tests.rb
@@ -10,7 +10,6 @@ Shindo.tests("Fog::Rackspace::Storage | files", ['rackspace', 'storage']) do
:public => true
}
-
tests('success') do
collection_tests(Fog::Storage[:rackspace].directories.create(directory_attributes).files, file_attributes, Fog.mocking?)
@@ -37,5 +36,4 @@ Shindo.tests("Fog::Rackspace::Storage | files", ['rackspace', 'storage']) do
@directory.destroy
end
-
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/models/storage/metadata_tests.rb b/tests/rackspace/models/storage/metadata_tests.rb
index 492bcbf..99db184 100644
--- a/tests/rackspace/models/storage/metadata_tests.rb
+++ b/tests/rackspace/models/storage/metadata_tests.rb
@@ -1,20 +1,20 @@
require 'fog/rackspace/models/storage/metadata'
require 'fog/rackspace/models/storage/directory'
+require 'fog/rackspace/models/storage/directories'
require 'fog/rackspace/models/storage/file'
-
Shindo.tests('Fog::Rackspace::Storage | metadata', ['rackspace']) do
-
+
def assert_directory(obj, assert_value)
metadata = Fog::Storage::Rackspace::Metadata.new obj
returns(assert_value) { metadata.send :directory? }
end
-
+
def assert_file(obj, assert_value)
metadata = Fog::Storage::Rackspace::Metadata.new obj
returns(assert_value) { metadata.send :file? }
end
-
+
tests('Directory') do
@directory = Fog::Storage::Rackspace::Directory.new
tests('#to_key') do
@@ -27,38 +27,73 @@ Shindo.tests('Fog::Rackspace::Storage | metadata', ['rackspace']) do
metadata.send(:to_key, "bad-key")
end
end
-
+
+ tests('#[]') do
+ tests('[:symbol_test]=42') do
+ metadata = Fog::Storage::Rackspace::Metadata.new @directory
+
+ metadata[:symbol_test] = 42
+ returns(42) { metadata[:symbol_test] }
+ returns(42) { metadata['symbol_test'] }
+ returns(nil) { metadata[:nil_test] }
+ end
+
+ tests('[\'string_test\']=55') do
+ metadata = Fog::Storage::Rackspace::Metadata.new @directory
+
+ metadata['string_test'] = 55
+ returns(55) { metadata[:string_test] }
+ returns(55) { metadata['string_test'] }
+ returns(nil) { metadata['nil_test'] }
+ end
+
+ tests('set string and symbol') do
+ metadata = Fog::Storage::Rackspace::Metadata.new @directory
+
+ metadata[:key_test] = 55
+ metadata['key_test'] = 55
+ returns(1) { metadata.size }
+ end
+
+ tests('key to remove').returns("X-Remove-Container-Meta-Thumbnail-Image") do
+ metadata = Fog::Storage::Rackspace::Metadata.new @directory
+
+ metadata.send(:to_header_key, :thumbnail_image, nil)
+ end
+ end
+
+
tests('#to_header_key') do
metadata = Fog::Storage::Rackspace::Metadata.new @directory
-
+
tests('key to add').returns("X-Container-Meta-Thumbnail-Image") do
metadata.send(:to_header_key, :thumbnail_image, true)
end
-
+
tests('key to remove').returns("X-Remove-Container-Meta-Thumbnail-Image") do
metadata.send(:to_header_key, :thumbnail_image, nil)
- end
+ end
end
-
+
tests('#to_headers').returns({"X-Container-Meta-Preview"=>true, "X-Remove-Container-Meta-Delete-Me"=>1}) do
metadata = Fog::Storage::Rackspace::Metadata.new @directory
metadata[:preview] = true
metadata[:delete_me] = nil
-
- metadata.to_headers
+
+ metadata.to_headers
end
-
+
tests("#from_headers").returns({:my_boolean=>"true", :my_integer=>"42", :my_string=>"I am a string"}) do
headers = {
"X-Container-Meta-My-Integer"=> "42",
- "X-Container-Meta-My-Boolean"=> "true",
- "X-Container-Meta-My-String"=> "I am a string"
+ "X-Container-Meta-My-Boolean"=> "true",
+ "X-Container-Meta-My-String"=> "I am a string"
}
metadata = Fog::Storage::Rackspace::Metadata.from_headers @directory, headers
metadata.data
end
-
+
tests("#delete").returns({"X-Remove-Container-Meta-Delete-Me"=>1}) do
metadata = Fog::Storage::Rackspace::Metadata.new @directory
metadata.delete(:delete_me)
@@ -67,7 +102,6 @@ Shindo.tests('Fog::Rackspace::Storage | metadata', ['rackspace']) do
end
end
-
tests('File') do
@file = Fog::Storage::Rackspace::File.new
tests('#to_key') do
@@ -90,7 +124,7 @@ Shindo.tests('Fog::Rackspace::Storage | metadata', ['rackspace']) do
tests('key to remove').returns("X-Remove-Object-Meta-Thumbnail-Image") do
metadata.send(:to_header_key, :thumbnail_image, nil)
- end
+ end
end
tests('#to_headers').returns({"X-Object-Meta-Preview"=>true, "X-Remove-Object-Meta-Delete-Me"=>1}) do
@@ -98,13 +132,13 @@ Shindo.tests('Fog::Rackspace::Storage | metadata', ['rackspace']) do
metadata[:preview] = true
metadata[:delete_me] = nil
- metadata.to_headers
+ metadata.to_headers
end
tests("#from_headers").returns({:my_boolean=>"true", :my_integer=>"42", :my_string=>"I am a string"}) do
headers = {
"X-Object-Meta-My-Integer"=> "42",
- "X-Object-Meta-My-Boolean"=> "true",
+ "X-Object-Meta-My-Boolean"=> "true",
"X-Object-Meta-My-String"=> "I am a string"
}
@@ -119,7 +153,7 @@ Shindo.tests('Fog::Rackspace::Storage | metadata', ['rackspace']) do
metadata.to_headers
end
end
-
+
tests("#respond_to?") do
tests('Should respond to all of the methods in Hash class').returns(true) do
metadata = Fog::Storage::Rackspace::Metadata.new @file
@@ -130,45 +164,45 @@ Shindo.tests('Fog::Rackspace::Storage | metadata', ['rackspace']) do
metadata.methods.all? {|method| metadata.respond_to?(method)}
end
end
-
+
tests("#method_missing").returns(true) do
metadata = Fog::Storage::Rackspace::Metadata.new @file
metadata[:test] = true
metadata[:test]
end
-
+
tests('#directory?') do
assert_directory Fog::Storage::Rackspace::Directories, true
- assert_directory Fog::Storage::Rackspace::Directory, true
+ assert_directory Fog::Storage::Rackspace::Directory, true
assert_directory Fog::Storage::Rackspace::Directory.new, true
assert_directory nil, false
assert_directory Fog::Storage::Rackspace::Files, false
assert_directory Fog::Storage::Rackspace::File, false
assert_directory Fog::Storage::Rackspace::File.new, false
- assert_directory "I am a string!", false
+ assert_directory "I am a string!", false
end
-
+
tests('#file?') do
assert_file Fog::Storage::Rackspace::Directories, false
- assert_file Fog::Storage::Rackspace::Directory, false
+ assert_file Fog::Storage::Rackspace::Directory, false
assert_file Fog::Storage::Rackspace::Directory.new, false
assert_file nil, false
assert_file Fog::Storage::Rackspace::Files, true
assert_file Fog::Storage::Rackspace::File, true
assert_file Fog::Storage::Rackspace::File.new, true
- assert_file "I am a string!", false
+ assert_file "I am a string!", false
end
-
+
tests('#parent_class') do
tests('Fog::Storage::Rackspace::Directory object') do
metadata = Fog::Storage::Rackspace::Metadata.new Fog::Storage::Rackspace::Directory.new
- returns(Fog::Storage::Rackspace::Directory) { metadata.send :parent_class }
+ returns(Fog::Storage::Rackspace::Directory) { metadata.send :parent_class }
end
tests('Fog::Storage::Rackspace::Directory class') do
metadata = Fog::Storage::Rackspace::Metadata.new Fog::Storage::Rackspace::Directory
- returns(Fog::Storage::Rackspace::Directory) { metadata.send :parent_class }
+ returns(Fog::Storage::Rackspace::Directory) { metadata.send :parent_class }
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/monitoring_tests.rb b/tests/rackspace/monitoring_tests.rb
index 95a69cb..f98b12c 100644
--- a/tests/rackspace/monitoring_tests.rb
+++ b/tests/rackspace/monitoring_tests.rb
@@ -23,7 +23,6 @@ Shindo.tests('Fog::Rackspace::Monitoring', ['rackspace','rackspace_monitoring'])
assert_method 'https://lon.identity.api.rackspacecloud.com/v2.0', :authenticate_v2
end
-
tests('current authentation') do
pending if Fog.mocking?
@@ -33,7 +32,7 @@ Shindo.tests('Fog::Rackspace::Monitoring', ['rackspace','rackspace_monitoring'])
returns(false, "path populated") { @service.instance_variable_get("@uri").host.nil? }
identity_service = @service.instance_variable_get("@identity_service")
returns(false, "identity service was used") { identity_service.nil? }
- returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").has_key?(:ssl_verify_peer) }
+ returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").key?(:ssl_verify_peer) }
@service.list_entities
end
tests('custom endpoint') do
@@ -74,4 +73,4 @@ Shindo.tests('Fog::Rackspace::Monitoring', ['rackspace','rackspace_monitoring'])
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/queues_tests.rb b/tests/rackspace/queues_tests.rb
index b187693..2bc04c7 100644
--- a/tests/rackspace/queues_tests.rb
+++ b/tests/rackspace/queues_tests.rb
@@ -35,7 +35,7 @@ Shindo.tests('Fog::Rackspace::Queues', ['rackspace']) do
identity_service = @service.instance_variable_get("@identity_service")
returns(false, "identity service was used") { identity_service.nil? }
- returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").has_key?(:ssl_verify_peer) }
+ returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").key?(:ssl_verify_peer) }
@service.queues
end
tests('dfw region').succeeds do
diff --git a/tests/rackspace/rackspace_tests.rb b/tests/rackspace/rackspace_tests.rb
index a9ee31e..1022bbc 100644
--- a/tests/rackspace/rackspace_tests.rb
+++ b/tests/rackspace/rackspace_tests.rb
@@ -53,4 +53,4 @@ Shindo.tests('Fog::Rackspace', ['rackspace']) do
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/requests/auto_scale/config_tests.rb b/tests/rackspace/requests/auto_scale/config_tests.rb
index 4a649ef..ba78382 100644
--- a/tests/rackspace/requests/auto_scale/config_tests.rb
+++ b/tests/rackspace/requests/auto_scale/config_tests.rb
@@ -1,5 +1,5 @@
Shindo.tests('Fog::Rackspace::AutoScale | config_tests', ['rackspace', 'rackspace_autoscale']) do
-
+
pending if Fog.mocking?
service = Fog::Rackspace::AutoScale.new :rackspace_region => :ord
@@ -94,4 +94,4 @@ Shindo.tests('Fog::Rackspace::AutoScale | config_tests', ['rackspace', 'rackspac
# service.delete_group(@group_id)
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/requests/auto_scale/group_tests.rb b/tests/rackspace/requests/auto_scale/group_tests.rb
index c2a86c7..0cb4b43 100644
--- a/tests/rackspace/requests/auto_scale/group_tests.rb
+++ b/tests/rackspace/requests/auto_scale/group_tests.rb
@@ -1,8 +1,8 @@
Shindo.tests('Fog::Rackspace::AutoScale | group_tests', ['rackspace', 'rackspace_autoscale']) do
-
- pending if Fog.mocking?
+
+ pending if Fog.mocking?
service = Fog::Rackspace::AutoScale.new :rackspace_region => :ord
-
+
tests('success') do
tests('#create new group').formats(GROUP_FORMAT) do
response = service.create_group(LAUNCH_CONFIG_OPTIONS, GROUP_CONFIG_OPTIONS, POLICIES_OPTIONS).body
@@ -47,4 +47,4 @@ Shindo.tests('Fog::Rackspace::AutoScale | group_tests', ['rackspace', 'rackspace
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/requests/auto_scale/helper.rb b/tests/rackspace/requests/auto_scale/helper.rb
index c63ec80..0403976 100644
--- a/tests/rackspace/requests/auto_scale/helper.rb
+++ b/tests/rackspace/requests/auto_scale/helper.rb
@@ -28,23 +28,23 @@ GROUP_STATE_FORMAT = {
}
GET_GROUP_HEADERS_FORMAT = {
- "Content-Type"=>String,
- "Via"=>String,
- "x-response-id"=>String,
- "Date"=>String,
- "Transfer-Encoding"=>String,
+ "Content-Type"=>String,
+ "Via"=>String,
+ "x-response-id"=>String,
+ "Date"=>String,
+ "Transfer-Encoding"=>String,
"Server"=>String
}
GROUP_DELETE_DATA_FORMAT = {
:headers=> {
- "Content-Type"=>String,
- "Via"=>String,
- "x-response-id"=>String,
- "Date"=>String,
+ "Content-Type"=>String,
+ "Via"=>String,
+ "x-response-id"=>String,
+ "Date"=>String,
"Server"=>String
- },
- :status=>Integer,
+ },
+ :status=>Integer,
:remote_ip=>String
}
@@ -97,11 +97,11 @@ GROUP_CONFIG_FORMAT = {
}
POLICY_FORMAT = {
- "name"=> String,
- "links"=> Array,
- "cooldown"=>Integer,
- "type"=>String,
- "id"=>String,
+ "name"=> String,
+ "links"=> Array,
+ "cooldown"=>Integer,
+ "type"=>String,
+ "id"=>String,
"change"=>Integer
}
@@ -221,4 +221,4 @@ def deactive_auto_scale_group(group)
config.min_entities = 0
config.max_entities = 0
config.save
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/requests/auto_scale/policy_tests.rb b/tests/rackspace/requests/auto_scale/policy_tests.rb
index b718cfc..a1ac911 100644
--- a/tests/rackspace/requests/auto_scale/policy_tests.rb
+++ b/tests/rackspace/requests/auto_scale/policy_tests.rb
@@ -1,4 +1,4 @@
-Shindo.tests('Fog::Rackspace::AutoScale | policy_tests', ['rackspace', 'rackspace_autoscale']) do
+Shindo.tests('Fog::Rackspace::AutoScale | policy_tests', ['rackspace', 'rackspace_autoscale']) do
pending if Fog.mocking?
service = Fog::Rackspace::AutoScale.new :rackspace_region => :ord
@@ -58,14 +58,14 @@ Shindo.tests('Fog::Rackspace::AutoScale | policy_tests', ['rackspace', 'rackspac
tests('#update policy').raises(Fog::Rackspace::AutoScale::BadRequest) do
service.update_policy(@group_id, 123, {})
end
-
+
tests('#execute policy').raises(Fog::Rackspace::AutoScale::NotFound) do
service.execute_policy(@group_id, 123)
end
-
+
tests('#delete policy').raises(Fog::Rackspace::AutoScale::NotFound) do
service.delete_policy(@group_id, 123)
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/requests/auto_scale/webhook_tests.rb b/tests/rackspace/requests/auto_scale/webhook_tests.rb
index e1f5d83..3f4a539 100644
--- a/tests/rackspace/requests/auto_scale/webhook_tests.rb
+++ b/tests/rackspace/requests/auto_scale/webhook_tests.rb
@@ -55,4 +55,4 @@ Shindo.tests('Fog::Rackspace::AutoScale | webhook_tests', ['rackspace', 'rackspa
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/requests/block_storage/volume_tests.rb b/tests/rackspace/requests/block_storage/volume_tests.rb
index 309a53f..c7422f5 100644
--- a/tests/rackspace/requests/block_storage/volume_tests.rb
+++ b/tests/rackspace/requests/block_storage/volume_tests.rb
@@ -10,6 +10,7 @@ Shindo.tests('Fog::Rackspace::BlockStorage | volume_tests', ['rackspace']) do
'volume_type' => String,
'availability_zone' => String,
'snapshot_id' => Fog::Nullable::String,
+ 'image_id' => Fog::Nullable::String,
'attachments' => Array,
'metadata' => Hash
}
@@ -25,12 +26,23 @@ Shindo.tests('Fog::Rackspace::BlockStorage | volume_tests', ['rackspace']) do
service = Fog::Rackspace::BlockStorage.new
tests('success') do
- id = nil
+ ids = []
size = 100
tests("#create_volume(#{size})").formats(get_volume_format) do
data = service.create_volume(size).body
- id = data['volume']['id']
+ ids << data['volume']['id']
+ data
+ end
+
+ tests("#create_volume for a bootable volume").formats(get_volume_format) do
+ # Find a suitable image.
+ image_id = rackspace_test_image_id(Fog::Compute.new(:provider => 'rackspace'))
+ data = service.create_volume(size, :image_id => image_id).body
+ tests("assigned an image id").returns(image_id) do
+ data['volume']['image_id']
+ end
+ ids << data['volume']['id']
data
end
@@ -38,12 +50,16 @@ Shindo.tests('Fog::Rackspace::BlockStorage | volume_tests', ['rackspace']) do
service.list_volumes.body
end
- tests("#get_volume(#{id})").formats(get_volume_format) do
- service.get_volume(id).body
+ tests("#get_volume(#{ids.first})").formats(get_volume_format) do
+ service.get_volume(ids.first).body
end
- tests("#delete_volume(#{id})").succeeds do
- service.delete_volume(id)
+ ids.each do |id|
+ tests("#delete_volume(#{id})").succeeds do
+ wait_for_volume_state(service, id, 'available')
+
+ service.delete_volume(id)
+ end
end
end
diff --git a/tests/rackspace/requests/cdn/cdn_tests.rb b/tests/rackspace/requests/cdn/cdn_tests.rb
index 8745f50..f1684ca 100644
--- a/tests/rackspace/requests/cdn/cdn_tests.rb
+++ b/tests/rackspace/requests/cdn/cdn_tests.rb
@@ -12,7 +12,7 @@ Shindo.tests('Fog::CDN[:rackspace] | CDN requests', ['rackspace']) do
"cdn_ssl_uri" => String,
"cdn_uri" => String
}]
-
+
@container_headers = {
"Content-Length" => String,
"X-Cdn-Enabled" => String,
@@ -25,13 +25,13 @@ Shindo.tests('Fog::CDN[:rackspace] | CDN requests', ['rackspace']) do
"X-Trans-Id" => String,
"Date" => String
}
-
- begin
+
+ begin
unless Fog.mocking?
@directory = Fog::Storage[:rackspace].directories.create(:key => 'fogcontainertests')
@file = @directory.files.create(:key => 'fog_object', :body => lorem_file)
end
-
+
tests('success') do
tests("#put_container('fogcontainertests')").succeeds do
@@ -52,7 +52,7 @@ Shindo.tests('Fog::CDN[:rackspace] | CDN requests', ['rackspace']) do
#NOTE: you are only allow 25 object purges per day. If this fails, you may be over the limit
tests("#delete_object('fog_object')").succeeds do
- Fog::CDN[:rackspace].delete_object('fogcontainertests', 'fog_object')
+ Fog::CDN[:rackspace].delete_object('fogcontainertests', 'fog_object')
end
end
ensure
@@ -61,16 +61,15 @@ Shindo.tests('Fog::CDN[:rackspace] | CDN requests', ['rackspace']) do
@directory.destroy if @directory
end
end
-
+
tests('failure') do
-
+
tests("#head_container('missing_container')").raises(Fog::Storage::Rackspace::NotFound) do
Fog::CDN[:rackspace].head_container('missing_container')
end
-
+
tests("#post_container('missing_container')").raises(Fog::Storage::Rackspace::NotFound) do
Fog::CDN[:rackspace].post_container('missing_container', 'X-TTL' => 5000)
end
end
end
-
diff --git a/tests/rackspace/requests/compute/address_tests.rb b/tests/rackspace/requests/compute/address_tests.rb
index ef38c70..c7d1ee7 100644
--- a/tests/rackspace/requests/compute/address_tests.rb
+++ b/tests/rackspace/requests/compute/address_tests.rb
@@ -1,9 +1,9 @@
Shindo.tests('Fog::Compute[:rackspace] | address requests', ['rackspace']) do
@service = Fog::Compute.new(:provider => :rackspace, :version => :v1)
-
+
tests('success') do
-
+
@server = @service.servers.create(:flavor_id => 1, :image_id => 19)
tests("#list_addresses(#{@server.id})").formats({'addresses' => {'private' => [String], 'public' => [String]}}) do
@@ -24,7 +24,7 @@ Shindo.tests('Fog::Compute[:rackspace] | address requests', ['rackspace']) do
end
tests('failure') do
-
+
tests('#list_addresses(0)').raises(Fog::Compute::Rackspace::NotFound) do
@service.list_addresses(0)
end
diff --git a/tests/rackspace/requests/compute/flavor_tests.rb b/tests/rackspace/requests/compute/flavor_tests.rb
index 59874a6..1969f6a 100644
--- a/tests/rackspace/requests/compute/flavor_tests.rb
+++ b/tests/rackspace/requests/compute/flavor_tests.rb
@@ -7,7 +7,7 @@ Shindo.tests('Fog::Compute[:rackspace] | flavor requests', ['rackspace']) do
'ram' => Integer
}
- @service = Fog::Compute.new(:provider => :rackspace, :version => :v1)
+ @service = Fog::Compute.new(:provider => :rackspace, :version => :v1)
tests('success') do
tests('#get_flavor_details(1)').formats(@flavor_format) do
diff --git a/tests/rackspace/requests/compute/helper.rb b/tests/rackspace/requests/compute/helper.rb
index d1fae4f..6ef36c6 100644
--- a/tests/rackspace/requests/compute/helper.rb
+++ b/tests/rackspace/requests/compute/helper.rb
@@ -1,16 +1,10 @@
class Rackspace
-
module Compute
-
module Formats
-
SUMMARY = {
'id' => Integer,
'name' => String
}
-
end
-
end
-
end
diff --git a/tests/rackspace/requests/compute/image_tests.rb b/tests/rackspace/requests/compute/image_tests.rb
index 4f486b4..2307be1 100644
--- a/tests/rackspace/requests/compute/image_tests.rb
+++ b/tests/rackspace/requests/compute/image_tests.rb
@@ -10,7 +10,7 @@ Shindo.tests('Fog::Compute[:rackspace] | image requests', ['rackspace']) do
'updated' => String
}
- @service = Fog::Compute.new(:provider => :rackspace, :version => :v1)
+ @service = Fog::Compute.new(:provider => :rackspace, :version => :v1)
tests('success') do
diff --git a/tests/rackspace/requests/compute/server_tests.rb b/tests/rackspace/requests/compute/server_tests.rb
index 4d62297..d17c178 100644
--- a/tests/rackspace/requests/compute/server_tests.rb
+++ b/tests/rackspace/requests/compute/server_tests.rb
@@ -14,8 +14,8 @@ Shindo.tests('Fog::Compute[:rackspace] | server requests', ['rackspace']) do
'progress' => Integer,
'status' => String
}
-
- @service = Fog::Compute.new(:provider => :rackspace, :version => :v1)
+
+ @service = Fog::Compute.new(:provider => :rackspace, :version => :v1)
tests('success') do
diff --git a/tests/rackspace/requests/compute_v2/address_tests.rb b/tests/rackspace/requests/compute_v2/address_tests.rb
index 361082c..296ed67 100644
--- a/tests/rackspace/requests/compute_v2/address_tests.rb
+++ b/tests/rackspace/requests/compute_v2/address_tests.rb
@@ -3,7 +3,7 @@ Shindo.tests('Fog::Compute::RackspaceV2 | address requests', ['rackspace']) do
@service = Fog::Compute.new(:provider => 'Rackspace', :version => 'V2')
image_id = rackspace_test_image_id(@service)
flavor_id = rackspace_test_flavor_id(@service)
-
+
tests('success') do
unless Fog.mocking?
@server = @service.servers.create(:flavor_id => flavor_id, :image_id => image_id, :name => "address-tests-#{Time.now.to_i}")
@@ -12,17 +12,17 @@ Shindo.tests('Fog::Compute::RackspaceV2 | address requests', ['rackspace']) do
else
@server_id = 42
end
-
- address_format = { "addresses"=> {
- "private" => [{"addr" => String, "version" => Integer}],
+
+ address_format = { "addresses"=> {
+ "private" => [{"addr" => String, "version" => Integer}],
"public" => [{"addr" => String, "version" => Integer }, {"addr"=> String, "version" => Integer}]}
}
- begin
+ begin
tests("#list_addresses(#{@server_id})").formats(address_format) do
@service.list_addresses(@server_id).body
end
-
+
tests("#list_addresses_by_network(#{@server_id}, 'private')").formats(address_format["addresses"].reject {|k,v| k != "private"}) do
@service.list_addresses_by_network(@server_id, "private").body
end
diff --git a/tests/rackspace/requests/compute_v2/attachment_tests.rb b/tests/rackspace/requests/compute_v2/attachment_tests.rb
index e5fd3af..1b2379f 100644
--- a/tests/rackspace/requests/compute_v2/attachment_tests.rb
+++ b/tests/rackspace/requests/compute_v2/attachment_tests.rb
@@ -24,7 +24,6 @@ Shindo.tests('Fog::Compute::RackspaceV2 | attachment_tests', ['rackspace']) do
volume_id = block_storage_service.create_volume(100).body['volume']['id']
device_id = '/dev/xvde'
-
tests('success') do
wait_for_request("Waiting for server to become ready") do
compute_service.get_server(server_id).body['server']['status'] == 'ACTIVE'
diff --git a/tests/rackspace/requests/compute_v2/image_tests.rb b/tests/rackspace/requests/compute_v2/image_tests.rb
index 2c46f99..895cc15 100644
--- a/tests/rackspace/requests/compute_v2/image_tests.rb
+++ b/tests/rackspace/requests/compute_v2/image_tests.rb
@@ -1,6 +1,6 @@
Shindo.tests('Fog::Compute::RackspaceV2 | image_tests', ['rackspace']) do
service = Fog::Compute.new(:provider => 'Rackspace', :version => 'V2')
-
+
image_format = {
'id' => String,
'name' => String,
@@ -32,7 +32,7 @@ Shindo.tests('Fog::Compute::RackspaceV2 | image_tests', ['rackspace']) do
begin
test_time = Time.now.to_i.to_s
@server = service.servers.create(:name => "fog-image-tests_#{test_time}",
- :flavor_id => rackspace_test_flavor_id(service),
+ :flavor_id => rackspace_test_flavor_id(service),
:image_id => rackspace_test_image_id(service))
@server.wait_for { ready? }
@image_id = nil
@@ -70,7 +70,7 @@ Shindo.tests('Fog::Compute::RackspaceV2 | image_tests', ['rackspace']) do
service.get_image(Fog::Rackspace::MockData::NOT_FOUND_ID)
end
end
- ensure
+ ensure
@image.destroy if @image
@server.destroy if @server
end
diff --git a/tests/rackspace/requests/compute_v2/metadata_tests.rb b/tests/rackspace/requests/compute_v2/metadata_tests.rb
index 1b42cdf..3617453 100644
--- a/tests/rackspace/requests/compute_v2/metadata_tests.rb
+++ b/tests/rackspace/requests/compute_v2/metadata_tests.rb
@@ -1,22 +1,22 @@
Shindo.tests('Fog::Compute::RackspaceV2 | metadata_tests', ['rackspace']) do
-
+
@service = Fog::Compute.new(:provider => 'Rackspace', :version => 'V2')
image_id = rackspace_test_image_id(@service)
flavor_id = rackspace_test_flavor_id(@service)
-
+
tests('success') do
begin
metadata = {"tag" => "database"}
-
+
unless Fog.mocking?
name = "fog-server-metadata-#{Time.now.to_i}"
- @server = @service.servers.create(:name => name,
+ @server = @service.servers.create(:name => name,
:flavor_id => flavor_id,
:image_id => image_id,
:metadata => metadata)
@server.wait_for { ready? }
-
-
+
+
@server_id = @server.id
@image = @server.create_image(name, :metadata => metadata)
@image_id = @image.id
@@ -24,7 +24,7 @@ Shindo.tests('Fog::Compute::RackspaceV2 | metadata_tests', ['rackspace']) do
@image_id = 1
@server_id = 1
end
-
+
tests("servers") do
tests('list_metadata').returns("metadata" => metadata) do
@service.list_metadata("servers", @server_id).body
@@ -45,21 +45,21 @@ Shindo.tests('Fog::Compute::RackspaceV2 | metadata_tests', ['rackspace']) do
@service.delete_metadata_item("servers", @server_id, "environment")
end
end
-
+
tests("images") do
@image.wait_for { ready? } unless Fog.mocking?
-
+
tests('list_metadata').returns(metadata) do
h = @service.list_metadata("images", @image_id).body
h["metadata"].reject {|k,v| k.downcase != "tag"} #only look at the metadata we created
end
tests('set_metadata').returns({"environment" => "dev"}) do
h = @service.set_metadata("images", @image_id, {"environment" => "dev"}).body
- h["metadata"].reject {|k,v| k.downcase != "environment"} #only look at the metadata we created
+ h["metadata"].reject {|k,v| k.downcase != "environment"} #only look at the metadata we created
end
tests('update_metadata').returns({"environment" => "dev", "tag" => "database"}) do
h = @service.update_metadata("images", @image_id, {"environment" => "dev", "tag" => "database"}).body
- h["metadata"].reject {|k,v| !['environment', 'tag'].include?(k.downcase)} #only look at the metadata we created
+ h["metadata"].reject {|k,v| !['environment', 'tag'].include?(k.downcase)} #only look at the metadata we created
end
tests('get_metadata_item').returns("meta" => {"environment" => "dev"}) do
@service.get_metadata_item("images", @image_id, "environment").body
@@ -73,7 +73,7 @@ Shindo.tests('Fog::Compute::RackspaceV2 | metadata_tests', ['rackspace']) do
end
ensure
@image.destroy if @image
- @server.destroy if @server
+ @server.destroy if @server
end
end
@@ -93,14 +93,12 @@ Shindo.tests('Fog::Compute::RackspaceV2 | metadata_tests', ['rackspace']) do
@service.get_metadata_item(collection, 0, "environment")
end
tests('set_server_metadata_item').raises(Fog::Compute::RackspaceV2::NotFound) do
- @service.set_metadata_item(collection, 0, "environment", "test")
+ @service.set_metadata_item(collection, 0, "environment", "test")
end
tests('delete_server_metadata_item').raises(Fog::Compute::RackspaceV2::NotFound) do
- @service.delete_metadata_item(collection, 0, "environment")
+ @service.delete_metadata_item(collection, 0, "environment")
end
end
end
end
end
-
-
diff --git a/tests/rackspace/requests/compute_v2/server_tests.rb b/tests/rackspace/requests/compute_v2/server_tests.rb
index 486d066..8abf3b9 100644
--- a/tests/rackspace/requests/compute_v2/server_tests.rb
+++ b/tests/rackspace/requests/compute_v2/server_tests.rb
@@ -61,6 +61,11 @@ Shindo.tests('Fog::Compute::RackspaceV2 | server_tests', ['rackspace']) do
server_name = "fog#{Time.now.to_i.to_s}"
image_id = rackspace_test_image_id(service)
flavor_id = rackspace_test_flavor_id(service)
+ bootable_flavor_id = if Fog.mocking?
+ flavor_id
+ else
+ service.flavors.find { |f| f.name =~ /Performance/ }.id
+ end
tests("#create_server(#{server_name}, #{image_id}, #{flavor_id}, 1, 1)").formats(create_server_format) do
body = service.create_server(server_name, image_id, flavor_id, 1, 1).body
@@ -68,7 +73,29 @@ Shindo.tests('Fog::Compute::RackspaceV2 | server_tests', ['rackspace']) do
body
end
wait_for_server_state(service, server_id, 'ACTIVE', 'ERROR')
-
+
+ tests("#create_server(#{server_name}_bfv_1, '', #{flavor_id}, 1, 1, :boot_volume_id => bootable_volume_id)").succeeds do
+ # First, create a bootable volume.
+ volume_service = Fog::Rackspace::BlockStorage.new
+ bootable_volume_id = volume_service.create_volume(100, :image_id => image_id).body['volume']['id']
+ wait_for_volume_state(volume_service, bootable_volume_id, 'available')
+
+ body = service.create_server(server_name + "_bfv_1", '', bootable_flavor_id, 1, 1, :boot_volume_id => bootable_volume_id).body
+ bfv_server_id = body['server']['id']
+ wait_for_server_state(service, bfv_server_id, 'ACTIVE', 'ERROR')
+ service.delete_server(bfv_server_id)
+
+ wait_for_volume_state(volume_service, bootable_volume_id, 'available')
+ volume_service.delete_volume(bootable_volume_id)
+ end
+
+ tests("#create_server(#{server_name}_bfv_2, '', #{flavor_id}, 1, 1, :boot_image_id => #{image_id})").succeeds do
+ body = service.create_server(server_name + "_bfv_2", '', bootable_flavor_id, 1, 1, :boot_image_id => image_id).body
+ bfv_server_id = body['server']['id']
+ wait_for_server_state(service, bfv_server_id, 'ACTIVE', 'ERROR')
+ service.delete_server(bfv_server_id)
+ end
+
tests('#list_servers').formats(list_servers_format, false) do
service.list_servers.body
end
@@ -80,10 +107,10 @@ Shindo.tests('Fog::Compute::RackspaceV2 | server_tests', ['rackspace']) do
tests("#update_server(#{server_id}, #{server_name}_update) LEGACY").formats(get_server_format) do
service.update_server(server_id, "#{server_name}_update").body
end
-
+
tests("#update_server(#{server_id}, { 'name' => #{server_name}_update)} ").formats(get_server_format) do
service.update_server(server_id, 'name' => "#{server_name}_update").body
- end
+ end
tests('#change_server_password').succeeds do
service.change_server_password(server_id, 'some_server_password')
@@ -101,13 +128,13 @@ Shindo.tests('Fog::Compute::RackspaceV2 | server_tests', ['rackspace']) do
end
wait_for_server_state(service, server_id, 'ACTIVE', 'ERROR')
sleep 120 unless Fog.mocking?
-
+
tests('#resize_server').succeeds do
resize_flavor_id = Fog.mocking? ? flavor_id : service.flavors[1].id
service.resize_server(server_id, resize_flavor_id)
end
wait_for_server_state(service, server_id, 'VERIFY_RESIZE', 'ACTIVE')
-
+
tests('#confirm_resize_server').succeeds do
service.confirm_resize_server(server_id)
end
@@ -136,6 +163,6 @@ Shindo.tests('Fog::Compute::RackspaceV2 | server_tests', ['rackspace']) do
tests('#delete_server').succeeds do
service.delete_server(server_id)
- end
- end
+ end
+ end
end
diff --git a/tests/rackspace/requests/dns/dns_tests.rb b/tests/rackspace/requests/dns/dns_tests.rb
index af8c595..362b78c 100644
--- a/tests/rackspace/requests/dns/dns_tests.rb
+++ b/tests/rackspace/requests/dns/dns_tests.rb
@@ -93,7 +93,7 @@ Shindo.tests('Fog::DNS[:rackspace] | DNS requests', ['rackspace', 'dns']) do
wait_for Fog::DNS[:rackspace], Fog::DNS[:rackspace].remove_domain(@root_domain_id, :delete_subdomains => true)
test('domain and subdomains were really deleted') do
- (Fog::DNS[:rackspace].list_domains.body['domains'].collect { |domain| domain['name'] } & [domain_name, 'subdomain.' + domain_name]).empty?
+ (Fog::DNS[:rackspace].list_domains.body['domains'].map { |domain| domain['name'] } & [domain_name, 'subdomain.' + domain_name]).empty?
end
end
end
diff --git a/tests/rackspace/requests/dns/helper.rb b/tests/rackspace/requests/dns/helper.rb
index 84c4c25..1b11827 100644
--- a/tests/rackspace/requests/dns/helper.rb
+++ b/tests/rackspace/requests/dns/helper.rb
@@ -106,7 +106,7 @@ def domains_tests(service, domains_attributes, custom_delete = false)
tests("create_domains(#{domains_attributes})").formats(CREATE_DOMAINS_FORMAT) do
response = wait_for service, service.create_domains(domains_attributes)
@domain_details = response.body['response']['domains']
- @domain_ids = @domain_details.collect { |domain| domain['id'] }
+ @domain_ids = @domain_details.map { |domain| domain['id'] }
response.body['response']
end
@@ -122,5 +122,3 @@ def domains_tests(service, domains_attributes, custom_delete = false)
end
end
end
-
-
diff --git a/tests/rackspace/requests/dns/records_tests.rb b/tests/rackspace/requests/dns/records_tests.rb
index d066e31..98c1527 100644
--- a/tests/rackspace/requests/dns/records_tests.rb
+++ b/tests/rackspace/requests/dns/records_tests.rb
@@ -41,7 +41,7 @@ Shindo.tests('Fog::DNS[:rackspace] | dns records requests', ['rackspace', 'dns']
tests("add_records(#{@domain_id}, #{records_attributes})").formats(RECORD_LIST_FORMAT) do
response = wait_for Fog::DNS[:rackspace], Fog::DNS[:rackspace].add_records(@domain_id, records_attributes)
- @record_ids = response.body['response']['records'].collect { |record| record['id'] }
+ @record_ids = response.body['response']['records'].map { |record| record['id'] }
response.body['response']
end
diff --git a/tests/rackspace/requests/identity/token_tests.rb b/tests/rackspace/requests/identity/token_tests.rb
index 29a4c2b..9570599 100644
--- a/tests/rackspace/requests/identity/token_tests.rb
+++ b/tests/rackspace/requests/identity/token_tests.rb
@@ -58,7 +58,7 @@ Shindo.tests('Fog::Rackspace::Identity | tokens', ['rackspace']) do
connection = identity_service.instance_variable_get("@connection")
excon = connection.instance_variable_get("@excon")
data = excon.instance_variable_get("@data")
- data.has_key?(:ssl_verify_peer)
+ data.key?(:ssl_verify_peer)
end
end
diff --git a/tests/rackspace/requests/load_balancers/get_stats_tests.rb b/tests/rackspace/requests/load_balancers/get_stats_tests.rb
index ebb8b34..a2e4d93 100644
--- a/tests/rackspace/requests/load_balancers/get_stats_tests.rb
+++ b/tests/rackspace/requests/load_balancers/get_stats_tests.rb
@@ -10,4 +10,4 @@ Shindo.tests('Fog::Rackspace::LoadBalancers | load_balancer_get_stats', ['racksp
end
end
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/requests/load_balancers/helper.rb b/tests/rackspace/requests/load_balancers/helper.rb
index 407462b..b595338 100644
--- a/tests/rackspace/requests/load_balancers/helper.rb
+++ b/tests/rackspace/requests/load_balancers/helper.rb
@@ -160,7 +160,7 @@ LOAD_BALANCER_FORMAT = {
'timeout' => Integer,
'cluster' => { 'name' => String },
'virtualIps' => [VIRTUAL_IP_FORMAT],
- 'nodes' => [SINGLE_NODE_FORMAT],
+ 'nodes' => Fog::Nullable::Array,
'created' => { 'time' => String },
'updated' => { 'time' => String },
'contentCaching' => { 'enabled' => Fog::Boolean }
@@ -227,5 +227,3 @@ YlnFahKZ2j0CpYvg0lJjfN0Lvj7Sm6GBA74n2OrGuB14H27wklD+PtIEFniyxKbq
5TDO0l4yDgkR7PsckmZqK22GP9c3fQkmXodtpV1wRjcSAxxVWYm+S24XvMFERs3j
yXEf+VJ0H+voAvxgbAk=
-----END CERTIFICATE-----'
-
-
diff --git a/tests/rackspace/requests/load_balancers/load_balancer_tests.rb b/tests/rackspace/requests/load_balancers/load_balancer_tests.rb
index 525a3ce..abd18b6 100644
--- a/tests/rackspace/requests/load_balancers/load_balancer_tests.rb
+++ b/tests/rackspace/requests/load_balancers/load_balancer_tests.rb
@@ -6,19 +6,27 @@ Shindo.tests('Fog::Rackspace::LoadBalancers | load_balancer_tests', ['rackspace'
tests('success') do
@lb_id = nil
+ @lb_ids = []
@lb_name = 'fog' + Time.now.to_i.to_s
- tests("#create_load_balancer(#{@lb_name}, 'HTTP', 80,...)").formats(LOAD_BALANCER_FORMAT) do
- data = @service.create_load_balancer(@lb_name, 'HTTP', 80, [{ :type => 'PUBLIC'}], [{ :address => '1.1.1.1', :port => 80, :condition => 'ENABLED'}]).body
+ tests("#create_load_balancer(#{@lb_name}, 'HTTP')").formats(LOAD_BALANCER_FORMAT) do
+ data = @service.create_load_balancer(@lb_name, 'HTTP').body
@lb_id = data['loadBalancer']['id']
+ @lb_ids << @lb_id
+ data
+ end
+
+ tests("#create_load_balancer(#{@lb_name}, 'HTTP', 80,...)").formats(LOAD_BALANCER_FORMAT) do
+ data = @service.create_load_balancer(@lb_name, 'HTTP', 80, [{ :type => 'PUBLIC' }], [{ :address => '1.1.1.1', :port => 80, :condition => 'ENABLED' }]).body
+ @lb_ids << data['loadBalancer']['id']
data
end
tests("#create_load_balancer(#{@lb_name}, 'HTTP', 80,...with algorithm)").formats(LOAD_BALANCER_FORMAT) do
- data = @service.create_load_balancer(@lb_name, 'HTTP', 80, [{ :type => 'PUBLIC'}],
+ data = @service.create_load_balancer(@lb_name, 'HTTP', 80, [{ :type => 'PUBLIC'}],
[{ :address => '1.1.1.1', :port => 80, :condition => 'ENABLED'}],
{ :algorithm => 'LEAST_CONNECTIONS', :timeout => 30 }).body
- @lb_id = data['loadBalancer']['id']
+ @lb_ids << data['loadBalancer']['id']
returns('LEAST_CONNECTIONS') { data['loadBalancer']['algorithm'] }
returns(30) { data['loadBalancer']['timeout'] }
data
@@ -52,8 +60,10 @@ Shindo.tests('Fog::Rackspace::LoadBalancers | load_balancer_tests', ['rackspace'
sleep 10
end
- tests("#delete_load_balancer(#{@ld_id})").succeeds do
- @service.delete_load_balancer(@lb_id).body
+ @lb_ids.each do |id|
+ tests("#delete_load_balancer(#{id})").succeeds do
+ @service.delete_load_balancer(id).body
+ end
end
end
diff --git a/tests/rackspace/requests/monitoring/agent_tests.rb b/tests/rackspace/requests/monitoring/agent_tests.rb
index f0f2505..e91ca35 100644
--- a/tests/rackspace/requests/monitoring/agent_tests.rb
+++ b/tests/rackspace/requests/monitoring/agent_tests.rb
@@ -4,7 +4,7 @@ Shindo.tests('Fog::Rackspace::Monitoring | agent_tests', ['rackspace','rackspace
agent_token = nil
options = { "label" => "Bar" }
values_format = Hash
-
+
tests('success') do
tests('#create new agent token').formats(DATA_FORMAT) do
response = account.create_agent_token(options).data
@@ -16,12 +16,11 @@ Shindo.tests('Fog::Rackspace::Monitoring | agent_tests', ['rackspace','rackspace
end
tests("#list_agents") do
data_matches_schema(values_format, {:allow_extra_keys => true}) { account.list_agents.body }
- end
+ end
tests("#get_agent") do
data_matches_schema(values_format, {:allow_extra_keys => true}) { account.get_agent("agent_id").body }
end
-
tests('#get agent token').formats(LIST_HEADERS_FORMAT) do
account.get_agent_token(agent_token).data[:headers]
end
@@ -51,8 +50,8 @@ Shindo.tests('Fog::Rackspace::Monitoring | agent_tests', ['rackspace','rackspace
end
tests("#get_system_info") do
data_matches_schema(values_format, {:allow_extra_keys => true}) { account.get_system_info("agent_id").body }
- end
-
+ end
+
end
tests('failure') do
@@ -70,6 +69,6 @@ Shindo.tests('Fog::Rackspace::Monitoring | agent_tests', ['rackspace','rackspace
end
tests('#fail to get agent (-1)').raises(Fog::Rackspace::Monitoring::NotFound) do
account.get_agent(-1)
- end
+ end
end
end
diff --git a/tests/rackspace/requests/monitoring/alarm_example_tests.rb b/tests/rackspace/requests/monitoring/alarm_example_tests.rb
index 21b9041..0825fe3 100644
--- a/tests/rackspace/requests/monitoring/alarm_example_tests.rb
+++ b/tests/rackspace/requests/monitoring/alarm_example_tests.rb
@@ -1,5 +1,5 @@
Shindo.tests('Fog::Rackspace::Monitoring | alarm_example_tests', ['rackspace','rackspace_monitoring']) do
- pending if Fog.mocking?
+ pending if Fog.mocking?
account = Fog::Rackspace::Monitoring.new
example_id = "remote.http_body_match_1"
diff --git a/tests/rackspace/requests/monitoring/alarm_tests.rb b/tests/rackspace/requests/monitoring/alarm_tests.rb
index c60d661..b88d41e 100644
--- a/tests/rackspace/requests/monitoring/alarm_tests.rb
+++ b/tests/rackspace/requests/monitoring/alarm_tests.rb
@@ -1,5 +1,5 @@
Shindo.tests('Fog::Rackspace::Monitoring | alarm_tests', ['rackspace','rackspace_monitoring']) do
-
+
account = Fog::Rackspace::Monitoring.new
entity_id = account.create_entity(:label => "Foo").data[:headers]["X-Object-ID"]
diff --git a/tests/rackspace/requests/monitoring/helper.rb b/tests/rackspace/requests/monitoring/helper.rb
index c28fbbd..15cfd4f 100644
--- a/tests/rackspace/requests/monitoring/helper.rb
+++ b/tests/rackspace/requests/monitoring/helper.rb
@@ -56,7 +56,6 @@ GET_MONITORING_ZONE = {
"source_ips" => [String]
}
-
# {"values"=>
# [{"id"=>"ch4GimHQsQ",
# "label"=>nil,
@@ -84,7 +83,6 @@ GET_MONITORING_ZONE = {
# "next_marker"=>nil,
# "next_href"=>nil}}
-
# {"values"=>
# [{"id"=>String,
# "label"=>String,
@@ -95,8 +93,7 @@ GET_MONITORING_ZONE = {
# "limit"=>Integer,
# "marker"=>nil,
# "next_marker"=>nil,
-# "next_href"=>nil}}
-
+# "next_href"=>nil}}
CHECK_CREATE_OPTIONS = {
:details => {
@@ -134,7 +131,7 @@ OVERVIEW_FORMAT = {
:limit => Integer,
:marker => String,
:next_marker => String,
- :next_href => String
+ :next_href => String
}
},
:headers => LIST_HEADERS_FORMAT,
diff --git a/tests/rackspace/requests/monitoring/list_tests.rb b/tests/rackspace/requests/monitoring/list_tests.rb
index 7079fd6..2236ba7 100644
--- a/tests/rackspace/requests/monitoring/list_tests.rb
+++ b/tests/rackspace/requests/monitoring/list_tests.rb
@@ -1,10 +1,10 @@
Shindo.tests('Fog::Rackspace::Monitoring | list_tests', ['rackspace','rackspace_monitoring']) do
account = Fog::Rackspace::Monitoring.new
- if Fog.mocking?
+ if Fog.mocking?
entity_id = "peoigne93"
check_id = "2090wgn93"
- else
+ else
entity_id = account.create_entity(:label => "Foo").data[:headers]["X-Object-ID"]
check_id = account.create_check(entity_id,CHECK_CREATE_OPTIONS).data[:headers]["X-Object-ID"]
end
@@ -13,9 +13,9 @@ Shindo.tests('Fog::Rackspace::Monitoring | list_tests', ['rackspace','rackspace_
now = Time.now.to_i
SLEEP_TIME= 2
sleep(SLEEP_TIME) unless Fog.mocking?
-
+
tests('success') do
-
+
tests('#get list of monitoring zones').formats(LIST_MONITORING_ZONE) do
pending if Fog.mocking?
account.list_monitoring_zones.body
@@ -26,7 +26,6 @@ Shindo.tests('Fog::Rackspace::Monitoring | list_tests', ['rackspace','rackspace_
account.get_monitoring_zone('mzdfw').body
end
-
tests('#get list of checks').formats(LIST_HEADERS_FORMAT) do
account.list_checks(entity_id).data[:headers]
end
diff --git a/tests/rackspace/requests/monitoring/notification_tests.rb b/tests/rackspace/requests/monitoring/notification_tests.rb
index 01f4cd7..7b61c0d 100644
--- a/tests/rackspace/requests/monitoring/notification_tests.rb
+++ b/tests/rackspace/requests/monitoring/notification_tests.rb
@@ -5,7 +5,7 @@ Shindo.tests('Fog::Rackspace::Monitoring | notification_tests', ['rackspace','ra
tests('#create new notification').formats(DATA_FORMAT) do
pending if Fog.mocking?
response = account.create_notification(:label => "Foo", :type => "email", :details => {:address => "test at test.com"}).data
-
+
notification_id = response[:headers]["X-Object-ID"]
response
end
diff --git a/tests/rackspace/requests/queues/helper.rb b/tests/rackspace/requests/queues/helper.rb
index 3587c73..aa1a94e 100644
--- a/tests/rackspace/requests/queues/helper.rb
+++ b/tests/rackspace/requests/queues/helper.rb
@@ -27,7 +27,7 @@ MESSAGE_FORMAT = {
LIST_MESSAGES_FORMAT = {
'messages' => [MESSAGE_FORMAT],
- 'links' => LINKS_FORMAT
+ 'links' => LINKS_FORMAT
}
CREATE_CLAIM_FORMAT = [
diff --git a/tests/rackspace/requests/storage/account_tests.rb b/tests/rackspace/requests/storage/account_tests.rb
index 3925107..1a932bd 100644
--- a/tests/rackspace/requests/storage/account_tests.rb
+++ b/tests/rackspace/requests/storage/account_tests.rb
@@ -12,5 +12,4 @@ Shindo.tests('Fog::Storage[:rackspace] | account requests', ["rackspace"]) do
end
-
end
diff --git a/tests/rackspace/requests/storage/container_tests.rb b/tests/rackspace/requests/storage/container_tests.rb
index 1429d2a..4cac82e 100644
--- a/tests/rackspace/requests/storage/container_tests.rb
+++ b/tests/rackspace/requests/storage/container_tests.rb
@@ -64,4 +64,4 @@ Shindo.tests('Fog::Storage[:rackspace] | container requests', ["rackspace"]) do
end
-end
\ No newline at end of file
+end
diff --git a/tests/rackspace/storage_tests.rb b/tests/rackspace/storage_tests.rb
index 1618335..b81963f 100644
--- a/tests/rackspace/storage_tests.rb
+++ b/tests/rackspace/storage_tests.rb
@@ -46,7 +46,7 @@ Shindo.tests('Rackspace | Storage', ['rackspace']) do
identity_service = @service.instance_variable_get("@identity_service")
returns(false, "identity service was used") { identity_service.nil? }
- returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").has_key?(:ssl_verify_peer) }
+ returns(true, "connection_options are passed") { identity_service.instance_variable_get("@connection_options").key?(:ssl_verify_peer) }
@service.head_containers
end
tests('dfw region').succeeds do
@@ -126,4 +126,3 @@ Shindo.tests('Rackspace | Storage', ['rackspace']) do
end
end
end
-
diff --git a/tests/rage4/requests/dns/dns_tests.rb b/tests/rage4/requests/dns/dns_tests.rb
index 2d12153..7d8f717 100644
--- a/tests/rage4/requests/dns/dns_tests.rb
+++ b/tests/rage4/requests/dns/dns_tests.rb
@@ -24,7 +24,6 @@ Shindo.tests('Fog::DNS[:rage4] | DNS requests', ['rage4', 'dns']) do
response.status == 200
end
-
test("create domain") do
pending if Fog.mocking?
@@ -108,7 +107,6 @@ Shindo.tests('Fog::DNS[:rage4] | DNS requests', ['rage4', 'dns']) do
end
-
test("show_current_usage") do
pending if Fog.mocking?
@@ -256,7 +254,6 @@ Shindo.tests('Fog::DNS[:rage4] | DNS requests', ['rage4', 'dns']) do
@created_domain_list.each do |domain_id|
response = Fog::DNS[:rage4].delete_domain(domain_id)
-
returns(true) {response.body['status']}
returns(domain_id) {response.body['id']}
returns("") {response.body['error'] }
diff --git a/tests/riakcs/requests/usage/usage_tests.rb b/tests/riakcs/requests/usage/usage_tests.rb
index f46b3e0..b25df99 100644
--- a/tests/riakcs/requests/usage/usage_tests.rb
+++ b/tests/riakcs/requests/usage/usage_tests.rb
@@ -1,17 +1,17 @@
Shindo.tests('RiakCS::Usage | usage requests', ['riakcs']) do
@blank_usage_format = {
- 'Access' => {
+ 'Access' => {
'Nodes' => [],
- 'Errors' => []
+ 'Errors' => []
},
- 'Storage' => {
+ 'Storage' => {
'Samples' => [],
- 'Errors' => []
+ 'Errors' => []
}
}
- tests('Statistics retrieval with no data returned') do
+ tests('Statistics retrieval with no data returned') do
start_time = Time.now.utc + 86400
end_time = start_time + 86400
diff --git a/tests/sakuracloud/helper.rb b/tests/sakuracloud/helper.rb
deleted file mode 100644
index 79a64db..0000000
--- a/tests/sakuracloud/helper.rb
+++ /dev/null
@@ -1,7 +0,0 @@
-def volume_service
- Fog::Volume[:sakuracloud]
-end
-
-def compute_service
- Fog::Compute[:sakuracloud]
-end
diff --git a/tests/sakuracloud/requests/compute/plans_tests.rb b/tests/sakuracloud/requests/compute/plans_tests.rb
deleted file mode 100644
index c6e67ca..0000000
--- a/tests/sakuracloud/requests/compute/plans_tests.rb
+++ /dev/null
@@ -1,32 +0,0 @@
-# coding: utf-8
-Shindo.tests('Fog::Compute[:sakuracloud] | list_plans request', ['sakuracloud', 'compute']) do
-
- @plan_format = {
- 'Index' => Integer,
- 'ID' => Integer,
- 'Name' => String,
- 'CPU' => Integer,
- 'MemoryMB' => Integer,
- 'Availability' => String
- }
-
- tests('success') do
-
- tests('#list_plans') do
- serverplans = compute_service.list_plans
- test 'returns a Hash' do
- serverplans.body.is_a? Hash
- end
- if Fog.mock?
- tests('ServerPlans').formats(@plan_format, false) do
- serverplans.body['ServerPlans'].first
- end
- else
- returns(200) { serverplans.status }
- returns(false) { serverplans.body.empty? }
- end
- end
-
- end
-
-end
diff --git a/tests/sakuracloud/requests/compute/servers_tests.rb b/tests/sakuracloud/requests/compute/servers_tests.rb
deleted file mode 100644
index 4d813b9..0000000
--- a/tests/sakuracloud/requests/compute/servers_tests.rb
+++ /dev/null
@@ -1,46 +0,0 @@
-# coding: utf-8
-Shindo.tests('Fog::Compute[:sakuracloud] | list_servers request', ['sakuracloud', 'compute']) do
-
- @servers_format = {
- 'Index' => Integer,
- 'ID' => Integer,
- 'Name' => String,
- 'ServerPlan' => Hash,
- 'Instance' => Hash,
- 'Disks' => Array
- }
-
- tests('success') do
-
- tests('#list_servers') do
- servers = compute_service.list_servers
- test 'returns a Hash' do
- servers.body.is_a? Hash
- end
- if Fog.mock?
- tests('Servers').formats(@servers_format, false) do
- servers.body['Servers'].first
- end
- else
- returns(200) { servers.status }
- returns(true) { servers.body.is_a? Hash }
- end
- end
- end
-end
-
-Shindo.tests('Fog::Compute[:sakuracloud] | create_servers request', ['sakuracloud', 'compute']) do
- tests('success') do
- tests('#create_servers') do
- servers = compute_service.create_server('foobar', 2001)
- test 'returns a Hash' do
- servers.body.is_a? Hash
- end
-
- unless Fog.mock?
- returns(201) { servers.status }
- returns(true) { servers.body.is_a? Hash }
- end
- end
- end
-end
diff --git a/tests/sakuracloud/requests/compute/ssh_keys_tests.rb b/tests/sakuracloud/requests/compute/ssh_keys_tests.rb
deleted file mode 100644
index eb0211a..0000000
--- a/tests/sakuracloud/requests/compute/ssh_keys_tests.rb
+++ /dev/null
@@ -1,30 +0,0 @@
-# coding: utf-8
-Shindo.tests('Fog::Compute[:sakuracloud] | list_ssh_keys request', ['sakuracloud', 'compute']) do
-
- @sshkey_format = {
- 'Index' => Integer,
- 'ID' => String,
- 'Name' => String,
- 'PublicKey' => String
- }
-
- tests('success') do
-
- tests('#list_ssh_keys') do
- sshkeys = compute_service.list_ssh_keys
- test 'returns a Hash' do
- sshkeys.body.is_a? Hash
- end
- if Fog.mock?
- tests('SSHKeys').formats(@sshkey_format, false) do
- sshkeys.body['SSHKeys'].first
- end
- else
- returns(200) { sshkeys.status }
- returns(false) { sshkeys.body.empty? }
- end
- end
-
- end
-
-end
diff --git a/tests/sakuracloud/requests/compute/zones_tests.rb b/tests/sakuracloud/requests/compute/zones_tests.rb
deleted file mode 100644
index 3af044e..0000000
--- a/tests/sakuracloud/requests/compute/zones_tests.rb
+++ /dev/null
@@ -1,30 +0,0 @@
-# coding: utf-8
-Shindo.tests('Fog::Compute[:sakuracloud] | list_zones request', ['sakuracloud', 'compute']) do
-
- @zone_format = {
- 'Index' => Integer,
- 'ID' => Integer,
- 'Name' => String,
- 'Description' => String
- }
-
- tests('success') do
-
- tests('#list_zones') do
- zones = compute_service.list_zones
- test 'returns a Hash' do
- zones.body.is_a? Hash
- end
- if Fog.mock?
- tests('Zones').formats(@zone_format, false) do
- zones.body['Zones'].first
- end
- else
- returns(200) { zones.status }
- returns(false) { zones.body.empty? }
- end
- end
-
- end
-
-end
diff --git a/tests/sakuracloud/requests/volume/archives_tests.rb b/tests/sakuracloud/requests/volume/archives_tests.rb
deleted file mode 100644
index a91dd13..0000000
--- a/tests/sakuracloud/requests/volume/archives_tests.rb
+++ /dev/null
@@ -1,31 +0,0 @@
-# coding: utf-8
-Shindo.tests('Fog::Volume[:sakuracloud] | list_archives request', ['sakuracloud', 'volume']) do
-
- @archive_format = {
- 'Index' => Integer,
- 'ID' => Integer,
- 'Name' => String,
- 'SizeMB' => Integer,
- 'Plan' => Hash
- }
-
- tests('success') do
-
- tests('#list_archives') do
- archives = volume_service.list_archives
- test 'returns a Hash' do
- archives.body.is_a? Hash
- end
- if Fog.mock?
- tests('Archives').formats(@archive_format, false) do
- archives.body['Archives'].first
- end
- else
- returns(200) { archives.status }
- returns(false) { archives.body.empty? }
- end
- end
-
- end
-
-end
diff --git a/tests/sakuracloud/requests/volume/disks_tests.rb b/tests/sakuracloud/requests/volume/disks_tests.rb
deleted file mode 100644
index 5ebb4a7..0000000
--- a/tests/sakuracloud/requests/volume/disks_tests.rb
+++ /dev/null
@@ -1,47 +0,0 @@
-# coding: utf-8
-Shindo.tests('Fog::Volume[:sakuracloud] | list_disks request', ['sakuracloud', 'volume']) do
-
- @disks_format = {
- 'Index' => Integer,
- 'ID' => Integer,
- 'Name' => String,
- 'Connection' => String,
- 'Availability' => String,
- 'SizeMB' => Integer,
- 'Plan' => Hash
- }
-
- tests('success') do
-
- tests('#list_disks') do
- disks = volume_service.list_disks
- test 'returns a Hash' do
- disks.body.is_a? Hash
- end
- if Fog.mock?
- tests('Disks').formats(@disks_format, false) do
- disks.body['Disks'].first
- end
- else
- returns(200) { disks.status }
- returns(true) { disks.body.is_a? Hash }
- end
- end
- end
-end
-
-Shindo.tests('Fog::Volume[:sakuracloud] | create_disks request', ['sakuracloud', 'volume']) do
- tests('success') do
- tests('#create_disks') do
- disks = volume_service.create_disk('foobar', 4, 112500463685)
- test 'returns a Hash' do
- disks.body.is_a? Hash
- end
-
- unless Fog.mock?
- returns(202) { disks.status }
- returns(true) { disks.body.is_a? Hash }
- end
- end
- end
-end
diff --git a/tests/sakuracloud/requests/volume/plans_tests.rb b/tests/sakuracloud/requests/volume/plans_tests.rb
deleted file mode 100644
index e7b9bae..0000000
--- a/tests/sakuracloud/requests/volume/plans_tests.rb
+++ /dev/null
@@ -1,30 +0,0 @@
-# coding: utf-8
-Shindo.tests('Fog::Volume[:sakuracloud] | list_plans request', ['sakuracloud', 'volume']) do
-
- @plan_format = {
- 'Index' => Integer,
- 'ID' => Integer,
- 'Name' => String,
- 'Availability' => String
- }
-
- tests('success') do
-
- tests('#list_plans') do
- diskplans = volume_service.list_plans
- test 'returns a Hash' do
- diskplans.body.is_a? Hash
- end
- if Fog.mock?
- tests('DiskPlans').formats(@plan_format, false) do
- diskplans.body['DiskPlans'].first
- end
- else
- returns(200) { diskplans.status }
- returns(false) { diskplans.body.empty? }
- end
- end
-
- end
-
-end
diff --git a/tests/serverlove/requests/compute/image_tests.rb b/tests/serverlove/requests/compute/image_tests.rb
index 482b0db..aa523ca 100644
--- a/tests/serverlove/requests/compute/image_tests.rb
+++ b/tests/serverlove/requests/compute/image_tests.rb
@@ -13,7 +13,7 @@ Shindo.tests('Fog::Compute[:serverlove] | drive requests', ['serverlove']) do
'read:requests' => String,
'write:requests' => String
}
-
+
tests('success') do
attributes = { 'name' => 'Test', 'size' => '24234567890' }
@@ -21,23 +21,23 @@ Shindo.tests('Fog::Compute[:serverlove] | drive requests', ['serverlove']) do
tests("#create_image").formats(@image_format) do
@image = Fog::Compute[:serverlove].create_image(attributes).body
end
-
+
tests("#list_images").succeeds do
Fog::Compute[:serverlove].images
end
-
+
tests("#update_image").returns(true) do
@image['name'] = "Diff"
Fog::Compute[:serverlove].update_image(@image['drive'], { :name => @image['name'], :size => @image['size']})
Fog::Compute[:serverlove].images.get(@image['drive']).name == "Diff"
end
-
+
tests("#load_standard_image").returns(true) do
# Load centos
Fog::Compute[:serverlove].load_standard_image(@image['drive'], '88ed067f-d2b8-42ce-a25f-5297818a3b6f')
Fog::Compute[:serverlove].images.get(@image['drive']).imaging != "" # This will be "x%" when imaging
end
-
+
tests("waits for imaging...").returns(true) do
while(percent_complete = Fog::Compute[:serverlove].images.get(@image['drive']).imaging)
sleep(1)
@@ -47,7 +47,7 @@ Shindo.tests('Fog::Compute[:serverlove] | drive requests', ['serverlove']) do
STDERR.print "100% "
true
end
-
+
tests("#destroy_image").succeeds do
Fog::Compute[:serverlove].destroy_image(@image['drive'])
end
diff --git a/tests/serverlove/requests/compute/server_tests.rb b/tests/serverlove/requests/compute/server_tests.rb
index c3d3701..b402b97 100644
--- a/tests/serverlove/requests/compute/server_tests.rb
+++ b/tests/serverlove/requests/compute/server_tests.rb
@@ -1,5 +1,5 @@
Shindo.tests('Fog::Compute[:serverlove] | server requests', ['serverlove']) do
-
+
@server_format = {
'server' => String,
'name' => String,
@@ -15,9 +15,9 @@ Shindo.tests('Fog::Compute[:serverlove] | server requests', ['serverlove']) do
'nic:0:dhcp' => String,
'nic:0:model' => String
}
-
+
tests('success') do
-
+
attributes = { 'name' => 'Test', 'cpu' => '1000', 'mem' => '1000', 'persistent' => 'true' }
tests("#create_server").formats(@server_format) do
@@ -27,20 +27,20 @@ Shindo.tests('Fog::Compute[:serverlove] | server requests', ['serverlove']) do
tests("#list_servers").succeeds do
Fog::Compute[:serverlove].servers
end
-
+
tests("#update_server").returns(true) do
@server['name'] = "Diff"
Fog::Compute[:serverlove].update_server(@server['server'], { :name => @server['name']})
Fog::Compute[:serverlove].servers.get(@server['server']).name == "Diff"
end
-
+
tests("assigns drive to server").succeeds do
@image = Fog::Compute[:serverlove].create_image('name' => 'Test', 'size' => '24234567890').body
# Load debian
Fog::Compute[:serverlove].load_standard_image(@image['drive'], 'aca2fa0b-40bc-4e06-ad99-f1467690d5de')
Fog::Compute[:serverlove].update_server(@server['server'], { 'ide:0:0' => @image['drive'], 'boot' => 'ide:0:0'})
end
-
+
tests("waits for imaging...").returns(true) do
while(percent_complete = Fog::Compute[:serverlove].images.get(@image['drive']).imaging)
sleep(1)
@@ -50,22 +50,22 @@ Shindo.tests('Fog::Compute[:serverlove] | server requests', ['serverlove']) do
STDERR.print "100% "
true
end
-
+
tests("#start_server").returns(true) do
Fog::Compute[:serverlove].start_server(@server['server'])
Fog::Compute[:serverlove].servers.get(@server['server']).status == "active"
end
-
+
tests("#reset_server").returns(true) do
Fog::Compute[:serverlove].reset_server(@server['server'])
Fog::Compute[:serverlove].servers.get(@server['server']).status == "active"
end
-
+
tests("#shutdown_server").succeeds do
Fog::Compute[:serverlove].shutdown_server(@server['server'])
# Can't guarantee the OS will honour this command so don't test status
end
-
+
tests("#stop_server").returns(true) do
Fog::Compute[:serverlove].start_server(@server['server'])
Fog::Compute[:serverlove].stop_server(@server['server'])
@@ -75,7 +75,7 @@ Shindo.tests('Fog::Compute[:serverlove] | server requests', ['serverlove']) do
tests("#destroy_server").succeeds do
Fog::Compute[:serverlove].destroy_server(@server['server'])
end
-
+
tests("destroy test drive").succeeds do
Fog::Compute[:serverlove].destroy_image(@image['drive'])
end
diff --git a/tests/serverlove/util/compute/password_generator_tests.rb b/tests/serverlove/util/compute/password_generator_tests.rb
index 3913b9a..07c0c16 100644
--- a/tests/serverlove/util/compute/password_generator_tests.rb
+++ b/tests/serverlove/util/compute/password_generator_tests.rb
@@ -7,13 +7,13 @@ Shindo.tests('Fog::Compute::Serverlove::PasswordGenerator | generate password',
tests("@password.length").returns(8) do
@password.length
end
-
+
tests("@password contains one capital letter").returns(true) do
@password.match(/[A-Z]/) && true
end
-
+
tests("@password contains one lower case letter").returns(true) do
@password.match(/[a-z]/) && true
end
-
-end
\ No newline at end of file
+
+end
diff --git a/tests/storage/models/directories_tests.rb b/tests/storage/models/directories_tests.rb
index b9aed26..1bec221 100644
--- a/tests/storage/models/directories_tests.rb
+++ b/tests/storage/models/directories_tests.rb
@@ -14,4 +14,4 @@ for provider, config in storage_providers
end
-end
\ No newline at end of file
+end
diff --git a/tests/storm_on_demand/requests/compute/server_tests.rb b/tests/storm_on_demand/requests/compute/server_tests.rb
index 826ed62..072c624 100644
--- a/tests/storm_on_demand/requests/compute/server_tests.rb
+++ b/tests/storm_on_demand/requests/compute/server_tests.rb
@@ -21,11 +21,11 @@ Shindo.tests('Fog::Compute[:stormondemand] | server requests', ['stormondemand']
'active' => Integer,
'create_date' => String
}
-
+
@servers_format = {
'items' => [@server_format]
}
-
+
tests('success') do
@uniq_id = nil
diff --git a/tests/vcloud/data/api_+_vdc_+_1 b/tests/vcloud/data/api_+_vdc_+_1
index cb5bf55..b2917f8 100644
--- a/tests/vcloud/data/api_+_vdc_+_1
+++ b/tests/vcloud/data/api_+_vdc_+_1
@@ -7,6 +7,7 @@
<vmext:VimObjectType>RESOURCE_POOL</vmext:VimObjectType>
</vmext:VimObjectRef>
</VCloudExtension>
+ <Link rel="add" type="application/vnd.vmware.vcloud.uploadVAppTemplateParams+xml" href="https://vcloud.example.com/api/vdc/1/action/uploadVAppTemplate" />
<Link rel="up" type="application/vnd.vmware.vcloud.org+xml" href="https://vcloud.example.com/api/org/1"/>
<Link rel="add" type="application/vnd.vmware.vcloud.uploadVAppTemplateParams+xml" href="https://vcloud.example.com/api/vdc/1/action/uploadVAppTemplate"/>
<Link rel="add" type="application/vnd.vmware.vcloud.media+xml" href="https://vcloud.example.com/api/vdc/1/media"/>
diff --git a/tests/vcloud/models/compute/helper.rb b/tests/vcloud/models/compute/helper.rb
index eb1aebd..ecab09f 100644
--- a/tests/vcloud/models/compute/helper.rb
+++ b/tests/vcloud/models/compute/helper.rb
@@ -1,7 +1,6 @@
class Vcloud
module Compute
module TestSupport
-
if Fog.mocking?
def self.template
'mock_template'
@@ -15,11 +14,9 @@ class Vcloud
template_res.href
end
end
-
end
module Formats
end
-
end
end
diff --git a/tests/vcloud/models/compute/network_tests.rb b/tests/vcloud/models/compute/network_tests.rb
index d15ffa9..f275182 100644
--- a/tests/vcloud/models/compute/network_tests.rb
+++ b/tests/vcloud/models/compute/network_tests.rb
@@ -15,17 +15,17 @@ Shindo.tests("Vcloud::Compute | network", ['vcloud']) do
tests("an org network") do
instance = connection.get_network("https://vcloud.example.com/api#{version == '1.0' ? '/v1.0' : ''}/network/1")
instance.reload
-
+
tests("#href").returns("https://vcloud.example.com/api#{version == '1.0' ? '/v1.0' : ''}/network/1") { instance.href }
tests("#name").returns("Network1") { instance.name }
tests("#description").returns("Some fancy Network") { instance.description }
-
+
tests("configuration") do
tests("parent network").returns("ParentNetwork1") { instance.configuration[:ParentNetwork][:name]}
tests("dns").returns("172.0.0.2") { instance.configuration[:IpScope][:Dns1]}
-
+
tests("#fence_mode").returns("natRouted") { instance.configuration[:FenceMode] }
-
+
tests("features") do
tests("dhcp_service") do
tests("#is_enabled").returns("false") { instance.configuration[:Features][:DhcpService][:IsEnabled] }
@@ -41,12 +41,12 @@ Shindo.tests("Vcloud::Compute | network", ['vcloud']) do
end
end
end
-
+
tests("#parent_network") do
tests("returned network name").returns("ParentNetwork1"){ p = instance.parent_network; p.name }
end
end
-
+
tests("an external network") do
instance = connection.get_network("https://vcloud.example.com/api#{version == '1.0' ? '/v1.0' : ''}/admin/network/2")
instance.reload
@@ -54,12 +54,12 @@ Shindo.tests("Vcloud::Compute | network", ['vcloud']) do
tests("#name").returns("ParentNetwork1") { instance.name }
tests("#description").returns("Internet Connection") { instance.description }
tests("#provider_info").returns("NETWORK:dvportgroup-230 on com.vmware.vcloud.entity.vimserver:35935555") { instance.provider_info }
-
+
tests("configuration") do
tests("dns").returns("172.0.0.2") { instance.configuration[:IpScope][:Dns1]}
tests("allocated addresses").returns("172.0.0.144") { instance.configuration[:IpScope][:AllocatedIpAddresses][:IpAddress].first }
end
-
+
tests("#parent_network").returns(nil){ instance.parent_network }
end
end
diff --git a/tests/vcloud/models/compute/networks_tests.rb b/tests/vcloud/models/compute/networks_tests.rb
index f83ea87..8032efb 100644
--- a/tests/vcloud/models/compute/networks_tests.rb
+++ b/tests/vcloud/models/compute/networks_tests.rb
@@ -16,13 +16,13 @@ Shindo.tests("Vcloud::Compute | networks", ['vcloud']) do
),
:href => "https://vcloud.example.com/api#{version == '1.0' ? '/v1.0' : ''}/org/1"
)
-
+
tests("collection") do
returns(2) { instance.size }
returns("https://vcloud.example.com/api#{version == '1.0' ? '/v1.0' : ''}/network/1") { instance.first.href }
end
end
-
+
tests("from a vdc perspective") do
instance = Fog::Vcloud::Compute::Networks.new(
:connection => Fog::Vcloud::Compute.new(
@@ -33,13 +33,13 @@ Shindo.tests("Vcloud::Compute | networks", ['vcloud']) do
),
:href => "https://vcloud.example.com/api#{version == '1.0' ? '/v1.0' : ''}/vdc/1"
)
-
+
tests("collection") do
returns(2) { instance.size }
returns("https://vcloud.example.com/api#{version == '1.0' ? '/v1.0' : ''}/network/1") { instance.first.href }
end
end
-
+
tests("from a vapp perspective") do
instance = Fog::Vcloud::Compute::Networks.new(
:connection => Fog::Vcloud::Compute.new(
@@ -50,7 +50,7 @@ Shindo.tests("Vcloud::Compute | networks", ['vcloud']) do
),
:href => "https://vcloud.example.com/api#{version == '1.0' ? '/v1.0' : ''}/vApp/vapp-1"
)
-
+
tests("collection") do
returns(1) { instance.size }
returns("https://vcloud.example.com/api#{version == '1.0' ? '/v1.0' : ''}/network/1") { instance.first.href }
diff --git a/tests/vcloud/models/compute/organization_tests.rb b/tests/vcloud/models/compute/organization_tests.rb
index 8d485c6..4c62648 100644
--- a/tests/vcloud/models/compute/organization_tests.rb
+++ b/tests/vcloud/models/compute/organization_tests.rb
@@ -10,7 +10,7 @@ Shindo.tests("Vcloud::Compute | organization", ['vcloud']) do
:vcloud_version => version
).get_organization("https://vcloud.example.com/api#{(version == '1.0') ? '/v1.0' : ''}/org/1")
instance.reload
-
+
tests("#href").returns("https://vcloud.example.com/api#{(version == '1.0') ? '/v1.0' : ''}/org/1"){ instance.href }
tests("#name").returns('Org1'){ instance.name }
tests("#full_name").returns('My Full Name'){ instance.full_name }
diff --git a/tests/vcloud/models/compute/organizations_tests.rb b/tests/vcloud/models/compute/organizations_tests.rb
index 62a6ac9..92f676e 100644
--- a/tests/vcloud/models/compute/organizations_tests.rb
+++ b/tests/vcloud/models/compute/organizations_tests.rb
@@ -6,7 +6,7 @@ Shindo.tests("Vcloud::Compute | organizations", ['vcloud']) do
tests("api version #{version}") do
pending if Fog.mocking?
instance = Fog::Vcloud::Compute.new(:vcloud_host => 'vcloud.example.com', :vcloud_username => 'username', :vcloud_password => 'password', :vcloud_version => version).organizations
-
+
tests("collection") do
returns(2) { instance.size }
returns("https://vcloud.example.com/api#{(version == '1.0') ? '/v1.0' : ''}/org/1") { instance.first.href }
diff --git a/tests/vcloud/models/compute/server_tests.rb b/tests/vcloud/models/compute/server_tests.rb
index a20354c..a3ddd5a 100644
--- a/tests/vcloud/models/compute/server_tests.rb
+++ b/tests/vcloud/models/compute/server_tests.rb
@@ -11,24 +11,24 @@ Shindo.tests("Vcloud::Compute | server", ['vcloud']) do
:vcloud_password => 'password',
:vcloud_version => version
).get_server("https://vcloud.example.com/api#{(version == '1.0') ? '/v1.0' : ''}/vApp/vm-2")
-
+
instance.reload
-
+
tests("#href").returns("https://vcloud.example.com/api#{(version == '1.0') ? '/v1.0' : ''}/vApp/vm-2") { instance.href }
tests("#name").returns("vm2") { instance.name }
tests("#vapp").returns("vApp1") { instance.vapp.name }
tests("#description").returns("Some VM Description") { instance.description }
tests("#status").returns('8') { instance.status }
tests("#deployed").returns(true) { instance.deployed }
-
+
tests("#os_desc").returns("Red Hat Enterprise Linux 5 (64-bit)") { instance.os_desc }
tests("#os_type").returns("rhel5_64Guest") { instance.os_type }
tests("#computer_name").returns("vm2") { instance.computer_name }
-
+
tests("cpu count").returns(1) { instance.cpus[:count] }
-
+
tests("amount of memory").returns(512){ instance.memory[:amount] }
-
+
tests("#disks") do
tests("#size").returns(2){ instance.disks.size }
tests("#number").returns(0){ instance.disks.first[:number] }
@@ -36,13 +36,13 @@ Shindo.tests("Vcloud::Compute | server", ['vcloud']) do
tests("#ElementName").returns("Hard disk 1"){ instance.disks.first[:disk_data][:'rasd:ElementName'] }
tests("#InstanceID").returns("2000"){ instance.disks.first[:disk_data][:'rasd:InstanceID'] }
end
-
+
tests("#vapp_scoped_local_id").returns("vmware_RHEL5-U5-64-small_v02") { instance.vapp_scoped_local_id }
-
+
tests("#friendly_status").returns('off') { instance.friendly_status }
tests("#on?").returns(false) { instance.on? }
tests("#off?").returns(true) { instance.off? }
-
+
tests("#network_connections") do
tests("#size").returns(2) { instance.network_connections.size }
end
diff --git a/tests/vcloud/models/compute/servers_tests.rb b/tests/vcloud/models/compute/servers_tests.rb
index 8fa6e50..b0bde0f 100644
--- a/tests/vcloud/models/compute/servers_tests.rb
+++ b/tests/vcloud/models/compute/servers_tests.rb
@@ -13,7 +13,7 @@ Shindo.tests("Vcloud::Compute | servers", ['vcloud']) do
:vcloud_version => version),
:href => "https://vcloud.example.com/api#{(version == '1.0') ? '/v1.0' : ''}/vApp/vapp-1"
)
-
+
tests("collection") do
returns(2) { instance.size }
returns("https://vcloud.example.com/api#{(version == '1.0') ? '/v1.0' : ''}/vApp/vm-2") { instance.first.href }
diff --git a/tests/vcloud/models/compute/vapp_tests.rb b/tests/vcloud/models/compute/vapp_tests.rb
index 905c92a..aae460c 100644
--- a/tests/vcloud/models/compute/vapp_tests.rb
+++ b/tests/vcloud/models/compute/vapp_tests.rb
@@ -13,17 +13,17 @@ Shindo.tests("Vcloud::Compute | vapp", ['vcloud']) do
:vcloud_version => version
).get_vapp("https://vcloud.example.com/api#{(version == '1.0') ? '/v1.0' : ''}/vApp/vapp-1")
instance.reload
-
+
tests("#href").returns("https://vcloud.example.com/api#{(version == '1.0') ? '/v1.0' : ''}/vApp/vapp-1") { instance.href }
tests("#name").returns("vApp1") { instance.name }
tests("#vdc").returns("vDC1"){ instance.vdc.name }
tests("#description").returns("Some Description of a vApp") { instance.description }
tests("#status").returns('8') { instance.status }
tests("#deployed").returns(true) { instance.deployed }
-
+
tests("#children").returns(2) { instance.children.size }
tests("#servers").returns(2) { instance.servers.size }
-
+
tests("#friendly_status").returns('off') { instance.friendly_status }
tests("#on?").returns(false) { instance.on? }
tests("#off?").returns(true) { instance.off? }
diff --git a/tests/vcloud/models/compute/vapps_tests.rb b/tests/vcloud/models/compute/vapps_tests.rb
index b545a32..1f711af 100644
--- a/tests/vcloud/models/compute/vapps_tests.rb
+++ b/tests/vcloud/models/compute/vapps_tests.rb
@@ -9,7 +9,7 @@ Shindo.tests("Vcloud::Compute | vapps", ['vcloud']) do
:connection => Fog::Vcloud::Compute.new(:vcloud_host => 'vcloud.example.com', :vcloud_username => 'username', :vcloud_password => 'password'),
:href => "https://vcloud.example.com/api#{(version == '1.0') ? '/v1.0' : ''}/vdc/1"
)
-
+
tests("collection") do
returns(2) { instance.size }
returns("https://vcloud.example.com/api#{(version == '1.0') ? '/v1.0' : ''}/vApp/vapp-1") { instance.first.href }
diff --git a/tests/vcloud/models/compute/vdc_tests.rb b/tests/vcloud/models/compute/vdc_tests.rb
index 79e1f87..b533bd5 100644
--- a/tests/vcloud/models/compute/vdc_tests.rb
+++ b/tests/vcloud/models/compute/vdc_tests.rb
@@ -12,9 +12,9 @@ Shindo.tests("Vcloud::Compute | vdc", ['vcloud']) do
:vcloud_password => 'password',
:vcloud_version => version
).get_vdc("https://vcloud.example.com/api#{(version == '1.0') ? '/v1.0' : ''}/vdc/1")
-
+
instance.reload
-
+
tests("#href").returns("https://vcloud.example.com/api#{(version == '1.0') ? '/v1.0' : ''}/vdc/1") { instance.href }
tests("#name").returns("vDC1") { instance.name }
tests('#organization').returns("Org1") { instance.organization.name }
@@ -23,16 +23,16 @@ Shindo.tests("Vcloud::Compute | vdc", ['vcloud']) do
tests("#nic_quota").returns(10) { instance.nic_quota }
tests("#vm_quota").returns(10) { instance.vm_quota }
tests("#is_enabled").returns(true) { instance.is_enabled }
-
+
tests("#available_networks") do
tests("#size").returns(2) { instance.available_networks.size }
end
-
+
tests("#storage_capacity") do
tests("units").returns("MB") { instance.storage_capacity[:Units] }
tests("allocated").returns("10240") { instance.storage_capacity[:Allocated] }
end
-
+
tests("#compute_capacity") do
tests("cpu") do
tests("allocated").returns("20000") { instance.compute_capacity[:Cpu][:Allocated] }
diff --git a/tests/vcloud/models/compute/vdcs_tests.rb b/tests/vcloud/models/compute/vdcs_tests.rb
index dccae36..4ddc3d8 100644
--- a/tests/vcloud/models/compute/vdcs_tests.rb
+++ b/tests/vcloud/models/compute/vdcs_tests.rb
@@ -14,7 +14,7 @@ Shindo.tests("Vcloud::Compute | vdcs", ['vcloud']) do
:vcloud_version => version),
:href => "https://vcloud.example.com/api#{(version == '1.0') ? '/v1.0' : ''}/org/1"
)
-
+
tests("collection") do
returns(1) { instance.size }
returns("https://vcloud.example.com/api#{(version == '1.0') ? '/v1.0' : ''}/vdc/1") { instance.first.href }
diff --git a/tests/vcloud/requests/compute/disk_configure_tests.rb b/tests/vcloud/requests/compute/disk_configure_tests.rb
index 7013add..aba3301 100644
--- a/tests/vcloud/requests/compute/disk_configure_tests.rb
+++ b/tests/vcloud/requests/compute/disk_configure_tests.rb
@@ -104,7 +104,7 @@ EOF
ng.xpath("//xmlns:ResourceType[ .='17']", @xmlns).size == 2
]
end
-
+
unless Fog.mocking?
Vcloud[:compute].unstub!(:request)
end
diff --git a/tests/vcloud_director/models/compute/helper.rb b/tests/vcloud_director/models/compute/helper.rb
index 3a6c5a6..166ee42 100644
--- a/tests/vcloud_director/models/compute/helper.rb
+++ b/tests/vcloud_director/models/compute/helper.rb
@@ -43,7 +43,7 @@ def vapps
end
def vapp
- vapps.detect {|vapp| vapp.vms.size >= 1 }
+ vapps.find {|vapp| vapp.vms.size >= 1 }
end
def the_network
diff --git a/tests/vcloud_director/models/compute/network_tests.rb b/tests/vcloud_director/models/compute/network_tests.rb
index 89c3868..3a9dc17 100644
--- a/tests/vcloud_director/models/compute/network_tests.rb
+++ b/tests/vcloud_director/models/compute/network_tests.rb
@@ -13,7 +13,7 @@ Shindo.tests("Compute::VcloudDirector | networks", ['vclouddirector', 'all']) do
# Run initial tests against a natRouted network, since these
# are more likely to be created, and must be populated with
# Gateway and EdgeGateway sections
- network = networks.detect do |net|
+ network = networks.find do |net|
network_raw = service.get_network_complete(net.id).body
network_raw[:Configuration][:FenceMode] == 'natRouted'
end
@@ -72,10 +72,11 @@ Shindo.tests("Compute::VcloudDirector | networks", ['vclouddirector', 'all']) do
tests("#get").returns(network.id) { networks.get(network.id).id }
end
+
# Now let's also check against an isolated network, since these have some
# additional features like DHCP ServiceConfigurations.
isolated_network_raw = nil
- isolated_network = networks.detect do |net|
+ isolated_network = networks.find do |net|
isolated_network_raw = service.get_network_complete(net.id).body
isolated_network_raw[:Configuration][:FenceMode] == 'isolated'
end
@@ -88,4 +89,20 @@ Shindo.tests("Compute::VcloudDirector | networks", ['vclouddirector', 'all']) do
tests("#fence_mode is now loaded").returns(true) { isolated_network.attributes[:fence_mode] != NonLoaded }
end
+ # We should also be able to find these same networks via Query API
+ tests("Compute::VcloudDirector | networks", ['find_by_query']) do
+ tests('we can retrieve :name without lazy loading').returns(network.name) do
+ query_network = networks.find_by_query(:filter => "name==#{network.name}").first
+ query_network.attributes[:name]
+ end
+ tests('by name: natRouted').returns(network.name) do
+ query_network = networks.find_by_query(:filter => "name==#{network.name}").first
+ query_network.name
+ end
+ tests('by name: isolated').returns(isolated_network.name) do
+ query_network = networks.find_by_query(:filter => "name==#{isolated_network.name}").first
+ query_network.name
+ end
+ end
+
end
diff --git a/tests/vcloud_director/models/compute/tasks_tests.rb b/tests/vcloud_director/models/compute/tasks_tests.rb
index 50880d7..2620f15 100644
--- a/tests/vcloud_director/models/compute/tasks_tests.rb
+++ b/tests/vcloud_director/models/compute/tasks_tests.rb
@@ -1,7 +1,23 @@
require File.expand_path(File.join(File.dirname(__FILE__), 'helper'))
Shindo.tests('Compute::VcloudDirector | tasks', ['vclouddirector']) do
- pending if Fog.mocking?
+
+ @service = Fog::Compute::VcloudDirector.new()
+
+ if Fog.mocking?
+ # add a bunch of tasks
+ 50.times do
+ task_id = @service.enqueue_task(
+ "Bogus Task",
+ 'BogusTaskName',
+ {
+ :href => 'https://example.com/api/bogus/12345678-1234-1234-1234-123456789012',
+ :name => 'Bogus object',
+ :type => 'application/vnd.vmware.vcloud.bogus+xml'
+ }
+ )
+ end
+ end
tasks = organization.tasks
pending if tasks.empty?
@@ -13,8 +29,8 @@ Shindo.tests('Compute::VcloudDirector | tasks', ['vclouddirector']) do
tests('#id').returns(String) { task.id.class }
tests('#name').returns(String) { task.name.class }
tests('#status').returns(String) { task.status.class }
- tests('#end_time').returns(Fog::Time) { task.end_time.class }
- tests('#expiry_time').returns(Fog::Time) { task.expiry_time.class }
+ tests('#end_time').returns(Time) { task.end_time.class }
+ tests('#expiry_time').returns(Time) { task.expiry_time.class }
tests('#operation').returns(String) { task.operation.class }
tests('#operation_name').returns(String) { task.operation_name.class }
end
@@ -23,4 +39,18 @@ Shindo.tests('Compute::VcloudDirector | tasks', ['vclouddirector']) do
tests('#get_by_name').returns(task.name) { tasks.get_by_name(task.name).name }
tests('#get').returns(task.id) { tasks.get(task.id).id }
end
+
+ # We should also be able to find tasks via the Query API
+ # NB: Query name == task.operation_name
+ tests("Compute::VcloudDirector | tasks", ['find_by_query']) do
+ tests('we can retrieve :name without lazy loading').returns(task.operation_name) do
+ query_task = tasks.find_by_query(:filter => "name==#{task.operation_name}").first
+ query_task.attributes[:name]
+ end
+ tests('by name').returns(task.operation_name) do
+ query_task = tasks.find_by_query(:filter => "name==#{task.operation_name}").first
+ query_task.name
+ end
+ end
+
end
diff --git a/tests/vcloud_director/models/compute/vapp_tests.rb b/tests/vcloud_director/models/compute/vapp_tests.rb
index 3c44527..a259fd2 100644
--- a/tests/vcloud_director/models/compute/vapp_tests.rb
+++ b/tests/vcloud_director/models/compute/vapp_tests.rb
@@ -1,7 +1,6 @@
require File.expand_path(File.join(File.dirname(__FILE__), 'helper'))
Shindo.tests("Compute::VcloudDirector | vapps", ['vclouddirector', 'all']) do
- pending if Fog.mocking?
# unless there is atleast one vapp we cannot run these tests
pending if vdc.vapps.empty?
@@ -38,4 +37,25 @@ Shindo.tests("Compute::VcloudDirector | vapps", ['vclouddirector', 'all']) do
tests("#get_by_name").returns(vapp.name) { vapps.get_by_name(vapp.name).name }
tests("#get").returns(vapp.id) { vapps.get(vapp.id).id }
end
+
+ tests("Compute::VcloudDirector | vapp", ['custom_fields']) do
+ pending if Fog.mocking?
+ tests("#set_custom_field").returns('2'){ vapp.custom_fields[:custom_field] = '2' }
+
+ tests("#get_custom_field_by_name").returns('2') { vapp.custom_fields[:custom_field].value }
+ tests("#delete_custom_field").returns([]){ vapp.custom_fields.delete(:custom_field); vapp.custom_fields }
+ end
+
+ # We should also be able to find this vApp via Query API
+ tests("Compute::VcloudDirector | vapps", ['find_by_query']) do
+ tests('we can retrieve :name without lazy loading').returns(vapp.name) do
+ query_vapp = vapps.find_by_query(:filter => "name==#{vapp.name}").first
+ query_vapp.attributes[:name]
+ end
+ tests('we can retrieve name via model object returned by query').returns(vapp.name) do
+ query_vapp = vapps.find_by_query(:filter => "name==#{vapp.name}").first
+ query_vapp.name
+ end
+ end
+
end
diff --git a/tests/vcloud_director/models/compute/vdcs_tests.rb b/tests/vcloud_director/models/compute/vdcs_tests.rb
index c8a9f68..077d27d 100644
--- a/tests/vcloud_director/models/compute/vdcs_tests.rb
+++ b/tests/vcloud_director/models/compute/vdcs_tests.rb
@@ -1,7 +1,6 @@
require File.expand_path(File.join(File.dirname(__FILE__), 'helper'))
Shindo.tests("Compute::VcloudDirector | vdcs", ['vclouddirector', 'all']) do
- pending if Fog.mocking?
tests("#There is one or more vdc").returns(true){ organization.vdcs.size >= 1 }
vdcs = organization.vdcs
@@ -38,4 +37,18 @@ Shindo.tests("Compute::VcloudDirector | vdcs", ['vclouddirector', 'all']) do
tests("#get_by_name").returns(vdc.name) { vdcs.get_by_name(vdc.name).name }
tests("#get").returns(vdc.id) { vdcs.get(vdc.id).id }
end
+
+ pending if Fog.mocking?
+
+ # We should also be able to find this same vdc via Query API
+ tests("Compute::VcloudDirector | vdcs", ['find_by_query']) do
+ tests('we can retrieve :name without lazy loading').returns(vdc.name) do
+ query_vdc = vdcs.find_by_query(:filter => "name==#{vdc.name}").first
+ query_vdc.attributes[:name]
+ end
+ tests('by name').returns(vdc.name) do
+ query_vdc = vdcs.find_by_query(:filter => "name==#{vdc.name}").first
+ query_vdc.name
+ end
+ end
end
diff --git a/tests/vcloud_director/models/compute/vms_tests.rb b/tests/vcloud_director/models/compute/vms_tests.rb
index 73c3dbb..4038d02 100644
--- a/tests/vcloud_director/models/compute/vms_tests.rb
+++ b/tests/vcloud_director/models/compute/vms_tests.rb
@@ -2,7 +2,7 @@ require File.expand_path(File.join(File.dirname(__FILE__), 'helper'))
Shindo.tests("Compute::VcloudDirector | vms", ['vclouddirector', 'all']) do
pending if Fog.mocking?
- vapp = vapps.detect {|v| v.vms.size >= 1}
+ vapp = vapps.find {|v| v.vms.size >= 1}
# we can't run these tests if there is no vapps with a vm in them
pending unless vapp
@@ -83,4 +83,17 @@ Shindo.tests("Compute::VcloudDirector | vms", ['vclouddirector', 'all']) do
tests("#collection").returns(Fog::Compute::VcloudDirector::Tags){ tags.class }
end
+ # We should also be able to find this VM via Query API
+ # :name is not unique for VMs though, so let us query by href
+ tests("Compute::VcloudDirector | vm", ['find_by_query']) do
+ tests('we can retrieve :name without lazy loading').returns(vm.name) do
+ query_vm = vms.find_by_query(:filter => "href==#{vm.href}").first
+ query_vm.attributes[:name]
+ end
+ tests('we can retrieve name via model object returned by query').returns(vm.name) do
+ query_vm = vms.find_by_query(:filter => "href==#{vm.href}").first
+ query_vm.name
+ end
+ end
+
end
diff --git a/tests/vcloud_director/requests/compute/catalog_tests.rb b/tests/vcloud_director/requests/compute/catalog_tests.rb
index eea0b98..36e98a9 100644
--- a/tests/vcloud_director/requests/compute/catalog_tests.rb
+++ b/tests/vcloud_director/requests/compute/catalog_tests.rb
@@ -4,7 +4,7 @@ Shindo.tests('Compute::VcloudDirector | catalog requests', ['vclouddirector']) d
@org = VcloudDirector::Compute::Helper.current_org(@service)
tests('#get_catalog').data_matches_schema(VcloudDirector::Compute::Schema::CATALOG_TYPE) do
- link = @org[:Link].detect do |l|
+ link = @org[:Link].find do |l|
l[:rel] == 'down' && l[:type] == 'application/vnd.vmware.vcloud.catalog+xml'
end
@catalog_id = link[:href].split('/').last
diff --git a/tests/vcloud_director/requests/compute/disk_tests.rb b/tests/vcloud_director/requests/compute/disk_tests.rb
index 30f840d..1d08598 100644
--- a/tests/vcloud_director/requests/compute/disk_tests.rb
+++ b/tests/vcloud_director/requests/compute/disk_tests.rb
@@ -100,35 +100,35 @@ Shindo.tests('Compute::VcloudDirector | disk requests', ['vclouddirector']) do
tests('TypedValue') do
pending if @service.api_version.to_f < 5.1
tests('key').returns('MetadataStringValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-key'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-key'}
entry[:TypedValue][:xsi_type]
end
tests('boolean').returns('MetadataBooleanValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-boolean'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-boolean'}
entry[:TypedValue][:xsi_type]
end
tests('datetime').returns('MetadataDateTimeValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-datetime'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-datetime'}
entry[:TypedValue][:xsi_type]
end
tests('number').returns('MetadataNumberValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-number'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-number'}
entry[:TypedValue][:xsi_type]
end
tests('key-update').returns('MetadataStringValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-key-update'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-key-update'}
entry[:TypedValue][:xsi_type]
end
tests('boolean-update').returns('MetadataBooleanValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-boolean-update'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-boolean-update'}
entry[:TypedValue][:xsi_type]
end
tests('datetime-update').returns('MetadataDateTimeValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-datetime-update'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-datetime-update'}
entry[:TypedValue][:xsi_type]
end
tests('number-update').returns('MetadataNumberValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-number-update'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-number-update'}
entry[:TypedValue][:xsi_type]
end
end
diff --git a/tests/vcloud_director/requests/compute/edge_gateway_tests.rb b/tests/vcloud_director/requests/compute/edge_gateway_tests.rb
index faf000f..9b340c5 100644
--- a/tests/vcloud_director/requests/compute/edge_gateway_tests.rb
+++ b/tests/vcloud_director/requests/compute/edge_gateway_tests.rb
@@ -2,6 +2,63 @@ Shindo.tests('Compute::VcloudDirector | edge gateway requests', ['vclouddirector
FIREWALL_RULE_ID = '9999'
+ @dhcp_configuration = {
+ :GatewayDhcpService => {
+ :IsEnabled => "true",
+ :pools => [{
+ :IsEnabled => "true",
+ :Network => "testNet",
+ :DefaultLeaseTime => "65",
+ :MaxLeaseTime => "650",
+ :LowIpAddress => "192.168.9.2",
+ :HighIpAddress => "192.168.9.20"
+ }]
+ }
+ }
+
+ @vpn_configuration = {
+ :GatewayIpsecVpnService =>
+ {
+ :IsEnabled => "true",
+ :Tunnel => {
+ :Name => "test vpn",
+ :PeerIpAddress => "110.110.110.110",
+ :PeerId => "1223-123UDH-12321",
+ :LocalIpAddress => "192.168.90.90",
+ :LocalId => "202UB-9602-UB629",
+ :PeerSubnet => {
+ :Name => "192.168.0.0/18",
+ :Gateway => "192.168.0.0",
+ :Netmask => "255.255.192.0",
+ },
+ :SharedSecret => "dont tell anyone",
+ :SharedSecretEncrypted => "false",
+ :EncryptionProtocol => "AES",
+ :Mtu => "1500",
+ :IsEnabled => "true",
+ :LocalSubnet => [{
+ :Name => "VDC Network",
+ :Gateway => "192.168.90.254",
+ :Netmask => "255.255.255.0"
+ }]
+ }
+ }
+ }
+
+ @routing_service_configuration = {
+ :StaticRoutingService => {
+ :IsEnabled => "true",
+ :StaticRoute => [
+ {
+ :Name => "Test static route #1",
+ :Network => "192.168.192.0/24",
+ :NextHopIp => "192.168.0.1",
+ :GatewayInterface => {}
+ }
+ ]
+ }
+ }
+
@new_edge_gateway_configuration = {
:FirewallService =>
{
@@ -28,8 +85,7 @@ Shindo.tests('Compute::VcloudDirector | edge gateway requests', ['vclouddirector
}
]
}
- }
-
+ }.merge!(@vpn_configuration).merge!(@dhcp_configuration)
@service = Fog::Compute::VcloudDirector.new
@org = VcloudDirector::Compute::Helper.current_org(@service)
@@ -39,7 +95,7 @@ Shindo.tests('Compute::VcloudDirector | edge gateway requests', ['vclouddirector
if l[:type] == 'application/vnd.vmware.vcloud.vdc+xml'
id = l[:href].split('/').last
edge_gateways = @service.get_org_vdc_gateways(id).body
- if edge_gateways && edge_gateways[:EdgeGatewayRecord].size >= 1
+ if edge_gateways && edge_gateways[:EdgeGatewayRecord].size >= 1
@vdc_id = id
break
end
@@ -68,7 +124,6 @@ Shindo.tests('Compute::VcloudDirector | edge gateway requests', ['vclouddirector
@original_gateway_conf = @service.get_edge_gateway(@edge_gateway_id).body
end
-
tests('#configure_edge_gateway_services') do
rule = @original_gateway_conf[:Configuration][:EdgeGatewayServiceConfiguration][:FirewallService][:FirewallRule].find { |rule| rule[:Id] == FIREWALL_RULE_ID }
@@ -77,6 +132,16 @@ Shindo.tests('Compute::VcloudDirector | edge gateway requests', ['vclouddirector
response = @service.post_configure_edge_gateway_services(@edge_gateway_id, @new_edge_gateway_configuration)
@service.process_task(response.body)
+ tests('#check for DHCP configuration').returns(@new_edge_gateway_configuration[:GatewayDhcpService][:IsEnabled]) do
+ edge_gateway = @service.get_edge_gateway(@edge_gateway_id).body
+ edge_gateway[:Configuration][:EdgeGatewayServiceConfiguration][:GatewayDhcpService][:IsEnabled]
+ end
+
+ tests('#check for VPN').returns(@new_edge_gateway_configuration[:GatewayIpsecVpnService][:IsEnabled]) do
+ edge_gateway = @service.get_edge_gateway(@edge_gateway_id).body
+ edge_gateway[:Configuration][:EdgeGatewayServiceConfiguration][:GatewayIpsecVpnService][:IsEnabled]
+ end
+
tests('#check for new firewall rule').returns(@new_edge_gateway_configuration[:FirewallService][:FirewallRule]) do
edge_gateway = @service.get_edge_gateway(@edge_gateway_id).body
edge_gateway[:Configuration][:EdgeGatewayServiceConfiguration][:FirewallService][:FirewallRule]
@@ -89,6 +154,48 @@ Shindo.tests('Compute::VcloudDirector | edge gateway requests', ['vclouddirector
edge_gateway = @service.get_edge_gateway(@edge_gateway_id).body
edge_gateway[:Configuration][:EdgeGatewayServiceConfiguration][:FirewallService][:FirewallRule].find { |rule| rule[:Id] == FIREWALL_RULE_ID }
end
+
+ tests('#check Static Routing service configuration').returns(true) do
+ edge_gateway = @service.get_edge_gateway(@edge_gateway_id).body
+ gateway_interface = edge_gateway[:Configuration][:GatewayInterfaces][:GatewayInterface].first
+ @routing_service_configuration[:StaticRoutingService][:StaticRoute].first[:GatewayInterface] = {
+ :type => gateway_interface[:type],
+ :name => gateway_interface[:name],
+ :href => gateway_interface[:href]
+ }
+
+ response = @service.post_configure_edge_gateway_services(@edge_gateway_id,
+ @routing_service_configuration)
+ @service.process_task(response.body)
+ edge_gateway = @service.get_edge_gateway(@edge_gateway_id).body
+ edge_gateway[:Configuration][:EdgeGatewayServiceConfiguration][:StaticRoutingService][:IsEnabled] == "true"
+ end
+
+ tests('#check VPN xml from generator').returns(true) do
+ xml = Nokogiri.XML Fog::Generators::Compute::VcloudDirector::EdgeGatewayServiceConfiguration.new(@vpn_configuration).generate_xml
+ #Not comprehensive, only checks that the generator actually knows how to handle it and that the output looks vagely sane
+ paths = {
+ 'GatewayIpsecVpnService>IsEnabled' => 'true',
+ 'Tunnel>Name' => 'test vpn',
+ 'Tunnel>PeerIpAddress' => '110.110.110.110',
+ 'Tunnel>LocalSubnet>Gateway' => '192.168.90.254',
+ 'Tunnel>PeerSubnet>Netmask' => '255.255.192.0' }
+ paths.none? { |path| (xml.css path[0]).inner_text != path[1] }
+ end
+
+ tests('#check DHCP xml from generator').returns(true) do
+ xml = Nokogiri.XML Fog::Generators::Compute::VcloudDirector::EdgeGatewayServiceConfiguration.new(@dhcp_configuration).generate_xml
+ paths = {
+ 'GatewayDhcpService>IsEnabled' => "true",
+ 'GatewayDhcpService>Pool>IsEnabled' => "true",
+ 'GatewayDhcpService>Pool>Network' => "testNet",
+ 'GatewayDhcpService>Pool>DefaultLeaseTime' => "65",
+ 'GatewayDhcpService>Pool>MaxLeaseTime' => "650",
+ 'GatewayDhcpService>Pool>LowIpAddress' => "192.168.9.2",
+ 'GatewayDhcpService>Pool>HighIpAddress' => "192.168.9.20" }
+ paths.none? { |path| (xml.css path[0]).inner_text != path[1] }
+ end
+
end
tests('Retrieve non-existent edge gateway').raises(Fog::Compute::VcloudDirector::Forbidden) do
diff --git a/tests/vcloud_director/requests/compute/helper.rb b/tests/vcloud_director/requests/compute/helper.rb
index 6a9bd48..71eec6e 100644
--- a/tests/vcloud_director/requests/compute/helper.rb
+++ b/tests/vcloud_director/requests/compute/helper.rb
@@ -1,7 +1,6 @@
class VcloudDirector
module Compute
module Helper
-
def self.test_name
@test_name ||= 'fog-test-%x' % Time.now.to_i
end
@@ -16,19 +15,18 @@ class VcloudDirector
def self.current_org_id(service)
session = service.get_current_session.body
- link = session[:Link].detect do |l|
+ link = session[:Link].find do |l|
l[:type] == 'application/vnd.vmware.vcloud.org+xml'
end
link[:href].split('/').last
end
def self.first_vdc_id(org)
- link = org[:Link].detect do |l|
+ link = org[:Link].find do |l|
l[:type] == 'application/vnd.vmware.vcloud.vdc+xml'
end
link[:href].split('/').last
end
-
end
end
end
diff --git a/tests/vcloud_director/requests/compute/media_tests.rb b/tests/vcloud_director/requests/compute/media_tests.rb
index ba9687e..3290e8b 100644
--- a/tests/vcloud_director/requests/compute/media_tests.rb
+++ b/tests/vcloud_director/requests/compute/media_tests.rb
@@ -112,35 +112,35 @@ Shindo.tests('Compute::VcloudDirector | media requests', ['vclouddirector']) do
tests('TypedValue') do
pending if @service.api_version.to_f < 5.1
tests('key').returns('MetadataStringValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-key'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-key'}
entry[:TypedValue][:xsi_type]
end
tests('boolean').returns('MetadataBooleanValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-boolean'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-boolean'}
entry[:TypedValue][:xsi_type]
end
tests('datetime').returns('MetadataDateTimeValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-datetime'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-datetime'}
entry[:TypedValue][:xsi_type]
end
tests('number').returns('MetadataNumberValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-number'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-number'}
entry[:TypedValue][:xsi_type]
end
tests('key-update').returns('MetadataStringValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-key-update'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-key-update'}
entry[:TypedValue][:xsi_type]
end
tests('boolean-update').returns('MetadataBooleanValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-boolean-update'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-boolean-update'}
entry[:TypedValue][:xsi_type]
end
tests('datetime-update').returns('MetadataDateTimeValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-datetime-update'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-datetime-update'}
entry[:TypedValue][:xsi_type]
end
tests('number-update').returns('MetadataNumberValue') do
- entry = @metadata[:MetadataEntry].detect {|e| e[:Key] == 'fog-test-number-update'}
+ entry = @metadata[:MetadataEntry].find {|e| e[:Key] == 'fog-test-number-update'}
entry[:TypedValue][:xsi_type]
end
end
diff --git a/tests/vcloud_director/requests/compute/network_tests.rb b/tests/vcloud_director/requests/compute/network_tests.rb
index 55a5874..c89b8f1 100644
--- a/tests/vcloud_director/requests/compute/network_tests.rb
+++ b/tests/vcloud_director/requests/compute/network_tests.rb
@@ -42,7 +42,7 @@ Shindo.tests('Compute::VcloudDirector | network requests', ['vclouddirector']) d
end
tests('#get_network').data_matches_schema(GET_NETWORK_FORMAT) do
- link = @org[:Link].detect do |l|
+ link = @org[:Link].find do |l|
l[:rel] == 'down' && l[:type] == 'application/vnd.vmware.vcloud.orgNetwork+xml'
end
pending unless link # nothing to test here cannot continue
@@ -50,16 +50,6 @@ Shindo.tests('Compute::VcloudDirector | network requests', ['vclouddirector']) d
@service.get_network(@network_id).body
end
- tests('#get_network_complete').data_matches_schema(VcloudDirector::Compute::Schema::NETWORK_TYPE) do
- pending if Fog.mocking?
- link = @org[:Link].detect do |l|
- l[:rel] == 'down' && l[:type] == 'application/vnd.vmware.vcloud.orgNetwork+xml'
- end
- pending unless link # nothing to test here cannot continue
- @network_id = link[:href].split('/').last
- @service.get_network_complete(@network_id).body
- end
-
tests('#get_network_metadata').data_matches_schema(VcloudDirector::Compute::Schema::METADATA_TYPE) do
pending if Fog.mocking?
pending unless @network_id # nothing to test here cannot continue
@@ -67,8 +57,8 @@ Shindo.tests('Compute::VcloudDirector | network requests', ['vclouddirector']) d
end
tests('#post_create_org_vdc_network') do
- pending unless Fog.mocking?
- link = @org[:Link].detect do |l|
+ #pending unless Fog.mocking?
+ link = @org[:Link].find do |l|
l[:rel] == 'down' && l[:type] == 'application/vnd.vmware.vcloud.vdc+xml'
end
@@ -101,13 +91,91 @@ Shindo.tests('Compute::VcloudDirector | network requests', ['vclouddirector']) d
@service.process_task(body[:Tasks][:Task]) if body && body.key?(:Tasks)
tests('fetched name matches created name').returns(name) do
- net = @service.get_network(@created_net_id).body
+ net = @service.get_network_complete(@created_net_id).body
net[:name]
end
+
+ end
+
+ tests('#get_network_complete schema').data_matches_schema(VcloudDirector::Compute::Schema::NETWORK_TYPE) do
+ link = @org[:Link].find do |l|
+ l[:rel] == 'down' && l[:type] == 'application/vnd.vmware.vcloud.orgNetwork+xml'
+ end
+ pending unless link # nothing to test here cannot continue
+ @network_id = link[:href].split('/').last
+ @service.get_network_complete(@network_id).body
+ end
+
+ tests('#get_network_complete') do
+ new_network = @service.get_network_complete(@created_net_id).body
+ tests('network has a :name') do
+ new_network.fetch(:name)
+ end
+ tests('network has a :Description') do
+ new_network.fetch(:Description)
+ end
+ tests('network has a :Gateway') do
+ new_network[:Configuration][:IpScopes][:IpScope][:Gateway]
+ end
+ tests('network has a several :IpRanges') do
+ new_network[:Configuration][:IpScopes][:IpScope][:IpRanges].size >= 1
+ end
+ end
+
+ tests('#put_network') do
+
+ new_options = {
+ :Description => "Testing put_network",
+ :Configuration => {
+ :IpScopes => {
+ :IpScope => {
+ :IsInherited => 'false',
+ :Gateway => '198.51.100.1',
+ :Netmask => '255.255.255.0',
+ :Dns1 => '198.51.100.2',
+ :Dns2 => '198.51.100.3',
+ :DnsSuffix => 'example.com',
+ :IpRanges => [
+ { :IpRange => { :StartAddress => '198.51.100.10', :EndAddress => '198.51.100.20' } },
+ { :IpRange => { :StartAddress => '198.51.100.30', :EndAddress => '198.51.100.40' } },
+ ]
+ },
+ },
+ :FenceMode => 'isolated',
+ }
+ }
+
+ original_network = @service.get_network_complete(@created_net_id).body
+ name = original_network[:name]
+
+ task = @service.put_network(@created_net_id, name, new_options).body
+ @service.process_task(task)
+
+ tests('fetched :Gateway matches updated :Gateway').returns(
+ new_options[:Configuration][:IpScopes][:IpScope][:Gateway]
+ ) do
+ net = @service.get_network_complete(@created_net_id).body
+ net[:Configuration][:IpScopes][:IpScope][:Gateway]
+ end
+
+ tests('fetched :IpRanges count is matches updated data').returns(
+ new_options[:Configuration][:IpScopes][:IpScope][:IpRanges].size
+ ) do
+ net = @service.get_network_complete(@created_net_id).body
+ # dammit, the API returns with IpRange as a list, not IpRanges
+ net[:Configuration][:IpScopes][:IpScope][:IpRanges][:IpRange].size
+ end
+
+ tests('fetched :Network matches updated :Description').returns(
+ new_options[:Description]
+ ) do
+ net = @service.get_network_complete(@created_net_id).body
+ net[:Description]
+ end
+
end
tests('#delete_network') do
- pending unless Fog.mocking?
@delete_task = @service.delete_network(@created_net_id).body
@service.process_task(@delete_task)
tests('created network has been deleted').raises(Fog::Compute::VcloudDirector::Forbidden) do
diff --git a/tests/vcloud_director/requests/compute/organization_tests.rb b/tests/vcloud_director/requests/compute/organization_tests.rb
index dd00571..34b744e 100644
--- a/tests/vcloud_director/requests/compute/organization_tests.rb
+++ b/tests/vcloud_director/requests/compute/organization_tests.rb
@@ -7,7 +7,7 @@ Shindo.tests('Compute::VcloudDirector | organization requests', ['vclouddirector
end
tests('#get_organization').data_matches_schema(VcloudDirector::Compute::Schema::ORG_TYPE) do
- org = @org_list[:Org].detect {|o| o[:name] == @service.org_name}
+ org = @org_list[:Org].find {|o| o[:name] == @service.org_name}
@org_uuid = org[:href].split('/').last
@service.get_organization(@org_uuid).body
end
diff --git a/tests/vcloud_director/requests/compute/ovf_descriptor_tests.rb b/tests/vcloud_director/requests/compute/ovf_descriptor_tests.rb
index ddf608c..ac82eab 100644
--- a/tests/vcloud_director/requests/compute/ovf_descriptor_tests.rb
+++ b/tests/vcloud_director/requests/compute/ovf_descriptor_tests.rb
@@ -5,7 +5,7 @@ Shindo.tests('Compute::VcloudDirector | ovf requests', ['vclouddirector']) do
tests('Get first vDC') do
session = @service.get_current_session.body
- link = @org[:Link].detect do |l|
+ link = @org[:Link].find do |l|
l[:type] == 'application/vnd.vmware.vcloud.vdc+xml'
end
@vdc = @service.get_vdc(link[:href].split('/').last).body
@@ -14,7 +14,7 @@ Shindo.tests('Compute::VcloudDirector | ovf requests', ['vclouddirector']) do
# 'Envelope' is the outer type of the parsed XML document.
tests('#get_vapp_ovf_descriptor').returns('Envelope') do
pending if Fog.mocking?
- link = @vdc[:ResourceEntities][:ResourceEntity].detect do |l|
+ link = @vdc[:ResourceEntities][:ResourceEntity].find do |l|
l[:type] == 'application/vnd.vmware.vcloud.vApp+xml'
end
pending if link.nil?
@@ -25,7 +25,7 @@ Shindo.tests('Compute::VcloudDirector | ovf requests', ['vclouddirector']) do
# 'Envelope' is the outer type of the parsed XML document.
tests('#get_vapp_template_ovf_descriptor').returns('Envelope') do
pending if Fog.mocking?
- link = @vdc[:ResourceEntities][:ResourceEntity].detect do |l|
+ link = @vdc[:ResourceEntities][:ResourceEntity].find do |l|
l[:type] == 'application/vnd.vmware.vcloud.vAppTemplate+xml'
end
pending if link.nil?
diff --git a/tests/vcloud_director/requests/compute/query_tests.rb b/tests/vcloud_director/requests/compute/query_tests.rb
index c9a9a10..522ff29 100644
--- a/tests/vcloud_director/requests/compute/query_tests.rb
+++ b/tests/vcloud_director/requests/compute/query_tests.rb
@@ -11,7 +11,7 @@ Shindo.tests('Compute::VcloudDirector | query requests', ['vclouddirector']) do
end
end
- # for each queriable type, query and check that each available format
+ # for each queriable type, query and check that each available format
# returns a result that matches the base schema
#
@query_list[:Link].select do |link|
@@ -35,7 +35,7 @@ Shindo.tests('Compute::VcloudDirector | query requests', ['vclouddirector']) do
tests("resource type").returns(link[:type]) { @body[:type] }
unless ( type == 'event' || type == 'edgeGateway' )
- records_key = @body.keys.detect {|key| key.to_s =~ /Record|Reference$/}
+ records_key = @body.keys.find {|key| key.to_s =~ /Record|Reference$/}
if records = @body[records_key]
records.first do |record|
case format
@@ -91,7 +91,7 @@ Shindo.tests('Compute::VcloudDirector | query requests', ['vclouddirector']) do
tests('fields option raises MockNotImplemented').raises(Fog::Errors::MockNotImplemented) do
@service.get_execute_query('orgVdcNetwork', :fields => 'name,thing')
end
- end
+ end
end
end
end
diff --git a/tests/vcloud_director/requests/compute/schema_helper.rb b/tests/vcloud_director/requests/compute/schema_helper.rb
index f161395..1ba9221 100644
--- a/tests/vcloud_director/requests/compute/schema_helper.rb
+++ b/tests/vcloud_director/requests/compute/schema_helper.rb
@@ -1,7 +1,6 @@
class VcloudDirector
module Compute
module Schema
-
# Mapping of a content media type to a xsd complex type.
MEDIA_TYPE_MAPPING_TYPE = {
:MediaType => String,
@@ -382,7 +381,6 @@ class VcloudDirector
:Other => Fog::Nullable::String
}
-
# Represents a firewall rule.
FIREWALL_RULE_TYPE = {
:Id => String,
@@ -617,14 +615,16 @@ class VcloudDirector
:IpScopes => {
:IpScope => {
:IsInherited => String,
- :Gateway => String,
+ :Gateway => Fog::Nullable::String,
:Netmask => String,
:Dns1 => String,
:Dns2 => String,
+ :DnsSuffix => String,
:IsEnabled=> String,
+ :IpRanges=> IP_RANGES_TYPE,
}
},
- :FenceMode => String,
+ :FenceMode => Fog::Nullable::String,
:RetainNetInfoAcrossDeployments => String,
}
@@ -632,7 +632,6 @@ class VcloudDirector
:name => String,
:href => String,
:type => String,
- :status => String,
:id => String,
:Description => String,
:Configuration => NETWORK_CONFIGURATION_TYPE,
diff --git a/tests/vcloud_director/requests/compute/task_tests.rb b/tests/vcloud_director/requests/compute/task_tests.rb
index da272b2..e9e9056 100644
--- a/tests/vcloud_director/requests/compute/task_tests.rb
+++ b/tests/vcloud_director/requests/compute/task_tests.rb
@@ -18,7 +18,7 @@ Shindo.tests('Compute::VcloudDirector | task requests', ['vclouddirector']) do
tests('#get_task_list').data_matches_schema(VcloudDirector::Compute::Schema::TASKS_LIST_TYPE) do
session = @service.get_current_session.body
- org_href = session[:Link].detect {|l| l[:type] == 'application/vnd.vmware.vcloud.org+xml'}[:href]
+ org_href = session[:Link].find {|l| l[:type] == 'application/vnd.vmware.vcloud.org+xml'}[:href]
@org_uuid = org_href.split('/').last
@tasks_list = @service.get_task_list(@org_uuid).body
end
diff --git a/tests/vcloud_director/requests/compute/vapp_tests.rb b/tests/vcloud_director/requests/compute/vapp_tests.rb
index 1bf44a4..17ac67b 100644
--- a/tests/vcloud_director/requests/compute/vapp_tests.rb
+++ b/tests/vcloud_director/requests/compute/vapp_tests.rb
@@ -15,29 +15,58 @@ Shindo.tests('Compute::VcloudDirector | vapp requests', ['vclouddirector']) do
@vapp_id = v[:href].split('/').last
#tests("#get_vapp(#{@vapp_id})").data_matches_schema(VcloudDirector::Compute::Schema::VAPP_TYPE) do
- tests("#get_vapp(#{@vapp_id})").returns(Hash) do
- pending if Fog.mocking?
+ tests("#get_vapp(#{@vapp_id}).body").returns(Hash) do
@service.get_vapp(@vapp_id).body.class
end
+ tests("#get_vapp(#{@vapp_id}).body[:name]").returns(String) do
+ @service.get_vapp(@vapp_id).body[:name].class
+ end
+
+ tests("#get_vapp(#{@vapp_id}).body[:href]").returns(v[:href]) do
+ @service.get_vapp(@vapp_id).body[:href]
+ end
+
tests("#get_lease_settings_section_vapp(#{@vapp_id})").returns(Hash) do
- pending if Fog.mocking?
@service.get_lease_settings_section_vapp(@vapp_id).body.class
end
+
+ tests("#get_lease_settings_section_vapp(#{@vapp_id}).body[:DeploymentLeaseInSeconds] is >= 0").returns(true) do
+ Integer(@service.get_lease_settings_section_vapp(@vapp_id).body[:DeploymentLeaseInSeconds]) >= 0
+ end
+
+ tests("#get_vapp(#{@vapp_id}).body[:LeaseSettingsSection[:DeploymentLeaseInSeconds] is >= 0").returns(true) do
+ Integer(@service.get_vapp(@vapp_id).body[:LeaseSettingsSection][:DeploymentLeaseInSeconds]) >= 0
+ end
+
+ tests("#get_vapp(#{@vapp_id}).body[:NetworkConfigSection]").returns(Hash) do
+ @service.get_vapp(@vapp_id).body[:NetworkConfigSection].class
+ end
+
tests("#get_network_config_section_vapp(#{@vapp_id})").returns(Hash) do
- pending if Fog.mocking?
@service.get_network_config_section_vapp(@vapp_id).body.class
end
+
tests("#get_network_section_vapp(#{@vapp_id})").returns(Hash) do
pending if Fog.mocking?
@service.get_network_section_vapp(@vapp_id).body.class
end
+
tests("#get_product_sections_vapp(#{@vapp_id})").returns(Hash) do
pending if Fog.mocking?
@service.get_product_sections_vapp(@vapp_id).body.class
end
- tests("#get_startup_section(#{@vapp_id})").returns(Hash) do
+
+ tests("#get_vapp(#{@vapp_id}).body[:'ovf:StartupSection']").returns(Hash) do
+ @service.get_vapp(@vapp_id).body[:"ovf:StartupSection"].class
+ end
+
+ tests("#put_product_sections(#{@vapp_id})").returns(Hash) do
pending if Fog.mocking?
+ @service.put_product_sections(@vapp_id, ["a" => "1"]).body.class
+ end
+
+ tests("#get_startup_section(#{@vapp_id})").returns(Hash) do
@service.get_startup_section(@vapp_id).body.class
end
@@ -47,14 +76,18 @@ Shindo.tests('Compute::VcloudDirector | vapp requests', ['vclouddirector']) do
end
tests("#get_vapp_owner(#{@vapp_id})").data_matches_schema(VcloudDirector::Compute::Schema::OWNER_TYPE) do
- pending if Fog.mocking?
@service.get_vapp_owner(@vapp_id).body
end
+ tests("#get_vapp(#{@vapp_id}).body[:Owner]").data_matches_schema(VcloudDirector::Compute::Schema::OWNER_TYPE) do
+ @service.get_vapp(@vapp_id).body[:Owner]
+ end
+
tests("#get_control_access_params_vapp(#{@vapp_id})").data_matches_schema(VcloudDirector::Compute::Schema::CONTROL_ACCESS_PARAMS_TYPE) do
pending if Fog.mocking?
@service.get_control_access_params_vapp(@vapp_id).body
end
+
end
end
end
@@ -79,7 +112,6 @@ Shindo.tests('Compute::VcloudDirector | vapp requests', ['vclouddirector']) do
end
tests('Retrieve owner of non-existent vApp').raises(Fog::Compute::VcloudDirector::Forbidden) do
- pending if Fog.mocking?
@service.get_vapp_owner('00000000-0000-0000-0000-000000000000')
end
diff --git a/tests/vcloud_director/requests/compute/vdc_tests.rb b/tests/vcloud_director/requests/compute/vdc_tests.rb
index ee29209..5c0a4ca 100644
--- a/tests/vcloud_director/requests/compute/vdc_tests.rb
+++ b/tests/vcloud_director/requests/compute/vdc_tests.rb
@@ -4,7 +4,7 @@ Shindo.tests('Compute::VcloudDirector | vdc requests', ['vclouddirector']) do
@org = VcloudDirector::Compute::Helper.current_org(@service)
tests('#get_vdc').data_matches_schema(VcloudDirector::Compute::Schema::VDC_TYPE) do
- link = @org[:Link].detect do |l|
+ link = @org[:Link].find do |l|
l[:rel] == 'down' && l[:type] == 'application/vnd.vmware.vcloud.vdc+xml'
end
@vdc_id = link[:href].split('/').last
diff --git a/tests/vcloud_director/requests/compute/versions_tests.rb b/tests/vcloud_director/requests/compute/versions_tests.rb
index d3d809b..7d102c8 100644
--- a/tests/vcloud_director/requests/compute/versions_tests.rb
+++ b/tests/vcloud_director/requests/compute/versions_tests.rb
@@ -7,7 +7,7 @@ Shindo.tests('Compute::VcloudDirector | versions requests', ['vclouddirector'])
end
tests('API 5.1 is supported').returns(true) do
- !!@versions[:VersionInfo].detect {|i| i[:Version] == '5.1'}
+ !!@versions[:VersionInfo].find {|i| i[:Version] == '5.1'}
end
end
diff --git a/tests/vcloud_director/requests/compute/vm_tests.rb b/tests/vcloud_director/requests/compute/vm_tests.rb
index ba511b2..652cc9b 100644
--- a/tests/vcloud_director/requests/compute/vm_tests.rb
+++ b/tests/vcloud_director/requests/compute/vm_tests.rb
@@ -16,63 +16,122 @@ Shindo.tests('Compute::VcloudDirector | vm requests', ['vclouddirector']) do
vapp = @service.get_vapp(vapp_id).body
tests('Each VM') do
+
vapp[:Children][:Vm].each do |vm|
vm_id = vm[:href].split('/').last
+ tests("#get_vapp(#{vm_id}).body").returns(Hash) do
+ @service.get_vapp(vm_id).body.class
+ end
+
+ tests("#get_vapp(#{vm_id}).body[:name]").returns(String) do
+ @service.get_vapp(vm_id).body[:name].class
+ end
+
+ tests("#get_vapp(#{vm_id}).body[:href]").returns(vm[:href]) do
+ @service.get_vapp(vm_id).body[:href]
+ end
+
+ tests("#get_vapp(#{vm_id}).body[:GuestCustomizationSection]").returns(Hash) do
+ @service.get_vapp(vm_id).body[:GuestCustomizationSection].class
+ end
+
+ tests("#get_vapp(#{vm_id}).body[:GuestCustomizationSection]").data_matches_schema(VcloudDirector::Compute::Schema::GUEST_CUSTOMIZATION_SECTION_TYPE) do
+ @service.get_vapp(vm_id).body[:GuestCustomizationSection]
+ end
+
+ tests("#get_guest_customization_system_section_vapp(#{vm_id})").returns(Hash) do
+ @service.get_guest_customization_system_section_vapp(vm_id).body.class
+ end
+
tests("#get_guest_customization_system_section_vapp(#{vm_id})").data_matches_schema(VcloudDirector::Compute::Schema::GUEST_CUSTOMIZATION_SECTION_TYPE) do
- pending if Fog.mocking?
@service.get_guest_customization_system_section_vapp(vm_id).body
end
+
+ tests("#get_vapp(#{vm_id}).body[:NetworkConnectionSection]").returns(Hash) do
+ @service.get_vapp(vm_id).body[:NetworkConnectionSection].class
+ end
+
tests("#get_network_connection_system_section_vapp(#{vm_id})").returns(Hash) do
- pending if Fog.mocking?
@service.get_network_connection_system_section_vapp(vm_id).body.class
end
+
+ tests("#get_vapp(#{vm_id}).body[:'ovf:OperatingSystemSection']").returns(Hash) do
+ @service.get_vapp(vm_id).body[:'ovf:OperatingSystemSection'].class
+ end
+
tests("#get_operating_system_section(#{vm_id})").returns(Hash) do
- pending if Fog.mocking?
@service.get_operating_system_section(vm_id).body.class
end
+
tests("#get_product_sections_vapp(#{vm_id})").returns(Hash) do
pending if Fog.mocking?
@service.get_product_sections_vapp(vm_id).body.class
end
+
+ tests("#get_vapp(#{vm_id}).body[:RuntimeInfoSection]").data_matches_schema(VcloudDirector::Compute::Schema::RUNTIME_INFO_SECTION_TYPE) do
+ @service.get_vapp(vm_id).body[:RuntimeInfoSection]
+ end
+
tests("#get_runtime_info_section_type(#{vm_id})").data_matches_schema(VcloudDirector::Compute::Schema::RUNTIME_INFO_SECTION_TYPE) do
- pending if Fog.mocking?
- pending # fails if WMware Tools not installed
@service.get_runtime_info_section_type(vm_id).body
end
+
tests("#get_snapshot_section(#{vm_id})").returns(Hash) do
- pending if Fog.mocking?
@service.get_snapshot_section(vm_id).body.class
end
+
+ tests("#get_vapp(#{vm_id}).body[:VmCapabilities]").data_matches_schema(VcloudDirector::Compute::Schema::VM_CAPABILITIES_TYPE) do
+ @service.get_vapp(vm_id).body[:VmCapabilities]
+ end
+
tests("#get_vm_capabilities(#{vm_id})").data_matches_schema(VcloudDirector::Compute::Schema::VM_CAPABILITIES_TYPE) do
- pending if Fog.mocking?
@service.get_vm_capabilities(vm_id).body
end
+ tests("#get_vapp(#{vm_id}).body[:'ovf:VirtualHardwareSection']").returns(Hash) do
+ @section = @service.get_vapp(vm_id).body[:'ovf:VirtualHardwareSection'].class
+ end
+
tests("#get_virtual_hardware_section(#{vm_id})").returns(Hash) do
pending if Fog.mocking?
@section = @service.get_virtual_hardware_section(vm_id).body.class
end
+
tests("#get_cpu_rasd_item(#{vm_id})").returns(Hash) do
- pending if Fog.mocking?
@service.get_cpu_rasd_item(vm_id).body.class
end
+
tests("#get_disks_rasd_items_list(#{vm_id})").returns(Hash) do
- pending if Fog.mocking?
@service.get_disks_rasd_items_list(vm_id).body.class
end
+
+ tests("#get_disks_rasd_items_list(#{vm_id}).body[:Item]").returns(Array) do
+ @service.get_disks_rasd_items_list(vm_id).body[:Item].class
+ end
+
tests("#get_media_drives_rasd_items_list(#{vm_id})").returns(Hash) do
- pending if Fog.mocking?
@service.get_media_drives_rasd_items_list(vm_id).body.class
end
+
+ tests("#get_media_drives_rasd_items_list(#{vm_id}).body[:Item]").returns(Array) do
+ @service.get_media_drives_rasd_items_list(vm_id).body[:Item].class
+ end
+
tests("#get_memory_rasd_item(#{vm_id})").returns(Hash) do
- pending if Fog.mocking?
@service.get_memory_rasd_item(vm_id).body.class
end
+
+ tests("#get_vapp(#{vm_id}) ovf:VirtualHardwareSection has a Network adapter listed").returns(Hash) do
+ @service.get_vapp(vm_id).body[:'ovf:VirtualHardwareSection'][:'ovf:Item'].detect do |rasd_item|
+ rasd_item[:'rasd:ElementName'] =~ /^Network adapter/
+ end.class
+ end
+
tests("#get_network_cards_items_list(#{vm_id})").returns(Hash) do
- pending if Fog.mocking?
@service.get_network_cards_items_list(vm_id).body.class
end
+
tests("#get_serial_ports_items_list(#{vm_id})").returns(Hash) do
pending if Fog.mocking?
@service.get_serial_ports_items_list(vm_id).body.class
@@ -87,6 +146,7 @@ Shindo.tests('Compute::VcloudDirector | vm requests', ['vclouddirector']) do
pending # result depends on power state
@service.post_acquire_ticket(vm_id).body
end
+
end
end
end
diff --git a/tests/vsphere/compute_tests.rb b/tests/vsphere/compute_tests.rb
index 5b6207b..70d6274 100644
--- a/tests/vsphere/compute_tests.rb
+++ b/tests/vsphere/compute_tests.rb
@@ -5,7 +5,6 @@ Shindo.tests('Fog::Compute[:vsphere]', ['vsphere']) do
tests("| convert_vm_mob_ref_to_attr_hash") do
# Mock the RbVmomi::VIM::ManagedObject class
class MockManagedObject
-
attr_reader :parent, :_ref
def initialize
@@ -52,4 +51,3 @@ Shindo.tests('Fog::Compute[:vsphere]', ['vsphere']) do
end
end
end
-
diff --git a/tests/vsphere/models/compute/server_tests.rb b/tests/vsphere/models/compute/server_tests.rb
index 261fc24..4f692f7 100644
--- a/tests/vsphere/models/compute/server_tests.rb
+++ b/tests/vsphere/models/compute/server_tests.rb
@@ -34,7 +34,7 @@ Shindo.tests('Fog::Compute[:vsphere] | server model', ['vsphere']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/vsphere/requests/compute/current_time_tests.rb b/tests/vsphere/requests/compute/current_time_tests.rb
index 9b2f0a2..a19755d 100644
--- a/tests/vsphere/requests/compute/current_time_tests.rb
+++ b/tests/vsphere/requests/compute/current_time_tests.rb
@@ -5,7 +5,7 @@ Shindo.tests('Fog::Compute[:vsphere] | current_time request', ['vsphere']) do
tests('The response should') do
response = compute.current_time
test('be a kind of Hash') { response.kind_of? Hash }
- test('have a current_time key') { response.has_key? 'current_time' }
+ test('have a current_time key') { response.key? 'current_time' }
test('have a current_time key with a Time value') { response['current_time'].kind_of? Time }
end
diff --git a/tests/vsphere/requests/compute/set_vm_customvalue_tests.rb b/tests/vsphere/requests/compute/set_vm_customvalue_tests.rb
index 76ba88f..7adcebe 100644
--- a/tests/vsphere/requests/compute/set_vm_customvalue_tests.rb
+++ b/tests/vsphere/requests/compute/set_vm_customvalue_tests.rb
@@ -18,4 +18,3 @@ Shindo.tests('Fog::Compute[:vsphere] | set_vm_customvalue request', ['vsphere'])
end
end
-
diff --git a/tests/vsphere/requests/compute/vm_clone_tests.rb b/tests/vsphere/requests/compute/vm_clone_tests.rb
index 0dd3383..5d8abc5 100644
--- a/tests/vsphere/requests/compute/vm_clone_tests.rb
+++ b/tests/vsphere/requests/compute/vm_clone_tests.rb
@@ -12,7 +12,7 @@ Shindo.tests("Fog::Compute[:vsphere] | vm_clone request", 'vsphere') do
response = compute.vm_clone('datacenter' => datacenter, 'template_path' => template, 'name' => 'cloning_vm', 'wait' => true)
test("be a kind of Hash") { response.kind_of? Hash }
%w{ vm_ref new_vm task_ref }.each do |key|
- test("have a #{key} key") { response.has_key? key }
+ test("have a #{key} key") { response.key? key }
end
test("creates a new server") { compute.servers.size == servers_size+1 }
test("new server name is set") { compute.get_virtual_machine(response['new_vm']['id'])['name'] == 'cloning_vm' }
@@ -23,7 +23,7 @@ Shindo.tests("Fog::Compute[:vsphere] | vm_clone request", 'vsphere') do
response = compute.vm_clone('datacenter' => datacenter, 'template_path' => template, 'name' => 'cloning_vm', 'memoryMB' => '8192', 'numCPUs' => '8', 'wait' => true)
test("be a kind of Hash") { response.kind_of? Hash }
%w{ vm_ref new_vm task_ref }.each do |key|
- test("have a #{key} key") { response.has_key? key }
+ test("have a #{key} key") { response.key? key }
end
test("creates a new server") { compute.servers.size == servers_size+1 }
test("new server name is set") { compute.get_virtual_machine(response['new_vm']['id'])['name'] == 'cloning_vm' }
@@ -34,7 +34,7 @@ Shindo.tests("Fog::Compute[:vsphere] | vm_clone request", 'vsphere') do
response = compute.vm_clone('datacenter' => datacenter, 'template_path' => template, 'name' => 'cloning_vm_linked', 'wait' => 1, 'linked_clone' => true)
test("be a kind of Hash") { response.kind_of? Hash }
%w{ vm_ref new_vm task_ref }.each do |key|
- test("have a #{key} key") { response.has_key? key }
+ test("have a #{key} key") { response.key? key }
end
test("creates a new server") { compute.servers.size == servers_size+1 }
test("new server name is set") { compute.get_virtual_machine(response['new_vm']['id'])['name'] == 'cloning_vm_linked' }
diff --git a/tests/vsphere/requests/compute/vm_config_vnc_tests.rb b/tests/vsphere/requests/compute/vm_config_vnc_tests.rb
index 9350d06..cb126cd 100644
--- a/tests/vsphere/requests/compute/vm_config_vnc_tests.rb
+++ b/tests/vsphere/requests/compute/vm_config_vnc_tests.rb
@@ -8,12 +8,12 @@ Shindo.tests('Fog::Compute[:vsphere] | vm_config_vnc request', ['vsphere']) do
tests('The response should') do
response = compute.vm_config_vnc('instance_uuid' => reconfig_target).merge(vnc_spec)
test('be a kind of Hash') { response.kind_of? Hash }
- test('should have a task_state key') { response.has_key? 'task_state' }
+ test('should have a task_state key') { response.key? 'task_state' }
end
tests('VNC attrs response should') do
response = compute.vm_get_vnc(reconfig_target)
test('be a kind of Hash') { response.kind_of? Hash }
- test('should have a port key') { response.has_key? :port }
+ test('should have a port key') { response.key? :port }
end
end
diff --git a/tests/vsphere/requests/compute/vm_destroy_tests.rb b/tests/vsphere/requests/compute/vm_destroy_tests.rb
index a41b374..1b4a5d6 100644
--- a/tests/vsphere/requests/compute/vm_destroy_tests.rb
+++ b/tests/vsphere/requests/compute/vm_destroy_tests.rb
@@ -7,7 +7,7 @@ Shindo.tests('Fog::Compute[:vsphere] | vm_destroy request', ['vsphere']) do
tests('The response should') do
response = compute.vm_destroy('instance_uuid' => booted_vm)
test('be a kind of Hash') { response.kind_of? Hash }
- test('should have a task_state key') { response.has_key? 'task_state' }
+ test('should have a task_state key') { response.key? 'task_state' }
end
tests('The expected options') do
diff --git a/tests/vsphere/requests/compute/vm_migrate_tests.rb b/tests/vsphere/requests/compute/vm_migrate_tests.rb
index 2526425..74f425f 100644
--- a/tests/vsphere/requests/compute/vm_migrate_tests.rb
+++ b/tests/vsphere/requests/compute/vm_migrate_tests.rb
@@ -7,9 +7,9 @@ Shindo.tests('Fog::Compute[:vsphere] | vm_migrate request', ['vsphere']) do
tests('The response should') do
response = compute.vm_migrate('instance_uuid' => powered_on_vm)
test('be a kind of Hash') { response.kind_of? Hash }
- test('should have a task_state key') { response.has_key? 'task_state' }
+ test('should have a task_state key') { response.key? 'task_state' }
end
-
+
tests('The expected options') do
raises(ArgumentError, 'raises ArgumentError when instance_uuid option is missing') { compute.vm_migrate }
end
diff --git a/tests/vsphere/requests/compute/vm_power_off_tests.rb b/tests/vsphere/requests/compute/vm_power_off_tests.rb
index e8684db..f961bb3 100644
--- a/tests/vsphere/requests/compute/vm_power_off_tests.rb
+++ b/tests/vsphere/requests/compute/vm_power_off_tests.rb
@@ -7,8 +7,8 @@ Shindo.tests('Fog::Compute[:vsphere] | vm_power_off request', ['vsphere']) do
tests('The response should') do
response = compute.vm_power_off('instance_uuid' => powered_on_vm)
test('be a kind of Hash') { response.kind_of? Hash }
- test('should have a task_state key') { response.has_key? 'task_state' }
- test('should have a power_off_type key') { response.has_key? 'power_off_type' }
+ test('should have a task_state key') { response.key? 'task_state' }
+ test('should have a power_off_type key') { response.key? 'power_off_type' }
end
# When forcing the shutdown, we expect the result to be
diff --git a/tests/vsphere/requests/compute/vm_power_on_tests.rb b/tests/vsphere/requests/compute/vm_power_on_tests.rb
index 344f63c..1ee007f 100644
--- a/tests/vsphere/requests/compute/vm_power_on_tests.rb
+++ b/tests/vsphere/requests/compute/vm_power_on_tests.rb
@@ -7,7 +7,7 @@ Shindo.tests('Fog::Compute[:vsphere] | vm_power_on request', ['vsphere']) do
tests('The response should') do
response = compute.vm_power_on('instance_uuid' => powered_off_vm)
test('be a kind of Hash') { response.kind_of? Hash }
- test('should have a task_state key') { response.has_key? 'task_state' }
+ test('should have a task_state key') { response.key? 'task_state' }
end
tests('The expected options') do
diff --git a/tests/vsphere/requests/compute/vm_reboot_tests.rb b/tests/vsphere/requests/compute/vm_reboot_tests.rb
index 4886f6d..2418918 100644
--- a/tests/vsphere/requests/compute/vm_reboot_tests.rb
+++ b/tests/vsphere/requests/compute/vm_reboot_tests.rb
@@ -7,8 +7,8 @@ Shindo.tests('Fog::Compute[:vsphere] | vm_reboot request', ['vsphere']) do
tests('The response should') do
response = compute.vm_reboot('instance_uuid' => powered_on_vm)
test('be a kind of Hash') { response.kind_of? Hash }
- test('should have a task_state key') { response.has_key? 'task_state' }
- test('should have a reboot_type key') { response.has_key? 'reboot_type' }
+ test('should have a task_state key') { response.key? 'task_state' }
+ test('should have a reboot_type key') { response.key? 'reboot_type' }
end
# When forcing the shutdown, we expect the result to be
diff --git a/tests/vsphere/requests/compute/vm_reconfig_cpus_tests.rb b/tests/vsphere/requests/compute/vm_reconfig_cpus_tests.rb
index 63bd7af..e0eeadb 100644
--- a/tests/vsphere/requests/compute/vm_reconfig_cpus_tests.rb
+++ b/tests/vsphere/requests/compute/vm_reconfig_cpus_tests.rb
@@ -8,7 +8,7 @@ Shindo.tests('Fog::Compute[:vsphere] | vm_reconfig_cpus request', ['vsphere']) d
tests('The response should') do
response = compute.vm_reconfig_cpus('instance_uuid' => reconfig_target, 'cpus' => reconfig_spec)
test('be a kind of Hash') { response.kind_of? Hash }
- test('should have a task_state key') { response.has_key? 'task_state' }
+ test('should have a task_state key') { response.key? 'task_state' }
end
tests('The expected options') do
diff --git a/tests/vsphere/requests/compute/vm_reconfig_hardware_tests.rb b/tests/vsphere/requests/compute/vm_reconfig_hardware_tests.rb
index 0f73118..db73b3e 100644
--- a/tests/vsphere/requests/compute/vm_reconfig_hardware_tests.rb
+++ b/tests/vsphere/requests/compute/vm_reconfig_hardware_tests.rb
@@ -8,7 +8,7 @@ Shindo.tests('Fog::Compute[:vsphere] | vm_reconfig_hardware request', ['vsphere'
tests('The response should') do
response = compute.vm_reconfig_hardware('instance_uuid' => reconfig_target, 'hardware_spec' => reconfig_spec)
test('be a kind of Hash') { response.kind_of? Hash }
- test('should have a task_state key') { response.has_key? 'task_state' }
+ test('should have a task_state key') { response.key? 'task_state' }
end
tests('The expected options') do
diff --git a/tests/vsphere/requests/compute/vm_reconfig_memory_tests.rb b/tests/vsphere/requests/compute/vm_reconfig_memory_tests.rb
index 68c7665..64aa269 100644
--- a/tests/vsphere/requests/compute/vm_reconfig_memory_tests.rb
+++ b/tests/vsphere/requests/compute/vm_reconfig_memory_tests.rb
@@ -8,7 +8,7 @@ Shindo.tests('Fog::Compute[:vsphere] | vm_reconfig_memory request', ['vsphere'])
tests('The response should') do
response = compute.vm_reconfig_memory('instance_uuid' => reconfig_target, 'memory' => reconfig_spec)
test('be a kind of Hash') { response.kind_of? Hash }
- test('should have a task_state key') { response.has_key? 'task_state' }
+ test('should have a task_state key') { response.key? 'task_state' }
end
tests('The expected options') do
diff --git a/tests/xenserver/compute_tests.rb b/tests/xenserver/compute_tests.rb
index 5103c34..7ec7238 100644
--- a/tests/xenserver/compute_tests.rb
+++ b/tests/xenserver/compute_tests.rb
@@ -49,4 +49,3 @@ Shindo.tests('Fog::Compute[:xenserver]', ['xenserver']) do
end
end
end
-
diff --git a/tests/xenserver/helper.rb b/tests/xenserver/helper.rb
index 4744790..de82ebd 100644
--- a/tests/xenserver/helper.rb
+++ b/tests/xenserver/helper.rb
@@ -12,7 +12,7 @@ def valid_ref?(ref)
end
def create_ephemeral_vm
- Fog::Compute[:xenserver].servers.create(:name => test_ephemeral_vm_name,
+ Fog::Compute[:xenserver].servers.create(:name => test_ephemeral_vm_name,
:template_name => test_template_name)
end
@@ -26,7 +26,7 @@ def destroy_ephemeral_servers
(servers.all :name_matches => test_ephemeral_vm_name).each do |s|
s.destroy
end
- (servers.templates.find_all { |t| t.name == test_ephemeral_vm_name}).each do |s|
+ (servers.templates.select { |t| t.name == test_ephemeral_vm_name}).each do |s|
s.destroy
end
end
diff --git a/tests/xenserver/models/compute/console_test.rb b/tests/xenserver/models/compute/console_test.rb
index 6d6be81..68177c8 100644
--- a/tests/xenserver/models/compute/console_test.rb
+++ b/tests/xenserver/models/compute/console_test.rb
@@ -20,7 +20,7 @@ Shindo.tests('Fog::Compute[:xenserver] | console model', ['xenserver']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/xenserver/models/compute/host_cpu_tests.rb b/tests/xenserver/models/compute/host_cpu_tests.rb
index b9bcdd4..388f000 100644
--- a/tests/xenserver/models/compute/host_cpu_tests.rb
+++ b/tests/xenserver/models/compute/host_cpu_tests.rb
@@ -6,7 +6,7 @@ Shindo.tests('Fog::Compute[:xenserver] | HostCpu model', ['xenserver']) do
tests('The HostCpu model should') do
tests('have attributes') do
model_attribute_hash = host_cpu.attributes
- attributes = [
+ attributes = [
:reference,
:uuid,
:family,
@@ -28,7 +28,7 @@ Shindo.tests('Fog::Compute[:xenserver] | HostCpu model', ['xenserver']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
@@ -40,15 +40,15 @@ Shindo.tests('Fog::Compute[:xenserver] | HostCpu model', ['xenserver']) do
test("return a valid host") do
host_cpu.host.kind_of? Fog::Compute::XenServer::Host
end
-
+
test("have a valid vendor string") do
host_cpu.vendor.kind_of? String
end
-
+
test("have a valid other_config") do
host_cpu.other_config.kind_of? Hash
end
-
+
test("have a valid utilisation attribute") do
host_cpu.utilisation.kind_of? Float
end
diff --git a/tests/xenserver/models/compute/host_metrics_tests.rb b/tests/xenserver/models/compute/host_metrics_tests.rb
index 4ac39de..87ea140 100644
--- a/tests/xenserver/models/compute/host_metrics_tests.rb
+++ b/tests/xenserver/models/compute/host_metrics_tests.rb
@@ -5,7 +5,7 @@ Shindo.tests('Fog::Compute[:xenserver] | HostMetrics model', ['xenserver']) do
tests('The HostMetrics model should') do
tests('have attributes') do
model_attribute_hash = host.metrics.attributes
- attributes = [
+ attributes = [
:reference,
:uuid,
:memory_free,
@@ -20,7 +20,7 @@ Shindo.tests('Fog::Compute[:xenserver] | HostMetrics model', ['xenserver']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
@@ -30,17 +30,17 @@ Shindo.tests('Fog::Compute[:xenserver] | HostMetrics model', ['xenserver']) do
end
test("have a last_updated Time property") { host.metrics.last_updated.kind_of? Time }
-
- test("return a valid memory_free ammount") do
- (host.metrics.memory_free =~ /^\d+$/) == 0
+
+ test("return a valid memory_free ammount") do
+ (host.metrics.memory_free =~ /^\d+$/) == 0
end
test("have memory_free > 0") { host.metrics.memory_free.to_i > 0 }
-
+
test("return a valid memory_total ammount") do
- (host.metrics.memory_total =~ /^\d+$/) == 0
+ (host.metrics.memory_total =~ /^\d+$/) == 0
end
-
+
test("have memory_total > 0") { host.metrics.memory_total.to_i > 0 }
end
diff --git a/tests/xenserver/models/compute/host_tests.rb b/tests/xenserver/models/compute/host_tests.rb
index 5ab1659..1c9f5b9 100644
--- a/tests/xenserver/models/compute/host_tests.rb
+++ b/tests/xenserver/models/compute/host_tests.rb
@@ -2,7 +2,7 @@
Shindo.tests('Fog::Compute[:xenserver] | host model', ['xenserver']) do
hosts = Fog::Compute[:xenserver].hosts
- host = hosts.first
+ host = hosts.first
tests('The host model should') do
tests('have the action') do
@@ -14,7 +14,7 @@ Shindo.tests('Fog::Compute[:xenserver] | host model', ['xenserver']) do
tests('have attributes') do
model_attribute_hash = host.attributes
- attributes = [
+ attributes = [
:reference,
:uuid,
:name,
@@ -39,7 +39,7 @@ Shindo.tests('Fog::Compute[:xenserver] | host model', ['xenserver']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
@@ -51,21 +51,21 @@ Shindo.tests('Fog::Compute[:xenserver] | host model', ['xenserver']) do
tests("A real host should") do
tests("return valid PIFs") do
test("as an array") { host.pifs.kind_of? Array }
- host.pifs.each { |i|
+ host.pifs.each { |i|
test("and each PIF should be a Fog::Compute::XenServer::PIF") { i.kind_of? Fog::Compute::XenServer::PIF}
- }
+ }
end
tests("return valid PBDs") do
test("as an array") { host.pbds.kind_of? Array }
- host.pbds.each { |i|
+ host.pbds.each { |i|
test("and each PBD should be a Fog::Compute::XenServer::PBD") { i.kind_of? Fog::Compute::XenServer::PBD}
- }
+ }
end
tests("return valid resident servers") do
test("as an array") { host.resident_servers.kind_of? Array }
- host.resident_servers.each { |i|
+ host.resident_servers.each { |i|
test("and each Server should be a Fog::Compute::XenServer::Server") { i.kind_of? Fog::Compute::XenServer::Server}
- }
+ }
end
tests("return valid HostMetrics") do
test("object") { host.metrics.kind_of? Fog::Compute::XenServer::HostMetrics }
@@ -86,14 +86,13 @@ Shindo.tests('Fog::Compute[:xenserver] | host model', ['xenserver']) do
tests('return a list of HostCpu') do
test('as an Array') do
- host.host_cpus.kind_of? Array
+ host.host_cpus.kind_of? Array
end
test('with one element at least') do
host.host_cpus.first.kind_of? Fog::Compute::XenServer::HostCpu
end
end
-
- end
+ end
end
diff --git a/tests/xenserver/models/compute/hosts_tests.rb b/tests/xenserver/models/compute/hosts_tests.rb
index aacada1..686698d 100644
--- a/tests/xenserver/models/compute/hosts_tests.rb
+++ b/tests/xenserver/models/compute/hosts_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::Compute[:xenserver] | hosts collection', ['xenserver']) do
conn = Fog::Compute[:xenserver]
-
+
tests('The hosts collection') do
hosts = conn.hosts.all
@@ -12,7 +12,7 @@ Shindo.tests('Fog::Compute[:xenserver] | hosts collection', ['xenserver']) do
tests('should be able to reload itself').succeeds { hosts.reload }
tests('should be able to get a model') do
- tests('by reference').succeeds {
+ tests('by reference').succeeds {
hosts.get(hosts.first.reference).is_a? Fog::Compute::XenServer::Host
}
end
diff --git a/tests/xenserver/models/compute/network_tests.rb b/tests/xenserver/models/compute/network_tests.rb
index 979f490..0bf2342 100644
--- a/tests/xenserver/models/compute/network_tests.rb
+++ b/tests/xenserver/models/compute/network_tests.rb
@@ -12,7 +12,7 @@ Shindo.tests('Fog::Compute[:network] | network model', ['xenserver']) do
end
tests('have attributes') do
model_attribute_hash = network.attributes
- attributes = [
+ attributes = [
:reference,
:uuid,
:__vifs,
@@ -33,7 +33,7 @@ Shindo.tests('Fog::Compute[:network] | network model', ['xenserver']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
@@ -45,16 +45,16 @@ Shindo.tests('Fog::Compute[:network] | network model', ['xenserver']) do
tests("A real network should") do
tests("return valid vifs") do
test("as an array") { network.vifs.kind_of? Array }
- network.vifs.each { |i|
+ network.vifs.each { |i|
test("and each VIF should be a Fog::Compute::XenServer::VIF") { i.kind_of? Fog::Compute::XenServer::VIF }
- }
+ }
end
- tests("return valid PIFs") do
+ tests("return valid PIFs") do
networks.each do |network|
test("as an array") { network.pifs.kind_of? Array }
- network.pifs.each { |i|
+ network.pifs.each { |i|
test("and each PIF should be a Fog::Compute::XenServer::PIF") { i.kind_of? Fog::Compute::XenServer::PIF}
- }
+ }
end
end
diff --git a/tests/xenserver/models/compute/networks_tests.rb b/tests/xenserver/models/compute/networks_tests.rb
index de00836..ed77347 100644
--- a/tests/xenserver/models/compute/networks_tests.rb
+++ b/tests/xenserver/models/compute/networks_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::Compute[:xenserver] | Networks collection', ['xenserver']) do
conn = Fog::Compute[:xenserver]
-
+
tests('The networks collection') do
networks = conn.networks.all
@@ -12,7 +12,7 @@ Shindo.tests('Fog::Compute[:xenserver] | Networks collection', ['xenserver']) do
tests('should be able to reload itself').succeeds { networks.reload }
tests('should be able to get a model') do
- tests('by reference').succeeds {
+ tests('by reference').succeeds {
networks.get(networks.first.reference).is_a? Fog::Compute::XenServer::Network
}
end
diff --git a/tests/xenserver/models/compute/pbd_tests.rb b/tests/xenserver/models/compute/pbd_tests.rb
index 303f96e..6ea3246 100644
--- a/tests/xenserver/models/compute/pbd_tests.rb
+++ b/tests/xenserver/models/compute/pbd_tests.rb
@@ -10,7 +10,7 @@ Shindo.tests('Fog::Compute[:xenserver] | PBD model', ['xenserver']) do
end
tests('have attributes') do
model_attribute_hash = pbd.attributes
- attributes = [
+ attributes = [
:reference,
:uuid,
:__host,
@@ -24,7 +24,7 @@ Shindo.tests('Fog::Compute[:xenserver] | PBD model', ['xenserver']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/xenserver/models/compute/pbds_tests.rb b/tests/xenserver/models/compute/pbds_tests.rb
index 2d87f98..ba93082 100644
--- a/tests/xenserver/models/compute/pbds_tests.rb
+++ b/tests/xenserver/models/compute/pbds_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::Compute[:xenserver] | pbds collection', ['xenserver']) do
conn = Fog::Compute[:xenserver]
-
+
tests('The pbds collection') do
pbds = conn.pbds.all
@@ -12,7 +12,7 @@ Shindo.tests('Fog::Compute[:xenserver] | pbds collection', ['xenserver']) do
tests('should be able to reload itself').succeeds { pbds.reload }
tests('should be able to get a model') do
- tests('by reference').succeeds {
+ tests('by reference').succeeds {
pbds.get(pbds.first.reference).is_a? Fog::Compute::XenServer::PBD
}
end
diff --git a/tests/xenserver/models/compute/pif_tests.rb b/tests/xenserver/models/compute/pif_tests.rb
index 3e6fbce..cc46713 100644
--- a/tests/xenserver/models/compute/pif_tests.rb
+++ b/tests/xenserver/models/compute/pif_tests.rb
@@ -9,7 +9,7 @@ Shindo.tests('Fog::Compute[:xenserver] | PIF model', ['xenserver']) do
end
tests('have attributes') do
model_attribute_hash = pif.attributes
- attributes = [
+ attributes = [
:reference,
:uuid,
:physical,
@@ -36,7 +36,7 @@ Shindo.tests('Fog::Compute[:xenserver] | PIF model', ['xenserver']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/xenserver/models/compute/pifs_tests.rb b/tests/xenserver/models/compute/pifs_tests.rb
index b5a3011..cabe9c2 100644
--- a/tests/xenserver/models/compute/pifs_tests.rb
+++ b/tests/xenserver/models/compute/pifs_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::Compute[:xenserver] | PIFs collection', ['xenserver']) do
conn = Fog::Compute[:xenserver]
-
+
tests('The pifs collection') do
pifs = conn.pifs.all
@@ -12,7 +12,7 @@ Shindo.tests('Fog::Compute[:xenserver] | PIFs collection', ['xenserver']) do
tests('should be able to reload itself').succeeds { pifs.reload }
tests('should be able to get a model') do
- tests('by reference').succeeds {
+ tests('by reference').succeeds {
pifs.get(pifs.first.reference).is_a? Fog::Compute::XenServer::PIF
}
end
diff --git a/tests/xenserver/models/compute/pool_tests.rb b/tests/xenserver/models/compute/pool_tests.rb
index 54e26e1..5864d1f 100644
--- a/tests/xenserver/models/compute/pool_tests.rb
+++ b/tests/xenserver/models/compute/pool_tests.rb
@@ -9,7 +9,7 @@ Shindo.tests('Fog::Compute[:xenserver] | Pool model', ['xenserver']) do
end
tests('have attributes') do
model_attribute_hash = pool.attributes
- attributes = [
+ attributes = [
:reference,
:uuid,
:name,
@@ -29,7 +29,7 @@ Shindo.tests('Fog::Compute[:xenserver] | Pool model', ['xenserver']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/xenserver/models/compute/pools_tests.rb b/tests/xenserver/models/compute/pools_tests.rb
index f290630..06dab3a 100644
--- a/tests/xenserver/models/compute/pools_tests.rb
+++ b/tests/xenserver/models/compute/pools_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::Compute[:xenserver] | Pools collection', ['xenserver']) do
conn = Fog::Compute[:xenserver]
-
+
tests('The pools collection') do
pools = conn.pools.all
@@ -10,9 +10,9 @@ Shindo.tests('Fog::Compute[:xenserver] | Pools collection', ['xenserver']) do
test('should be a kind of Fog::Compute::XenServer::Pools') { pools.kind_of? Fog::Compute::XenServer::Pools }
tests('should be an array of Fog::Compute::XenServer::Pool') do
- pools.each do |p|
+ pools.each do |p|
test("#{p.uuid} is a Fog::Compute::XenServer::Pool") {
- p.is_a? Fog::Compute::XenServer::Pool
+ p.is_a? Fog::Compute::XenServer::Pool
}
end
end
@@ -20,7 +20,7 @@ Shindo.tests('Fog::Compute[:xenserver] | Pools collection', ['xenserver']) do
tests('should be able to reload itself').succeeds { pools.reload }
tests('should be able to get a model') do
- tests('by reference').succeeds {
+ tests('by reference').succeeds {
pools.get(pools.first.reference).is_a? Fog::Compute::XenServer::Pool
}
end
diff --git a/tests/xenserver/models/compute/server_tests.rb b/tests/xenserver/models/compute/server_tests.rb
index eeb3f66..aef6126 100644
--- a/tests/xenserver/models/compute/server_tests.rb
+++ b/tests/xenserver/models/compute/server_tests.rb
@@ -7,7 +7,7 @@ Shindo.tests('Fog::Compute[:xenserver] | server model', ['xenserver']) do
(servers.all :name_matches => test_ephemeral_vm_name).each do |s|
s.destroy
end
- (servers.templates.find_all { |t| t.name == test_ephemeral_vm_name}).each do |s|
+ (servers.templates.select { |t| t.name == test_ephemeral_vm_name}).each do |s|
s.destroy
end
@@ -70,7 +70,7 @@ Shindo.tests('Fog::Compute[:xenserver] | server model', ['xenserver']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/xenserver/models/compute/servers_tests.rb b/tests/xenserver/models/compute/servers_tests.rb
index b5980a7..c820ae9 100644
--- a/tests/xenserver/models/compute/servers_tests.rb
+++ b/tests/xenserver/models/compute/servers_tests.rb
@@ -4,19 +4,19 @@ Shindo.tests('Fog::Compute[:xenserver] | servers collection', ['xenserver']) do
destroy_ephemeral_servers
servers = conn.servers
templates = conn.servers.templates
-
+
tests('The servers collection') do
servers = conn.servers.all
test('should be empty') do
- servers.empty?
+ servers.empty?
end
- server = conn.servers.create(:name => test_ephemeral_vm_name,
+ server = conn.servers.create(:name => test_ephemeral_vm_name,
:template_name => test_template_name)
test('should NOT be empty') do
servers.reload
- !servers.empty?
+ !servers.empty?
end
server.destroy
@@ -46,14 +46,14 @@ Shindo.tests('Fog::Compute[:xenserver] | servers collection', ['xenserver']) do
found = (s.name == test_template_name)
end
found
- end
+ end
test("NOT include a #{test_template_name} template in built-in templates") do
found = false
servers.builtin_templates.each do |s|
found = (s.name != test_template_name)
end
found
- end
+ end
# This may fail in other test scenarios with more than one built-in template
# present
test("include only one custom template") { servers.custom_templates.size == 1 }
@@ -73,7 +73,7 @@ Shindo.tests('Fog::Compute[:xenserver] | servers collection', ['xenserver']) do
tests('should be able to reload itself').succeeds { servers.reload }
tests('should be able to get a model') do
- server = conn.servers.create(:name => test_ephemeral_vm_name,
+ server = conn.servers.create(:name => test_ephemeral_vm_name,
:template_name => test_template_name)
test('by name') { servers.get_by_name(test_ephemeral_vm_name).kind_of? Fog::Compute::XenServer::Server }
test('by instance uuid') { servers.get_by_uuid(server.uuid).kind_of? Fog::Compute::XenServer::Server }
diff --git a/tests/xenserver/models/compute/storage_repositories_tests.rb b/tests/xenserver/models/compute/storage_repositories_tests.rb
index 16b2c42..41b4ca3 100644
--- a/tests/xenserver/models/compute/storage_repositories_tests.rb
+++ b/tests/xenserver/models/compute/storage_repositories_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::Compute[:xenserver] | StorageRepositories collection', ['xenserver']) do
conn = Fog::Compute[:xenserver]
-
+
tests('The storage_repositories collection') do
storage_repositories = conn.storage_repositories.all
@@ -10,9 +10,9 @@ Shindo.tests('Fog::Compute[:xenserver] | StorageRepositories collection', ['xens
test('should be a kind of Fog::Compute::XenServer::StorageRepositories') { storage_repositories.kind_of? Fog::Compute::XenServer::StorageRepositories }
tests('should be an array of Fog::Compute::XenServer::StorageRepository') do
- storage_repositories.each do |p|
+ storage_repositories.each do |p|
test("#{p.uuid} is a Fog::Compute::XenServer::StorageRepository") {
- p.is_a? Fog::Compute::XenServer::StorageRepository
+ p.is_a? Fog::Compute::XenServer::StorageRepository
}
end
end
@@ -20,7 +20,7 @@ Shindo.tests('Fog::Compute[:xenserver] | StorageRepositories collection', ['xens
tests('should be able to reload itself').succeeds { storage_repositories.reload }
tests('should be able to get a model') do
- tests('by reference').succeeds {
+ tests('by reference').succeeds {
storage_repositories.get(storage_repositories.first.reference).is_a? Fog::Compute::XenServer::StorageRepository
}
end
diff --git a/tests/xenserver/models/compute/storage_repository_tests.rb b/tests/xenserver/models/compute/storage_repository_tests.rb
index cbe86ec..2783e32 100644
--- a/tests/xenserver/models/compute/storage_repository_tests.rb
+++ b/tests/xenserver/models/compute/storage_repository_tests.rb
@@ -13,7 +13,7 @@ Shindo.tests('Fog::Compute[:xenserver] | StorageRepository model', ['xenserver']
end
tests('have attributes') do
model_attribute_hash = storage_repository.attributes
- attributes = [
+ attributes = [
:reference,
:name,
:uuid,
@@ -40,7 +40,7 @@ Shindo.tests('Fog::Compute[:xenserver] | StorageRepository model', ['xenserver']
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
@@ -51,14 +51,14 @@ Shindo.tests('Fog::Compute[:xenserver] | StorageRepository model', ['xenserver']
tests("A real StorageRepository should") do
tests("return a valid list of VDIs") do
- storage_repository.vdis.each do |vdi|
+ storage_repository.vdis.each do |vdi|
test("where #{vdi.uuid} is a Fog::Compute::XenServer::VDI") {
vdi.is_a? Fog::Compute::XenServer::VDI
}
end
end
tests("return a valid list of PBDs") do
- storage_repository.pbds.each do |pbd|
+ storage_repository.pbds.each do |pbd|
test("where #{pbd.uuid} is a Fog::Compute::XenServer::PBD") {
pbd.is_a? Fog::Compute::XenServer::PBD
}
@@ -103,7 +103,7 @@ Shindo.tests('Fog::Compute[:xenserver] | StorageRepository model', ['xenserver']
end
tests('#destroy should') do
- test('destroy existing FOG TEST SR') do
+ test('destroy existing FOG TEST SR') do
sr = (conn.storage_repositories.find { |sr| sr.name == 'FOG TEST SR' })
sr.pbds.each { |pbd| pbd.unplug }
sr.destroy
diff --git a/tests/xenserver/models/compute/vbd_tests.rb b/tests/xenserver/models/compute/vbd_tests.rb
index aea94f6..e9fc1e9 100644
--- a/tests/xenserver/models/compute/vbd_tests.rb
+++ b/tests/xenserver/models/compute/vbd_tests.rb
@@ -15,7 +15,7 @@ Shindo.tests('Fog::Compute[:xenserver] | VBD model', ['xenserver']) do
end
tests('have attributes') do
model_attribute_hash = vbd.attributes
- attributes = [
+ attributes = [
:reference,
:uuid,
:currently_attached,
@@ -43,7 +43,7 @@ Shindo.tests('Fog::Compute[:xenserver] | VBD model', ['xenserver']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
@@ -53,7 +53,7 @@ Shindo.tests('Fog::Compute[:xenserver] | VBD model', ['xenserver']) do
end
tests("A real VBD should") do
- test("have a valid OpaqueRef") do
+ test("have a valid OpaqueRef") do
puts vbd.reference
(vbd.reference =~ /OpaqueRef:/).eql?(0) and \
vbd.reference != "OpaqueRef:NULL"
@@ -80,14 +80,14 @@ Shindo.tests('Fog::Compute[:xenserver] | VBD model', ['xenserver']) do
end
test("return a nil VDI when type CD") do
if vbd.type == 'CD'
- vbd.vdi.nil?
+ vbd.vdi.nil?
else
true
end
end
test("return a VbdMetrics object when attached") do
if vbd.currently_attached
- vbd.metrics.kind_of? Fog::Compute::XenServer::VbdMetrics
+ vbd.metrics.kind_of? Fog::Compute::XenServer::VbdMetrics
else
vbd.metrics.nil?
end
@@ -111,5 +111,5 @@ Shindo.tests('Fog::Compute[:xenserver] | VBD model', ['xenserver']) do
end
destroy_ephemeral_servers
-
+
end
diff --git a/tests/xenserver/models/compute/vbds_tests.rb b/tests/xenserver/models/compute/vbds_tests.rb
index 96798dd..da60368 100644
--- a/tests/xenserver/models/compute/vbds_tests.rb
+++ b/tests/xenserver/models/compute/vbds_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::Compute[:xenserver] | VBDs collection', ['xenserver']) do
conn = Fog::Compute[:xenserver]
-
+
tests('The vbds collection') do
vbds = conn.vbds.all
@@ -12,7 +12,7 @@ Shindo.tests('Fog::Compute[:xenserver] | VBDs collection', ['xenserver']) do
tests('should be able to reload itself').succeeds { vbds.reload }
tests('should be able to get a model') do
- tests('by reference').succeeds {
+ tests('by reference').succeeds {
vbds.get(vbds.first.reference).is_a? Fog::Compute::XenServer::VBD
}
end
diff --git a/tests/xenserver/models/compute/vif_tests.rb b/tests/xenserver/models/compute/vif_tests.rb
index 3670e65..fc5ffb0 100644
--- a/tests/xenserver/models/compute/vif_tests.rb
+++ b/tests/xenserver/models/compute/vif_tests.rb
@@ -9,7 +9,7 @@ Shindo.tests('Fog::Compute[:xenserver] | VIF model', ['xenserver']) do
end
tests('have attributes') do
model_attribute_hash = vif.attributes
- attributes = [
+ attributes = [
:reference,
:mac,
:uuid,
@@ -31,7 +31,7 @@ Shindo.tests('Fog::Compute[:xenserver] | VIF model', ['xenserver']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
diff --git a/tests/xenserver/models/compute/vifs_tests.rb b/tests/xenserver/models/compute/vifs_tests.rb
index 69c0af6..2e7c821 100644
--- a/tests/xenserver/models/compute/vifs_tests.rb
+++ b/tests/xenserver/models/compute/vifs_tests.rb
@@ -1,7 +1,7 @@
Shindo.tests('Fog::Compute[:xenserver] | VIFs collection', ['xenserver']) do
conn = Fog::Compute[:xenserver]
-
+
tests('The vifs collection') do
vifs = conn.vifs.all
@@ -12,7 +12,7 @@ Shindo.tests('Fog::Compute[:xenserver] | VIFs collection', ['xenserver']) do
tests('should be able to reload itself').succeeds { vifs.reload }
tests('should be able to get a model') do
- tests('by reference').succeeds {
+ tests('by reference').succeeds {
vifs.get(vifs.first.reference).is_a? Fog::Compute::XenServer::VIF
}
end
diff --git a/tests/xenserver/models/compute/vlan_tests.rb b/tests/xenserver/models/compute/vlan_tests.rb
index 7b1e751..9a4691f 100644
--- a/tests/xenserver/models/compute/vlan_tests.rb
+++ b/tests/xenserver/models/compute/vlan_tests.rb
@@ -12,7 +12,7 @@ Shindo.tests('Fog::Compute[:xenserver] | VLAN model', ['xenserver']) do
end
tests('have attributes') do
model_attribute_hash = vlan.attributes
- attributes = [
+ attributes = [
:reference,
:uuid,
:__untagged_pif,
@@ -26,7 +26,7 @@ Shindo.tests('Fog::Compute[:xenserver] | VLAN model', ['xenserver']) do
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
- test("#{attribute}") { model_attribute_hash.has_key? attribute }
+ test("#{attribute}") { model_attribute_hash.key? attribute }
end
end
end
@@ -60,7 +60,7 @@ Shindo.tests('Fog::Compute[:xenserver] | VLAN model', ['xenserver']) do
(vlans.reload.find { |v| v.reference == @vlan.reference }).nil?
end
end
-
+
tests("#tagged_pif") do
test 'should return a PIF' do
vlans.find.first.tagged_pif.is_a? Fog::Compute::XenServer::PIF
diff --git a/tests/xenserver/models/compute/vlans_tests.rb b/tests/xenserver/models/compute/vlans_tests.rb
index 3050693..adf1eab 100644
--- a/tests/xenserver/models/compute/vlans_tests.rb
+++ b/tests/xenserver/models/compute/vlans_tests.rb
@@ -1,19 +1,19 @@
Shindo.tests('Fog::Compute[:xenserver] | Vlans collection', ['xenserver']) do
service = Fog::Compute[:xenserver]
-
+
tests('The Vlans collection') do
test('should not be empty') { !service.vlans.empty? }
- test('should be a kind of Fog::Compute::XenServer::Vlans') do
+ test('should be a kind of Fog::Compute::XenServer::Vlans') do
service.vlans.kind_of? Fog::Compute::XenServer::Vlans
end
tests('should be able to reload itself').succeeds { service.vlans.reload }
tests('should be able to get a model') do
- tests('by reference').succeeds {
+ tests('by reference').succeeds {
service.vlans.get(service.vlans.first.reference).is_a? \
Fog::Compute::XenServer::VLAN
}
diff --git a/tests/xenserver/requests/compute/clone_server_tests.rb b/tests/xenserver/requests/compute/clone_server_tests.rb
index 52c1329..0868ac1 100644
--- a/tests/xenserver/requests/compute/clone_server_tests.rb
+++ b/tests/xenserver/requests/compute/clone_server_tests.rb
@@ -25,7 +25,7 @@ Shindo.tests('Fog::Compute[:xenserver] | clone_server request', ['xenserver']) d
(ref =~ /OpaqueRef:/) == 0 and !(servers.custom_templates.find { |s| s.reference == ref }).nil?
end
end
-
+
tests('The expected options') do
raises(ArgumentError, 'raises ArgumentError when ref,class missing') { compute.clone_server }
end
diff --git a/tests/xenserver/requests/compute/create_network_tests.rb b/tests/xenserver/requests/compute/create_network_tests.rb
index 6df753d..9bc9193 100644
--- a/tests/xenserver/requests/compute/create_network_tests.rb
+++ b/tests/xenserver/requests/compute/create_network_tests.rb
@@ -16,5 +16,5 @@ Shindo.tests('Fog::Compute[:xenserver] | create_network request', ['xenserver'])
end
compute.destroy_network @ref
-
+
end
diff --git a/tests/xenserver/requests/compute/create_server_tests.rb b/tests/xenserver/requests/compute/create_server_tests.rb
index 1192ac4..e1dc922 100644
--- a/tests/xenserver/requests/compute/create_server_tests.rb
+++ b/tests/xenserver/requests/compute/create_server_tests.rb
@@ -6,7 +6,7 @@ Shindo.tests('Fog::Compute[:xenserver] | create_server request', ['xenserver'])
(servers.all :name_matches => test_ephemeral_vm_name).each do |s|
s.destroy
end
- (servers.templates.find_all { |t| t.name == test_ephemeral_vm_name}).each do |s|
+ (servers.templates.select { |t| t.name == test_ephemeral_vm_name}).each do |s|
s.destroy
end
@@ -24,7 +24,7 @@ Shindo.tests('Fog::Compute[:xenserver] | create_server request', ['xenserver'])
end
end
end
-
+
tests('get_vm_by_name should') do
test('return a valid OpaqueRef') do
(compute.get_vm_by_name(test_template_name) =~ /OpaqueRef:/) and \
@@ -86,7 +86,7 @@ Shindo.tests('Fog::Compute[:xenserver] | create_server request', ['xenserver'])
(compute.servers.get ref).vcpus_max == '1'
end
tests('set lowercase hash attributes') do
- %w{
+ %w{
VCPUs_params
HVM_boot_params
}.each do |a|
@@ -100,10 +100,10 @@ Shindo.tests('Fog::Compute[:xenserver] | create_server request', ['xenserver'])
)
eval "(compute.servers.get ref).#{a.to_s.downcase}['foo'] == 'bar'"
end
- end
+ end
%w{ VCPUs_at_startup
- VCPUs_max
- PV_bootloader_args
+ VCPUs_max
+ PV_bootloader_args
PV_bootloader
PV_kernel
PV_ramdisk
@@ -119,7 +119,7 @@ Shindo.tests('Fog::Compute[:xenserver] | create_server request', ['xenserver'])
)
eval "(compute.servers.get ref).#{a.to_s.downcase} == '1'"
end
- end
+ end
end
end
diff --git a/tests/xenserver/requests/compute/create_sr_tests.rb b/tests/xenserver/requests/compute/create_sr_tests.rb
index 18865d1..41c8405 100644
--- a/tests/xenserver/requests/compute/create_sr_tests.rb
+++ b/tests/xenserver/requests/compute/create_sr_tests.rb
@@ -11,7 +11,7 @@
Shindo.tests('Fog::Compute[:xenserver] | create_sr request', ['xenserver']) do
compute = Fog::Compute[:xenserver]
-
+
tests('#create_sr "FOG TEST SR" with device /dev/sdb') do
test('create an EXT SR') do
ref = compute.create_sr compute.hosts.first.reference,
diff --git a/tests/xenserver/requests/compute/create_vdi_tests.rb b/tests/xenserver/requests/compute/create_vdi_tests.rb
index f069aee..a3b251d 100644
--- a/tests/xenserver/requests/compute/create_vdi_tests.rb
+++ b/tests/xenserver/requests/compute/create_vdi_tests.rb
@@ -2,54 +2,54 @@ Shindo.tests('Fog::Compute[:xenserver] | create_vdi request', ['xenserver']) do
compute = Fog::Compute[:xenserver]
sr = compute.storage_repositories.find { |sr| sr.name == 'Local storage' }
-
+
tests('create_vdi should') do
raises(ArgumentError, 'raise ArgumentError if virtual_size is no specified') do
- ref = compute.create_vdi( {
- :storage_repository => sr,
+ ref = compute.create_vdi( {
+ :storage_repository => sr,
:name => 'foovdi',
:type => 'system',
:read_only => false,
:sharable => false,
- :other_config => {}
+ :other_config => {}
} )
end
raises(ArgumentError, 'raise ArgumentError if type is no specified') do
- ref = compute.create_vdi( {
- :storage_repository => sr,
+ ref = compute.create_vdi( {
+ :storage_repository => sr,
:name => 'foovdi',
:virtual_size => '8589934592',
:read_only => false,
:sharable => false,
- :other_config => {}
+ :other_config => {}
} )
valid_ref? ref
end
raises(ArgumentError, 'raise ArgumentError if read_only is no specified') do
- ref = compute.create_vdi( {
- :storage_repository => sr,
+ ref = compute.create_vdi( {
+ :storage_repository => sr,
:name => 'foovdi',
:virtual_size => '8589934592',
:type => 'system',
:sharable => false,
- :other_config => {}
+ :other_config => {}
} )
valid_ref? ref
end
raises(ArgumentError, 'raise ArgumentError if sharable is no specified') do
- ref = compute.create_vdi( {
- :storage_repository => sr,
+ ref = compute.create_vdi( {
+ :storage_repository => sr,
:name => 'foovdi',
:virtual_size => '8589934592',
:type => 'system',
:read_only => false,
- :other_config => {}
+ :other_config => {}
} )
valid_ref? ref
end
raises(ArgumentError, 'raise ArgumentError if other_config is no specified') do
- ref = compute.create_vdi( {
- :storage_repository => sr,
+ ref = compute.create_vdi( {
+ :storage_repository => sr,
:name => 'foovdi',
:virtual_size => '8589934592',
:type => 'system',
@@ -59,21 +59,21 @@ Shindo.tests('Fog::Compute[:xenserver] | create_vdi request', ['xenserver']) do
valid_ref? ref
end
test('create a VDI') do
- ref = compute.create_vdi( {
- :storage_repository => sr,
+ ref = compute.create_vdi( {
+ :storage_repository => sr,
:name => 'foovdi',
:virtual_size => '8589934592',
:type => 'system',
:read_only => false,
:sharable => false,
- :other_config => {}
+ :other_config => {}
} )
valid_ref? ref
end
end
compute.vdis.each { |vdi| vdi.destroy if vdi.name == 'foovdi' }
-
+
tests('The expected options') do
raises(ArgumentError, 'raises ArgumentError when vm_ref,net_ref missing') { compute.create_vdi }
end
diff --git a/tests/xenserver/requests/compute/create_vif_tests.rb b/tests/xenserver/requests/compute/create_vif_tests.rb
index 8b1d56a..3edc4f6 100644
--- a/tests/xenserver/requests/compute/create_vif_tests.rb
+++ b/tests/xenserver/requests/compute/create_vif_tests.rb
@@ -6,7 +6,7 @@ Shindo.tests('Fog::Compute[:xenserver] | create_vif request', ['xenserver']) do
(servers.all :name_matches => test_ephemeral_vm_name).each do |s|
s.destroy
end
-
+
tests('create_vif should') do
vm_ref = compute.create_server test_ephemeral_vm_name, test_template_name
ref = compute.create_vif vm_ref, compute.networks.first.reference
@@ -34,7 +34,7 @@ Shindo.tests('Fog::Compute[:xenserver] | create_vif request', ['xenserver']) do
!(s.vifs.find { |vif| vif.reference == ref }).nil?
end
end
-
+
tests('create_vif_custom should') do
vm_ref = compute.create_server test_ephemeral_vm_name, test_template_name
network_ref = compute.networks.first.reference
@@ -81,7 +81,7 @@ Shindo.tests('Fog::Compute[:xenserver] | create_vif request', ['xenserver']) do
vif.mac == '11:22:33:44:55:66'
end
end
-
+
tests('The expected options') do
raises(ArgumentError, 'raises ArgumentError when vm_ref,net_ref missing') { compute.create_vif }
end
diff --git a/tests/xenserver/requests/compute/create_vlan_tests.rb b/tests/xenserver/requests/compute/create_vlan_tests.rb
index 23dd8f7..8ee4d5b 100644
--- a/tests/xenserver/requests/compute/create_vlan_tests.rb
+++ b/tests/xenserver/requests/compute/create_vlan_tests.rb
@@ -16,7 +16,7 @@ Shindo.tests('Fog::Compute[:xenserver] | create_vlan request', ['xenserver']) do
@ref.start_with? "OpaqueRef"
end
end
-
+
tests('failure') do
test('#create_vlan duplicated') do
raises = false
@@ -32,5 +32,5 @@ Shindo.tests('Fog::Compute[:xenserver] | create_vlan request', ['xenserver']) do
compute.destroy_vlan @ref
@net.destroy
-
+
end
diff --git a/tests/xenserver/requests/compute/destroy_network_tests.rb b/tests/xenserver/requests/compute/destroy_network_tests.rb
index d2ac39e..293d2ee 100644
--- a/tests/xenserver/requests/compute/destroy_network_tests.rb
+++ b/tests/xenserver/requests/compute/destroy_network_tests.rb
@@ -9,5 +9,5 @@ Shindo.tests('Fog::Compute[:xenserver] | destroy_network request', ['xenserver']
(compute.networks.find { |n| n.reference == @ref }).nil?
end
end
-
+
end
diff --git a/tests/xenserver/requests/compute/destroy_sr_tests.rb b/tests/xenserver/requests/compute/destroy_sr_tests.rb
index 0dc22c6..37bdd40 100644
--- a/tests/xenserver/requests/compute/destroy_sr_tests.rb
+++ b/tests/xenserver/requests/compute/destroy_sr_tests.rb
@@ -21,7 +21,7 @@ Shindo.tests('Fog::Compute[:xenserver] | destroy_sr request', ['xenserver']) do
'user',
false,
{}
-
+
tests('#destroy_sr') do
test('destroyed "FOG TEST SR"') do
compute.storage_repositories.each do |sr|
@@ -32,7 +32,7 @@ Shindo.tests('Fog::Compute[:xenserver] | destroy_sr request', ['xenserver']) do
(compute.storage_repositories.find { |sr| sr.name == 'FOG TEST SR' }).nil?
end
- raises(Fog::XenServer::RequestFailed,
+ raises(Fog::XenServer::RequestFailed,
'raises HandleInvalid trying to destroy it twice') do
compute.destroy_sr ref
end
diff --git a/tests/xenserver/requests/compute/destroy_vdi_tests.rb b/tests/xenserver/requests/compute/destroy_vdi_tests.rb
index 901b94f..1278fab 100644
--- a/tests/xenserver/requests/compute/destroy_vdi_tests.rb
+++ b/tests/xenserver/requests/compute/destroy_vdi_tests.rb
@@ -4,17 +4,17 @@ Shindo.tests('Fog::Compute[:xenserver] | destroy_vdi request', ['xenserver']) do
sr = compute.storage_repositories.find { |sr| sr.name == 'Local storage' }
tests('destroy_vdi should') do
- ref = compute.create_vdi( {
- :storage_repository => sr,
+ ref = compute.create_vdi( {
+ :storage_repository => sr,
:name => 'foovdi',
:virtual_size => '8589934592',
:type => 'system',
:read_only => false,
:sharable => false,
- :other_config => {}
+ :other_config => {}
} )
raises(Fog::XenServer::RequestFailed, 'destroy it') do
- compute.destroy_vdi ref
+ compute.destroy_vdi ref
compute.vdis.get ref
end
end
diff --git a/tests/xenserver/requests/compute/destroy_vlan_tests.rb b/tests/xenserver/requests/compute/destroy_vlan_tests.rb
index ca3f9f4..3475c1b 100644
--- a/tests/xenserver/requests/compute/destroy_vlan_tests.rb
+++ b/tests/xenserver/requests/compute/destroy_vlan_tests.rb
@@ -17,7 +17,7 @@ Shindo.tests('Fog::Compute[:xenserver] | destroy_vlan request', ['xenserver']) d
(compute.vlans.reload.find { |v| v.reference == @ref }).nil?
end
end
-
+
tests('failure') do
test('#destroy_vlan invalid') do
raises = false
@@ -32,5 +32,5 @@ Shindo.tests('Fog::Compute[:xenserver] | destroy_vlan request', ['xenserver']) d
end
@net.destroy
-
+
end
diff --git a/tests/xenserver/requests/compute/disable_host_tests.rb b/tests/xenserver/requests/compute/disable_host_tests.rb
index 914d98d..74e8133 100644
--- a/tests/xenserver/requests/compute/disable_host_tests.rb
+++ b/tests/xenserver/requests/compute/disable_host_tests.rb
@@ -2,7 +2,7 @@ Shindo.tests('Fog::Compute[:xenserver] | disable_host request', ['xenserver']) d
compute = Fog::Compute[:xenserver]
host = compute.hosts.first
-
+
tests('#disable_host') do
test('disables the host') do
compute.disable_host host.reference
@@ -11,6 +11,6 @@ Shindo.tests('Fog::Compute[:xenserver] | disable_host request', ['xenserver']) d
end
end
- # Cleanup
+ # Cleanup
host.enable
end
diff --git a/tests/xenserver/requests/compute/enable_host_tests.rb b/tests/xenserver/requests/compute/enable_host_tests.rb
index aa6d6e4..26289ea 100644
--- a/tests/xenserver/requests/compute/enable_host_tests.rb
+++ b/tests/xenserver/requests/compute/enable_host_tests.rb
@@ -2,7 +2,7 @@ Shindo.tests('Fog::Compute[:xenserver] | enable_host request', ['xenserver']) do
compute = Fog::Compute[:xenserver]
host = compute.hosts.first
-
+
tests('#enable_host') do
test('enables the host') do
compute.enable_host host.reference
@@ -11,6 +11,6 @@ Shindo.tests('Fog::Compute[:xenserver] | enable_host request', ['xenserver']) do
end
end
- # Cleanup
+ # Cleanup
host.enable
end
diff --git a/tests/xenserver/requests/compute/get_record_tests.rb b/tests/xenserver/requests/compute/get_record_tests.rb
index d1797c4..e3ad40c 100644
--- a/tests/xenserver/requests/compute/get_record_tests.rb
+++ b/tests/xenserver/requests/compute/get_record_tests.rb
@@ -8,7 +8,7 @@ Shindo.tests('Fog::Compute[:xenserver] | get_record request', ['xenserver']) do
response = compute.get_record(vm_ref, 'VM')
end
end
-
+
tests('The expected options') do
raises(ArgumentError, 'raises ArgumentError when ref,class missing') { compute.get_record }
end
diff --git a/tests/xenserver/requests/compute/set_attribute_tests.rb b/tests/xenserver/requests/compute/set_attribute_tests.rb
index 3d046fa..18bb9f1 100644
--- a/tests/xenserver/requests/compute/set_attribute_tests.rb
+++ b/tests/xenserver/requests/compute/set_attribute_tests.rb
@@ -28,8 +28,8 @@ Shindo.tests('Fog::Compute[:xenserver] | set_attribute request', ['xenserver'])
server = create_ephemeral_server
server.stop 'hard'
server.wait_for { not running? }
- response = connection.set_attribute('VM',
- server.reference,
+ response = connection.set_attribute('VM',
+ server.reference,
'memory_limits',
'1073741824',
'1073741824',
@@ -40,7 +40,7 @@ Shindo.tests('Fog::Compute[:xenserver] | set_attribute request', ['xenserver'])
(server.memory_dynamic_max == "1073741824") and \
(server.memory_dynamic_min == "1073741824") and \
(server.memory_static_max == "1073741824") and \
- (server.memory_static_min == "1073741824")
+ (server.memory_static_min == "1073741824")
server.start
end
diff --git a/tests/xenserver/requests/compute/unplug_pbd_tests.rb b/tests/xenserver/requests/compute/unplug_pbd_tests.rb
index c0f4f5c..fc9e4ef 100644
--- a/tests/xenserver/requests/compute/unplug_pbd_tests.rb
+++ b/tests/xenserver/requests/compute/unplug_pbd_tests.rb
@@ -22,7 +22,7 @@ Shindo.tests('Fog::Compute[:xenserver] | unplug_pbd request', ['xenserver']) do
'user',
false,
{}
-
+
tests('#unplug_pbd') do
test('unplugged') do
sr = compute.storage_repositories.find { |sr| sr.name == 'FOG TEST SR' }
@@ -37,7 +37,7 @@ Shindo.tests('Fog::Compute[:xenserver] | unplug_pbd request', ['xenserver']) do
raises(ArgumentError, 'raises ArgumentError when arguments missing') \
{ compute.unplug_pbd }
end
-
+
# Clean-up
compute.storage_repositories.each do |sr|
next unless sr.name == 'FOG TEST SR'
diff --git a/tests/xenserver/xenserver_tests.rb b/tests/xenserver/xenserver_tests.rb
index 9ef6e2f..0907fcf 100644
--- a/tests/xenserver/xenserver_tests.rb
+++ b/tests/xenserver/xenserver_tests.rb
@@ -31,4 +31,3 @@ Shindo.tests('Fog::Compute[:xenserver]', ['xenserver']) do
end
end
-
diff --git a/tests/zerigo/requests/dns/dns_tests.rb b/tests/zerigo/requests/dns/dns_tests.rb
index b012582..f5eb8a4 100644
--- a/tests/zerigo/requests/dns/dns_tests.rb
+++ b/tests/zerigo/requests/dns/dns_tests.rb
@@ -10,7 +10,7 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
def generate_unique_domain( with_trailing_dot = false)
#get time (with 1/100th of sec accuracy)
#want unique domain name and if provider is fast, this can be called more than once per second
- time= (Time.now.to_f * 100).to_i
+ time= (Time.now.to_f * 100).to_i
domain = 'test-' + time.to_s + '.com'
if with_trailing_dot
domain+= '.'
@@ -44,7 +44,7 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
#worked so can now delete
response = Fog::DNS[:zerigo].delete_zone( zone_id)
end
-
+
response.status == 200
end
@@ -59,7 +59,7 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
#worked so can now delete
response = Fog::DNS[:zerigo].delete_zone( zone_id)
end
-
+
response.status == 200
end
@@ -77,19 +77,19 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
response.status == 200
end
-
+
test('create zone - set all parameters') do
pending if Fog.mocking?
@domain = generate_unique_domain
- options = { :nx_ttl => 1800, :active => 'N', :hostmaster => "netops@#{@domain}",
+ options = { :nx_ttl => 1800, :active => 'N', :hostmaster => "netops@#{@domain}",
:notes => 'for client ABC', :tag_list=> 'sample-tag' }
response = Fog::DNS[:zerigo].create_zone( @domain, 14400, 'pri', options )
if response.status == 201
@zone_id = response.body['id']
@new_zones << @zone_id
end
-
+
response.status == 201
end
@@ -97,14 +97,14 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
pending if Fog.mocking?
result= false
-
+
response = Fog::DNS[:zerigo].get_zone( @zone_id)
if response.status == 200
zone = response.body
- if (zone['ns-type'] == 'pri') and (zone['tag-list'] == 'sample-tag') and
+ if (zone['ns-type'] == 'pri') and (zone['tag-list'] == 'sample-tag') and
(zone['default-ttl'] == 14400) and (zone['nx-ttl'] == 1800) and
- (zone['updated-at'].length > 0) and (zone['created-at'].length > 0) and
- (zone['domain'] == @domain) and (zone['notes'] == 'for client ABC') and
+ (zone['updated-at'].length > 0) and (zone['created-at'].length > 0) and
+ (zone['domain'] == @domain) and (zone['notes'] == 'for client ABC') and
(zone['id'] == @zone_id)
result = true
end
@@ -112,13 +112,13 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
result
end
end
-
+
test("update zone #{@zone_id} - set notes & tags") do
pending if Fog.mocking?
-
+
options = { :notes => 'for client XYZ', :tag_list=> 'testing-tag' }
response = Fog::DNS[:zerigo].update_zone( @zone_id, options )
-
+
response.status == 200
end
@@ -126,23 +126,23 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
pending if Fog.mocking?
result= false
-
+
response = Fog::DNS[:zerigo].get_zone( @zone_id)
if response.status == 200
zone = response.body
- if (zone['tag-list'] == 'testing-tag') and (zone['notes'] == 'for client XYZ')
+ if (zone['tag-list'] == 'testing-tag') and (zone['notes'] == 'for client XYZ')
result = true
end
result
end
end
-
- test("get zone stats for #{@zone_id}") do
+
+ test("get zone stats for #{@zone_id}") do
pending if Fog.mocking?
result= false
-
+
response = Fog::DNS[:zerigo].get_zone_stats( @zone_id)
if response.status == 200
zone = response.body
@@ -150,12 +150,12 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
(zone['period-begin'].length > 0) and (zone['period-end'].length > 0)
result= true
end
-
+
result
end
end
-
+
test("list zones - make sure total count is #{@org_zone_count+1}") do
pending if Fog.mocking?
@@ -171,17 +171,17 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
result
end
-
+
test('list zones with pagination') do
pending if Fog.mocking?
-
+
result = false
-
+
# make enough zones to paginate
number_zones_to_create = MAX_ZONE_COUNT- at org_zone_count-1
number_zones_to_create.times do |i|
domain = generate_unique_domain
- options = { :nx_ttl => 1800, :active => 'N', :hostmaster => "netops@#{domain}",
+ options = { :nx_ttl => 1800, :active => 'N', :hostmaster => "netops@#{domain}",
:notes => 'for client ABC', :tag_list=> "sample-tag-#{i}" }
response = Fog::DNS[:zerigo].create_zone( domain, 14400, 'pri', options )
if response.status == 201
@@ -197,7 +197,7 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
zones_we_should_see = @new_zones.dup
total_zone_count = total_zone_count_response.headers['X-Query-Count'].to_i
else
- zones_we_should_see = total_zone_count_response.body['zones'].collect {|z| z['id']}
+ zones_we_should_see = total_zone_count_response.body['zones'].map {|z| z['id']}
total_zone_count = zones_we_should_see.count
end
@@ -209,15 +209,15 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
zones_we_should_see.delete(zones.first['id'])
end
end
-
+
if zones_we_should_see.empty?
result = true
end
end
-
+
result
end
-
+
test('create record - simple A record') do
pending if Fog.mocking?
@@ -228,13 +228,13 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
record_id = response.body['id']
@new_records << record_id
end
-
+
response.status == 201
end
-
+
test('create record - CNAME record') do
pending if Fog.mocking?
-
+
host = 'mail'
options = { :hostname => host }
response = Fog::DNS[:zerigo].create_host( @zone_id, 'CNAME', @domain, options)
@@ -242,7 +242,7 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
record_id = response.body['id']
@new_records << record_id
end
-
+
response.status == 201
end
@@ -260,7 +260,7 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
record_id = response.body['id']
@new_records << record_id
end
-
+
response.status == 201
end
@@ -274,15 +274,15 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
@record_id = response.body['id']
@new_records << @record_id
end
-
+
response.status == 201
end
-
+
test("get host #{@record_id}") do
pending if Fog.mocking?
result = false
-
+
response = Fog::DNS[:zerigo].get_host( @record_id)
if response.status == 200
host = response.body
@@ -291,7 +291,7 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
result = true
end
end
-
+
result
end
@@ -299,7 +299,7 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
pending if Fog.mocking?
result = false
-
+
options = { :priority => 7 }
response = Fog::DNS[:zerigo].update_host( @record_id, options)
if response.status == 200
@@ -311,7 +311,7 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
end
end
end
-
+
result
end
@@ -323,36 +323,57 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
if response.status == 200
host_count = response.body['count']
end
-
+
host_count == 4
end
- test('list host records') do
+ test("list host records") do
pending if Fog.mocking?
result = false
-
+
response = Fog::DNS[:zerigo].list_hosts( @zone_id)
if response.status == 200
- hosts = response.body['hosts']
+ hosts = response.body["hosts"]
if (hosts.count == 4)
hosts.each { |host|
- if (host['id'] > 0) and (host['fqdn'].length > 0) and (host['host-type'].length > 0) and
- (host['created-at'].length > 0) and (host['updated-at'].length > 0)
+ if (host["id"] > 0) and (host["fqdn"].length > 0) and (host["host-type"].length > 0) and
+ (host["created-at"].length > 0) and (host["updated-at"].length > 0)
result = true
end
}
end
- end
-
+ end
+
result
end
-
+
+ test("list host records with options") do
+ pending if Fog.mocking?
+
+ result = false
+
+ response = Fog::DNS[:zerigo].list_hosts(@zone_id, {:per_page=>2, :page=>1})
+ if response.status == 200
+ hosts = response.body["hosts"]
+ if (hosts.count == 2)
+ hosts.each { |host|
+ if (host["id"] > 0) and (host["fqdn"].length > 0) and (host["host-type"].length > 0) and
+ (host["created-at"].length > 0) and (host["updated-at"].length > 0)
+ result = true
+ end
+ }
+ end
+ end
+
+ result
+ end
+
test("find host: mail.#{@domain}") do
pending if Fog.mocking?
result = false
-
+
host = 'mail.' + @domain
response = Fog::DNS[:zerigo].find_hosts( host)
if response.status == 200
@@ -362,7 +383,7 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
result = true
end
end
-
+
result
end
@@ -370,7 +391,7 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
pending if Fog.mocking?
result = false
-
+
host = 'mail.' + @domain
response = Fog::DNS[:zerigo].find_hosts( host, @zone_id)
if response.status == 200
@@ -380,7 +401,7 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
result = true
end
end
-
+
result
end
@@ -410,10 +431,10 @@ Shindo.tests('Fog::DNS[:zerigo] | DNS requests', ['zerigo', 'dns']) do
}
result
end
-
+
end
-
+
tests( 'failure') do
end
-
+
end
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-ruby-extras/ruby-fog.git
More information about the Pkg-ruby-extras-commits
mailing list