auser-poolparty 0.2.89 → 0.2.90

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Manifest.txt CHANGED
@@ -54,6 +54,7 @@ bin/server-write-new-nodes
54
54
  config/hoe.rb
55
55
  config/requirements.rb
56
56
  examples/basic.rb
57
+ examples/deploy.rb
57
58
  examples/plugin_without_plugin_directory.rb
58
59
  examples/poolparty.rb
59
60
  generators/poolspec/USAGE
@@ -178,6 +179,7 @@ lib/poolparty/base_packages/poolparty.rb
178
179
  lib/poolparty/base_packages/ruby.rb
179
180
  lib/poolparty/base_packages/runit.rb
180
181
  lib/poolparty/capistrano.rb
182
+ lib/poolparty/capistrano/cloud_tasks.rb
181
183
  lib/poolparty/config/postlaunchmessage.txt
182
184
  lib/poolparty/core/array.rb
183
185
  lib/poolparty/core/class.rb
@@ -209,6 +211,7 @@ lib/poolparty/extra/deployments.rb
209
211
  lib/poolparty/helpers/binary.rb
210
212
  lib/poolparty/helpers/console.rb
211
213
  lib/poolparty/helpers/display.rb
214
+ lib/poolparty/helpers/loading.rb
212
215
  lib/poolparty/helpers/nice_printer.rb
213
216
  lib/poolparty/helpers/optioner.rb
214
217
  lib/poolparty/helpers/ruberl.rb
data/PostInstall.txt CHANGED
@@ -1,4 +1,4 @@
1
- Get ready to jump in the pool, you just installed PoolParty! (Updated at 16:58 12/16/08)
1
+ Get ready to jump in the pool, you just installed PoolParty! (Updated at 13:28 12/18/08)
2
2
 
3
3
  To get started, run the generator:
4
4
 
data/bin/cloud-add-access CHANGED
@@ -10,7 +10,7 @@ end
10
10
 
11
11
  @instance_number = (o.num || 0 ).to_i
12
12
 
13
- if o.unflagged_args.length == 1
13
+ if o.unflagged_args.length > 1
14
14
  @file = o.unflagged_args.pop
15
15
  else
16
16
  puts header("Error")
@@ -24,4 +24,5 @@ EOE
24
24
  vputs "** Building messenger **", o
25
25
  vputs "Running command #{cmd.runnable}", o
26
26
 
