auser-poolparty 0.2.8 → 0.2.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. data/Manifest.txt +5 -1
  2. data/bin/cloud +1 -1
  3. data/bin/pool +1 -1
  4. data/bin/server-list-active +25 -0
  5. data/lib/poolparty/base_packages/haproxy.rb +2 -2
  6. data/lib/poolparty/base_packages/heartbeat.rb +12 -2
  7. data/lib/poolparty/base_packages/poolparty.rb +4 -2
  8. data/lib/poolparty/core/string.rb +2 -1
  9. data/lib/poolparty/helpers/provisioner_base.rb +2 -2
  10. data/lib/poolparty/helpers/provisioners/master.rb +11 -8
  11. data/lib/poolparty/helpers/provisioners/slave.rb +3 -3
  12. data/lib/poolparty/modules/file_writer.rb +8 -0
  13. data/lib/poolparty/net/remote_instance.rb +1 -1
  14. data/lib/poolparty/pool/base.rb +11 -2
  15. data/lib/poolparty/pool/cloud.rb +11 -1
  16. data/lib/poolparty/pool/loggable.rb +3 -0
  17. data/lib/poolparty/pool/pool.rb +1 -1
  18. data/lib/poolparty/pool/resources/variable.rb +7 -6
  19. data/lib/poolparty/puppet_plugins/poolparty/plugins/puppet/parser/functions/activenodeips.rb +11 -0
  20. data/lib/poolparty/puppet_plugins/poolparty/plugins/puppet/parser/functions/activenodenames.rb +11 -0
  21. data/lib/poolparty/templates/ha.cf +9 -2
  22. data/lib/poolparty/templates/haresources +3 -0
  23. data/lib/poolparty/templates/poolparty.monitor +14 -0
  24. data/lib/poolparty/templates/puppet.conf +3 -4
  25. data/lib/poolparty/version.rb +1 -1
  26. data/poolparty.gemspec +4 -4
  27. data/spec/poolparty/core/string_spec.rb +7 -1
  28. data/spec/poolparty/helpers/provisioners/master_spec.rb +2 -2
  29. data/spec/poolparty/helpers/provisioners/slave_spec.rb +1 -1
  30. data/spec/poolparty/pool/pool_spec.rb +1 -1
  31. data/spec/poolparty/pool/resources/variable_spec.rb +4 -0
  32. data/website/index.html +5 -5
  33. data/website/index.txt +3 -3
  34. metadata +8 -3
@@ -25,6 +25,7 @@ bin/pool-provision
25
25
  bin/pool-spec
26
26
  bin/pool-start
27
27
  bin/pool-start-monitor
28
+ bin/server-list-active
28
29
  config/hoe.rb
29
30
  config/requirements.rb
30
31
  examples/basic.rb
@@ -106,13 +107,17 @@ lib/poolparty/pool/resources/sshkey.rb
106
107
  lib/poolparty/pool/resources/symlink.rb
107
108
  lib/poolparty/pool/resources/variable.rb
108
109
  lib/poolparty/pool/script.rb
110
+ lib/poolparty/puppet_plugins/poolparty/plugins/puppet/parser/functions/activenodeips.rb
111
+ lib/poolparty/puppet_plugins/poolparty/plugins/puppet/parser/functions/activenodenames.rb
109
112
  lib/poolparty/templates/authkeys
110
113
  lib/poolparty/templates/cib.xml
111
114
  lib/poolparty/templates/fileserver.conf
112
115
  lib/poolparty/templates/gem
113
116
  lib/poolparty/templates/ha.cf
114
117
  lib/poolparty/templates/haproxy.conf
118
+ lib/poolparty/templates/haresources
115
119
  lib/poolparty/templates/namespaceauth.conf
120
+ lib/poolparty/templates/poolparty.monitor
116
121
  lib/poolparty/templates/puppet.conf
117
122
  lib/poolparty/version.rb
118
123
  lib/poolpartycl.rb
@@ -143,7 +148,6 @@ spec/poolparty/modules/configurable_spec.rb
143
148
  spec/poolparty/modules/definable_resource.rb
144
149
  spec/poolparty/modules/file_writer_spec.rb
145
150
  spec/poolparty/modules/s3_string_spec.rb
146
- spec/poolparty/modules/tmp/willy/nilly.rb
147
151
  spec/poolparty/net/remote_bases/ec2_spec.rb
148
152
  spec/poolparty/net/remote_instance_spec.rb
149
153
  spec/poolparty/net/remote_spec.rb
data/bin/cloud CHANGED
@@ -1,4 +1,4 @@
1
- #!/usr/bin/ruby
1
+ #!/usr/bin/env ruby
2
2
  $:.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
3
3
  require "poolparty"
4
4
  require "poolpartycl"
data/bin/pool CHANGED
@@ -1,4 +1,4 @@
1
- #!/usr/bin/ruby
1
+ #!/usr/bin/env ruby
2
2
  $:.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
3
3
  require "poolparty"
4
4
  require "poolpartycl"
@@ -0,0 +1,25 @@
1
+ #!/usr/bin/env ruby
2
+ $:.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
3
+ require "poolparty"
4
+ require "poolpartycl"
5
+
6
+ o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
7
+ opts.on('-c name', '--class name', 'Listing for cloud class (valid args: [name|ip])') { |t| optioner.classname t }
8
+ opts.on('-n name', '--name name', 'Listing for cloud name') { |c| optioner.cloudname c }
9
+ end
10
+
11
+ load_pool(o.spec || Binary.get_existing_spec_location)
12
+
13
+ @ctype = (o.classname || "name").downcase.to_sym
14
+
15
+ include Remote
16
+
17
+ @clouds = o.cloudname ? [cloud(o.cloudname.downcase.to_sym)] : clouds
18
+
19
+ @clouds.each do |name, cloud|
20
+
21
+ with_cloud(cloud, {:location => @location, :ctype => @ctype}) do
22
+ puts "[ #{list_of_running_instances.map{|a| "'#{a.send ctype}'" }.join(", ")} ]"
23
+ end
24
+
25
+ end
@@ -21,8 +21,8 @@ module PoolParty
21
21
 
22
22
  # Tempalte variables
23
23
  variable(:name => "name_haproxy", :value => "#{@parent.name}")
24
- variable(:name => "nodenames_haproxy", :value => list_of_node_names)
25
- variable(:name => "node_ips_haproxy", :value => list_of_node_ips)
24
+ variable(:name => "nodenames_haproxy", :value => 'generate(". /etc/profile && server-list-active -c name")')
25
+ variable(:name => "node_ips_haproxy", :value => 'generate(". /etc/profile && server-list-active -c ip")')
26
26
  variable(:name => "ports_haproxy", :value => ([(self.respond_to?(:port) ? port : Base.port)].flatten))
