fog 1.4.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.document +1 -1
- data/.irbrc +5 -10
- data/{README.rdoc → README.md} +66 -61
- data/Rakefile +4 -6
- data/changelog.txt +491 -0
- data/docs/about/users.markdown +1 -0
- data/fog.gemspec +4 -4
- data/lib/fog.rb +1 -1
- data/lib/fog/aws.rb +4 -0
- data/lib/fog/aws/auto_scaling.rb +3 -0
- data/lib/fog/aws/cloud_watch.rb +28 -0
- data/lib/fog/aws/compute.rb +7 -1
- data/lib/fog/aws/elasticache.rb +64 -6
- data/lib/fog/aws/models/auto_scaling/configuration.rb +3 -1
- data/lib/fog/aws/models/auto_scaling/group.rb +10 -9
- data/lib/fog/aws/models/auto_scaling/policies.rb +33 -0
- data/lib/fog/aws/models/auto_scaling/policy.rb +46 -0
- data/lib/fog/aws/models/cloud_watch/alarm.rb +50 -2
- data/lib/fog/aws/models/cloud_watch/alarms.rb +18 -1
- data/lib/fog/aws/models/compute/address.rb +2 -2
- data/lib/fog/aws/models/dns/records.rb +5 -0
- data/lib/fog/aws/models/elasticache/cluster.rb +1 -1
- data/lib/fog/aws/models/iam/users.rb +26 -4
- data/lib/fog/aws/parsers/auto_scaling/describe_policies.rb +7 -5
- data/lib/fog/aws/parsers/elb/describe_load_balancers.rb +1 -1
- data/lib/fog/aws/rds.rb +1 -1
- data/lib/fog/aws/requests/auto_scaling/create_auto_scaling_group.rb +8 -0
- data/lib/fog/aws/requests/auto_scaling/create_launch_configuration.rb +1 -2
- data/lib/fog/aws/requests/auto_scaling/delete_auto_scaling_group.rb +10 -2
- data/lib/fog/aws/requests/auto_scaling/delete_launch_configuration.rb +1 -1
- data/lib/fog/aws/requests/auto_scaling/delete_policy.rb +10 -1
- data/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_instances.rb +0 -1
- data/lib/fog/aws/requests/auto_scaling/describe_policies.rb +13 -1
- data/lib/fog/aws/requests/auto_scaling/put_scaling_policy.rb +20 -1
- data/lib/fog/aws/requests/auto_scaling/update_auto_scaling_group.rb +1 -1
- data/lib/fog/aws/requests/cloud_watch/delete_alarms.rb +19 -1
- data/lib/fog/aws/requests/cloud_watch/describe_alarms.rb +20 -2
- data/lib/fog/aws/requests/cloud_watch/put_metric_alarm.rb +9 -0
- data/lib/fog/aws/requests/compute/allocate_address.rb +4 -5
- data/lib/fog/aws/requests/compute/create_dhcp_options.rb +6 -5
- data/lib/fog/aws/requests/compute/create_internet_gateway.rb +7 -6
- data/lib/fog/aws/requests/compute/create_subnet.rb +11 -10
- data/lib/fog/aws/requests/compute/create_vpc.rb +8 -7
- data/lib/fog/aws/requests/compute/delete_dhcp_options.rb +1 -0
- data/lib/fog/aws/requests/compute/delete_internet_gateway.rb +1 -0
- data/lib/fog/aws/requests/compute/delete_subnet.rb +1 -0
- data/lib/fog/aws/requests/compute/delete_vpc.rb +2 -1
- data/lib/fog/aws/requests/compute/describe_availability_zones.rb +1 -0
- data/lib/fog/aws/requests/compute/describe_dhcp_options.rb +1 -8
- data/lib/fog/aws/requests/compute/describe_instances.rb +3 -1
- data/lib/fog/aws/requests/compute/describe_internet_gateways.rb +1 -8
- data/lib/fog/aws/requests/compute/describe_subnets.rb +1 -9
- data/lib/fog/aws/requests/compute/describe_vpcs.rb +1 -8
- data/lib/fog/aws/requests/compute/release_address.rb +12 -4
- data/lib/fog/aws/requests/compute/start_instances.rb +1 -0
- data/lib/fog/aws/requests/compute/stop_instances.rb +1 -0
- data/lib/fog/aws/requests/elasticache/create_cache_cluster.rb +26 -2
- data/lib/fog/aws/requests/elasticache/delete_cache_cluster.rb +10 -1
- data/lib/fog/aws/requests/elasticache/describe_cache_clusters.rb +16 -1
- data/lib/fog/aws/requests/elasticache/modify_cache_cluster.rb +35 -3
- data/lib/fog/aws/requests/elasticache/reboot_cache_cluster.rb +10 -2
- data/lib/fog/aws/requests/elb/create_load_balancer.rb +1 -1
- data/lib/fog/aws/requests/rds/describe_db_instances.rb +3 -3
- data/lib/fog/aws/sqs.rb +1 -1
- data/lib/fog/aws/storage.rb +1 -1
- data/lib/fog/bin/rackspace.rb +4 -0
- data/lib/fog/cloudstack/compute.rb +25 -18
- data/lib/fog/cloudstack/models/compute/image.rb +34 -34
- data/lib/fog/cloudstack/models/compute/job.rb +14 -1
- data/lib/fog/cloudstack/models/compute/jobs.rb +1 -1
- data/lib/fog/cloudstack/models/compute/security_group.rb +50 -0
- data/lib/fog/cloudstack/models/compute/security_group_rule.rb +62 -0
- data/lib/fog/cloudstack/models/compute/security_group_rules.rb +37 -0
- data/lib/fog/cloudstack/models/compute/security_groups.rb +27 -0
- data/lib/fog/cloudstack/models/compute/server.rb +63 -39
- data/lib/fog/cloudstack/models/compute/volume.rb +3 -7
- data/lib/fog/cloudstack/models/compute/zone.rb +1 -2
- data/lib/fog/cloudstack/requests/compute/assign_virtual_machine.rb +18 -0
- data/lib/fog/cloudstack/requests/compute/authorize_security_group_egress.rb +68 -0
- data/lib/fog/cloudstack/requests/compute/authorize_security_group_ingress.rb +55 -4
- data/lib/fog/cloudstack/requests/compute/create_security_group.rb +12 -4
- data/lib/fog/cloudstack/requests/compute/create_zone.rb +20 -0
- data/lib/fog/cloudstack/requests/compute/delete_security_group.rb +17 -0
- data/lib/fog/cloudstack/requests/compute/destroy_virtual_machine.rb +23 -1
- data/lib/fog/cloudstack/requests/compute/list_firewall_rules.rb +15 -0
- data/lib/fog/cloudstack/requests/compute/list_security_groups.rb +22 -4
- data/lib/fog/cloudstack/requests/compute/query_async_job_result.rb +15 -3
- data/lib/fog/cloudstack/requests/compute/revoke_security_group_egress.rb +42 -0
- data/lib/fog/cloudstack/requests/compute/revoke_security_group_ingress.rb +29 -3
- data/lib/fog/core.rb +1 -0
- data/lib/fog/core/attributes.rb +1 -1
- data/lib/fog/core/current_machine.rb +2 -2
- data/lib/fog/core/scp.rb +8 -0
- data/lib/fog/core/ssh.rb +8 -0
- data/lib/fog/dynect/dns.rb +14 -5
- data/lib/fog/ibm/requests/compute/create_instance.rb +1 -1
- data/lib/fog/libvirt/requests/compute/create_volume.rb +1 -1
- data/lib/fog/libvirt/requests/compute/list_volumes.rb +1 -1
- data/lib/fog/local/models/storage/file.rb +12 -1
- data/lib/fog/local/storage.rb +25 -1
- data/lib/fog/ninefold/compute.rb +1 -0
- data/lib/fog/openstack.rb +3 -1
- data/lib/fog/openstack/compute.rb +13 -2
- data/lib/fog/openstack/models/compute/servers.rb +10 -2
- data/lib/fog/openstack/requests/compute/create_flavor.rb +2 -2
- data/lib/fog/openstack/requests/compute/create_security_group.rb +1 -1
- data/lib/fog/openstack/requests/compute/create_server.rb +1 -1
- data/lib/fog/openstack/requests/compute/create_volume.rb +1 -1
- data/lib/fog/openstack/requests/compute/get_flavor_details.rb +7 -7
- data/lib/fog/openstack/requests/compute/get_quota.rb +1 -12
- data/lib/fog/openstack/requests/compute/get_quota_defaults.rb +1 -12
- data/lib/fog/openstack/requests/compute/get_volume_details.rb +1 -1
- data/lib/fog/openstack/requests/compute/list_flavors.rb +7 -7
- data/lib/fog/openstack/requests/compute/list_flavors_detail.rb +7 -7
- data/lib/fog/openstack/requests/compute/list_security_groups.rb +7 -7
- data/lib/fog/openstack/requests/compute/list_servers_detail.rb +4 -3
- data/lib/fog/openstack/requests/compute/list_volumes.rb +6 -8
- data/lib/fog/openstack/requests/compute/update_quota.rb +2 -15
- data/lib/fog/openstack/requests/identity/delete_role.rb +1 -1
- data/lib/fog/openstack/requests/identity/list_roles.rb +1 -1
- data/lib/fog/openstack/requests/image/create_image.rb +3 -1
- data/lib/fog/openstack/requests/image/list_public_images.rb +19 -1
- data/lib/fog/openstack/requests/image/list_public_images_detailed.rb +20 -2
- data/lib/fog/openstack/requests/image/update_image.rb +1 -1
- data/lib/fog/rackspace.rb +2 -0
- data/lib/fog/rackspace/databases.rb +121 -0
- data/lib/fog/rackspace/identity.rb +83 -0
- data/lib/fog/rackspace/load_balancers.rb +3 -0
- data/lib/fog/rackspace/models/databases/database.rb +32 -0
- data/lib/fog/rackspace/models/databases/databases.rb +31 -0
- data/lib/fog/rackspace/models/databases/flavor.rb +15 -0
- data/lib/fog/rackspace/models/databases/flavors.rb +25 -0
- data/lib/fog/rackspace/models/databases/instance.rb +104 -0
- data/lib/fog/rackspace/models/databases/instances.rb +25 -0
- data/lib/fog/rackspace/models/databases/user.rb +32 -0
- data/lib/fog/rackspace/models/databases/users.rb +31 -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 +32 -0
- data/lib/fog/rackspace/models/identity/tenant.rb +15 -0
- data/lib/fog/rackspace/models/identity/tenants.rb +28 -0
- data/lib/fog/rackspace/models/identity/user.rb +53 -0
- data/lib/fog/rackspace/models/identity/users.rb +36 -0
- data/lib/fog/rackspace/models/load_balancers/load_balancer.rb +17 -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 +26 -0
- data/lib/fog/rackspace/requests/databases/create_user.rb +24 -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/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/identity/create_token.rb +25 -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_credentials.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 +22 -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/get_ssl_termination.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/remove_ssl_termination.rb +15 -0
- data/lib/fog/rackspace/requests/load_balancers/set_ssl_termination.rb +31 -0
- data/lib/fog/rackspace/storage.rb +1 -1
- data/lib/fog/vsphere/models/compute/server.rb +1 -0
- data/lib/fog/vsphere/requests/compute/vm_clone.rb +2 -2
- data/tests/aws/models/compute/address_tests.rb +2 -1
- data/tests/aws/models/compute/volume_tests.rb +1 -1
- data/tests/aws/models/dns/records_tests.rb +19 -1
- data/tests/aws/models/storage/directory_tests.rb +1 -1
- data/tests/aws/models/storage/url_tests.rb +7 -1
- data/tests/aws/requests/auto_scaling/auto_scaling_tests.rb +4 -2
- data/tests/aws/requests/compute/address_tests.rb +19 -1
- data/tests/aws/requests/elasticache/cache_cluster_tests.rb +4 -4
- data/tests/aws/requests/elb/helper.rb +13 -2
- data/tests/aws/requests/iam/access_key_tests.rb +1 -3
- data/tests/cloudstack/compute/models/security_group_rule_tests.rb +29 -0
- data/tests/cloudstack/compute/models/security_group_tests.rb +16 -0
- data/tests/cloudstack/compute/models/security_groups_tests.rb +19 -0
- data/tests/cloudstack/compute/models/server_tests.rb +18 -0
- data/tests/cloudstack/compute/models/volume_tests.rb +34 -0
- data/tests/cloudstack/compute/models/volumes_tests.rb +17 -0
- data/tests/compute/helper.rb +10 -3
- data/tests/core/current_machine_tests.rb +32 -0
- data/tests/helper.rb +1 -1
- data/tests/helpers/mock_helper.rb +3 -0
- data/tests/hp/requests/compute/address_tests.rb +2 -1
- data/tests/joyent/requests/compute/datasets_tests.rb +12 -3
- data/tests/local/models/file_tests.rb +43 -0
- data/tests/local/storage_tests.rb +40 -0
- data/tests/openstack/requests/compute/flavor_tests.rb +1 -1
- data/tests/openstack/requests/compute/server_tests.rb +3 -3
- data/tests/openstack/requests/compute/volume_tests.rb +1 -1
- data/tests/openstack/requests/identity/role_tests.rb +1 -1
- data/tests/rackspace/databases_tests.rb +26 -0
- data/tests/rackspace/models/databases/database_tests.rb +17 -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/identity/credentials_tests.rb +16 -0
- data/tests/rackspace/models/identity/roles_tests.rb +16 -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/load_balancer_tests.rb +20 -0
- data/tests/rackspace/requests/databases/database_tests.rb +36 -0
- data/tests/rackspace/requests/databases/flavor_tests.rb +16 -0
- data/tests/rackspace/requests/databases/helper.rb +84 -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/identity/tenants_tests.rb +21 -0
- data/tests/rackspace/requests/identity/token_tests.rb +63 -0
- data/tests/rackspace/requests/identity/user_tests.rb +107 -0
- data/tests/rackspace/requests/load_balancers/helper.rb +70 -1
- data/tests/rackspace/requests/load_balancers/ssl_termination_tests.rb +38 -0
- data/tests/storage/models/file_tests.rb +1 -1
- metadata +129 -13
- data/spec/core/current_machine_spec.rb +0 -32
- data/spec/lib/fog/aws/parsers/sqs/receive_message_spec.rb +0 -58
- data/spec/spec_helper.rb +0 -8
data/.document
CHANGED
data/.irbrc
CHANGED
|
@@ -50,16 +50,11 @@ def connect_openstack(username, password, tenant = nil, url = 'http://192.168.27
|
|
|
50
50
|
|
|
51
51
|
parameters.merge!(:openstack_tenant => tenant) if tenant
|
|
52
52
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
connections[username.to_sym] = {
|
|
59
|
-
:identity => identity,
|
|
60
|
-
:compute => compute ,
|
|
61
|
-
:image => image
|
|
62
|
-
}
|
|
53
|
+
key = username.to_sym
|
|
54
|
+
set_service(key, Fog::Identity, parameters)
|
|
55
|
+
set_service(key, Fog::Compute, parameters)
|
|
56
|
+
set_service(key, Fog::Volume, parameters)
|
|
57
|
+
set_service(key, Fog::Image, parameters)
|
|
63
58
|
end
|
|
64
59
|
|
|
65
60
|
def connect(parameters)
|
data/{README.rdoc → README.md}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
http://geemus.s3.amazonaws.com/fog.png
|
|
1
|
+

|
|
2
2
|
|
|
3
3
|
fog is the Ruby cloud computing library, top to bottom:
|
|
4
4
|
|
|
@@ -6,104 +6,109 @@ fog is the Ruby cloud computing library, top to bottom:
|
|
|
6
6
|
* Requests allow power users to get the most out of the features of each individual cloud.
|
|
7
7
|
* Mocks make testing and integrating a breeze.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
## Getting Started
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
sudo gem install fog
|
|
12
12
|
|
|
13
|
-
Now type
|
|
13
|
+
Now type `fog` to try stuff, confident that fog will let you know what to do.
|
|
14
|
+
Here is an example of wading through server creation for Amazon Elastic Compute Cloud:
|
|
14
15
|
|
|
15
|
-
|
|
16
|
-
|
|
16
|
+
>> server = Compute[:aws].servers.create
|
|
17
|
+
ArgumentError: image_id is required for this operation
|
|
17
18
|
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
>> server = Compute[:aws].servers.create(:image_id => 'ami-5ee70037')
|
|
20
|
+
<Fog::AWS::EC2::Server [...]>
|
|
20
21
|
|
|
21
|
-
|
|
22
|
-
|
|
22
|
+
>> server.destroy # cleanup after yourself or regret it, trust me
|
|
23
|
+
true
|
|
23
24
|
|
|
24
|
-
|
|
25
|
+
## Collections
|
|
25
26
|
|
|
26
27
|
A high level interface to each cloud is provided through collections, such as `images` and `servers`.
|
|
27
|
-
You can see a list of available collections by calling `collections` on the connection object.
|
|
28
|
+
You can see a list of available collections by calling `collections` on the connection object.
|
|
29
|
+
You can try it out using the `fog` command:
|
|
28
30
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
+
>> Compute[:aws].collections
|
|
32
|
+
[:addresses, :directories, ..., :volumes, :zones]
|
|
31
33
|
|
|
32
34
|
Some collections are available across multiple providers:
|
|
33
35
|
|
|
34
|
-
* compute providers have
|
|
35
|
-
* dns providers have
|
|
36
|
-
* storage providers have
|
|
36
|
+
* compute providers have `flavors`, `images` and `servers`
|
|
37
|
+
* dns providers have `zones` and `records`
|
|
38
|
+
* storage providers have `directories` and `files`
|
|
37
39
|
|
|
38
40
|
Collections share basic CRUD type operations, such as:
|
|
39
|
-
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
41
|
+
|
|
42
|
+
* `all` - fetch every object of that type from the provider.
|
|
43
|
+
* `create` - initialize a new record locally and a remote resource with the provider.
|
|
44
|
+
* `get` - fetch a single object by it's identity from the provider.
|
|
45
|
+
* `new` - initialize a new record locally, but do not create a remote resource with the provider.
|
|
43
46
|
|
|
44
47
|
As an example, we'll try initializing and persisting a Rackspace Cloud server:
|
|
45
48
|
|
|
46
|
-
|
|
49
|
+
require 'fog'
|
|
47
50
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
51
|
+
compute = Fog::Compute.new(
|
|
52
|
+
:provider => 'Rackspace',
|
|
53
|
+
:rackspace_api_key => key,
|
|
54
|
+
:rackspace_username => username
|
|
55
|
+
)
|
|
53
56
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
+
# boot a gentoo server (flavor 1 = 256, image 3 = gentoo 2008.0)
|
|
58
|
+
server = compute.servers.create(:flavor_id => 1, :image_id => 3, :name => 'my_server')
|
|
59
|
+
server.wait_for { ready? } # give server time to boot
|
|
57
60
|
|
|
58
|
-
|
|
61
|
+
# DO STUFF
|
|
59
62
|
|
|
60
|
-
|
|
63
|
+
server.destroy # cleanup after yourself or regret it, trust me
|
|
61
64
|
|
|
62
|
-
|
|
65
|
+
## Models
|
|
63
66
|
|
|
64
67
|
Many of the collection methods return individual objects, which also provide common methods:
|
|
65
|
-
* +destroy+ - will destroy the persisted object from the provider
|
|
66
|
-
* +save+ - persist the object to the provider
|
|
67
|
-
* +wait_for+ - takes a block and waits for either the block to return true for the object or for a timeout (defaults to 10 minutes)
|
|
68
68
|
|
|
69
|
-
|
|
69
|
+
* `destroy` - will destroy the persisted object from the provider
|
|
70
|
+
* `save` - persist the object to the provider
|
|
71
|
+
* `wait_for` - takes a block and waits for either the block to return true for the object or for a timeout (defaults to 10 minutes)
|
|
72
|
+
|
|
73
|
+
## Mocks
|
|
70
74
|
|
|
71
75
|
As you might imagine, testing code using Fog can be slow and expensive, constantly turning on and and shutting down instances.
|
|
72
76
|
Mocking allows skipping this overhead by providing an in memory representation resources as you make requests.
|
|
73
77
|
Enabling mocking easy to use, before you run other commands, simply run:
|
|
74
78
|
|
|
75
|
-
|
|
79
|
+
Fog.mock!
|
|
76
80
|
|
|
77
|
-
Then proceed as usual, if you run into unimplemented mocks fog will raise an error and as always contributions are welcome!
|
|
81
|
+
Then proceed as usual, if you run into unimplemented mocks, fog will raise an error and as always contributions are welcome!
|
|
78
82
|
|
|
79
|
-
|
|
83
|
+
## Requests
|
|
80
84
|
|
|
81
85
|
Requests allow you to dive deeper when the models just can't cut it.
|
|
82
|
-
You can see a list of available requests by calling
|
|
86
|
+
You can see a list of available requests by calling `#requests` on the connection object.
|
|
83
87
|
|
|
84
88
|
For instance, ec2 provides methods related to reserved instances that don't have any models (yet). Here is how you can lookup your reserved instances:
|
|
85
89
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
90
|
+
$ fog
|
|
91
|
+
>> Compute[:aws].describe_reserved_instances
|
|
92
|
+
#<Excon::Response [...]>
|
|
89
93
|
|
|
90
|
-
It will return an
|
|
94
|
+
It will return an [excon](http://github.com/geemus/excon) response, which has `body`, `headers` and `status`. Both return nice hashes.
|
|
91
95
|
|
|
92
|
-
|
|
96
|
+
## Go forth and conquer
|
|
93
97
|
|
|
94
|
-
Play around and use the console to explore or check out
|
|
98
|
+
Play around and use the console to explore or check out [fog.io](http://fog.io) for more details and examples.
|
|
99
|
+
Once you are ready to start scripting fog, here is a quick hint on how to make connections without the command line thing to help you.
|
|
95
100
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
101
|
+
# create a compute connection
|
|
102
|
+
compute = Fog::Compute.new(:provider => 'AWS', :aws_access_key_id => ACCESS_KEY_ID, :aws_secret_access_key => SECRET_ACCESS_KEY)
|
|
103
|
+
# compute operations go here
|
|
99
104
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
105
|
+
# create a storage connection
|
|
106
|
+
storage = Fog::Storage.new(:provider => 'AWS', :aws_access_key_id => ACCESS_KEY_ID, :aws_secret_access_key => SECRET_ACCESS_KEY)
|
|
107
|
+
# storage operations go here
|
|
103
108
|
|
|
104
109
|
geemus says: "That should give you everything you need to get started, but let me know if there is anything I can do to help!"
|
|
105
110
|
|
|
106
|
-
|
|
111
|
+
## Contributing
|
|
107
112
|
|
|
108
113
|
* Find something you would like to work on. For suggestions look for the `easy`, `medium` and `hard` tags in the {issues}[http://github.com/fog/fog/issues]
|
|
109
114
|
* Fork the project and do your work in a topic branch.
|
|
@@ -111,21 +116,21 @@ geemus says: "That should give you everything you need to get started, but let m
|
|
|
111
116
|
* Rebase your branch against fog/fog to make sure everything is up to date.
|
|
112
117
|
* Commit your changes and send a pull request.
|
|
113
118
|
|
|
114
|
-
|
|
119
|
+
## Additional Resources
|
|
115
120
|
|
|
116
|
-
|
|
121
|
+
[fog.io](http://fog.io)
|
|
117
122
|
|
|
118
|
-
|
|
123
|
+
## Sponsorship
|
|
119
124
|
|
|
120
|
-
http://www.engineyard.com/images/logo.png
|
|
125
|
+

|
|
121
126
|
|
|
122
|
-
All new work on fog is sponsored by
|
|
127
|
+
All new work on fog is sponsored by [Engine Yard](http://engineyard.com)
|
|
123
128
|
|
|
124
|
-
|
|
129
|
+
## Copyright
|
|
125
130
|
|
|
126
131
|
(The MIT License)
|
|
127
132
|
|
|
128
|
-
Copyright (c) 2010
|
|
133
|
+
Copyright (c) 2010 [geemus (Wesley Beary)](http://github.com/geemus)
|
|
129
134
|
|
|
130
135
|
Permission is hereby granted, free of charge, to any person obtaining
|
|
131
136
|
a copy of this software and associated documentation files (the
|
data/Rakefile
CHANGED
|
@@ -60,8 +60,6 @@ task :test do
|
|
|
60
60
|
end
|
|
61
61
|
|
|
62
62
|
def tests(mocked)
|
|
63
|
-
Formatador.display_line
|
|
64
|
-
sh("export FOG_MOCK=#{mocked} && bundle exec spec spec")
|
|
65
63
|
Formatador.display_line
|
|
66
64
|
start = Time.now.to_i
|
|
67
65
|
threads = []
|
|
@@ -189,10 +187,10 @@ task :changelog do
|
|
|
189
187
|
changelog << ''
|
|
190
188
|
|
|
191
189
|
require 'multi_json'
|
|
192
|
-
github_repo_data = Fog::JSON.decode(Excon.get('
|
|
193
|
-
data = github_repo_data
|
|
194
|
-
github_collaborator_data = Fog::JSON.decode(Excon.get('
|
|
195
|
-
data['collaborators'] = github_collaborator_data
|
|
190
|
+
github_repo_data = Fog::JSON.decode(Excon.get('https://api.github.com/repos/fog/fog').body)
|
|
191
|
+
data = github_repo_data.reject {|key, value| !['forks', 'open_issues', 'watchers'].include?(key)}
|
|
192
|
+
github_collaborator_data = Fog::JSON.decode(Excon.get('https://api.github.com/repos/fog/fog/collaborators').body)
|
|
193
|
+
data['collaborators'] = github_collaborator_data.length
|
|
196
194
|
rubygems_data = Fog::JSON.decode(Excon.get('https://rubygems.org/api/v1/gems/fog.json').body)
|
|
197
195
|
data['downloads'] = rubygems_data['downloads']
|
|
198
196
|
stats = []
|
data/changelog.txt
CHANGED
|
@@ -1,3 +1,494 @@
|
|
|
1
|
+
1.4.0 06/24/2012 24e0be755e251159f07d5d82beb1e8ef57c962d9
|
|
2
|
+
=========================================================
|
|
3
|
+
|
|
4
|
+
Stats! { 'collaborators' => 35, 'downloads' => 800348, 'forks' => 477, 'open_issues' => 43, 'watchers' => 2080 }
|
|
5
|
+
|
|
6
|
+
MVP! Nelvin Driz
|
|
7
|
+
|
|
8
|
+
[AWS]
|
|
9
|
+
make beanstalk, cdn, cloudformation, cloudwatch, elasticache, elb, storage, rds, ses, sns, route53 temporary credential friendly. thanks Frederick Cheung
|
|
10
|
+
|
|
11
|
+
[AWS|Auto Scale]
|
|
12
|
+
Add support for put_notification_configuration and change AWS API to use 01-01-2011 Spec. thanks Zuhaib M Siddique
|
|
13
|
+
|
|
14
|
+
[AWS|Autoscale]
|
|
15
|
+
Fixing Parameters notes for autoscale create launch configuration for InstanceMonitoring. Credit goes to boto, https://github.com/boto/boto/blob/develop/boto/ec2/autoscale/__init__.py , for having it correct. thanks Zuhaib M Siddique
|
|
16
|
+
Fixing Parameters notes for autoscale create launch configuration for InstanceMonitoring. Credit goes to boto, https://github.com/boto/boto/blob/develop/boto/ec2/autoscale/__init__.py , for having it correct. thanks Zuhaib M Siddique
|
|
17
|
+
|
|
18
|
+
[Openstack|Compute]
|
|
19
|
+
Usage Requests. thanks Hunter Nield
|
|
20
|
+
Migration and Console output. thanks Hunter Nield
|
|
21
|
+
server methods for console and migration. thanks Hunter Nield
|
|
22
|
+
Minor address cleanup. thanks Hunter Nield
|
|
23
|
+
|
|
24
|
+
[aws|address]
|
|
25
|
+
fixes release_address for VPC EIPs * amazon requires allocation_id only for vpc eips, and public_ip otherwise. thanks Albert Choi
|
|
26
|
+
|
|
27
|
+
[aws|beanstalk]
|
|
28
|
+
Added missing :beanstalk case. thanks George Scott
|
|
29
|
+
Added #load_balancer method. thanks George Scott
|
|
30
|
+
Serialize keys for SourceConfiguration. thanks George Scott
|
|
31
|
+
Added modify method for template. thanks George Scott
|
|
32
|
+
Support different AWS regions. thanks George Scott
|
|
33
|
+
Added swap_cnames method. thanks George Scott
|
|
34
|
+
|
|
35
|
+
[aws|compute]
|
|
36
|
+
add networkInterfaceSet context to EC2 instance parser. thanks Benton Roberts
|
|
37
|
+
|
|
38
|
+
[aws|dns]
|
|
39
|
+
Allow both Ruby and AWS style names for alias. thanks George Scott
|
|
40
|
+
Support for latency/weighted resource sets. thanks George Scott
|
|
41
|
+
Fixed #all iteration. thanks George Scott
|
|
42
|
+
Reimplemented #get. thanks George Scott
|
|
43
|
+
Added #all! method to Records. thanks George Scott
|
|
44
|
+
|
|
45
|
+
[aws|dynamodb]
|
|
46
|
+
correct batch_put_item to batch_write_item for consistency with API. thanks geemus
|
|
47
|
+
|
|
48
|
+
[aws|elb]
|
|
49
|
+
Failing test for load_balancers marker support. thanks Dan Peterson
|
|
50
|
+
Deprecate describe_load_balancers with just an array of names. thanks Dan Peterson
|
|
51
|
+
Marker support for describe_load_balancers. thanks Dan Peterson
|
|
52
|
+
Fix use of describe_load_balancers in tests. thanks Dan Peterson
|
|
53
|
+
load_balancers.get(nil) returns nil instead of the first of all load balancers. thanks Dan Peterson
|
|
54
|
+
|
|
55
|
+
[aws|iam]
|
|
56
|
+
Add test for AWS[:iam].get_user. thanks Benton Roberts
|
|
57
|
+
add test for AWS[:iam].get_user_policy. thanks Benton Roberts
|
|
58
|
+
FIX - make arguments AWS::IAM.get_user conform to expected standard for this module. thanks Benton Roberts
|
|
59
|
+
Fix Users model to comply with updated request parameter set. thanks Benton Roberts
|
|
60
|
+
mark role tests as pending in mock mode. thanks geemus
|
|
61
|
+
|
|
62
|
+
[aws|storage]
|
|
63
|
+
fix flipped logic on valid acl check closes #889. thanks geemus
|
|
64
|
+
fix method signature for setup_credentials. thanks geemus
|
|
65
|
+
|
|
66
|
+
[aws|storage|]
|
|
67
|
+
Make get_object_http_url use correct S3 host in returned URL. thanks Michiel Sikkes
|
|
68
|
+
Make get_object_http_url use correct S3 host in returned URL. thanks Michiel Sikkes
|
|
69
|
+
|
|
70
|
+
[brightbox|compute]
|
|
71
|
+
Updated image reference where unfortunately hardcoded. thanks Paul Thornthwaite
|
|
72
|
+
Remove resize request since not available. thanks Paul Thornthwaite
|
|
73
|
+
Update format tests for new attributes on Cloud IPs. thanks Paul Thornthwaite
|
|
74
|
+
Update format tests for "fqdn" attribute. thanks Paul Thornthwaite
|
|
75
|
+
Update format tests for updates to Image. thanks Paul Thornthwaite
|
|
76
|
+
|
|
77
|
+
[cloudstack]
|
|
78
|
+
prevent mock test failure when cloudstack credentials are not defined. thanks geemus
|
|
79
|
+
add to list of providers so it can be skipped when lacking credentials. thanks geemus
|
|
80
|
+
|
|
81
|
+
[cloudstack|compute]
|
|
82
|
+
zones,flavors,images,address. thanks Jason Hansen & Josh Lane
|
|
83
|
+
support async jobs. thanks Jason Hansen & Josh Lane
|
|
84
|
+
server abstraction and mocks. thanks Josh Lane & Jason Hansen
|
|
85
|
+
volumes support. thanks Josh Lane & Jason Hansen
|
|
86
|
+
|
|
87
|
+
[compute]
|
|
88
|
+
volume tests. thanks Josh Lane & Jason Hansen
|
|
89
|
+
|
|
90
|
+
[compute|aws]
|
|
91
|
+
Apply tags to volume at creation. thanks Dan Carley
|
|
92
|
+
Respect extra register_image options when mocking. thanks Dan Peterson
|
|
93
|
+
extend polling interval for spot_requests bootstrap. thanks geemus
|
|
94
|
+
cleanup internet_gateway mocks and remove debug output. thanks geemus
|
|
95
|
+
|
|
96
|
+
[compute|openstack]
|
|
97
|
+
update server attributes for shared compute tests. thanks geemus
|
|
98
|
+
cleanup for list security groups request/mock. thanks geemus
|
|
99
|
+
|
|
100
|
+
[docs]
|
|
101
|
+
fix link to EngineYard logo (broken in /storage, /compute, etc.). thanks Len
|
|
102
|
+
|
|
103
|
+
[ecloud|compute]
|
|
104
|
+
Adding multiple disks at once was not working properly. thanks Eugene Howe
|
|
105
|
+
fix optional params for validate_data closes #969. thanks geemus
|
|
106
|
+
|
|
107
|
+
[glesys|compute]
|
|
108
|
+
update server/status format to include cpu hash and warnings. thanks Anton Lindström
|
|
109
|
+
add reboot and compute test params. thanks Anton Lindström
|
|
110
|
+
|
|
111
|
+
[hp|compute]
|
|
112
|
+
fix tests to properly set default base image. thanks geemus
|
|
113
|
+
|
|
114
|
+
[ibm|compute]
|
|
115
|
+
Typo in parameter name, should be storageID. thanks Decklin Foster
|
|
116
|
+
|
|
117
|
+
[joyent|compute]
|
|
118
|
+
Fixes issue where params are not properly passed to #keys_create from #create_key. thanks Kevin Chan
|
|
119
|
+
Added #list_datacenters. thanks Kevin Chan
|
|
120
|
+
Support for DSA keys for auth. thanks Kevin Chan
|
|
121
|
+
|
|
122
|
+
[libVirt]
|
|
123
|
+
added tests. thanks Amos Benari
|
|
124
|
+
|
|
125
|
+
[libvirt]
|
|
126
|
+
refactored libvirt entire code. thanks Ohad Levy
|
|
127
|
+
expose node hostname. thanks Ohad Levy
|
|
128
|
+
added display attributes and allowed to change display of a running server. thanks Ohad Levy
|
|
129
|
+
volumes dev names must be uniq. thanks Ohad Levy
|
|
130
|
+
makes libvirt code more debian friendly. thanks Ohad Levy
|
|
131
|
+
- ensure no nil pools are returned. thanks Ohad Levy
|
|
132
|
+
Fix SSH keyfile being pulled from wrong param. thanks brookemckim
|
|
133
|
+
skip tests if ruby-libvirt is unavailable. thanks geemus
|
|
134
|
+
correct error message when skipping tests. thanks geemus
|
|
135
|
+
|
|
136
|
+
[misc]
|
|
137
|
+
Add support for internal ELBs in VPC. thanks Aaron Bell
|
|
138
|
+
cleaning up model. thanks Aaron Bell
|
|
139
|
+
fix parser to show scheme, add test for internal ELB creation. thanks Aaron Bell
|
|
140
|
+
fixing test. thanks Aaron Bell
|
|
141
|
+
add scheme to elb helper. thanks Aaron Bell
|
|
142
|
+
adds batch_put_item functionality to AWS dynamodb + test. thanks Alex Gaudio
|
|
143
|
+
Fixed non-persistent connections handling to AWS. thanks Alexander Kolesen
|
|
144
|
+
Fixed handling options[:persistent] in some cases. thanks Alexander Kolesen
|
|
145
|
+
added mock implementation. thanks Amos Benari
|
|
146
|
+
removed unneeded dependency,. thanks Amos Benari
|
|
147
|
+
new rbovirt version. thanks Amos Benari
|
|
148
|
+
use constant for GB. thanks Amos Benari
|
|
149
|
+
Adding network interface information and security group ids. thanks Artem Veremey
|
|
150
|
+
Adding network interface information and security group ids to the model. thanks Artem Veremey
|
|
151
|
+
Store the region for S3. thanks Ben Butler-Cole
|
|
152
|
+
add create_hosted_zone and get_hosted_zone request mocks. thanks Bulat Shakirzyanov
|
|
153
|
+
add list_hosted_zones request mock. thanks Bulat Shakirzyanov
|
|
154
|
+
add change_resource_record_set request mock. thanks Bulat Shakirzyanov
|
|
155
|
+
fix response codes and formatting. thanks Bulat Shakirzyanov
|
|
156
|
+
fix typos. thanks Bulat Shakirzyanov
|
|
157
|
+
fix identifiers. thanks Bulat Shakirzyanov
|
|
158
|
+
use hard-coded sample value to eliminate randomness. thanks Bulat Shakirzyanov
|
|
159
|
+
fix typos. thanks Bulat Shakirzyanov
|
|
160
|
+
fix zone id in create_hosted_zone response. thanks Bulat Shakirzyanov
|
|
161
|
+
fix attribute name. thanks Bulat Shakirzyanov
|
|
162
|
+
add authorize and revoke port range for security group. thanks Bulat Shakirzyanov
|
|
163
|
+
Fix typo. thanks Christopher Meiklejohn
|
|
164
|
+
Specify image_ref rather than trying to instantiate object. thanks Christopher Meiklejohn
|
|
165
|
+
Fog::Compute::AWS::Address#server -> assigned Server. thanks Dr Nic Williams
|
|
166
|
+
fix auto-discovery for HP Cloud by fog bin. thanks Dr Nic Williams
|
|
167
|
+
whitespace. :bomb: :v:. thanks Dylan Egan
|
|
168
|
+
Default to false for persistent connections. You can't pass in false. This now behaves like other connections in fog. :v:. thanks Dylan Egan
|
|
169
|
+
Idempotent Dynect calls. :v:. thanks Dylan Egan
|
|
170
|
+
Fix up describe_volume_status to work with THE ARRAYZ. :v:. thanks Dylan Egan
|
|
171
|
+
Fog::AWS.indexed_reuqest_param. thanks Edward Muller
|
|
172
|
+
include the nextToken in the body. thanks Edward Muller
|
|
173
|
+
complete Request param support. thanks Edward Muller
|
|
174
|
+
refactor to use Fog::AWS.indexed_request_param. thanks Edward Muller
|
|
175
|
+
the old parser was not working properly. thanks Edward Muller
|
|
176
|
+
All directories.create on us-east-1. thanks Edward Muller
|
|
177
|
+
us-west-2 default ami. thanks Edward Muller
|
|
178
|
+
some small fixups. thanks Edward Muller
|
|
179
|
+
make the aws region accessible. thanks Edward Muller
|
|
180
|
+
Fog::Compute::Server#private_key=. thanks Edward Muller
|
|
181
|
+
Fog::Compute::Server#sshable?. thanks Edward Muller
|
|
182
|
+
ssh/run optionally takes a block. thanks Edward Muller
|
|
183
|
+
Cleanup after talking to @dpiddy. thanks Edward Muller
|
|
184
|
+
return '' not nil. thanks Edward Muller
|
|
185
|
+
Revert "Add debug option to Fog::Compute::Server#ssh". thanks Edward Muller
|
|
186
|
+
Mock stop_instances. thanks Edward Muller
|
|
187
|
+
Mock aws compute start_instances. thanks Edward Muller
|
|
188
|
+
Don't duplicate effort. thanks Edward Muller
|
|
189
|
+
Add ssh_port to Fog::Compute::Server. thanks Edward Muller
|
|
190
|
+
Generalize NoLeak Inspector for Fog::Service. thanks Edward Muller
|
|
191
|
+
Don't leak HP cdn & storage. thanks Edward Muller
|
|
192
|
+
Make aws compute server retry SSH on EHOSTUNREACH. thanks Eric Boehs
|
|
193
|
+
Copied auth token reauthentication from rackspace|compute. thanks Eric Hankins
|
|
194
|
+
https://github.com/fog/fog/issues/810 - Add ENI support by maf23. thanks Eric Stonfer
|
|
195
|
+
minor fix to ENI tests. thanks Eric Stonfer
|
|
196
|
+
VPC ELBs, Tests, and the introduction of the InternetGateway object. thanks Eric Stonfer
|
|
197
|
+
clean up conflict. thanks Eric Stonfer
|
|
198
|
+
this adds the dhcp_options object and associated operations. thanks Eric Stonfer
|
|
199
|
+
merge upstream. thanks Eric Stonfer
|
|
200
|
+
forgot to commit dhcp_options tests. thanks Eric Stonfer
|
|
201
|
+
fix describe_volume_status parser. thanks Eric Stonfer
|
|
202
|
+
add some more explanation to the server creation process. thanks Eric Stonfer
|
|
203
|
+
testing. thanks Eugene Howe
|
|
204
|
+
added requests and models for compute_pools. thanks Eugene Howe
|
|
205
|
+
changed to urn:tmrk:eCloudExtensions-2.8. thanks Eugene Howe
|
|
206
|
+
require compute pool to be specified on vapp creation. thanks Eugene Howe
|
|
207
|
+
set default value for computePool on vapp creation. thanks Eugene Howe
|
|
208
|
+
Made computePool an optional parameter, specs now pass without issue. thanks Eugene Howe
|
|
209
|
+
Removed non-functioning Mock classes. thanks Eugene Howe
|
|
210
|
+
fixed method name. thanks Eugene Howe
|
|
211
|
+
start an instance with an IAM profile and access the credentials. thanks Frederick Cheung
|
|
212
|
+
add new iam requests to support iam roles. thanks Frederick Cheung
|
|
213
|
+
request tests for the new iam role requests. thanks Frederick Cheung
|
|
214
|
+
test credential fetching. thanks Frederick Cheung
|
|
215
|
+
use excon rather than net/http. thanks Frederick Cheung
|
|
216
|
+
remove stray multijson require. thanks Frederick Cheung
|
|
217
|
+
fix errant use of net/http. thanks Frederick Cheung
|
|
218
|
+
Add debug option to Fog::Compute::Server#ssh. thanks Gabriel Horner
|
|
219
|
+
Correct docs for change_resource_record_sets. thanks Gavin Sandie
|
|
220
|
+
add cc2.8xlarge AWS flavor. thanks Ian Downes
|
|
221
|
+
Fix user-data attribute name. thanks Igor Bolotin
|
|
222
|
+
Refactor AWS Directory. thanks James Herdman
|
|
223
|
+
Remove unused variable. thanks James Herdman
|
|
224
|
+
Fix indentation warning. thanks James Herdman
|
|
225
|
+
Remove unnecessary full path usage with require. thanks James Herdman
|
|
226
|
+
Remove unused variable. thanks James Herdman
|
|
227
|
+
Remove unused accessor. thanks James Herdman
|
|
228
|
+
Silence warning regarding splat operator. thanks James Herdman
|
|
229
|
+
Remove unused variable. thanks James Herdman
|
|
230
|
+
Remove unused variable. thanks James Herdman
|
|
231
|
+
Silence warnings about potentially private attribute. thanks James Herdman
|
|
232
|
+
Remove unused variable. thanks James Herdman
|
|
233
|
+
Silence warning about potentially private attribute. thanks James Herdman
|
|
234
|
+
Remove unused variable. thanks James Herdman
|
|
235
|
+
Remove unused variable. thanks James Herdman
|
|
236
|
+
Remove unused variable. thanks James Herdman
|
|
237
|
+
Remove unused variable. thanks James Herdman
|
|
238
|
+
Remove unused variable. thanks James Herdman
|
|
239
|
+
Remove unused variable. thanks James Herdman
|
|
240
|
+
Remove unused variable. thanks James Herdman
|
|
241
|
+
Remove unused variable. thanks James Herdman
|
|
242
|
+
Remove unused variable. thanks James Herdman
|
|
243
|
+
Remove unused variable. thanks James Herdman
|
|
244
|
+
Remove unused variable. thanks James Herdman
|
|
245
|
+
Remove unused variable. thanks James Herdman
|
|
246
|
+
Remove unused variable. thanks James Herdman
|
|
247
|
+
Remove duplicate require. thanks James Herdman
|
|
248
|
+
Remove unused variable. thanks James Herdman
|
|
249
|
+
Remove unused variable. thanks James Herdman
|
|
250
|
+
Remove unused variable. thanks James Herdman
|
|
251
|
+
Remove absolute path when requiring. thanks James Herdman
|
|
252
|
+
Remove unused variable. thanks James Herdman
|
|
253
|
+
Remove duplicate Mock class definition. thanks James Herdman
|
|
254
|
+
implement Fog::SSH::Mock#run. thanks Jason Hansen & Josh Lane
|
|
255
|
+
add a method to IPAddr instead of breaking a useful one. thanks Jesse Newland
|
|
256
|
+
Adjusts regex to fix issues with S3 paths that include periods. thanks John Feminella
|
|
257
|
+
fix response-cache-control type for AWS signed urls. thanks John Nishinaga
|
|
258
|
+
remove FOG_PROVIDER env override. thanks Josh Lane
|
|
259
|
+
more robust resource pool discovery. thanks Justin Clayton
|
|
260
|
+
Removed duplicate property :ips on server. thanks Kevin Chan
|
|
261
|
+
Fixes invalid call to #resize, should be #resize_machine. thanks Kevin Chan
|
|
262
|
+
Fixed #875: Loosen multi_json version. thanks Kevin Menard
|
|
263
|
+
Bad string replace. thanks Kevin Menard
|
|
264
|
+
Actually call the new MultiJSON 1.3.2 API methods. thanks Kevin Menard
|
|
265
|
+
Rename dd_belatedpng.js to dd_belatedpng.min.js. thanks Laurent Bigonville
|
|
266
|
+
Add non-minified javascript files used in docs/ (#939). thanks Laurent Bigonville
|
|
267
|
+
Catch Errno::ETIMEDOUT timeout error when connecting to a freshly created EC2 machine. thanks Marc Seeger
|
|
268
|
+
fix get, all, and all!. thanks Michael Keirnan
|
|
269
|
+
Make `.irbrc` service agnostic. thanks Nelvin Driz
|
|
270
|
+
Nested Credentials with Array gets flattened; restrict flatten to 1L. thanks Nelvin Driz
|
|
271
|
+
Allow for stringified options keys. thanks Nikita Pomyashchiy
|
|
272
|
+
add supports for defining/extracting libvit boot order. thanks Ohad Levy
|
|
273
|
+
libvirt volume sizes are in GB, ensuring both requests and setters are in GB. thanks Ohad Levy
|
|
274
|
+
adds deprecation on vnc_port. thanks Ohad Levy
|
|
275
|
+
monitoring-state is enabled or disabled, if enabled returns true. thanks Ozgur Akan
|
|
276
|
+
reserved instances hourly cost was returning empty. thanks Ozgur Akan
|
|
277
|
+
Modify url regexp to handle periods in bucket names. thanks Parker Selbert
|
|
278
|
+
Tag generated model tests with string not symbol. thanks Paul Thornthwaite
|
|
279
|
+
added missing server attributes for openstack compute model. thanks Pedro Perez
|
|
280
|
+
openstack: extended list_servers and list_server_detail to allow all_tenants param. thanks Pedro Perez
|
|
281
|
+
depend on excon >= 0.13.0. thanks Prashant Nadarajan
|
|
282
|
+
use pessimistic gem version constraint for excon (~>0.14.0). thanks Prashant Nadarajan
|
|
283
|
+
aim users model and nested model policy. thanks Rodrigo Estebanez
|
|
284
|
+
IAM access_key model implemented. thanks Rodrigo Estebanez
|
|
285
|
+
get_user Mock implemented. Basic shindo user_tests added. thanks Rodrigo Estebanez
|
|
286
|
+
Refactor aim modeling for nested models (policies and access keys). thanks Rodrigo Estebanez
|
|
287
|
+
shindo tests for IAM models: users, policies and access_keys. Mock implementation for get_user_policy. thanks Rodrigo Estebanez
|
|
288
|
+
@users -> @user. Clean up the @user after the policies and access_keys test. thanks Rodrigo Estebanez
|
|
289
|
+
Fix encoding issue: https://github.com/fog/fog/pull/189. thanks Rodrigo Estebanez
|
|
290
|
+
aim users model and nested model policy. thanks Rodrigo Estebanez
|
|
291
|
+
IAM access_key model implemented. thanks Rodrigo Estebanez
|
|
292
|
+
get_user Mock implemented. Basic shindo user_tests added. thanks Rodrigo Estebanez
|
|
293
|
+
Refactor aim modeling for nested models (policies and access keys). thanks Rodrigo Estebanez
|
|
294
|
+
shindo tests for IAM models: users, policies and access_keys. Mock implementation for get_user_policy. thanks Rodrigo Estebanez
|
|
295
|
+
@users -> @user. Clean up the @user after the policies and access_keys test. thanks Rodrigo Estebanez
|
|
296
|
+
Fix encoding issue: https://github.com/fog/fog/pull/189. thanks Rodrigo Estebanez
|
|
297
|
+
For some reason, there was a missing comma in the mock class. thanks Rodrigo Estebanez
|
|
298
|
+
Fix get_user_policy. The actual AWS data has to be in a ['Policy'] hash section. thanks Rodrigo Estebanez
|
|
299
|
+
add IAM mocking for get_group method. thanks Rodrigo Estebanez
|
|
300
|
+
add IAM mocking for get_group method. thanks Rodrigo Estebanez
|
|
301
|
+
Add new HP providers for Object Storage, Compute and CDN services. thanks Rupak Ganguly
|
|
302
|
+
Be sure to reload when checking for a started spot instance, also add private/public key options into spot_requests, then set those on the server when loaded. thanks Ryan Stout
|
|
303
|
+
Use spot request's public_key when setting up keypair. thanks Ryan Stout
|
|
304
|
+
ensure apiKey and command are included in parameter sorting. thanks Sean Caffery
|
|
305
|
+
* [xenserver|compute] initial release. thanks Sergio Rubio
|
|
306
|
+
* Added VIF model and collection tests * added network and server wrappers to VIF model. thanks Sergio Rubio
|
|
307
|
+
* Added VIF collection Shindo tests. thanks Sergio Rubio
|
|
308
|
+
* Added PIFs collection Shindo tests. thanks Sergio Rubio
|
|
309
|
+
* Added VBD Shindo tests * added server wrapper to VBD model. thanks Sergio Rubio
|
|
310
|
+
* Added Network collection Shindo tests * Fixed PBD and PIF tests descriptions. thanks Sergio Rubio
|
|
311
|
+
* Added Pool and StorageRepository models and collections Shindo tests * Added missing attributes to Pool and StorageRepository models. thanks Sergio Rubio
|
|
312
|
+
* Define missing InvalidLogin exception * Add login tests. thanks Sergio Rubio
|
|
313
|
+
* Added custom_templates and templates methods to Host model. thanks Sergio Rubio
|
|
314
|
+
* Added more tests and extended existing ones * Added missing exceptions NotFound and RequestFailed * connection.request now raises exception if request failed * refactored most get_* request into get_record and get_records * Compute.default_template more robust * Base parser now replaces OpaqueRef:NULL with nil * create_server request fixes. thanks Sergio Rubio
|
|
315
|
+
* Added some more tests * Lots of fixes and some refactoring. thanks Sergio Rubio
|
|
316
|
+
* Fix Servers.templates method. thanks Sergio Rubio
|
|
317
|
+
* Added clone_server request. thanks Sergio Rubio
|
|
318
|
+
* Added create_vif tests * Server.save now properly creates additional VIFs when required * Added create_vif_custome request to create VIFs with custom params. thanks Sergio Rubio
|
|
319
|
+
* Added Vif.destroy and destroy_vif request * add :auto_start parameter to Server.save. thanks Sergio Rubio
|
|
320
|
+
* Added create_vdi request * Added missing VDI methods and attributes. thanks Sergio Rubio
|
|
321
|
+
* Added missing VBD operations. thanks Sergio Rubio
|
|
322
|
+
* Added set_attribute request and tests * Added missing PV_bootloaer attribute to Server * Added Server.set_attribute method and tests. thanks Sergio Rubio
|
|
323
|
+
* Added create_vbd and provision_server requests * Do not provision server when :auto_start is false * Add Server.provisio method * Add VBD.save method. thanks Sergio Rubio
|
|
324
|
+
* renamed some tests * Added missing VDI attributes and methods * added create/destroy request tests * Added valid_ref? test helper * Fixes in get_record_tests. thanks Sergio Rubio
|
|
325
|
+
* Added missing attributes to Server model * Added create_server_raw request and tests * Added VIF.save action * more tests. thanks Sergio Rubio
|
|
326
|
+
* Fix: do not try to retrive guest_metrics when guest_metrics ref is nil * ruby 1.8.7 compatibility fixes * Sane defaults for create_server_raw request. thanks Sergio Rubio
|
|
327
|
+
* Added new scan_sr request * Added StorageRepository.scan method * set_attribute request is now generic and can be used by any model * Added VDI.set_attribute method. thanks Sergio Rubio
|
|
328
|
+
* [xenserver|compute] set_attribute request now accepts var args - added new tests. thanks Sergio Rubio
|
|
329
|
+
updating gitignore for eclipse settings. thanks Spencer Dillard
|
|
330
|
+
first pass at updates for VPC. thanks Spencer Dillard
|
|
331
|
+
updating for SSL ciphers and protocols. thanks Spencer Dillard
|
|
332
|
+
updating to master. thanks Spencer Dillard
|
|
333
|
+
regularize examples showing use of AWS access keys. thanks Stephen Bannasch
|
|
334
|
+
Use MultiJSON #dump and #load rather than #encode and #decode. thanks Steve Smith
|
|
335
|
+
Add support for ports in AWS storage URLs. thanks Tim Carey-Smith
|
|
336
|
+
Mock implementations for SCP upload and download. thanks Tom Mornini
|
|
337
|
+
add Linode Mock classes to request primitives. thanks Wes Morgan
|
|
338
|
+
make Mock#linode_disk_delete return the response object. thanks Wes Morgan
|
|
339
|
+
make Mock#linode_disk_list return the response object. thanks Wes Morgan
|
|
340
|
+
use kernel_id for mocked kernel, not stackscript_id. thanks Wes Morgan
|
|
341
|
+
Adds new method delete_notification_configuration which allows you notifications created by put_notification_configuration. thanks Zuhaib Siddique
|
|
342
|
+
Fix for stacks that have capabilities. Without this the parser misinterprets stacks with capabilities set. thanks atlantacs
|
|
343
|
+
volume(s) are not considered to be universally available. thanks geemus
|
|
344
|
+
catch passing an invalid openstack_tenant. thanks mattray
|
|
345
|
+
addresses['internet'] (like on TryStack.org) supported and public and private_ip_address now work. thanks mattray
|
|
346
|
+
don't assume 'internet' for addresses. thanks mattray
|
|
347
|
+
Added offering type for reserved instances response. thanks questionnet
|
|
348
|
+
|
|
349
|
+
[oVirt]
|
|
350
|
+
added volumes to server and template. thanks Amos Benari
|
|
351
|
+
added volume size in GB accessor. thanks Amos Benari
|
|
352
|
+
fixed create_vm and get_virtual_machine requests mock implementation. thanks Amos Benari
|
|
353
|
+
|
|
354
|
+
[openstack]
|
|
355
|
+
Fix create snapshot. thanks Ferran Rodenas
|
|
356
|
+
Match both OS API 1.1 and v2 since they are the same. thanks Josh Kearney
|
|
357
|
+
Update Reinitialization Process of Existing Auth Token. thanks Nelvin Driz
|
|
358
|
+
Add Export of Credentials. thanks Nelvin Driz
|
|
359
|
+
Wrong instance variables accessed for #credentials. thanks Nelvin Driz
|
|
360
|
+
Update Authentication through X-Auth-Token. thanks Nelvin Driz
|
|
361
|
+
Update mocks for login and identity request #get_user_by_id. thanks Nelvin Driz
|
|
362
|
+
Fix authentication without specifying tenant name. thanks Nelvin Driz
|
|
363
|
+
Make current_user and current_token accessible to services. thanks Nelvin Driz
|
|
364
|
+
Fix Authentication as well as Fog::JSON call bugs. thanks Nelvin Driz
|
|
365
|
+
Raise error when no tenant is found for the user logging in. thanks Nelvin Driz
|
|
366
|
+
Ensure password sent is of type string. thanks Nelvin Driz
|
|
367
|
+
Modify authentication process. thanks Philip Mark Deazeta
|
|
368
|
+
|
|
369
|
+
[openstack|compute]
|
|
370
|
+
Add requests and tests for security groups. thanks Alfonso Juan Dillera
|
|
371
|
+
Add requests, models and tests for keypairs. thanks Alfonso Juan Dillera
|
|
372
|
+
Add requests, models and tests for address management. thanks Alfonso Juan Dillera
|
|
373
|
+
Add requests, models and tests for address management. thanks Alfonso Juan Dillera
|
|
374
|
+
Add flavor CRUD. thanks Alfonso Juan Dillera
|
|
375
|
+
Add auth_token. thanks Alfonso Juan Dillera
|
|
376
|
+
Added request for boot_from_snapshot. thanks Alfonso Juan Dillera
|
|
377
|
+
Added id attribute to the keypair. thanks Alfonso Juan Dillera
|
|
378
|
+
Update fetching of addresses and added fetching for address pools. thanks Alvin Garcia
|
|
379
|
+
Fixed creating image of a server. thanks Alvin Garcia
|
|
380
|
+
Added requests for quota. thanks Alvin Garcia
|
|
381
|
+
Initial extension support for addresses. thanks Hunter Nield
|
|
382
|
+
Initial extension support for key pairs. thanks Hunter Nield
|
|
383
|
+
Initial extension support for security groups. thanks Hunter Nield
|
|
384
|
+
Added Address models. thanks Hunter Nield
|
|
385
|
+
Added key pair models. thanks Hunter Nield
|
|
386
|
+
added security group models. thanks Hunter Nield
|
|
387
|
+
Updates to server model. thanks Hunter Nield
|
|
388
|
+
Added list/get support for /os-hosts. thanks Hunter Nield
|
|
389
|
+
Add Tenants and Fix Authentication Implementation. thanks Nelvin Driz
|
|
390
|
+
Fix Requests on Compute. thanks Nelvin Driz
|
|
391
|
+
General Cleanup and Update. thanks Nelvin Driz
|
|
392
|
+
Fix Compute Identity Endpoint Credential Export. thanks Nelvin Driz
|
|
393
|
+
Add Identity Enpoint to Recognized Init Parameters. thanks Nelvin Driz
|
|
394
|
+
Update requests and response of server actions. thanks Nelvin Driz
|
|
395
|
+
Fix Bug on Key Pair Mock. thanks Nelvin Driz
|
|
396
|
+
Update Mocks for Volumes. thanks Nelvin Driz
|
|
397
|
+
Update Mocks for Security Groups and Volumes. thanks Nelvin Driz
|
|
398
|
+
Add Instance Name to Fog. thanks Nelvin Driz
|
|
399
|
+
Update Image Mocks. thanks Nelvin Driz
|
|
400
|
+
Update List Security Groups to list those assigned to a server. thanks Nelvin Driz
|
|
401
|
+
Assert Timezone to UTC and fix format for OS on `get_usage`. thanks Nelvin Driz
|
|
402
|
+
Added get_usage function, mocks, tests. thanks Philip Mark Deazeta
|
|
403
|
+
Added get server volumes request. thanks Philip Mark M. Deazeta
|
|
404
|
+
Added key_pair and security_groups options int create server requrest. thanks Philip Mark M. Deazeta
|
|
405
|
+
added key_name and security_groups in boot from snapshot request. thanks Philip Mark M. Deazeta
|
|
406
|
+
authenticate_v2 fixes. thanks Sergio Rubio
|
|
407
|
+
|
|
408
|
+
[openstack|identity]
|
|
409
|
+
Added current user id. thanks Alfonso Juan Dillera
|
|
410
|
+
Updated current user id for identity. thanks Alfonso Juan Dillera
|
|
411
|
+
Keystone Roles. thanks Alvin Garcia
|
|
412
|
+
Keystone Roles and Users. thanks Alvin Garcia
|
|
413
|
+
Update users collections and model. thanks Alvin Garcia
|
|
414
|
+
Update users model initialization and save. thanks Alvin Garcia
|
|
415
|
+
Fixed users fetching. thanks Alvin Garcia
|
|
416
|
+
Rough implementation of the Keystone API (untested). thanks Hunter Nield
|
|
417
|
+
Correction in Roles#all method. thanks Mark Maglana
|
|
418
|
+
Express the "add user role" intent more clearly. thanks Mark Maglana
|
|
419
|
+
Fix Authentication Implementation. thanks Nelvin Driz
|
|
420
|
+
Update Tenants. thanks Nelvin Driz
|
|
421
|
+
Update Tenants (Complete CRUD). thanks Nelvin Driz
|
|
422
|
+
Fix Identity Authentication Conditions on Endpoint Detection. thanks Nelvin Driz
|
|
423
|
+
Add User List and Delete User Mocks. thanks Nelvin Driz
|
|
424
|
+
Update Fog to Accomodate Tenant Deletion Workaround Workflow. thanks Nelvin Driz
|
|
425
|
+
Fix status code expectation. thanks Nelvin Driz
|
|
426
|
+
Added function to add user to a tenant. thanks Philip Mark Deazeta
|
|
427
|
+
Added function to add user to a tenant. thanks Philip Mark Deazeta
|
|
428
|
+
fixes for mocks. thanks geemus
|
|
429
|
+
|
|
430
|
+
[openstack|image]
|
|
431
|
+
Added set_tenant. thanks Alvin Garcia
|
|
432
|
+
Added copy_from attribute. thanks Alvin Garcia
|
|
433
|
+
Update Image Service Authentication Options. thanks Nelvin Driz
|
|
434
|
+
Added image service, model and request. thanks Philip Mark Deazeta
|
|
435
|
+
Added test for models and request. thanks Philip Mark Deazeta
|
|
436
|
+
Added image module, model and request. thanks Philip Mark Deazeta
|
|
437
|
+
Image Model Updates. thanks Philip Mark Deazeta
|
|
438
|
+
Refactor Dynamic Methods on Image Model. thanks Philip Mark Deazeta
|
|
439
|
+
|
|
440
|
+
[openstack|volume]
|
|
441
|
+
Volume Endpoints Support. thanks Marjun Pagalan
|
|
442
|
+
Volume Snapshot CRUD. thanks Marjun Pagalan
|
|
443
|
+
Volume attach/detach to Server. thanks Marjun Pagalan
|
|
444
|
+
Added volume service requests. thanks Philip Mark M. Deazeta
|
|
445
|
+
fix on module name. thanks Philip Mark M. Deazeta
|
|
446
|
+
Added volume model. thanks Philip Mark M. Deazeta
|
|
447
|
+
|
|
448
|
+
[ovirt]
|
|
449
|
+
fixed list storage domain test. thanks Amos Benari
|
|
450
|
+
|
|
451
|
+
[rackspace|compute]
|
|
452
|
+
fix rackspace server compare. thanks Josh Lane & Jason Hansen
|
|
453
|
+
default images. thanks Josh Lane & Jason Hansen
|
|
454
|
+
Images#all returns data. thanks Josh Lane & Jason Hansen
|
|
455
|
+
fixes for mock images. thanks geemus
|
|
456
|
+
|
|
457
|
+
[rackspace|lb]
|
|
458
|
+
added support for algorithm on create. thanks Brian Hartsock
|
|
459
|
+
fixed broken tests due to API contract changes. thanks Brian Hartsock
|
|
460
|
+
|
|
461
|
+
[rackspace|loadbalancers]
|
|
462
|
+
fixed broken tests. thanks Brian Hartsock
|
|
463
|
+
|
|
464
|
+
[rackspace|storage|file]
|
|
465
|
+
copy method now use the options hash and apply content type. thanks Matthias Gröbner
|
|
466
|
+
|
|
467
|
+
[rackspace|storage|files]
|
|
468
|
+
fix iteration. thanks Matthias Gröbner
|
|
469
|
+
|
|
470
|
+
[slicehost]
|
|
471
|
+
remove (now deprecated) slicehost support. thanks geemus
|
|
472
|
+
|
|
473
|
+
[storage|aws]
|
|
474
|
+
fix location stuff to allow creating new buckets properly. thanks geemus
|
|
475
|
+
|
|
476
|
+
[vcloud]
|
|
477
|
+
Remove some un-needed debug information. thanks Lincoln Stoll
|
|
478
|
+
|
|
479
|
+
[vpc-fixes]
|
|
480
|
+
AWS security group model + VPC. thanks Sean Porter
|
|
481
|
+
|
|
482
|
+
[vsphere]
|
|
483
|
+
force poweroff of instance of vmware tools are not installed. thanks Ohad Levy
|
|
484
|
+
adds memory and cpu server attributes. thanks Ohad Levy
|
|
485
|
+
adds support to get and set vnc console. thanks Ohad Levy
|
|
486
|
+
|
|
487
|
+
[xenserver]
|
|
488
|
+
Added missing Server.tags attribute. thanks Sergio Rubio
|
|
489
|
+
fix tags to skip tests without credentials. thanks geemus
|
|
490
|
+
|
|
491
|
+
|
|
1
492
|
1.3.1 03/27/2012 f0f692456956fe2e414ef8205d0268259901644a
|
|
2
493
|
=========================================================
|
|
3
494
|
|