rest_connection 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.5
1
+ 0.0.6
@@ -18,7 +18,6 @@ require 'rubygems'
18
18
  require 'json'
19
19
  require 'yaml'
20
20
  require 'cgi'
21
- require 'rest_connection/rightscale/rightscale_api_base'
22
21
  require 'rest_connection/rightscale/rightscale_api_resources'
23
22
  require 'logger'
24
23
 
@@ -152,6 +151,7 @@ module RestConnection
152
151
  begin
153
152
  return JSON.load(res.body)
154
153
  rescue => e
154
+ logger("WARNING: failed to parse HTTP response body with JSON.load!")
155
155
  return res
156
156
  end
157
157
  else
@@ -32,7 +32,9 @@ class AuditEntry
32
32
  while(1)
33
33
  reload
34
34
  connection.logger("state is #{self.state}, waiting for #{state}")
35
- raise "FATAL error, script failed\nSee Audit: #{self.href}" if self.state == 'failed'
35
+ friendly_url = "https://my.rightscale.com/audit_entries/"
36
+ friendly_url += self.href.split(/\//).last
37
+ raise "FATAL error, #{self.summary}\nSee Audit: API:#{self.href}, WWW:<a href='#{friendly_url}'>#{friendly_url}</a>\n" if self.state == 'failed'
36
38
  sleep 5
37
39
  return true if state == self.state
38
40
  end
@@ -0,0 +1,39 @@
1
+ # This file is part of RestConnection
2
+ #
3
+ # RestConnection is free software: you can redistribute it and/or modify
4
+ # it under the terms of the GNU General Public License as published by
5
+ # the Free Software Foundation, either version 3 of the License, or
6
+ # (at your option) any later version.
7
+ #
8
+ # RestConnection is distributed in the hope that it will be useful,
9
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
+ # GNU General Public License for more details.
12
+ #
13
+ # You should have received a copy of the GNU General Public License
14
+ # along with RestConnection. If not, see <http://www.gnu.org/licenses/>.
15
+
16
+ class Ec2SshKeyInternal
17
+ include RightScale::Api::Base
18
+ extend RightScale::Api::BaseExtend
19
+
20
+ include RightScale::Api::Internal
21
+ extend RightScale::Api::InternalExtend
22
+
23
+ def resource_plural_name
24
+ "ec2_ssh_keys"
25
+ end
26
+
27
+ def resource_singular_name
28
+ "ec2_ssh_key"
29
+ end
30
+
31
+ def self.resource_plural_name
32
+ "ec2_ssh_keys"
33
+ end
34
+
35
+ def self.resource_singular_name
36
+ "ec2_ssh_key"
37
+ end
38
+
39
+ end
@@ -0,0 +1,44 @@
1
+ # This file is part of RestConnection
2
+ #
3
+ # RestConnection is free software: you can redistribute it and/or modify
4
+ # it under the terms of the GNU General Public License as published by
5
+ # the Free Software Foundation, either version 3 of the License, or
6
+ # (at your option) any later version.
7
+ #
8
+ # RestConnection is distributed in the hope that it will be useful,
9
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
+ # GNU General Public License for more details.
12
+ #
13
+ # You should have received a copy of the GNU General Public License
14
+ # along with RestConnection. If not, see <http://www.gnu.org/licenses/>.
15
+
16
+ class MultiCloudImageCloudSettingInternal
17
+ include RightScale::Api::Base
18
+ extend RightScale::Api::BaseExtend
19
+ include RightScale::Api::Internal
20
+ extend RightScale::Api::InternalExtend
21
+
22
+ def resource_plural_name
23
+ "multi_cloud_image_cloud_settings"
24
+ end
25
+
26
+ def resource_singular_name
27
+ "multi_cloud_image_cloud_setting"
28
+ end
29
+
30
+ def self.resource_plural_name
31
+ "multi_cloud_image_cloud_settings"
32
+ end
33
+
34
+ def self.resource_singular_name
35
+ "multi_cloud_image_cloud_setting"
36
+ end
37
+
38
+ # override create method, with no reload
39
+ def self.create(opts)
40
+ location = connection.post(self.resource_plural_name, self.resource_singular_name.to_sym => opts)
41
+ newrecord = self.new('href' => location)
42
+ end
43
+
44
+ end
@@ -0,0 +1,38 @@
1
+ # This file is part of RestConnection
2
+ #
3
+ # RestConnection is free software: you can redistribute it and/or modify
4
+ # it under the terms of the GNU General Public License as published by
5
+ # the Free Software Foundation, either version 3 of the License, or
6
+ # (at your option) any later version.
7
+ #
8
+ # RestConnection is distributed in the hope that it will be useful,
9
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
+ # GNU General Public License for more details.
12
+ #
13
+ # You should have received a copy of the GNU General Public License
14
+ # along with RestConnection. If not, see <http://www.gnu.org/licenses/>.
15
+
16
+ class MultiCloudImageInternal
17
+ include RightScale::Api::Base
18
+ extend RightScale::Api::BaseExtend
19
+ include RightScale::Api::Internal
20
+ extend RightScale::Api::InternalExtend
21
+
22
+ def resource_plural_name
23
+ "multi_cloud_images"
24
+ end
25
+
26
+ def resource_singular_name
27
+ "multi_cloud_image"
28
+ end
29
+
30
+ def self.resource_plural_name
31
+ "multi_cloud_images"
32
+ end
33
+
34
+ def self.resource_singular_name
35
+ "multi_cloud_image"
36
+ end
37
+
38
+ end
@@ -13,7 +13,7 @@
13
13
  # You should have received a copy of the GNU General Public License
14
14
  # along with RestConnection. If not, see <http://www.gnu.org/licenses/>.
15
15
 
16
- require 'active_support'
16
+ require 'active_support/inflector'
17
17
 
18
18
  module RightScale
19
19
  module Api
@@ -26,7 +26,7 @@ module RightScale
26
26
  self.to_s.underscore.pluralize
27
27
  end
28
28
 
29
- def resource_singluar_name
29
+ def resource_singular_name
30
30
  self.to_s.underscore
31
31
  end
32
32
  # matches using result of block match expression
@@ -81,7 +81,7 @@ module RightScale
81
81
  end
82
82
 
83
83
  def create(opts)
84
- location = connection.post(self.resource_plural_name, self.resource_singluar_name.to_sym => opts)
84
+ location = connection.post(self.resource_plural_name, self.resource_singular_name.to_sym => opts)
85
85
  newrecord = self.new('href' => location)
86
86
  newrecord.reload
87
87
  newrecord
@@ -151,6 +151,9 @@ module RightScale
151
151
  return @params[mn_dash]
152
152
  elsif @params[mn.to_sym]
153
153
  return @params[mn.to_sym]
154
+ elsif assignment
155
+ @params[mn] = args[0]
156
+ return @params[mn]
154
157
  else
155
158
  return nil
156
159
  #raise "called unknown method #{method_name} with #{args.inspect}"
@@ -158,7 +161,7 @@ module RightScale
158
161
  end
159
162
 
160
163
  def [](name)
161
- try_these = [name, name.gsub(/_/,'-'), name.to_sym]
164
+ try_these = [name, name.to_s.gsub(/_/,'-'), name.to_sym]
162
165
  try_these.each do |t|
163
166
  if @params[t]
164
167
  return @params[name]
@@ -0,0 +1,20 @@
1
+ module RightScale
2
+ module Api
3
+ module Internal
4
+ def connection
5
+ @@little_brother_connection ||= RestConnection::Connection.new
6
+ @@little_brother_connection.settings[:common_headers] = { 'X-API-VERSION' => '0.1' }
7
+ @@little_brother_connection
8
+ end
9
+ end
10
+
11
+ module InternalExtend
12
+ def connection
13
+ @@little_brother_connection ||= RestConnection::Connection.new
14
+ @@little_brother_connection.settings[:common_headers] = { 'X-API-VERSION' => '0.1' }
15
+ @@little_brother_connection
16
+ end
17
+ end
18
+ end
19
+ end
20
+
@@ -13,6 +13,9 @@
13
13
  # You should have received a copy of the GNU General Public License
14
14
  # along with RestConnection. If not, see <http://www.gnu.org/licenses/>.
15
15
 
16
+
17
+ require 'rest_connection/rightscale/rightscale_api_base'
18
+ require 'rest_connection/rightscale/rightscale_api_internal'
16
19
  require 'rest_connection/rightscale/executable'
17
20
  require 'rest_connection/rightscale/server'
18
21
  require 'rest_connection/rightscale/deployment'
@@ -28,4 +31,8 @@ require 'rest_connection/rightscale/rs_internal'
28
31
  require 'rest_connection/rightscale/audit_entry'
29
32
  require 'rest_connection/rightscale/ec2_ebs_volume'
30
33
  require 'rest_connection/rightscale/ec2_ebs_snapshot'
31
-
34
+ require 'rest_connection/rightscale/server_internal'
35
+ require 'rest_connection/rightscale/ec2_ssh_key_internal'
36
+ require 'rest_connection/rightscale/server_template_internal'
37
+ require 'rest_connection/rightscale/multi_cloud_image_internal'
38
+ require 'rest_connection/rightscale/multi_cloud_image_cloud_setting_internal'
@@ -22,7 +22,7 @@ class Server
22
22
 
23
23
  def self.create(opts)
24
24
  create_options = Hash.new
25
- create_options[self.resource_singluar_name.to_sym] = opts
25
+ create_options[self.resource_singular_name.to_sym] = opts
26
26
  create_options["cloud_id"] = opts[:cloud_id] if opts[:cloud_id]
27
27
  location = connection.post(self.resource_plural_name,create_options)
28
28
  newrecord = self.new('href' => location)
@@ -56,7 +56,8 @@ class Server
56
56
  def audit_link
57
57
  # proof of concept for now
58
58
  server_id = self.href.split(/\//).last
59
- "https://my.rightscale.com/servers/#{server_id}#audit_entries"
59
+ audit_href = "https://my.rightscale.com/servers/#{server_id}#audit_entries"
60
+ "<a href='#{audit_href}'>#{audit_href}</a>"
60
61
  end
61
62
 
62
63
  def start
@@ -77,6 +78,17 @@ class Server
77
78
  end
78
79
  end
79
80
 
81
+ # Uses ServerInternal api to start and stop EBS based instances
82
+ def start_ebs
83
+ @server_internal = ServerInternal.new(:href => self.href)
84
+ @server_internal.start
85
+ end
86
+
87
+ def stop_ebs
88
+ @server_internal = ServerInternal.new(:href => self.href)
89
+ @server_internal.stop
90
+ end
91
+
80
92
  # This should be used with v5 images only.
81
93
  # executable to run can be an Executable or RightScript object
82
94
  def run_executable(executable, opts=nil)
@@ -0,0 +1,53 @@
1
+ # This file is part of RestConnection
2
+ #
3
+ # RestConnection is free software: you can redistribute it and/or modify
4
+ # it under the terms of the GNU General Public License as published by
5
+ # the Free Software Foundation, either version 3 of the License, or
6
+ # (at your option) any later version.
7
+ #
8
+ # RestConnection is distributed in the hope that it will be useful,
9
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
+ # GNU General Public License for more details.
12
+ #
13
+ # You should have received a copy of the GNU General Public License
14
+ # along with RestConnection. If not, see <http://www.gnu.org/licenses/>.
15
+
16
+ #
17
+ # You must have special API access to use these internal API calls.
18
+ #
19
+ class ServerInternal
20
+ include RightScale::Api::Base
21
+ extend RightScale::Api::BaseExtend
22
+ include SshHax
23
+
24
+ include RightScale::Api::Internal
25
+ extend RightScale::Api::InternalExtend
26
+
27
+ def resource_plural_name
28
+ "servers"
29
+ end
30
+
31
+ def resource_singular_name
32
+ "server"
33
+ end
34
+
35
+ def self.resource_plural_name
36
+ "servers"
37
+ end
38
+
39
+ def self.resource_singular_name
40
+ "server"
41
+ end
42
+
43
+ def start
44
+ t = URI.parse(self.href)
45
+ return connection.post(t.path + '/start')
46
+ end
47
+
48
+ def stop
49
+ t = URI.parse(self.href)
50
+ connection.post(t.path + '/stop')
51
+ end
52
+
53
+ end
@@ -0,0 +1,58 @@
1
+ # This file is part of RestConnection
2
+ #
3
+ # RestConnection is free software: you can redistribute it and/or modify
4
+ # it under the terms of the GNU General Public License as published by
5
+ # the Free Software Foundation, either version 3 of the License, or
6
+ # (at your option) any later version.
7
+ #
8
+ # RestConnection is distributed in the hope that it will be useful,
9
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
+ # GNU General Public License for more details.
12
+ #
13
+ # You should have received a copy of the GNU General Public License
14
+ # along with RestConnection. If not, see <http://www.gnu.org/licenses/>.
15
+
16
+ class ServerTemplateInternal
17
+ include RightScale::Api::Base
18
+ extend RightScale::Api::BaseExtend
19
+ include RightScale::Api::Internal
20
+ extend RightScale::Api::InternalExtend
21
+
22
+ def resource_plural_name
23
+ "server_templates"
24
+ end
25
+
26
+ def resource_singular_name
27
+ "server_template"
28
+ end
29
+
30
+ def self.resource_plural_name
31
+ "server_templates"
32
+ end
33
+
34
+ def self.resource_singular_name
35
+ "server_template"
36
+ end
37
+
38
+ def add_multi_cloud_image(mci_href)
39
+ t = URI.parse(self.href)
40
+ connection.put(t.path + "/add_multi_cloud_image", :multi_cloud_image_href => mci_href)
41
+ end
42
+
43
+ def delete_multi_cloud_image(mci_href)
44
+ t = URI.parse(self.href)
45
+ connection.put(t.path + "/delete_multi_cloud_image", :multi_cloud_image_href => mci_href)
46
+ end
47
+
48
+ def set_default_multi_cloud_image(mci_href)
49
+ t = URI.parse(self.href)
50
+ connection.put(t.path + "/set_default_multi_cloud_image", :multi_cloud_image_href => mci_href)
51
+ end
52
+
53
+ def multi_cloud_images
54
+ t = URI.parse(self.href)
55
+ connection.get(t.path + "/multi_cloud_images")
56
+ end
57
+
58
+ end
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{rest_connection}
8
- s.version = "0.0.5"
8
+ s.version = "0.0.6"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Jeremy Deininger"]
12
- s.date = %q{2010-04-20}
12
+ s.date = %q{2010-05-19}
13
13
  s.description = %q{provides rest_connection}
14
14
  s.email = %q{jeremy@rubyonlinux.org}
15
15
  s.extra_rdoc_files = [
@@ -39,47 +39,61 @@ Gem::Specification.new do |s|
39
39
  "lib/rest_connection/rightscale/ec2_security_group.rb",
40
40
  "lib/rest_connection/rightscale/ec2_server_array.rb",
41
41
  "lib/rest_connection/rightscale/ec2_ssh_key.rb",
42
+ "lib/rest_connection/rightscale/ec2_ssh_key_internal.rb",
42
43
  "lib/rest_connection/rightscale/executable.rb",
43
44
  "lib/rest_connection/rightscale/instance.rb",
44
45
  "lib/rest_connection/rightscale/multi_cloud_image.rb",
46
+ "lib/rest_connection/rightscale/multi_cloud_image_cloud_setting_internal.rb",
47
+ "lib/rest_connection/rightscale/multi_cloud_image_internal.rb",
45
48
  "lib/rest_connection/rightscale/right_script.rb",
46
49
  "lib/rest_connection/rightscale/rightscale_api_base.rb",
50
+ "lib/rest_connection/rightscale/rightscale_api_internal.rb",
47
51
  "lib/rest_connection/rightscale/rightscale_api_resources.rb",
48
52
  "lib/rest_connection/rightscale/rs_internal.rb",
49
53
  "lib/rest_connection/rightscale/server.rb",
54
+ "lib/rest_connection/rightscale/server_internal.rb",
50
55
  "lib/rest_connection/rightscale/server_template.rb",
56
+ "lib/rest_connection/rightscale/server_template_internal.rb",
51
57
  "lib/rest_connection/rightscale/status.rb",
52
58
  "lib/rest_connection/rightscale/tag.rb",
53
59
  "lib/rest_connection/ssh_hax.rb",
54
60
  "rest_connection.gemspec",
61
+ "spec/ec2_ssh_key_internal_spec.rb",
62
+ "spec/image_jockey.rb",
63
+ "spec/method_missing_spec.rb",
55
64
  "spec/rs_internal_spec.rb",
65
+ "spec/server_internal_spec.rb",
56
66
  "spec/server_spec.rb"
57
67
  ]
58
68
  s.homepage = %q{http://github.com/jeremyd/rest_connection}
59
69
  s.rdoc_options = ["--charset=UTF-8"]
60
70
  s.require_paths = ["lib"]
61
- s.rubygems_version = %q{1.3.6}
71
+ s.rubygems_version = %q{1.3.7}
62
72
  s.summary = %q{lib for restful connections to the rightscale api}
63
73
  s.test_files = [
64
- "spec/server_spec.rb",
74
+ "spec/ec2_ssh_key_internal_spec.rb",
75
+ "spec/image_jockey.rb",
76
+ "spec/method_missing_spec.rb",
65
77
  "spec/rs_internal_spec.rb",
66
- "examples/restart_instance_agent.rb",
78
+ "spec/server_internal_spec.rb",
79
+ "spec/server_spec.rb",
67
80
  "examples/console.rb",
68
- "examples/run_php_chef_sequence.rb",
69
- "examples/set_deployment_template_href.rb",
70
81
  "examples/dev_setup.rb",
71
- "examples/right_scale_ec2_instances_api_test.rb",
72
82
  "examples/relaunch_deployment.rb",
83
+ "examples/restart_instance_agent.rb",
84
+ "examples/right_scale_ec2_instances_api_test.rb",
85
+ "examples/run_ebs_sequence.rb",
73
86
  "examples/run_ebs_terminate.rb",
74
87
  "examples/run_mysql_chef_sequence.rb",
75
- "examples/run_ebs_sequence.rb"
88
+ "examples/run_php_chef_sequence.rb",
89
+ "examples/set_deployment_template_href.rb"
76
90
  ]
77
91
 
78
92
  if s.respond_to? :specification_version then
79
93
  current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
80
94
  s.specification_version = 3
81
95
 
82
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
96
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
83
97
  s.add_runtime_dependency(%q<activesupport>, [">= 0"])
84
98
  s.add_runtime_dependency(%q<net-ssh>, [">= 0"])
85
99
  s.add_runtime_dependency(%q<json>, [">= 0"])
@@ -0,0 +1,20 @@
1
+ require 'rubygems'
2
+ require 'rest_connection'
3
+ require 'spec'
4
+ require 'ruby-debug'
5
+
6
+ describe Ec2SshKeyInternal, "ec2_ssh_key internal api object exercise" do
7
+ before(:all) do
8
+ end
9
+
10
+ it "should find an index of all ssh keys" do
11
+ all_keys = Ec2SshKeyInternal.find(:all)
12
+ all_keys.empty?.should == false
13
+
14
+ default_key = Ec2SshKeyInternal.find_by(:aws_key_name) {|n| n=~ /default/}
15
+ default_key.first.should_not == nil
16
+
17
+ default_key.first.href.should_not == nil
18
+ end
19
+
20
+ end
@@ -0,0 +1,33 @@
1
+ require 'rubygems'
2
+ require 'rest_connection'
3
+ require 'spec'
4
+ require 'ruby-debug'
5
+
6
+ describe MultiCloudImageInternal, "exercises the mci internal api" do
7
+
8
+ it "should do some stuff" do
9
+ some_image_href = "https://moo1.rightscale.com/api/acct/0/ec2_images/ami-0859bb61?cloud_id=1"
10
+ @mci = MultiCloudImageInternal.create(:name => "123deleteme-test test 1234", :description => "woah")
11
+ @mci2 = MultiCloudImageInternal.create(:name => "1234deleteme-test test 12345", :description => "woah")
12
+ @new_setting = MultiCloudImageCloudSettingInternal.create(:multi_cloud_image_href => @mci.href, :cloud_id => 1, :ec2_image_href => some_image_href, :aws_instance_type => "m1.small")
13
+
14
+ @new_st = ServerTemplate.create(:multi_cloud_image_href => @mci.href, :nickname => "123deleteme-test test 123456", :description => "1234")
15
+
16
+ @really_new_st = ServerTemplateInternal.new(:href => @new_st.href)
17
+ @really_new_st.add_multi_cloud_image(@mci2.href)
18
+ @really_new_st.set_default_multi_cloud_image(@mci2.href)
19
+ trash = @really_new_st.multi_cloud_images
20
+ trash.class.should == Array
21
+ trash.first.class.should == Hash
22
+ @really_new_st.delete_multi_cloud_image(@mci.href)
23
+ end
24
+
25
+ after(:all) do
26
+ @new_st.destroy
27
+ #@mci.destroy
28
+ #@mci2.destroy
29
+ end
30
+
31
+
32
+ end
33
+
@@ -0,0 +1,18 @@
1
+ require 'rubygems'
2
+ require 'rest_connection'
3
+ require 'spec'
4
+ require 'ruby-debug'
5
+
6
+ describe Server, "using a server" do
7
+ before(:all) do
8
+ end
9
+
10
+ it "should use method_missing for assignment" do
11
+ @server = Server.find(37842) # hardcoded, you must change to valid server in your account
12
+ @server.max_spot_price = "0.01"
13
+ @server.pricing = "spot"
14
+ @server.save
15
+ @server.max_spot_price.should == "0.01"
16
+ end
17
+
18
+ end
@@ -0,0 +1,19 @@
1
+ require 'rubygems'
2
+ require 'rest_connection'
3
+ require 'spec'
4
+ require 'ruby-debug'
5
+
6
+ describe ServerInternal, "server internal api object exercise" do
7
+ before(:all) do
8
+ end
9
+
10
+ it "should find an internal server" do
11
+ @server = Server.find(745582)
12
+ # @server.start
13
+ # @server.wait_for_state("operational")
14
+ @server.stop_ebs
15
+ @server.wait_for_state("stopped")
16
+ @server.start_ebs
17
+ end
18
+
19
+ end
metadata CHANGED
@@ -1,12 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rest_connection
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 19
4
5
  prerelease: false
5
6
  segments:
6
7
  - 0
7
8
  - 0
8
- - 5
9
- version: 0.0.5
9
+ - 6
10
+ version: 0.0.6
10
11
  platform: ruby
11
12
  authors:
12
13
  - Jeremy Deininger
@@ -14,16 +15,18 @@ autorequire:
14
15
  bindir: bin
15
16
  cert_chain: []
16
17
 
17
- date: 2010-04-20 00:00:00 +00:00
18
+ date: 2010-05-19 00:00:00 -07:00
18
19
  default_executable:
19
20
  dependencies:
20
21
  - !ruby/object:Gem::Dependency
21
22
  name: activesupport
22
23
  prerelease: false
23
24
  requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
24
26
  requirements:
25
27
  - - ">="
26
28
  - !ruby/object:Gem::Version
29
+ hash: 3
27
30
  segments:
28
31
  - 0
29
32
  version: "0"
@@ -33,9 +36,11 @@ dependencies:
33
36
  name: net-ssh
34
37
  prerelease: false
35
38
  requirement: &id002 !ruby/object:Gem::Requirement
39
+ none: false
36
40
  requirements:
37
41
  - - ">="
38
42
  - !ruby/object:Gem::Version
43
+ hash: 3
39
44
  segments:
40
45
  - 0
41
46
  version: "0"
@@ -45,9 +50,11 @@ dependencies:
45
50
  name: json
46
51
  prerelease: false
47
52
  requirement: &id003 !ruby/object:Gem::Requirement
53
+ none: false
48
54
  requirements:
49
55
  - - ">="
50
56
  - !ruby/object:Gem::Version
57
+ hash: 3
51
58
  segments:
52
59
  - 0
53
60
  version: "0"
@@ -85,20 +92,30 @@ files:
85
92
  - lib/rest_connection/rightscale/ec2_security_group.rb
86
93
  - lib/rest_connection/rightscale/ec2_server_array.rb
87
94
  - lib/rest_connection/rightscale/ec2_ssh_key.rb
95
+ - lib/rest_connection/rightscale/ec2_ssh_key_internal.rb
88
96
  - lib/rest_connection/rightscale/executable.rb
89
97
  - lib/rest_connection/rightscale/instance.rb
90
98
  - lib/rest_connection/rightscale/multi_cloud_image.rb
99
+ - lib/rest_connection/rightscale/multi_cloud_image_cloud_setting_internal.rb
100
+ - lib/rest_connection/rightscale/multi_cloud_image_internal.rb
91
101
  - lib/rest_connection/rightscale/right_script.rb
92
102
  - lib/rest_connection/rightscale/rightscale_api_base.rb
103
+ - lib/rest_connection/rightscale/rightscale_api_internal.rb
93
104
  - lib/rest_connection/rightscale/rightscale_api_resources.rb
94
105
  - lib/rest_connection/rightscale/rs_internal.rb
95
106
  - lib/rest_connection/rightscale/server.rb
107
+ - lib/rest_connection/rightscale/server_internal.rb
96
108
  - lib/rest_connection/rightscale/server_template.rb
109
+ - lib/rest_connection/rightscale/server_template_internal.rb
97
110
  - lib/rest_connection/rightscale/status.rb
98
111
  - lib/rest_connection/rightscale/tag.rb
99
112
  - lib/rest_connection/ssh_hax.rb
100
113
  - rest_connection.gemspec
114
+ - spec/ec2_ssh_key_internal_spec.rb
115
+ - spec/image_jockey.rb
116
+ - spec/method_missing_spec.rb
101
117
  - spec/rs_internal_spec.rb
118
+ - spec/server_internal_spec.rb
102
119
  - spec/server_spec.rb
103
120
  has_rdoc: true
104
121
  homepage: http://github.com/jeremyd/rest_connection
@@ -110,36 +127,44 @@ rdoc_options:
110
127
  require_paths:
111
128
  - lib
112
129
  required_ruby_version: !ruby/object:Gem::Requirement
130
+ none: false
113
131
  requirements:
114
132
  - - ">="
115
133
  - !ruby/object:Gem::Version
134
+ hash: 3
116
135
  segments:
117
136
  - 0
118
137
  version: "0"
119
138
  required_rubygems_version: !ruby/object:Gem::Requirement
139
+ none: false
120
140
  requirements:
121
141
  - - ">="
122
142
  - !ruby/object:Gem::Version
143
+ hash: 3
123
144
  segments:
124
145
  - 0
125
146
  version: "0"
126
147
  requirements: []
127
148
 
128
149
  rubyforge_project:
129
- rubygems_version: 1.3.6
150
+ rubygems_version: 1.3.7
130
151
  signing_key:
131
152
  specification_version: 3
132
153
  summary: lib for restful connections to the rightscale api
133
154
  test_files:
134
- - spec/server_spec.rb
155
+ - spec/ec2_ssh_key_internal_spec.rb
156
+ - spec/image_jockey.rb
157
+ - spec/method_missing_spec.rb
135
158
  - spec/rs_internal_spec.rb
136
- - examples/restart_instance_agent.rb
159
+ - spec/server_internal_spec.rb
160
+ - spec/server_spec.rb
137
161
  - examples/console.rb
138
- - examples/run_php_chef_sequence.rb
139
- - examples/set_deployment_template_href.rb
140
162
  - examples/dev_setup.rb
141
- - examples/right_scale_ec2_instances_api_test.rb
142
163
  - examples/relaunch_deployment.rb
164
+ - examples/restart_instance_agent.rb
165
+ - examples/right_scale_ec2_instances_api_test.rb
166
+ - examples/run_ebs_sequence.rb
143
167
  - examples/run_ebs_terminate.rb
144
168
  - examples/run_mysql_chef_sequence.rb
145
- - examples/run_ebs_sequence.rb
169
+ - examples/run_php_chef_sequence.rb
170
+ - examples/set_deployment_template_href.rb