27
27
  variable(:name => "forwarding_port", :value => (respond_to?(:forwarding_port) ? forwarding_port : Base.forwarding_port))
28
28
  variable(:name => "proxy_mode", :value => (respond_to?(:proxy_mode) ? proxy_mode : Base.proxy_mode))
@@ -12,8 +12,9 @@ module PoolParty
12
12
  has_exec(:name => "heartbeat-update-cib", :command => "/usr/sbin/cibadmin -R -x /etc/ha.d/cib.xml", :refreshonly => true)
13
13
 
14
14
  # variables for the templates
15
- has_variable({:name => "ha_nodenames", :value => list_of_node_names})
16
- has_variable({:name => "ha_node_ips", :value => list_of_node_ips})
15
+ variable(:name => "ha_nodenames", :value => 'generate(". /etc/profile && server-list-active -c name")')
16
+ variable(:name => "ha_node_ips", :value => 'generate(". /etc/profile && server-list-active -c ip")')
17
+
17
18
  has_variable({:name => "ha_timeout", :value => (self.respond_to?(:timeout) ? timeout : "5s")})
18
19
  has_variable({:name => "ha_port", :value => (self.respond_to?(:port) ? port : Base.port)})
19
20
 
@@ -38,6 +39,15 @@ module PoolParty
38
39
  notify 'Exec["heartbeat-update-cib"]'
39
40
  template File.join(File.dirname(__FILE__), "..", "templates/cib.xml")
40
41
  end
42
+
43
+ end
44
+
45
+ execute_if("$hostname", "master") do
46
+ if list_of_node_names.size > 1
47
+ has_exec(:name => "update pem for heartbeat", :refreshonly => true) do
48
+ command "scp /etc/puppet/ssl/ca/ca_crl.pem #{user || Base.user}@#{list_of_node_ips[1]}:/etc/puppet/ssl/ca"
49
+ end
50
+ end
41
51
  end
42
52
 
43
53
  end
@@ -25,8 +25,10 @@ module PoolParty
25
25
  end
26
26
 
27
27
  # -n #{parent.name}
28
- has_cron({:command => ". /etc/profile && which cloud-maintain | /bin/sh"}) do
29
- minute "*/2"
28
+ execute_if("$hostname", "master") do
29
+ has_cron({:command => ". /etc/profile && which cloud-maintain | /bin/sh"}) do
30
+ minute "*/5"
31
+ end
30
32
  end
31
33
  # has_host(:name => "puppet", :ip => (self.respond_to?(:master) ? self : parent).master.ip)
32
34
  end
@@ -35,10 +35,11 @@ class String
35
35
  def to_option_string(ns=[])
36
36
  a_template = (self =~ /template/) == 0
37
37
  a_service = self =~ /^[A-Z][a-zA-Z]*\[[a-zA-Z0-9\-\.\"\'_\$\{\}\/]*\]/
38
+ a_function = self =~/(.)*\((.)*\)(.)*/
38
39
  if is_a?(PoolParty::Resources::Resource)
39
40
  self.to_s
40
41
  else
41
- (a_service || a_template) ? "#{self}" : "'#{self}'"
42
+ (a_service || a_template || a_function) ? self : "'#{self}'"
42
43
  end
43
44
  end
44
45
  # Refactor this guy to get the class if the class is defined, and not always create a new one
@@ -137,7 +137,7 @@ module PoolParty
137
137
  [
138
138
  upgrade_system,
139
139
  fix_rubygems,
140
- install_puppet_master,
140
+ install_puppet,
141
141
  custom_install_tasks
142
142
  ] << install_tasks
143
143
  end
@@ -237,7 +237,7 @@ module PoolParty
237
237
  end
238
238
  end
239
239
 
240
- def install_puppet_master
240
+ def install_puppet
241
241
  "#{installer_for( puppet_packages )}"
242
242
  end
243
243
 
@@ -32,19 +32,13 @@ module PoolParty
32
32
  start_puppetmaster,
33
33
  create_local_node,
34
34
  move_templates,
35
+ move_plugins,
35
36
  create_poolparty_manifest,
36
37
  restart_puppetd
37
38
  ]
38
39
  end
39
40
 
40
- # def install_haproxy
41
- # "#{installer_for( "haproxy" )}"
42
- # end
43
- #
44
- # def install_heartbeat
45
- # "#{installer_for( "heartbeat-2" )}"
46
- # end
47
-
41
+ # If the master is not in the hosts file, then add it to the hosts file
48
42
  def create_local_hosts_entry
49
43
  <<-EOS
50
44
  if [ -z \"$(grep -v '#' /etc/hosts | grep 'master')" ]; then echo '#{@master_ip} puppet master' >> /etc/hosts; fi
@@ -107,6 +101,15 @@ mkdir -p #{Base.template_path}
107
101
  cp #{Base.remote_storage_path}/#{Base.template_directory}/* #{Base.template_path}
108
102
  EOS
109
103
  end
104
+
105
+ def move_plugins
106
+ <<-EOS
107
+ mkdir -p #{Base.module_path}
108
+ cp -R #{Base.remote_storage_path}/#{Base.plugin_directory}/ #{Base.module_path}
109
+ mkdir -p /var/lib/puppet/lib/parser/functions/
110
+ cp -R #{Base.remote_storage_path}/#{Base.plugin_directory}/puppet/* /var/lib/puppet/lib/parser/functions/
111
+ EOS
112
+ end
110
113
 
111
114
  def create_poolparty_manifest
112
115
  <<-EOS
@@ -18,19 +18,19 @@ module PoolParty
18
18
  def setup_puppet
19
19
  <<-EOE
20
20
  if [ -z "$(grep -v '#' /etc/hosts | grep 'master')" ]; then echo "#{master_ip} puppet master" >> /etc/hosts; else echo "host already set"; fi
21
- mv #{Base.remote_storage_path}/#{Base.tmp_path}/namespaceauth.conf /etc/puppet/namespaceauth.conf
21
+ cp #{Base.remote_storage_path}/#{Base.tmp_path}/namespaceauth.conf /etc/puppet/namespaceauth.conf
22
22
  EOE
23
23
  end
24
24
 
25
25
  def setup_configs
26
- <<-EOS
27
- /etc/init.d/puppetmasterd stop
26
+ <<-EOS
28
27
  echo "#{open(File.join(template_directory, "puppet.conf")).read}" > /etc/puppet/puppet.conf
29
28
  EOS
30
29
  end
31
30
 
32
31
  def start_puppet
33
32
  <<-EOS
33
+ /etc/init.d/puppetmasterd stop
34
34
  puppetd --listen --fqdn #{@instance.name}
35
35
  EOS
36
36
  end
@@ -10,6 +10,11 @@ module PoolParty
10
10
  path = ::File.join( Base.template_directory, ::File.basename(file) )
11
11
  FileUtils.cp file, path
12
12
  end
13
+ def copy_plugin_to_storage_directory(file)
14
+ make_plugin_directory
15
+ path = ::File.join( Base.plugin_directory, ::File.basename(file) )
16
+ FileUtils.cp file, path
17
+ end
13
18
  def write_to_file_in_storage_directory(file, str, &block)
14
19
  path = ::File.join( Base.storage_directory, ::File.basename(file) )
15
20
  write_to_file(path, str, &block)
@@ -48,6 +53,9 @@ module PoolParty
48
53
  def make_template_directory
49
54
  FileUtils.mkdir_p Base.template_directory unless ::File.directory?(Base.template_directory)
50
55
  end
56
+ def make_plugin_directory
57
+ FileUtils.mkdir_p Base.plugin_directory unless ::File.directory?(Base.plugin_directory)
58
+ end
51
59
  def clear_base_directory
52
60
  FileUtils::rm_rf "#{Base.storage_directory}"
53
61
  end
@@ -61,7 +61,7 @@ module PoolParty
61
61
  # Printing. This is how we extract the instances into the listing on the
62
62
  # local side into the local listing file
63
63
  def to_s
64
- "#{name} #{ip}"
64
+ "#{name}\t#{ip}"
65
65
  end
66
66
  end
67
67
 
@@ -14,12 +14,13 @@ module PoolParty
14
14
  :user => "root", # This should change here
15
15
  :base_keypair_path => "~/.ec2",
16
16
  :tmp_path => "tmp",
17
- :remote_storage_path => "/var/poolparty",
18
- :storage_directory => File.join(Dir.pwd, "tmp"),
17
+ :remote_storage_path => "/var/poolparty",
19
18
  :fileserver_base => "puppet:///files",
20
19
  :base_config_directory => "/etc/poolparty",
21
20
  :template_directory => "tmp/templates",
21
+ :plugin_directory => "tmp/plugins",
22
22
  :template_path => "/var/lib/puppet/templates",
23
+ :module_path => "/etc/puppet/modules/poolparty",
23
24
  :default_specfile_name => "pool.spec",
24
25
  :port => "80",
25
26
  :forwarding_port => "8080",
@@ -68,6 +69,14 @@ module PoolParty
68
69
  "ppkeys"
69
70
  ]
