fog-rackspace 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +9 -0
- data/.rspec +2 -0
- data/.travis.yml +4 -0
- data/CODE_OF_CONDUCT.md +49 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +21 -0
- data/README.md +41 -0
- data/Rakefile +6 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/fog-rackspace.gemspec +32 -0
- data/lib/fog/rackspace.rb +25 -0
- data/lib/fog/rackspace/auto_scale.rb +134 -0
- data/lib/fog/rackspace/block_storage.rb +175 -0
- data/lib/fog/rackspace/cdn.rb +198 -0
- data/lib/fog/rackspace/cdn_v2.rb +123 -0
- data/lib/fog/rackspace/compute.rb +256 -0
- data/lib/fog/rackspace/compute_v2.rb +251 -0
- data/lib/fog/rackspace/core.rb +150 -0
- data/lib/fog/rackspace/databases.rb +164 -0
- data/lib/fog/rackspace/dns.rb +172 -0
- data/lib/fog/rackspace/docs/auto_scale.md +503 -0
- data/lib/fog/rackspace/docs/block_storage.md +417 -0
- data/lib/fog/rackspace/docs/cdn_v2.md +351 -0
- data/lib/fog/rackspace/docs/compute_v2.md +723 -0
- data/lib/fog/rackspace/docs/getting_started.md +88 -0
- data/lib/fog/rackspace/docs/networking_v2.md +422 -0
- data/lib/fog/rackspace/docs/orchestration.md +356 -0
- data/lib/fog/rackspace/docs/queues.md +312 -0
- data/lib/fog/rackspace/docs/storage.md +557 -0
- data/lib/fog/rackspace/errors.rb +33 -0
- data/lib/fog/rackspace/examples/README.md +47 -0
- data/lib/fog/rackspace/examples/auto_scale/add_policy.rb +66 -0
- data/lib/fog/rackspace/examples/auto_scale/add_webhook.rb +74 -0
- data/lib/fog/rackspace/examples/auto_scale/create_scaling_group.rb +111 -0
- data/lib/fog/rackspace/examples/auto_scale/delete_policy.rb +71 -0
- data/lib/fog/rackspace/examples/auto_scale/delete_scaling_group.rb +59 -0
- data/lib/fog/rackspace/examples/auto_scale/delete_webhook.rb +89 -0
- data/lib/fog/rackspace/examples/block_storage/create_snapshot.rb +116 -0
- data/lib/fog/rackspace/examples/block_storage/create_volume.rb +58 -0
- data/lib/fog/rackspace/examples/block_storage/delete_volume.rb +53 -0
- data/lib/fog/rackspace/examples/compute_v2/bootstrap_server.rb +96 -0
- data/lib/fog/rackspace/examples/compute_v2/create_image.rb +59 -0
- data/lib/fog/rackspace/examples/compute_v2/create_network.rb +81 -0
- data/lib/fog/rackspace/examples/compute_v2/create_server.rb +87 -0
- data/lib/fog/rackspace/examples/compute_v2/delete_image.rb +60 -0
- data/lib/fog/rackspace/examples/compute_v2/delete_network.rb +78 -0
- data/lib/fog/rackspace/examples/compute_v2/delete_server.rb +55 -0
- data/lib/fog/rackspace/examples/compute_v2/detach_volume.rb +93 -0
- data/lib/fog/rackspace/examples/compute_v2/resize_server.rb +106 -0
- data/lib/fog/rackspace/examples/compute_v2/server_attachments.rb +68 -0
- data/lib/fog/rackspace/examples/compute_v2/server_metadata.rb +83 -0
- data/lib/fog/rackspace/examples/queues/claim_messages.rb +60 -0
- data/lib/fog/rackspace/examples/queues/create_queue.rb +45 -0
- data/lib/fog/rackspace/examples/queues/delete_message.rb +71 -0
- data/lib/fog/rackspace/examples/queues/delete_queue.rb +53 -0
- data/lib/fog/rackspace/examples/queues/list_messages.rb +64 -0
- data/lib/fog/rackspace/examples/queues/post_message.rb +59 -0
- data/lib/fog/rackspace/examples/storage/create_cdn_directory.rb +43 -0
- data/lib/fog/rackspace/examples/storage/create_private_directory.rb +43 -0
- data/lib/fog/rackspace/examples/storage/delete_directory.rb +62 -0
- data/lib/fog/rackspace/examples/storage/delete_file.rb +70 -0
- data/lib/fog/rackspace/examples/storage/download_file.rb +75 -0
- data/lib/fog/rackspace/examples/storage/lorem.txt +1 -0
- data/lib/fog/rackspace/examples/storage/storage_metadata.rb +76 -0
- data/lib/fog/rackspace/examples/storage/upload_file.rb +44 -0
- data/lib/fog/rackspace/examples/storage/upload_large_files.rb +101 -0
- data/lib/fog/rackspace/identity.rb +83 -0
- data/lib/fog/rackspace/load_balancers.rb +206 -0
- data/lib/fog/rackspace/mock_data.rb +252 -0
- data/lib/fog/rackspace/models/auto_scale/group.rb +214 -0
- data/lib/fog/rackspace/models/auto_scale/group_builder.rb +86 -0
- data/lib/fog/rackspace/models/auto_scale/group_config.rb +76 -0
- data/lib/fog/rackspace/models/auto_scale/groups.rb +45 -0
- data/lib/fog/rackspace/models/auto_scale/launch_config.rb +61 -0
- data/lib/fog/rackspace/models/auto_scale/policies.rb +65 -0
- data/lib/fog/rackspace/models/auto_scale/policy.rb +220 -0
- data/lib/fog/rackspace/models/auto_scale/webhook.rb +116 -0
- data/lib/fog/rackspace/models/auto_scale/webhooks.rb +62 -0
- data/lib/fog/rackspace/models/block_storage/snapshot.rb +93 -0
- data/lib/fog/rackspace/models/block_storage/snapshots.rb +39 -0
- data/lib/fog/rackspace/models/block_storage/volume.rb +135 -0
- data/lib/fog/rackspace/models/block_storage/volume_type.rb +19 -0
- data/lib/fog/rackspace/models/block_storage/volume_types.rb +39 -0
- data/lib/fog/rackspace/models/block_storage/volumes.rb +39 -0
- data/lib/fog/rackspace/models/cdn_v2/flavor.rb +14 -0
- data/lib/fog/rackspace/models/cdn_v2/flavors.rb +24 -0
- data/lib/fog/rackspace/models/cdn_v2/service.rb +66 -0
- data/lib/fog/rackspace/models/cdn_v2/services.rb +24 -0
- data/lib/fog/rackspace/models/compute/flavor.rb +42 -0
- data/lib/fog/rackspace/models/compute/flavors.rb +24 -0
- data/lib/fog/rackspace/models/compute/image.rb +44 -0
- data/lib/fog/rackspace/models/compute/images.rb +31 -0
- data/lib/fog/rackspace/models/compute/server.rb +102 -0
- data/lib/fog/rackspace/models/compute/servers.rb +32 -0
- data/lib/fog/rackspace/models/compute_v2/attachment.rb +61 -0
- data/lib/fog/rackspace/models/compute_v2/attachments.rb +38 -0
- data/lib/fog/rackspace/models/compute_v2/flavor.rb +33 -0
- data/lib/fog/rackspace/models/compute_v2/flavors.rb +39 -0
- data/lib/fog/rackspace/models/compute_v2/image.rb +117 -0
- data/lib/fog/rackspace/models/compute_v2/images.rb +73 -0
- data/lib/fog/rackspace/models/compute_v2/key_pair.rb +54 -0
- data/lib/fog/rackspace/models/compute_v2/key_pairs.rb +40 -0
- data/lib/fog/rackspace/models/compute_v2/meta_parent.rb +40 -0
- data/lib/fog/rackspace/models/compute_v2/metadata.rb +108 -0
- data/lib/fog/rackspace/models/compute_v2/metadatum.rb +39 -0
- data/lib/fog/rackspace/models/compute_v2/network.rb +27 -0
- data/lib/fog/rackspace/models/compute_v2/networks.rb +23 -0
- data/lib/fog/rackspace/models/compute_v2/server.rb +655 -0
- data/lib/fog/rackspace/models/compute_v2/servers.rb +64 -0
- data/lib/fog/rackspace/models/compute_v2/virtual_interface.rb +85 -0
- data/lib/fog/rackspace/models/compute_v2/virtual_interfaces.rb +46 -0
- data/lib/fog/rackspace/models/databases/database.rb +43 -0
- data/lib/fog/rackspace/models/databases/databases.rb +30 -0
- data/lib/fog/rackspace/models/databases/flavor.rb +15 -0
- data/lib/fog/rackspace/models/databases/flavors.rb +24 -0
- data/lib/fog/rackspace/models/databases/instance.rb +104 -0
- data/lib/fog/rackspace/models/databases/instances.rb +24 -0
- data/lib/fog/rackspace/models/databases/user.rb +33 -0
- data/lib/fog/rackspace/models/databases/users.rb +30 -0
- data/lib/fog/rackspace/models/dns/callback.rb +28 -0
- data/lib/fog/rackspace/models/dns/record.rb +98 -0
- data/lib/fog/rackspace/models/dns/records.rb +58 -0
- data/lib/fog/rackspace/models/dns/zone.rb +66 -0
- data/lib/fog/rackspace/models/dns/zones.rb +74 -0
- data/lib/fog/rackspace/models/identity/credential.rb +13 -0
- data/lib/fog/rackspace/models/identity/credentials.rb +32 -0
- data/lib/fog/rackspace/models/identity/role.rb +14 -0
- data/lib/fog/rackspace/models/identity/roles.rb +31 -0
- data/lib/fog/rackspace/models/identity/service_catalog.rb +84 -0
- data/lib/fog/rackspace/models/identity/tenant.rb +15 -0
- data/lib/fog/rackspace/models/identity/tenants.rb +27 -0
- data/lib/fog/rackspace/models/identity/user.rb +53 -0
- data/lib/fog/rackspace/models/identity/users.rb +35 -0
- data/lib/fog/rackspace/models/load_balancers/access_rule.rb +38 -0
- data/lib/fog/rackspace/models/load_balancers/access_rules.rb +29 -0
- data/lib/fog/rackspace/models/load_balancers/load_balancer.rb +286 -0
- data/lib/fog/rackspace/models/load_balancers/load_balancers.rb +25 -0
- data/lib/fog/rackspace/models/load_balancers/node.rb +65 -0
- data/lib/fog/rackspace/models/load_balancers/nodes.rb +29 -0
- data/lib/fog/rackspace/models/load_balancers/virtual_ip.rb +34 -0
- data/lib/fog/rackspace/models/load_balancers/virtual_ips.rb +32 -0
- data/lib/fog/rackspace/models/monitoring/agent_token.rb +38 -0
- data/lib/fog/rackspace/models/monitoring/agent_tokens.rb +29 -0
- data/lib/fog/rackspace/models/monitoring/alarm.rb +58 -0
- data/lib/fog/rackspace/models/monitoring/alarm_example.rb +24 -0
- data/lib/fog/rackspace/models/monitoring/alarm_examples.rb +29 -0
- data/lib/fog/rackspace/models/monitoring/alarms.rb +41 -0
- data/lib/fog/rackspace/models/monitoring/base.rb +29 -0
- data/lib/fog/rackspace/models/monitoring/check.rb +72 -0
- data/lib/fog/rackspace/models/monitoring/check_type.rb +15 -0
- data/lib/fog/rackspace/models/monitoring/check_types.rb +21 -0
- data/lib/fog/rackspace/models/monitoring/checks.rb +41 -0
- data/lib/fog/rackspace/models/monitoring/data_point.rb +18 -0
- data/lib/fog/rackspace/models/monitoring/data_points.rb +47 -0
- data/lib/fog/rackspace/models/monitoring/entities.rb +47 -0
- data/lib/fog/rackspace/models/monitoring/entity.rb +62 -0
- data/lib/fog/rackspace/models/monitoring/metric.rb +22 -0
- data/lib/fog/rackspace/models/monitoring/metrics.rb +25 -0
- data/lib/fog/rackspace/models/monitoring/notification.rb +40 -0
- data/lib/fog/rackspace/models/monitoring/notifications.rb +28 -0
- data/lib/fog/rackspace/models/networking/network.rb +27 -0
- data/lib/fog/rackspace/models/networking/networks.rb +23 -0
- data/lib/fog/rackspace/models/networking/virtual_interface.rb +85 -0
- data/lib/fog/rackspace/models/networking/virtual_interfaces.rb +45 -0
- data/lib/fog/rackspace/models/networking_v2/network.rb +36 -0
- data/lib/fog/rackspace/models/networking_v2/networks.rb +23 -0
- data/lib/fog/rackspace/models/networking_v2/port.rb +39 -0
- data/lib/fog/rackspace/models/networking_v2/ports.rb +23 -0
- data/lib/fog/rackspace/models/networking_v2/security_group.rb +32 -0
- data/lib/fog/rackspace/models/networking_v2/security_group_rule.rb +38 -0
- data/lib/fog/rackspace/models/networking_v2/security_group_rules.rb +23 -0
- data/lib/fog/rackspace/models/networking_v2/security_groups.rb +23 -0
- data/lib/fog/rackspace/models/networking_v2/subnet.rb +38 -0
- data/lib/fog/rackspace/models/networking_v2/subnets.rb +23 -0
- data/lib/fog/rackspace/models/orchestration/event.rb +18 -0
- data/lib/fog/rackspace/models/orchestration/events.rb +28 -0
- data/lib/fog/rackspace/models/orchestration/resource.rb +30 -0
- data/lib/fog/rackspace/models/orchestration/resource_schemas.rb +16 -0
- data/lib/fog/rackspace/models/orchestration/resources.rb +35 -0
- data/lib/fog/rackspace/models/orchestration/stack.rb +48 -0
- data/lib/fog/rackspace/models/orchestration/stacks.rb +40 -0
- data/lib/fog/rackspace/models/orchestration/template.rb +13 -0
- data/lib/fog/rackspace/models/orchestration/templates.rb +31 -0
- data/lib/fog/rackspace/models/queues/claim.rb +139 -0
- data/lib/fog/rackspace/models/queues/claims.rb +64 -0
- data/lib/fog/rackspace/models/queues/message.rb +88 -0
- data/lib/fog/rackspace/models/queues/messages.rb +90 -0
- data/lib/fog/rackspace/models/queues/queue.rb +135 -0
- data/lib/fog/rackspace/models/queues/queues.rb +46 -0
- data/lib/fog/rackspace/models/storage/account.rb +50 -0
- data/lib/fog/rackspace/models/storage/directories.rb +62 -0
- data/lib/fog/rackspace/models/storage/directory.rb +194 -0
- data/lib/fog/rackspace/models/storage/file.rb +286 -0
- data/lib/fog/rackspace/models/storage/files.rb +201 -0
- data/lib/fog/rackspace/models/storage/metadata.rb +165 -0
- data/lib/fog/rackspace/monitoring.rb +184 -0
- data/lib/fog/rackspace/networking.rb +192 -0
- data/lib/fog/rackspace/networking_v2.rb +222 -0
- data/lib/fog/rackspace/orchestration.rb +227 -0
- data/lib/fog/rackspace/queues.rb +406 -0
- data/lib/fog/rackspace/requests/auto_scale/create_group.rb +58 -0
- data/lib/fog/rackspace/requests/auto_scale/create_policy.rb +42 -0
- data/lib/fog/rackspace/requests/auto_scale/create_webhook.rb +54 -0
- data/lib/fog/rackspace/requests/auto_scale/delete_group.rb +22 -0
- data/lib/fog/rackspace/requests/auto_scale/delete_policy.rb +29 -0
- data/lib/fog/rackspace/requests/auto_scale/delete_webhook.rb +33 -0
- data/lib/fog/rackspace/requests/auto_scale/execute_anonymous_webhook.rb +21 -0
- data/lib/fog/rackspace/requests/auto_scale/execute_policy.rb +21 -0
- data/lib/fog/rackspace/requests/auto_scale/get_group.rb +26 -0
- data/lib/fog/rackspace/requests/auto_scale/get_group_config.rb +27 -0
- data/lib/fog/rackspace/requests/auto_scale/get_group_state.rb +58 -0
- data/lib/fog/rackspace/requests/auto_scale/get_launch_config.rb +27 -0
- data/lib/fog/rackspace/requests/auto_scale/get_policy.rb +31 -0
- data/lib/fog/rackspace/requests/auto_scale/get_webhook.rb +36 -0
- data/lib/fog/rackspace/requests/auto_scale/list_groups.rb +34 -0
- data/lib/fog/rackspace/requests/auto_scale/list_policies.rb +22 -0
- data/lib/fog/rackspace/requests/auto_scale/list_webhooks.rb +31 -0
- data/lib/fog/rackspace/requests/auto_scale/pause_group_state.rb +22 -0
- data/lib/fog/rackspace/requests/auto_scale/resume_group_state.rb +21 -0
- data/lib/fog/rackspace/requests/auto_scale/update_group_config.rb +37 -0
- data/lib/fog/rackspace/requests/auto_scale/update_launch_config.rb +34 -0
- data/lib/fog/rackspace/requests/auto_scale/update_policy.rb +31 -0
- data/lib/fog/rackspace/requests/auto_scale/update_webhook.rb +41 -0
- data/lib/fog/rackspace/requests/block_storage/create_snapshot.rb +77 -0
- data/lib/fog/rackspace/requests/block_storage/create_volume.rb +96 -0
- data/lib/fog/rackspace/requests/block_storage/delete_snapshot.rb +31 -0
- data/lib/fog/rackspace/requests/block_storage/delete_volume.rb +42 -0
- data/lib/fog/rackspace/requests/block_storage/get_snapshot.rb +45 -0
- data/lib/fog/rackspace/requests/block_storage/get_volume.rb +55 -0
- data/lib/fog/rackspace/requests/block_storage/get_volume_type.rb +41 -0
- data/lib/fog/rackspace/requests/block_storage/list_snapshots.rb +39 -0
- data/lib/fog/rackspace/requests/block_storage/list_volume_types.rb +34 -0
- data/lib/fog/rackspace/requests/block_storage/list_volumes.rb +42 -0
- data/lib/fog/rackspace/requests/cdn/delete_object.rb +39 -0
- data/lib/fog/rackspace/requests/cdn/get_containers.rb +66 -0
- data/lib/fog/rackspace/requests/cdn/head_container.rb +58 -0
- data/lib/fog/rackspace/requests/cdn/post_container.rb +52 -0
- data/lib/fog/rackspace/requests/cdn/put_container.rb +52 -0
- data/lib/fog/rackspace/requests/cdn_v2/create_service.rb +10 -0
- data/lib/fog/rackspace/requests/cdn_v2/delete_assets.rb +12 -0
- data/lib/fog/rackspace/requests/cdn_v2/delete_service.rb +9 -0
- data/lib/fog/rackspace/requests/cdn_v2/get_flavor.rb +9 -0
- data/lib/fog/rackspace/requests/cdn_v2/get_home_document.rb +9 -0
- data/lib/fog/rackspace/requests/cdn_v2/get_ping.rb +10 -0
- data/lib/fog/rackspace/requests/cdn_v2/get_service.rb +9 -0
- data/lib/fog/rackspace/requests/cdn_v2/list_flavors.rb +9 -0
- data/lib/fog/rackspace/requests/cdn_v2/list_services.rb +9 -0
- data/lib/fog/rackspace/requests/cdn_v2/update_service.rb +13 -0
- data/lib/fog/rackspace/requests/compute/confirm_resized_server.rb +30 -0
- data/lib/fog/rackspace/requests/compute/create_image.rb +56 -0
- data/lib/fog/rackspace/requests/compute/create_server.rb +90 -0
- data/lib/fog/rackspace/requests/compute/delete_image.rb +40 -0
- data/lib/fog/rackspace/requests/compute/delete_server.rb +39 -0
- data/lib/fog/rackspace/requests/compute/get_flavor_details.rb +48 -0
- data/lib/fog/rackspace/requests/compute/get_image_details.rb +25 -0
- data/lib/fog/rackspace/requests/compute/get_server_details.rb +48 -0
- data/lib/fog/rackspace/requests/compute/list_addresses.rb +39 -0
- data/lib/fog/rackspace/requests/compute/list_flavors.rb +41 -0
- data/lib/fog/rackspace/requests/compute/list_flavors_detail.rb +43 -0
- data/lib/fog/rackspace/requests/compute/list_images.rb +36 -0
- data/lib/fog/rackspace/requests/compute/list_images_detail.rb +45 -0
- data/lib/fog/rackspace/requests/compute/list_private_addresses.rb +37 -0
- data/lib/fog/rackspace/requests/compute/list_public_addresses.rb +37 -0
- data/lib/fog/rackspace/requests/compute/list_servers.rb +37 -0
- data/lib/fog/rackspace/requests/compute/list_servers_detail.rb +52 -0
- data/lib/fog/rackspace/requests/compute/reboot_server.rb +26 -0
- data/lib/fog/rackspace/requests/compute/resize_server.rb +35 -0
- data/lib/fog/rackspace/requests/compute/revert_resized_server.rb +31 -0
- data/lib/fog/rackspace/requests/compute/server_action.rb +23 -0
- data/lib/fog/rackspace/requests/compute/update_server.rb +41 -0
- data/lib/fog/rackspace/requests/compute_v2/attach_volume.rb +78 -0
- data/lib/fog/rackspace/requests/compute_v2/change_server_password.rb +38 -0
- data/lib/fog/rackspace/requests/compute_v2/confirm_resize_server.rb +41 -0
- data/lib/fog/rackspace/requests/compute_v2/create_image.rb +97 -0
- data/lib/fog/rackspace/requests/compute_v2/create_keypair.rb +62 -0
- data/lib/fog/rackspace/requests/compute_v2/create_network.rb +36 -0
- data/lib/fog/rackspace/requests/compute_v2/create_server.rb +243 -0
- data/lib/fog/rackspace/requests/compute_v2/create_virtual_interface.rb +30 -0
- data/lib/fog/rackspace/requests/compute_v2/delete_attachment.rb +39 -0
- data/lib/fog/rackspace/requests/compute_v2/delete_image.rb +32 -0
- data/lib/fog/rackspace/requests/compute_v2/delete_keypair.rb +34 -0
- data/lib/fog/rackspace/requests/compute_v2/delete_metadata_item.rb +36 -0
- data/lib/fog/rackspace/requests/compute_v2/delete_network.rb +21 -0
- data/lib/fog/rackspace/requests/compute_v2/delete_server.rb +35 -0
- data/lib/fog/rackspace/requests/compute_v2/delete_virtual_interface.rb +23 -0
- data/lib/fog/rackspace/requests/compute_v2/get_attachment.rb +38 -0
- data/lib/fog/rackspace/requests/compute_v2/get_flavor.rb +43 -0
- data/lib/fog/rackspace/requests/compute_v2/get_image.rb +47 -0
- data/lib/fog/rackspace/requests/compute_v2/get_keypair.rb +39 -0
- data/lib/fog/rackspace/requests/compute_v2/get_metadata_item.rb +38 -0
- data/lib/fog/rackspace/requests/compute_v2/get_network.rb +21 -0
- data/lib/fog/rackspace/requests/compute_v2/get_server.rb +63 -0
- data/lib/fog/rackspace/requests/compute_v2/get_vnc_console.rb +45 -0
- data/lib/fog/rackspace/requests/compute_v2/list_addresses.rb +39 -0
- data/lib/fog/rackspace/requests/compute_v2/list_addresses_by_network.rb +48 -0
- data/lib/fog/rackspace/requests/compute_v2/list_attachments.rb +37 -0
- data/lib/fog/rackspace/requests/compute_v2/list_flavors.rb +35 -0
- data/lib/fog/rackspace/requests/compute_v2/list_flavors_detail.rb +38 -0
- data/lib/fog/rackspace/requests/compute_v2/list_images.rb +45 -0
- data/lib/fog/rackspace/requests/compute_v2/list_images_detail.rb +52 -0
- data/lib/fog/rackspace/requests/compute_v2/list_keypairs.rb +35 -0
- data/lib/fog/rackspace/requests/compute_v2/list_metadata.rb +37 -0
- data/lib/fog/rackspace/requests/compute_v2/list_networks.rb +18 -0
- data/lib/fog/rackspace/requests/compute_v2/list_servers.rb +56 -0
- data/lib/fog/rackspace/requests/compute_v2/list_virtual_interfaces.rb +22 -0
- data/lib/fog/rackspace/requests/compute_v2/reboot_server.rb +44 -0
- data/lib/fog/rackspace/requests/compute_v2/rebuild_server.rb +71 -0
- data/lib/fog/rackspace/requests/compute_v2/rescue_server.rb +43 -0
- data/lib/fog/rackspace/requests/compute_v2/resize_server.rb +44 -0
- data/lib/fog/rackspace/requests/compute_v2/revert_resize_server.rb +42 -0
- data/lib/fog/rackspace/requests/compute_v2/set_metadata.rb +39 -0
- data/lib/fog/rackspace/requests/compute_v2/set_metadata_item.rb +40 -0
- data/lib/fog/rackspace/requests/compute_v2/unrescue_server.rb +40 -0
- data/lib/fog/rackspace/requests/compute_v2/update_metadata.rb +39 -0
- data/lib/fog/rackspace/requests/compute_v2/update_server.rb +44 -0
- data/lib/fog/rackspace/requests/databases/check_root_user.rb +15 -0
- data/lib/fog/rackspace/requests/databases/create_database.rb +24 -0
- data/lib/fog/rackspace/requests/databases/create_instance.rb +28 -0
- data/lib/fog/rackspace/requests/databases/create_user.rb +25 -0
- data/lib/fog/rackspace/requests/databases/delete_database.rb +15 -0
- data/lib/fog/rackspace/requests/databases/delete_instance.rb +15 -0
- data/lib/fog/rackspace/requests/databases/delete_user.rb +15 -0
- data/lib/fog/rackspace/requests/databases/enable_root_user.rb +15 -0
- data/lib/fog/rackspace/requests/databases/get_flavor.rb +15 -0
- data/lib/fog/rackspace/requests/databases/get_instance.rb +15 -0
- data/lib/fog/rackspace/requests/databases/grant_user_access.rb +32 -0
- data/lib/fog/rackspace/requests/databases/list_databases.rb +15 -0
- data/lib/fog/rackspace/requests/databases/list_flavors.rb +15 -0
- data/lib/fog/rackspace/requests/databases/list_instances.rb +15 -0
- data/lib/fog/rackspace/requests/databases/list_users.rb +15 -0
- data/lib/fog/rackspace/requests/databases/resize_instance.rb +22 -0
- data/lib/fog/rackspace/requests/databases/resize_instance_volume.rb +24 -0
- data/lib/fog/rackspace/requests/databases/restart_instance.rb +20 -0
- data/lib/fog/rackspace/requests/databases/revoke_user_access.rb +26 -0
- data/lib/fog/rackspace/requests/dns/add_records.rb +37 -0
- data/lib/fog/rackspace/requests/dns/callback.rb +18 -0
- data/lib/fog/rackspace/requests/dns/create_domains.rb +48 -0
- data/lib/fog/rackspace/requests/dns/list_domain_details.rb +31 -0
- data/lib/fog/rackspace/requests/dns/list_domains.rb +20 -0
- data/lib/fog/rackspace/requests/dns/list_record_details.rb +20 -0
- data/lib/fog/rackspace/requests/dns/list_records.rb +22 -0
- data/lib/fog/rackspace/requests/dns/list_subdomains.rb +22 -0
- data/lib/fog/rackspace/requests/dns/modify_domain.rb +35 -0
- data/lib/fog/rackspace/requests/dns/modify_record.rb +36 -0
- data/lib/fog/rackspace/requests/dns/remove_domain.rb +28 -0
- data/lib/fog/rackspace/requests/dns/remove_domains.rb +26 -0
- data/lib/fog/rackspace/requests/dns/remove_record.rb +20 -0
- data/lib/fog/rackspace/requests/dns/remove_records.rb +19 -0
- data/lib/fog/rackspace/requests/identity/create_token.rb +222 -0
- data/lib/fog/rackspace/requests/identity/create_user.rb +25 -0
- data/lib/fog/rackspace/requests/identity/delete_user.rb +15 -0
- data/lib/fog/rackspace/requests/identity/get_user_by_id.rb +15 -0
- data/lib/fog/rackspace/requests/identity/get_user_by_name.rb +15 -0
- data/lib/fog/rackspace/requests/identity/list_credentials.rb +22 -0
- data/lib/fog/rackspace/requests/identity/list_tenants.rb +45 -0
- data/lib/fog/rackspace/requests/identity/list_user_roles.rb +22 -0
- data/lib/fog/rackspace/requests/identity/list_users.rb +22 -0
- data/lib/fog/rackspace/requests/identity/update_user.rb +24 -0
- data/lib/fog/rackspace/requests/load_balancers/create_access_rule.rb +24 -0
- data/lib/fog/rackspace/requests/load_balancers/create_load_balancer.rb +109 -0
- data/lib/fog/rackspace/requests/load_balancers/create_node.rb +30 -0
- data/lib/fog/rackspace/requests/load_balancers/create_virtual_ip.rb +20 -0
- data/lib/fog/rackspace/requests/load_balancers/delete_access_rule.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/delete_all_access_rules.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/delete_load_balancer.rb +23 -0
- data/lib/fog/rackspace/requests/load_balancers/delete_node.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/delete_nodes.rb +16 -0
- data/lib/fog/rackspace/requests/load_balancers/delete_virtual_ip.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/get_connection_logging.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/get_connection_throttling.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/get_content_caching.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/get_error_page.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/get_load_balancer.rb +44 -0
- data/lib/fog/rackspace/requests/load_balancers/get_load_balancer_usage.rb +21 -0
- data/lib/fog/rackspace/requests/load_balancers/get_monitor.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/get_node.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/get_session_persistence.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/get_ssl_termination.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/get_stats.rb +30 -0
- data/lib/fog/rackspace/requests/load_balancers/get_usage.rb +20 -0
- data/lib/fog/rackspace/requests/load_balancers/list_access_rules.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/list_algorithms.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/list_load_balancers.rb +21 -0
- data/lib/fog/rackspace/requests/load_balancers/list_nodes.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/list_protocols.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/list_virtual_ips.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/remove_connection_throttling.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/remove_error_page.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/remove_monitor.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/remove_session_persistence.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/remove_ssl_termination.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/set_connection_logging.rb +21 -0
- data/lib/fog/rackspace/requests/load_balancers/set_connection_throttling.rb +22 -0
- data/lib/fog/rackspace/requests/load_balancers/set_content_caching.rb +21 -0
- data/lib/fog/rackspace/requests/load_balancers/set_error_page.rb +21 -0
- data/lib/fog/rackspace/requests/load_balancers/set_monitor.rb +31 -0
- data/lib/fog/rackspace/requests/load_balancers/set_session_persistence.rb +21 -0
- data/lib/fog/rackspace/requests/load_balancers/set_ssl_termination.rb +31 -0
- data/lib/fog/rackspace/requests/load_balancers/update_load_balancer.rb +26 -0
- data/lib/fog/rackspace/requests/load_balancers/update_node.rb +29 -0
- data/lib/fog/rackspace/requests/monitoring/create_agent_token.rb +47 -0
- data/lib/fog/rackspace/requests/monitoring/create_alarm.rb +47 -0
- data/lib/fog/rackspace/requests/monitoring/create_check.rb +47 -0
- data/lib/fog/rackspace/requests/monitoring/create_entity.rb +47 -0
- data/lib/fog/rackspace/requests/monitoring/create_notification.rb +17 -0
- data/lib/fog/rackspace/requests/monitoring/delete_agent_token.rb +45 -0
- data/lib/fog/rackspace/requests/monitoring/delete_alarm.rb +41 -0
- data/lib/fog/rackspace/requests/monitoring/delete_check.rb +40 -0
- data/lib/fog/rackspace/requests/monitoring/delete_entity.rb +40 -0
- data/lib/fog/rackspace/requests/monitoring/delete_notification.rb +15 -0
- data/lib/fog/rackspace/requests/monitoring/evaluate_alarm_example.rb +18 -0
- data/lib/fog/rackspace/requests/monitoring/get_agent.rb +44 -0
- data/lib/fog/rackspace/requests/monitoring/get_agent_token.rb +47 -0
- data/lib/fog/rackspace/requests/monitoring/get_alarm.rb +51 -0
- data/lib/fog/rackspace/requests/monitoring/get_alarm_example.rb +15 -0
- data/lib/fog/rackspace/requests/monitoring/get_check.rb +56 -0
- data/lib/fog/rackspace/requests/monitoring/get_cpus_info.rb +61 -0
- data/lib/fog/rackspace/requests/monitoring/get_disks_info.rb +54 -0
- data/lib/fog/rackspace/requests/monitoring/get_entity.rb +55 -0
- data/lib/fog/rackspace/requests/monitoring/get_filesystems_info.rb +62 -0
- data/lib/fog/rackspace/requests/monitoring/get_logged_in_user_info.rb +56 -0
- data/lib/fog/rackspace/requests/monitoring/get_memory_info.rb +57 -0
- data/lib/fog/rackspace/requests/monitoring/get_monitoring_zone.rb +15 -0
- data/lib/fog/rackspace/requests/monitoring/get_network_interfaces_info.rb +89 -0
- data/lib/fog/rackspace/requests/monitoring/get_notification.rb +46 -0
- data/lib/fog/rackspace/requests/monitoring/get_processes_info.rb +70 -0
- data/lib/fog/rackspace/requests/monitoring/get_system_info.rb +51 -0
- data/lib/fog/rackspace/requests/monitoring/list_agent_tokens.rb +55 -0
- data/lib/fog/rackspace/requests/monitoring/list_agents.rb +61 -0
- data/lib/fog/rackspace/requests/monitoring/list_alarm_examples.rb +15 -0
- data/lib/fog/rackspace/requests/monitoring/list_alarms.rb +64 -0
- data/lib/fog/rackspace/requests/monitoring/list_check_types.rb +86 -0
- data/lib/fog/rackspace/requests/monitoring/list_checks.rb +70 -0
- data/lib/fog/rackspace/requests/monitoring/list_data_points.rb +51 -0
- data/lib/fog/rackspace/requests/monitoring/list_entities.rb +70 -0
- data/lib/fog/rackspace/requests/monitoring/list_metrics.rb +80 -0
- data/lib/fog/rackspace/requests/monitoring/list_monitoring_zones.rb +15 -0
- data/lib/fog/rackspace/requests/monitoring/list_notification_plans.rb +70 -0
- data/lib/fog/rackspace/requests/monitoring/list_notifications.rb +63 -0
- data/lib/fog/rackspace/requests/monitoring/list_overview.rb +111 -0
- data/lib/fog/rackspace/requests/monitoring/update_alarm.rb +45 -0
- data/lib/fog/rackspace/requests/monitoring/update_check.rb +45 -0
- data/lib/fog/rackspace/requests/monitoring/update_entity.rb +45 -0
- data/lib/fog/rackspace/requests/monitoring/update_notification.rb +16 -0
- data/lib/fog/rackspace/requests/networking/create_network.rb +36 -0
- data/lib/fog/rackspace/requests/networking/create_virtual_interface.rb +30 -0
- data/lib/fog/rackspace/requests/networking/delete_network.rb +21 -0
- data/lib/fog/rackspace/requests/networking/delete_virtual_interface.rb +23 -0
- data/lib/fog/rackspace/requests/networking/get_network.rb +21 -0
- data/lib/fog/rackspace/requests/networking/list_networks.rb +18 -0
- data/lib/fog/rackspace/requests/networking/list_virtual_interfaces.rb +22 -0
- data/lib/fog/rackspace/requests/networking_v2/create_network.rb +18 -0
- data/lib/fog/rackspace/requests/networking_v2/create_port.rb +18 -0
- data/lib/fog/rackspace/requests/networking_v2/create_security_group.rb +12 -0
- data/lib/fog/rackspace/requests/networking_v2/create_security_group_rule.rb +12 -0
- data/lib/fog/rackspace/requests/networking_v2/create_subnet.rb +18 -0
- data/lib/fog/rackspace/requests/networking_v2/delete_network.rb +11 -0
- data/lib/fog/rackspace/requests/networking_v2/delete_port.rb +11 -0
- data/lib/fog/rackspace/requests/networking_v2/delete_security_group.rb +5 -0
- data/lib/fog/rackspace/requests/networking_v2/delete_security_group_rule.rb +5 -0
- data/lib/fog/rackspace/requests/networking_v2/delete_subnet.rb +11 -0
- data/lib/fog/rackspace/requests/networking_v2/list_networks.rb +11 -0
- data/lib/fog/rackspace/requests/networking_v2/list_ports.rb +11 -0
- data/lib/fog/rackspace/requests/networking_v2/list_security_group_rules.rb +5 -0
- data/lib/fog/rackspace/requests/networking_v2/list_security_groups.rb +5 -0
- data/lib/fog/rackspace/requests/networking_v2/list_subnets.rb +11 -0
- data/lib/fog/rackspace/requests/networking_v2/show_network.rb +11 -0
- data/lib/fog/rackspace/requests/networking_v2/show_port.rb +11 -0
- data/lib/fog/rackspace/requests/networking_v2/show_security_group.rb +5 -0
- data/lib/fog/rackspace/requests/networking_v2/show_security_group_rule.rb +5 -0
- data/lib/fog/rackspace/requests/networking_v2/show_subnet.rb +11 -0
- data/lib/fog/rackspace/requests/networking_v2/update_network.rb +18 -0
- data/lib/fog/rackspace/requests/networking_v2/update_port.rb +18 -0
- data/lib/fog/rackspace/requests/networking_v2/update_security_group.rb +12 -0
- data/lib/fog/rackspace/requests/networking_v2/update_subnet.rb +23 -0
- data/lib/fog/rackspace/requests/orchestration/abandon_stack.rb +15 -0
- data/lib/fog/rackspace/requests/orchestration/build_info.rb +15 -0
- data/lib/fog/rackspace/requests/orchestration/create_stack.rb +16 -0
- data/lib/fog/rackspace/requests/orchestration/delete_stack.rb +15 -0
- data/lib/fog/rackspace/requests/orchestration/get_stack_template.rb +20 -0
- data/lib/fog/rackspace/requests/orchestration/list_resource_events.rb +19 -0
- data/lib/fog/rackspace/requests/orchestration/list_resource_types.rb +22 -0
- data/lib/fog/rackspace/requests/orchestration/list_resources.rb +19 -0
- data/lib/fog/rackspace/requests/orchestration/list_stack_data.rb +22 -0
- data/lib/fog/rackspace/requests/orchestration/list_stack_events.rb +19 -0
- data/lib/fog/rackspace/requests/orchestration/preview_stack.rb +16 -0
- data/lib/fog/rackspace/requests/orchestration/show_event_details.rb +22 -0
- data/lib/fog/rackspace/requests/orchestration/show_resource_data.rb +22 -0
- data/lib/fog/rackspace/requests/orchestration/show_resource_metadata.rb +22 -0
- data/lib/fog/rackspace/requests/orchestration/show_resource_schema.rb +15 -0
- data/lib/fog/rackspace/requests/orchestration/show_resource_template.rb +20 -0
- data/lib/fog/rackspace/requests/orchestration/show_stack_details.rb +22 -0
- data/lib/fog/rackspace/requests/orchestration/update_stack.rb +16 -0
- data/lib/fog/rackspace/requests/orchestration/validate_template.rb +16 -0
- data/lib/fog/rackspace/requests/queues/create_claim.rb +72 -0
- data/lib/fog/rackspace/requests/queues/create_message.rb +56 -0
- data/lib/fog/rackspace/requests/queues/create_queue.rb +39 -0
- data/lib/fog/rackspace/requests/queues/delete_claim.rb +42 -0
- data/lib/fog/rackspace/requests/queues/delete_message.rb +62 -0
- data/lib/fog/rackspace/requests/queues/delete_queue.rb +33 -0
- data/lib/fog/rackspace/requests/queues/get_claim.rb +37 -0
- data/lib/fog/rackspace/requests/queues/get_message.rb +41 -0
- data/lib/fog/rackspace/requests/queues/get_queue.rb +36 -0
- data/lib/fog/rackspace/requests/queues/get_queue_stats.rb +57 -0
- data/lib/fog/rackspace/requests/queues/list_messages.rb +73 -0
- data/lib/fog/rackspace/requests/queues/list_queues.rb +62 -0
- data/lib/fog/rackspace/requests/queues/update_claim.rb +39 -0
- data/lib/fog/rackspace/requests/storage/copy_object.rb +29 -0
- data/lib/fog/rackspace/requests/storage/delete_container.rb +36 -0
- data/lib/fog/rackspace/requests/storage/delete_multiple_objects.rb +128 -0
- data/lib/fog/rackspace/requests/storage/delete_object.rb +36 -0
- data/lib/fog/rackspace/requests/storage/delete_static_large_object.rb +78 -0
- data/lib/fog/rackspace/requests/storage/extract_archive.rb +37 -0
- data/lib/fog/rackspace/requests/storage/get_container.rb +69 -0
- data/lib/fog/rackspace/requests/storage/get_containers.rb +51 -0
- data/lib/fog/rackspace/requests/storage/get_object.rb +54 -0
- data/lib/fog/rackspace/requests/storage/get_object_http_url.rb +35 -0
- data/lib/fog/rackspace/requests/storage/get_object_https_url.rb +71 -0
- data/lib/fog/rackspace/requests/storage/head_container.rb +41 -0
- data/lib/fog/rackspace/requests/storage/head_containers.rb +44 -0
- data/lib/fog/rackspace/requests/storage/head_object.rb +48 -0
- data/lib/fog/rackspace/requests/storage/post_set_meta_temp_url_key.rb +46 -0
- data/lib/fog/rackspace/requests/storage/put_container.rb +42 -0
- data/lib/fog/rackspace/requests/storage/put_dynamic_obj_manifest.rb +63 -0
- data/lib/fog/rackspace/requests/storage/put_object.rb +77 -0
- data/lib/fog/rackspace/requests/storage/put_object_manifest.rb +22 -0
- data/lib/fog/rackspace/requests/storage/put_static_obj_manifest.rb +102 -0
- data/lib/fog/rackspace/service.rb +142 -0
- data/lib/fog/rackspace/storage.rb +465 -0
- data/lib/fog/rackspace/version.rb +5 -0
- data/tests/helper.rb +28 -0
- data/tests/helpers/collection_helper.rb +97 -0
- data/tests/helpers/compute/flavors_helper.rb +32 -0
- data/tests/helpers/compute/server_helper.rb +25 -0
- data/tests/helpers/compute/servers_helper.rb +10 -0
- data/tests/helpers/formats_helper.rb +98 -0
- data/tests/helpers/formats_helper_tests.rb +110 -0
- data/tests/helpers/mock_helper.rb +16 -0
- data/tests/helpers/model_helper.rb +31 -0
- data/tests/helpers/responds_to_helper.rb +11 -0
- data/tests/helpers/schema_validator_tests.rb +107 -0
- data/tests/helpers/succeeds_helper.rb +9 -0
- data/tests/lorem.txt +1 -0
- data/tests/rackspace/auto_scale_tests.rb +83 -0
- data/tests/rackspace/block_storage_tests.rb +119 -0
- data/tests/rackspace/cdn_tests.rb +186 -0
- data/tests/rackspace/compute_tests.rb +100 -0
- data/tests/rackspace/compute_v2_tests.rb +118 -0
- data/tests/rackspace/databases_tests.rb +140 -0
- data/tests/rackspace/dns_tests.rb +110 -0
- data/tests/rackspace/helper.rb +106 -0
- data/tests/rackspace/identity_tests.rb +26 -0
- data/tests/rackspace/load_balancer_tests.rb +135 -0
- data/tests/rackspace/models/auto_scale/group_builder_tests.rb +145 -0
- data/tests/rackspace/models/auto_scale/group_tests.rb +35 -0
- data/tests/rackspace/models/auto_scale/groups_tests.rb +17 -0
- data/tests/rackspace/models/auto_scale/policies_tests.rb +24 -0
- data/tests/rackspace/models/auto_scale/policy_tests.rb +35 -0
- data/tests/rackspace/models/auto_scale/webhook_tests.rb +42 -0
- data/tests/rackspace/models/auto_scale/webhooks_tests.rb +28 -0
- data/tests/rackspace/models/block_storage/snapshot_tests.rb +25 -0
- data/tests/rackspace/models/block_storage/snapshots_tests.rb +18 -0
- data/tests/rackspace/models/block_storage/volume_tests.rb +31 -0
- data/tests/rackspace/models/block_storage/volume_types_tests.rb +18 -0
- data/tests/rackspace/models/block_storage/volumes_tests.rb +9 -0
- data/tests/rackspace/models/compute_v2/flavors_tests.rb +17 -0
- data/tests/rackspace/models/compute_v2/image_tests.rb +74 -0
- data/tests/rackspace/models/compute_v2/images_tests.rb +20 -0
- data/tests/rackspace/models/compute_v2/keypairs_tests.rb +47 -0
- data/tests/rackspace/models/compute_v2/metadata_tests.rb +44 -0
- data/tests/rackspace/models/compute_v2/network_tests.rb +10 -0
- data/tests/rackspace/models/compute_v2/networks_tests.rb +10 -0
- data/tests/rackspace/models/compute_v2/server_tests.rb +274 -0
- data/tests/rackspace/models/compute_v2/servers_tests.rb +22 -0
- data/tests/rackspace/models/compute_v2/virtual_interface_tests.rb +33 -0
- data/tests/rackspace/models/compute_v2/virtual_interfaces_tests.rb +24 -0
- data/tests/rackspace/models/databases/database_tests.rb +29 -0
- data/tests/rackspace/models/databases/databases_tests.rb +17 -0
- data/tests/rackspace/models/databases/flavors_tests.rb +20 -0
- data/tests/rackspace/models/databases/instance_tests.rb +43 -0
- data/tests/rackspace/models/databases/instances_tests.rb +14 -0
- data/tests/rackspace/models/databases/user_tests.rb +21 -0
- data/tests/rackspace/models/databases/users_tests.rb +21 -0
- data/tests/rackspace/models/dns/zone_tests.rb +14 -0
- data/tests/rackspace/models/dns/zones_tests.rb +36 -0
- data/tests/rackspace/models/identity/credentials_tests.rb +25 -0
- data/tests/rackspace/models/identity/roles_tests.rb +16 -0
- data/tests/rackspace/models/identity/service_catalog_tests.rb +154 -0
- data/tests/rackspace/models/identity/tenants_tests.rb +21 -0
- data/tests/rackspace/models/identity/user_tests.rb +17 -0
- data/tests/rackspace/models/identity/users_tests.rb +17 -0
- data/tests/rackspace/models/load_balancers/access_list_tests.rb +12 -0
- data/tests/rackspace/models/load_balancers/access_lists_tests.rb +12 -0
- data/tests/rackspace/models/load_balancers/load_balancer_tests.rb +229 -0
- data/tests/rackspace/models/load_balancers/load_balancers_tests.rb +19 -0
- data/tests/rackspace/models/load_balancers/node_tests.rb +19 -0
- data/tests/rackspace/models/load_balancers/nodes_tests.rb +12 -0
- data/tests/rackspace/models/load_balancers/virtual_ip_tests.rb +16 -0
- data/tests/rackspace/models/load_balancers/virtual_ips_tests.rb +12 -0
- data/tests/rackspace/models/monitoring/agent_token_tests.rb +9 -0
- data/tests/rackspace/models/monitoring/agent_tokens_tests.rb +9 -0
- data/tests/rackspace/models/monitoring/alarm_example_tests.rb +18 -0
- data/tests/rackspace/models/monitoring/alarm_examples_tests.rb +19 -0
- data/tests/rackspace/models/monitoring/alarm_tests.rb +59 -0
- data/tests/rackspace/models/monitoring/alarms_tests.rb +25 -0
- data/tests/rackspace/models/monitoring/check_tests.rb +49 -0
- data/tests/rackspace/models/monitoring/check_types_tests.rb +14 -0
- data/tests/rackspace/models/monitoring/checks_tests.rb +16 -0
- data/tests/rackspace/models/monitoring/data_points_tests.rb +19 -0
- data/tests/rackspace/models/monitoring/entities_tests.rb +14 -0
- data/tests/rackspace/models/monitoring/entity_tests.rb +26 -0
- data/tests/rackspace/models/monitoring/metric_tests.rb +19 -0
- data/tests/rackspace/models/monitoring/metrics_tests.rb +17 -0
- data/tests/rackspace/models/monitoring/notification_tests.rb +19 -0
- data/tests/rackspace/models/monitoring/notifications_tests.rb +10 -0
- data/tests/rackspace/models/networking/network_tests.rb +10 -0
- data/tests/rackspace/models/networking/networks_tests.rb +10 -0
- data/tests/rackspace/models/networking/virtual_interface_tests.rb +33 -0
- data/tests/rackspace/models/networking/virtual_interfaces_tests.rb +24 -0
- data/tests/rackspace/models/queues/claim_tests.rb +41 -0
- data/tests/rackspace/models/queues/claims_tests.rb +53 -0
- data/tests/rackspace/models/queues/message_tests.rb +49 -0
- data/tests/rackspace/models/queues/messages_tests.rb +16 -0
- data/tests/rackspace/models/queues/queue_tests.rb +37 -0
- data/tests/rackspace/models/queues/queues_tests.rb +8 -0
- data/tests/rackspace/models/storage/account_tests.rb +26 -0
- data/tests/rackspace/models/storage/directories_tests.rb +26 -0
- data/tests/rackspace/models/storage/directory_tests.rb +138 -0
- data/tests/rackspace/models/storage/file_tests.rb +400 -0
- data/tests/rackspace/models/storage/files_tests.rb +39 -0
- data/tests/rackspace/models/storage/metadata_tests.rb +208 -0
- data/tests/rackspace/monitoring_tests.rb +76 -0
- data/tests/rackspace/networking_tests.rb +118 -0
- data/tests/rackspace/queues_tests.rb +105 -0
- data/tests/rackspace/rackspace_tests.rb +56 -0
- data/tests/rackspace/requests/auto_scale/config_tests.rb +97 -0
- data/tests/rackspace/requests/auto_scale/group_tests.rb +50 -0
- data/tests/rackspace/requests/auto_scale/helper.rb +224 -0
- data/tests/rackspace/requests/auto_scale/policy_tests.rb +71 -0
- data/tests/rackspace/requests/auto_scale/webhook_tests.rb +58 -0
- data/tests/rackspace/requests/block_storage/snapshot_tests.rb +80 -0
- data/tests/rackspace/requests/block_storage/volume_tests.rb +75 -0
- data/tests/rackspace/requests/block_storage/volume_type_tests.rb +21 -0
- data/tests/rackspace/requests/cdn/cdn_tests.rb +75 -0
- data/tests/rackspace/requests/compute/address_tests.rb +42 -0
- data/tests/rackspace/requests/compute/flavor_tests.rb +39 -0
- data/tests/rackspace/requests/compute/helper.rb +10 -0
- data/tests/rackspace/requests/compute/image_tests.rb +70 -0
- data/tests/rackspace/requests/compute/resize_tests.rb +35 -0
- data/tests/rackspace/requests/compute/server_tests.rb +94 -0
- data/tests/rackspace/requests/compute_v2/address_tests.rb +45 -0
- data/tests/rackspace/requests/compute_v2/attachment_tests.rb +66 -0
- data/tests/rackspace/requests/compute_v2/flavor_tests.rb +47 -0
- data/tests/rackspace/requests/compute_v2/image_tests.rb +77 -0
- data/tests/rackspace/requests/compute_v2/keypair_tests.rb +55 -0
- data/tests/rackspace/requests/compute_v2/metadata_tests.rb +104 -0
- data/tests/rackspace/requests/compute_v2/network_tests.rb +49 -0
- data/tests/rackspace/requests/compute_v2/server_tests.rb +172 -0
- data/tests/rackspace/requests/compute_v2/virtual_interface_tests.rb +49 -0
- data/tests/rackspace/requests/databases/database_tests.rb +39 -0
- data/tests/rackspace/requests/databases/flavor_tests.rb +16 -0
- data/tests/rackspace/requests/databases/helper.rb +79 -0
- data/tests/rackspace/requests/databases/instance_tests.rb +77 -0
- data/tests/rackspace/requests/databases/user_tests.rb +37 -0
- data/tests/rackspace/requests/dns/dns_tests.rb +125 -0
- data/tests/rackspace/requests/dns/helper.rb +124 -0
- data/tests/rackspace/requests/dns/records_tests.rb +83 -0
- data/tests/rackspace/requests/identity/tenants_tests.rb +21 -0
- data/tests/rackspace/requests/identity/token_tests.rb +70 -0
- data/tests/rackspace/requests/identity/user_tests.rb +106 -0
- data/tests/rackspace/requests/load_balancers/access_list_tests.rb +56 -0
- data/tests/rackspace/requests/load_balancers/algorithm_tests.rb +19 -0
- data/tests/rackspace/requests/load_balancers/connection_logging_tests.rb +25 -0
- data/tests/rackspace/requests/load_balancers/connection_throttling_tests.rb +37 -0
- data/tests/rackspace/requests/load_balancers/content_caching_tests.rb +25 -0
- data/tests/rackspace/requests/load_balancers/error_page_tests.rb +31 -0
- data/tests/rackspace/requests/load_balancers/get_stats_tests.rb +13 -0
- data/tests/rackspace/requests/load_balancers/helper.rb +229 -0
- data/tests/rackspace/requests/load_balancers/load_balancer_tests.rb +86 -0
- data/tests/rackspace/requests/load_balancers/load_balancer_usage_tests.rb +19 -0
- data/tests/rackspace/requests/load_balancers/monitor_tests.rb +46 -0
- data/tests/rackspace/requests/load_balancers/node_tests.rb +93 -0
- data/tests/rackspace/requests/load_balancers/protocol_tests.rb +21 -0
- data/tests/rackspace/requests/load_balancers/session_persistence_tests.rb +33 -0
- data/tests/rackspace/requests/load_balancers/ssl_termination_tests.rb +38 -0
- data/tests/rackspace/requests/load_balancers/usage_tests.rb +19 -0
- data/tests/rackspace/requests/load_balancers/virtual_ip_tests.rb +40 -0
- data/tests/rackspace/requests/monitoring/agent_tests.rb +74 -0
- data/tests/rackspace/requests/monitoring/alarm_example_tests.rb +30 -0
- data/tests/rackspace/requests/monitoring/alarm_tests.rb +55 -0
- data/tests/rackspace/requests/monitoring/check_tests.rb +39 -0
- data/tests/rackspace/requests/monitoring/entity_tests.rb +36 -0
- data/tests/rackspace/requests/monitoring/helper.rb +139 -0
- data/tests/rackspace/requests/monitoring/list_tests.rb +83 -0
- data/tests/rackspace/requests/monitoring/notification_tests.rb +46 -0
- data/tests/rackspace/requests/networking/network_tests.rb +49 -0
- data/tests/rackspace/requests/networking/virtual_interface_tests.rb +49 -0
- data/tests/rackspace/requests/queues/claim_tests.rb +60 -0
- data/tests/rackspace/requests/queues/helper.rb +50 -0
- data/tests/rackspace/requests/queues/messages_tests.rb +54 -0
- data/tests/rackspace/requests/queues/queues_tests.rb +38 -0
- data/tests/rackspace/requests/storage/account_tests.rb +15 -0
- data/tests/rackspace/requests/storage/container_tests.rb +67 -0
- data/tests/rackspace/requests/storage/large_object_tests.rb +355 -0
- data/tests/rackspace/requests/storage/object_tests.rb +230 -0
- data/tests/rackspace/service_tests.rb +82 -0
- data/tests/rackspace/storage_tests.rb +128 -0
- data/tests/rackspace/url_encoding_tests.rb +5 -0
- metadata +880 -0
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
# This example demonstrates delete a webhook from an auto scaling group with the Rackpace Open Cloud
|
|
4
|
+
|
|
5
|
+
require 'fog'
|
|
6
|
+
|
|
7
|
+
def get_user_input(prompt)
|
|
8
|
+
print "#{prompt}: "
|
|
9
|
+
gets.chomp
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
# Use username defined in ~/.fog file, if absent prompt for username.
|
|
13
|
+
# For more details on ~/.fog refer to http://fog.io/about/getting_started.html
|
|
14
|
+
def rackspace_username
|
|
15
|
+
Fog.credentials[:rackspace_username] || get_user_input("Enter Rackspace Username")
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
# Use api key defined in ~/.fog file, if absent prompt for api key
|
|
19
|
+
# For more details on ~/.fog refer to http://fog.io/about/getting_started.html
|
|
20
|
+
def rackspace_api_key
|
|
21
|
+
Fog.credentials[:rackspace_api_key] || get_user_input("Enter Rackspace API key")
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def select_group(groups)
|
|
25
|
+
abort "\nThere are no groups in the Chicago region. Try running create_scaling_group.rb\n\n" if groups.empty?
|
|
26
|
+
|
|
27
|
+
puts "\nSelect Group With Policy:\n\n"
|
|
28
|
+
groups.each_with_index do |group, i|
|
|
29
|
+
config = group.group_config
|
|
30
|
+
puts "\t #{i}. #{config.name}"
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
select_str = get_user_input "\nEnter Group Number"
|
|
34
|
+
groups[select_str.to_i]
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def select_policy(policies)
|
|
38
|
+
abort "\nThere are no policies for this scaling group. Try running add_policy.rb\n\n" if policies.empty?
|
|
39
|
+
|
|
40
|
+
puts "\nSelect Policy With Webhook:\n\n"
|
|
41
|
+
policies.each_with_index do |policy, i|
|
|
42
|
+
puts "\t #{i}. #{policy.name}"
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
select_str = get_user_input "\nEnter Policy Number"
|
|
46
|
+
policies[select_str.to_i]
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
def select_webhook(webhooks)
|
|
50
|
+
abort "\nThere are no webhooks for this policy. Try running add_webhook.rb\n\n" if webhooks.empty?
|
|
51
|
+
|
|
52
|
+
puts "\nSelect Webhook:\n\n"
|
|
53
|
+
webhooks.each_with_index do |webhook, i|
|
|
54
|
+
puts "\t #{i}. #{webhook.name}"
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
select_str = get_user_input "\nEnter Webhook Number"
|
|
58
|
+
webhooks[select_str.to_i]
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
# create auto scaling service
|
|
62
|
+
auto_scale_service = Fog::Rackspace::AutoScale.new({
|
|
63
|
+
:rackspace_username => rackspace_username,
|
|
64
|
+
:rackspace_api_key => rackspace_api_key,
|
|
65
|
+
:rackspace_region => :ord # Use Chicago Region
|
|
66
|
+
})
|
|
67
|
+
|
|
68
|
+
# retrieve list of scaling groups
|
|
69
|
+
groups = auto_scale_service.groups
|
|
70
|
+
|
|
71
|
+
# prompt for group
|
|
72
|
+
group = select_group(groups)
|
|
73
|
+
|
|
74
|
+
# retrieve list of policies for group
|
|
75
|
+
policies = group.policies
|
|
76
|
+
|
|
77
|
+
# prompt for policy
|
|
78
|
+
policy = select_policy(policies)
|
|
79
|
+
|
|
80
|
+
# retrieve list of webhooks for policy
|
|
81
|
+
webhooks = policy.webhooks
|
|
82
|
+
|
|
83
|
+
# prompt for webhook
|
|
84
|
+
webhook = select_webhook(webhooks)
|
|
85
|
+
|
|
86
|
+
# delete webhook
|
|
87
|
+
webhook.destroy
|
|
88
|
+
|
|
89
|
+
puts "Webhook '#{webhook.name} was destroyed"
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
# This example demonstrates creating a snapshot from a Cloud Block Storage volume with the Rackpace Open Cloud
|
|
4
|
+
|
|
5
|
+
require 'rubygems' #required for Ruby 1.8.x
|
|
6
|
+
require 'fog'
|
|
7
|
+
|
|
8
|
+
def get_user_input(prompt)
|
|
9
|
+
print "\n#{prompt}: "
|
|
10
|
+
gets.chomp
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def select_server(servers)
|
|
14
|
+
abort "\nThere are not any servers in the Chicago region. Try running create_server.rb\n\n" if servers.empty?
|
|
15
|
+
|
|
16
|
+
puts "\nSelect Server For Volume Detachment:\n\n"
|
|
17
|
+
servers.each_with_index do |server, i|
|
|
18
|
+
puts "\t #{i}. #{server.name} [#{server.public_ip_address}]"
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
delete_str = get_user_input "\nEnter Server Number"
|
|
22
|
+
servers[delete_str.to_i]
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def select_attachment(attachments)
|
|
26
|
+
abort "\nThis server does not contain any volumes in the Chicago region. Try running server_attachments.rb\n\n" if attachments.empty?
|
|
27
|
+
|
|
28
|
+
puts "\nSelect Volume To Detach:\n\n"
|
|
29
|
+
attachments.each_with_index do |attachment, i|
|
|
30
|
+
puts "\t #{i}. #{attachment.device}"
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
delete_str = get_user_input "\nEnter Volume Number"
|
|
34
|
+
attachments[delete_str.to_i]
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
# Use username defined in ~/.fog file, if absent prompt for username.
|
|
38
|
+
# For more details on ~/.fog refer to http://fog.io/about/getting_started.html
|
|
39
|
+
def rackspace_username
|
|
40
|
+
Fog.credentials[:rackspace_username] || get_user_input("Enter Rackspace Username")
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
# Use api key defined in ~/.fog file, if absent prompt for api key
|
|
44
|
+
# For more details on ~/.fog refer to http://fog.io/about/getting_started.html
|
|
45
|
+
def rackspace_api_key
|
|
46
|
+
Fog.credentials[:rackspace_api_key] || get_user_input("Enter Rackspace API key")
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
#create Next Generation Cloud Server service
|
|
50
|
+
compute_service = Fog::Compute.new({
|
|
51
|
+
:provider => 'rackspace',
|
|
52
|
+
:rackspace_username => rackspace_username,
|
|
53
|
+
:rackspace_api_key => rackspace_api_key,
|
|
54
|
+
:version => :v2, # Use Next Gen Cloud Servers
|
|
55
|
+
:rackspace_region => :ord #Use Chicago Region
|
|
56
|
+
})
|
|
57
|
+
|
|
58
|
+
#create Cloud Block Storage service
|
|
59
|
+
cbs_service = Fog::Rackspace::BlockStorage.new({
|
|
60
|
+
:rackspace_username => rackspace_username,
|
|
61
|
+
:rackspace_api_key => rackspace_api_key,
|
|
62
|
+
:rackspace_region => :ord #Use Chicago Region
|
|
63
|
+
})
|
|
64
|
+
|
|
65
|
+
# retrieve list of servers
|
|
66
|
+
servers = compute_service.servers
|
|
67
|
+
|
|
68
|
+
# prompt user for server
|
|
69
|
+
server = select_server(servers)
|
|
70
|
+
|
|
71
|
+
# get attached volumes --also know as attachments
|
|
72
|
+
attachments = server.attachments
|
|
73
|
+
|
|
74
|
+
# prompt user for volume to detach
|
|
75
|
+
attachment = select_attachment(attachments)
|
|
76
|
+
|
|
77
|
+
# prompt for snapshot name
|
|
78
|
+
snapshot_name = get_user_input "Enter Snapshot Name"
|
|
79
|
+
|
|
80
|
+
puts "\n\n"
|
|
81
|
+
puts "******************** NOTE ******************************************"
|
|
82
|
+
puts "* Volume must be unmounted from operating system before detaching. *"
|
|
83
|
+
puts "* This script assumes volume has been unmounted. *"
|
|
84
|
+
puts "********************************************************************\n\n"
|
|
85
|
+
|
|
86
|
+
volume = cbs_service.volumes.get attachment.volume_id
|
|
87
|
+
|
|
88
|
+
# The snapshot process requires all writes to be flushed to disk. This requires unmounting the file systems or detaching the volume.
|
|
89
|
+
puts "Detaching Volume #{volume.display_name}"
|
|
90
|
+
attachment.detach
|
|
91
|
+
|
|
92
|
+
volume.wait_for { ready? }
|
|
93
|
+
|
|
94
|
+
puts "Now Creating Snapshot #{snapshot_name}"
|
|
95
|
+
snapshot = cbs_service.snapshots.create :display_name => snapshot_name, :volume_id => attachment.volume_id
|
|
96
|
+
|
|
97
|
+
begin
|
|
98
|
+
# Check every 5 seconds to see if snapshot is in the available state (ready?).
|
|
99
|
+
# If the available has not been built in 5 minutes (600 seconds) an exception will be raised.
|
|
100
|
+
snapshot.wait_for(600, 5) do
|
|
101
|
+
print "."
|
|
102
|
+
STDOUT.flush
|
|
103
|
+
ready?
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
puts "[DONE]\n\n"
|
|
107
|
+
|
|
108
|
+
puts "Re-attaching Volume #{volume.display_name}"
|
|
109
|
+
attachment.save
|
|
110
|
+
|
|
111
|
+
rescue Fog::Errors::TimeoutError
|
|
112
|
+
puts "[TIMEOUT]\n\n"
|
|
113
|
+
|
|
114
|
+
puts "The snapshot #{snapshot.display_name} is still being preformed and is taking longer to complete than expected."
|
|
115
|
+
puts "You can continute to monitor the process through the web console at https://mycloud.rackspace.com/\n\n"
|
|
116
|
+
end
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
# This example demonstrates creating Cloud Block Storage volume with the Rackpace Open Cloud
|
|
4
|
+
|
|
5
|
+
require 'rubygems' #required for Ruby 1.8.x
|
|
6
|
+
require 'fog'
|
|
7
|
+
|
|
8
|
+
def get_user_input(prompt)
|
|
9
|
+
print "\n#{prompt}: "
|
|
10
|
+
gets.chomp
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def select_volume_type(volume_types)
|
|
14
|
+
puts "\nSelect Volume Type:\n\n"
|
|
15
|
+
volume_types.each_with_index do |volume_type, i|
|
|
16
|
+
puts "\t #{i}. #{volume_type.name}"
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
selected_str = get_user_input "Enter Volume Type Number"
|
|
20
|
+
volume_types[selected_str.to_i]
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
# Use username defined in ~/.fog file, if absent prompt for username.
|
|
24
|
+
# For more details on ~/.fog refer to http://fog.io/about/getting_started.html
|
|
25
|
+
def rackspace_username
|
|
26
|
+
Fog.credentials[:rackspace_username] || get_user_input("Enter Rackspace Username")
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
# Use api key defined in ~/.fog file, if absent prompt for api key
|
|
30
|
+
# For more details on ~/.fog refer to http://fog.io/about/getting_started.html
|
|
31
|
+
def rackspace_api_key
|
|
32
|
+
Fog.credentials[:rackspace_api_key] || get_user_input("Enter Rackspace API key")
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
# create Cloud Block Storage service
|
|
36
|
+
service = Fog::Rackspace::BlockStorage.new({
|
|
37
|
+
:rackspace_username => rackspace_username,
|
|
38
|
+
:rackspace_api_key => rackspace_api_key,
|
|
39
|
+
:rackspace_region => :ord #Use Chicago Region
|
|
40
|
+
})
|
|
41
|
+
|
|
42
|
+
# retrieve list of volume types
|
|
43
|
+
volume_types = service.volume_types
|
|
44
|
+
|
|
45
|
+
#prompt user for volume type
|
|
46
|
+
volume_type = select_volume_type(volume_types)
|
|
47
|
+
|
|
48
|
+
# prompt for volume size
|
|
49
|
+
volume_size = get_user_input "Enter Size of Volume (100 GB Minimum)"
|
|
50
|
+
|
|
51
|
+
# prompt for name of volume
|
|
52
|
+
volume_name = get_user_input "Enter Name for Volume"
|
|
53
|
+
|
|
54
|
+
#create volume
|
|
55
|
+
volume = service.volumes.create(:size => volume_size, :display_name => volume_name, :volume_type => volume_type.name)
|
|
56
|
+
|
|
57
|
+
puts "\nVolume #{volume_name} is being created.\n\n"
|
|
58
|
+
puts "To delete the volume please execute the delete_volume.rb script\n\n"
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
# This example demonstrates deleting Cloud Block Storage volume with the Rackpace Open Cloud
|
|
4
|
+
|
|
5
|
+
require 'rubygems' #required for Ruby 1.8.x
|
|
6
|
+
require 'fog'
|
|
7
|
+
|
|
8
|
+
def get_user_input(prompt)
|
|
9
|
+
print "\n#{prompt}: "
|
|
10
|
+
gets.chomp
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def select_volume(volumes)
|
|
14
|
+
abort "\nThere are not any volumes to delete in the Chicago region. Try running create_volume.rb\n\n" if volumes.empty?
|
|
15
|
+
|
|
16
|
+
puts "\nSelect Volume:\n\n"
|
|
17
|
+
volumes.each_with_index do |volume, i|
|
|
18
|
+
puts "\t #{i}. #{volume.display_name}"
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
selected_str = get_user_input "Enter Volume Type Number"
|
|
22
|
+
volumes[selected_str.to_i]
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
# Use username defined in ~/.fog file, if absent prompt for username.
|
|
26
|
+
# For more details on ~/.fog refer to http://fog.io/about/getting_started.html
|
|
27
|
+
def rackspace_username
|
|
28
|
+
Fog.credentials[:rackspace_username] || get_user_input("Enter Rackspace Username")
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
# Use api key defined in ~/.fog file, if absent prompt for api key
|
|
32
|
+
# For more details on ~/.fog refer to http://fog.io/about/getting_started.html
|
|
33
|
+
def rackspace_api_key
|
|
34
|
+
Fog.credentials[:rackspace_api_key] || get_user_input("Enter Rackspace API key")
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
# create Cloud Block Storage service
|
|
38
|
+
service = Fog::Rackspace::BlockStorage.new({
|
|
39
|
+
:rackspace_username => rackspace_username,
|
|
40
|
+
:rackspace_api_key => rackspace_api_key,
|
|
41
|
+
:rackspace_region => :ord #Use Chicago Region
|
|
42
|
+
})
|
|
43
|
+
|
|
44
|
+
# retrieve list of volumes
|
|
45
|
+
volumes = service.volumes
|
|
46
|
+
|
|
47
|
+
# prompt user for volume
|
|
48
|
+
volume = select_volume(volumes)
|
|
49
|
+
|
|
50
|
+
# delete volume
|
|
51
|
+
volume.destroy
|
|
52
|
+
|
|
53
|
+
puts "\nVolume #{volume.display_name} is being destroyed.\n\n"
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
# This example demonstrates creating a server with the Rackpace Open Cloud
|
|
4
|
+
|
|
5
|
+
require 'rubygems' #required for Ruby 1.8.x
|
|
6
|
+
require 'fog'
|
|
7
|
+
require 'base64' #required to encode files for personality functionality
|
|
8
|
+
require 'sshkey' #required to generate ssh keys. 'gem install sshkey'
|
|
9
|
+
|
|
10
|
+
def get_user_input(prompt)
|
|
11
|
+
print "#{prompt}: "
|
|
12
|
+
gets.chomp
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# Use username defined in ~/.fog file, if absent prompt for username.
|
|
16
|
+
# For more details on ~/.fog refer to http://fog.io/about/getting_started.html
|
|
17
|
+
def rackspace_username
|
|
18
|
+
Fog.credentials[:rackspace_username] || get_user_input("Enter Rackspace Username")
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# Use api key defined in ~/.fog file, if absent prompt for api key
|
|
22
|
+
# For more details on ~/.fog refer to http://fog.io/about/getting_started.html
|
|
23
|
+
def rackspace_api_key
|
|
24
|
+
Fog.credentials[:rackspace_api_key] || get_user_input("Enter Rackspace API key")
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# Generates a ssh key using the SSHKey library. The private key is avaialble via
|
|
28
|
+
# the '.private_key' and the public key is avaialble via '.ssh_public_key'
|
|
29
|
+
def generate_ssh_key
|
|
30
|
+
SSHKey.generate
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# create Next Generation Cloud Server service
|
|
34
|
+
service = Fog::Compute.new({
|
|
35
|
+
:provider => 'rackspace',
|
|
36
|
+
:rackspace_username => rackspace_username,
|
|
37
|
+
:rackspace_api_key => rackspace_api_key,
|
|
38
|
+
:version => :v2, # Use Next Gen Cloud Servers
|
|
39
|
+
:rackspace_region => :ord #Use Chicago Region
|
|
40
|
+
})
|
|
41
|
+
|
|
42
|
+
# pick the first flavor
|
|
43
|
+
flavor = service.flavors.first
|
|
44
|
+
|
|
45
|
+
# pick the first Ubuntu image we can find
|
|
46
|
+
image = service.images.find {|image| image.name =~ /Ubuntu/}
|
|
47
|
+
|
|
48
|
+
# prompt for server name
|
|
49
|
+
server_name = get_user_input "\nEnter Server Name"
|
|
50
|
+
|
|
51
|
+
# generate the ssh key
|
|
52
|
+
ssh_key = generate_ssh_key
|
|
53
|
+
|
|
54
|
+
# reload flavor in order to retrieve all of its attributes
|
|
55
|
+
flavor.reload
|
|
56
|
+
|
|
57
|
+
puts "\nNow creating server '#{server_name}' the following with specifications:\n"
|
|
58
|
+
puts "\t* #{flavor.ram} MB RAM"
|
|
59
|
+
puts "\t* #{flavor.disk} GB"
|
|
60
|
+
puts "\t* #{flavor.vcpus} CPU(s)"
|
|
61
|
+
puts "\t* #{image.name}"
|
|
62
|
+
puts "\n"
|
|
63
|
+
|
|
64
|
+
begin
|
|
65
|
+
# bootstrap server
|
|
66
|
+
server = service.servers.bootstrap :name => server_name,
|
|
67
|
+
:flavor_id => flavor.id,
|
|
68
|
+
:image_id => image.id,
|
|
69
|
+
:private_key => ssh_key.private_key,
|
|
70
|
+
:public_key => ssh_key.ssh_public_key
|
|
71
|
+
|
|
72
|
+
if server.ready?
|
|
73
|
+
puts "[DONE]\n\n"
|
|
74
|
+
|
|
75
|
+
puts "The server has been successfully created.\n"
|
|
76
|
+
puts "Write the following ssh keys to you ~/.ssh directory in order to log in\n\n"
|
|
77
|
+
puts "+++++++++++PRIVATE_KEY (~/.ssh/fog_key)++++++++++++"
|
|
78
|
+
puts ssh_key.private_key
|
|
79
|
+
puts "++++++++++PUBLIC_KEY (~/.ssh/fog_key.pub)++++++++++"
|
|
80
|
+
puts ssh_key.ssh_public_key
|
|
81
|
+
puts "+++++++++++++++++++++++++++++++++++++++++++++++++++i\n\n"
|
|
82
|
+
|
|
83
|
+
puts "You can then log into the server using the following command\n"
|
|
84
|
+
puts "ssh #{server.username}@#{server.public_ip_address}\n\n"
|
|
85
|
+
else
|
|
86
|
+
puts "An error occured, please try again"
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
rescue Fog::Errors::TimeoutError
|
|
90
|
+
puts "[TIMEOUT]\n\n"
|
|
91
|
+
|
|
92
|
+
puts "This server is currently #{server.progress}% into the build process and is taking longer to complete than expected."
|
|
93
|
+
puts "You can continute to monitor the build process through the web console at https://mycloud.rackspace.com/\n\n"
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
puts "To delete the server please execute the delete_server.rb script\n\n"
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
# This example demonstrates creating a server image with the Rackpace Open Cloud
|
|
4
|
+
|
|
5
|
+
require 'rubygems' #required for Ruby 1.8.x
|
|
6
|
+
require 'fog'
|
|
7
|
+
|
|
8
|
+
def get_user_input(prompt)
|
|
9
|
+
print "#{prompt}: "
|
|
10
|
+
gets.chomp
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def select_server(servers)
|
|
14
|
+
abort "\nThere are not any servers available to image in the Chicago region. Try running create_server.rb\n\n" if servers.empty?
|
|
15
|
+
|
|
16
|
+
puts "\nSelect Server To Image:\n\n"
|
|
17
|
+
servers.each_with_index do |server, i|
|
|
18
|
+
puts "\t #{i}. #{server.name} [#{server.public_ip_address}]"
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
selected_str = get_user_input "\nEnter Server Number"
|
|
22
|
+
servers[selected_str.to_i]
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
# Use username defined in ~/.fog file, if absent prompt for username.
|
|
26
|
+
# For more details on ~/.fog refer to http://fog.io/about/getting_started.html
|
|
27
|
+
def rackspace_username
|
|
28
|
+
Fog.credentials[:rackspace_username] || get_user_input("Enter Rackspace Username")
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
# Use api key defined in ~/.fog file, if absent prompt for api key
|
|
32
|
+
# For more details on ~/.fog refer to http://fog.io/about/getting_started.html
|
|
33
|
+
def rackspace_api_key
|
|
34
|
+
Fog.credentials[:rackspace_api_key] || get_user_input("Enter Rackspace API key")
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
# create Next Generation Cloud Server service
|
|
38
|
+
service = Fog::Compute.new({
|
|
39
|
+
:provider => 'rackspace',
|
|
40
|
+
:rackspace_username => rackspace_username,
|
|
41
|
+
:rackspace_api_key => rackspace_api_key,
|
|
42
|
+
:version => :v2, # Use Next Gen Cloud Servers
|
|
43
|
+
:rackspace_region => :ord #Use Chicago Region
|
|
44
|
+
})
|
|
45
|
+
|
|
46
|
+
# retrieve list of servers
|
|
47
|
+
servers = service.servers
|
|
48
|
+
|
|
49
|
+
# prompt user for server
|
|
50
|
+
server = select_server(servers)
|
|
51
|
+
|
|
52
|
+
# prompt user for image name
|
|
53
|
+
image_name = get_user_input "Enter Image Name"
|
|
54
|
+
|
|
55
|
+
# creates image for server
|
|
56
|
+
server.create_image image_name
|
|
57
|
+
|
|
58
|
+
puts "\nImage #{image_name} is being created for server #{server.name}.\n\n"
|
|
59
|
+
puts "To delete the image please execute the delete_image.rb script\n\n"
|