auser-poolparty 0.2.79 → 0.2.80
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 +38 -33
 - data/PostInstall.txt +1 -1
 - data/bin/cloud-provision +1 -1
 - data/bin/cloud-spec +40 -0
 - data/lib/poolparty.rb +2 -2
 - data/lib/poolparty/base_packages/poolparty.rb +1 -1
 - data/lib/poolparty/extra/deployments.rb +31 -0
 - data/lib/poolparty/helpers/binary.rb +9 -0
 - data/lib/poolparty/modules/cloud_dsl.rb +1 -1
 - data/lib/poolparty/modules/cloud_resourcer.rb +2 -0
 - data/lib/poolparty/modules/file_writer.rb +2 -2
 - data/lib/poolparty/net/messenger.rb +1 -1
 - data/lib/poolparty/net/remote_bases/ec2.rb +5 -2
 - data/lib/poolparty/net/remoter.rb +2 -4
 - data/lib/poolparty/net/remoter_base.rb +7 -0
 - data/lib/poolparty/poolparty/cloud.rb +22 -7
 - data/lib/poolparty/poolparty/plugin_model.rb +4 -4
 - data/lib/poolparty/poolparty/pool.rb +1 -0
 - data/lib/poolparty/poolparty/resource.rb +1 -1
 - data/lib/poolparty/poolparty/resources/directory.rb +2 -2
 - data/lib/poolparty/poolparty/resources/file.rb +2 -2
 - data/lib/poolparty/poolparty/resources/remote_file.rb +1 -1
 - data/lib/poolparty/poolparty/resources/remote_user.rb +17 -0
 - data/lib/poolparty/{helpers → provisioners}/provisioner_base.rb +10 -4
 - data/lib/poolparty/{helpers → provisioners}/provisioners/master.rb +11 -7
 - data/lib/poolparty/{helpers → provisioners}/provisioners/slave.rb +0 -0
 - data/lib/poolparty/templates/puppetrerun +2 -1
 - data/lib/poolparty/version.rb +1 -1
 - data/poolparty.gemspec +42 -36
 - data/spec/poolparty/extra/deployments_spec.rb +64 -0
 - data/spec/poolparty/helpers/provisioner_base_spec.rb +0 -1
 - data/spec/poolparty/helpers/provisioners/master_spec.rb +0 -1
 - data/spec/poolparty/helpers/provisioners/slave_spec.rb +0 -1
 - data/spec/poolparty/{pool → poolparty}/base_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/cloud_spec.rb +37 -0
 - data/spec/poolparty/{pool → poolparty}/configurers/files/ruby_basic.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/configurers/files/ruby_plugins.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/configurers/ruby_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/custom_resource_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/example_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/plugin_model_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/plugin_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/pool_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/resource_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/resources/class_package_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/resources/conditional_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/resources/cron_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/resources/directory_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/resources/exec_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/resources/file_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/resources/gem_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/resources/host_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/resources/package_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/resources/remote_file_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/resources/service_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/resources/sshkey_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/resources/symlink_spec.rb +0 -0
 - data/spec/poolparty/poolparty/resources/user_spec.rb +38 -0
 - data/spec/poolparty/{pool → poolparty}/resources/variable_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/script_spec.rb +0 -0
 - data/spec/poolparty/{pool → poolparty}/test_plugins/sshkey_test +0 -0
 - data/spec/poolparty/{pool → poolparty}/test_plugins/virtual_host_template.erb +0 -0
 - data/spec/poolparty/{pool → poolparty}/test_plugins/webserver.rb +0 -0
 - data/website/index.html +107 -0
 - metadata +42 -36
 - data/lib/erlang/messenger/src/pm_client_old.erl +0 -52
 
| 
         @@ -47,6 +47,7 @@ module PoolParty 
     | 
|
| 
       47 
47 
     | 
    
         | 
| 
       48 
48 
     | 
    
         
             
                  def setup_defaults
         
     | 
| 
       49 
49 
     | 
    
         
             
                    plugin_directory "#{::File.dirname(pool_specfile ? pool_specfile : Dir.pwd)}/plugins"
         
     | 
| 
      
 50 
     | 
    
         
            +
                    PoolParty::Extra::Deployments.include_deployments "#{Dir.pwd}/deployments"
         
     | 
| 
       50 
51 
     | 
    
         
             
                  end
         
     | 
| 
       51 
52 
     | 
    
         | 
| 
       52 
53 
     | 
    
         
             
                  # This is where the entire process starts
         
     | 
| 
         @@ -225,7 +225,7 @@ module PoolParty 
     | 
|
| 
       225 
225 
     | 
    
         
             
                      :subscribe, :owner, :group, :path, :mode, :source, :notify, :subscribe, :check, :creates, :cwd, :command, :ensure,
         
     | 
| 
       226 
226 
     | 
    
         
             
                      :require, :schedule, :range, :alias, :hour, :minute, :user, :month, :monthday, :name, :onlyif, :unless, :refreshonly,
         
     | 
| 
       227 
227 
     | 
    
         
             
                      :refresh, :content, :template, :ip, :repeat, :provider, :key, :device, :fstype, :remounts, :options, :atboot, :before,
         
     | 
| 
       228 
     | 
    
         
            -
                      :binary, :status, :start, :stop, :restart, :pattern, :recurse
         
     | 
