auser-poolparty 0.2.74 → 0.2.76

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. data/Manifest.txt +26 -26
  2. data/PostInstall.txt +1 -1
  3. data/bin/cloud-provision +1 -0
  4. data/bin/server-rerun +0 -1
  5. data/bin/server-update-hosts +4 -3
  6. data/lib/poolparty.rb +1 -1
  7. data/lib/poolparty/base_packages/poolparty.rb +1 -1
  8. data/lib/poolparty/helpers/provisioners/master.rb +3 -11
  9. data/lib/poolparty/monitors/base_monitor.rb +1 -1
  10. data/lib/poolparty/net/remote_bases/ec2.rb +38 -3
  11. data/lib/poolparty/net/remote_instance.rb +1 -1
  12. data/lib/poolparty/net/remoter_base.rb +3 -0
  13. data/lib/poolparty/plugins/deploydirectory.rb +4 -3
  14. data/lib/poolparty/{pool → poolparty}/base.rb +0 -0
  15. data/lib/poolparty/{pool → poolparty}/cloud.rb +2 -1
  16. data/lib/poolparty/{pool → poolparty}/custom_resource.rb +0 -0
  17. data/lib/poolparty/{pool → poolparty}/loggable.rb +0 -0
  18. data/lib/poolparty/{pool → poolparty}/plugin.rb +0 -0
  19. data/lib/poolparty/{pool → poolparty}/plugin_model.rb +0 -0
  20. data/lib/poolparty/{pool → poolparty}/pool.rb +0 -0
  21. data/lib/poolparty/{pool → poolparty}/resource.rb +4 -4
  22. data/lib/poolparty/{pool → poolparty}/resources/class_package.rb +2 -2
  23. data/lib/poolparty/{pool → poolparty}/resources/conditional.rb +0 -0
  24. data/lib/poolparty/{pool → poolparty}/resources/cron.rb +0 -0
  25. data/lib/poolparty/{pool → poolparty}/resources/custom_service.rb +0 -0
  26. data/lib/poolparty/{pool → poolparty}/resources/directory.rb +0 -0
  27. data/lib/poolparty/{pool → poolparty}/resources/exec.rb +0 -0
  28. data/lib/poolparty/{pool → poolparty}/resources/file.rb +0 -0
  29. data/lib/poolparty/{pool → poolparty}/resources/gem_package.rb +0 -0
  30. data/lib/poolparty/{pool → poolparty}/resources/host.rb +0 -0
  31. data/lib/poolparty/{pool → poolparty}/resources/mount.rb +0 -0
  32. data/lib/poolparty/{pool → poolparty}/resources/package.rb +0 -0
  33. data/lib/poolparty/{pool → poolparty}/resources/remote_file.rb +0 -0
  34. data/lib/poolparty/{pool → poolparty}/resources/service.rb +0 -0
  35. data/lib/poolparty/{pool → poolparty}/resources/sshkey.rb +0 -0
  36. data/lib/poolparty/{pool → poolparty}/resources/symlink.rb +0 -0
  37. data/lib/poolparty/{pool → poolparty}/resources/variable.rb +0 -0
  38. data/lib/poolparty/{pool → poolparty}/script.rb +0 -0
  39. data/lib/poolparty/templates/puppet.conf +18 -8
  40. data/lib/poolparty/templates/puppetcleaner +2 -1
  41. data/lib/poolparty/templates/puppetrerun +1 -1
  42. data/lib/poolparty/templates/puppetrunner +0 -0
  43. data/lib/poolparty/version.rb +1 -1
  44. data/poolparty.gemspec +557 -0
  45. data/spec/poolparty/helpers/provisioner_base_spec.rb +5 -1
  46. data/spec/poolparty/pool/cloud_spec.rb +4 -0
  47. data/website/index.html +1 -1
  48. metadata +29 -29
data/Manifest.txt CHANGED
@@ -232,31 +232,31 @@ lib/poolparty/plugins/line.rb
232
232
  lib/poolparty/plugins/rsyncmirror.rb
233
233
  lib/poolparty/plugins/runit.rb
234
234
  lib/poolparty/plugins/svn.rb
235
- lib/poolparty/pool/base.rb
236
- lib/poolparty/pool/cloud.rb
237
- lib/poolparty/pool/custom_resource.rb
238
- lib/poolparty/pool/loggable.rb
239
- lib/poolparty/pool/plugin.rb
240
- lib/poolparty/pool/plugin_model.rb
241
- lib/poolparty/pool/pool.rb
242
- lib/poolparty/pool/resource.rb
243
- lib/poolparty/pool/resources/class_package.rb
244
- lib/poolparty/pool/resources/conditional.rb
245
- lib/poolparty/pool/resources/cron.rb
246
- lib/poolparty/pool/resources/custom_service.rb
247
- lib/poolparty/pool/resources/directory.rb
248
- lib/poolparty/pool/resources/exec.rb
249
- lib/poolparty/pool/resources/file.rb
250
- lib/poolparty/pool/resources/gem_package.rb
251
- lib/poolparty/pool/resources/host.rb
252
- lib/poolparty/pool/resources/mount.rb
253
- lib/poolparty/pool/resources/package.rb
254
- lib/poolparty/pool/resources/remote_file.rb
255
- lib/poolparty/pool/resources/service.rb
256
- lib/poolparty/pool/resources/sshkey.rb
257
- lib/poolparty/pool/resources/symlink.rb
258
- lib/poolparty/pool/resources/variable.rb
259
- lib/poolparty/pool/script.rb
235
+ lib/poolparty/poolparty/base.rb
236
+ lib/poolparty/poolparty/cloud.rb
237
+ lib/poolparty/poolparty/custom_resource.rb
238
+ lib/poolparty/poolparty/loggable.rb
239
+ lib/poolparty/poolparty/plugin.rb
240
+ lib/poolparty/poolparty/plugin_model.rb
241
+ lib/poolparty/poolparty/pool.rb
242
+ lib/poolparty/poolparty/resource.rb
243
+ lib/poolparty/poolparty/resources/class_package.rb
244
+ lib/poolparty/poolparty/resources/conditional.rb
245
+ lib/poolparty/poolparty/resources/cron.rb
246
+ lib/poolparty/poolparty/resources/custom_service.rb
247
+ lib/poolparty/poolparty/resources/directory.rb
248
+ lib/poolparty/poolparty/resources/exec.rb
249
+ lib/poolparty/poolparty/resources/file.rb
250
+ lib/poolparty/poolparty/resources/gem_package.rb
251
+ lib/poolparty/poolparty/resources/host.rb
252
+ lib/poolparty/poolparty/resources/mount.rb
253
+ lib/poolparty/poolparty/resources/package.rb
254
+ lib/poolparty/poolparty/resources/remote_file.rb
255
+ lib/poolparty/poolparty/resources/service.rb
256
+ lib/poolparty/poolparty/resources/sshkey.rb
257
+ lib/poolparty/poolparty/resources/symlink.rb
258
+ lib/poolparty/poolparty/resources/variable.rb
259
+ lib/poolparty/poolparty/script.rb
260
260
  lib/poolparty/spec/core/string.rb
261
261
  lib/poolparty/spec/matchers/a_spec_extensions_base.rb
262
262
  lib/poolparty/spec/matchers/have_cron.rb
@@ -301,7 +301,7 @@ lib/poolparty/version.rb
301
301
  lib/poolpartycl.rb
302
302
  lib/poolpartyspec.rb
