poolparty 0.2.69 → 0.2.84
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/Capfile +1 -0
- data/History.txt +6 -0
- data/Manifest.txt +140 -143
- data/PostInstall.txt +1 -1
- data/README.txt +2 -0
- data/bin/cloud-configure +5 -2
- data/bin/cloud-handle-load +3 -3
- data/bin/cloud-maintain +3 -3
- data/bin/cloud-provision +6 -5
- data/bin/cloud-rsync +28 -0
- data/bin/cloud-setup-dev +25 -0
- data/bin/cloud-spec +40 -0
- data/bin/cloud-start +5 -3
- data/bin/server-clean-cert-for +15 -0
- data/bin/server-rerun +0 -1
- data/bin/server-start-client +1 -1
- data/bin/server-start-master +1 -1
- data/bin/server-start-node +1 -1
- data/bin/server-update-hosts +4 -3
- data/bin/server-write-new-nodes +26 -0
- data/generators/poolspec/USAGE +2 -2
- data/generators/poolspec/poolspec_generator.rb +1 -1
- data/lib/erlang/messenger/Makefile +15 -0
- data/lib/erlang/messenger/ebin/client_app.beam +0 -0
- data/lib/erlang/messenger/ebin/client_server.beam +0 -0
- data/lib/erlang/messenger/ebin/erl_crash.dump +10326 -0
- data/lib/erlang/messenger/ebin/master_app.beam +0 -0
- data/lib/erlang/messenger/ebin/node_app.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_client.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_client_old.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_client_supervisor.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_cluster.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_event_manager.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_master.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_master_event_handler.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_master_supervisor.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_node.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_node_supervisor.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_packager.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_spawner.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_strings.beam +0 -0
- data/lib/erlang/messenger/ebin/utils.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/Makefile +28 -0
- data/lib/erlang/messenger/lib/eunit/ebin/autoload.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/code_monitor.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_autoexport.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_data.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_lib.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_proc.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_serial.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_server.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_striptests.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_test.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_tests.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_tty.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/file_monitor.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/src/Makefile +46 -0
- data/lib/erlang/messenger/src/pm_master.erl +5 -0
- data/lib/erlang/messenger/src/pm_node.erl +2 -3
- data/lib/erlang/messenger/src/pm_spawner.erl +213 -0
- data/lib/poolparty/base_packages/heartbeat.rb +57 -43
- data/lib/poolparty/base_packages/poolparty.rb +18 -15
- data/lib/poolparty/capistrano.rb +18 -0
- data/lib/poolparty/core/class.rb +24 -0
- data/lib/poolparty/core/kernel.rb +7 -0
- data/lib/poolparty/core/module.rb +2 -2
- data/lib/poolparty/core/string.rb +1 -1
- data/lib/poolparty/dependency_resolutions/puppet.rb +10 -2
- data/lib/poolparty/exceptions/ProvisionerException.rb +5 -0
- data/lib/poolparty/extra/deployments.rb +31 -0
- data/lib/poolparty/helpers/binary.rb +14 -2
- data/lib/poolparty/helpers/optioner.rb +61 -22
- data/lib/poolparty/helpers/ruberl.rb +33 -0
- data/lib/poolparty/modules/cloud_dsl.rb +2 -1
- data/lib/poolparty/modules/cloud_resourcer.rb +30 -6
- data/lib/poolparty/modules/configurable.rb +2 -0
- data/lib/poolparty/modules/file_writer.rb +4 -4
- data/lib/poolparty/modules/resourcing_dsl.rb +5 -5
- data/lib/poolparty/monitors/base_monitor.rb +1 -1
- data/lib/poolparty/monitors/monitors/cpu_monitor.rb +2 -2
- data/lib/poolparty/net/messenger.rb +1 -1
- data/lib/poolparty/net/remote.rb +2 -2
- data/lib/poolparty/net/remote_bases/ec2.rb +51 -11
- data/lib/poolparty/net/remote_instance.rb +7 -3
- data/lib/poolparty/net/remoter.rb +72 -24
- data/lib/poolparty/net/remoter_base.rb +10 -0
- data/lib/poolparty/plugins/deploydirectory.rb +10 -5
- data/lib/poolparty/plugins/git.rb +51 -0
- data/lib/poolparty/{pool → poolparty}/base.rb +4 -2
- data/lib/poolparty/{pool → poolparty}/cloud.rb +32 -10
- data/lib/poolparty/{pool → poolparty}/plugin_model.rb +4 -4
- data/lib/poolparty/{pool → poolparty}/pool.rb +2 -2
- data/lib/poolparty/{pool → poolparty}/resource.rb +33 -15
- data/lib/poolparty/{pool → poolparty}/resources/class_package.rb +3 -3
- data/lib/poolparty/{pool → poolparty}/resources/directory.rb +6 -3
- data/lib/poolparty/{pool → poolparty}/resources/exec.rb +2 -5
- data/lib/poolparty/{pool → poolparty}/resources/file.rb +3 -3
- data/lib/poolparty/{pool → poolparty}/resources/package.rb +1 -1
- data/lib/poolparty/{pool → poolparty}/resources/remote_file.rb +1 -1
- data/lib/poolparty/poolparty/resources/remote_user.rb +17 -0
- data/lib/poolparty/{pool → poolparty}/resources/sshkey.rb +5 -1
- data/lib/poolparty/{pool → poolparty}/script.rb +1 -1
- data/lib/poolparty/provisioners/capistrano/capistrano.rb +127 -0
- data/lib/poolparty/provisioners/capistrano/capistrano_configurer.rb +58 -0
- data/lib/poolparty/provisioners/capistrano/recipies/base.rb +104 -0
- data/lib/poolparty/provisioners/capistrano/recipies/master.rb +121 -0
- data/lib/poolparty/provisioners/capistrano/recipies/slave.rb +12 -0
- data/lib/poolparty/provisioners/provisioner_base.rb +204 -0
- data/lib/poolparty/spec/core/string.rb +16 -0
- data/lib/poolparty/spec/matchers/a_spec_extensions_base.rb +26 -0
- data/lib/poolparty/spec/matchers/have_cron.rb +28 -0
- data/lib/poolparty/spec/matchers/have_deploydirectory.rb +15 -0
- data/lib/poolparty/spec/matchers/have_directory.rb +31 -0
- data/lib/poolparty/spec/matchers/have_exec.rb +28 -0
- data/lib/poolparty/spec/matchers/have_file.rb +28 -0
- data/lib/poolparty/spec/matchers/have_gempackage.rb +28 -0
- data/lib/poolparty/spec/matchers/have_git.rb +28 -0
- data/lib/poolparty/spec/matchers/have_host.rb +28 -0
- data/lib/poolparty/spec/matchers/have_mount.rb +28 -0
- data/lib/poolparty/spec/matchers/have_package.rb +28 -0
- data/lib/poolparty/spec/matchers/have_remotefile.rb +28 -0
- data/lib/poolparty/spec/matchers/have_rsyncmirror.rb +28 -0
- data/lib/poolparty/spec/matchers/have_service.rb +28 -0
- data/lib/poolparty/spec/matchers/have_sshkey.rb +28 -0
- data/lib/poolparty/spec/matchers/have_symlink.rb +28 -0
- data/lib/poolparty/spec/matchers/have_variable.rb +32 -0
- data/lib/poolparty/spec/spec/dynamic_matchers.rb +63 -0
- data/lib/poolparty/spec/spec/ensure_matchers_exist.rb +7 -0
- data/lib/poolparty/spec/templates/have_base.rb +28 -0
- data/lib/poolparty/templates/authkeys +1 -1
- data/lib/poolparty/templates/gem +12 -10
- data/lib/poolparty/templates/ha.cf +9 -11
- data/lib/poolparty/templates/haresources +1 -1
- data/lib/poolparty/templates/logd.cf +42 -0
- data/lib/poolparty/templates/puppet.conf +18 -8
- data/lib/poolparty/templates/puppetcleaner +9 -3
- data/lib/poolparty/templates/puppetrerun +16 -3
- data/lib/poolparty/templates/puppetrunner +1 -1
- data/lib/poolparty/version.rb +1 -1
- data/lib/poolparty.rb +12 -8
- data/lib/poolpartyspec.rb +34 -0
- data/poolparty.gemspec +151 -149
- data/spec/poolparty/aska/aska_spec.rb +0 -5
- data/spec/poolparty/bin/console_spec.rb +3 -0
- data/spec/poolparty/extra/deployments_spec.rb +64 -0
- data/spec/poolparty/helpers/binary_spec.rb +1 -1
- data/spec/poolparty/helpers/optioner_spec.rb +17 -4
- data/spec/poolparty/modules/cloud_resourcer_spec.rb +19 -2
- data/spec/poolparty/modules/configurable_spec.rb +2 -2
- data/spec/poolparty/net/remote_bases/ec2_spec.rb +5 -2
- data/spec/poolparty/net/remote_instance_spec.rb +5 -0
- data/spec/poolparty/net/remote_spec.rb +24 -31
- data/spec/poolparty/net/remoter_base_spec.rb +11 -6
- data/spec/poolparty/net/remoter_spec.rb +55 -27
- data/spec/poolparty/plugins/deploydirectory_spec.rb +1 -0
- data/spec/poolparty/plugins/git_spec.rb +45 -0
- data/spec/poolparty/{pool → poolparty}/cloud_spec.rb +41 -0
- data/spec/poolparty/{pool → poolparty}/plugin_spec.rb +1 -1
- data/spec/poolparty/{pool → poolparty}/pool_spec.rb +1 -1
- data/spec/poolparty/{pool → poolparty}/resource_spec.rb +15 -2
- data/spec/poolparty/poolparty/resources/user_spec.rb +38 -0
- data/spec/poolparty/poolparty/test_plugins/virtual_host_template.erb +0 -0
- data/spec/poolparty/poolparty_spec.rb +1 -1
- data/spec/poolparty/provisioners/capistrano/capistrano_spec.rb +27 -0
- data/spec/poolparty/provisioners/provisioner_base_spec.rb +120 -0
- data/spec/poolparty/spec/core/string_spec.rb +57 -0
- data/spec/poolparty/spec_helper.rb +48 -6
- data/tasks/deployment.rake +3 -5
- data/tasks/spec.rake +2 -3
- data/website/index.html +2 -2
- metadata +150 -148
- data/lib/erlang/messenger/lib/eunit/.svn/all-wcprops +0 -53
- data/lib/erlang/messenger/lib/eunit/.svn/entries +0 -140
- data/lib/erlang/messenger/lib/eunit/.svn/format +0 -1
- data/lib/erlang/messenger/lib/eunit/.svn/prop-base/NOTES.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/.svn/text-base/AUTHORS.svn-base +0 -2
- data/lib/erlang/messenger/lib/eunit/.svn/text-base/CHANGELOG.svn-base +0 -14
- data/lib/erlang/messenger/lib/eunit/.svn/text-base/COPYING.svn-base +0 -504
- data/lib/erlang/messenger/lib/eunit/.svn/text-base/NOTES.svn-base +0 -276
- data/lib/erlang/messenger/lib/eunit/.svn/text-base/README.svn-base +0 -3
- data/lib/erlang/messenger/lib/eunit/.svn/text-base/sys.config.svn-base +0 -9
- data/lib/erlang/messenger/lib/eunit/.svn/text-base/vsn.mk.svn-base +0 -1
- data/lib/erlang/messenger/lib/eunit/doc/.svn/all-wcprops +0 -59
- data/lib/erlang/messenger/lib/eunit/doc/.svn/entries +0 -142
- data/lib/erlang/messenger/lib/eunit/doc/.svn/format +0 -1
- data/lib/erlang/messenger/lib/eunit/doc/.svn/prop-base/erlang.png.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/doc/.svn/prop-base/eunit.html.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/doc/.svn/prop-base/index.html.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/doc/.svn/prop-base/modules-frame.html.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/doc/.svn/prop-base/overview-summary.html.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/doc/.svn/prop-base/packages-frame.html.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/doc/.svn/text-base/edoc-info.svn-base +0 -3
- data/lib/erlang/messenger/lib/eunit/doc/.svn/text-base/erlang.png.svn-base +0 -0
- data/lib/erlang/messenger/lib/eunit/doc/.svn/text-base/eunit.html.svn-base +0 -172
- data/lib/erlang/messenger/lib/eunit/doc/.svn/text-base/index.html.svn-base +0 -17
- data/lib/erlang/messenger/lib/eunit/doc/.svn/text-base/modules-frame.html.svn-base +0 -12
- data/lib/erlang/messenger/lib/eunit/doc/.svn/text-base/overview-summary.html.svn-base +0 -984
- data/lib/erlang/messenger/lib/eunit/doc/.svn/text-base/overview.edoc.svn-base +0 -980
- data/lib/erlang/messenger/lib/eunit/doc/.svn/text-base/packages-frame.html.svn-base +0 -11
- data/lib/erlang/messenger/lib/eunit/doc/.svn/text-base/stylesheet.css.svn-base +0 -55
- data/lib/erlang/messenger/lib/eunit/ebin/.svn/all-wcprops +0 -5
- data/lib/erlang/messenger/lib/eunit/ebin/.svn/dir-prop-base +0 -8
- data/lib/erlang/messenger/lib/eunit/ebin/.svn/entries +0 -28
- data/lib/erlang/messenger/lib/eunit/ebin/.svn/format +0 -1
- data/lib/erlang/messenger/lib/eunit/examples/.svn/all-wcprops +0 -23
- data/lib/erlang/messenger/lib/eunit/examples/.svn/entries +0 -66
- data/lib/erlang/messenger/lib/eunit/examples/.svn/format +0 -1
- data/lib/erlang/messenger/lib/eunit/examples/.svn/prop-base/eunit_examples.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/examples/.svn/prop-base/fib.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/examples/.svn/text-base/eunit_examples.erl.svn-base +0 -339
- data/lib/erlang/messenger/lib/eunit/examples/.svn/text-base/fib.erl.svn-base +0 -19
- data/lib/erlang/messenger/lib/eunit/examples/.svn/text-base/tests.txt.svn-base +0 -1
- data/lib/erlang/messenger/lib/eunit/include/.svn/all-wcprops +0 -11
- data/lib/erlang/messenger/lib/eunit/include/.svn/entries +0 -41
- data/lib/erlang/messenger/lib/eunit/include/.svn/format +0 -1
- data/lib/erlang/messenger/lib/eunit/include/.svn/prop-base/eunit.hrl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/include/.svn/text-base/eunit.hrl.svn-base +0 -313
- data/lib/erlang/messenger/lib/eunit/src/.svn/all-wcprops +0 -113
- data/lib/erlang/messenger/lib/eunit/src/.svn/entries +0 -259
- data/lib/erlang/messenger/lib/eunit/src/.svn/format +0 -1
- data/lib/erlang/messenger/lib/eunit/src/.svn/prop-base/autoload.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/src/.svn/prop-base/code_monitor.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/src/.svn/prop-base/eunit.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/src/.svn/prop-base/eunit_autoexport.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/src/.svn/prop-base/eunit_data.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/src/.svn/prop-base/eunit_internal.hrl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/src/.svn/prop-base/eunit_lib.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/src/.svn/prop-base/eunit_proc.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/src/.svn/prop-base/eunit_serial.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/src/.svn/prop-base/eunit_server.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/src/.svn/prop-base/eunit_striptests.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/src/.svn/prop-base/eunit_test.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/src/.svn/prop-base/eunit_tests.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/src/.svn/prop-base/eunit_tty.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/src/.svn/prop-base/file_monitor.erl.svn-base +0 -5
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/autoload.erl.svn-base +0 -388
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/code_monitor.erl.svn-base +0 -243
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/eunit.app.src.svn-base +0 -21
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/eunit.appup.src.svn-base +0 -1
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/eunit.erl.svn-base +0 -196
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/eunit_autoexport.erl.svn-base +0 -102
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/eunit_data.erl.svn-base +0 -798
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/eunit_internal.hrl.svn-base +0 -48
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/eunit_lib.erl.svn-base +0 -682
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/eunit_proc.erl.svn-base +0 -552
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/eunit_serial.erl.svn-base +0 -157
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/eunit_server.erl.svn-base +0 -340
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/eunit_striptests.erl.svn-base +0 -64
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/eunit_test.erl.svn-base +0 -334
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/eunit_tests.erl.svn-base +0 -45
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/eunit_tty.erl.svn-base +0 -272
- data/lib/erlang/messenger/lib/eunit/src/.svn/text-base/file_monitor.erl.svn-base +0 -409
- data/lib/erlang/messenger/src/pm_client_old.erl +0 -52
- data/lib/poolparty/helpers/provisioner_base.rb +0 -346
- data/lib/poolparty/helpers/provisioners/master.rb +0 -205
- data/lib/poolparty/helpers/provisioners/slave.rb +0 -64
- data/spec/poolparty/helpers/provisioner_base_spec.rb +0 -134
- data/spec/poolparty/helpers/provisioners/master_spec.rb +0 -54
- data/spec/poolparty/helpers/provisioners/slave_spec.rb +0 -28
- /data/lib/poolparty/{pool → poolparty}/custom_resource.rb +0 -0
- /data/lib/poolparty/{pool → poolparty}/loggable.rb +0 -0
- /data/lib/poolparty/{pool → poolparty}/plugin.rb +0 -0
- /data/lib/poolparty/{pool → poolparty}/resources/conditional.rb +0 -0
- /data/lib/poolparty/{pool → poolparty}/resources/cron.rb +0 -0
- /data/lib/poolparty/{pool → poolparty}/resources/custom_service.rb +0 -0
- /data/lib/poolparty/{pool → poolparty}/resources/gem_package.rb +0 -0
- /data/lib/poolparty/{pool → poolparty}/resources/host.rb +0 -0
- /data/lib/poolparty/{pool → poolparty}/resources/mount.rb +0 -0
- /data/lib/poolparty/{pool → poolparty}/resources/service.rb +0 -0
- /data/lib/poolparty/{pool → poolparty}/resources/symlink.rb +0 -0
- /data/lib/poolparty/{pool → poolparty}/resources/variable.rb +0 -0
- /data/log/{pool.logs → pool.log} +0 -0
- /data/spec/poolparty/{pool/test_plugins/virtual_host_template.erb → net/log/pool.log} +0 -0
- /data/spec/poolparty/{pool → poolparty}/base_spec.rb +0 -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}/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/{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/webserver.rb +0 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
module Spec
|
|
2
|
+
module Matchers
|
|
3
|
+
module SpecExtensions
|
|
4
|
+
class HaveVariable < SpecExtensionsBase
|
|
5
|
+
def initialize(varname, expected,extra="")
|
|
6
|
+
@varname = varname
|
|
7
|
+
@expected = expected
|
|
8
|
+
@extra = extra
|
|
9
|
+
end
|
|
10
|
+
def matches?(target)
|
|
11
|
+
@target = target
|
|
12
|
+
is_present?
|
|
13
|
+
end
|
|
14
|
+
def is_present?
|
|
15
|
+
@target.match(/\$#{@varname}(\W+)=(\W+)#{@expected}/)[0]
|
|
16
|
+
end
|
|
17
|
+
def failure_message
|
|
18
|
+
"expected #{@target.inspect} to have variable #{@expected}"
|
|
19
|
+
end
|
|
20
|
+
def negative_failure_message
|
|
21
|
+
"expected #{@target.inspect} not to have variable #{@expected}"
|
|
22
|
+
end
|
|
23
|
+
def type
|
|
24
|
+
"variable"
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
def have_variable(name, extra="")
|
|
29
|
+
SpecExtensions::HaveVariable.new(name, extra)
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
require "rubygems"
|
|
2
|
+
require "spec"
|
|
3
|
+
require "#{::File.dirname(__FILE__)}/../matchers/a_spec_extensions_base.rb"
|
|
4
|
+
class Object
|
|
5
|
+
# For all of the available_resources, write the matcher template
|
|
6
|
+
# based on the have_base base and write the method have_
|
|
7
|
+
# for each of the resources available
|
|
8
|
+
def write_dynamic_matchers
|
|
9
|
+
PoolParty::Resources::Resource.available_resources.each do |ty|
|
|
10
|
+
ty.downcase!
|
|
11
|
+
filename = "#{::File.dirname(__FILE__)}/../matchers/have_#{ty}.rb"
|
|
12
|
+
unless ::File.file?(filename)
|
|
13
|
+
str = make_dynamic_matcher_string_for(ty)
|
|
14
|
+
::File.open(filename, "w+") {|f| f << str}
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
# Create a dynamic matcher
|
|
19
|
+
# Create a matcher for spec based in the context called from
|
|
20
|
+
# Usage example:
|
|
21
|
+
# dynamic_matcher_for(:virtualhost) do
|
|
22
|
+
# set_description "should have virtualhost"
|
|
23
|
+
# it "should have the directory /var/www" do
|
|
24
|
+
# have_directory("/var/www")
|
|
25
|
+
# end
|
|
26
|
+
# end
|
|
27
|
+
# This creates a method by the name of the dynamic matcher
|
|
28
|
+
# so in the above example for virtualhost, the
|
|
29
|
+
# method have_virtualhost(name) &block is created in the spec
|
|
30
|
+
# context and can be called from within the describe/context
|
|
31
|
+
# in a spec
|
|
32
|
+
def dynamic_matcher_for(ty, &block)
|
|
33
|
+
name = "#{ty}".camelcase
|
|
34
|
+
|
|
35
|
+
begin
|
|
36
|
+
const = Object.const_set(name, Spec::Example::SharedExampleGroup.register(name.to_sym, &block))
|
|
37
|
+
rescue NameError => e
|
|
38
|
+
raise NameError.new(e.message + "\nThe first argument to share_as must be a legal name for a constant\n")
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
described_type = "#{ty.to_s.underscore.downcase}"
|
|
42
|
+
|
|
43
|
+
::Spec::Example::ExampleGroupMethods.module_eval <<-EOM
|
|
44
|
+
def have_#{ty.to_s.underscore.downcase}(*args)
|
|
45
|
+
include #{const}
|
|
46
|
+
self.module_eval "@@described_type = args;def #{described_type}; @@described_type; end"
|
|
47
|
+
end
|
|
48
|
+
EOM
|
|
49
|
+
end
|
|
50
|
+
# Load the have_base file and fill in the variables for the
|
|
51
|
+
# have_base base template
|
|
52
|
+
def make_dynamic_matcher_string_for(ty, matcher="is_present?")
|
|
53
|
+
@basestr ||= open("#{::File.dirname(__FILE__)}/../templates/have_base.rb").read
|
|
54
|
+
typestring = ty.to_s
|
|
55
|
+
begin
|
|
56
|
+
@basestr ^ {:classname => "Have#{typestring.capitalize}",
|
|
57
|
+
:type => typestring,
|
|
58
|
+
:matches => matcher,
|
|
59
|
+
:includer => "SpecExtensions::Have#{typestring.capitalize}.new(name, extra)"}
|
|
60
|
+
rescue Exception => e
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
module Spec
|
|
2
|
+
module Matchers
|
|
3
|
+
module SpecExtensions
|
|
4
|
+
class :classname < SpecExtensionsBase
|
|
5
|
+
def initialize(expected,extra="")
|
|
6
|
+
@expected = expected
|
|
7
|
+
@extra = extra
|
|
8
|
+
end
|
|
9
|
+
def matches?(target)
|
|
10
|
+
@target = target
|
|
11
|
+
:matches
|
|
12
|
+
end
|
|
13
|
+
def failure_message
|
|
14
|
+
"expected #{@target.inspect} to have :type #{@expected}"
|
|
15
|
+
end
|
|
16
|
+
def negative_failure_message
|
|
17
|
+
"expected #{@target.inspect} not to have :type #{@expected}"
|
|
18
|
+
end
|
|
19
|
+
def type
|
|
20
|
+
":type"
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
def have_:type(name, extra="")
|
|
25
|
+
:includer
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
auth 1
|
|
2
|
-
1
|
|
2
|
+
1 sha1 PasswordForpoolpartyClusterApplicationButItIsOnlyADefault
|
data/lib/poolparty/templates/gem
CHANGED
|
@@ -1,20 +1,18 @@
|
|
|
1
|
-
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
2
|
#--
|
|
3
3
|
# Copyright 2006 by Chad Fowler, Rich Kilmer, Jim Weirich and others.
|
|
4
4
|
# All rights reserved.
|
|
5
5
|
# See LICENSE.txt for permissions.
|
|
6
|
-
# /usr/bin/gem is broken, so... have to use this until it is fixed
|
|
7
6
|
#++
|
|
8
7
|
|
|
8
|
+
require 'rubygems'
|
|
9
|
+
require 'rubygems/gem_runner'
|
|
10
|
+
require 'rubygems/exceptions'
|
|
9
11
|
|
|
10
|
-
|
|
11
|
-
require "rubygems/gem_runner"
|
|
12
|
-
Gem.manage_gems
|
|
12
|
+
required_version = Gem::Requirement.new "> 1.8.3"
|
|
13
13
|
|
|
14
|
-
required_version
|
|
15
|
-
|
|
16
|
-
puts "Expected Ruby Version #{required_version}, was #{RUBY_VERSION}"
|
|
17
|
-
exit(1)
|
|
14
|
+
unless required_version.satisfied_by? Gem.ruby_version then
|
|
15
|
+
abort "Expected Ruby Version #{required_version}, was #{Gem.ruby_version}"
|
|
18
16
|
end
|
|
19
17
|
|
|
20
18
|
# We need to preserve the original ARGV to use for passing gem options
|
|
@@ -22,4 +20,8 @@ end
|
|
|
22
20
|
# it...its for the source building process.
|
|
23
21
|
args = !ARGV.include?("--") ? ARGV.clone : ARGV[0...ARGV.index("--")]
|
|
24
22
|
|
|
25
|
-
|
|
23
|
+
begin
|
|
24
|
+
Gem::GemRunner.new.run args
|
|
25
|
+
rescue Gem::SystemExitException => e
|
|
26
|
+
exit e.exit_code
|
|
27
|
+
end
|
|
@@ -1,19 +1,17 @@
|
|
|
1
1
|
# Heartbeat
|
|
2
|
-
keepalive
|
|
3
|
-
deadtime 32 # wait
|
|
2
|
+
keepalive 5 # Time inbetween heartbeats
|
|
3
|
+
deadtime 32 # wait 10 seconds before declaring dead
|
|
4
4
|
warntime 16 # issue a warning halfway through
|
|
5
5
|
initdead 60 # Don't boot instances between 60 seconds of each other
|
|
6
6
|
logfacility daemon # Log to syslog as facility "daemon"
|
|
7
|
-
auto_failback
|
|
7
|
+
auto_failback on
|
|
8
8
|
use_logd yes
|
|
9
|
-
|
|
10
|
-
crm on
|
|
11
|
-
logfile /var/log/ha.log
|
|
9
|
+
crm yes
|
|
12
10
|
|
|
13
11
|
<% ha_node_ips.chomp.split(/\t/).each_with_index do |ip,index| -%>
|
|
14
|
-
<% if
|
|
15
|
-
|
|
16
|
-
<% end
|
|
17
|
-
<% end
|
|
12
|
+
<% if hostname != ha_nodenames.chomp.split(/\t/)[index] -%>
|
|
13
|
+
ucast eth0 <%= ip %>
|
|
14
|
+
<% end -%>
|
|
15
|
+
<% end -%>
|
|
18
16
|
|
|
19
|
-
node <%= ha_nodenames %>
|
|
17
|
+
node <%= ha_nodenames.chomp.split(/\t/).join(" ") %>
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# File to write debug messages to
|
|
2
|
+
# Default: /var/log/ha-debug
|
|
3
|
+
#debugfile /var/log/ha-debug
|
|
4
|
+
|
|
5
|
+
#
|
|
6
|
+
#
|
|
7
|
+
# File to write other messages to
|
|
8
|
+
# Default: /var/log/ha-log
|
|
9
|
+
#logfile /var/log/ha-log
|
|
10
|
+
|
|
11
|
+
#
|
|
12
|
+
#
|
|
13
|
+
# Facility to use for syslog()/logger
|
|
14
|
+
# Default: daemon
|
|
15
|
+
logfacility daemon
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
# Entity to be shown at beginning of a message
|
|
19
|
+
# for logging daemon
|
|
20
|
+
# Default: "logd"
|
|
21
|
+
#entity logd
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
# Do we register to apphbd
|
|
25
|
+
# Default: no
|
|
26
|
+
#useapphbd no
|
|
27
|
+
|
|
28
|
+
# There are two processes running for logging daemon
|
|
29
|
+
# 1. parent process which reads messages from all client channels
|
|
30
|
+
# and writes them to the child process
|
|
31
|
+
#
|
|
32
|
+
# 2. the child process which reads messages from the parent process through IPC
|
|
33
|
+
# and writes them to syslog/disk
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
# set the send queue length from the parent process to the child process
|
|
37
|
+
#
|
|
38
|
+
#sendqlen 256
|
|
39
|
+
|
|
40
|
+
# set the recv queue length in child process
|
|
41
|
+
#
|
|
42
|
+
#recvqlen 256
|
|
@@ -1,16 +1,26 @@
|
|
|
1
1
|
[main]
|
|
2
2
|
vardir = /var/lib/puppet
|
|
3
3
|
logdir = /var/log/puppet
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
ssldir = /etc/poolparty/ssl
|
|
5
|
+
pluginsync = false
|
|
6
|
+
factsync = false
|
|
7
|
+
|
|
8
|
+
[puppetca]
|
|
9
|
+
config = $config/puppetca.conf
|
|
6
10
|
|
|
11
|
+
[certificates]
|
|
12
|
+
publickeydir = /etc/poolparty/public_keys
|
|
13
|
+
certdir = /etc/poolparty/certs
|
|
14
|
+
privatekeydir = /etc/poolparty/private_keys
|
|
15
|
+
|
|
16
|
+
[ca]
|
|
17
|
+
signeddir = /etc/poolparty/signed
|
|
18
|
+
|
|
7
19
|
[puppetd]
|
|
8
20
|
localconfig = $vardir/localconfig
|
|
9
|
-
report=true
|
|
10
|
-
server=master
|
|
11
|
-
|
|
12
|
-
[puppetrun]
|
|
13
|
-
certname = master
|
|
21
|
+
report = true
|
|
22
|
+
server = master
|
|
14
23
|
|
|
15
24
|
[puppetmasterd]
|
|
16
|
-
certname = master
|
|
25
|
+
certname = master
|
|
26
|
+
server = master
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
|
|
3
|
-
#
|
|
3
|
+
ARGS=1 # Number of arguments expected.
|
|
4
|
+
E_BADARGS=85 # Exit value if incorrect number of args passed.
|
|
5
|
+
|
|
6
|
+
test $# -ne $ARGS && echo "Usage: `basename $0` requires $ARGS argument(s)" && exit $E_BADARGS
|
|
7
|
+
|
|
4
8
|
. /etc/profile
|
|
5
|
-
|
|
6
|
-
|
|
9
|
+
HN=$1
|
|
10
|
+
|
|
11
|
+
echo "Cleaning $1 signed certs"
|
|
12
|
+
rm /etc/poolparty/ssl/ca/signed/$HN.*
|
|
@@ -2,8 +2,21 @@
|
|
|
2
2
|
|
|
3
3
|
. /etc/profile
|
|
4
4
|
if [ $(/usr/sbin/puppetd --onetime --no-daemonize --logdest syslog --server master)]; then
|
|
5
|
-
echo "Run successfully"
|
|
5
|
+
echo "Run successfully" && exit 0
|
|
6
6
|
else
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
echo "Clearing old certs"
|
|
8
|
+
HN=`hostname`
|
|
9
|
+
if [[ $HN == "master" ]]; then
|
|
10
|
+
rm /etc/poolparty/ssl/ca/signed/$HN*
|
|
11
|
+
if [ $(/usr/sbin/puppetd --onetime --no-daemonize --logdest syslog --server master) ]; then
|
|
12
|
+
echo "Run successfully" && exit 0
|
|
13
|
+
else
|
|
14
|
+
# /etc/init.d/puppetmaster stop;rm -rf /etc/poolparty/ssl;/etc/init.d/puppetmaster start
|
|
15
|
+
rm /etc/poolparty/ssl/$HN*
|
|
16
|
+
/usr/sbin/puppetd --onetime --no-daemonize --logdest syslog --server master
|
|
17
|
+
fi
|
|
18
|
+
else
|
|
19
|
+
rm /etc/poolparty/ssl/ca/signed/$HN*
|
|
20
|
+
/usr/sbin/puppetd --onetime --no-daemonize --logdest syslog --server master
|
|
21
|
+
fi
|
|
9
22
|
fi
|
|
@@ -4,5 +4,5 @@
|
|
|
4
4
|
if [ $(/usr/sbin/puppetd --onetime --no-daemonize --logdest syslog --server master)]; then
|
|
5
5
|
echo "Run successfully"
|
|
6
6
|
else
|
|
7
|
-
/usr/sbin/puppetd --onetime --no-daemonize --logdest syslog --server master
|
|
7
|
+
/usr/bin/puppetrerun;/usr/sbin/puppetd --onetime --no-daemonize --logdest syslog --server master
|
|
8
8
|
fi
|
data/lib/poolparty/version.rb
CHANGED
data/lib/poolparty.rb
CHANGED
|
@@ -2,7 +2,7 @@ require 'rubygems'
|
|
|
2
2
|
|
|
3
3
|
# Load required gems
|
|
4
4
|
@required_software = Array.new
|
|
5
|
-
%w(activesupport ftools logging resolv ruby2ruby).each do |lib|
|
|
5
|
+
%w(activesupport ftools logging resolv ruby2ruby digest/sha2 open3 capistrano).each do |lib|
|
|
6
6
|
begin
|
|
7
7
|
require lib
|
|
8
8
|
rescue Exception => e
|
|
@@ -36,21 +36,23 @@ end
|
|
|
36
36
|
ActiveSupport::Dependencies.load_paths << File.dirname(__FILE__)
|
|
37
37
|
|
|
38
38
|
## Load PoolParty
|
|
39
|
-
|
|
39
|
+
%w(version).each do |f|
|
|
40
|
+
require "#{File.dirname(__FILE__)}/poolparty/#{f}"
|
|
41
|
+
end
|
|
40
42
|
|
|
41
|
-
%w(core modules exceptions dependency_resolutions aska monitors net).each do |dir|
|
|
43
|
+
%w(core modules exceptions dependency_resolutions aska monitors provisioners extra net).each do |dir|
|
|
42
44
|
Dir[File.dirname(__FILE__) + "/poolparty/#{dir}/**.rb"].each do |file|
|
|
43
45
|
require file
|
|
44
46
|
end
|
|
45
47
|
end
|
|
46
48
|
|
|
47
|
-
Kernel.load_p File.dirname(__FILE__) + "/poolparty/
|
|
49
|
+
Kernel.load_p File.dirname(__FILE__) + "/poolparty/poolparty"
|
|
48
50
|
Logging.init :debug, :info, :warn, :error, :fatal
|
|
49
51
|
|
|
50
52
|
module PoolParty
|
|
51
53
|
include FileWriter
|
|
52
54
|
|
|
53
|
-
def
|
|
55
|
+
def log
|
|
54
56
|
@logger ||= make_new_logger
|
|
55
57
|
end
|
|
56
58
|
|
|
@@ -81,8 +83,10 @@ class Class
|
|
|
81
83
|
end
|
|
82
84
|
|
|
83
85
|
## Load PoolParty Plugins and package
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
86
|
+
module PoolParty
|
|
87
|
+
%w(plugins base_packages).each do |dir|
|
|
88
|
+
Dir[::File.dirname(__FILE__) + "/poolparty/#{dir}/*.rb"].each do |file|
|
|
89
|
+
require file
|
|
90
|
+
end
|
|
87
91
|
end
|
|
88
92
|
end
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
["core", "spec"].each do |dir|
|
|
2
|
+
Dir[File.join(File.dirname(__FILE__), "poolparty", "spec", dir, "*.rb")].each {|f| require f}
|
|
3
|
+
end
|
|
4
|
+
|
|
5
|
+
class TestCloudClass < PoolParty::Cloud::Cloud
|
|
6
|
+
def build_test_manifest
|
|
7
|
+
reset_resources!
|
|
8
|
+
realize_plugins!
|
|
9
|
+
|
|
10
|
+
returning Array.new do |arr|
|
|
11
|
+
|
|
12
|
+
services.each do |service|
|
|
13
|
+
service.options.merge!(:name => service.name)
|
|
14
|
+
classpackage_with_self(service)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
global_classpackages.each do |cls|
|
|
18
|
+
arr << cls.to_string
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
end.join("\n")
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def new_test_cloud(&block)
|
|
26
|
+
TestCloudClass.new(:test_cloud, &block)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def load_test_cloud(name, poolfile=nil)
|
|
30
|
+
PoolParty::Script.inflate_file poolfile
|
|
31
|
+
blk = cloud(name).stored_block.dup
|
|
32
|
+
PoolParty::Pool.reset!
|
|
33
|
+
new_test_cloud &blk
|
|
34
|
+
end
|