| 
      
 228 
     | 
    
         
            +
                      :binary, :status, :start, :stop, :restart, :pattern, :recurse, :home
         
     | 
| 
       229 
229 
     | 
    
         
             
                    ]
         
     | 
| 
       230 
230 
     | 
    
         
             
                  end
         
     | 
| 
       231 
231 
     | 
    
         
             
                  def key
         
     | 
| 
         @@ -98,7 +98,7 @@ module PoolParty 
     | 
|
| 
       98 
98 
     | 
    
         | 
| 
       99 
99 
     | 
    
         
             
                      before_install(@instance)
         
     | 
| 
       100 
100 
     | 
    
         | 
| 
       101 
     | 
    
         
            -
                      process_clean_reconfigure_for!(@instance, testing)
         
     | 
| 
      
 101 
     | 
    
         
            +
                      # process_clean_reconfigure_for!(@instance, testing)
         
     | 
| 
       102 
102 
     | 
    
         | 
| 
       103 
103 
     | 
    
         
             
                      vputs "Logging in and running provisioning on #{@instance.name}"
         
     | 
| 
       104 
104 
     | 
    
         
             
                      # /bin/rm install_#{name}.sh
         
     | 
| 
         @@ -162,7 +162,7 @@ module PoolParty 
     | 
|
| 
       162 
162 
     | 
    
         
             
                      s << "puppetca --clean master.compute-1.internal 2>&1 > /dev/null;"
         
     | 
| 
       163 
163 
     | 
    
         
             
                      s << "puppetca --clean master.ec2.internal 2>&1 > /dev/null"
         
     | 
| 
       164 
164 
     | 
    
         
             
                    end
         
     | 