303
303
  log/pool.log
304
- log/pool.logs
304
+ poolparty.gemspec
305
305
  script/destroy
306
306
  script/generate
307
307
  script/txt2html
data/PostInstall.txt CHANGED
@@ -1,4 +1,4 @@
1
- Get ready to jump in the pool, you just installed PoolParty! (Updated at 18:16 12/03/08)
1
+ Get ready to jump in the pool, you just installed PoolParty! (Updated at 23:33 12/04/08)
2
2
 
3
3
  To get started, run the generator:
4
4
 
data/bin/cloud-provision CHANGED
@@ -29,6 +29,7 @@ o.loaded_clouds.each do |cloud|
29
29
  end
30
30
  end
31
31
 
32
+ clear_base_directory unless testing
32
33
  end
33
34
 
34
35
  end
data/bin/server-rerun CHANGED
@@ -18,7 +18,6 @@ include Remote
18
18
  with_cloud(cl, {:testing => o.testing}) do
19
19
  cmd = PoolParty::Remote::RemoteInstance.puppet_runner_command
20
20
  %x[#{cmd}] unless testing
21
- puts cmd
22
21
  end
23
22
 
24
23
  end
@@ -9,7 +9,7 @@ end
9
9
 
10
10
  o.loaded_clouds.each do |cloud|
11
11
  with_cloud(cloud) do
12
- puts "Cloud: #{name}"
12
+ vputs "Cloud: #{name}"
13
13
 
14
14
  new_hosts_listing = returning Array.new do |arr|
15
15
 
@@ -36,8 +36,9 @@ o.loaded_clouds.each do |cloud|
36
36
  new_hosts_listing.split(/\n/).each do |line|
37
37
  parts = line.split(/\t/).map {|a| a.chomp }
38
38
  ip,hostname,aliases = parts[0], parts[1], parts[2..-1]
39
- puts "ip: #{ip} for #{hostname}"
40
- arr << PoolParty::Resources::Host.new(:name => hostname, :ip => Resolv::DNS.new.getaddress(ip).to_s, :alias => aliases).to_string
39
+ vputs "ip: #{ip} for #{hostname} as #{aliases}"
40
+ h = PoolParty::Resources::Host.new(:name => hostname, :ip => Resolv::DNS.new.getaddress(ip).to_s, :alias => aliases)
41
+ arr << h.to_string
41
42
  end
42
43
  end
43
44
 
data/lib/poolparty.rb CHANGED
@@ -44,7 +44,7 @@ require "#{File.dirname(__FILE__)}/poolparty/version"
44
44
  end
45
45
  end
46
46
 
47
- Kernel.load_p File.dirname(__FILE__) + "/poolparty/pool"
47
+ Kernel.load_p File.dirname(__FILE__) + "/poolparty/poolparty"
48
48
  Logging.init :debug, :info, :warn, :error, :fatal
49
49
 
50
50
  module PoolParty
@@ -50,7 +50,7 @@ module PoolParty
50
50
  end
51
51
 
52
52
  # execute_on_node do
53
- has_cron(:name => "node puppetd runner", :user => Base.user, :minute => "*/5") do
53
+ has_cron(:name => "node puppetd runner", :user => Base.user, :minute => "*/11") do
54
54
  requires get_gempackage("poolparty")
55
55
  command "/usr/bin/puppetrunner"
56
56
  end
@@ -135,7 +135,7 @@ wget http://github.com/auser/poolparty/tree/master%2Fpkg%2Fpoolparty.gem?raw=tru
135
135
  echo "(Re)starting poolparty"
136
136
  . /etc/profile
137
137
  # /etc/init.d/puppetmaster stop #{unix_hide_string}
138
- ps aux | grep puppetmaster | awk '{print $2}' | xargs kill;rm -rf /etc/puppet/ssl;puppetmasterd --verbose;/etc/init.d/puppetmaster start
138
+ ps aux | grep puppetmaster | awk '{print $2}' | xargs kill;rm -rf /etc/poolparty/ssl;puppetmasterd --verbose;/etc/init.d/puppetmaster start
139
139
  EOS
140
140
  end
141
141
 
@@ -180,19 +180,11 @@ cp #{Base.remote_storage_path}/poolparty.pp /etc/puppet/manifests/classes/poolpa
180
180
  #{copy_ssh_app}
181
181
  EOS
182
182
  end
183
-
184
- def clean_master_certs
185
- str = returning Array.new do |s|
186
- s << "puppetca --clean master.compute-1.internal 2>&1 > /dev/null"
187
- s << "puppetca --clean master.ec2.internal 2>&1 > /dev/null"
188
- end.join(";")
189
- "if [ -f '/usr/bin/puppetrerun' ]; then /usr/bin/puppetrerun; else #{str}; fi"
190
- end
191
-
183
+
192
184
  def restart_puppetd
193
185
  <<-EOS
194
186
  echo "Running puppet manifest"
195
- /usr/bin/puppetrunner;/usr/bin/puppetrerun
187
+ /usr/bin/puppetrunner;/usr/bin/puppetcleaner
196
188
  EOS
197
189
  end
198
190
  end
@@ -29,7 +29,7 @@
29
29
  Notice that at the end, you must call register_monitor :monitorname. This will tell your cloud
30
30
  that it can monitor it with this monitor.
31
31
  =end
32
- require "#{::File.dirname(__FILE__)}/../pool/base"
32
+ require "#{::File.dirname(__FILE__)}/../poolparty/base"
33
33
 
34
34
  module PoolParty
35
35
  module Monitors
@@ -77,8 +77,11 @@ begin
77
77
  begin
78
78
  # when_no_pending_instances do
79
79
  if instance
80
- ec2.associate_address(:instance_id => instance.instance_id, :public_ip => set_master_ip_to) if set_master_ip_to
81
80
  ec2.attach_volume(:volume_id => ebs_volume_id, :instance_id => instance.instance_id, :device => ebs_volume_device) if ebs_volume_id && ebs_volume_mount_point
81
+ # Let's associate the address LAST so that we can still connect to the instance
82
+ # for the other tasks here
83
+ ec2.associate_address(:instance_id => instance.instance_id, :public_ip => set_master_ip_to) if set_master_ip_to
84
+ reset_remoter_base!
82
85
  end
83
86
  # end
84
87
  rescue Exception => e
@@ -111,10 +114,42 @@ begin
111
114
  :secret_access_key => (secret_access_key || Base.secret_access_key)
112
115
  )
113
116
  end
117
+
118
+ def before_configuration_tasks
119
+ if has_cert_and_key?
120
+ copy_file_to_storage_directory(pub_key)
121
+ copy_file_to_storage_directory(private_key)
122
+ end
123
+ end
124
+ def has_cert_and_key?
125
+ pub_key && private_key
126
+ end
127
+ # The keys are used only for puppet certificates
128
+ # and are only used for EC2. These should be abstracted
129
+ # eventually into the ec2 remoter_base
130
+ # Public key
131
+ def pub_key
132
+ @pub_key ||= ENV["EC2_CERT"] ? ENV["EC2_CERT"] : nil
133
+ end
134
+ # Private key
135
+ def private_key
136
+ @private_key ||= ENV["EC2_PRIVATE_KEY"] ? ENV["EC2_PRIVATE_KEY"] : nil
137
+ end
114
138
 
115
139
  # Callback
116
140
  def custom_install_tasks_for(o)