70
71
  end
72
+
73
+ def storage_directory
74
+ [
75
+ "/var/poolparty"
76
+ ].select do |dir|
77
+ dir if ::File.directory?(dir) && ::File.readable?(dir)
78
+ end.first || ::File.join(Dir.pwd, "tmp")
79
+ end
71
80
 
72
81
  def pool_logger_location
73
82
  File.join(Dir.pwd, "logs")
@@ -54,11 +54,14 @@ module PoolParty
54
54
  def keypair(*args)
55
55
  has_keypair? ? options[:keypair] : generate_keypair(*args)
56
56
  end
57
+ # Let's just make sure that the keypair exists on the options
57
58
  def has_keypair?
58
59
  options.has_key?(:keypair) && options[:keypair]
59
60
  end
61
+ # Generate a keypair based on the parent's name (if there is a parent)
62
+ # and the cloud's name
60
63
  def generate_keypair(*args)
61
- options[:keypair] = args.length > 0 ? args[0] : "#{@parent.respond_to?(:name) ? @parent.name : ""}_#{@name}"
64
+ options[:keypair] = args.length > 0 ? args[0] : "#{@parent && @parent.respond_to?(:name) ? @parent.name : ""}_#{@name}"
62
65
  end
63
66
 
64
67
  # Prepare to send the new configuration to the instances
@@ -73,6 +76,7 @@ module PoolParty
73
76
  # clear_base_directory
74
77
  make_base_directory
75
78
  copy_misc_templates
79
+ copy_puppet_functions
76
80
  Base.store_keys_in_file
77
81
  Script.save!
78
82
  copy_ssh_key # not my favorite...
@@ -105,6 +109,12 @@ module PoolParty
105
109
  end
106
110
  end
107
111
 
