awsum 0.5

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.
Files changed (127) hide show
  1. data/.autotest +1 -0
  2. data/.gitignore +5 -0
  3. data/.rspec +1 -0
  4. data/Gemfile +15 -0
  5. data/Gemfile.lock +44 -0
  6. data/LICENSE +19 -0
  7. data/README.rdoc +42 -0
  8. data/Rakefile +75 -0
  9. data/awsum.gemspec +199 -0
  10. data/lib/awsum.rb +20 -0
  11. data/lib/awsum/ec2.rb +741 -0
  12. data/lib/awsum/ec2/address.rb +67 -0
  13. data/lib/awsum/ec2/availability_zone.rb +16 -0
  14. data/lib/awsum/ec2/image.rb +62 -0
  15. data/lib/awsum/ec2/instance.rb +57 -0
  16. data/lib/awsum/ec2/keypair.rb +16 -0
  17. data/lib/awsum/ec2/parsers/address_parser.rb +61 -0
  18. data/lib/awsum/ec2/parsers/availability_zone_parser.rb +57 -0
  19. data/lib/awsum/ec2/parsers/image_parser.rb +74 -0
  20. data/lib/awsum/ec2/parsers/instance_parser.rb +90 -0
  21. data/lib/awsum/ec2/parsers/keypair_parser.rb +64 -0
  22. data/lib/awsum/ec2/parsers/purchase_reserved_instances_offering_parser.rb +34 -0
  23. data/lib/awsum/ec2/parsers/region_parser.rb +56 -0
  24. data/lib/awsum/ec2/parsers/register_image_parser.rb +34 -0
  25. data/lib/awsum/ec2/parsers/reserved_instance_parser.rb +64 -0
  26. data/lib/awsum/ec2/parsers/reserved_instances_offering_parser.rb +63 -0
  27. data/lib/awsum/ec2/parsers/security_group_parser.rb +106 -0
  28. data/lib/awsum/ec2/parsers/snapshot_parser.rb +64 -0
  29. data/lib/awsum/ec2/parsers/volume_parser.rb +77 -0
  30. data/lib/awsum/ec2/region.rb +54 -0
  31. data/lib/awsum/ec2/reserved_instance.rb +24 -0
  32. data/lib/awsum/ec2/reserved_instances_offering.rb +20 -0
  33. data/lib/awsum/ec2/security_group.rb +74 -0
  34. data/lib/awsum/ec2/snapshot.rb +23 -0
  35. data/lib/awsum/ec2/volume.rb +65 -0
  36. data/lib/awsum/error.rb +53 -0
  37. data/lib/awsum/net_fix.rb +100 -0
  38. data/lib/awsum/parser.rb +18 -0
  39. data/lib/awsum/requestable.rb +216 -0
  40. data/lib/awsum/s3.rb +220 -0
  41. data/lib/awsum/s3/bucket.rb +28 -0
  42. data/lib/awsum/s3/headers.rb +24 -0
  43. data/lib/awsum/s3/object.rb +138 -0
  44. data/lib/awsum/s3/parsers/bucket_parser.rb +43 -0
  45. data/lib/awsum/support.rb +94 -0
  46. data/spec/fixtures/ec2/addresses.xml +10 -0
  47. data/spec/fixtures/ec2/allocate_address.xml +5 -0
  48. data/spec/fixtures/ec2/associate_address.xml +5 -0
  49. data/spec/fixtures/ec2/attach_volume.xml +9 -0
  50. data/spec/fixtures/ec2/authorize_ip_access.xml +5 -0
  51. data/spec/fixtures/ec2/authorize_owner_group_access.xml +5 -0
  52. data/spec/fixtures/ec2/authorize_owner_group_access_error.xml +2 -0
  53. data/spec/fixtures/ec2/availability_zones.xml +16 -0
  54. data/spec/fixtures/ec2/available_volume.xml +14 -0
  55. data/spec/fixtures/ec2/create_key_pair.xml +29 -0
  56. data/spec/fixtures/ec2/create_security_group.xml +5 -0
  57. data/spec/fixtures/ec2/create_snapshot.xml +9 -0
  58. data/spec/fixtures/ec2/create_volume.xml +10 -0
  59. data/spec/fixtures/ec2/delete_key_pair.xml +5 -0
  60. data/spec/fixtures/ec2/delete_security_group.xml +5 -0
  61. data/spec/fixtures/ec2/delete_snapshot.xml +5 -0
  62. data/spec/fixtures/ec2/delete_volume.xml +5 -0
  63. data/spec/fixtures/ec2/deregister_image.xml +5 -0
  64. data/spec/fixtures/ec2/detach_volume.xml +9 -0
  65. data/spec/fixtures/ec2/disassociate_address.xml +5 -0
  66. data/spec/fixtures/ec2/image.xml +15 -0
  67. data/spec/fixtures/ec2/images.xml +77 -0
  68. data/spec/fixtures/ec2/instance.xml +36 -0
  69. data/spec/fixtures/ec2/instances.xml +88 -0
  70. data/spec/fixtures/ec2/internal_error.xml +2 -0
  71. data/spec/fixtures/ec2/invalid_amiid_error.xml +2 -0
  72. data/spec/fixtures/ec2/invalid_request_error.xml +2 -0
  73. data/spec/fixtures/ec2/key_pairs.xml +10 -0
  74. data/spec/fixtures/ec2/purchase_reserved_instances_offering.xml +5 -0
  75. data/spec/fixtures/ec2/purchase_reserved_instances_offerings.xml +6 -0
  76. data/spec/fixtures/ec2/regions.xml +14 -0
  77. data/spec/fixtures/ec2/register_image.xml +5 -0
  78. data/spec/fixtures/ec2/release_address.xml +5 -0
  79. data/spec/fixtures/ec2/reserved_instances.xml +18 -0
  80. data/spec/fixtures/ec2/reserved_instances_offering.xml +15 -0
  81. data/spec/fixtures/ec2/reserved_instances_offerings.xml +276 -0
  82. data/spec/fixtures/ec2/revoke_ip_access.xml +5 -0
  83. data/spec/fixtures/ec2/revoke_owner_group_access.xml +5 -0
  84. data/spec/fixtures/ec2/run_instances.xml +30 -0
  85. data/spec/fixtures/ec2/security_groups.xml +159 -0
  86. data/spec/fixtures/ec2/snapshots.xml +13 -0
  87. data/spec/fixtures/ec2/terminate_instances.xml +17 -0
  88. data/spec/fixtures/ec2/unassociated_address.xml +10 -0
  89. data/spec/fixtures/ec2/volumes.xml +23 -0
  90. data/spec/fixtures/errors/invalid_parameter_value.xml +2 -0
  91. data/spec/fixtures/s3/buckets.xml +2 -0
  92. data/spec/fixtures/s3/copy_failure.xml +23 -0
  93. data/spec/fixtures/s3/invalid_request_signature.xml +5 -0
  94. data/spec/fixtures/s3/keys.xml +2 -0
  95. data/spec/lib/awsum/ec2/address_spec.rb +149 -0
  96. data/spec/lib/awsum/ec2/availability_zones_spec.rb +21 -0
  97. data/spec/lib/awsum/ec2/image_spec.rb +92 -0
  98. data/spec/lib/awsum/ec2/instance_spec.rb +125 -0
  99. data/spec/lib/awsum/ec2/keypair_spec.rb +55 -0
  100. data/spec/lib/awsum/ec2/parsers/address_parser_spec.rb +51 -0
  101. data/spec/lib/awsum/ec2/parsers/availability_zone_parser_spec.rb +28 -0
  102. data/spec/lib/awsum/ec2/parsers/image_parser_spec.rb +66 -0
  103. data/spec/lib/awsum/ec2/parsers/instance_parser_spec.rb +75 -0
  104. data/spec/lib/awsum/ec2/parsers/keypair_parser_spec.rb +74 -0
  105. data/spec/lib/awsum/ec2/parsers/purchase_reserved_instances_offering_parser_spec.rb +14 -0
  106. data/spec/lib/awsum/ec2/parsers/region_parser_spec.rb +27 -0
  107. data/spec/lib/awsum/ec2/parsers/register_image_parser_spec.rb +15 -0
  108. data/spec/lib/awsum/ec2/parsers/reserved_instance_parser_spec.rb +35 -0
  109. data/spec/lib/awsum/ec2/parsers/reserved_instances_offering_parser_spec.rb +32 -0
  110. data/spec/lib/awsum/ec2/parsers/security_group_parser_spec.rb +78 -0
  111. data/spec/lib/awsum/ec2/parsers/snapshot_parser_spec.rb +30 -0
  112. data/spec/lib/awsum/ec2/parsers/volume_parser_spec.rb +35 -0
  113. data/spec/lib/awsum/ec2/region_spec.rb +73 -0
  114. data/spec/lib/awsum/ec2/reserved_instance_spec.rb +61 -0
  115. data/spec/lib/awsum/ec2/reserved_instances_offering_spec.rb +33 -0
  116. data/spec/lib/awsum/ec2/security_group_spec.rb +179 -0
  117. data/spec/lib/awsum/ec2/snapshots_spec.rb +69 -0
  118. data/spec/lib/awsum/ec2/volume_spec.rb +107 -0
  119. data/spec/lib/awsum/ec2_spec.rb +6 -0
  120. data/spec/lib/awsum/error_spec.rb +31 -0
  121. data/spec/lib/awsum/requestable_spec.rb +126 -0
  122. data/spec/lib/awsum/s3/bucket_spec.rb +95 -0
  123. data/spec/lib/awsum/s3/object_spec.rb +128 -0
  124. data/spec/lib/awsum/s3/parsers/bucket_parser_spec.rb +41 -0
  125. data/spec/lib/awsum/s3/parsers/object_parser_spec.rb +41 -0
  126. data/spec/spec_helper.rb +16 -0
  127. metadata +240 -0