117
- [
141
+ arr = if has_cert_and_key?
142
+ [
143
+ "mkdir -p #{Base.base_config_directory}/ssl/private_keys",
144
+ "mkdir -p #{Base.base_config_directory}/ssl/certs",
145
+ "mkdir -p #{Base.base_config_directory}/ssl/public_keys",
146
+ "mv #{::File.basename(pub_key)} #{Base.base_config_directory}/ssl/public_keys/#{o.name}.pem",
147
+ "mv #{::File.basename(private_key)} #{Base.base_config_directory}/ssl/private_keys/#{o.name}.pem"
148
+ ]
149
+ else
150
+ []
151
+ end
152
+ arr << [
118
153
  "# ec2 installation tasks",
119
154
  "# Set hostname",
120
155
  # "if [ -z $(grep -v '#' /etc/hosts | grep '#{o.name}') ]; then echo \"$(curl http://169.254.169.254/latest/meta-data/public-ipv4) #{o.name}\" >> /etc/hosts; fi",
@@ -122,7 +157,7 @@ begin
122
157
  "hostname #{o.name}",
123
158
  "echo #{o.name} > /etc/hostname",
124
159
  "cd /var/poolparty && wget http://rubyforge.org/frs/download.php/43666/amazon-ec2-0.3.1.gem -O amazon-ec2.gem 2>&1",
125
- "/usr/bin/gem install -y --no-ri --no-rdoc amazon-ec2.gem 2>&1"
160
+ "/usr/bin/gem install -y --no-ri --no-rdoc amazon-ec2.gem 2>&1",
126
161
  ]
127
162
  end
128
163
 
@@ -8,7 +8,7 @@ module PoolParty
8
8
  include Configurable
9
9
  include CloudResourcer
10
10
 
11
- def initialize(opts, parent=nil)
11
+ def initialize(opts, parent=self)
12
12
  run_setup(parent)
13
13
 
14
14
  set_vars_from_options(parent.options) if parent && parent.respond_to?(:options)
@@ -88,6 +88,9 @@ module PoolParty
88
88
  name = (i.zero? ? "master" : "node#{i}")
89
89
  list.select {|i| i.name == name }.first
90
90
  end
91
+ # A callback before the configuration task takes place
92
+ def before_configuration_tasks
93
+ end
91
94
  def remote_instances_list
92
95
  @containing_cloud = self
93
96
  # puts "> #{@containing_cloud} #{@describe_instances.nil?}"
@@ -18,7 +18,7 @@ module PoolParty
18
18
 
19
19
  def package_directory
20
20
  path = ::File.join( Base.tmp_path, "#{::File.basename(from_dir)}.tar.gz" )
21
- archive_name = "#{name.dir_safe}.tar.gz"
21
+ archive_name = "#{::File.basename(name).dir_safe}.tar.gz"
22
22
  cmd = "cd #{::File.expand_path(from_dir)} && tar -czf #{archive_name} . && mv #{archive_name} #{Base.tmp_path}"
23
23
  Kernel.system(cmd) unless testing
24
24
  end
@@ -27,8 +27,9 @@ module PoolParty
27
27
  execute_on_master do
28
28
  has_exec({:name => "deploy-directory-#{name}", :requires => get_directory("#{cwd}"), :cwd => cwd}) do
29
29
  # && rm #{Base.tmp_path}/#{parent.name.dir_safe}.tar.gz
30
- command "cd #{cwd}; tar -zxf #{Base.remote_storage_path}/#{name.dir_safe}.tar.gz; rm #{Base.remote_storage_path}/#{name.dir_safe}.tar.gz"
31
- onlyif "test -f #{Base.remote_storage_path}/#{name.dir_safe}.tar.gz"
30
+ archive_name = "#{::File.basename(name).dir_safe}.tar.gz"
31
+ command "cd #{cwd}; tar -zxf #{Base.remote_storage_path}/#{archive_name}; rm #{Base.remote_storage_path}/#{archive_name}; chown #{owner} #{::File.basename(name).dir_safe}"
32
+ onlyif "test -f #{Base.remote_storage_path}/#{archive_name}"
32
33
  end
33
34
  end
34
35
  end
File without changes
@@ -95,6 +95,7 @@ module PoolParty
95
95
  Script.save!(self)
96
96
  # not my favorite...
97
97
  copy_ssh_key
98
+ before_configuration_tasks
98
99
  end
99
100
 
100
101
  # Copy the ssh keys to the storage directory in preparation for
@@ -210,7 +211,7 @@ module PoolParty
210
211
  # Also note that there is no block associated. This is because we have written
211
212
  # all that is necessary in a method called enable
212
213
  # which is called when there is no block
213
- def add_poolparty_base_requirements
214
+ def add_poolparty_base_requirements
214
215
  heartbeat
215
216
  haproxy
216
217
  ruby
File without changes
File without changes
File without changes
File without changes
@@ -18,7 +18,7 @@ module PoolParty
18
18
  end
19
19
 
20
20
  def add_resource(type, opts={}, parent=self, &block)
21
- if in_a_resource_store?(type, opts[:name])
21
+ if opts[:name] && in_a_resource_store?(type, opts[:name])
22
22
  @res = get_from_local_resource_store(type, opts[:name], parent)
23
23
  @res ||= get_from_global_resource_store(type, opts[:name])
24
24
  # if should_duplicate_resource?(type, @res, parent, opts)
@@ -249,16 +249,16 @@ module PoolParty
249
249
  def get_modified_options
250
250
  unless @modified_options
251
251
  if options
252
- opts = options.inject({}) do |sum,h|
252
+ opts = options.inject({}) do |sum,h|
253
253
  sum.merge!({h[0].to_sym => ((h[1].nil?) ? self.send(h[0].to_sym) : h[1]) })
254
254
  end
255
255
  else
256
256
  opts = {}
257
257
  end
258
258
  @full_allowed_options ||= allowed_options.reject {|ele| disallowed_options.include?(ele) }
259
- @modified_options = opts.reject do |k,v|
259
+ @modified_options = opts.reject do |k,v|
260
260
  !@full_allowed_options.include?(k) ||
261
- @parent.respond_to?(:options) && @parent.options.has_key?(k) && @parent.options[k] == options[k]
261
+ @parent && @parent.respond_to?(:options) && @parent.options.has_key?(k) && @parent.options[k] == options[k]
262
262
  end
263
263
  end
264
264
  @modified_options
@@ -22,7 +22,7 @@ module PoolParty
22
22
 
23
23
  # Wrap all the resources into a class package from
24
24
  def classpackage_with_self(parent=self, &block)
25
- name = (parent.options.name || Classpackage.name(parent).to_s).sanitize
25
+ name = (parent && parent.options.name || Classpackage.name(parent).to_s).sanitize
26
26
  if in_global_classpackages?(name)
27
27
  returning get_from_global_classpackage_store(name) do |cls|
28
28
  cls.run_in_context(parent, &block) if block
@@ -95,7 +95,7 @@ module PoolParty
95
95
  false
96
96
  end
97
97
 
98
- def self.name(parent=nil)
98
+ def self.name(parent=self)
99
99
  "custom_#{parent ? parent.object_id.to_s : "parent"}"
100
100
  end
101
101
 
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -1,16 +1,26 @@
1
1
  [main]
2
2
  vardir = /var/lib/puppet
3
3
  logdir = /var/log/puppet
4
- pluginsync=false
5
- factsync=false
4
+ ssldir = /etc/poolparty/ssl
5
+ pluginsync = false
6
+ factsync = false
7
+
8
+ [puppetca]
9
+ config = $config/puppetca.conf
6
10
 
11
+ [certificates]
12
+ publickeydir = /etc/poolparty/public_keys
13
+ certdir = /etc/poolparty/certs
14
+ privatekeydir = /etc/poolparty/private_keys
15
+
16
+ [ca]
17
+ signeddir = /etc/poolparty/signed
18
+
7
19
  [puppetd]
8
20
  localconfig = $vardir/localconfig
9
- report=true
10
- server=master
11
-
12
- [puppetrun]
13
- certname = master
21
+ report = true
22
+ server = master
14
23
 
15
24
  [puppetmasterd]
16
- certname = master
25
+ certname = master
26
+ server = master
@@ -2,5 +2,6 @@
2
2
 
3
3
  # /var/lib/puppet/state/puppetdlock
4
4
  . /etc/profile
5
+ HN=`hostname`
5
6
  ps aux | grep puppetmaster | awk '{print $2}' | xargs kill
6
- /etc/init.d/puppetmaster stop;rm -rf /etc/puppet/ssl;/etc/init.d/puppetmaster start;puppetmasterd --verbose
7
+ /etc/init.d/puppetmaster stop;rm /etc/poolparty/ssl/ca/signed/$HN.*;/etc/init.d/puppetmaster start;puppetmasterd --verbose
@@ -4,6 +4,6 @@
4
4
  if [ $(/usr/sbin/puppetd --onetime --no-daemonize --logdest syslog --server master)]; then
5
5
  echo "Run successfully"
6
6
  else
7
- ps aux | grep puppetmaster | awk '{print $2}' | xargs kill;rm -rf /etc/puppet/ssl;puppetmasterd --verbose;/etc/init.d/puppetmaster start
7
+ ps aux | grep puppetmaster | awk '{print $2}' | xargs kill;rm -rf /etc/poolparty/ssl;puppetmasterd --verbose;/etc/init.d/puppetmaster start
8
8
  /usr/sbin/puppetd --onetime --no-daemonize --logdest syslog --server master
9
9
  fi
File without changes
@@ -2,7 +2,7 @@ module PoolParty
2
2
  module VERSION #:nodoc:
3
3
  MAJOR = 0
4
4
  MINOR = 2
5
- TINY = 74
5
+ TINY = 76
6
6
 
7
7
  STRING = [MAJOR, MINOR, TINY].join('.')
8
8
  end
data/poolparty.gemspec ADDED
@@ -0,0 +1,557 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: poolparty
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.76
5
+ platform: ruby
6
+ authors:
7
+ - Ari Lerner
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2008-12-04 00:00:00 -08:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: activesupport
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: logging
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: "0"
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: ruby2ruby
37
+ type: :runtime
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: "0"
44
+ version:
45
+ - !ruby/object:Gem::Dependency
46
+ name: hoe
47
+ type: :runtime
48
+ version_requirement:
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: 1.8.2
54
+ version:
55
+ description: Self-healing, auto-scaling system administration, provisioning and maintaining tool that makes cloud computing fun and easy
56
+ email:
57
+ - ari.lerner@citrusbyte.com
58
+ executables:
59
+ - cloud
60
+ - cloud-add-keypair
61
+ - cloud-configure
62
+ - cloud-contract
63
+ - cloud-ensure-provisioning
64
+ - cloud-expand
65
+ - cloud-handle-load
66
+ - cloud-list
67
+ - cloud-maintain
68
+ - cloud-osxcopy
69
+ - cloud-provision
70
+ - cloud-refresh
71
+ - cloud-run
72
+ - cloud-ssh
73
+ - cloud-start
74
+ - cloud-stats
75
+ - cloud-terminate
76
+ - messenger-get-current-nodes
77
+ - pool
78
+ - pool-console
79
+ - pool-describe
80
+ - pool-generate
81
+ - pool-init
82
+ - pool-list
83
+ - pool-start
84
+ - server-build-messenger
85
+ - server-fire-cmd
86
+ - server-get-load
87
+ - server-list-active
88
+ - server-list-responding
89
+ - server-rerun
90
+ - server-send-command
91
+ - server-show-stats
92
+ - server-start-client
93
+ - server-start-master
94
+ - server-start-node
95
+ - server-stop-client
96
+ - server-stop-master
97
+ - server-stop-node
98
+ - server-update-hosts
99
+ extensions: []
100
+
101
+ extra_rdoc_files:
102
+ - History.txt
103
+ - License.txt
104
+ - Manifest.txt
105
+ - PostInstall.txt
106
+ - README.txt
107
+ - lib/erlang/messenger/lib/eunit/examples/tests.txt
108
+ - lib/poolparty/config/postlaunchmessage.txt
109
+ - website/index.txt
110
+ files:
111
+ - History.txt
112
+ - License.txt
113
+ - Manifest.txt
114
+ - PostInstall.txt
115
+ - README.txt
116
+ - Rakefile
117
+ - bin/cloud
118
+ - bin/cloud-add-keypair
119
+ - bin/cloud-configure
120
+ - bin/cloud-contract
121
+ - bin/cloud-ensure-provisioning
122
+ - bin/cloud-expand
123
+ - bin/cloud-handle-load
124
+ - bin/cloud-list
125
+ - bin/cloud-maintain
126
+ - bin/cloud-osxcopy
127
+ - bin/cloud-provision
128
+ - bin/cloud-refresh
129
+ - bin/cloud-run
130
+ - bin/cloud-ssh
131
+ - bin/cloud-start
132
+ - bin/cloud-stats
133
+ - bin/cloud-terminate
134
+ - bin/messenger-get-current-nodes
135
+ - bin/pool
136
+ - bin/pool-console
137
+ - bin/pool-describe
138
+ - bin/pool-generate
139
+ - bin/pool-init
140
+ - bin/pool-list
141
+ - bin/pool-start
142
+ - bin/server-build-messenger
143
+ - bin/server-fire-cmd
144
+ - bin/server-get-load
145
+ - bin/server-list-active
146
+ - bin/server-list-responding
147
+ - bin/server-rerun
148
+ - bin/server-send-command
149
+ - bin/server-show-stats
150
+ - bin/server-start-client
151
+ - bin/server-start-master
152
+ - bin/server-start-node
153
+ - bin/server-stop-client
154
+ - bin/server-stop-master
155
+ - bin/server-stop-node
156
+ - bin/server-update-hosts
157
+ - config/hoe.rb
158
+ - config/requirements.rb
159
+ - examples/basic.rb
160
+ - examples/plugin_without_plugin_directory.rb
161
+ - examples/poolparty.rb
162
+ - generators/poolspec/USAGE
163
+ - generators/poolspec/poolspec_generator.rb
164
+ - generators/poolspec/templates/pool_spec_template.erb
165
+ - lib/erlang/messenger/Emakefile
166
+ - lib/erlang/messenger/Makefile
167
+ - lib/erlang/messenger/README
168
+ - lib/erlang/messenger/Rakefile
169
+ - lib/erlang/messenger/control
170
+ - lib/erlang/messenger/ebin/client.app
171
+ - lib/erlang/messenger/ebin/client_app.beam
172
+ - lib/erlang/messenger/ebin/client_server.beam
173
+ - lib/erlang/messenger/ebin/erl_crash.dump
174
+ - lib/erlang/messenger/ebin/master.app
175
+ - lib/erlang/messenger/ebin/master_app.beam
176
+ - lib/erlang/messenger/ebin/node.app
177
+ - lib/erlang/messenger/ebin/node_app.beam
178
+ - lib/erlang/messenger/ebin/packager.app
179
+ - lib/erlang/messenger/ebin/pm_client.beam
180
+ - lib/erlang/messenger/ebin/pm_client_old.beam
181
+ - lib/erlang/messenger/ebin/pm_client_rel-0.1.rel
182
+ - lib/erlang/messenger/ebin/pm_client_supervisor.beam
183
+ - lib/erlang/messenger/ebin/pm_cluster.beam
184
+ - lib/erlang/messenger/ebin/pm_event_manager.beam
185
+ - lib/erlang/messenger/ebin/pm_master.beam
186
+ - lib/erlang/messenger/ebin/pm_master_event_handler.beam
187
+ - lib/erlang/messenger/ebin/pm_master_rel-0.1.rel
188
+ - lib/erlang/messenger/ebin/pm_master_supervisor.beam
189
+ - lib/erlang/messenger/ebin/pm_node.beam
190
+ - lib/erlang/messenger/ebin/pm_node_rel-0.1.rel
191
+ - lib/erlang/messenger/ebin/pm_node_supervisor.beam
192
+ - lib/erlang/messenger/ebin/pm_packager.beam
193
+ - lib/erlang/messenger/ebin/pm_strings.beam
194
+ - lib/erlang/messenger/ebin/utils.beam
195
+ - lib/erlang/messenger/include/defines.hrl
196
+ - lib/erlang/messenger/lib/eunit/AUTHORS
197
+ - lib/erlang/messenger/lib/eunit/CHANGELOG
198
+ - lib/erlang/messenger/lib/eunit/COPYING
199
+ - lib/erlang/messenger/lib/eunit/Makefile
200
+ - lib/erlang/messenger/lib/eunit/NOTES
201
+ - lib/erlang/messenger/lib/eunit/README
202
+ - lib/erlang/messenger/lib/eunit/doc/edoc-info
203
+ - lib/erlang/messenger/lib/eunit/doc/erlang.png
204
+ - lib/erlang/messenger/lib/eunit/doc/eunit.html
205
+ - lib/erlang/messenger/lib/eunit/doc/index.html
206
+ - lib/erlang/messenger/lib/eunit/doc/modules-frame.html
207
+ - lib/erlang/messenger/lib/eunit/doc/overview-summary.html
208
+ - lib/erlang/messenger/lib/eunit/doc/overview.edoc
209
+ - lib/erlang/messenger/lib/eunit/doc/packages-frame.html
210
+ - lib/erlang/messenger/lib/eunit/doc/stylesheet.css
211
+ - lib/erlang/messenger/lib/eunit/ebin/autoload.beam
212
+ - lib/erlang/messenger/lib/eunit/ebin/code_monitor.beam
213
+ - lib/erlang/messenger/lib/eunit/ebin/eunit.app
214
+ - lib/erlang/messenger/lib/eunit/ebin/eunit.appup
215
+ - lib/erlang/messenger/lib/eunit/ebin/eunit.beam
216
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_autoexport.beam
217
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_data.beam
218
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_lib.beam
219
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_proc.beam
220
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_serial.beam
221
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_server.beam
222
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_striptests.beam
223
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_test.beam
224
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_tests.beam
225
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_tty.beam
226
+ - lib/erlang/messenger/lib/eunit/ebin/file_monitor.beam
227
+ - lib/erlang/messenger/lib/eunit/examples/eunit_examples.erl
228
+ - lib/erlang/messenger/lib/eunit/examples/fib.erl
229
+ - lib/erlang/messenger/lib/eunit/examples/tests.txt
230
+ - lib/erlang/messenger/lib/eunit/include/eunit.hrl
231
+ - lib/erlang/messenger/lib/eunit/src/Makefile
232
+ - lib/erlang/messenger/lib/eunit/src/autoload.erl
233
+ - lib/erlang/messenger/lib/eunit/src/code_monitor.erl
234
+ - lib/erlang/messenger/lib/eunit/src/eunit.app.src
235
+ - lib/erlang/messenger/lib/eunit/src/eunit.appup.src
236
+ - lib/erlang/messenger/lib/eunit/src/eunit.erl
237
+ - lib/erlang/messenger/lib/eunit/src/eunit_autoexport.erl
238
+ - lib/erlang/messenger/lib/eunit/src/eunit_data.erl
239
+ - lib/erlang/messenger/lib/eunit/src/eunit_internal.hrl
240
+ - lib/erlang/messenger/lib/eunit/src/eunit_lib.erl
241
+ - lib/erlang/messenger/lib/eunit/src/eunit_proc.erl
242
+ - lib/erlang/messenger/lib/eunit/src/eunit_serial.erl
243
+ - lib/erlang/messenger/lib/eunit/src/eunit_server.erl
244
+ - lib/erlang/messenger/lib/eunit/src/eunit_striptests.erl
245
+ - lib/erlang/messenger/lib/eunit/src/eunit_test.erl
246
+ - lib/erlang/messenger/lib/eunit/src/eunit_tests.erl
247
+ - lib/erlang/messenger/lib/eunit/src/eunit_tty.erl
248
+ - lib/erlang/messenger/lib/eunit/src/file_monitor.erl
249
+ - lib/erlang/messenger/lib/eunit/sys.config
250
+ - lib/erlang/messenger/lib/eunit/vsn.mk
251
+ - lib/erlang/messenger/pm_client_rel-0.1.boot
252
+ - lib/erlang/messenger/pm_client_rel-0.1.script
253
+ - lib/erlang/messenger/pm_master_rel-0.1.boot
254
+ - lib/erlang/messenger/pm_master_rel-0.1.script
255
+ - lib/erlang/messenger/pm_node_rel-0.1.boot
256
+ - lib/erlang/messenger/pm_node_rel-0.1.script
257
+ - lib/erlang/messenger/src/client_app.erl
258
+ - lib/erlang/messenger/src/client_server.erl
259
+ - lib/erlang/messenger/src/master_app.erl
260
+ - lib/erlang/messenger/src/node_app.erl
261
+ - lib/erlang/messenger/src/pm_client.erl
262
+ - lib/erlang/messenger/src/pm_client_old.erl
263
+ - lib/erlang/messenger/src/pm_client_supervisor.erl
264
+ - lib/erlang/messenger/src/pm_cluster.erl
265
+ - lib/erlang/messenger/src/pm_event_manager.erl
266
+ - lib/erlang/messenger/src/pm_master.erl
267
+ - lib/erlang/messenger/src/pm_master_event_handler.erl
268
+ - lib/erlang/messenger/src/pm_master_supervisor.erl
269
+ - lib/erlang/messenger/src/pm_node.erl
270
+ - lib/erlang/messenger/src/pm_node_supervisor.erl
271
+ - lib/erlang/messenger/src/pm_packager.erl
272
+ - lib/erlang/messenger/src/pm_strings.erl
273
+ - lib/erlang/messenger/src/utils.erl
274
+ - lib/erlang/messenger/useful_snippets
275
+ - lib/poolparty.rb
276
+ - lib/poolparty/aska/aska.rb
277
+ - lib/poolparty/base_packages/haproxy.rb
278
+ - lib/poolparty/base_packages/heartbeat.rb
279
+ - lib/poolparty/base_packages/poolparty.rb
280
+ - lib/poolparty/base_packages/ruby.rb
281
+ - lib/poolparty/base_packages/runit.rb
282
+ - lib/poolparty/config/postlaunchmessage.txt
283
+ - lib/poolparty/core/array.rb
284
+ - lib/poolparty/core/class.rb
285
+ - lib/poolparty/core/exception.rb
286
+ - lib/poolparty/core/float.rb
287
+ - lib/poolparty/core/hash.rb
288
+ - lib/poolparty/core/kernel.rb
289
+ - lib/poolparty/core/metaid.rb
290
+ - lib/poolparty/core/module.rb
291
+ - lib/poolparty/core/my_open_struct.rb
292
+ - lib/poolparty/core/object.rb
293
+ - lib/poolparty/core/proc.rb
294
+ - lib/poolparty/core/string.rb
295
+ - lib/poolparty/core/symbol.rb
296
+ - lib/poolparty/core/time.rb
297
+ - lib/poolparty/dependency_resolutions/base.rb
298
+ - lib/poolparty/dependency_resolutions/puppet.rb
299
+ - lib/poolparty/exceptions/CloudNotFoundException.rb
300
+ - lib/poolparty/exceptions/LoadRulesException.rb
301
+ - lib/poolparty/exceptions/MasterException.rb
302
+ - lib/poolparty/exceptions/RemoteException.rb
303
+ - lib/poolparty/exceptions/ResourceException.rb
304
+ - lib/poolparty/exceptions/RuntimeException.rb
305
+ - lib/poolparty/exceptions/SpecException.rb
306
+ - lib/poolparty/exceptions/TemplateNotFound.rb
307
+ - lib/poolparty/exceptions/UnacceptableCommand.rb
308
+ - lib/poolparty/helpers/binary.rb
309
+ - lib/poolparty/helpers/console.rb
310
+ - lib/poolparty/helpers/display.rb
311
+ - lib/poolparty/helpers/nice_printer.rb
312
+ - lib/poolparty/helpers/optioner.rb
313
+ - lib/poolparty/helpers/provisioner_base.rb
314
+ - lib/poolparty/helpers/provisioners/master.rb
315
+ - lib/poolparty/helpers/provisioners/slave.rb
316
+ - lib/poolparty/modules/cloud_dsl.rb
317
+ - lib/poolparty/modules/cloud_resourcer.rb
318
+ - lib/poolparty/modules/configurable.rb
319
+ - lib/poolparty/modules/definable_resource.rb
320
+ - lib/poolparty/modules/file_writer.rb
321
+ - lib/poolparty/modules/method_missing_sugar.rb
322
+ - lib/poolparty/modules/output.rb
323
+ - lib/poolparty/modules/pretty_printer.rb
324
+ - lib/poolparty/modules/resourcing_dsl.rb
325
+ - lib/poolparty/modules/s3_string.rb
326
+ - lib/poolparty/modules/safe_instance.rb
327
+ - lib/poolparty/modules/thread_pool.rb
328
+ - lib/poolparty/monitors/base_monitor.rb
329
+ - lib/poolparty/monitors/monitors/cpu_monitor.rb
330
+ - lib/poolparty/monitors/monitors/memory_monitor.rb
331
+ - lib/poolparty/monitors/monitors/web_monitor.rb
332
+ - lib/poolparty/net/messenger.rb
333
+ - lib/poolparty/net/remote.rb
334
+ - lib/poolparty/net/remote_bases/ec2.rb
335
+ - lib/poolparty/net/remote_bases/ec2/ec2_response_object.rb
336
+ - lib/poolparty/net/remote_instance.rb
337
+ - lib/poolparty/net/remoter.rb
338
+ - lib/poolparty/net/remoter_base.rb
339
+ - lib/poolparty/plugins/deploydirectory.rb
340
+ - lib/poolparty/plugins/git.rb
341
+ - lib/poolparty/plugins/line.rb
342
+ - lib/poolparty/plugins/rsyncmirror.rb
343
+ - lib/poolparty/plugins/runit.rb
344
+ - lib/poolparty/plugins/svn.rb
345
+ - lib/poolparty/poolparty/base.rb
346
+ - lib/poolparty/poolparty/cloud.rb
347
+ - lib/poolparty/poolparty/custom_resource.rb
348
+ - lib/poolparty/poolparty/loggable.rb
349
+ - lib/poolparty/poolparty/plugin.rb
350
+ - lib/poolparty/poolparty/plugin_model.rb
351
+ - lib/poolparty/poolparty/pool.rb
352
+ - lib/poolparty/poolparty/resource.rb
353
+ - lib/poolparty/poolparty/resources/class_package.rb
354
+ - lib/poolparty/poolparty/resources/conditional.rb
355
+ - lib/poolparty/poolparty/resources/cron.rb
356
+ - lib/poolparty/poolparty/resources/custom_service.rb
357
+ - lib/poolparty/poolparty/resources/directory.rb
358
+ - lib/poolparty/poolparty/resources/exec.rb
359
+ - lib/poolparty/poolparty/resources/file.rb
360
+ - lib/poolparty/poolparty/resources/gem_package.rb
361
+ - lib/poolparty/poolparty/resources/host.rb
362
+ - lib/poolparty/poolparty/resources/mount.rb
363
+ - lib/poolparty/poolparty/resources/package.rb
364
+ - lib/poolparty/poolparty/resources/remote_file.rb
365
+ - lib/poolparty/poolparty/resources/service.rb
366
+ - lib/poolparty/poolparty/resources/sshkey.rb
367
+ - lib/poolparty/poolparty/resources/symlink.rb
368
+ - lib/poolparty/poolparty/resources/variable.rb
369
+ - lib/poolparty/poolparty/script.rb
370
+ - lib/poolparty/spec/core/string.rb
371
+ - lib/poolparty/spec/matchers/a_spec_extensions_base.rb
372
+ - lib/poolparty/spec/matchers/have_cron.rb
373
+ - lib/poolparty/spec/matchers/have_deploydirectory.rb
374
+ - lib/poolparty/spec/matchers/have_directory.rb
375
+ - lib/poolparty/spec/matchers/have_exec.rb
376
+ - lib/poolparty/spec/matchers/have_file.rb
377
+ - lib/poolparty/spec/matchers/have_gempackage.rb
378
+ - lib/poolparty/spec/matchers/have_git.rb
379
+ - lib/poolparty/spec/matchers/have_host.rb
380
+ - lib/poolparty/spec/matchers/have_mount.rb
381
+ - lib/poolparty/spec/matchers/have_package.rb
382
+ - lib/poolparty/spec/matchers/have_remotefile.rb
383
+ - lib/poolparty/spec/matchers/have_rsyncmirror.rb
384
+ - lib/poolparty/spec/matchers/have_service.rb
385
+ - lib/poolparty/spec/matchers/have_sshkey.rb
386
+ - lib/poolparty/spec/matchers/have_symlink.rb
387
+ - lib/poolparty/spec/matchers/have_variable.rb
388
+ - lib/poolparty/spec/spec/dynamic_matchers.rb
389
+ - lib/poolparty/spec/spec/ensure_matchers_exist.rb
390
+ - lib/poolparty/spec/templates/have_base.rb
391
+ - lib/poolparty/templates/authkeys
392
+ - lib/poolparty/templates/cib.xml
393
+ - lib/poolparty/templates/gem
394
+ - lib/poolparty/templates/ha.cf
395
+ - lib/poolparty/templates/haproxy.conf
396
+ - lib/poolparty/templates/haresources
397
+ - lib/poolparty/templates/messenger/client/log-run.erb
398
+ - lib/poolparty/templates/messenger/client/run.erb
399
+ - lib/poolparty/templates/messenger/master/log-run.erb
400
+ - lib/poolparty/templates/messenger/master/run.erb
401
+ - lib/poolparty/templates/messenger/node/log-run.erb
402
+ - lib/poolparty/templates/messenger/node/run.erb
403
+ - lib/poolparty/templates/namespaceauth.conf
404
+ - lib/poolparty/templates/poolparty.monitor
405
+ - lib/poolparty/templates/puppet.conf
406
+ - lib/poolparty/templates/puppetcleaner
407
+ - lib/poolparty/templates/puppetrerun
408
+ - lib/poolparty/templates/puppetrunner
409
+ - lib/poolparty/templates/yaws.conf
410
+ - lib/poolparty/version.rb
411
+ - lib/poolpartycl.rb
412
+ - lib/poolpartyspec.rb
413
+ - log/pool.log
414
+ - poolparty.gemspec
415
+ - script/destroy
416
+ - script/generate
417
+ - script/txt2html
418
+ - setup.rb
419
+ - spec/poolparty/aska/aska_spec.rb
420
+ - spec/poolparty/base_packages/haproxy_spec.rb
421
+ - spec/poolparty/base_packages/heartbeat_spec.rb
422
+ - spec/poolparty/bin/console_spec.rb
423
+ - spec/poolparty/core/array_spec.rb
424
+ - spec/poolparty/core/float.rb
425
+ - spec/poolparty/core/hash_spec.rb
426
+ - spec/poolparty/core/kernel_spec.rb
427
+ - spec/poolparty/core/module_spec.rb
428
+ - spec/poolparty/core/object_spec.rb
429
+ - spec/poolparty/core/string_spec.rb
430
+ - spec/poolparty/core/time_spec.rb
431
+ - spec/poolparty/dependency_resolutions/base_spec.rb
432
+ - spec/poolparty/helpers/binary_spec.rb
433
+ - spec/poolparty/helpers/display_spec.rb
434
+ - spec/poolparty/helpers/optioner_spec.rb
435
+ - spec/poolparty/helpers/provisioner_base_spec.rb
436
+ - spec/poolparty/helpers/provisioners/master_spec.rb
437
+ - spec/poolparty/helpers/provisioners/slave_spec.rb
438
+ - spec/poolparty/modules/cloud_resourcer_spec.rb
439
+ - spec/poolparty/modules/configurable_spec.rb
440
+ - spec/poolparty/modules/definable_resource.rb
441
+ - spec/poolparty/modules/file_writer_spec.rb
442
+ - spec/poolparty/modules/s3_string_spec.rb
443
+ - spec/poolparty/monitors/base_monitor_spec.rb
444
+ - spec/poolparty/monitors/monitors/cpu_monitor_spec.rb
445
+ - spec/poolparty/monitors/monitors/memory_monitor_spec.rb
446
+ - spec/poolparty/net/messenger_spec.rb
447
+ - spec/poolparty/net/remote_bases/ec2_spec.rb
448
+ - spec/poolparty/net/remote_instance_spec.rb
449
+ - spec/poolparty/net/remote_spec.rb
450
+ - spec/poolparty/net/remoter_base_spec.rb
451
+ - spec/poolparty/net/remoter_spec.rb
452
+ - spec/poolparty/plugins/deploydirectory_spec.rb
453
+ - spec/poolparty/plugins/git_spec.rb
454
+ - spec/poolparty/plugins/line_spec.rb
455
+ - spec/poolparty/plugins/svn_spec.rb
456
+ - spec/poolparty/pool/base_spec.rb
457
+ - spec/poolparty/pool/cloud_spec.rb
458
+ - spec/poolparty/pool/configurers/files/ruby_basic.rb
459
+ - spec/poolparty/pool/configurers/files/ruby_plugins.rb
460
+ - spec/poolparty/pool/configurers/ruby_spec.rb
461
+ - spec/poolparty/pool/custom_resource_spec.rb
462
+ - spec/poolparty/pool/example_spec.rb
463
+ - spec/poolparty/pool/plugin_model_spec.rb
464
+ - spec/poolparty/pool/plugin_spec.rb
465
+ - spec/poolparty/pool/pool_spec.rb
466
+ - spec/poolparty/pool/resource_spec.rb
467
+ - spec/poolparty/pool/resources/class_package_spec.rb
468
+ - spec/poolparty/pool/resources/conditional_spec.rb
469
+ - spec/poolparty/pool/resources/cron_spec.rb
470
+ - spec/poolparty/pool/resources/directory_spec.rb
471
+ - spec/poolparty/pool/resources/exec_spec.rb
472
+ - spec/poolparty/pool/resources/file_spec.rb
473
+ - spec/poolparty/pool/resources/gem_spec.rb
474
+ - spec/poolparty/pool/resources/host_spec.rb
475
+ - spec/poolparty/pool/resources/package_spec.rb
476
+ - spec/poolparty/pool/resources/remote_file_spec.rb
477
+ - spec/poolparty/pool/resources/service_spec.rb
478
+ - spec/poolparty/pool/resources/sshkey_spec.rb
479
+ - spec/poolparty/pool/resources/symlink_spec.rb
480
+ - spec/poolparty/pool/resources/variable_spec.rb
481
+ - spec/poolparty/pool/script_spec.rb
482
+ - spec/poolparty/pool/test_plugins/sshkey_test
483
+ - spec/poolparty/pool/test_plugins/virtual_host_template.erb
484
+ - spec/poolparty/pool/test_plugins/webserver.rb
485
+ - spec/poolparty/poolparty_spec.rb
486
+ - spec/poolparty/spec/core/string_spec.rb
487
+ - spec/poolparty/spec_helper.rb
488
+ - tasks/cloud.rake
489
+ - tasks/deployment.rake
490
+ - tasks/development.rake
491
+ - tasks/ec2.rake
492
+ - tasks/environment.rake
493
+ - tasks/instance.rake
494
+ - tasks/server.rake
495
+ - tasks/spec.rake
496
+ - tasks/website.rake
497
+ - test/test_generator_helper.rb
498
+ - test/test_helper.rb
499
+ - test/test_pool_spec_generator.rb
500
+ - test/test_poolparty.rb
501
+ - website/index.html
502
+ - website/index.txt
503
+ - website/javascripts/rounded_corners_lite.inc.js
504
+ - website/stylesheets/code.css
505
+ - website/stylesheets/screen.css
506
+ - website/template.html.erb
507
+ has_rdoc: true
508
+ homepage: http://poolparty.rubyforge.org
509
+ post_install_message: |-
510
+ Get ready to jump in the pool, you just installed PoolParty! (Updated at 23:33 12/04/08)
511
+
512
+ To get started, run the generator:
513
+
514
+ pool spec <name>
515
+
516
+ Please check out the documentation for any questions or check out the google groups at
517
+ http://groups.google.com/group/poolpartyrb
518
+
519
+ More tutorials can be found at
520
+ http://poolpartyrb.com
521
+
522
+ Don't forget to check out the plugin tutorial @ http://poolpartyrb.com to extend PoolParty for your needs!
523
+
524
+ For more information, check http://PoolPartyrb.com or visit us on IRC at:
525
+ irc.freenode.net
526
+ #poolpartyrb
527
+
528
+ *** Ari Lerner @ <arilerner@mac.com> ***
529
+ rdoc_options:
530
+ - --main
531
+ - README.txt
532
+ require_paths:
533
+ - lib
534
+ required_ruby_version: !ruby/object:Gem::Requirement
535
+ requirements:
536
+ - - ">="
537
+ - !ruby/object:Gem::Version
538
+ version: "0"
539
+ version:
540
+ required_rubygems_version: !ruby/object:Gem::Requirement
541
+ requirements:
542
+ - - ">="
543
+ - !ruby/object:Gem::Version
544
+ version: "0"
545
+ version:
546
+ requirements: []
547
+
548
+ rubyforge_project: poolparty
549
+ rubygems_version: 1.2.0
550
+ signing_key:
551
+ specification_version: 2
552
+ summary: Self-healing, auto-scaling system administration, provisioning and maintaining tool that makes cloud computing fun and easy
553
+ test_files:
554
+ - test/test_generator_helper.rb
555
+ - test/test_helper.rb
556
+ - test/test_pool_spec_generator.rb
557
+ - test/test_poolparty.rb
@@ -74,7 +74,7 @@ describe "ProvisionerBase" do
74
74
  "cruel world"
75
75
  end
76
76
  def default_install_tasks
77
- [] << install_tasks
77
+ [] << install_tasks << custom_install_tasks
78
78
  end
79
79
  end
80
80
  @provisioner = BTestProvisioner.new(@remote_instance, @cloud)
@@ -98,6 +98,10 @@ describe "ProvisionerBase" do
98
98
  @provisioner.stub!(:last_install_tasks).and_return ["pops"]
99
99
  @provisioner.install_string.should == "hello \n \n cruel world \n pops"
100
100
  end
101
+ it "should append the custom_install_tasks_for from the cloud" do
102
+ @cloud.stub!(:custom_install_tasks_for).and_return ["echo 'hi from custom'"]
103
+ @provisioner.install_string.should =~ /echo 'hi from custom'/
104
+ end
101
105
  after do
102
106
  @provisioner.install_string
103
107
  end
@@ -302,6 +302,7 @@ describe "Cloud" do
302
302
  describe "prepare_for_configuration" do
303
303
  before(:each) do
304
304
  @cloud.stub!(:copy_ssh_key).and_return true
305
+ @cloud.stub!(:before_configuration_tasks).and_return []
305
306
  end
306
307
  it "should make_base_directory" do
307
308
  @cloud.should_receive(:make_base_directory).at_least(1)
@@ -312,6 +313,9 @@ describe "Cloud" do
312
313
  it "should copy_custom_monitors" do
313
314
  @cloud.should_receive(:copy_custom_monitors).once
314
315
  end
316
+ it "should call before_configuration_tasks callback" do
317
+ @cloud.should_receive(:before_configuration_tasks).once
318
+ end
315
319
  describe "copy_custom_monitors" do
316
320
  before(:each) do
317
321
  Base.stub!(:custom_monitor_directories).and_return ["/tmp/monitors/custom_monitor.rb"]
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.73</a>
37
+ <a href="http://rubyforge.org/projects/poolparty" class="numbers">0.2.76</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.74
4
+ version: 0.2.76
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-03 00:00:00 -08:00
12
+ date: 2008-12-04 00:00:00 -08:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -342,31 +342,31 @@ files:
342
342
  - lib/poolparty/plugins/rsyncmirror.rb
343
343
  - lib/poolparty/plugins/runit.rb
344
344
  - lib/poolparty/plugins/svn.rb
345
- - lib/poolparty/pool/base.rb
346
- - lib/poolparty/pool/cloud.rb
347
- - lib/poolparty/pool/custom_resource.rb
348
- - lib/poolparty/pool/loggable.rb
349
- - lib/poolparty/pool/plugin.rb
350
- - lib/poolparty/pool/plugin_model.rb
351
- - lib/poolparty/pool/pool.rb
352
- - lib/poolparty/pool/resource.rb
353
- - lib/poolparty/pool/resources/class_package.rb
354
- - lib/poolparty/pool/resources/conditional.rb
355
- - lib/poolparty/pool/resources/cron.rb
356
- - lib/poolparty/pool/resources/custom_service.rb
357
- - lib/poolparty/pool/resources/directory.rb
358
- - lib/poolparty/pool/resources/exec.rb
359
- - lib/poolparty/pool/resources/file.rb
360
- - lib/poolparty/pool/resources/gem_package.rb
361
- - lib/poolparty/pool/resources/host.rb
362
- - lib/poolparty/pool/resources/mount.rb
363
- - lib/poolparty/pool/resources/package.rb
364
- - lib/poolparty/pool/resources/remote_file.rb
365
- - lib/poolparty/pool/resources/service.rb
366
- - lib/poolparty/pool/resources/sshkey.rb
367
- - lib/poolparty/pool/resources/symlink.rb
368
- - lib/poolparty/pool/resources/variable.rb
369
- - lib/poolparty/pool/script.rb
345
+ - lib/poolparty/poolparty/base.rb
346
+ - lib/poolparty/poolparty/cloud.rb
347
+ - lib/poolparty/poolparty/custom_resource.rb
348
+ - lib/poolparty/poolparty/loggable.rb
349
+ - lib/poolparty/poolparty/plugin.rb
350
+ - lib/poolparty/poolparty/plugin_model.rb
351
+ - lib/poolparty/poolparty/pool.rb
352
+ - lib/poolparty/poolparty/resource.rb
353
+ - lib/poolparty/poolparty/resources/class_package.rb
354
+ - lib/poolparty/poolparty/resources/conditional.rb
355
+ - lib/poolparty/poolparty/resources/cron.rb
356
+ - lib/poolparty/poolparty/resources/custom_service.rb
357
+ - lib/poolparty/poolparty/resources/directory.rb
358
+ - lib/poolparty/poolparty/resources/exec.rb
359
+ - lib/poolparty/poolparty/resources/file.rb
360
+ - lib/poolparty/poolparty/resources/gem_package.rb
361
+ - lib/poolparty/poolparty/resources/host.rb
362
+ - lib/poolparty/poolparty/resources/mount.rb
363
+ - lib/poolparty/poolparty/resources/package.rb
364
+ - lib/poolparty/poolparty/resources/remote_file.rb
365
+ - lib/poolparty/poolparty/resources/service.rb
366
+ - lib/poolparty/poolparty/resources/sshkey.rb
367
+ - lib/poolparty/poolparty/resources/symlink.rb
368
+ - lib/poolparty/poolparty/resources/variable.rb
369
+ - lib/poolparty/poolparty/script.rb
370
370
  - lib/poolparty/spec/core/string.rb
371
371
  - lib/poolparty/spec/matchers/a_spec_extensions_base.rb
372
372
  - lib/poolparty/spec/matchers/have_cron.rb
@@ -411,7 +411,7 @@ files:
411
411
  - lib/poolpartycl.rb
412
412
  - lib/poolpartyspec.rb
413
413
  - log/pool.log
414
- - log/pool.logs
414
+ - poolparty.gemspec
415
415
  - script/destroy
416
416
  - script/generate
417
417
  - script/txt2html
@@ -507,7 +507,7 @@ files:
507
507
  has_rdoc: true
508
508
  homepage: http://poolparty.rubyforge.org
509
509
  post_install_message: |-
510
- Get ready to jump in the pool, you just installed PoolParty! (Updated at 18:16 12/03/08)
510
+ Get ready to jump in the pool, you just installed PoolParty! (Updated at 23:33 12/04/08)
511
511
 
512
512
  To get started, run the generator:
513
513