112
+ # TODO: Fix for windowz
113
+ def copy_puppet_functions
114
+ cmd = "cp -R #{::File.join(::File.dirname(__FILE__), "..", "puppet_plugins/")} #{Base.storage_directory}/plugins"
115
+ %x[#{cmd}]
116
+ end
117
+
108
118
  # Configuration files
109
119
  def build_manifest
110
120
  @build_manifest ||= build_from_existing_file
@@ -1,3 +1,6 @@
1
+ =begin rdoc
2
+ A logging class to allow us to log to locations
3
+ =end
1
4
  class Loggable
2
5
  def initialize
3
6
  Logging.init :debug, :info, :warn, :error, :fatal
@@ -39,7 +39,7 @@ module PoolParty
39
39
  end
40
40
 
41
41
  def plugin_directory(*args)
42
- args.each {|arg| Dir["#{arg}/*.rb"].each {|f| load f }}
42
+ args.each {|arg| Dir["#{arg}/*/*.rb"].each {|f| require f }}
43
43
  end
44
44
 
45
45
  # This is where the entire process starts
@@ -13,12 +13,13 @@ module PoolParty
13
13
  end
14
14
 
15
15
  def value_string
16
- case value.class.to_s
17
- when "Array"
18
- "[ #{value.map{|a| "'#{a}'"}.join(", ")} ]"
19
- else
20
- "'#{value}'"
21
- end
16
+ value.to_option_string
17
+ # case value.class.to_s
18
+ # when "Array"
19
+ # "[ #{value.map{|a| "'#{a}'"}.join(", ")} ]"
20
+ # else
21
+ # "'#{value}'"
22
+ # end
22
23
  end
23
24
 
24
25
  end
@@ -0,0 +1,11 @@
1
+ module Puppet::Parser::Functions
2
+ newfunction(:active_node_ips, :type => :rvalue) do |args|
3
+ output = []
4
+ ret = %x[. /etc/profile && cloud-list]
5
+ active_node_list = ret.split(/\n/).map {|a| a.chomp}.reject {|a| a.nil? || a.empty? || a =~ /\*\*/}
6
+ active_node_list.each do |line|
7
+ output << line.split(/\t/)[1]
8
+ end
9
+ output
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ module Puppet::Parser::Functions
2
+ newfunction(:active_node_names, :type => :rvalue) do |args|
3
+ output = []
4
+ ret = %x[. /etc/profile && cloud-list]
5
+ active_node_list = ret.split(/\n/).map {|a| a.chomp}.reject {|a| a.nil? || a.empty? || a =~ /\*\*/}
6
+ active_node_list.each do |line|
7
+ output << line.split(/\t/)[0]
8
+ end
9
+ output
10
+ end
11
+ end
@@ -1,4 +1,4 @@
1
- # Haproxy conf
1
+ # Heartbeat
2
2
  keepalive 2 # Time inbetween heartbeats
3
3
  deadtime 32 # wait 32 seconds before declaring dead
4
4
  warntime 16 # issue a warning halfway through
@@ -7,6 +7,13 @@ logfacility daemon # Log to syslog as facility "daemon"
7
7
  auto_failback off
8
8
  use_logd yes
9
9
  bcast eth0
10
- crm respawn
10
+ crm on
11
+ logfile /var/log/ha.log
12
+
13
+ <% ha_node_ips.each_with_index do |ip,index| -%>
14
+ <% if $hostname != ha_nodenames[index] -%>
15
+ ucast eth0 <%= ip %>
16
+ <% end %>
17
+ <% end %>
11
18
 
12
19
  node <%= ha_nodenames.join(" ") %>
@@ -0,0 +1,3 @@
1
+ <% ha_nodenames.each_with_index do |name, index| -%>
2
+ <%= name -%> <%= ha_node_ips[index] -%>/eth0:0
3
+ <% end %>
@@ -0,0 +1,14 @@
1
+ #!/bin/bash
2
+ # Based on puppet High Availability recipe
3
+ #
4
+ # http://reductivelabs.com/trac/puppet/wiki/Recipes/HighAvailability
5
+ # Modified for PoolParty
6
+ #
7
+ exitstatus=0
8
+ processid=`ps aux | grep puppetmasterd | awk '{print $2}'`
9
+
10
+ if [ -z $processid ] || test `netstat -apn | grep "${processid}/ruby" | wc -l` -eq 0 ; then
11
+ exitstatus=1
12
+ fi
13
+
14
+ exit $exitstatus
@@ -1,12 +1,11 @@
1
1
  [main]
2
2
  vardir = /var/lib/puppet
3
3
  logdir = /var/log/puppet
4
- templatepath = /var/lib/puppet/templates
4
+ pluginsync=true
5
+ factsync=false
5
6
 
6
7
  [puppetd]
7
- localconfig = $vardir/localconfig
8
- pluginsync=false
9
- factsync=false
8
+ localconfig = $vardir/localconfig
10
9
  report=true
11
10
  server=master
12
11
 
@@ -2,7 +2,7 @@ module PoolParty
2
2
  module VERSION #:nodoc:
3
3
  MAJOR = 0
4
4
  MINOR = 2
5
- TINY = 8
5
+ TINY = 9
6
6
 
7
7
  STRING = [MAJOR, MINOR, TINY].join('.')
8
8
  end
@@ -1,15 +1,15 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = %q{poolparty}
3
- s.version = "0.2.8"
3
+ s.version = "0.2.9"
4
4
 
5
5
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
6
6
  s.authors = ["Ari Lerner"]
7
- s.date = %q{2008-10-15}
7
+ s.date = %q{2008-10-16}
8
8
  s.description = %q{Self-healing, auto-scaling cloud computing tool}
9
9
  s.email = ["ari.lerner@citrusbyte.com"]
10
- s.executables = ["cloud", "cloud-add-keypair", "cloud-configure", "cloud-contract", "cloud-expand", "cloud-list", "cloud-maintain", "cloud-osxcopy", "cloud-provision", "cloud-refresh", "cloud-ssh", "cloud-start", "cloud-terminate", "pool", "pool-console", "pool-describe", "pool-list", "pool-provision", "pool-spec", "pool-start", "pool-start-monitor"]
10
+ s.executables = ["cloud", "cloud-add-keypair", "cloud-configure", "cloud-contract", "cloud-expand", "cloud-list", "cloud-maintain", "cloud-osxcopy", "cloud-provision", "cloud-refresh", "cloud-ssh", "cloud-start", "cloud-terminate", "pool", "pool-console", "pool-describe", "pool-list", "pool-provision", "pool-spec", "pool-start", "pool-start-monitor", "server-list-active"]
11
11
  s.extra_rdoc_files = ["History.txt", "License.txt", "Manifest.txt", "PostInstall.txt", "README.txt", "website/index.txt"]
12
- s.files = ["History.txt", "License.txt", "Manifest.txt", "PostInstall.txt", "README.txt", "Rakefile", "bin/cloud", "bin/cloud-add-keypair", "bin/cloud-configure", "bin/cloud-contract", "bin/cloud-expand", "bin/cloud-list", "bin/cloud-maintain", "bin/cloud-osxcopy", "bin/cloud-provision", "bin/cloud-refresh", "bin/cloud-ssh", "bin/cloud-start", "bin/cloud-terminate", "bin/pool", "bin/pool-console", "bin/pool-describe", "bin/pool-list", "bin/pool-provision", "bin/pool-spec", "bin/pool-start", "bin/pool-start-monitor", "config/hoe.rb", "config/requirements.rb", "examples/basic.rb", "examples/plugin_without_plugin_directory.rb", "examples/poolparty.rb", "examples/with_apache_plugin.rb", "generators/poolspec/USAGE", "generators/poolspec/poolspec_generator.rb", "generators/poolspec/templates/pool_spec_template.erb", "lib/erlang/eb_server.erl", "lib/poolparty.rb", "lib/poolparty/base_packages/haproxy.rb", "lib/poolparty/base_packages/heartbeat.rb", "lib/poolparty/base_packages/poolparty.rb", "lib/poolparty/base_packages/ruby.rb", "lib/poolparty/core/array.rb", "lib/poolparty/core/exception.rb", "lib/poolparty/core/float.rb", "lib/poolparty/core/hash.rb", "lib/poolparty/core/kernel.rb", "lib/poolparty/core/module.rb", "lib/poolparty/core/my_open_struct.rb", "lib/poolparty/core/object.rb", "lib/poolparty/core/proc.rb", "lib/poolparty/core/string.rb", "lib/poolparty/core/symbol.rb", "lib/poolparty/core/time.rb", "lib/poolparty/exceptions/RemoteException.rb", "lib/poolparty/exceptions/ResourceException.rb", "lib/poolparty/exceptions/RuntimeException.rb", "lib/poolparty/exceptions/SpecException.rb", "lib/poolparty/exceptions/TemplateNotFound.rb", "lib/poolparty/helpers/binary.rb", "lib/poolparty/helpers/console.rb", "lib/poolparty/helpers/display.rb", "lib/poolparty/helpers/optioner.rb", "lib/poolparty/helpers/provisioner_base.rb", "lib/poolparty/helpers/provisioners/master.rb", "lib/poolparty/helpers/provisioners/slave.rb", "lib/poolparty/modules/cloud_resourcer.rb", "lib/poolparty/modules/configurable.rb", "lib/poolparty/modules/definable_resource.rb", "lib/poolparty/modules/file_writer.rb", "lib/poolparty/modules/method_missing_sugar.rb", "lib/poolparty/modules/output.rb", "lib/poolparty/modules/pretty_printer.rb", "lib/poolparty/modules/s3_string.rb", "lib/poolparty/modules/safe_instance.rb", "lib/poolparty/monitors/base_monitor.rb", "lib/poolparty/net/remote.rb", "lib/poolparty/net/remote_bases/ec2.rb", "lib/poolparty/net/remote_instance.rb", "lib/poolparty/net/remoter.rb", "lib/poolparty/net/remoter_base.rb", "lib/poolparty/plugins/gem_package.rb", "lib/poolparty/plugins/git.rb", "lib/poolparty/plugins/line.rb", "lib/poolparty/plugins/svn.rb", "lib/poolparty/pool/base.rb", "lib/poolparty/pool/cloud.rb", "lib/poolparty/pool/custom_resource.rb", "lib/poolparty/pool/loggable.rb", "lib/poolparty/pool/plugin.rb", "lib/poolparty/pool/plugin_model.rb", "lib/poolparty/pool/pool.rb", "lib/poolparty/pool/resource.rb", "lib/poolparty/pool/resources/class_package.rb", "lib/poolparty/pool/resources/conditional.rb", "lib/poolparty/pool/resources/cron.rb", "lib/poolparty/pool/resources/directory.rb", "lib/poolparty/pool/resources/exec.rb", "lib/poolparty/pool/resources/file.rb", "lib/poolparty/pool/resources/gem.rb", "lib/poolparty/pool/resources/host.rb", "lib/poolparty/pool/resources/package.rb", "lib/poolparty/pool/resources/remote_file.rb", "lib/poolparty/pool/resources/service.rb", "lib/poolparty/pool/resources/sshkey.rb", "lib/poolparty/pool/resources/symlink.rb", "lib/poolparty/pool/resources/variable.rb", "lib/poolparty/pool/script.rb", "lib/poolparty/templates/authkeys", "lib/poolparty/templates/cib.xml", "lib/poolparty/templates/fileserver.conf", "lib/poolparty/templates/gem", "lib/poolparty/templates/ha.cf", "lib/poolparty/templates/haproxy.conf", "lib/poolparty/templates/namespaceauth.conf", "lib/poolparty/templates/puppet.conf", "lib/poolparty/version.rb", "lib/poolpartycl.rb", "poolparty.gemspec", "script/destroy", "script/generate", "script/txt2html", "setup.rb", "spec/poolparty/base_packages/haproxy_spec.rb", "spec/poolparty/base_packages/heartbeat_spec.rb", "spec/poolparty/bin/console_spec.rb", "spec/poolparty/core/array_spec.rb", "spec/poolparty/core/float.rb", "spec/poolparty/core/hash_spec.rb", "spec/poolparty/core/kernel_spec.rb", "spec/poolparty/core/module_spec.rb", "spec/poolparty/core/object_spec.rb", "spec/poolparty/core/string_spec.rb", "spec/poolparty/core/time_spec.rb", "spec/poolparty/helpers/binary_spec.rb", "spec/poolparty/helpers/display_spec.rb", "spec/poolparty/helpers/optioner_spec.rb", "spec/poolparty/helpers/provisioner_base_spec.rb", "spec/poolparty/helpers/provisioners/master_spec.rb", "spec/poolparty/helpers/provisioners/slave_spec.rb", "spec/poolparty/modules/cloud_resourcer_spec.rb", "spec/poolparty/modules/configurable_spec.rb", "spec/poolparty/modules/definable_resource.rb", "spec/poolparty/modules/file_writer_spec.rb", "spec/poolparty/modules/s3_string_spec.rb", "spec/poolparty/modules/tmp/willy/nilly.rb", "spec/poolparty/net/remote_bases/ec2_spec.rb", "spec/poolparty/net/remote_instance_spec.rb", "spec/poolparty/net/remote_spec.rb", "spec/poolparty/net/remoter_base_spec.rb", "spec/poolparty/net/remoter_spec.rb", "spec/poolparty/plugins/git_spec.rb", "spec/poolparty/plugins/line_spec.rb", "spec/poolparty/plugins/svn_spec.rb", "spec/poolparty/pool/base_spec.rb", "spec/poolparty/pool/cloud_spec.rb", "spec/poolparty/pool/configurers/files/ruby_basic.rb", "spec/poolparty/pool/configurers/files/ruby_plugins.rb", "spec/poolparty/pool/configurers/ruby_spec.rb", "spec/poolparty/pool/custom_resource_spec.rb", "spec/poolparty/pool/example_spec.rb", "spec/poolparty/pool/plugin_model_spec.rb", "spec/poolparty/pool/plugin_spec.rb", "spec/poolparty/pool/pool_spec.rb", "spec/poolparty/pool/resource_spec.rb", "spec/poolparty/pool/resources/class_package_spec.rb", "spec/poolparty/pool/resources/conditional_spec.rb", "spec/poolparty/pool/resources/cron_spec.rb", "spec/poolparty/pool/resources/directory_spec.rb", "spec/poolparty/pool/resources/exec_spec.rb", "spec/poolparty/pool/resources/file_spec.rb", "spec/poolparty/pool/resources/gem_spec.rb", "spec/poolparty/pool/resources/host_spec.rb", "spec/poolparty/pool/resources/package_spec.rb", "spec/poolparty/pool/resources/remote_file_spec.rb", "spec/poolparty/pool/resources/service_spec.rb", "spec/poolparty/pool/resources/sshkey_spec.rb", "spec/poolparty/pool/resources/symlink_spec.rb", "spec/poolparty/pool/resources/variable_spec.rb", "spec/poolparty/pool/script_spec.rb", "spec/poolparty/pool/test_plugins/sshkey_test", "spec/poolparty/pool/test_plugins/virtual_host_template.erb", "spec/poolparty/pool/test_plugins/webserver.rb", "spec/poolparty/poolparty_spec.rb", "spec/poolparty/spec_helper.rb", "tasks/cloud.rake", "tasks/deployment.rake", "tasks/development.rake", "tasks/ec2.rake", "tasks/environment.rake", "tasks/instance.rake", "tasks/server.rake", "tasks/spec.rake", "tasks/website.rake", "test/test_generator_helper.rb", "test/test_helper.rb", "test/test_pool_spec_generator.rb", "test/test_poolparty.rb", "test_manifest.pp", "website/index.html", "website/index.txt", "website/javascripts/rounded_corners_lite.inc.js", "website/stylesheets/code.css", "website/stylesheets/screen.css", "website/template.html.erb"]
12
+ s.files = ["History.txt", "License.txt", "Manifest.txt", "PostInstall.txt", "README.txt", "Rakefile", "bin/cloud", "bin/cloud-add-keypair", "bin/cloud-configure", "bin/cloud-contract", "bin/cloud-expand", "bin/cloud-list", "bin/cloud-maintain", "bin/cloud-osxcopy", "bin/cloud-provision", "bin/cloud-refresh", "bin/cloud-ssh", "bin/cloud-start", "bin/cloud-terminate", "bin/pool", "bin/pool-console", "bin/pool-describe", "bin/pool-list", "bin/pool-provision", "bin/pool-spec", "bin/pool-start", "bin/pool-start-monitor", "bin/server-list-active", "config/hoe.rb", "config/requirements.rb", "examples/basic.rb", "examples/plugin_without_plugin_directory.rb", "examples/poolparty.rb", "examples/with_apache_plugin.rb", "generators/poolspec/USAGE", "generators/poolspec/poolspec_generator.rb", "generators/poolspec/templates/pool_spec_template.erb", "lib/erlang/eb_server.erl", "lib/poolparty.rb", "lib/poolparty/base_packages/haproxy.rb", "lib/poolparty/base_packages/heartbeat.rb", "lib/poolparty/base_packages/poolparty.rb", "lib/poolparty/base_packages/ruby.rb", "lib/poolparty/core/array.rb", "lib/poolparty/core/exception.rb", "lib/poolparty/core/float.rb", "lib/poolparty/core/hash.rb", "lib/poolparty/core/kernel.rb", "lib/poolparty/core/module.rb", "lib/poolparty/core/my_open_struct.rb", "lib/poolparty/core/object.rb", "lib/poolparty/core/proc.rb", "lib/poolparty/core/string.rb", "lib/poolparty/core/symbol.rb", "lib/poolparty/core/time.rb", "lib/poolparty/exceptions/RemoteException.rb", "lib/poolparty/exceptions/ResourceException.rb", "lib/poolparty/exceptions/RuntimeException.rb", "lib/poolparty/exceptions/SpecException.rb", "lib/poolparty/exceptions/TemplateNotFound.rb", "lib/poolparty/helpers/binary.rb", "lib/poolparty/helpers/console.rb", "lib/poolparty/helpers/display.rb", "lib/poolparty/helpers/optioner.rb", "lib/poolparty/helpers/provisioner_base.rb", "lib/poolparty/helpers/provisioners/master.rb", "lib/poolparty/helpers/provisioners/slave.rb", "lib/poolparty/modules/cloud_resourcer.rb", "lib/poolparty/modules/configurable.rb", "lib/poolparty/modules/definable_resource.rb", "lib/poolparty/modules/file_writer.rb", "lib/poolparty/modules/method_missing_sugar.rb", "lib/poolparty/modules/output.rb", "lib/poolparty/modules/pretty_printer.rb", "lib/poolparty/modules/s3_string.rb", "lib/poolparty/modules/safe_instance.rb", "lib/poolparty/monitors/base_monitor.rb", "lib/poolparty/net/remote.rb", "lib/poolparty/net/remote_bases/ec2.rb", "lib/poolparty/net/remote_instance.rb", "lib/poolparty/net/remoter.rb", "lib/poolparty/net/remoter_base.rb", "lib/poolparty/plugins/gem_package.rb", "lib/poolparty/plugins/git.rb", "lib/poolparty/plugins/line.rb", "lib/poolparty/plugins/svn.rb", "lib/poolparty/pool/base.rb", "lib/poolparty/pool/cloud.rb", "lib/poolparty/pool/custom_resource.rb", "lib/poolparty/pool/loggable.rb", "lib/poolparty/pool/plugin.rb", "lib/poolparty/pool/plugin_model.rb", "lib/poolparty/pool/pool.rb", "lib/poolparty/pool/resource.rb", "lib/poolparty/pool/resources/class_package.rb", "lib/poolparty/pool/resources/conditional.rb", "lib/poolparty/pool/resources/cron.rb", "lib/poolparty/pool/resources/directory.rb", "lib/poolparty/pool/resources/exec.rb", "lib/poolparty/pool/resources/file.rb", "lib/poolparty/pool/resources/gem.rb", "lib/poolparty/pool/resources/host.rb", "lib/poolparty/pool/resources/package.rb", "lib/poolparty/pool/resources/remote_file.rb", "lib/poolparty/pool/resources/service.rb", "lib/poolparty/pool/resources/sshkey.rb", "lib/poolparty/pool/resources/symlink.rb", "lib/poolparty/pool/resources/variable.rb", "lib/poolparty/pool/script.rb", "lib/poolparty/puppet_plugins/poolparty/plugins/puppet/parser/functions/activenodeips.rb", "lib/poolparty/puppet_plugins/poolparty/plugins/puppet/parser/functions/activenodenames.rb", "lib/poolparty/templates/authkeys", "lib/poolparty/templates/cib.xml", "lib/poolparty/templates/fileserver.conf", "lib/poolparty/templates/gem", "lib/poolparty/templates/ha.cf", "lib/poolparty/templates/haproxy.conf", "lib/poolparty/templates/haresources", "lib/poolparty/templates/namespaceauth.conf", "lib/poolparty/templates/poolparty.monitor", "lib/poolparty/templates/puppet.conf", "lib/poolparty/version.rb", "lib/poolpartycl.rb", "poolparty.gemspec", "script/destroy", "script/generate", "script/txt2html", "setup.rb", "spec/poolparty/base_packages/haproxy_spec.rb", "spec/poolparty/base_packages/heartbeat_spec.rb", "spec/poolparty/bin/console_spec.rb", "spec/poolparty/core/array_spec.rb", "spec/poolparty/core/float.rb", "spec/poolparty/core/hash_spec.rb", "spec/poolparty/core/kernel_spec.rb", "spec/poolparty/core/module_spec.rb", "spec/poolparty/core/object_spec.rb", "spec/poolparty/core/string_spec.rb", "spec/poolparty/core/time_spec.rb", "spec/poolparty/helpers/binary_spec.rb", "spec/poolparty/helpers/display_spec.rb", "spec/poolparty/helpers/optioner_spec.rb", "spec/poolparty/helpers/provisioner_base_spec.rb", "spec/poolparty/helpers/provisioners/master_spec.rb", "spec/poolparty/helpers/provisioners/slave_spec.rb", "spec/poolparty/modules/cloud_resourcer_spec.rb", "spec/poolparty/modules/configurable_spec.rb", "spec/poolparty/modules/definable_resource.rb", "spec/poolparty/modules/file_writer_spec.rb", "spec/poolparty/modules/s3_string_spec.rb", "spec/poolparty/net/remote_bases/ec2_spec.rb", "spec/poolparty/net/remote_instance_spec.rb", "spec/poolparty/net/remote_spec.rb", "spec/poolparty/net/remoter_base_spec.rb", "spec/poolparty/net/remoter_spec.rb", "spec/poolparty/plugins/git_spec.rb", "spec/poolparty/plugins/line_spec.rb", "spec/poolparty/plugins/svn_spec.rb", "spec/poolparty/pool/base_spec.rb", "spec/poolparty/pool/cloud_spec.rb", "spec/poolparty/pool/configurers/files/ruby_basic.rb", "spec/poolparty/pool/configurers/files/ruby_plugins.rb", "spec/poolparty/pool/configurers/ruby_spec.rb", "spec/poolparty/pool/custom_resource_spec.rb", "spec/poolparty/pool/example_spec.rb", "spec/poolparty/pool/plugin_model_spec.rb", "spec/poolparty/pool/plugin_spec.rb", "spec/poolparty/pool/pool_spec.rb", "spec/poolparty/pool/resource_spec.rb", "spec/poolparty/pool/resources/class_package_spec.rb", "spec/poolparty/pool/resources/conditional_spec.rb", "spec/poolparty/pool/resources/cron_spec.rb", "spec/poolparty/pool/resources/directory_spec.rb", "spec/poolparty/pool/resources/exec_spec.rb", "spec/poolparty/pool/resources/file_spec.rb", "spec/poolparty/pool/resources/gem_spec.rb", "spec/poolparty/pool/resources/host_spec.rb", "spec/poolparty/pool/resources/package_spec.rb", "spec/poolparty/pool/resources/remote_file_spec.rb", "spec/poolparty/pool/resources/service_spec.rb", "spec/poolparty/pool/resources/sshkey_spec.rb", "spec/poolparty/pool/resources/symlink_spec.rb", "spec/poolparty/pool/resources/variable_spec.rb", "spec/poolparty/pool/script_spec.rb", "spec/poolparty/pool/test_plugins/sshkey_test", "spec/poolparty/pool/test_plugins/virtual_host_template.erb", "spec/poolparty/pool/test_plugins/webserver.rb", "spec/poolparty/poolparty_spec.rb", "spec/poolparty/spec_helper.rb", "tasks/cloud.rake", "tasks/deployment.rake", "tasks/development.rake", "tasks/ec2.rake", "tasks/environment.rake", "tasks/instance.rake", "tasks/server.rake", "tasks/spec.rake", "tasks/website.rake", "test/test_generator_helper.rb", "test/test_helper.rb", "test/test_pool_spec_generator.rb", "test/test_poolparty.rb", "test_manifest.pp", "website/index.html", "website/index.txt", "website/javascripts/rounded_corners_lite.inc.js", "website/stylesheets/code.css", "website/stylesheets/screen.css", "website/template.html.erb"]
13
13
  s.has_rdoc = true
14
14
  s.homepage = %q{http://poolparty.rubyforge.org}
15
15
  s.post_install_message = %q{Get ready to jump in the pool, you just installed poolpartyrb!
@@ -135,7 +135,13 @@ listen web_proxy 127.0.0.1:3000
135
135
  end
136
136
  @file = @cloud.resource(:file).first
137
137
  @file.to_option_string.should == "File['franke']"
138
- end
138
+ end
139
+ it "should turn a function into a string without quotes" do
140
+ "active_nodes()".to_option_string.should == "active_nodes()"
141
+ end
142
+ it "should turna function into a string outsid ethe quotes with a parameter" do
143
+ "active_nodes(10)".to_option_string.should == "active_nodes(10)"
144
+ end
139
145
  end
140
146
  describe "sanitize" do
141
147
  it "should remove the periods from the string" do
@@ -18,7 +18,7 @@ describe "Master provisioner" do
18
18
  @master.stub!(:cloud).and_return @cloud
19
19
  end
20
20
  it "should call install_puppet_master" do
21
- @master.should_receive(:install_puppet_master)
21
+ @master.should_receive(:install_puppet)
22
22
  end
23
23
  it "should call create_local_hosts_entry" do
24
24
  @master.should_receive(:create_local_hosts_entry)
@@ -37,7 +37,7 @@ describe "Master provisioner" do
37
37
  end
38
38
  end
39
39
  it "should return install_puppet_master as apt-get install puppet factor" do
40
- @master.install_puppet_master.should =~ /apt-get install -y puppet puppetmaster/
40
+ @master.install_puppet.should =~ /apt-get install -y puppet puppetmaster/
41
41
  end
42
42
  it "should return setup basic structure" do
43
43
  @master.setup_basic_structure.should =~ /puppetmasterd --mkusers/
@@ -16,7 +16,7 @@ describe "Slave provisioner" do
16
16
  end
17
17
  describe "install_tasks" do
18
18
  it "should call install_puppet_slave" do
19
- @slave.should_receive(:install_puppet_master)
19
+ @slave.should_receive(:install_puppet)
20
20
  end
21
21
  after do
22
22
  @slave.install
@@ -37,7 +37,7 @@ describe "Pool" do
37
37
  end
38
38
  end
39
39
  it "should call Dir when the plugin directory is set" do
40
- Dir.should_receive(:[]).with("yaway/*.rb").once.and_return []
40
+ Dir.should_receive(:[]).with("yaway/*/*.rb").once.and_return []
41
41
  end
42
42
  end
43
43
  describe "configuration" do
@@ -17,4 +17,8 @@ describe "Variable" do
17
17
  v = variable(:name => "girlfriends", :value => %w(Rachel Erica Michelle))
18
18
  v.to_string.should == "$girlfriends = [ 'Rachel', 'Erica', 'Michelle' ]"
19
19
  end
20
+ it "should set the string to be without a string if it's a function" do
21
+ v = variable(:name => "girlfriends", :value => "lookup_var()")
22
+ v.to_string.should == "$girlfriends = lookup_var()"
23
+ end
20
24
  end
@@ -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.8</a>
37
+ <a href="http://rubyforge.org/projects/poolparty" class="numbers">0.2.9</a>
38
38
  </div>
39
39
  <h1>&#8216;Easy cloud computing&#8217;</h1>
40
40
  <h2>What</h2>
@@ -78,7 +78,7 @@ cloud spec [name]
78
78
  <span class="keyword">end</span>
79
79
  </pre></p>
80
80
  <h2>Forum</h2>
81
- <p><a href="http://groups.google.com/group/PoolParty">http://groups.google.com/group/PoolParty</a></p>
81
+ <p><a href="http://groups.google.com/group/poolpartyrb">http://groups.google.com/group/PoolPartyRb</a></p>
82
82
  <h2>How to submit patches</h2>
83
83
  <p>Read the <a href="http://drnicwilliams.com/2007/06/01/8-steps-for-fixing-other-peoples-code/">8 steps for fixing other people&#8217;s code</a> and for section <a href="http://drnicwilliams.com/2007/06/01/8-steps-for-fixing-other-peoples-code/#8b-google-groups">8b: Submit patch to Google Groups</a>, use the Google Group above.</p>
84
84
  <p>The trunk repository is <code>http://github.com/auser/poolparty</code> for anonymous access.</p>
@@ -86,17 +86,17 @@ cloud spec [name]
86
86
  <ul>
87
87
  <li>github: <a href="http://github.com/auser/PoolParty/tree/master">http://github.com/auser/PoolParty/tree/master</a></li>
88
88
  </ul>
89
- <pre>git clone git://github.com/auser/PoolParty.git</pre>
89
+ <pre>git clone git://github.com/auser/poolparty.git</pre>
90
90
  <h3>Build and test instructions</h3>
91
91
  <p><pre class='syntax'>cd PoolParty
92
- rake test
92
+ rake spec
93
93
  rake install_gem</pre></p>
94
94
  <h2>License</h2>
95
95
  <p>This code is free to use under the terms of the <span class="caps">MIT</span> license.</p>
96
96
  <h2>Contact</h2>
97
97
  <p>Comments are welcome. Send an email to <a href="mailto:ari.lerner@citrusbyte.com">Ari Lerner</a> email via the <a href="http://groups.google.com/group/PoolParty">forum</a></p>
98
98
  <p class="coda">
99
- <a href="http://blog.citrusbyte.com">Ari Lerner</a> at <a href="http://citrusbyte.com">CitrusByte</a>, 14th October 2008<br>
99
+ <a href="http://blog.citrusbyte.com">Ari Lerner</a> at <a href="http://citrusbyte.com">CitrusByte</a>, 15th October 2008<br>
100
100
  Theme extended from <a href="http://rb2js.rubyforge.org/">Paul Battley</a>
101
101
  </p>
102
102
  </div>
@@ -56,7 +56,7 @@ This will create a basic spec for you in the spec directory. Then, write your sp
56
56
 
57
57
  h2. Forum
58
58
 
59
- "http://groups.google.com/group/PoolParty":http://groups.google.com/group/PoolParty
59
+ "http://groups.google.com/group/PoolPartyRb":http://groups.google.com/group/poolpartyrb
60
60
 
61
61
  h2. How to submit patches
62
62
 
@@ -76,12 +76,12 @@ You can fetch the source from either:
76
76
 
77
77
  * github: "http://github.com/auser/PoolParty/tree/master":http://github.com/auser/PoolParty/tree/master
78
78
 
79
- <pre>git clone git://github.com/auser/PoolParty.git</pre>
79
+ <pre>git clone git://github.com/auser/poolparty.git</pre>
80
80
 
81
81
  h3. Build and test instructions
82
82
 
83
83
  <pre syntax="bash">cd PoolParty
84
- rake test
84
+ rake spec
85
85
  rake install_gem</pre>
86
86
 
87
87
 
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.8
4
+ version: 0.2.9
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-10-15 00:00:00 -07:00
12
+ date: 2008-10-16 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -82,6 +82,7 @@ executables:
82
82
  - pool-spec
83
83
  - pool-start
84
84
  - pool-start-monitor
85
+ - server-list-active
85
86
  extensions: []
86
87
 
87
88
  extra_rdoc_files:
@@ -119,6 +120,7 @@ files:
119
120
  - bin/pool-spec
120
121
  - bin/pool-start
121
122
  - bin/pool-start-monitor
123
+ - bin/server-list-active
122
124
  - config/hoe.rb
123
125
  - config/requirements.rb
124
126
  - examples/basic.rb
@@ -200,13 +202,17 @@ files:
200
202
  - lib/poolparty/pool/resources/symlink.rb
201
203
  - lib/poolparty/pool/resources/variable.rb
202
204
  - lib/poolparty/pool/script.rb
205
+ - lib/poolparty/puppet_plugins/poolparty/plugins/puppet/parser/functions/activenodeips.rb
206
+ - lib/poolparty/puppet_plugins/poolparty/plugins/puppet/parser/functions/activenodenames.rb
203
207
  - lib/poolparty/templates/authkeys
204
208
  - lib/poolparty/templates/cib.xml
205
209
  - lib/poolparty/templates/fileserver.conf
206
210
  - lib/poolparty/templates/gem
207
211
  - lib/poolparty/templates/ha.cf
208
212
  - lib/poolparty/templates/haproxy.conf
213
+ - lib/poolparty/templates/haresources
209
214
  - lib/poolparty/templates/namespaceauth.conf
215
+ - lib/poolparty/templates/poolparty.monitor
210
216
  - lib/poolparty/templates/puppet.conf
211
217
  - lib/poolparty/version.rb
212
218
  - lib/poolpartycl.rb
@@ -237,7 +243,6 @@ files:
237
243
  - spec/poolparty/modules/definable_resource.rb
238
244
  - spec/poolparty/modules/file_writer_spec.rb
239
245
  - spec/poolparty/modules/s3_string_spec.rb
240
- - spec/poolparty/modules/tmp/willy/nilly.rb
241
246
  - spec/poolparty/net/remote_bases/ec2_spec.rb
242
247
  - spec/poolparty/net/remote_instance_spec.rb
243
248
  - spec/poolparty/net/remote_spec.rb