amazon-ec2 0.2.6 → 0.2.7
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +3 -0
- data/lib/EC2.rb +14 -3
- data/lib/EC2/version.rb +1 -1
- data/test/test_EC2_version.rb +1 -1
- data/website/index.html +56 -64
- data/website/index.txt +58 -64
- metadata +108 -101
data/History.txt
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
=== 0.2.7 2008-02-17
|
2
|
+
* Add support for HTTP Proxy when :proxy_server argument is passed. Based on patch from Mathias Dalheimer.
|
3
|
+
|
1
4
|
=== 0.2.6 2007-10-16
|
2
5
|
* Updated to support EC2 API version 2007-08-29 released on 2007-10-16
|
3
6
|
* Supports new instances type feature. Specify an instance type to launch
|
data/lib/EC2.rb
CHANGED
@@ -77,20 +77,23 @@ module EC2
|
|
77
77
|
#
|
78
78
|
# :use_ssl => Boolean (default : true)
|
79
79
|
# :server => String (default : 'ec2.amazonaws.com')
|
80
|
+
# :proxy_server => String (default : nil)
|
80
81
|
#
|
81
82
|
class Base
|
82
83
|
|
83
|
-
attr_reader :use_ssl, :server, :port
|
84
|
+
attr_reader :use_ssl, :server, :proxy_server, :port
|
84
85
|
|
85
86
|
def initialize( options = {} )
|
86
87
|
|
87
88
|
options = { :access_key_id => "",
|
88
89
|
:secret_access_key => "",
|
89
90
|
:use_ssl => true,
|
90
|
-
:server => DEFAULT_HOST
|
91
|
+
:server => DEFAULT_HOST,
|
92
|
+
:proxy_server => nil
|
91
93
|
}.merge(options)
|
92
94
|
|
93
95
|
@server = options[:server]
|
96
|
+
@proxy_server = options[:proxy_server]
|
94
97
|
@use_ssl = options[:use_ssl]
|
95
98
|
|
96
99
|
raise ArgumentError, "No :access_key_id provided" if options[:access_key_id].nil? || options[:access_key_id].empty?
|
@@ -112,7 +115,15 @@ module EC2
|
|
112
115
|
|
113
116
|
@access_key_id = options[:access_key_id]
|
114
117
|
@secret_access_key = options[:secret_access_key]
|
115
|
-
|
118
|
+
|
119
|
+
# Use proxy server if defined
|
120
|
+
# Based on patch by Mathias Dalheimer. 20070217
|
121
|
+
proxy = @proxy_server ? URI.parse(@proxy_server) : OpenStruct.new
|
122
|
+
@http = Net::HTTP::Proxy( proxy.host,
|
123
|
+
proxy.port,
|
124
|
+
proxy.user,
|
125
|
+
proxy.password).new(options[:server], @port)
|
126
|
+
|
116
127
|
@http.use_ssl = @use_ssl
|
117
128
|
|
118
129
|
# Don't verify the SSL certificates. Avoids SSL Cert warning in log on every GET.
|
data/lib/EC2/version.rb
CHANGED
data/test/test_EC2_version.rb
CHANGED
data/website/index.html
CHANGED
@@ -33,7 +33,7 @@
|
|
33
33
|
<h1>Amazon Web Services EC2 Ruby Gem</h1>
|
34
34
|
<div id="version" class="clickable" onclick='document.location = "http://rubyforge.org/projects/amazon-ec2"; return false'>
|
35
35
|
<p>Get Version</p>
|
36
|
-
<a href="http://rubyforge.org/projects/amazon-ec2" class="numbers">0.2.
|
36
|
+
<a href="http://rubyforge.org/projects/amazon-ec2" class="numbers">0.2.7</a>
|
37
37
|
</div>
|
38
38
|
<h2>→ ‘amazon-ec2’</h2>
|
39
39
|
|
@@ -47,35 +47,27 @@
|
|
47
47
|
<p>This ‘amazon-ec2’ Ruby Gem is an interface library that can be used to interact with the Amazon <span class="caps">EC2</span> system and control server resources on demand from your Ruby scripts, or from Ruby on Rails applications.</p>
|
48
48
|
|
49
49
|
|
50
|
-
<h2>
|
51
|
-
|
52
|
-
|
53
|
-
<p>This latest release of the gem has undergone a pretty massive re-write. It is no longer compatible with code you may have written that made use of an older version of ‘amazon-ec2’ (< 0.2.0).</p>
|
54
|
-
|
55
|
-
|
56
|
-
<p>Any other gems which depended on ‘amazon-ec2’ < 0.2.0 will also no longer work with the new release. The only project I am aware of that depended on the earlier version of ‘amazon-ec2’ was ‘Capazon’. This project, which allows you to control <span class="caps">EC2</span> from your Capistrano recipies, has now been deprecated and is being reborn as ‘Capsize’. I rewrote the code for Capsize with the assistance of the original creator of Capazon; Jesse Newland. Feel free to check out <a href="http://capsize.rubyforge.org/">Capsize</a> to learn more about this exciting new release!</p>
|
57
|
-
|
58
|
-
|
59
|
-
<p>While we apologize for not being able to maintain backward compatibility with the original ‘amazon-ec2’ gem, there were just too many major enhancements that needed to be made and it just was’nt possible. I hope that the new robustness and new features in this new release make any transitional pain worthwhile! Of course the old versions are still out there on RubyForge, and you can still install them if you pass the version string into the gem install command. I just don’t recommend it unless you really have to.</p>
|
50
|
+
<h2>What’s new?</h2>
|
60
51
|
|
61
52
|
|
62
|
-
<
|
53
|
+
<p>20070217 – This project’s source code now only available from our master Git repository at GitHub. The Subversion repository at Rubyforge will be cleared but we’ll still publish any new gem versions to Rubyforge so you can still easily install them. Unless you plan to work on the source code this should have no effect on you. Now you can browse, clone or fork from our Git repository at <a href="http://github.com/grempe/amazon-ec2">http://github.com/grempe/amazon-ec2</a>. Please let us know if you have patches you would like us to pull from your git repository.</p>
|
63
54
|
|
64
55
|
|
65
|
-
<p>This
|
56
|
+
<p>This 0.2.0 + series represents a major re-write of this gem and contains contributions from several people who make use of this gem for their own applications. Trust us, its worth the pain of upgrading if you have been using an older version. Some of the major enhancements you will find are:</p>
|
66
57
|
|
67
58
|
|
68
59
|
<ul>
|
69
|
-
<li>Updated <span class="caps">API</span> version in the query <span class="caps">API</span> request to 2007-
|
70
|
-
in this version of the <span class="caps">API</span> to the gem (including
|
71
|
-
|
60
|
+
<li>Updated <span class="caps">API</span> version in the query <span class="caps">API</span> request to 2007-08-29, and added all known method calls
|
61
|
+
in this version of the <span class="caps">API</span> to the gem (including the new instance types(small, medium, large)).
|
62
|
+
Previous releases have kept pace with changes such as the addition of paid <span class="caps">AMI</span> support with
|
63
|
+
product codes, instance reboot, viewing of console output, <span class="caps">NAT</span> addressing and more!</li>
|
72
64
|
</ul>
|
73
65
|
|
74
66
|
|
75
67
|
<ul>
|
76
|
-
<li><span class="caps">MAJOR</span> library changes : <span class="caps">THESE CHANGES ARE NOT BACKWARD COMPATIBLE</span>!! You will need to update
|
77
|
-
the way in which you make calls, handle responses, and rescue exceptions from this library.
|
78
|
-
If you prefer not to make these changes you can feel free to continue to use the older version
|
68
|
+
<li><span class="caps">MAJOR</span> library changes : <span class="caps">THESE CHANGES ARE NOT BACKWARD COMPATIBLE</span>!! You will need to update
|
69
|
+
the way in which you make calls, handle responses, and rescue exceptions from this library.
|
70
|
+
If you prefer not to make these changes you can feel free to continue to use the older version
|
79
71
|
of the gem. These older versions however will no longer be maintained.</li>
|
80
72
|
</ul>
|
81
73
|
|
@@ -87,14 +79,14 @@ of arguments and none of them are positional. This feels much more “Ruby&
|
|
87
79
|
|
88
80
|
|
89
81
|
<ul>
|
90
|
-
<li><span class="caps">MAJOR</span> refactoring of how responses are returned to users. No longer do you have to call the
|
91
|
-
.parse method, and no longer are you getting back simple arrays of information. Responses
|
92
|
-
now come in the form of OpenStruct objects that contain all of the data for an object in
|
82
|
+
<li><span class="caps">MAJOR</span> refactoring of how responses are returned to users. No longer do you have to call the
|
83
|
+
.parse method, and no longer are you getting back simple arrays of information. Responses
|
84
|
+
now come in the form of OpenStruct objects that contain all of the data for an object in
|
93
85
|
Enumerable form so you can use iterators (.each, .each_pair, etc). All methods return an <span class="caps">EC2</span>::Response object
|
94
86
|
which inherits from OpenStruct. The return data from <span class="caps">EC2</span>, which is in <span class="caps">XML</span> form, is parsed
|
95
87
|
with XmlSimple and is used to directly construct the return data structure. This allows us
|
96
88
|
to know with some confidence that the data structure returned from <span class="caps">AWS</span> will always be consistent
|
97
|
-
with this library’s responses. There is also an .xml attribute for each response object that lets you
|
89
|
+
with this library’s responses. There is also an .xml attribute for each response object that lets you
|
98
90
|
see the full and complete <span class="caps">XML</span> response from <span class="caps">AWS</span> if that is useful to you.</li>
|
99
91
|
</ul>
|
100
92
|
|
@@ -102,27 +94,27 @@ see the full and complete <span class="caps">XML</span> response from <span clas
|
|
102
94
|
<ul>
|
103
95
|
<li>Added an exception framework which will now throw appropriate Ruby exceptions
|
104
96
|
that match those handed to us by Amazon <span class="caps">EC2</span>. ArgumentError exceptions will also
|
105
|
-
be thrown if you are making calls we know to be illegal or malformed. You should rescue
|
106
|
-
these exceptions in your application instead of parsing text responses. All exceptions
|
97
|
+
be thrown if you are making calls we know to be illegal or malformed. You should rescue
|
98
|
+
these exceptions in your application instead of parsing text responses. All exceptions
|
107
99
|
descend from <span class="caps">EC2</span>::Error. You can see them all in exceptions.rb in the gem install.</li>
|
108
100
|
</ul>
|
109
101
|
|
110
102
|
|
111
103
|
<ul>
|
112
104
|
<li>Added a full suite of test/spec unit tests which currently cover 100% of the public methods
|
113
|
-
in this library. We have abot 92% code coverage according to rcov. This has greatly enhanced
|
114
|
-
the reliability of the library as well as our confidence in the code.
|
105
|
+
in this library. We have abot 92% code coverage according to rcov. This has greatly enhanced
|
106
|
+
the reliability of the library as well as our confidence in the code.
|
115
107
|
We used to have 0% test coverage. :-/</li>
|
116
108
|
</ul>
|
117
109
|
|
118
110
|
|
119
111
|
<ul>
|
120
112
|
<li>Added an <span class="caps">EC2</span> command shell : ‘ec2sh’ which can be called from anywhere and gives you
|
121
|
-
an interactive irb session with an <span class="caps">EC2</span> connection pre-made for you as @ec2. You can use this
|
122
|
-
to interactively execute any command on <span class="caps">EC2</span> that this library supports. Try @ec2.methods.sort
|
113
|
+
an interactive irb session with an <span class="caps">EC2</span> connection pre-made for you as @ec2. You can use this
|
114
|
+
to interactively execute any command on <span class="caps">EC2</span> that this library supports. Try @ec2.methods.sort
|
123
115
|
or @ec2.describe_images to test it out. You must first setup two shell environment variables
|
124
116
|
which contain your <span class="caps">ACCESS</span>_KEY_ID and <span class="caps">SECRET</span>_ACCESS_KEY for this to work. Otherwise an error
|
125
|
-
will be thrown when you try to start it. This is way cool and shamelessly borrowed from
|
117
|
+
will be thrown when you try to start it. This is way cool and shamelessly borrowed from
|
126
118
|
Marcel Molina’s fine <span class="caps">AWS</span>::S3 library.</li>
|
127
119
|
</ul>
|
128
120
|
|
@@ -186,11 +178,11 @@ Marcel Molina’s fine <span class="caps">AWS</span>::S3 library.</li>
|
|
186
178
|
<h3>Setting up…</h3>
|
187
179
|
|
188
180
|
|
189
|
-
<p>The ‘ec2sh’ and ‘ec2-gem-example.rb’ scripts which will be introduced to you shortly expect your <span class="caps">AWS EC2</span> credentials to
|
190
|
-
be stored as shell environment variables which are accessible to those scripts. This makes them convenient to use whenever
|
191
|
-
you need to do a quick query to see what images you have available to you, whats running now, or to start or stop an
|
192
|
-
instance on <span class="caps">EC2</span>. You’ll find ‘ec2sh’ to be a very handy tool. I’ll describe only the <span class="caps">OS X</span> route for setting up (of course
|
193
|
-
the setup steps will vary depending on your particular system and preferred shell). If you don’t want to
|
181
|
+
<p>The ‘ec2sh’ and ‘ec2-gem-example.rb’ scripts which will be introduced to you shortly expect your <span class="caps">AWS EC2</span> credentials to
|
182
|
+
be stored as shell environment variables which are accessible to those scripts. This makes them convenient to use whenever
|
183
|
+
you need to do a quick query to see what images you have available to you, whats running now, or to start or stop an
|
184
|
+
instance on <span class="caps">EC2</span>. You’ll find ‘ec2sh’ to be a very handy tool. I’ll describe only the <span class="caps">OS X</span> route for setting up (of course
|
185
|
+
the setup steps will vary depending on your particular system and preferred shell). If you don’t want to
|
194
186
|
do it this way, feel free to copy these scripts from the gem dir to any location where you can run them from and modify them directly to include your credentials.</p>
|
195
187
|
|
196
188
|
|
@@ -223,7 +215,7 @@ do it this way, feel free to copy these scripts from the gem dir to any location
|
|
223
215
|
<p>The library exposes one main interface module <pre class='syntax'><span class="constant">EC2</span><span class="punct">::</span><span class="constant">Base</span></pre></p>
|
224
216
|
|
225
217
|
|
226
|
-
<p>This method requires arguments which include your <span class="caps">AWS</span> credentials and it will return an object that you can use to make
|
218
|
+
<p>This method requires arguments which include your <span class="caps">AWS</span> credentials and it will return an object that you can use to make
|
227
219
|
method calls directly against <span class="caps">EC2</span>. All the operations for using the <span class="caps">EC2</span> service, including query string header signing,
|
228
220
|
are handled automatically for you. The connection string will look something like this:</p>
|
229
221
|
|
@@ -233,9 +225,9 @@ are handled automatically for you. The connection string will look something li
|
|
233
225
|
</pre></p>
|
234
226
|
|
235
227
|
|
236
|
-
<p>We have tried to keep the public methods on ‘amazon-ec2’ as close as possible to the <span class="caps">AWS EC2</span> Query <span class="caps">API</span>.
|
237
|
-
This similarity allows you to reference the Query <span class="caps">API</span> Reference in the <a href="http://developer.amazonwebservices.com/connect/kbcategory.jspa?categoryID=84"><span class="caps">EC2</span> Developer Guide</a> and be able to get started right away.
|
238
|
-
In most cases the methods names only differ in how they are presented. e.g. ‘DescribeImages’ becomes ’#describe_images() in Ruby.
|
228
|
+
<p>We have tried to keep the public methods on ‘amazon-ec2’ as close as possible to the <span class="caps">AWS EC2</span> Query <span class="caps">API</span>.
|
229
|
+
This similarity allows you to reference the Query <span class="caps">API</span> Reference in the <a href="http://developer.amazonwebservices.com/connect/kbcategory.jspa?categoryID=84"><span class="caps">EC2</span> Developer Guide</a> and be able to get started right away.
|
230
|
+
In most cases the methods names only differ in how they are presented. e.g. ‘DescribeImages’ becomes ’#describe_images() in Ruby.
|
239
231
|
Feel free to browse the full <a href="http://amazon-ec2.rubyforge.org/rdoc/">RDoc documentation</a> for all classes and methods of ‘amazon-ec2’ if you want more details.</p>
|
240
232
|
|
241
233
|
|
@@ -269,42 +261,42 @@ Feel free to browse the full <a href="http://amazon-ec2.rubyforge.org/rdoc/">RDo
|
|
269
261
|
<p><pre class='syntax'>
|
270
262
|
|
271
263
|
<span class="ident">hostname</span><span class="punct">:/</span><span class="regex">tmp</span><span class="punct">/</span><span class="ident">rails</span><span class="punct">/</span><span class="ident">amazon_test</span> <span class="ident">glenn</span><span class="global">$ </span><span class="ident">ec2sh</span>
|
272
|
-
|
264
|
+
|
273
265
|
<span class="punct">'</span><span class="string">ec2sh</span><span class="punct">'</span> <span class="ident">usage</span> <span class="punct">:</span>
|
274
|
-
<span class="constant">This</span> <span class="ident">is</span> <span class="ident">an</span> <span class="ident">interactive</span> <span class="punct">'</span><span class="string">irb</span><span class="punct">'</span> <span class="ident">command</span> <span class="ident">shell</span> <span class="ident">that</span> <span class="ident">allows</span> <span class="ident">you</span> <span class="ident">to</span> <span class="ident">use</span> <span class="ident">all</span>
|
266
|
+
<span class="constant">This</span> <span class="ident">is</span> <span class="ident">an</span> <span class="ident">interactive</span> <span class="punct">'</span><span class="string">irb</span><span class="punct">'</span> <span class="ident">command</span> <span class="ident">shell</span> <span class="ident">that</span> <span class="ident">allows</span> <span class="ident">you</span> <span class="ident">to</span> <span class="ident">use</span> <span class="ident">all</span>
|
275
267
|
<span class="ident">commands</span> <span class="ident">available</span> <span class="ident">to</span> <span class="ident">the</span> <span class="ident">amazon</span><span class="punct">-</span><span class="ident">ec2</span> <span class="ident">gem</span><span class="punct">.</span> <span class="ident">You</span><span class="punct">'</span><span class="string">ll find this to be a
|
276
268
|
great tool to help you debug issues and practice running commands
|
277
269
|
against the live EC2 servers prior to putting them in your code.
|
278
|
-
|
279
|
-
The EC2 connection is wired to the class instance </span><span class="punct">'</span><span class="attribute">@ec2</span><span class="punct">'</span><span class="string">. Make method calls
|
280
|
-
on this to execute commands on EC2. Adding a #to_s
|
270
|
+
|
271
|
+
The EC2 connection is wired to the class instance </span><span class="punct">'</span><span class="attribute">@ec2</span><span class="punct">'</span><span class="string">. Make method calls
|
272
|
+
on this to execute commands on EC2. Adding a #to_s
|
281
273
|
at the end of any command should give you a full String representation of the
|
282
274
|
response. The #xml data is available for each response
|
283
275
|
which allows you to view the full and complete XML response returned by
|
284
|
-
EC2 without any parsing applied. This is useful for viewing the
|
276
|
+
EC2 without any parsing applied. This is useful for viewing the
|
285
277
|
hierarchy of an entire response in a friendly way (if XML is friendly
|
286
278
|
to you!). Understanding the hierarchy of the XML response is critical
|
287
279
|
to making effective use of this library.
|
288
|
-
|
280
|
+
|
289
281
|
Examples to try:
|
290
|
-
|
282
|
+
|
291
283
|
returns : all ec2 public methods
|
292
284
|
>> @ec2.methods.sort
|
293
|
-
|
285
|
+
|
294
286
|
returns : a string representation of ALL images
|
295
287
|
>> @ec2.describe_images.to_s
|
296
|
-
|
288
|
+
|
297
289
|
returns : an Array of EC2::Response objects, each an EC2 image and its data
|
298
290
|
>> @ec2.describe_images.imagesSet.item
|
299
291
|
>> @ec2.describe_images.imagesSet.item[0] (an OpenStruct of a single item in that array)
|
300
292
|
>> @ec2.describe_images.imagesSet.item[0].to_s (a String representation of that OpenStruct item)
|
301
|
-
|
293
|
+
|
302
294
|
returns : an XML representation of all images
|
303
295
|
>> puts @ec2.describe_images.xml
|
304
|
-
|
296
|
+
|
305
297
|
returns : an XML representation of all images owned by Amazon
|
306
298
|
>> puts @ec2.describe_images(:owner_id => </span><span class="punct">'</span><span class="ident">amazon</span><span class="punct">'</span><span class="string">).xml
|
307
|
-
|
299
|
+
|
308
300
|
>> @ec2.describe_images.imagesSet.item[0].to_s
|
309
301
|
=> "#<EC2::Response:0x100A465B4 imageId=\"ami-018e6b68\" imageLocation=\"rbuilder-online/phonehome-1.5.6-x86_10132.img.manifest.xml\" imageOwnerId=\"099034111737\" imageState=\"available\" isPublic=\"true\" parent=#<EC2::Response:0x100A469A6 ...>>"
|
310
302
|
<span class="normal">
|
@@ -325,14 +317,14 @@ Feel free to browse the full <a href="http://amazon-ec2.rubyforge.org/rdoc/">RDo
|
|
325
317
|
|
326
318
|
<span class="constant">ACCESS_KEY_ID</span> <span class="punct">=</span> <span class="punct">'</span><span class="string">--YOUR AWS ACCESS KEY ID--</span><span class="punct">'</span>
|
327
319
|
<span class="constant">SECRET_ACCESS_KEY</span> <span class="punct">=</span> <span class="punct">'</span><span class="string">--YOUR AWS SECRET ACCESS KEY--</span><span class="punct">'</span>
|
328
|
-
|
320
|
+
|
329
321
|
<span class="ident">ec2</span> <span class="punct">=</span> <span class="constant">EC2</span><span class="punct">::</span><span class="constant">Base</span><span class="punct">.</span><span class="ident">new</span><span class="punct">(</span><span class="symbol">:access_key_id</span> <span class="punct">=></span> <span class="constant">ACCESS_KEY_ID</span><span class="punct">,</span> <span class="symbol">:secret_access_key</span> <span class="punct">=></span> <span class="constant">SECRET_ACCESS_KEY</span><span class="punct">)</span>
|
330
|
-
|
322
|
+
|
331
323
|
<span class="ident">puts</span> <span class="punct">"</span><span class="string">----- listing images owned by 'amazon' -----</span><span class="punct">"</span>
|
332
324
|
<span class="ident">ec2</span><span class="punct">.</span><span class="ident">describe_images</span><span class="punct">(</span><span class="symbol">:owner_id</span> <span class="punct">=></span> <span class="punct">"</span><span class="string">amazon</span><span class="punct">").</span><span class="ident">imagesSet</span><span class="punct">.</span><span class="ident">item</span><span class="punct">.</span><span class="ident">each</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">image</span><span class="punct">|</span>
|
333
325
|
<span class="comment"># OpenStruct objects have members!</span>
|
334
326
|
<span class="ident">image</span><span class="punct">.</span><span class="ident">members</span><span class="punct">.</span><span class="ident">each</span> <span class="keyword">do</span> <span class="punct">|</span><span class="ident">member</span><span class="punct">|</span>
|
335
|
-
<span class="ident">puts</span> <span class="punct">"</span><span class="string"><span class="expr">#{member}</span> => <span class="expr">#{image[member]}</span></span><span class="punct">"</span>
|
327
|
+
<span class="ident">puts</span> <span class="punct">"</span><span class="string"><span class="expr">#{member}</span> => <span class="expr">#{image[member]}</span></span><span class="punct">"</span>
|
336
328
|
<span class="keyword">end</span>
|
337
329
|
<span class="keyword">end</span>
|
338
330
|
</pre></p>
|
@@ -390,7 +382,7 @@ Feel free to browse the full <a href="http://amazon-ec2.rubyforge.org/rdoc/">RDo
|
|
390
382
|
<th>image.imageState<</span><span class="punct">/</span><span class="ident">th</span><span class="punct">></span>
|
391
383
|
<span class="punct"><</span><span class="ident">th</span><span class="punct">></span><span class="ident">image</span><span class="punct">.</span><span class="ident">isPublic</span><span class="punct"></</span><span class="regex">th>
|
392
384
|
<</span><span class="punct">/</span><span class="ident">tr</span><span class="punct">></span>
|
393
|
-
|
385
|
+
|
394
386
|
<span class="punct"><%</span> <span class="keyword">for</span> <span class="ident">image</span> <span class="keyword">in</span> <span class="attribute">@ec2_images_amazon</span> <span class="punct">%></span><span class="string">
|
395
387
|
<tr</span><span class="punct">></span>
|
396
388
|
<span class="punct"><</span><span class="ident">td</span><span class="punct">><%=</span><span class="string">h image.imageId %></td>
|
@@ -419,11 +411,11 @@ Feel free to browse the full <a href="http://amazon-ec2.rubyforge.org/rdoc/">RDo
|
|
419
411
|
<h4>Important notes regarding the structure of <span class="caps">EC2</span>::Response Objects</h4>
|
420
412
|
|
421
413
|
|
422
|
-
<p>One of the key benefits of this new version of the library is that all responses from <span class="caps">EC2</span> are bundled up in
|
423
|
-
a real data structure and no longer require parsing of text. We use an OpenStruct as the parent for the <span class="caps">EC2</span>::Response
|
424
|
-
object and we populate it directly from the <span class="caps">XML</span> given to us by <span class="caps">EC2</span> in response to any command we issue. This means that
|
425
|
-
future changes to the <span class="caps">API</span> and what is returned by <span class="caps">EC2</span> will largely be handled transparently by the gem. This is a huge
|
426
|
-
benefit. What this means though, is that you may have to do a little homework on what actually gets returned by <span class="caps">EC2</span> as <span class="caps">XML</span>.
|
414
|
+
<p>One of the key benefits of this new version of the library is that all responses from <span class="caps">EC2</span> are bundled up in
|
415
|
+
a real data structure and no longer require parsing of text. We use an OpenStruct as the parent for the <span class="caps">EC2</span>::Response
|
416
|
+
object and we populate it directly from the <span class="caps">XML</span> given to us by <span class="caps">EC2</span> in response to any command we issue. This means that
|
417
|
+
future changes to the <span class="caps">API</span> and what is returned by <span class="caps">EC2</span> will largely be handled transparently by the gem. This is a huge
|
418
|
+
benefit. What this means though, is that you may have to do a little homework on what actually gets returned by <span class="caps">EC2</span> as <span class="caps">XML</span>.
|
427
419
|
For example, when you make a #describe_images call in ec2sh to <span class="caps">EC2</span> what you will get back will look like:</p>
|
428
420
|
|
429
421
|
|
@@ -506,7 +498,7 @@ For example, when you make a #describe_images call in ec2sh to <span class="caps
|
|
506
498
|
<h2>Project Info</h2>
|
507
499
|
|
508
500
|
|
509
|
-
<p>This project is managed as a RubyForge project which you can find at <a href="http://amazon-ec2.rubyforge.org/">http://amazon-ec2.rubyforge.org/</a> and this is always the best place to find the latest news, report any bugs, submit feature requests
|
501
|
+
<p>This project is managed as a RubyForge project which you can find at <a href="http://amazon-ec2.rubyforge.org/">http://amazon-ec2.rubyforge.org/</a> and this is always the best place to find the latest news, report any bugs, or submit feature requests. If you are interesting in viewing or working with the source code you can find everything you need at : <a href="http://github.com/grempe/amazon-ec2">http://github.com/grempe/amazon-ec2</a>.</p>
|
510
502
|
|
511
503
|
|
512
504
|
<h2>Learning More</h2>
|
@@ -524,7 +516,7 @@ For example, when you make a #describe_images call in ec2sh to <span class="caps
|
|
524
516
|
<p><a href="http://aws.amazon.com/">Amazon Web Services Home</a>
|
525
517
|
<a href="http://rubyforge.org/projects/amazon-ec2/">Project Home</a>
|
526
518
|
<a href="http://rubyforge.org/frs/?group_id=2753">Downloads</a>
|
527
|
-
<a href="http://
|
519
|
+
<a href="http://github.com/grempe/amazon-ec2">Browse Code</a>
|
528
520
|
<a href="http://rubyforge.org/tracker/?group_id=2753">Report Bugs</a>
|
529
521
|
<a href="http://rubyforge.org/tracker/?group_id=2753">Request Features</a>
|
530
522
|
<a href="http://rubyforge.org/tracker/?group_id=2753">Submit Patches</a></p>
|
@@ -553,7 +545,7 @@ For example, when you make a #describe_images call in ec2sh to <span class="caps
|
|
553
545
|
|
554
546
|
<p>Comments, patches, and bug reports are welcome. Send an email to the address below or use the RubyForge forum for this project.</p>
|
555
547
|
<p class="coda">
|
556
|
-
<a href="mailto:grempe-at-rubyforge-dot-org">Glenn Rempe</a>,
|
548
|
+
<a href="mailto:grempe-at-rubyforge-dot-org">Glenn Rempe</a>, 17th February 2008<br>
|
557
549
|
</p>
|
558
550
|
</div>
|
559
551
|
|
data/website/index.txt
CHANGED
@@ -5,62 +5,56 @@ h2. → 'amazon-ec2'
|
|
5
5
|
h2. About
|
6
6
|
|
7
7
|
Amazon Web Services offers a compute power on demand capability known as the Elastic Compute Cloud (EC2). The server resources in the cloud can be provisioned on demand by making HTTP Query API calls to EC2.
|
8
|
-
|
9
|
-
This 'amazon-ec2' Ruby Gem is an interface library that can be used to interact with the Amazon EC2 system and control server resources on demand from your Ruby scripts, or from Ruby on Rails applications.
|
10
|
-
|
11
|
-
|
12
|
-
h2. Important! : Are you upgrading from an earlier release?
|
13
8
|
|
14
|
-
This
|
15
|
-
|
16
|
-
Any other gems which depended on 'amazon-ec2' < 0.2.0 will also no longer work with the new release. The only project I am aware of that depended on the earlier version of 'amazon-ec2' was 'Capazon'. This project, which allows you to control EC2 from your Capistrano recipies, has now been deprecated and is being reborn as 'Capsize'. I rewrote the code for Capsize with the assistance of the original creator of Capazon; Jesse Newland. Feel free to check out "Capsize":http://capsize.rubyforge.org/ to learn more about this exciting new release!
|
17
|
-
|
18
|
-
While we apologize for not being able to maintain backward compatibility with the original 'amazon-ec2' gem, there were just too many major enhancements that needed to be made and it just was'nt possible. I hope that the new robustness and new features in this new release make any transitional pain worthwhile! Of course the old versions are still out there on RubyForge, and you can still install them if you pass the version string into the gem install command. I just don't recommend it unless you really have to.
|
9
|
+
This 'amazon-ec2' Ruby Gem is an interface library that can be used to interact with the Amazon EC2 system and control server resources on demand from your Ruby scripts, or from Ruby on Rails applications.
|
19
10
|
|
20
11
|
|
21
12
|
h2. What's new?
|
22
13
|
|
23
|
-
This
|
14
|
+
20070217 - This project's source code now only available from our master Git repository at GitHub. The Subversion repository at Rubyforge will be cleared but we'll still publish any new gem versions to Rubyforge so you can still easily install them. Unless you plan to work on the source code this should have no effect on you. Now you can browse, clone or fork from our Git repository at "http://github.com/grempe/amazon-ec2":http://github.com/grempe/amazon-ec2. Please let us know if you have patches you would like us to pull from your git repository.
|
24
15
|
|
25
|
-
|
26
|
-
in this version of the API to the gem (including paid AMI support with product codes, reboot, viewing console output, NAT addressing
|
27
|
-
and more!)
|
16
|
+
This 0.2.0 + series represents a major re-write of this gem and contains contributions from several people who make use of this gem for their own applications. Trust us, its worth the pain of upgrading if you have been using an older version. Some of the major enhancements you will find are:
|
28
17
|
|
29
|
-
*
|
30
|
-
|
31
|
-
|
18
|
+
* Updated API version in the query API request to 2007-08-29, and added all known method calls
|
19
|
+
in this version of the API to the gem (including the new instance types(small, medium, large)).
|
20
|
+
Previous releases have kept pace with changes such as the addition of paid AMI support with
|
21
|
+
product codes, instance reboot, viewing of console output, NAT addressing and more!
|
22
|
+
|
23
|
+
* MAJOR library changes : THESE CHANGES ARE NOT BACKWARD COMPATIBLE!! You will need to update
|
24
|
+
the way in which you make calls, handle responses, and rescue exceptions from this library.
|
25
|
+
If you prefer not to make these changes you can feel free to continue to use the older version
|
32
26
|
of the gem. These older versions however will no longer be maintained.
|
33
27
|
|
34
28
|
* MAJOR refactoring of how methods calls are made. Now all methods are called with a simple hash
|
35
29
|
of arguments and none of them are positional. This feels much more "Ruby'ish".
|
36
30
|
|
37
|
-
* MAJOR refactoring of how responses are returned to users. No longer do you have to call the
|
38
|
-
.parse method, and no longer are you getting back simple arrays of information. Responses
|
39
|
-
now come in the form of OpenStruct objects that contain all of the data for an object in
|
31
|
+
* MAJOR refactoring of how responses are returned to users. No longer do you have to call the
|
32
|
+
.parse method, and no longer are you getting back simple arrays of information. Responses
|
33
|
+
now come in the form of OpenStruct objects that contain all of the data for an object in
|
40
34
|
Enumerable form so you can use iterators (.each, .each_pair, etc). All methods return an EC2::Response object
|
41
35
|
which inherits from OpenStruct. The return data from EC2, which is in XML form, is parsed
|
42
36
|
with XmlSimple and is used to directly construct the return data structure. This allows us
|
43
37
|
to know with some confidence that the data structure returned from AWS will always be consistent
|
44
|
-
with this library's responses. There is also an .xml attribute for each response object that lets you
|
38
|
+
with this library's responses. There is also an .xml attribute for each response object that lets you
|
45
39
|
see the full and complete XML response from AWS if that is useful to you.
|
46
40
|
|
47
41
|
* Added an exception framework which will now throw appropriate Ruby exceptions
|
48
42
|
that match those handed to us by Amazon EC2. ArgumentError exceptions will also
|
49
|
-
be thrown if you are making calls we know to be illegal or malformed. You should rescue
|
50
|
-
these exceptions in your application instead of parsing text responses. All exceptions
|
43
|
+
be thrown if you are making calls we know to be illegal or malformed. You should rescue
|
44
|
+
these exceptions in your application instead of parsing text responses. All exceptions
|
51
45
|
descend from EC2::Error. You can see them all in exceptions.rb in the gem install.
|
52
46
|
|
53
47
|
* Added a full suite of test/spec unit tests which currently cover 100% of the public methods
|
54
|
-
in this library. We have abot 92% code coverage according to rcov. This has greatly enhanced
|
55
|
-
the reliability of the library as well as our confidence in the code.
|
56
|
-
We used to have 0% test coverage. :-/
|
48
|
+
in this library. We have abot 92% code coverage according to rcov. This has greatly enhanced
|
49
|
+
the reliability of the library as well as our confidence in the code.
|
50
|
+
We used to have 0% test coverage. :-/
|
57
51
|
|
58
52
|
* Added an EC2 command shell : 'ec2sh' which can be called from anywhere and gives you
|
59
|
-
an interactive irb session with an EC2 connection pre-made for you as @ec2. You can use this
|
60
|
-
to interactively execute any command on EC2 that this library supports. Try @ec2.methods.sort
|
53
|
+
an interactive irb session with an EC2 connection pre-made for you as @ec2. You can use this
|
54
|
+
to interactively execute any command on EC2 that this library supports. Try @ec2.methods.sort
|
61
55
|
or @ec2.describe_images to test it out. You must first setup two shell environment variables
|
62
56
|
which contain your ACCESS_KEY_ID and SECRET_ACCESS_KEY for this to work. Otherwise an error
|
63
|
-
will be thrown when you try to start it. This is way cool and shamelessly borrowed from
|
57
|
+
will be thrown when you try to start it. This is way cool and shamelessly borrowed from
|
64
58
|
Marcel Molina's fine AWS::S3 library.
|
65
59
|
|
66
60
|
* Removed .parse method as it is no longer needed or wanted.
|
@@ -82,7 +76,7 @@ h4. Gem Dependencies
|
|
82
76
|
The following gems should be installed automatically as part of your install of amazon-ec2. Most of them are testing or build dependencies but they should be painless to install even if you don't plan on running the tests or building this gem manually on your own.
|
83
77
|
|
84
78
|
"XmlSimple":http://xml-simple.rubyforge.org/ (required)
|
85
|
-
|
79
|
+
|
86
80
|
"Mocha":http://mocha.rubyforge.org/ (optional for testing)
|
87
81
|
|
88
82
|
"Rcov":http://eigenclass.org/hiki.rb?rcov (optional for testing)
|
@@ -105,11 +99,11 @@ h2. Using the library
|
|
105
99
|
|
106
100
|
h3. Setting up...
|
107
101
|
|
108
|
-
The 'ec2sh' and 'ec2-gem-example.rb' scripts which will be introduced to you shortly expect your AWS EC2 credentials to
|
109
|
-
be stored as shell environment variables which are accessible to those scripts. This makes them convenient to use whenever
|
110
|
-
you need to do a quick query to see what images you have available to you, whats running now, or to start or stop an
|
111
|
-
instance on EC2. You'll find 'ec2sh' to be a very handy tool. I'll describe only the OS X route for setting up (of course
|
112
|
-
the setup steps will vary depending on your particular system and preferred shell). If you don't want to
|
102
|
+
The 'ec2sh' and 'ec2-gem-example.rb' scripts which will be introduced to you shortly expect your AWS EC2 credentials to
|
103
|
+
be stored as shell environment variables which are accessible to those scripts. This makes them convenient to use whenever
|
104
|
+
you need to do a quick query to see what images you have available to you, whats running now, or to start or stop an
|
105
|
+
instance on EC2. You'll find 'ec2sh' to be a very handy tool. I'll describe only the OS X route for setting up (of course
|
106
|
+
the setup steps will vary depending on your particular system and preferred shell). If you don't want to
|
113
107
|
do it this way, feel free to copy these scripts from the gem dir to any location where you can run them from and modify them directly to include your credentials.
|
114
108
|
|
115
109
|
h4. OS X Setup
|
@@ -134,7 +128,7 @@ h3. The basics...
|
|
134
128
|
|
135
129
|
The library exposes one main interface module <pre syntax="ruby">EC2::Base</pre>
|
136
130
|
|
137
|
-
This method requires arguments which include your AWS credentials and it will return an object that you can use to make
|
131
|
+
This method requires arguments which include your AWS credentials and it will return an object that you can use to make
|
138
132
|
method calls directly against EC2. All the operations for using the EC2 service, including query string header signing,
|
139
133
|
are handled automatically for you. The connection string will look something like this:
|
140
134
|
|
@@ -142,9 +136,9 @@ are handled automatically for you. The connection string will look something li
|
|
142
136
|
@ec2 = EC2::Base.new(:access_key_id => ACCESS_KEY_ID, :secret_access_key => SECRET_ACCESS_KEY)
|
143
137
|
</pre>
|
144
138
|
|
145
|
-
We have tried to keep the public methods on 'amazon-ec2' as close as possible to the AWS EC2 Query API.
|
146
|
-
This similarity allows you to reference the Query API Reference in the "EC2 Developer Guide":http://developer.amazonwebservices.com/connect/kbcategory.jspa?categoryID=84 and be able to get started right away.
|
147
|
-
In most cases the methods names only differ in how they are presented. e.g. 'DescribeImages' becomes '#describe_images() in Ruby.
|
139
|
+
We have tried to keep the public methods on 'amazon-ec2' as close as possible to the AWS EC2 Query API.
|
140
|
+
This similarity allows you to reference the Query API Reference in the "EC2 Developer Guide":http://developer.amazonwebservices.com/connect/kbcategory.jspa?categoryID=84 and be able to get started right away.
|
141
|
+
In most cases the methods names only differ in how they are presented. e.g. 'DescribeImages' becomes '#describe_images() in Ruby.
|
148
142
|
Feel free to browse the full "RDoc documentation":http://amazon-ec2.rubyforge.org/rdoc/ for all classes and methods of 'amazon-ec2' if you want more details.
|
149
143
|
|
150
144
|
|
@@ -171,42 +165,42 @@ If your not in front of a terminal shell now (perhaps you're browsing this site
|
|
171
165
|
<pre syntax="ruby">
|
172
166
|
|
173
167
|
hostname:/tmp/rails/amazon_test glenn$ ec2sh
|
174
|
-
|
168
|
+
|
175
169
|
'ec2sh' usage :
|
176
|
-
This is an interactive 'irb' command shell that allows you to use all
|
170
|
+
This is an interactive 'irb' command shell that allows you to use all
|
177
171
|
commands available to the amazon-ec2 gem. You'll find this to be a
|
178
172
|
great tool to help you debug issues and practice running commands
|
179
173
|
against the live EC2 servers prior to putting them in your code.
|
180
|
-
|
181
|
-
The EC2 connection is wired to the class instance '@ec2'. Make method calls
|
182
|
-
on this to execute commands on EC2. Adding a #to_s
|
174
|
+
|
175
|
+
The EC2 connection is wired to the class instance '@ec2'. Make method calls
|
176
|
+
on this to execute commands on EC2. Adding a #to_s
|
183
177
|
at the end of any command should give you a full String representation of the
|
184
178
|
response. The #xml data is available for each response
|
185
179
|
which allows you to view the full and complete XML response returned by
|
186
|
-
EC2 without any parsing applied. This is useful for viewing the
|
180
|
+
EC2 without any parsing applied. This is useful for viewing the
|
187
181
|
hierarchy of an entire response in a friendly way (if XML is friendly
|
188
182
|
to you!). Understanding the hierarchy of the XML response is critical
|
189
183
|
to making effective use of this library.
|
190
|
-
|
184
|
+
|
191
185
|
Examples to try:
|
192
|
-
|
186
|
+
|
193
187
|
returns : all ec2 public methods
|
194
188
|
>> @ec2.methods.sort
|
195
|
-
|
189
|
+
|
196
190
|
returns : a string representation of ALL images
|
197
191
|
>> @ec2.describe_images.to_s
|
198
|
-
|
192
|
+
|
199
193
|
returns : an Array of EC2::Response objects, each an EC2 image and its data
|
200
194
|
>> @ec2.describe_images.imagesSet.item
|
201
195
|
>> @ec2.describe_images.imagesSet.item[0] (an OpenStruct of a single item in that array)
|
202
196
|
>> @ec2.describe_images.imagesSet.item[0].to_s (a String representation of that OpenStruct item)
|
203
|
-
|
197
|
+
|
204
198
|
returns : an XML representation of all images
|
205
199
|
>> puts @ec2.describe_images.xml
|
206
|
-
|
200
|
+
|
207
201
|
returns : an XML representation of all images owned by Amazon
|
208
202
|
>> puts @ec2.describe_images(:owner_id => 'amazon').xml
|
209
|
-
|
203
|
+
|
210
204
|
>> @ec2.describe_images.imagesSet.item[0].to_s
|
211
205
|
=> "#<EC2::Response:0x100A465B4 imageId=\"ami-018e6b68\" imageLocation=\"rbuilder-online/phonehome-1.5.6-x86_10132.img.manifest.xml\" imageOwnerId=\"099034111737\" imageState=\"available\" isPublic=\"true\" parent=#<EC2::Response:0x100A469A6 ...>>"
|
212
206
|
|
@@ -225,14 +219,14 @@ require 'ec2'
|
|
225
219
|
|
226
220
|
ACCESS_KEY_ID = '--YOUR AWS ACCESS KEY ID--'
|
227
221
|
SECRET_ACCESS_KEY = '--YOUR AWS SECRET ACCESS KEY--'
|
228
|
-
|
222
|
+
|
229
223
|
ec2 = EC2::Base.new(:access_key_id => ACCESS_KEY_ID, :secret_access_key => SECRET_ACCESS_KEY)
|
230
|
-
|
224
|
+
|
231
225
|
puts "----- listing images owned by 'amazon' -----"
|
232
226
|
ec2.describe_images(:owner_id => "amazon").imagesSet.item.each do |image|
|
233
227
|
# OpenStruct objects have members!
|
234
228
|
image.members.each do |member|
|
235
|
-
puts "#{member} => #{image[member]}"
|
229
|
+
puts "#{member} => #{image[member]}"
|
236
230
|
end
|
237
231
|
end
|
238
232
|
</pre>
|
@@ -285,7 +279,7 @@ and then you can show off your EC2 image data with some code in app/views/your_v
|
|
285
279
|
<th>image.imageState</th>
|
286
280
|
<th>image.isPublic</th>
|
287
281
|
</tr>
|
288
|
-
|
282
|
+
|
289
283
|
<% for image in @ec2_images_amazon %>
|
290
284
|
<tr>
|
291
285
|
<td><%=h image.imageId %></td>
|
@@ -313,11 +307,11 @@ and then you can show off your EC2 image data with some code in app/views/your_v
|
|
313
307
|
|
314
308
|
h4. Important notes regarding the structure of EC2::Response Objects
|
315
309
|
|
316
|
-
One of the key benefits of this new version of the library is that all responses from EC2 are bundled up in
|
317
|
-
a real data structure and no longer require parsing of text. We use an OpenStruct as the parent for the EC2::Response
|
318
|
-
object and we populate it directly from the XML given to us by EC2 in response to any command we issue. This means that
|
319
|
-
future changes to the API and what is returned by EC2 will largely be handled transparently by the gem. This is a huge
|
320
|
-
benefit. What this means though, is that you may have to do a little homework on what actually gets returned by EC2 as XML.
|
310
|
+
One of the key benefits of this new version of the library is that all responses from EC2 are bundled up in
|
311
|
+
a real data structure and no longer require parsing of text. We use an OpenStruct as the parent for the EC2::Response
|
312
|
+
object and we populate it directly from the XML given to us by EC2 in response to any command we issue. This means that
|
313
|
+
future changes to the API and what is returned by EC2 will largely be handled transparently by the gem. This is a huge
|
314
|
+
benefit. What this means though, is that you may have to do a little homework on what actually gets returned by EC2 as XML.
|
321
315
|
For example, when you make a #describe_images call in ec2sh to EC2 what you will get back will look like:
|
322
316
|
|
323
317
|
|
@@ -393,7 +387,7 @@ We can always use your help! Do you have Ruby skills? Do you see a bug or enha
|
|
393
387
|
|
394
388
|
h2. Project Info
|
395
389
|
|
396
|
-
This project is managed as a RubyForge project which you can find at "http://amazon-ec2.rubyforge.org/":http://amazon-ec2.rubyforge.org/ and this is always the best place to find the latest news, report any bugs, submit feature requests
|
390
|
+
This project is managed as a RubyForge project which you can find at "http://amazon-ec2.rubyforge.org/":http://amazon-ec2.rubyforge.org/ and this is always the best place to find the latest news, report any bugs, or submit feature requests. If you are interesting in viewing or working with the source code you can find everything you need at : "http://github.com/grempe/amazon-ec2":http://github.com/grempe/amazon-ec2.
|
397
391
|
|
398
392
|
h2. Learning More
|
399
393
|
|
@@ -406,7 +400,7 @@ h3. Websites
|
|
406
400
|
"Amazon Web Services Home":http://aws.amazon.com/
|
407
401
|
"Project Home":http://rubyforge.org/projects/amazon-ec2/
|
408
402
|
"Downloads":http://rubyforge.org/frs/?group_id=2753
|
409
|
-
"Browse Code":http://
|
403
|
+
"Browse Code":http://github.com/grempe/amazon-ec2
|
410
404
|
"Report Bugs":http://rubyforge.org/tracker/?group_id=2753
|
411
405
|
"Request Features":http://rubyforge.org/tracker/?group_id=2753
|
412
406
|
"Submit Patches":http://rubyforge.org/tracker/?group_id=2753
|
@@ -422,7 +416,7 @@ h2. Credits
|
|
422
416
|
The original sample code for this library was provided by Amazon Web Services, LLC. Thanks to them for providing all of us with samples that got this started. This latest version of amazon-ec2 doesn't much resemble the original. They got us going though and thanks to the EC2 team for including Ruby in their plans. We hope to see more AWS Ruby code.
|
423
417
|
|
424
418
|
Thanks to all the great folks who submitted patches and kept this project rolling. I would especially like to thank Sean Knapp, Kevin Clark, and Randy Bias. Your patches and help are much appreciated.
|
425
|
-
|
419
|
+
|
426
420
|
Thanks to Dr. Nic Williams and his great 'NewGem' Ruby Gem Generator. This gem of a Gem helped me package up this code for distribution in a flash! You can find Dr. Nic's NewGem generator at "http://newgem.rubyforge.org/":http://newgem.rubyforge.org/
|
427
421
|
|
428
422
|
|
metadata
CHANGED
@@ -1,33 +1,83 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
|
-
rubygems_version: 0.9.4
|
3
|
-
specification_version: 1
|
4
2
|
name: amazon-ec2
|
5
3
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.2.
|
7
|
-
date: 2007-10-16 00:00:00 -07:00
|
8
|
-
summary: An interface library that allows Ruby or Ruby on Rails applications to easily connect to the HTTP 'Query API' for the Amazon Web Services Elastic Compute Cloud (EC2) and manipulate server instances.
|
9
|
-
require_paths:
|
10
|
-
- lib
|
11
|
-
email: grempe@rubyforge.org
|
12
|
-
homepage: http://amazon-ec2.rubyforge.org
|
13
|
-
rubyforge_project: amazon-ec2
|
14
|
-
description: An interface library that allows Ruby or Ruby on Rails applications to easily connect to the HTTP 'Query API' for the Amazon Web Services Elastic Compute Cloud (EC2) and manipulate server instances.
|
15
|
-
autorequire: EC2
|
16
|
-
default_executable:
|
17
|
-
bindir: bin
|
18
|
-
has_rdoc: true
|
19
|
-
required_ruby_version: !ruby/object:Gem::Version::Requirement
|
20
|
-
requirements:
|
21
|
-
- - ">"
|
22
|
-
- !ruby/object:Gem::Version
|
23
|
-
version: 0.0.0
|
24
|
-
version:
|
4
|
+
version: 0.2.7
|
25
5
|
platform: ruby
|
26
|
-
signing_key:
|
27
|
-
cert_chain:
|
28
|
-
post_install_message:
|
29
6
|
authors:
|
30
7
|
- Glenn Rempe
|
8
|
+
autorequire: EC2
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2008-02-17 00:00:00 -08:00
|
13
|
+
default_executable:
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: xml-simple
|
17
|
+
version_requirement:
|
18
|
+
version_requirements: !ruby/object:Gem::Requirement
|
19
|
+
requirements:
|
20
|
+
- - ">="
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 1.0.11
|
23
|
+
version:
|
24
|
+
- !ruby/object:Gem::Dependency
|
25
|
+
name: mocha
|
26
|
+
version_requirement:
|
27
|
+
version_requirements: !ruby/object:Gem::Requirement
|
28
|
+
requirements:
|
29
|
+
- - ">="
|
30
|
+
- !ruby/object:Gem::Version
|
31
|
+
version: 0.4.0
|
32
|
+
version:
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: test-spec
|
35
|
+
version_requirement:
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 0.3.0
|
41
|
+
version:
|
42
|
+
- !ruby/object:Gem::Dependency
|
43
|
+
name: rcov
|
44
|
+
version_requirement:
|
45
|
+
version_requirements: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - ">="
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: 0.8.0.2
|
50
|
+
version:
|
51
|
+
- !ruby/object:Gem::Dependency
|
52
|
+
name: syntax
|
53
|
+
version_requirement:
|
54
|
+
version_requirements: !ruby/object:Gem::Requirement
|
55
|
+
requirements:
|
56
|
+
- - ">="
|
57
|
+
- !ruby/object:Gem::Version
|
58
|
+
version: 1.0.0
|
59
|
+
version:
|
60
|
+
- !ruby/object:Gem::Dependency
|
61
|
+
name: RedCloth
|
62
|
+
version_requirement:
|
63
|
+
version_requirements: !ruby/object:Gem::Requirement
|
64
|
+
requirements:
|
65
|
+
- - ">="
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: 3.0.4
|
68
|
+
version:
|
69
|
+
description: An interface library that allows Ruby or Ruby on Rails applications to easily connect to the HTTP 'Query API' for the Amazon Web Services Elastic Compute Cloud (EC2) and manipulate server instances.
|
70
|
+
email: grempe@rubyforge.org
|
71
|
+
executables:
|
72
|
+
- ec2-gem-example.rb
|
73
|
+
- ec2sh
|
74
|
+
- setup.rb
|
75
|
+
extensions: []
|
76
|
+
|
77
|
+
extra_rdoc_files:
|
78
|
+
- README.txt
|
79
|
+
- History.txt
|
80
|
+
- License.txt
|
31
81
|
files:
|
32
82
|
- History.txt
|
33
83
|
- License.txt
|
@@ -73,18 +123,9 @@ files:
|
|
73
123
|
- website/javascripts/rounded_corners_lite.inc.js
|
74
124
|
- website/stylesheets/screen.css
|
75
125
|
- website/template.rhtml
|
76
|
-
|
77
|
-
-
|
78
|
-
|
79
|
-
- test/test_EC2_image_attributes.rb
|
80
|
-
- test/test_EC2_images.rb
|
81
|
-
- test/test_EC2_instances.rb
|
82
|
-
- test/test_EC2_keypairs.rb
|
83
|
-
- test/test_EC2_products.rb
|
84
|
-
- test/test_EC2_responses.rb
|
85
|
-
- test/test_EC2_security_groups.rb
|
86
|
-
- test/test_EC2_version.rb
|
87
|
-
- test/test_helper.rb
|
126
|
+
has_rdoc: true
|
127
|
+
homepage: http://amazon-ec2.rubyforge.org
|
128
|
+
post_install_message:
|
88
129
|
rdoc_options:
|
89
130
|
- --quiet
|
90
131
|
- --title
|
@@ -95,70 +136,36 @@ rdoc_options:
|
|
95
136
|
- --main
|
96
137
|
- README.txt
|
97
138
|
- --inline-source
|
98
|
-
|
99
|
-
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
139
|
+
require_paths:
|
140
|
+
- lib
|
141
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - ">="
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: "0"
|
146
|
+
version:
|
147
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
148
|
+
requirements:
|
149
|
+
- - ">="
|
150
|
+
- !ruby/object:Gem::Version
|
151
|
+
version: "0"
|
152
|
+
version:
|
108
153
|
requirements: []
|
109
154
|
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
version: 0.4.0
|
128
|
-
version:
|
129
|
-
- !ruby/object:Gem::Dependency
|
130
|
-
name: test-spec
|
131
|
-
version_requirement:
|
132
|
-
version_requirements: !ruby/object:Gem::Version::Requirement
|
133
|
-
requirements:
|
134
|
-
- - ">="
|
135
|
-
- !ruby/object:Gem::Version
|
136
|
-
version: 0.3.0
|
137
|
-
version:
|
138
|
-
- !ruby/object:Gem::Dependency
|
139
|
-
name: rcov
|
140
|
-
version_requirement:
|
141
|
-
version_requirements: !ruby/object:Gem::Version::Requirement
|
142
|
-
requirements:
|
143
|
-
- - ">="
|
144
|
-
- !ruby/object:Gem::Version
|
145
|
-
version: 0.8.0.2
|
146
|
-
version:
|
147
|
-
- !ruby/object:Gem::Dependency
|
148
|
-
name: syntax
|
149
|
-
version_requirement:
|
150
|
-
version_requirements: !ruby/object:Gem::Version::Requirement
|
151
|
-
requirements:
|
152
|
-
- - ">="
|
153
|
-
- !ruby/object:Gem::Version
|
154
|
-
version: 1.0.0
|
155
|
-
version:
|
156
|
-
- !ruby/object:Gem::Dependency
|
157
|
-
name: RedCloth
|
158
|
-
version_requirement:
|
159
|
-
version_requirements: !ruby/object:Gem::Version::Requirement
|
160
|
-
requirements:
|
161
|
-
- - ">="
|
162
|
-
- !ruby/object:Gem::Version
|
163
|
-
version: 3.0.4
|
164
|
-
version:
|
155
|
+
rubyforge_project: amazon-ec2
|
156
|
+
rubygems_version: 1.0.1
|
157
|
+
signing_key:
|
158
|
+
specification_version: 2
|
159
|
+
summary: An interface library that allows Ruby or Ruby on Rails applications to easily connect to the HTTP 'Query API' for the Amazon Web Services Elastic Compute Cloud (EC2) and manipulate server instances.
|
160
|
+
test_files:
|
161
|
+
- test/test_EC2.rb
|
162
|
+
- test/test_EC2_console.rb
|
163
|
+
- test/test_EC2_image_attributes.rb
|
164
|
+
- test/test_EC2_images.rb
|
165
|
+
- test/test_EC2_instances.rb
|
166
|
+
- test/test_EC2_keypairs.rb
|
167
|
+
- test/test_EC2_products.rb
|
168
|
+
- test/test_EC2_responses.rb
|
169
|
+
- test/test_EC2_security_groups.rb
|
170
|
+
- test/test_EC2_version.rb
|
171
|
+
- test/test_helper.rb
|