27
- out = %x[#{cmd.runnable}]
27
+ beams_not_running = %x[ps aux | grep beam | grep master].nil?
28
+ out = %x[#{cmd.runnable}] if beams_not_running
@@ -0,0 +1,5 @@
1
+ set :keep_releases, 5
2
+
3
+ task :development do
4
+ role :littleye_web, cloud(:littleye_web).ip
5
+ end
@@ -21,7 +21,7 @@ class PoolspecGenerator < RubiGen::Base
21
21
  m.directory ''
22
22
  BASEDIRS.each { |path| m.directory path }
23
23
 
24
- m.template "pool_spec_template.erb", "#{@name}.pool"
24
+ m.template "pool_spec_template.erb", "clouds.pool"
25
25
  # Create stubs
26
26
  # m.template "template.rb", "some_file_after_erb.rb"
27
27
  # m.template_copy_each ["template.rb", "template2.rb"]
data/lib/poolparty.rb CHANGED
@@ -1,8 +1,7 @@
1
- require 'rubygems'
2
-
3
1
  # Load required gems
2
+ $:.unshift("/Users/auser/Development/open-source/ruby/net-ssh/lib")
4
3
  @required_software = Array.new
5
- %w(activesupport ftools logging resolv ruby2ruby digest/sha2 open3).each do |lib|
4
+ %w(rubygems activesupport ftools logging resolv ruby2ruby digest/sha2).each do |lib|
6
5
  begin
7
6
  require lib
8
7
  rescue Exception => e
@@ -55,9 +54,12 @@ module PoolParty
55
54
  def log
56
55
  @logger ||= make_new_logger
57
56
  end
58
-
57
+ def reset!
58
+ $pools = $clouds = $plugins = @describe_instances = nil
59
+ end
59
60
  class PoolParty
60
61
  def initialize(spec)
62
+ reset!
61
63
  Script.inflate(spec) if spec
62
64
  end
63
65
  end
@@ -89,4 +91,6 @@ module PoolParty
89
91
  require file
90
92
  end
91
93
  end
92
- end
94
+ end
95
+
96
+ PoolParty.reset!
@@ -6,8 +6,6 @@ module PoolParty
6
6
  execute_on_master do
7
7
  has_package({:name => "haproxy"})
8
8
 
9
- # Service is required
10
- has_service(:name => "haproxy", :ensures => "running", :hasrestart => true)
11
9
  # Restart sysklogd after we update the haproxy.log
12
10
  has_service(:name => "sysklogd")
13
11
 
@@ -25,7 +23,9 @@ module PoolParty
25
23
  has_line_in_file("SYSLOGD=\"-r\"", "/etc/default/syslogd")
26
24
  has_line_in_file("local0.* /var/log/haproxy.log", "/etc/syslog.conf", {:notify => get_service("sysklogd")})
27
25
 
28
- # has_exec(:name => "reloadhaproxy", :command => "/etc/init.d/haproxy reload", :requires => get_package("haproxy"))
26
+ has_exec(:name => "reloadhaproxy", :command => "/etc/init.d/haproxy reload", :requires => get_package("haproxy"))
27
+ # Service is required
28
+ has_service(:name => "haproxy", :ensures => "running", :hasrestart => true, :notify => get_exec("reloadhaproxy"))
29
29
 
30
30
  # These can also be passed in via hash
31
31
  has_remotefile(:name => "/etc/haproxy.cfg") do
@@ -59,10 +59,11 @@ module PoolParty
59
59
  end
60
60
 
61
61
  # execute_on_node do
62
- has_cron(:name => "node puppetd runner", :user => Base.user, :minute => "*/15") do
62
+ has_cron(:name => "node puppetd runner", :user => Base.user, :minute => "*/10") do
63
63
  requires get_gempackage("poolparty")
64
64
  command "/usr/bin/puppetrunner"
65
65
  end
66
+ has_user(:name => user)
66
67
  # end
67
68
 
68
69
  # end
@@ -1,10 +1,53 @@
1
+ $:.unshift(File.join(File.dirname(__FILE__)))
2
+ require "poolparty"
3
+ require "poolpartycl"
4
+
1
5
  module PoolParty
2
6
  module Capistrano
3
7
 
4
- def set_cloud(cld=nil)
5
- raise unless cld
6
- @cloud = cld
8
+ $cap_clouds = {}
9
+
10
+ def set_poolparty_file(file)
11
+ load_pool file
12
+ end
13
+
14
+ def set_cloud(name)
15
+ cld = PoolParty::Cloud.cloud(name)
16
+ if cld && !cloud_retrieved_already?
17
+ $cap_clouds[name] = cld
18
+ @cloud = cld
19
+ instance_eval <<-EOE
20
+ ssh_options[:keys] = [ '#{cld.full_keypair_basename_path}' ]
21
+ set :user, '#{cld.user}'
22
+ set :username, "#{cld.user}"
23
+ ssh_options[:forward_agent] = true
24
+ EOE
25
+ end
26
+ cld
27
+ end
28
+
29
+ def cloud_retrieved_already?
30
+ $cap_clouds.key?(name)
31
+ end
32
+ def get_cloud(name)
33
+ set_cloud(name)
7
34
  end
35
+
36
+ def cloud_master(name)
37
+ get_cloud(name).ip
38
+ end
39
+
40
+ def set_role_for_all_instances(role, name)
41
+ ips = get_cloud(name).list_of_running_instances.map {|ri| ri.ip }
42
+ ips.each {|ip| send :role, role.to_sym, "#{ip}"}
43
+ end
44
+ end
45
+ end
46
+
47
+ module Capistrano
48
+ class Configuration
49
+ include ::PoolParty::Capistrano
8
50
 
51
+ # Dir["#{::File.dirname(__FILE__)}/capistrano/*.rb"].each {|f| pload f }
9
52
  end
10
53
  end
@@ -0,0 +1,10 @@
1
+ Capistrano::Configuration.instance(:must_exist).load do
2
+ namespace(:cloud_tasks) do
3
+ desc "List running clouds"
4
+ task :list do
5
+ cmd = "cloud-list -n #{cloud.name}"
6
+ puts cmd
7
+ # %x[cmd]
8
+ end
9
+ end
10
+ end
@@ -1,7 +1,25 @@
1
1
  =begin rdoc
2
2
  Kernel overloads
3
3
  =end
4
+
4
5
  module Kernel
6
+ def get_latest_caller
7
+ returning Array.new do |arr|
8
+ callstack.size.times {|i| arr << callstack[i][0] unless callstack[i][0] =~ /lib\/poolparty/ }
9
+ end.first
10
+ end
11
+ def callstack( level = 1 )
12
+ call_str_array = caller(level)
13
+ stack = []
14
+ call_str_array.each{ |call_str|
15
+ file, lineno, method = call_str.split(':')
16
+ if method =~ /in `(.*)'/ then
17
+ method = $1.intern()
18
+ end
19
+ stack << [file, lineno.to_i, method]
20
+ }
21
+ stack
22
+ end
5
23
  # Nice wait instead of sleep
6
24
  def wait(time=5)
7
25
  sleep time.is_a?(String) ? eval(time) : time
@@ -27,7 +27,7 @@ class Object
27
27
  self
28
28
  end
29
29
  def send_if_method(v, *args)
30
- if (v.nil? || v.to_s.empty? || v.is_a?(Array) || v.is_a?(Integer))
30
+ if (v.nil? || v.to_s.empty? || v.is_a?(Array) || v.is_a?(Integer))# && !v.is_a?(Symbol))#)v.is_a?(String)
31
31
  v
32
32
  else
33
33
  vs = v.to_s.to_sym
@@ -14,6 +14,9 @@ class String
14
14
  def ^(h={})
15
15
  self.gsub(/:([\w]+)/) {h[$1.to_sym] if h.include?($1.to_sym)}
16
16
  end
17
+ def grab_filename_from_caller_trace
18
+ self.gsub(/\.rb(.*)/, '.rb')
19
+ end
17
20
  def arrayable
18
21
  self.strip.split(/\n/)
19
22
  end
@@ -2,10 +2,11 @@ require "ftools"
2
2
  module PoolParty
3
3
 
4
4
  # Load a file that contains a pool into memory
5
- def load_pool(filename)
6
-
5
+ def load_pool(filename=nil)
6
+ filename = Dir["#{Dir.pwd}/**/*.rb"].select {|f| ::File.basename(f) == "clouds.rb" }.first unless filename
7
+
7
8
  unless filename && ::File.readable?(filename)
8
- puts "Please specify your cloud with -s, move it to ./clouds.pool or in your POOL_SPEC environment variable"
9
+ puts "Please specify your cloud with -s, move it to ./clouds.rb or in your POOL_SPEC environment variable"
9
10
  exit(1)
10
11
  else
11
12
  $pool_specfile = filename
@@ -42,14 +43,14 @@ module PoolParty
42
43
  # These are the locations the spec file can be before the cloud
43
44
  # aborts because it cannot load the cloud
44
45
  def get_existing_spec_location
45
- [
46
+ [
46
47
  "#{Base.remote_storage_path}/#{Base.default_specfile_name}",
47
- "#{Base.default_specfile_name}",
48
- ENV["POOL_SPEC"],
49
- "#{Base.storage_directory}/#{Base.default_specfile_name}",
50
- "#{Base.base_config_directory}/#{Base.default_specfile_name}",
51
- "#{Base.default_project_specfile_name}"
52
- ].reject {|a| a.nil?}.reject do |f|
48
+ "#{Base.default_specfile_name}",
49
+ "#{Base.base_config_directory}/#{Base.default_specfile_name}",
50
+ Dir["#{Dir.pwd}/*/clouds.rb"],
51
+ ENV["POOL_SPEC"],
52
+ "#{Base.storage_directory}/#{Base.default_specfile_name}"
53
+ ].flatten.reject {|a| a.nil?}.reject do |f|
53
54
  f unless ::File.readable?(f)
54
55
  end.first
55
56
  end
@@ -0,0 +1,4 @@
1
+ module PoolParty
2
+ module Loading
3
+ end
4
+ end
@@ -109,7 +109,7 @@ module PoolParty
109
109
  self.loaded_pools extract_pool_from_options(self)
110
110
 
111
111
  reject_junk_options!
112
- raise CloudNotFoundException.new("Please specify your cloud with -s, move it to ./clouds.pool or in your POOL_SPEC environment variable") unless loaded_clouds && !loaded_clouds.empty?
112
+ raise CloudNotFoundException.new("Please specify your cloud with -s, move it to ./clouds.rb or in your POOL_SPEC environment variable") unless loaded_clouds && !loaded_clouds.empty?
113
113
  loaded_pools.each do |pl|
114
114
  pl.configure(self.options)
115
115
  end
@@ -5,7 +5,7 @@ module PoolParty
5
5
 
6
6
  def plugin_directory(*args)
7
7
  args = ["#{::File.expand_path(Dir.pwd)}/plugins"] if args.empty?
8
- args.each {|arg| Dir["#{arg}/*/*.rb"].each {|f| require f rescue "" }}
8
+ args.each {|arg| Dir["#{arg}/*/*.rb"].each {|f| require f }}
9
9
  end
10
10
 
11
11
  # Store block
@@ -39,15 +39,15 @@ module PoolParty
39
39
 
40
40
  def setup_dev
41
41
  return true if ::File.exists?("#{remote_keypair_path}") || master.nil?
42
- unless ::File.exists?("#{full_keypair_basename_path}.pub")
43
- cmd = "scp #{scp_array.join(" ")} #{Base.user}@#{master.ip}:.ssh/authorized_keys #{full_keypair_basename_path}.pub"
44
- vputs "Running #{cmd}"
45
- if %x[hostname].chomp == "master"
46
- Kernel.system("cat ~/.ssh/authorized_keys > #{full_keypair_basename_path}.pub")
47
- else
48
- Kernel.system(cmd)
49
- end
50
- end
42
+ # unless ::File.exists?("#{full_keypair_basename_path}.pub")
43
+ # cmd = "scp #{scp_array.join(" ")} #{Base.user}@#{master.ip}:.ssh/authorized_keys #{full_keypair_basename_path}.pub"
44
+ # vputs "Running #{cmd}"
45
+ # if %x[hostname].chomp == "master"
46
+ # Kernel.system("cat ~/.ssh/authorized_keys > #{full_keypair_basename_path}.pub")
47
+ # else
48
+ # Kernel.system(cmd)
49
+ # end
50
+ # end
51
51
  end
52
52
 
53
53
  def full_keypair_path
@@ -57,9 +57,6 @@ module PoolParty
57
57
  ::File.expand_path(keypair_path)
58
58
  end
59
59
  end
60
- def full_pub_keypair_path
61
- @full_pub_keypair_path ||= ::File.expand_path("#{full_keypair_basename_path}.pub")
62
- end
63
60
  def full_keypair_basename_path
64
61
  dir = ::File.dirname(full_keypair_path)
65
62
  basename = ::File.basename(full_keypair_path, ::File.extname(full_keypair_path))
@@ -83,7 +83,7 @@ module PoolParty
83
83
  def self.puppet_rerun_commad
84
84
  puppet_runner_command
85
85
  end
86
- def cloud
86
+ def my_cloud
87
87
  @pa = parent
88
88
  while !(@pa.is_a?(PoolParty::Cloud::Cloud) || @pa.nil? || @pa == self)
89
89
  @pa = @pa.parent
@@ -91,7 +91,7 @@ module PoolParty
91
91
  @pa
92
92
  end
93
93
  def hosts_file_listing_for(cl)
94
- string = (cl.name == cloud.name) ? "#{name}.#{cloud.name}\t#{name}" : "#{name}.#{cloud.name}"
94
+ string = (cl.name == cloud.name) ? "#{name}.#{my_cloud.name}\t#{name}" : "#{name}.#{my_cloud.name}"
95
95
  "#{internal_ip}\t#{string}"
96
96
  end
97
97
  end
@@ -80,6 +80,10 @@ module PoolParty
80
80
  def list_of_nonterminated_instances(list = remote_instances_list)
81
81
  list.reject {|i| i.terminating? || i.terminated? }
82
82
  end
83
+ # We'll stub the ip to be the master ip for ease and accessibility
84
+ def ip
85
+ master.ip
86
+ end
83
87
  # get the master instance
84
88
  def master
85
89
  get_instance_by_number(0)
@@ -20,8 +20,7 @@ module PoolParty
20
20
  :template_directory => "templates",
21
21
  :template_path => "/var/lib/puppet/templates",
22
22
  :module_path => "/etc/puppet/modules/poolparty",
23
- :default_specfile_name => "clouds.pool",
24
- :default_project_specfile_name => "spec/clouds.pool",
23
+ :default_specfile_name => "clouds.rb",
25
24
  :port => "80",
26
25
  :forwarding_port => "8080",
27
26
  :proxy_mode => "http",
@@ -14,6 +14,10 @@ module PoolParty
14
14
  pl.options.merge!(opts) if pl.options
15
15
  pl.run_in_context &block if block
16
16
  end
17
+
18
+ def set_pool_specfile(filename)
19
+ $pool_specfile = filename unless $pool_specfile
20
+ end
17
21
 
18
22
  def reset!
19
23
  $pools = $clouds = $plugins = @describe_instances = nil
@@ -34,6 +38,7 @@ module PoolParty
34
38
  })
35
39
 
36
40
  def initialize(name,&block)
41
+ set_pool_specfile get_latest_caller
37
42
  setup_defaults
38
43
  @pool_name = name
39
44
  @pool_name.freeze
@@ -46,7 +51,7 @@ module PoolParty
46
51
  end
47
52
 
48
53
  def setup_defaults
49
- plugin_directory "#{::File.dirname(pool_specfile ? pool_specfile : Dir.pwd)}/plugins"
54
+ plugin_directory "#{pool_specfile ? ::File.dirname(pool_specfile) : Dir.pwd}/plugins"
50
55
  PoolParty::Extra::Deployments.include_deployments "#{Dir.pwd}/deployments"
51
56
  end
52
57
 
@@ -65,7 +65,7 @@ module PoolParty
65
65
  def loaded
66
66
  create_config
67
67
  end
68
-
68
+
69
69
  def set_poolparty_roles
70
70
  returning Array.new do |arr|
71
71
  arr << "role 'master.#{@cloud.name}'.to_sym, '#{@cloud.master.ip}'"
@@ -33,9 +33,14 @@ module Capistrano
33
33
  parent.provisioner
34
34
  end
35
35
 
36
- def cloud
37
- parent.cloud
38
- end
36
+ def cloud(name=nil)
37
+ puts "name: #{name}"
38
+ name ? get_cloud(name) : parent.cloud
39
+ end
40
+
41
+ def get_cloud(name)
42
+ PoolParty::Cloud.cloud(name)
43
+ end
39
44
 
40
45
  def method_missing(sym, *args, &block)
41
46
  if parent.respond_to?(sym)
@@ -136,7 +136,7 @@ aptitude update -y
136
136
  def setup_poolparty_base_structure
137
137
  run <<-EOR
138
138
  cp #{remote_storage_path}/#{key_file_locations.first} "#{base_config_directory}/.ppkeys" &&
139
- mv #{remote_storage_path}/#{default_specfile_name} #{base_config_directory}/
139
+ mv #{remote_storage_path}/#{default_specfile_name} #{base_config_directory}/#{default_specfile_name}
140
140
  EOR
141
141
  end
142
142
 
@@ -2,7 +2,7 @@ module PoolParty
2
2
  module VERSION #:nodoc:
3
3
  MAJOR = 0
4
4
  MINOR = 2
5
- TINY = 89
5
+ TINY = 90
6
6
 
7
7
  STRING = [MAJOR, MINOR, TINY].join('.')
8
8
  end
data/poolparty.gemspec CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: poolparty
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.89
4
+ version: 0.2.90
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ari Lerner
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-12-16 00:00:00 -08:00
12
+ date: 2008-12-18 00:00:00 -08:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -170,6 +170,7 @@ files:
170
170
  - config/hoe.rb
171
171
  - config/requirements.rb
172
172
  - examples/basic.rb
173
+ - examples/deploy.rb
173
174
  - examples/plugin_without_plugin_directory.rb
174
175
  - examples/poolparty.rb
175
176
  - generators/poolspec/USAGE
@@ -294,6 +295,7 @@ files:
294
295
  - lib/poolparty/base_packages/ruby.rb
295
296
  - lib/poolparty/base_packages/runit.rb
296
297
  - lib/poolparty/capistrano.rb
298
+ - lib/poolparty/capistrano/cloud_tasks.rb
297
299
  - lib/poolparty/config/postlaunchmessage.txt
298
300
  - lib/poolparty/core/array.rb
299
301
  - lib/poolparty/core/class.rb
@@ -325,6 +327,7 @@ files:
325
327
  - lib/poolparty/helpers/binary.rb
326
328
  - lib/poolparty/helpers/console.rb
327
329
  - lib/poolparty/helpers/display.rb
330
+ - lib/poolparty/helpers/loading.rb
328
331
  - lib/poolparty/helpers/nice_printer.rb
329
332
  - lib/poolparty/helpers/optioner.rb
330
333
  - lib/poolparty/helpers/ruberl.rb
@@ -532,7 +535,7 @@ files:
532
535
  has_rdoc: true
533
536
  homepage: http://poolparty.rubyforge.org
534
537
  post_install_message: |-
535
- Get ready to jump in the pool, you just installed PoolParty! (Updated at 16:58 12/16/08)
538
+ Get ready to jump in the pool, you just installed PoolParty! (Updated at 13:28 12/18/08)
536
539
 
537
540
  To get started, run the generator:
538
541
 
@@ -6,7 +6,10 @@ reset!
6
6
 
7
7
  describe "Console" do
8
8
  before(:each) do
9
- ::File.stub!(:readable?).with("pop").and_return true
9
+ ::File.stub!(:readable?).and_return true
10
+ Dir.stub!(:pwd).and_return "/flop"
11
+ Dir.stub!(:[]).and_return []
12
+ Dir.stub!(:[]).with("/flop/**/*.rb").and_return ["clouds.rb"]
10
13
  end
11
14
  describe "load_pool" do
12
15
  before(:each) do
@@ -14,7 +17,8 @@ describe "Console" do
14
17
  @string =<<-EOS
15
18
  pool :app do
16
19
  maximum_instances 2
17
- cloud :rawr do
20
+ cloud :rawr do
21
+ maximum_instances 2
18
22
  end
19
23
  end
20
24
  EOS
@@ -73,7 +77,7 @@ describe "Console" do
73
77
  }
74
78
  end
75
79
  it "should call inflate from Script with the poolspec" do
76
- PoolParty::Script.should_receive(:inflate).with("spec contents", "myspec.spec")
80
+ PoolParty::Script.should_receive(:inflate).with("spec contents", "myspec.spec").and_return true
77
81
  load_pool(@filename)
78
82
  end
79
83
  end
@@ -17,10 +17,23 @@ describe "Binary" do
17
17
  describe "get_existing_spec_location" do
18
18
  before(:each) do
19
19
  ::File.stub!(:readable?).and_return false
20
- ::File.stub!(:readable?).with("#{Base.storage_directory}/clouds.pool").and_return true
20
+ ::File.stub!(:readable?).with("#{Base.storage_directory}/clouds.rb").and_return true
21
21
  end
22
22
  it "should be a String" do
23
23
  Binary.get_existing_spec_location.class.should == String
24
24
  end
25
25
  end
26
+ describe "load_pool" do
27
+ before(:each) do
28
+ ::File.stub!(:readable?).and_return true
29
+ Binary.stub!(:open).and_return @obj
30
+ @obj.stub!(:read).and_return "crazy"
31
+ Script.stub!(:inflate).and_return true
32
+ Dir.stub!(:pwd).and_return "/flop"
33
+ end
34
+ it "should call Dir[Dir.pwd] if there is no filename given" do
35
+ Dir.should_receive(:[]).with("#{Dir.pwd}/**/*.rb").and_return ["clouds.rb"]
36
+ Binary.load_pool
37
+ end
38
+ end
26
39
  end
@@ -83,6 +83,9 @@ describe "RemoterBase" do
83
83
  end
84
84
  it "should have the method custom_install_tasks" do;@tr.respond_to?(:custom_install_tasks_for).should == true;end
85
85
  it "should have the method custom_configure_tasks" do;@tr.respond_to?(:custom_configure_tasks_for).should == true;end
86
+ it "should set the ip to the master ip" do
87
+ @tr.ip.should == "192.68.0.1"
88
+ end
86
89
  end
87
90
  end
88
91
  end
@@ -44,7 +44,7 @@ describe "Script" do
44
44
  before(:each) do
45
45
  reset!
46
46
  reset_resources!
47
- pool :appdotcomcoo do
47
+ pool :appdotcomcool do
48
48
  keypair "snoodle"
49
49
  ami "ami-123456"
50
50
 
data/website/index.html CHANGED
@@ -34,7 +34,7 @@
34
34
  <h1>PoolParty</h1>
35
35
  <div id="version" class="clickable" onclick='document.location = "http://rubyforge.org/projects/poolparty"; return false'>
36
36
  <p>Get Version</p>
37
- <a href="http://rubyforge.org/projects/poolparty" class="numbers">0.2.89</a>
37
+ <a href="http://rubyforge.org/projects/poolparty" class="numbers">0.2.90</a>
38
38
  </div>
39
39
  <h1>&#8216;Easy cloud computing&#8217;</h1>
40
40
  <h2>What</h2>
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: auser-poolparty
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.89
4
+ version: 0.2.90
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ari Lerner
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-12-16 00:00:00 -08:00
12
+ date: 2008-12-18 00:00:00 -08:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -170,6 +170,7 @@ files:
170
170
  - config/hoe.rb
171
171
  - config/requirements.rb
172
172
  - examples/basic.rb
173
+ - examples/deploy.rb
173
174
  - examples/plugin_without_plugin_directory.rb
174
175
  - examples/poolparty.rb
175
176
  - generators/poolspec/USAGE
@@ -294,6 +295,7 @@ files:
294
295
  - lib/poolparty/base_packages/ruby.rb
295
296
  - lib/poolparty/base_packages/runit.rb
296
297
  - lib/poolparty/capistrano.rb
298
+ - lib/poolparty/capistrano/cloud_tasks.rb
297
299
  - lib/poolparty/config/postlaunchmessage.txt
298
300
  - lib/poolparty/core/array.rb
299
301
  - lib/poolparty/core/class.rb
@@ -325,6 +327,7 @@ files:
325
327
  - lib/poolparty/helpers/binary.rb
326
328
  - lib/poolparty/helpers/console.rb
327
329
  - lib/poolparty/helpers/display.rb
330
+ - lib/poolparty/helpers/loading.rb
328
331
  - lib/poolparty/helpers/nice_printer.rb
329
332
  - lib/poolparty/helpers/optioner.rb
330
333
  - lib/poolparty/helpers/ruberl.rb
@@ -532,7 +535,7 @@ files:
532
535
  has_rdoc: true
533
536
  homepage: http://poolparty.rubyforge.org
534
537
  post_install_message: |-
535
- Get ready to jump in the pool, you just installed PoolParty! (Updated at 16:58 12/16/08)
538
+ Get ready to jump in the pool, you just installed PoolParty! (Updated at 13:28 12/18/08)
536
539
 
537
540
  To get started, run the generator:
538
541