@@ -0,0 +1,95 @@
1
+ require 'spec_helper'
2
+
3
+ module Awsum
4
+ describe S3 do
5
+
6
+ subject { S3.new('abc', 'xyz') }
7
+ let(:s3) { subject }
8
+
9
+ describe "naming a bucket" do
10
+ it "should not have an ip address style name" do
11
+ expect { s3.create_bucket('192.168.2.1') }.to raise_error
12
+ end
13
+
14
+ it "should not start with punctuation" do
15
+ expect { s3.create_bucket('-name') }.to raise_error
16
+ expect { s3.create_bucket('.name') }.to raise_error
17
+ expect { s3.create_bucket('_name') }.to raise_error
18
+ end
19
+
20
+ it "should not end with a dash" do
21
+ expect { s3.create_bucket('name-') }.to raise_error
22
+ end
23
+
24
+ it "should not have a dash to the left of a period" do
25
+ expect { s3.create_bucket('name-.test') }.to raise_error
26
+ end
27
+
28
+ it "should not have a dash to the right of a period" do
29
+ expect { s3.create_bucket('name.-test') }.to raise_error
30
+ end
31
+
32
+ it "should not be shorter than 3 characters" do
33
+ expect { s3.create_bucket('ab') }.to raise_error
34
+ end
35
+
36
+ it "should not be longer than 63 characters" do
37
+ expect { s3.create_bucket((0..63).collection{'a'}.join) }.to raise_error
38
+ end
39
+
40
+ it "should be able to start with a number" do
41
+ FakeWeb.register_uri(:put, 'https://2name.s3.amazonaws.com/', :body => '', :status => 200)
42
+
43
+ expect { s3.create_bucket('2name') }.should_not raise_error
44
+ end
45
+
46
+ it "should otherwise succeed" do
47
+ FakeWeb.register_uri(:put, 'https://test.s3.amazonaws.com/', :body => '', :status => 200)
48
+
49
+ expect { s3.create_bucket('test') }.should_not raise_error
50
+ end
51
+ end
52
+
53
+ describe "retrieving a list of buckets" do
54
+ before do
55
+ FakeWeb.register_uri(:get, 'https://s3.amazonaws.com/', :body => fixture('s3/buckets'), :status => 200)
56
+ end
57
+
58
+ let(:buckets) { s3.buckets }
59
+
60
+ it "should return an array of buckets" do
61
+ buckets.first.should be_a(Awsum::S3::Bucket)
62
+ end
63
+ end
64
+
65
+ describe "deleting a bucket" do
66
+ before do
67
+ FakeWeb.register_uri(:delete, 'https://test.s3.amazonaws.com/', :body => '', :status => 200)
68
+ end
69
+
70
+ it "should return true" do
71
+ s3.delete_bucket('test').should be_true
72
+ end
73
+ end
74
+
75
+ describe "a bucket" do
76
+ let(:bucket) { Awsum::S3::Bucket.new(s3, 'test', Time.now) }
77
+
78
+ it "should be able to delete itself" do
79
+ FakeWeb.register_uri(:delete, 'https://test.s3.amazonaws.com/', :body => '', :status => 200)
80
+
81
+ bucket.delete.should be_true
82
+ end
83
+
84
+ it "should be able to delete itself even if it contains objects" do
85
+ FakeWeb.register_uri(:get, 'https://test.s3.amazonaws.com/', :body => fixture('s3/keys'), :status => 200)
86
+ ['test/photo1.jpg', 'test/photo2.jpg'].each do |key|
87
+ FakeWeb.register_uri(:delete, "https://test.s3.amazonaws.com/#{key}", :body => '', :status => 200)
88
+ end
89
+ FakeWeb.register_uri(:delete, 'https://test.s3.amazonaws.com/', :body => '', :status => 200)
90
+
91
+ bucket.delete!.should be_true
92
+ end
93
+ end
94
+ end
95
+ end
@@ -0,0 +1,128 @@
1
+ require 'spec_helper'
2
+
3
+ module Awsum
4
+ describe S3 do
5
+
6
+ subject { S3.new('abc', 'xyz') }
7
+ let(:s3) { subject }
8
+
9
+ describe "creating an object" do
10
+ it "should be possible with a string" do
11
+ FakeWeb.register_uri(:put, 'https://test.s3.amazonaws.com/test.txt', :body => '', :status => 200)
12
+
13
+ s3.create_object('test', 'test.txt', 'Some text').should be_true
14
+ end
15
+
16
+ it "should be possible with a IO object" do
17
+ FakeWeb.register_uri(:put, 'https://test.s3.amazonaws.com/test.txt', :body => '', :status => 200)
18
+
19
+ s3.create_object('test', 'test.txt', StringIO.new('Some text')).should be_true
20
+ end
21
+ end
22
+
23
+ describe "deleting an object" do
24
+ it "should return true" do
25
+ FakeWeb.register_uri(:delete, 'https://test.s3.amazonaws.com/test.txt', :body => '', :status => 200)
26
+
27
+ s3.delete_object('test', 'test.txt').should be_true
28
+ end
29
+ end
30
+
31
+ describe "copying an object" do
32
+ it "should be possible to a different bucket with the same key" do
33
+ s3.should_receive(:send_s3_request).with("PUT", {:bucket=>"test2", :headers=>{"x-amz-copy-source"=>"/test/test.txt", "x-amz-metadata-directive"=>"COPY"}, :data=>nil, :key=>"test.txt"})
34
+
35
+ s3.copy_object('test', 'test.txt', 'test2')
36
+ end
37
+
38
+ it "should be possible within the same bucket with a different key" do
39
+ s3.should_receive(:send_s3_request).with("PUT", {:bucket=>"test", :headers=>{"x-amz-copy-source"=>"/test/test.txt", "x-amz-metadata-directive"=>"COPY"}, :data=>nil, :key=>"test2.txt"})
40
+
41
+ s3.copy_object('test', 'test.txt', nil, 'test2.txt')
42
+ end
43
+
44
+ it "should allow replacing headers and meta-data" do
45
+ s3.should_receive(:send_s3_request).with("PUT", {:bucket=>"test", :headers=>{"x-amz-copy-source"=>"/test/test.txt", "New-Header"=>"two", "x-amz-metadata-directive"=>"REPLACE"}, :data=>nil, :key=>"test.txt"})
46
+
47
+ s3.copy_object('test', 'test.txt', nil, nil, {'New-Header' => 'two'})
48
+ end
49
+
50
+ it "should not allow within the same bucket, with the same key name and no changed headers" do
51
+ expect { s3.copy_object('test', 'test.txt') }.to raise_error
52
+ end
53
+
54
+ it "should raise an error if the copy fails" do
55
+ FakeWeb.register_uri(:put, 'https://test2.s3.amazonaws.com/test.txt', :body => fixture('s3/copy_failure'), :status => 200)
56
+
57
+ expect { s3.copy_object('test', 'test.txt', 'test2') }.to raise_error(Awsum::Error)
58
+ end
59
+ end
60
+
61
+ describe "an object" do
62
+ let(:object) { Awsum::S3::Object.new(s3, 'test', 'test.txt', Time.now, 'XXXXX', 234, 'AAAAAA', 'STANDARD') }
63
+
64
+ it "should be able to delete itself" do
65
+ FakeWeb.register_uri(:delete, 'https://test.s3.amazonaws.com/test.txt', :body => '', :status => 200)
66
+
67
+ object.delete.should be_true
68
+ end
69
+
70
+ it "should be able to copy itself to a different key" do
71
+ FakeWeb.register_uri(:put, 'https://test.s3.amazonaws.com/test2.txt', :body => '', :status => 200)
72
+
73
+ object.copy('test2.txt').should be_true
74
+ end
75
+
76
+ it "should be able to rename itself" do
77
+ FakeWeb.register_uri(:put, 'https://test.s3.amazonaws.com/test2.txt', :body => '', :status => 200)
78
+ FakeWeb.register_uri(:delete, 'https://test.s3.amazonaws.com/test.txt', :body => '', :status => 200)
79
+
80
+ object.rename('test2.txt').should be_true
81
+ end
82
+
83
+ it "should be able to move itself" do
84
+ FakeWeb.register_uri(:put, 'https://test.s3.amazonaws.com/test2.txt', :body => '', :status => 200)
85
+ FakeWeb.register_uri(:delete, 'https://test.s3.amazonaws.com/test.txt', :body => '', :status => 200)
86
+
87
+ object.move('test2.txt').should be_true
88
+ end
89
+
90
+ it "should be able to copy itself to another bucket" do
91
+ FakeWeb.register_uri(:put, 'https://another.s3.amazonaws.com/test.txt', :body => '', :status => 200)
92
+
93
+ object.copy_to('another').should be_true
94
+ end
95
+
96
+ it "should be able to move itself to another bucket" do
97
+ FakeWeb.register_uri(:put, 'https://another.s3.amazonaws.com/test.txt', :body => '', :status => 200)
98
+ FakeWeb.register_uri(:delete, 'https://test.s3.amazonaws.com/test.txt', :body => '', :status => 200)
99
+
100
+ object.move_to('another').should be_true
101
+ end
102
+
103
+ #TODO: Provide better specs on headers
104
+ it "should be able to return it's headers" do
105
+ FakeWeb.register_uri(:head, 'https://test.s3.amazonaws.com/test.txt', :body => '', :status => 200)
106
+
107
+ object.headers.should be_a(Awsum::S3::Headers)
108
+ end
109
+
110
+ it "should be able to return it's data" do
111
+ FakeWeb.register_uri(:get, 'https://test.s3.amazonaws.com/test.txt', :body => 'The data', :status => 200)
112
+
113
+ object.data.should == 'The data'
114
+ end
115
+
116
+ it "should be able to return it's data in chunks" do
117
+ FakeWeb.register_uri(:get, 'https://test.s3.amazonaws.com/test.txt', :body => 'The data', :status => 200)
118
+
119
+ data = ''
120
+ object.data do |chunk|
121
+ data << chunk
122
+ end
123
+
124
+ data.should == 'The data'
125
+ end
126
+ end
127
+ end
128
+ end
@@ -0,0 +1,41 @@
1
+ require 'spec_helper'
2
+
3
+ module Awsum
4
+ describe S3::BucketParser do
5
+
6
+ subject { S3.new('abc', 'xyz') }
7
+ let(:s3) { subject }
8
+ let(:parser) { Awsum::S3::BucketParser.new(s3) }
9
+ let(:result) { parser.parse(fixture('s3/buckets')) }
10
+
11
+ it "should return an array of buckets" do
12
+ result.should be_a(Array)
13
+ end
14
+
15
+ context "the first bucket" do
16
+ let(:bucket) { result.first }
17
+
18
+ {
19
+ :name => 'test-bucket',
20
+ :creation_date => Time.parse('2008-12-04T16:08:03.000Z')
21
+ }.each do |key, value|
22
+ it "should have the correct #{key}" do
23
+ bucket.send(key).should == value
24
+ end
25
+ end
26
+ end
27
+
28
+ context "the second bucket" do
29
+ let(:bucket) { result[1] }
30
+
31
+ {
32
+ :name => 'another-test-bucket',
33
+ :creation_date => Time.parse('2009-01-02T08:25:27.000Z')
34
+ }.each do |key, value|
35
+ it "should have the correct #{key}" do
36
+ bucket.send(key).should == value
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,41 @@
1
+ require 'spec_helper'
2
+
3
+ module Awsum
4
+ describe S3::ObjectParser do
5
+
6
+ subject { S3.new('abc', 'xyz') }
7
+ let(:s3) { subject }
8
+ let(:parser) { Awsum::S3::ObjectParser.new(s3) }
9
+ let(:result) { parser.parse(fixture('s3/keys')) }
10
+
11
+ it "should return an array of object" do
12
+ result.should be_a(Array)
13
+ end
14
+
15
+ context "the first object" do
16
+ let(:object) { result.first }
17
+
18
+ {
19
+ :key => 'test/photo1.jpg',
20
+ :last_modified => Time.parse('2008-12-07T13:47:59.000Z'),
21
+ :etag => '"03bde534951a1c099724f569a53acb1e"',
22
+ :size => 203841,
23
+ :storage_class => 'STANDARD'
24
+ }.each do |key, value|
25
+ it "should have the correct #{key}" do
26
+ object.send(key).should == value
27
+ end
28
+ end
29
+
30
+ #TODO: This should be object.owner.name
31
+ it "should have the correct owner name" do
32
+ object.owner['name'].should == 'AAAAAA'
33
+ end
34
+
35
+ #TODO: This should be object.owner.id
36
+ it "should have the correct owner id" do
37
+ object.owner['id'].should == '1111111111111111111111111111111111111111111111111111111111111111'
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,16 @@
1
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
2
+ require 'awsum/ec2'
3
+ require 'awsum/s3'
4
+ require 'fakeweb'
5
+
6
+ FakeWeb.allow_net_connect = false
7
+
8
+ RSpec.configure do |config|
9
+ config.before do
10
+ FakeWeb.clean_registry
11
+ end
12
+ end
13
+
14
+ def fixture(path)
15
+ File.read(File.join(File.dirname(__FILE__), 'fixtures', "#{path}.xml"))
16
+ end
metadata ADDED
@@ -0,0 +1,240 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: awsum
3
+ version: !ruby/object:Gem::Version
4
+ hash: 1
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 5
9
+ version: "0.5"
10
+ platform: ruby
11
+ authors:
12
+ - Andrew Timberlake
13
+ autorequire:
14
+ bindir: bin
15
+ cert_chain: []
16
+
17
+ date: 2010-09-19 00:00:00 +02:00
18
+ default_executable:
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
21
+ version_requirements: &id001 !ruby/object:Gem::Requirement
22
+ none: false
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ hash: 62196431
27
+ segments:
28
+ - 2
29
+ - 0
30
+ - 0
31
+ - beta
32
+ - 22
33
+ version: 2.0.0.beta.22
34
+ requirement: *id001
35
+ prerelease: false
36
+ type: :development
37
+ name: rspec
38
+ description:
39
+ email: andrew@andrewtimberlake.com
40
+ executables: []
41
+
42
+ extensions: []
43
+
44
+ extra_rdoc_files:
45
+ - LICENSE
46
+ - README.rdoc
47
+ files:
48
+ - .autotest
49
+ - .gitignore
50
+ - .rspec
51
+ - Gemfile
52
+ - Gemfile.lock
53
+ - LICENSE
54
+ - README.rdoc
55
+ - Rakefile
56
+ - awsum.gemspec
57
+ - lib/awsum.rb
58
+ - lib/awsum/ec2.rb
59
+ - lib/awsum/ec2/address.rb
60
+ - lib/awsum/ec2/availability_zone.rb
61
+ - lib/awsum/ec2/image.rb
62
+ - lib/awsum/ec2/instance.rb
63
+ - lib/awsum/ec2/keypair.rb
64
+ - lib/awsum/ec2/parsers/address_parser.rb
65
+ - lib/awsum/ec2/parsers/availability_zone_parser.rb
66
+ - lib/awsum/ec2/parsers/image_parser.rb
67
+ - lib/awsum/ec2/parsers/instance_parser.rb
68
+ - lib/awsum/ec2/parsers/keypair_parser.rb
69
+ - lib/awsum/ec2/parsers/purchase_reserved_instances_offering_parser.rb
70
+ - lib/awsum/ec2/parsers/region_parser.rb
71
+ - lib/awsum/ec2/parsers/register_image_parser.rb
72
+ - lib/awsum/ec2/parsers/reserved_instance_parser.rb
73
+ - lib/awsum/ec2/parsers/reserved_instances_offering_parser.rb
74
+ - lib/awsum/ec2/parsers/security_group_parser.rb
75
+ - lib/awsum/ec2/parsers/snapshot_parser.rb
76
+ - lib/awsum/ec2/parsers/volume_parser.rb
77
+ - lib/awsum/ec2/region.rb
78
+ - lib/awsum/ec2/reserved_instance.rb
79
+ - lib/awsum/ec2/reserved_instances_offering.rb
80
+ - lib/awsum/ec2/security_group.rb
81
+ - lib/awsum/ec2/snapshot.rb
82
+ - lib/awsum/ec2/volume.rb
83
+ - lib/awsum/error.rb
84
+ - lib/awsum/net_fix.rb
85
+ - lib/awsum/parser.rb
86
+ - lib/awsum/requestable.rb
87
+ - lib/awsum/s3.rb
88
+ - lib/awsum/s3/bucket.rb
89
+ - lib/awsum/s3/headers.rb
90
+ - lib/awsum/s3/object.rb
91
+ - lib/awsum/s3/parsers/bucket_parser.rb
92
+ - lib/awsum/support.rb
93
+ - spec/fixtures/ec2/addresses.xml
94
+ - spec/fixtures/ec2/allocate_address.xml
95
+ - spec/fixtures/ec2/associate_address.xml
96
+ - spec/fixtures/ec2/attach_volume.xml
97
+ - spec/fixtures/ec2/authorize_ip_access.xml
98
+ - spec/fixtures/ec2/authorize_owner_group_access.xml
99
+ - spec/fixtures/ec2/authorize_owner_group_access_error.xml
100
+ - spec/fixtures/ec2/availability_zones.xml
101
+ - spec/fixtures/ec2/available_volume.xml
102
+ - spec/fixtures/ec2/create_key_pair.xml
103
+ - spec/fixtures/ec2/create_security_group.xml
104
+ - spec/fixtures/ec2/create_snapshot.xml
105
+ - spec/fixtures/ec2/create_volume.xml
106
+ - spec/fixtures/ec2/delete_key_pair.xml
107
+ - spec/fixtures/ec2/delete_security_group.xml
108
+ - spec/fixtures/ec2/delete_snapshot.xml
109
+ - spec/fixtures/ec2/delete_volume.xml
110
+ - spec/fixtures/ec2/deregister_image.xml
111
+ - spec/fixtures/ec2/detach_volume.xml
112
+ - spec/fixtures/ec2/disassociate_address.xml
113
+ - spec/fixtures/ec2/image.xml
114
+ - spec/fixtures/ec2/images.xml
115
+ - spec/fixtures/ec2/instance.xml
116
+ - spec/fixtures/ec2/instances.xml
117
+ - spec/fixtures/ec2/internal_error.xml
118
+ - spec/fixtures/ec2/invalid_amiid_error.xml
119
+ - spec/fixtures/ec2/invalid_request_error.xml
120
+ - spec/fixtures/ec2/key_pairs.xml
121
+ - spec/fixtures/ec2/purchase_reserved_instances_offering.xml
122
+ - spec/fixtures/ec2/purchase_reserved_instances_offerings.xml
123
+ - spec/fixtures/ec2/regions.xml
124
+ - spec/fixtures/ec2/register_image.xml
125
+ - spec/fixtures/ec2/release_address.xml
126
+ - spec/fixtures/ec2/reserved_instances.xml
127
+ - spec/fixtures/ec2/reserved_instances_offering.xml
128
+ - spec/fixtures/ec2/reserved_instances_offerings.xml
129
+ - spec/fixtures/ec2/revoke_ip_access.xml
130
+ - spec/fixtures/ec2/revoke_owner_group_access.xml
131
+ - spec/fixtures/ec2/run_instances.xml
132
+ - spec/fixtures/ec2/security_groups.xml
133
+ - spec/fixtures/ec2/snapshots.xml
134
+ - spec/fixtures/ec2/terminate_instances.xml
135
+ - spec/fixtures/ec2/unassociated_address.xml
136
+ - spec/fixtures/ec2/volumes.xml
137
+ - spec/fixtures/errors/invalid_parameter_value.xml
138
+ - spec/fixtures/s3/buckets.xml
139
+ - spec/fixtures/s3/copy_failure.xml
140
+ - spec/fixtures/s3/invalid_request_signature.xml
141
+ - spec/fixtures/s3/keys.xml
142
+ - spec/lib/awsum/ec2/address_spec.rb
143
+ - spec/lib/awsum/ec2/availability_zones_spec.rb
144
+ - spec/lib/awsum/ec2/image_spec.rb
145
+ - spec/lib/awsum/ec2/instance_spec.rb
146
+ - spec/lib/awsum/ec2/keypair_spec.rb
147
+ - spec/lib/awsum/ec2/parsers/address_parser_spec.rb
148
+ - spec/lib/awsum/ec2/parsers/availability_zone_parser_spec.rb
149
+ - spec/lib/awsum/ec2/parsers/image_parser_spec.rb
150
+ - spec/lib/awsum/ec2/parsers/instance_parser_spec.rb
151
+ - spec/lib/awsum/ec2/parsers/keypair_parser_spec.rb
152
+ - spec/lib/awsum/ec2/parsers/purchase_reserved_instances_offering_parser_spec.rb
153
+ - spec/lib/awsum/ec2/parsers/region_parser_spec.rb
154
+ - spec/lib/awsum/ec2/parsers/register_image_parser_spec.rb
155
+ - spec/lib/awsum/ec2/parsers/reserved_instance_parser_spec.rb
156
+ - spec/lib/awsum/ec2/parsers/reserved_instances_offering_parser_spec.rb
157
+ - spec/lib/awsum/ec2/parsers/security_group_parser_spec.rb
158
+ - spec/lib/awsum/ec2/parsers/snapshot_parser_spec.rb
159
+ - spec/lib/awsum/ec2/parsers/volume_parser_spec.rb
160
+ - spec/lib/awsum/ec2/region_spec.rb
161
+ - spec/lib/awsum/ec2/reserved_instance_spec.rb
162
+ - spec/lib/awsum/ec2/reserved_instances_offering_spec.rb
163
+ - spec/lib/awsum/ec2/security_group_spec.rb
164
+ - spec/lib/awsum/ec2/snapshots_spec.rb
165
+ - spec/lib/awsum/ec2/volume_spec.rb
166
+ - spec/lib/awsum/ec2_spec.rb
167
+ - spec/lib/awsum/error_spec.rb
168
+ - spec/lib/awsum/requestable_spec.rb
169
+ - spec/lib/awsum/s3/bucket_spec.rb
170
+ - spec/lib/awsum/s3/object_spec.rb
171
+ - spec/lib/awsum/s3/parsers/bucket_parser_spec.rb
172
+ - spec/lib/awsum/s3/parsers/object_parser_spec.rb
173
+ - spec/spec_helper.rb
174
+ has_rdoc: true
175
+ homepage: http://andrewtimberlake.com/projects/awsum
176
+ licenses: []
177
+
178
+ post_install_message:
179
+ rdoc_options:
180
+ - --charset=UTF-8
181
+ require_paths:
182
+ - lib
183
+ required_ruby_version: !ruby/object:Gem::Requirement
184
+ none: false
185
+ requirements:
186
+ - - ">="
187
+ - !ruby/object:Gem::Version
188
+ hash: 3
189
+ segments:
190
+ - 0
191
+ version: "0"
192
+ required_rubygems_version: !ruby/object:Gem::Requirement
193
+ none: false
194
+ requirements:
195
+ - - ">="
196
+ - !ruby/object:Gem::Version
197
+ hash: 3
198
+ segments:
199
+ - 0
200
+ version: "0"
201
+ requirements: []
202
+
203
+ rubyforge_project:
204
+ rubygems_version: 1.3.7
205
+ signing_key:
206
+ specification_version: 3
207
+ summary: A library for working with Amazon Web Services in the most natural rubyish way
208
+ test_files:
209
+ - spec/lib/awsum/s3/parsers/object_parser_spec.rb
210
+ - spec/lib/awsum/s3/parsers/bucket_parser_spec.rb
211
+ - spec/lib/awsum/s3/object_spec.rb
212
+ - spec/lib/awsum/s3/bucket_spec.rb
213
+ - spec/lib/awsum/ec2/reserved_instance_spec.rb
214
+ - spec/lib/awsum/ec2/region_spec.rb
215
+ - spec/lib/awsum/ec2/availability_zones_spec.rb
216
+ - spec/lib/awsum/ec2/parsers/register_image_parser_spec.rb
217
+ - spec/lib/awsum/ec2/parsers/security_group_parser_spec.rb
218
+ - spec/lib/awsum/ec2/parsers/image_parser_spec.rb
219
+ - spec/lib/awsum/ec2/parsers/snapshot_parser_spec.rb
220
+ - spec/lib/awsum/ec2/parsers/region_parser_spec.rb
221
+ - spec/lib/awsum/ec2/parsers/availability_zone_parser_spec.rb
222
+ - spec/lib/awsum/ec2/parsers/reserved_instance_parser_spec.rb
223
+ - spec/lib/awsum/ec2/parsers/address_parser_spec.rb
224
+ - spec/lib/awsum/ec2/parsers/purchase_reserved_instances_offering_parser_spec.rb
225
+ - spec/lib/awsum/ec2/parsers/volume_parser_spec.rb
226
+ - spec/lib/awsum/ec2/parsers/reserved_instances_offering_parser_spec.rb
227
+ - spec/lib/awsum/ec2/parsers/keypair_parser_spec.rb
228
+ - spec/lib/awsum/ec2/parsers/instance_parser_spec.rb
229
+ - spec/lib/awsum/ec2/image_spec.rb
230
+ - spec/lib/awsum/ec2/address_spec.rb
231
+ - spec/lib/awsum/ec2/keypair_spec.rb
232
+ - spec/lib/awsum/ec2/snapshots_spec.rb
233
+ - spec/lib/awsum/ec2/volume_spec.rb
234
+ - spec/lib/awsum/ec2/instance_spec.rb
235
+ - spec/lib/awsum/ec2/security_group_spec.rb
236
+ - spec/lib/awsum/ec2/reserved_instances_offering_spec.rb
237
+ - spec/lib/awsum/ec2_spec.rb
238
+ - spec/lib/awsum/error_spec.rb
239
+ - spec/lib/awsum/requestable_spec.rb
240
+ - spec/spec_helper.rb