| 
       165 
     | 
    
         
            -
                    @cloud.run_command_on("if [ -f '/usr/bin/puppetcleaner' ]; then /usr/bin/env puppetcleaner 
     | 
| 
      
 165 
     | 
    
         
            +
                    @cloud.run_command_on("if [ -f '/usr/bin/puppetcleaner' ]; then /usr/bin/env puppetcleaner `hostname`; else #{str}; fi", @cloud.master)
         
     | 
| 
       166 
166 
     | 
    
         
             
                  end
         
     | 
| 
       167 
167 
     | 
    
         
             
                  def process_reconfigure!(testing=false)
         
     | 
| 
       168 
168 
     | 
    
         
             
                    @cloud.run_command_on(PoolParty::Remote::RemoteInstance.puppet_runner_command, @instance) unless testing
         
     | 
| 
         @@ -211,6 +211,7 @@ module PoolParty 
     | 
|
| 
       211 
211 
     | 
    
         
             
                  def default_install_tasks
         
     | 
| 
       212 
212 
     | 
    
         
             
                    [
         
     | 
| 
       213 
213 
     | 
    
         
             
                      "#!/usr/bin/env sh",
         
     | 
| 
      
 214 
     | 
    
         
            +
                      first_install_tasks,
         
     | 
| 
       214 
215 
     | 
    
         
             
                      upgrade_system,
         
     | 
| 
       215 
216 
     | 
    
         
             
                      install_rubygems,
         
     | 
| 
       216 
217 
     | 
    
         
             
                      make_logger_directory,
         
     | 
| 
         @@ -231,6 +232,11 @@ module PoolParty 
     | 
|
| 
       231 
232 
     | 
    
         
             
                  def install_tasks(a=[])
         
     | 
| 
       232 
233 
     | 
    
         
             
                    @install_task ||= a
         
     | 
| 
       233 
234 
     | 
    
         
             
                  end
         
     | 
| 
      
 235 
     | 
    
         
            +
                  # Set the first tasks to be called on the instance
         
     | 
| 
      
 236 
     | 
    
         
            +
                  # before any other tasks are run
         
     | 
| 
      
 237 
     | 
    
         
            +
                  def first_install_tasks
         
     | 
| 
      
 238 
     | 
    
         
            +
                    @cloud.first_install_tasks_for(@instances) || []
         
     | 
| 
      
 239 
     | 
    
         
            +
                  end
         
     | 
| 
       234 
240 
     | 
    
         
             
                  def configure_tasks(a=[])
         
     | 
| 
       235 
241 
     | 
    
         
             
                    @configure_tasks ||= a
         
     | 
| 
       236 
242 
     | 
    
         
             
                  end
         
     | 
| 
         @@ -357,8 +363,8 @@ fi 
     | 
|
| 
       357 
363 
     | 
    
         
             
                      cp #{Base.remote_storage_path}/#{Base.template_directory}/puppetrerun /usr/bin/puppetrerun
         
     | 
| 
       358 
364 
     | 
    
         
             
                      chmod +x /usr/bin/puppetrerun
         
     | 
| 
       359 
365 
     | 
    
         | 
| 
       360 
     | 
    
         
            -
                       
     | 
| 
       361 
     | 
    
         
            -
                      chmod  
     | 
| 
      
 366 
     | 
    
         
            +
                      mv #{Base.remote_storage_path}/cookie ~/.erlang.cookie
         
     | 
| 
      
 367 
     | 
    
         
            +
                      chmod 400 ~/.erlang.cookie
         
     | 
| 
       362 
368 
     | 
    
         
             
                    EOS
         
     | 
| 
       363 
369 
     | 
    
         
             
                  end
         
     | 
| 
       364 
370 
     | 
    
         
             
                end
         
     | 
| 
         @@ -15,10 +15,15 @@ module PoolParty 
     | 
|
| 
       15 
15 
     | 
    
         
             
                  def error
         
     | 
| 
       16 
16 
     | 
    
         
             
                    raise RemoteException.new(:could_not_install, "Your cloud does not have a master")
         
     | 
| 
       17 
17 
     | 
    
         
             
                  end
         
     | 
| 
      
 18 
     | 
    
         
            +
                  
         
     | 
| 
      
 19 
     | 
    
         
            +
                  def first_install_tasks
         
     | 
| 
      
 20 
     | 
    
         
            +
                    [
         
     | 
| 
      
 21 
     | 
    
         
            +
                      create_local_hosts_entry
         
     | 
| 
      
 22 
     | 
    
         
            +
                    ]
         
     | 
| 
      
 23 
     | 
    
         
            +
                  end
         
     | 
| 
       18 
24 
     | 
    
         | 
| 
       19 
25 
     | 
    
         
             
                  def install_tasks
         
     | 
| 
       20 
     | 
    
         
            -
                    [
         
     | 
| 
       21 
     | 
    
         
            -
                      create_local_hosts_entry,
         
     | 
| 
      
 26 
     | 
    
         
            +
                    [          
         
     | 
| 
       22 
27 
     | 
    
         
             
                      setup_basic_structure,
         
     | 
| 
       23 
28 
     | 
    
         
             
                      setup_configs,        
         
     | 
| 
       24 
29 
     | 
    
         
             
                      setup_fileserver,
         
     | 
| 
         @@ -128,14 +133,13 @@ wget http://github.com/auser/poolparty/tree/master%2Fpkg%2Fpoolparty.gem?raw=tru 
     | 
|
| 
       128 
133 
     | 
    
         
             
                    EOE
         
     | 
| 
       129 
134 
     | 
    
         
             
                  end
         
     | 
| 
       130 
135 
     | 
    
         | 
| 
       131 
     | 
    
         
            -
                  # ps aux | grep puppetmasterd | awk '{print $2}' | xargs kill
         
     | 
| 
       132 
136 
     | 
    
         
             
                  # /etc/init.d/puppetmaster stop; rm -rf /etc/puppet/ssl; /etc/init.d/puppetmaster start
         
     | 
| 
      
 137 
     | 
    
         
            +
                  # ps aux | grep puppetmaster | grep -v grep | awk '{print $2}' | xargs kill;
         
     | 
| 
       133 
138 
     | 
    
         
             
                  def restart_puppetmaster
         
     | 
| 
       134 
139 
     | 
    
         
             
                    <<-EOS
         
     | 
| 
       135 
140 
     | 
    
         
             
            echo "(Re)starting poolparty"
         
     | 
| 
       136 
141 
     | 
    
         
             
            . /etc/profile
         
     | 
| 
       137 
     | 
    
         
            -
             
     | 
| 
       138 
     | 
    
         
            -
            ps aux | grep puppetmaster | awk '{print $2}' | xargs kill;rm -rf /etc/poolparty/ssl;puppetmasterd --verbose;/etc/init.d/puppetmaster start
         
     | 
| 
      
 142 
     | 
    
         
            +
            /etc/init.d/puppetmaster stop;rm -rf /etc/poolparty/ssl;puppetmasterd --verbose;/etc/init.d/puppetmaster start
         
     | 
| 
       139 
143 
     | 
    
         
             
                    EOS
         
     | 
| 
       140 
144 
     | 
    
         
             
                  end
         
     | 
| 
       141 
145 
     | 
    
         | 
| 
         @@ -181,10 +185,10 @@ cp #{Base.remote_storage_path}/poolparty.pp /etc/puppet/manifests/classes/poolpa 
     | 
|
| 
       181 
185 
     | 
    
         | 
| 
       182 
186 
     | 
    
         
             
                  def restart_puppetd
         
     | 
| 
       183 
187 
     | 
    
         
             
                    # /usr/bin/puppetrerun
         
     | 
| 
      
 188 
     | 
    
         
            +
                    # /usr/bin/puppetcleaner master
         
     | 
| 
       184 
189 
     | 
    
         
             
                    <<-EOS
         
     | 
| 
       185 
190 
     | 
    
         
             
            echo "Running puppet manifest"
         
     | 
| 
       186 
     | 
    
         
            -
            /usr/ 
     | 
| 
       187 
     | 
    
         
            -
            /usr/bin/puppetcleaner master
         
     | 
| 
      
 191 
     | 
    
         
            +
            /usr/bin/puppetrerun
         
     | 
| 
       188 
192 
     | 
    
         
             
                    EOS
         
     | 
| 
       189 
193 
     | 
    
         
             
                  end
         
     | 
| 
       190 
194 
     | 
    
         
             
                end
         
     | 
| 
         
            File without changes
         
     | 
| 
         @@ -11,7 +11,8 @@ if [ $(/usr/sbin/puppetd --onetime --no-daemonize --logdest syslog --server mast 
     | 
|
| 
       11 
11 
     | 
    
         
             
                  if [ $(/usr/sbin/puppetd --onetime --no-daemonize --logdest syslog --server master) ]; then
         
     | 
| 
       12 
12 
     | 
    
         
             
                    echo "Run successfully" && exit 0
         
     | 
| 
       13 
13 
     | 
    
         
             
                    else
         
     | 
| 
       14 
     | 
    
         
            -
                    /etc/init.d/puppetmaster stop;rm -rf /etc/poolparty/ssl;/etc/init.d/puppetmaster start
         
     | 
| 
      
 14 
     | 
    
         
            +
                    # /etc/init.d/puppetmaster stop;rm -rf /etc/poolparty/ssl;/etc/init.d/puppetmaster start
         
     | 
| 
      
 15 
     | 
    
         
            +
                    rm /etc/poolparty/ssl/$HN*
         
     | 
| 
       15 
16 
     | 
    
         
             
                    /usr/sbin/puppetd --onetime --no-daemonize --logdest syslog --server master
         
     | 
| 
       16 
17 
     | 
    
         
             
                  fi
         
     | 
| 
       17 
18 
     | 
    
         
             
                else
         
     | 
    
        data/lib/poolparty/version.rb
    CHANGED
    
    
    
        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. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.2.80
         
     | 
| 
       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- 
     | 
| 
      
 12 
     | 
    
         
            +
            date: 2008-12-09 00:00:00 -08:00
         
     | 
| 
       13 
13 
     | 
    
         
             
            default_executable: 
         
     | 
| 
       14 
14 
     | 
    
         
             
            dependencies: 
         
     | 
| 
       15 
15 
     | 
    
         
             
            - !ruby/object:Gem::Dependency 
         
     | 
| 
         @@ -70,6 +70,7 @@ executables: 
     | 
|
| 
       70 
70 
     | 
    
         
             
            - cloud-refresh
         
     | 
| 
       71 
71 
     | 
    
         
             
            - cloud-rsync
         
     | 
| 
       72 
72 
     | 
    
         
             
            - cloud-run
         
     | 
| 
      
 73 
     | 
    
         
            +
            - cloud-spec
         
     | 
| 
       73 
74 
     | 
    
         
             
            - cloud-ssh
         
     | 
| 
       74 
75 
     | 
    
         
             
            - cloud-start
         
     | 
| 
       75 
76 
     | 
    
         
             
            - cloud-stats
         
     | 
| 
         @@ -130,6 +131,7 @@ files: 
     | 
|
| 
       130 
131 
     | 
    
         
             
            - bin/cloud-refresh
         
     | 
| 
       131 
132 
     | 
    
         
             
            - bin/cloud-rsync
         
     | 
| 
       132 
133 
     | 
    
         
             
            - bin/cloud-run
         
     | 
| 
      
 134 
     | 
    
         
            +
            - bin/cloud-spec
         
     | 
| 
       133 
135 
     | 
    
         
             
            - bin/cloud-ssh
         
     | 
| 
       134 
136 
     | 
    
         
             
            - bin/cloud-start
         
     | 
| 
       135 
137 
     | 
    
         
             
            - bin/cloud-stats
         
     | 
| 
         @@ -264,7 +266,6 @@ files: 
     | 
|
| 
       264 
266 
     | 
    
         
             
            - lib/erlang/messenger/src/master_app.erl
         
     | 
| 
       265 
267 
     | 
    
         
             
            - lib/erlang/messenger/src/node_app.erl
         
     | 
| 
       266 
268 
     | 
    
         
             
            - lib/erlang/messenger/src/pm_client.erl
         
     | 
| 
       267 
     | 
    
         
            -
            - lib/erlang/messenger/src/pm_client_old.erl
         
     | 
| 
       268 
269 
     | 
    
         
             
            - lib/erlang/messenger/src/pm_client_supervisor.erl
         
     | 
| 
       269 
270 
     | 
    
         
             
            - lib/erlang/messenger/src/pm_cluster.erl
         
     | 
| 
       270 
271 
     | 
    
         
             
            - lib/erlang/messenger/src/pm_event_manager.erl
         
     | 
| 
         @@ -311,14 +312,12 @@ files: 
     | 
|
| 
       311 
312 
     | 
    
         
             
            - lib/poolparty/exceptions/SpecException.rb
         
     | 
| 
       312 
313 
     | 
    
         
             
            - lib/poolparty/exceptions/TemplateNotFound.rb
         
     | 
| 
       313 
314 
     | 
    
         
             
            - lib/poolparty/exceptions/UnacceptableCommand.rb
         
     | 
| 
      
 315 
     | 
    
         
            +
            - lib/poolparty/extra/deployments.rb
         
     | 
| 
       314 
316 
     | 
    
         
             
            - lib/poolparty/helpers/binary.rb
         
     | 
| 
       315 
317 
     | 
    
         
             
            - lib/poolparty/helpers/console.rb
         
     | 
| 
       316 
318 
     | 
    
         
             
            - lib/poolparty/helpers/display.rb
         
     | 
| 
       317 
319 
     | 
    
         
             
            - lib/poolparty/helpers/nice_printer.rb
         
     | 
| 
       318 
320 
     | 
    
         
             
            - lib/poolparty/helpers/optioner.rb
         
     | 
| 
       319 
     | 
    
         
            -
            - lib/poolparty/helpers/provisioner_base.rb
         
     | 
| 
       320 
     | 
    
         
            -
            - lib/poolparty/helpers/provisioners/master.rb
         
     | 
| 
       321 
     | 
    
         
            -
            - lib/poolparty/helpers/provisioners/slave.rb
         
     | 
| 
       322 
321 
     | 
    
         
             
            - lib/poolparty/helpers/ruberl.rb
         
     | 
| 
       323 
322 
     | 
    
         
             
            - lib/poolparty/modules/cloud_dsl.rb
         
     | 
| 
       324 
323 
     | 
    
         
             
            - lib/poolparty/modules/cloud_resourcer.rb
         
     | 
| 
         @@ -369,11 +368,15 @@ files: 
     | 
|
| 
       369 
368 
     | 
    
         
             
            - lib/poolparty/poolparty/resources/mount.rb
         
     | 
| 
       370 
369 
     | 
    
         
             
            - lib/poolparty/poolparty/resources/package.rb
         
     | 
| 
       371 
370 
     | 
    
         
             
            - lib/poolparty/poolparty/resources/remote_file.rb
         
     | 
| 
      
 371 
     | 
    
         
            +
            - lib/poolparty/poolparty/resources/remote_user.rb
         
     | 
| 
       372 
372 
     | 
    
         
             
            - lib/poolparty/poolparty/resources/service.rb
         
     | 
| 
       373 
373 
     | 
    
         
             
            - lib/poolparty/poolparty/resources/sshkey.rb
         
     | 
| 
       374 
374 
     | 
    
         
             
            - lib/poolparty/poolparty/resources/symlink.rb
         
     | 
| 
       375 
375 
     | 
    
         
             
            - lib/poolparty/poolparty/resources/variable.rb
         
     | 
| 
       376 
376 
     | 
    
         
             
            - lib/poolparty/poolparty/script.rb
         
     | 
| 
      
 377 
     | 
    
         
            +
            - lib/poolparty/provisioners/provisioner_base.rb
         
     | 
| 
      
 378 
     | 
    
         
            +
            - lib/poolparty/provisioners/provisioners/master.rb
         
     | 
| 
      
 379 
     | 
    
         
            +
            - lib/poolparty/provisioners/provisioners/slave.rb
         
     | 
| 
       377 
380 
     | 
    
         
             
            - lib/poolparty/spec/core/string.rb
         
     | 
| 
       378 
381 
     | 
    
         
             
            - lib/poolparty/spec/matchers/a_spec_extensions_base.rb
         
     | 
| 
       379 
382 
     | 
    
         
             
            - lib/poolparty/spec/matchers/have_cron.rb
         
     | 
| 
         @@ -437,6 +440,7 @@ files: 
     | 
|
| 
       437 
440 
     | 
    
         
             
            - spec/poolparty/core/string_spec.rb
         
     | 
| 
       438 
441 
     | 
    
         
             
            - spec/poolparty/core/time_spec.rb
         
     | 
| 
       439 
442 
     | 
    
         
             
            - spec/poolparty/dependency_resolutions/base_spec.rb
         
     | 
| 
      
 443 
     | 
    
         
            +
            - spec/poolparty/extra/deployments_spec.rb
         
     | 
| 
       440 
444 
     | 
    
         
             
            - spec/poolparty/helpers/binary_spec.rb
         
     | 
| 
       441 
445 
     | 
    
         
             
            - spec/poolparty/helpers/display_spec.rb
         
     | 
| 
       442 
446 
     | 
    
         
             
            - spec/poolparty/helpers/optioner_spec.rb
         
     | 
| 
         @@ -461,35 +465,36 @@ files: 
     | 
|
| 
       461 
465 
     | 
    
         
             
            - spec/poolparty/plugins/git_spec.rb
         
     | 
| 
       462 
466 
     | 
    
         
             
            - spec/poolparty/plugins/line_spec.rb
         
     | 
| 
       463 
467 
     | 
    
         
             
            - spec/poolparty/plugins/svn_spec.rb
         
     | 
| 
       464 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       465 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       466 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       467 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       468 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       469 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       470 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       471 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       472 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       473 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       474 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       475 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       476 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       477 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       478 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       479 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       480 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       481 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       482 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       483 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       484 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       485 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       486 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       487 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       488 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       489 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       490 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       491 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
       492 
     | 
    
         
            -
            - spec/poolparty/ 
     | 
| 
      
 468 
     | 
    
         
            +
            - spec/poolparty/poolparty/base_spec.rb
         
     | 
| 
      
 469 
     | 
    
         
            +
            - spec/poolparty/poolparty/cloud_spec.rb
         
     | 
| 
      
 470 
     | 
    
         
            +
            - spec/poolparty/poolparty/configurers/files/ruby_basic.rb
         
     | 
| 
      
 471 
     | 
    
         
            +
            - spec/poolparty/poolparty/configurers/files/ruby_plugins.rb
         
     | 
| 
      
 472 
     | 
    
         
            +
            - spec/poolparty/poolparty/configurers/ruby_spec.rb
         
     | 
| 
      
 473 
     | 
    
         
            +
            - spec/poolparty/poolparty/custom_resource_spec.rb
         
     | 
| 
      
 474 
     | 
    
         
            +
            - spec/poolparty/poolparty/example_spec.rb
         
     | 
| 
      
 475 
     | 
    
         
            +
            - spec/poolparty/poolparty/plugin_model_spec.rb
         
     | 
| 
      
 476 
     | 
    
         
            +
            - spec/poolparty/poolparty/plugin_spec.rb
         
     | 
| 
      
 477 
     | 
    
         
            +
            - spec/poolparty/poolparty/pool_spec.rb
         
     | 
| 
      
 478 
     | 
    
         
            +
            - spec/poolparty/poolparty/resource_spec.rb
         
     | 
| 
      
 479 
     | 
    
         
            +
            - spec/poolparty/poolparty/resources/class_package_spec.rb
         
     | 
| 
      
 480 
     | 
    
         
            +
            - spec/poolparty/poolparty/resources/conditional_spec.rb
         
     | 
| 
      
 481 
     | 
    
         
            +
            - spec/poolparty/poolparty/resources/cron_spec.rb
         
     | 
| 
      
 482 
     | 
    
         
            +
            - spec/poolparty/poolparty/resources/directory_spec.rb
         
     | 
| 
      
 483 
     | 
    
         
            +
            - spec/poolparty/poolparty/resources/exec_spec.rb
         
     | 
| 
      
 484 
     | 
    
         
            +
            - spec/poolparty/poolparty/resources/file_spec.rb
         
     | 
| 
      
 485 
     | 
    
         
            +
            - spec/poolparty/poolparty/resources/gem_spec.rb
         
     | 
| 
      
 486 
     | 
    
         
            +
            - spec/poolparty/poolparty/resources/host_spec.rb
         
     | 
| 
      
 487 
     | 
    
         
            +
            - spec/poolparty/poolparty/resources/package_spec.rb
         
     | 
| 
      
 488 
     | 
    
         
            +
            - spec/poolparty/poolparty/resources/remote_file_spec.rb
         
     | 
| 
      
 489 
     | 
    
         
            +
            - spec/poolparty/poolparty/resources/service_spec.rb
         
     | 
| 
      
 490 
     | 
    
         
            +
            - spec/poolparty/poolparty/resources/sshkey_spec.rb
         
     | 
| 
      
 491 
     | 
    
         
            +
            - spec/poolparty/poolparty/resources/symlink_spec.rb
         
     | 
| 
      
 492 
     | 
    
         
            +
            - spec/poolparty/poolparty/resources/user_spec.rb
         
     | 
| 
      
 493 
     | 
    
         
            +
            - spec/poolparty/poolparty/resources/variable_spec.rb
         
     | 
| 
      
 494 
     | 
    
         
            +
            - spec/poolparty/poolparty/script_spec.rb
         
     | 
| 
      
 495 
     | 
    
         
            +
            - spec/poolparty/poolparty/test_plugins/sshkey_test
         
     | 
| 
      
 496 
     | 
    
         
            +
            - spec/poolparty/poolparty/test_plugins/virtual_host_template.erb
         
     | 
| 
      
 497 
     | 
    
         
            +
            - spec/poolparty/poolparty/test_plugins/webserver.rb
         
     | 
| 
       493 
498 
     | 
    
         
             
            - spec/poolparty/poolparty_spec.rb
         
     | 
| 
       494 
499 
     | 
    
         
             
            - spec/poolparty/spec/core/string_spec.rb
         
     | 
| 
       495 
500 
     | 
    
         
             
            - spec/poolparty/spec_helper.rb
         
     | 
| 
         @@ -506,6 +511,7 @@ files: 
     | 
|
| 
       506 
511 
     | 
    
         
             
            - test/test_helper.rb
         
     | 
| 
       507 
512 
     | 
    
         
             
            - test/test_pool_spec_generator.rb
         
     | 
| 
       508 
513 
     | 
    
         
             
            - test/test_poolparty.rb
         
     | 
| 
      
 514 
     | 
    
         
            +
            - website/index.html
         
     | 
| 
       509 
515 
     | 
    
         
             
            - website/index.txt
         
     | 
| 
       510 
516 
     | 
    
         
             
            - website/javascripts/rounded_corners_lite.inc.js
         
     | 
| 
       511 
517 
     | 
    
         
             
            - website/stylesheets/code.css
         
     | 
| 
         @@ -514,7 +520,7 @@ files: 
     | 
|
| 
       514 
520 
     | 
    
         
             
            has_rdoc: true
         
     | 
| 
       515 
521 
     | 
    
         
             
            homepage: http://poolparty.rubyforge.org
         
     | 
| 
       516 
522 
     | 
    
         
             
            post_install_message: |-
         
     | 
| 
       517 
     | 
    
         
            -
              Get ready to jump in the pool, you just installed PoolParty! (Updated at  
     | 
| 
      
 523 
     | 
    
         
            +
              Get ready to jump in the pool, you just installed PoolParty! (Updated at 15:39 12/09/08)
         
     | 
| 
       518 
524 
     | 
    
         | 
| 
       519 
525 
     | 
    
         
             
              To get started, run the generator:
         
     | 
| 
       520 
526 
     | 
    
         | 
| 
         @@ -0,0 +1,64 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require File.dirname(__FILE__) + '/../spec_helper'
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            describe "deployments" do
         
     | 
| 
      
 4 
     | 
    
         
            +
              describe "class" do
         
     | 
| 
      
 5 
     | 
    
         
            +
                before(:each) do
         
     | 
| 
      
 6 
     | 
    
         
            +
                  @klass = PoolParty::Extra::Deployments
         
     | 
| 
      
 7 
     | 
    
         
            +
                  @file = "hanky_danky_ranky.pool"
         
     | 
| 
      
 8 
     | 
    
         
            +
                  ::File.stub!(:file?).with(@file).and_return false
         
     | 
| 
      
 9 
     | 
    
         
            +
                end
         
     | 
| 
      
 10 
     | 
    
         
            +
                it "should have the singleton method include_deployment" do
         
     | 
| 
      
 11 
     | 
    
         
            +
                  @klass.respond_to?(:include_deployment).should == true
         
     | 
| 
      
 12 
     | 
    
         
            +
                end
         
     | 
| 
      
 13 
     | 
    
         
            +
                it "should return nil if the file doesn't exist" do
         
     | 
| 
      
 14 
     | 
    
         
            +
                  @klass.include_deployment(@file).should == nil
         
     | 
| 
      
 15 
     | 
    
         
            +
                end
         
     | 
| 
      
 16 
     | 
    
         
            +
                describe "existing file" do
         
     | 
| 
      
 17 
     | 
    
         
            +
                  before(:each) do
         
     | 
| 
      
 18 
     | 
    
         
            +
                    ::File.stub!(:file?).and_return true
         
     | 
| 
      
 19 
     | 
    
         
            +
                    @contents = "'hello goober'"
         
     | 
| 
      
 20 
     | 
    
         
            +
                    @klass.stub!(:open).with(@file).and_return @file
         
     | 
| 
      
 21 
     | 
    
         
            +
                    @file.stub!(:read).and_return @contents
         
     | 
| 
      
 22 
     | 
    
         
            +
                  end
         
     | 
| 
      
 23 
     | 
    
         
            +
                  it "should not be nil if the file does exist" do        
         
     | 
| 
      
 24 
     | 
    
         
            +
                    @klass.include_deployment(@file).should_not == nil
         
     | 
| 
      
 25 
     | 
    
         
            +
                  end
         
     | 
| 
      
 26 
     | 
    
         
            +
                  it "should create a class called PoolPartyHankyDankyRankyClass" do
         
     | 
| 
      
 27 
     | 
    
         
            +
                    @klass.include_deployment(@file).should_not == nil
         
     | 
| 
      
 28 
     | 
    
         
            +
                    Object.const_defined?(:PoolPartyHankyDankyRankyClass).should == true
         
     | 
| 
      
 29 
     | 
    
         
            +
                  end
         
     | 
| 
      
 30 
     | 
    
         
            +
                  it "should create a method on the class called enable" do
         
     | 
| 
      
 31 
     | 
    
         
            +
                    PoolPartyHankyDankyRankyClass.new.respond_to?(:enable).should == true
         
     | 
| 
      
 32 
     | 
    
         
            +
                  end
         
     | 
| 
      
 33 
     | 
    
         
            +
                  it "should add the contents of the file to be eval'd on the method" do
         
     | 
| 
      
 34 
     | 
    
         
            +
                    PoolPartyHankyDankyRankyClass.new.enable.should == "hello goober"
         
     | 
| 
      
 35 
     | 
    
         
            +
                  end
         
     | 
| 
      
 36 
     | 
    
         
            +
                end
         
     | 
| 
      
 37 
     | 
    
         
            +
                describe "include_deployments" do
         
     | 
| 
      
 38 
     | 
    
         
            +
                  before(:each) do
         
     | 
| 
      
 39 
     | 
    
         
            +
                    ::File.stub!(:directory?).and_return false
         
     | 
| 
      
 40 
     | 
    
         
            +
                    @dir = "/deployments"
         
     | 
| 
      
 41 
     | 
    
         
            +
                  end
         
     | 
| 
      
 42 
     | 
    
         
            +
                  it "should have the method include_deployments" do
         
     | 
| 
      
 43 
     | 
    
         
            +
                    @klass.respond_to?(:include_deployments).should == true
         
     | 
| 
      
 44 
     | 
    
         
            +
                  end
         
     | 
| 
      
 45 
     | 
    
         
            +
                  it "should return nil if the directory does not exist" do
         
     | 
| 
      
 46 
     | 
    
         
            +
                    @klass.include_deployments(@dir).should == nil
         
     | 
| 
      
 47 
     | 
    
         
            +
                  end
         
     | 
| 
      
 48 
     | 
    
         
            +
                  describe "existing directory" do
         
     | 
| 
      
 49 
     | 
    
         
            +
                    before(:each) do          
         
     | 
| 
      
 50 
     | 
    
         
            +
                      ::File.stub!(:directory?).and_return true
         
     | 
| 
      
 51 
     | 
    
         
            +
                      @contents = []
         
     | 
| 
      
 52 
     | 
    
         
            +
                      Dir.stub!(:[]).and_return @contents
         
     | 
| 
      
 53 
     | 
    
         
            +
                    end
         
     | 
| 
      
 54 
     | 
    
         
            +
                    it "should not be nil if the directory exists" do
         
     | 
| 
      
 55 
     | 
    
         
            +
                      @klass.include_deployments(@dir).should_not == nil
         
     | 
| 
      
 56 
     | 
    
         
            +
                    end
         
     | 
| 
      
 57 
     | 
    
         
            +
                    it "should call Dir.[] on the directory" do
         
     | 
| 
      
 58 
     | 
    
         
            +
                      Dir.should_receive(:[]).with("#{@dir}/*").and_return []
         
     | 
| 
      
 59 
     | 
    
         
            +
                      @klass.include_deployments(@dir)
         
     | 
| 
      
 60 
     | 
    
         
            +
                    end
         
     | 
| 
      
 61 
     | 
    
         
            +
                  end
         
     | 
| 
      
 62 
     | 
    
         
            +
                end
         
     | 
| 
      
 63 
     | 
    
         
            +
              end
         
     | 
| 
      
 64 
     | 
    
         
            +
            end
         
     | 
| 
         
            File without changes
         
     | 
| 
         @@ -316,6 +316,9 @@ describe "Cloud" do 
     | 
|
| 
       316 
316 
     | 
    
         
             
                        it "should call before_configuration_tasks callback" do
         
     | 
| 
       317 
317 
     | 
    
         
             
                          @cloud.should_receive(:before_configuration_tasks).once
         
     | 
| 
       318 
318 
     | 
    
         
             
                        end
         
     | 
| 
      
 319 
     | 
    
         
            +
                        it "should call call write_unique_cookie" do
         
     | 
| 
      
 320 
     | 
    
         
            +
                          @cloud.should_receive(:write_unique_cookie).once
         
     | 
| 
      
 321 
     | 
    
         
            +
                        end
         
     | 
| 
       319 
322 
     | 
    
         
             
                        describe "copy_custom_monitors" do
         
     | 
| 
       320 
323 
     | 
    
         
             
                          before(:each) do                
         
     | 
| 
       321 
324 
     | 
    
         
             
                            Base.stub!(:custom_monitor_directories).and_return ["/tmp/monitors/custom_monitor.rb"]
         
     | 
| 
         @@ -364,6 +367,40 @@ describe "Cloud" do 
     | 
|
| 
       364 
367 
     | 
    
         
             
                        end
         
     | 
| 
       365 
368 
     | 
    
         
             
                      end
         
     | 
| 
       366 
369 
     | 
    
         
             
                    end
         
     | 
| 
      
 370 
     | 
    
         
            +
                    describe "minimum_runnable_options" do
         
     | 
| 
      
 371 
     | 
    
         
            +
                      it "should be an array on the cloud" do
         
     | 
| 
      
 372 
     | 
    
         
            +
                        @cloud.minimum_runnable_options.class.should == Array
         
     | 
| 
      
 373 
     | 
    
         
            +
                      end
         
     | 
| 
      
 374 
     | 
    
         
            +
                      ["keypair","minimum_instances","maximum_instances",
         
     | 
| 
      
 375 
     | 
    
         
            +
                        "expand_when","contract_when","set_master_ip_to"].each do |k|
         
     | 
| 
      
 376 
     | 
    
         
            +
                        eval <<-EOE
         
     | 
| 
      
 377 
     | 
    
         
            +
                          it "should have #{k} in the minimum_runnable_options" do
         
     | 
| 
      
 378 
     | 
    
         
            +
                            @cloud.minimum_runnable_options.include?(:#{k}).should == true
         
     | 
| 
      
 379 
     | 
    
         
            +
                          end
         
     | 
| 
      
 380 
     | 
    
         
            +
                        EOE
         
     | 
| 
      
 381 
     | 
    
         
            +
                      end
         
     | 
| 
      
 382 
     | 
    
         
            +
                      it "should include the custom_minimum_runnable_options" do
         
     | 
| 
      
 383 
     | 
    
         
            +
                        @cloud.stub!(:custom_minimum_runnable_options).and_return [:blank]
         
     | 
| 
      
 384 
     | 
    
         
            +
                        @cloud.minimum_runnable_options.include?(:blank).should == true
         
     | 
| 
      
 385 
     | 
    
         
            +
                      end
         
     | 
| 
      
 386 
     | 
    
         
            +
                    end
         
     | 
| 
      
 387 
     | 
    
         
            +
                    describe "unique_cookie" do
         
     | 
| 
      
 388 
     | 
    
         
            +
                      it "should have the method generate generate_unique_cookie_string" do
         
     | 
| 
      
 389 
     | 
    
         
            +
                        @cloud.respond_to?(:generate_unique_cookie_string).should == true
         
     | 
| 
      
 390 
     | 
    
         
            +
                      end
         
     | 
| 
      
 391 
     | 
    
         
            +
                      it "should call hexdigest to digest/sha" do
         
     | 
| 
      
 392 
     | 
    
         
            +
                        Digest::SHA256.should_receive(:hexdigest).with("#{@cloud.full_keypair_name}#{@cloud.name}")
         
     | 
| 
      
 393 
     | 
    
         
            +
                        @cloud.generate_unique_cookie_string
         
     | 
| 
      
 394 
     | 
    
         
            +
                      end
         
     | 
| 
      
 395 
     | 
    
         
            +
                      it "should generate the same cookie string every time" do
         
     | 
| 
      
 396 
     | 
    
         
            +
                        older = @cloud.generate_unique_cookie_string
         
     | 
| 
      
 397 
     | 
    
         
            +
                        old = @cloud.generate_unique_cookie_string
         
     | 
| 
      
 398 
     | 
    
         
            +
                        new_one = @cloud.generate_unique_cookie_string
         
     | 
| 
      
 399 
     | 
    
         
            +
                        older.should == old
         
     | 
| 
      
 400 
     | 
    
         
            +
                        old.should == new_one
         
     | 
| 
      
 401 
     | 
    
         
            +
                        new_one.should == older
         
     | 
| 
      
 402 
     | 
    
         
            +
                      end
         
     | 
| 
      
 403 
     | 
    
         
            +
                    end
         
     | 
| 
       367 
404 
     | 
    
         
             
                  end
         
     | 
| 
       368 
405 
     | 
    
         | 
| 
       369 
406 
     | 
    
         
             
                  describe "instances" do
         
     |