poolparty 0.2.84 → 1.2.2
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +7 -0
- data/License.txt +1 -1
- data/PostInstall.txt +1 -1
- data/README.txt +13 -22
- data/Rakefile +26 -35
- data/VERSION.yml +4 -0
- data/bin/cloud +24 -3
- data/bin/cloud-bootstrap +31 -0
- data/bin/cloud-configure +36 -20
- data/bin/{pool-console → cloud-console} +0 -0
- data/bin/cloud-contract +7 -7
- data/bin/cloud-describe +28 -0
- data/bin/cloud-expand +13 -6
- data/bin/cloud-handle-load +3 -3
- data/bin/cloud-list +9 -14
- data/bin/cloud-osxcopy +6 -5
- data/bin/cloud-provision +17 -22
- data/bin/cloud-setup-dev +11 -11
- data/bin/cloud-show +28 -0
- data/bin/cloud-spec +2 -2
- data/bin/cloud-ssh +10 -3
- data/bin/cloud-start +21 -23
- data/bin/cloud-terminate +15 -7
- data/bin/cloud-verify +32 -0
- data/bin/install-poolparty +216 -0
- data/bin/server-butterfly +25 -0
- data/bin/server-cloud-elections +37 -0
- data/bin/server-ensure-provisioning +33 -0
- data/bin/server-get-load +9 -12
- data/bin/server-list-active +25 -12
- data/bin/server-manage-election +67 -0
- data/bin/server-monitor.ru +42 -0
- data/bin/server-query-agent +15 -0
- data/bin/server-rerun +1 -1
- data/bin/server-write-new-nodes +2 -2
- data/config/jeweler.rb +52 -0
- data/config/requirements.rb +1 -9
- data/examples/basic.rb +10 -10
- data/examples/deploy.rb +5 -0
- data/examples/fairchild.rb +28 -0
- data/examples/fairchild_chef.rb +19 -0
- data/examples/maize.rb +37 -0
- data/examples/paparazzi.conf.erb +21 -0
- data/generators/poolspec/poolspec_generator.rb +1 -9
- data/generators/poolspec/templates/pool_spec_template.erb +0 -1
- data/lib/poolparty/{aska/aska.rb → aska.rb} +19 -28
- data/lib/poolparty/base_packages/haproxy.rb +48 -31
- data/lib/poolparty/base_packages/heartbeat.rb +6 -62
- data/lib/poolparty/base_packages/poolparty.rb +5 -105
- data/lib/poolparty/base_packages/ruby.rb +4 -4
- data/lib/poolparty/base_packages/runit.rb +1 -1
- data/lib/poolparty/core/array.rb +21 -3
- data/lib/poolparty/core/hash.rb +45 -10
- data/lib/poolparty/core/kernel.rb +30 -8
- data/lib/poolparty/core/nil.rb +8 -0
- data/lib/poolparty/core/object.rb +34 -25
- data/lib/poolparty/core/ordered_hash.rb +99 -0
- data/lib/poolparty/core/string.rb +112 -15
- data/lib/poolparty/core/symbol.rb +10 -0
- data/lib/poolparty/dependencies.rb +49 -0
- data/lib/poolparty/dependency_resolver/chef_resolver.rb +237 -0
- data/lib/poolparty/dependency_resolver/dependency_resolver.rb +42 -0
- data/lib/poolparty/dependency_resolver/dependency_resolver_cloud_extensions.rb +29 -0
- data/lib/poolparty/{dependency_resolutions → dependency_resolver}/puppet.rb +34 -29
- data/lib/poolparty/dependency_resolver/puppet_resolver.rb +188 -0
- data/lib/poolparty/exceptions/MasterException.rb +2 -2
- data/lib/poolparty/exceptions/RemoteException.rb +1 -1
- data/lib/poolparty/exceptions/dependency_resolver_exception.rb +5 -0
- data/lib/poolparty/exceptions/package_exception.rb +7 -0
- data/lib/poolparty/extra/deployments.rb +7 -7
- data/lib/poolparty/helpers/binary.rb +26 -32
- data/lib/poolparty/helpers/console.rb +1 -1
- data/lib/poolparty/helpers/display.rb +1 -5
- data/lib/poolparty/helpers/hash_printer.rb +44 -0
- data/lib/poolparty/helpers/loading.rb +4 -0
- data/lib/poolparty/helpers/optioner.rb +39 -25
- data/lib/poolparty/lite.rb +30 -0
- data/lib/poolparty/modules/callbacks.rb +44 -0
- data/lib/poolparty/modules/cloud_dsl.rb +38 -8
- data/lib/poolparty/modules/cloud_resourcer.rb +67 -97
- data/lib/poolparty/modules/daemonizable.rb +141 -0
- data/lib/poolparty/modules/definable_resource.rb +8 -14
- data/lib/poolparty/modules/file_writer.rb +25 -17
- data/lib/poolparty/modules/pinger.rb +28 -0
- data/lib/poolparty/modules/pretty_printer.rb +1 -1
- data/lib/poolparty/modules/resourcing_dsl.rb +55 -40
- data/lib/poolparty/modules/searchable_paths.rb +91 -0
- data/lib/poolparty/modules/thread_pool.rb +107 -106
- data/lib/poolparty/modules/user_helpers.rb +20 -0
- data/lib/poolparty/monitors/base_monitor.rb +18 -75
- data/lib/poolparty/monitors/monitor_rack.rb +123 -0
- data/lib/poolparty/monitors/monitors/favicon_monitor.rb +12 -0
- data/lib/poolparty/monitors/monitors/load_monitor.rb +9 -0
- data/lib/poolparty/monitors/monitors/memory_monitor.rb +9 -9
- data/lib/poolparty/monitors/monitors/neighborhood_monitor.rb +77 -0
- data/lib/poolparty/monitors/monitors/stats_monitor.rb +187 -0
- data/lib/poolparty/monitors/monitors/time_monitor.rb +15 -0
- data/lib/poolparty/net/init.rb +10 -0
- data/lib/poolparty/net/remote_bases.rb +20 -0
- data/lib/poolparty/net/remote_instance.rb +26 -44
- data/lib/poolparty/net/remoter/cloud_control.rb +24 -0
- data/lib/poolparty/net/remoter/connections.rb +172 -0
- data/lib/poolparty/net/remoter/interactive.rb +45 -0
- data/lib/poolparty/net/remoter_base.rb +116 -111
- data/lib/poolparty/net/remoter_bases/ec2/ec2.rb +245 -0
- data/lib/poolparty/net/remoter_bases/ec2/ec2_remote_instance.rb +53 -0
- data/lib/poolparty/net/{remote_bases → remoter_bases}/ec2/ec2_response_object.rb +2 -4
- data/lib/poolparty/net/remoter_bases/vmrun/utilities/vm_disk.rb +12 -0
- data/lib/poolparty/net/remoter_bases/vmrun/utilities/vmx.rb +33 -0
- data/lib/poolparty/net/remoter_bases/vmrun/utilities/vmx_file.rb +117 -0
- data/lib/poolparty/net/remoter_bases/vmrun/vmrun.rb +158 -0
- data/lib/poolparty/net/remoter_bases/vmrun/vmrun_instance.rb +71 -0
- data/lib/poolparty/plugins/apache2/apache.rb +340 -0
- data/lib/poolparty/plugins/bind.rb +11 -0
- data/lib/poolparty/plugins/chef.rb +173 -0
- data/lib/poolparty/plugins/chef_deploy.rb +58 -0
- data/lib/poolparty/plugins/deploy_directory.rb +49 -0
- data/lib/poolparty/plugins/gem_package.rb +61 -0
- data/lib/poolparty/plugins/git.rb +41 -24
- data/lib/poolparty/plugins/line_in_file.rb +30 -0
- data/lib/poolparty/plugins/nanite.rb +41 -0
- data/lib/poolparty/plugins/rails_deploy.rb +76 -0
- data/lib/poolparty/plugins/svn.rb +56 -39
- data/lib/poolparty/poolparty/cloud.rb +137 -167
- data/lib/poolparty/poolparty/{base.rb → default.rb} +62 -25
- data/lib/poolparty/poolparty/key.rb +78 -0
- data/lib/poolparty/poolparty/loggable.rb +28 -27
- data/lib/poolparty/poolparty/neighborhoods.rb +102 -0
- data/lib/poolparty/poolparty/plugin.rb +53 -18
- data/lib/poolparty/poolparty/plugin_model.rb +20 -23
- data/lib/poolparty/poolparty/pool.rb +34 -26
- data/lib/poolparty/poolparty/poolparty_base_class.rb +190 -0
- data/lib/poolparty/poolparty/resource.rb +92 -178
- data/lib/poolparty/poolparty/script.rb +32 -20
- data/lib/poolparty/poolparty/service.rb +44 -0
- data/lib/poolparty/poolparty/template.rb +27 -0
- data/lib/poolparty/provision/boot_strapper.rb +164 -0
- data/lib/poolparty/provision/configurations/chef.rb +26 -0
- data/lib/poolparty/provision/configurations/puppet.rb +28 -0
- data/lib/poolparty/provision/dr_configure.rb +142 -0
- data/lib/poolparty/resources/cron.rb +51 -0
- data/lib/poolparty/resources/directory.rb +36 -0
- data/lib/poolparty/resources/exec.rb +47 -0
- data/lib/poolparty/resources/file.rb +73 -0
- data/lib/poolparty/resources/host.rb +37 -0
- data/lib/poolparty/resources/mount.rb +45 -0
- data/lib/poolparty/resources/package.rb +41 -0
- data/lib/poolparty/resources/remote_file.rb +52 -0
- data/lib/poolparty/resources/service.rb +41 -0
- data/lib/poolparty/resources/sshkey.rb +49 -0
- data/lib/poolparty/resources/symlink.rb +43 -0
- data/lib/poolparty/{poolparty/resources/remote_user.rb → resources/user.rb} +1 -5
- data/lib/poolparty/resources/variable.rb +34 -0
- data/lib/poolparty/resources.rb +42 -0
- data/lib/poolparty/schema.rb +79 -0
- data/lib/poolparty/templates/apache2/apache2.conf +14 -0
- data/lib/poolparty/templates/apache2/base.conf.erb +168 -0
- data/lib/poolparty/templates/apache2/browser_fixes.conf.erb +26 -0
- data/lib/poolparty/templates/apache2/debian.conf.erb +675 -0
- data/lib/poolparty/templates/apache2/default-site.conf.erb +41 -0
- data/lib/poolparty/templates/apache2/directory_indexes.conf.erb +101 -0
- data/lib/poolparty/templates/apache2/logging-syslog.conf.erb +42 -0
- data/lib/poolparty/templates/apache2/mime-extras.conf.erb +211 -0
- data/lib/poolparty/templates/apache2/mime-minimal.conf.erb +15 -0
- data/lib/poolparty/templates/apache2/mpm-worker.conf.erb +20 -0
- data/lib/poolparty/templates/apache2/mpm-worker.erb +20 -0
- data/lib/poolparty/templates/apache2/passenger.conf.erb +20 -0
- data/lib/poolparty/templates/apache2/php.ini.erb +1253 -0
- data/lib/poolparty/templates/apache2/server-status.erb +19 -0
- data/lib/poolparty/templates/erlang_cookie_maker +6 -0
- data/lib/poolparty/templates/gemrc_template +11 -0
- data/lib/poolparty/templates/ha.cf +1 -1
- data/lib/poolparty/templates/haproxy.conf +29 -27
- data/lib/poolparty/templates/haresources +2 -2
- data/lib/poolparty/templates/monitor.ru +16 -0
- data/lib/poolparty/templates/php.ini.erb +1253 -0
- data/lib/poolparty/templates/puppet/add_puppet_to_hosts +6 -0
- data/lib/poolparty/templates/puppet/puppet.conf +2 -0
- data/lib/poolparty/templates/puppet/puppetrunner +14 -0
- data/lib/poolparty/templates/puppet/site.pp +4 -0
- data/lib/poolparty/templates/puppetrunner +11 -5
- data/lib/poolparty/verification/verifier_base.rb +17 -0
- data/lib/poolparty/verification/verifiers/http_match.rb +43 -0
- data/lib/poolparty/verification/verifiers/http_status.rb +59 -0
- data/lib/poolparty/verification/verifiers/ping.rb +34 -0
- data/lib/poolparty/verification/verify.rb +76 -0
- data/lib/poolparty.rb +76 -22
- data/lib/poolpartycl.rb +66 -1
- data/script/destroy +1 -1
- data/script/generate +1 -1
- data/spec/bin/bin_spec_helper.rb +7 -0
- data/spec/bin/fixtures/bin_cloud_for_test.rb +13 -0
- data/spec/bin/server-list-active_spec.rb +24 -0
- data/spec/poolparty/aska/aska_spec.rb +5 -5
- data/spec/poolparty/base_packages/haproxy_spec.rb +2 -8
- data/spec/poolparty/base_packages/heartbeat_spec.rb +3 -26
- data/spec/poolparty/bin/console_spec.rb +11 -29
- data/spec/poolparty/core/array_spec.rb +20 -3
- data/spec/poolparty/core/hash_spec.rb +30 -28
- data/spec/poolparty/core/object_spec.rb +2 -3
- data/spec/poolparty/core/ordered_hash_spec.rb +48 -0
- data/spec/poolparty/core/string_spec.rb +1 -27
- data/spec/poolparty/dependencies_spec.rb +11 -0
- data/spec/poolparty/dependency_resolver/chef_resolver_spec.rb +107 -0
- data/spec/poolparty/dependency_resolver/dependency_resolver_cloud_extensions_spec.rb +122 -0
- data/spec/poolparty/dependency_resolver/dependency_resolver_spec.rb +16 -0
- data/spec/poolparty/dependency_resolver/puppet_resolver_spec.rb +121 -0
- data/spec/poolparty/extra/deployments_spec.rb +9 -5
- data/spec/poolparty/fixtures/clouds.json +128 -0
- data/spec/poolparty/fixtures/test_template.erb +1 -0
- data/spec/poolparty/helpers/binary_spec.rb +1 -1
- data/spec/poolparty/helpers/hash_printer_spec.rb +34 -0
- data/spec/poolparty/helpers/optioner_spec.rb +1 -1
- data/spec/poolparty/id_rsa +27 -0
- data/spec/poolparty/modules/cloud_resourcer_spec.rb +26 -111
- data/spec/poolparty/modules/definable_resource.rb +1 -1
- data/spec/poolparty/modules/file_writer_spec.rb +10 -4
- data/spec/poolparty/modules/searchable_paths_spec.rb +76 -0
- data/spec/poolparty/monitors/base_monitor_spec.rb +112 -111
- data/spec/poolparty/monitors/monitors/cpu_monitor_spec.rb +18 -16
- data/spec/poolparty/monitors/monitors/memory_monitor_spec.rb +48 -47
- data/spec/poolparty/net/remote_instance_spec.rb +9 -73
- data/spec/poolparty/net/remote_spec.rb +287 -310
- data/spec/poolparty/net/remoter_base_spec.rb +3 -56
- data/spec/poolparty/net/remoter_bases/ec2_mocks_and_stubs.rb +24 -0
- data/spec/poolparty/net/remoter_bases/ec2_remote_instance_spec.rb +114 -0
- data/spec/poolparty/net/{remote_bases → remoter_bases}/ec2_spec.rb +51 -53
- data/spec/poolparty/net/remoter_spec.rb +96 -86
- data/spec/poolparty/plugins/chef_spec.rb +7 -0
- data/spec/poolparty/plugins/deploydirectory_spec.rb +51 -52
- data/spec/poolparty/plugins/git_spec.rb +16 -20
- data/spec/poolparty/plugins/line_spec.rb +14 -8
- data/spec/poolparty/poolparty/cloud_spec.rb +85 -183
- data/spec/poolparty/poolparty/configurers/files/ruby_basic.rb +3 -4
- data/spec/poolparty/poolparty/configurers/ruby_spec.rb +7 -23
- data/spec/poolparty/poolparty/{base_spec.rb → default_spec.rb} +44 -41
- data/spec/poolparty/poolparty/example_spec.rb +43 -11
- data/spec/poolparty/poolparty/key_spec.rb +42 -0
- data/spec/poolparty/poolparty/neighborhoods_spec.rb +65 -0
- data/spec/poolparty/poolparty/plugin_model_spec.rb +14 -24
- data/spec/poolparty/poolparty/plugin_spec.rb +25 -96
- data/spec/poolparty/poolparty/pool_spec.rb +3 -1
- data/spec/poolparty/poolparty/resource_spec.rb +70 -270
- data/spec/poolparty/poolparty/script_spec.rb +30 -53
- data/spec/poolparty/poolparty/service_spec.rb +5 -0
- data/spec/poolparty/poolparty/template_spec.rb +26 -0
- data/spec/poolparty/poolparty/test_plugins/webserver.rb +8 -25
- data/spec/poolparty/poolparty_base_class_spec.rb +84 -0
- data/spec/poolparty/poolparty_spec.rb +7 -4
- data/spec/poolparty/resources/cron_spec.rb +44 -0
- data/spec/poolparty/resources/directory_spec.rb +40 -0
- data/spec/poolparty/resources/exec_spec.rb +37 -0
- data/spec/poolparty/resources/file_spec.rb +64 -0
- data/spec/poolparty/resources/gem_spec.rb +7 -0
- data/spec/poolparty/resources/host_spec.rb +35 -0
- data/spec/poolparty/resources/package_spec.rb +26 -0
- data/spec/poolparty/resources/service_spec.rb +29 -0
- data/spec/poolparty/resources/sshkey_spec.rb +40 -0
- data/spec/poolparty/resources/symlink_spec.rb +29 -0
- data/spec/poolparty/resources/user_spec.rb +48 -0
- data/spec/poolparty/resources/variable_spec.rb +26 -0
- data/spec/poolparty/schema_spec.rb +53 -0
- data/spec/poolparty/spec_helper.rb +107 -23
- data/spec/poolparty/test_spec_helper.rb +13 -0
- data/tasks/development.rake +85 -69
- data/tasks/poolparty.rake +54 -0
- data/tasks/server.rake +41 -39
- data/tasks/spec.rake +35 -1
- data/test/fixtures/test_template.erb +1 -0
- data/test/poolparty/core/array_test.rb +21 -0
- data/test/poolparty/core/hash_test.rb +34 -0
- data/test/poolparty/core/string_test.rb +29 -0
- data/test/poolparty/dependency_resolver/puppet_resolver_test.rb +90 -0
- data/test/poolparty/modules/callbacks_test.rb +40 -0
- data/test/poolparty/modules/cloud_dsl_test.rb +60 -0
- data/test/poolparty/net/remoter_bases/vmrun/vmrun_test.rb +54 -0
- data/test/poolparty/net/remoter_test.rb +14 -0
- data/test/poolparty/poolparty/neighborhood_test.rb +23 -0
- data/test/poolparty/poolparty/poolparty_base_class_test.rb +84 -0
- data/test/poolparty/poolparty/template_test.rb +31 -0
- data/test/poolparty/provision/boot_strapper_test.rb +6 -0
- data/test/poolparty/provision/dr_configure_test.rb +6 -0
- data/test/poolparty/verification/verify_test.rb +49 -0
- data/test/test_helper.rb +8 -2
- data/test/test_poolparty.rb +6 -5
- data/vendor/chef/apache2/README.rdoc +59 -0
- data/vendor/chef/apache2/attributes/apache.rb +72 -0
- data/vendor/chef/apache2/definitions/apache_module.rb +36 -0
- data/vendor/chef/apache2/definitions/apache_site.rb +36 -0
- data/vendor/chef/apache2/definitions/web_app.rb +45 -0
- data/vendor/chef/apache2/files/default/apache2_module_conf_generate.pl +41 -0
- data/vendor/chef/apache2/recipes/default.rb +132 -0
- data/vendor/chef/apache2/recipes/mod_alias.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_auth_basic.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_auth_digest.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_authn_file.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_authnz_ldap.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_authz_default.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_authz_groupfile.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_authz_host.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_authz_user.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_autoindex.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_cgi.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_dav.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_dav_svn.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_deflate.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_dir.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_env.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_expires.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_fcgid.rb +35 -0
- data/vendor/chef/apache2/recipes/mod_headers.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_ldap.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_log_config.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_mime.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_negotiation.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_php5.rb +27 -0
- data/vendor/chef/apache2/recipes/mod_proxy.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_proxy_http.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_python.rb +22 -0
- data/vendor/chef/apache2/recipes/mod_rewrite.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_setenvif.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_ssl.rb +20 -0
- data/vendor/chef/apache2/recipes/mod_status.rb +20 -0
- data/vendor/chef/apache2/templates/default/a2dismod.erb +22 -0
- data/vendor/chef/apache2/templates/default/a2dissite.erb +29 -0
- data/vendor/chef/apache2/templates/default/a2enmod.erb +37 -0
- data/vendor/chef/apache2/templates/default/a2ensite.erb +38 -0
- data/vendor/chef/apache2/templates/default/apache2.conf.erb +630 -0
- data/vendor/chef/apache2/templates/default/default-site.erb +45 -0
- data/vendor/chef/apache2/templates/default/port_apache.erb +2 -0
- data/vendor/chef/apache2/templates/default/ports.conf.erb +6 -0
- data/vendor/chef/apache2/templates/default/web_app.conf.erb +43 -0
- data/vendor/chef/chef-deploy/LICENSE +201 -0
- data/vendor/chef/chef-deploy/README.rdoc +24 -0
- data/vendor/chef/chef-deploy/Rakefile +57 -0
- data/vendor/chef/chef-deploy/TODO +4 -0
- data/vendor/chef/chef-deploy/lib/chef-deploy/cached_deploy.rb +230 -0
- data/vendor/chef/chef-deploy/lib/chef-deploy/git.rb +132 -0
- data/vendor/chef/chef-deploy/lib/chef-deploy/subversion.rb +98 -0
- data/vendor/chef/chef-deploy/lib/chef-deploy.rb +183 -0
- data/vendor/gems/butterfly/History.txt +4 -0
- data/vendor/gems/butterfly/PostInstall.txt +2 -0
- data/vendor/gems/butterfly/README.rdoc +48 -0
- data/vendor/gems/butterfly/Rakefile +62 -0
- data/vendor/gems/butterfly/VERSION.yml +4 -0
- data/vendor/gems/butterfly/bin/flutter +4 -0
- data/vendor/gems/butterfly/butterfly.gemspec +37 -0
- data/vendor/gems/butterfly/examples/config.ru +15 -0
- data/vendor/gems/butterfly/examples/my_app.rb +12 -0
- data/vendor/gems/butterfly/lib/butterfly.rb +14 -0
- data/vendor/gems/butterfly/lib/handler.rb +48 -0
- data/vendor/gems/butterfly/lib/request.rb +29 -0
- data/vendor/gems/butterfly/lib/response.rb +49 -0
- data/vendor/gems/butterfly/script/console +10 -0
- data/vendor/gems/butterfly/script/destroy +14 -0
- data/vendor/gems/butterfly/script/generate +14 -0
- data/vendor/gems/butterfly/test/test_adapter_base.rb +23 -0
- data/vendor/gems/butterfly/test/test_butterfly_request.rb +46 -0
- data/vendor/gems/butterfly/test/test_butterfly_response.rb +43 -0
- data/vendor/gems/butterfly/test/test_butterfly_server.rb +16 -0
- data/vendor/gems/butterfly/test/test_default.rb +12 -0
- data/vendor/gems/butterfly/test/test_helper.rb +6 -0
- data/vendor/gems/dslify/History.txt +4 -0
- data/vendor/gems/dslify/Manifest.txt +25 -0
- data/vendor/gems/dslify/PostInstall.txt +5 -0
- data/vendor/gems/dslify/README.txt +60 -0
- data/vendor/gems/dslify/Rakefile +56 -0
- data/{config → vendor/gems/dslify/config}/hoe.rb +12 -55
- data/vendor/gems/dslify/config/requirements.rb +15 -0
- data/vendor/gems/dslify/dslify.gemspec +40 -0
- data/vendor/gems/dslify/lib/dslify/dslify.rb +76 -0
- data/vendor/gems/dslify/lib/dslify/version.rb +10 -0
- data/vendor/gems/dslify/lib/dslify.rb +7 -0
- data/vendor/gems/dslify/script/console +10 -0
- data/vendor/gems/dslify/script/destroy +14 -0
- data/vendor/gems/dslify/script/generate +14 -0
- data/{script → vendor/gems/dslify/script}/txt2html +4 -4
- data/{setup.rb → vendor/gems/dslify/setup.rb} +3 -3
- data/{tasks → vendor/gems/dslify/tasks}/deployment.rake +4 -18
- data/vendor/gems/dslify/tasks/environment.rake +7 -0
- data/{tasks → vendor/gems/dslify/tasks}/website.rake +0 -0
- data/vendor/gems/dslify/test/test_dslify.rb +138 -0
- data/vendor/gems/dslify/website/index.html +86 -0
- data/vendor/gems/dslify/website/index.txt +83 -0
- data/{website → vendor/gems/dslify/website}/javascripts/rounded_corners_lite.inc.js +0 -0
- data/{website → vendor/gems/dslify/website}/stylesheets/screen.css +18 -27
- data/{website → vendor/gems/dslify/website}/template.html.erb +1 -2
- data/vendor/gems/parenting/History.txt +4 -0
- data/vendor/gems/parenting/Manifest.txt +14 -0
- data/vendor/gems/parenting/PostInstall.txt +2 -0
- data/vendor/gems/parenting/README.rdoc +47 -0
- data/vendor/gems/parenting/Rakefile +28 -0
- data/vendor/gems/parenting/lib/parenting/parenting.rb +61 -0
- data/vendor/gems/parenting/lib/parenting.rb +10 -0
- data/vendor/gems/parenting/parenting.gemspec +39 -0
- data/vendor/gems/parenting/script/console +10 -0
- data/vendor/gems/parenting/script/destroy +14 -0
- data/vendor/gems/parenting/script/generate +14 -0
- data/vendor/gems/parenting/test/file_to_eval.rb +9 -0
- data/vendor/gems/parenting/test/test_helper.rb +5 -0
- data/vendor/gems/parenting/test/test_parenting.rb +117 -0
- data/vendor/gems/suitcase/LICENSE +20 -0
- data/vendor/gems/suitcase/README.rdoc +31 -0
- data/vendor/gems/suitcase/Rakefile +57 -0
- data/vendor/gems/suitcase/VERSION.yml +4 -0
- data/vendor/gems/suitcase/lib/suitcase/unzipper.rb +15 -0
- data/vendor/gems/suitcase/lib/suitcase/zipper.rb +119 -0
- data/vendor/gems/suitcase/lib/suitcase.rb +5 -0
- data/vendor/gems/suitcase/suitcase.gemspec +32 -0
- data/vendor/gems/suitcase/test/suitcase_test.rb +102 -0
- data/vendor/gems/suitcase/test/test_dir/box.rb +1 -0
- data/vendor/gems/suitcase/test/test_dir/test.txt +1 -0
- data/vendor/gems/suitcase/test/test_helper.rb +12 -0
- metadata +370 -343
- data/Capfile +0 -1
- data/Manifest.txt +0 -414
- data/bin/cloud-add-keypair +0 -28
- data/bin/cloud-ensure-provisioning +0 -39
- data/bin/cloud-maintain +0 -30
- data/bin/cloud-refresh +0 -17
- data/bin/cloud-run +0 -18
- data/bin/cloud-stats +0 -17
- data/bin/messenger-get-current-nodes +0 -14
- data/bin/pool +0 -31
- data/bin/pool-describe +0 -8
- data/bin/pool-generate +0 -18
- data/bin/pool-init +0 -28
- data/bin/pool-list +0 -30
- data/bin/pool-start +0 -26
- data/bin/server-build-messenger +0 -27
- data/bin/server-clean-cert-for +0 -15
- data/bin/server-list-responding +0 -24
- data/bin/server-start-client +0 -29
- data/bin/server-start-master +0 -26
- data/bin/server-start-node +0 -32
- data/bin/server-stop-client +0 -3
- data/bin/server-stop-master +0 -3
- data/bin/server-stop-node +0 -3
- data/bin/server-update-hosts +0 -49
- data/lib/erlang/messenger/Emakefile +0 -1
- data/lib/erlang/messenger/Makefile +0 -15
- data/lib/erlang/messenger/README +0 -5
- data/lib/erlang/messenger/Rakefile +0 -72
- data/lib/erlang/messenger/control +0 -11
- data/lib/erlang/messenger/ebin/client.app +0 -19
- 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 +0 -10326
- data/lib/erlang/messenger/ebin/master.app +0 -19
- data/lib/erlang/messenger/ebin/master_app.beam +0 -0
- data/lib/erlang/messenger/ebin/node.app +0 -19
- data/lib/erlang/messenger/ebin/node_app.beam +0 -0
- data/lib/erlang/messenger/ebin/packager.app +0 -19
- 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_rel-0.1.rel +0 -1
- 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_rel-0.1.rel +0 -1
- 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_rel-0.1.rel +0 -1
- 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/include/defines.hrl +0 -27
- data/lib/erlang/messenger/lib/eunit/AUTHORS +0 -2
- data/lib/erlang/messenger/lib/eunit/CHANGELOG +0 -14
- data/lib/erlang/messenger/lib/eunit/COPYING +0 -504
- data/lib/erlang/messenger/lib/eunit/Makefile +0 -28
- data/lib/erlang/messenger/lib/eunit/NOTES +0 -276
- data/lib/erlang/messenger/lib/eunit/README +0 -3
- data/lib/erlang/messenger/lib/eunit/doc/edoc-info +0 -3
- data/lib/erlang/messenger/lib/eunit/doc/erlang.png +0 -0
- data/lib/erlang/messenger/lib/eunit/doc/eunit.html +0 -172
- data/lib/erlang/messenger/lib/eunit/doc/index.html +0 -17
- data/lib/erlang/messenger/lib/eunit/doc/modules-frame.html +0 -12
- data/lib/erlang/messenger/lib/eunit/doc/overview-summary.html +0 -984
- data/lib/erlang/messenger/lib/eunit/doc/overview.edoc +0 -980
- data/lib/erlang/messenger/lib/eunit/doc/packages-frame.html +0 -11
- data/lib/erlang/messenger/lib/eunit/doc/stylesheet.css +0 -55
- 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.app +0 -21
- data/lib/erlang/messenger/lib/eunit/ebin/eunit.appup +0 -1
- 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/examples/eunit_examples.erl +0 -339
- data/lib/erlang/messenger/lib/eunit/examples/fib.erl +0 -19
- data/lib/erlang/messenger/lib/eunit/examples/tests.txt +0 -1
- data/lib/erlang/messenger/lib/eunit/include/eunit.hrl +0 -313
- data/lib/erlang/messenger/lib/eunit/src/Makefile +0 -46
- data/lib/erlang/messenger/lib/eunit/src/autoload.erl +0 -388
- data/lib/erlang/messenger/lib/eunit/src/code_monitor.erl +0 -243
- data/lib/erlang/messenger/lib/eunit/src/eunit.app.src +0 -21
- data/lib/erlang/messenger/lib/eunit/src/eunit.appup.src +0 -1
- data/lib/erlang/messenger/lib/eunit/src/eunit.erl +0 -196
- data/lib/erlang/messenger/lib/eunit/src/eunit_autoexport.erl +0 -102
- data/lib/erlang/messenger/lib/eunit/src/eunit_data.erl +0 -798
- data/lib/erlang/messenger/lib/eunit/src/eunit_internal.hrl +0 -48
- data/lib/erlang/messenger/lib/eunit/src/eunit_lib.erl +0 -682
- data/lib/erlang/messenger/lib/eunit/src/eunit_proc.erl +0 -552
- data/lib/erlang/messenger/lib/eunit/src/eunit_serial.erl +0 -157
- data/lib/erlang/messenger/lib/eunit/src/eunit_server.erl +0 -340
- data/lib/erlang/messenger/lib/eunit/src/eunit_striptests.erl +0 -64
- data/lib/erlang/messenger/lib/eunit/src/eunit_test.erl +0 -334
- data/lib/erlang/messenger/lib/eunit/src/eunit_tests.erl +0 -45
- data/lib/erlang/messenger/lib/eunit/src/eunit_tty.erl +0 -272
- data/lib/erlang/messenger/lib/eunit/src/file_monitor.erl +0 -409
- data/lib/erlang/messenger/lib/eunit/sys.config +0 -9
- data/lib/erlang/messenger/lib/eunit/vsn.mk +0 -1
- data/lib/erlang/messenger/pm_client_rel-0.1.boot +0 -0
- data/lib/erlang/messenger/pm_client_rel-0.1.script +0 -238
- data/lib/erlang/messenger/pm_master_rel-0.1.boot +0 -0
- data/lib/erlang/messenger/pm_master_rel-0.1.script +0 -239
- data/lib/erlang/messenger/pm_node_rel-0.1.boot +0 -0
- data/lib/erlang/messenger/pm_node_rel-0.1.script +0 -237
- data/lib/erlang/messenger/src/client_app.erl +0 -39
- data/lib/erlang/messenger/src/client_server.erl +0 -60
- data/lib/erlang/messenger/src/master_app.erl +0 -39
- data/lib/erlang/messenger/src/node_app.erl +0 -39
- data/lib/erlang/messenger/src/pm_client.erl +0 -49
- data/lib/erlang/messenger/src/pm_client_supervisor.erl +0 -38
- data/lib/erlang/messenger/src/pm_cluster.erl +0 -61
- data/lib/erlang/messenger/src/pm_event_manager.erl +0 -27
- data/lib/erlang/messenger/src/pm_master.erl +0 -215
- data/lib/erlang/messenger/src/pm_master_event_handler.erl +0 -72
- data/lib/erlang/messenger/src/pm_master_supervisor.erl +0 -39
- data/lib/erlang/messenger/src/pm_node.erl +0 -200
- data/lib/erlang/messenger/src/pm_node_supervisor.erl +0 -38
- data/lib/erlang/messenger/src/pm_packager.erl +0 -76
- data/lib/erlang/messenger/src/pm_spawner.erl +0 -213
- data/lib/erlang/messenger/src/pm_strings.erl +0 -11
- data/lib/erlang/messenger/src/utils.erl +0 -73
- data/lib/erlang/messenger/useful_snippets +0 -17
- data/lib/poolparty/capistrano.rb +0 -18
- data/lib/poolparty/config/postlaunchmessage.txt +0 -5
- data/lib/poolparty/dependency_resolutions/base.rb +0 -12
- data/lib/poolparty/modules/configurable.rb +0 -36
- data/lib/poolparty/modules/method_missing_sugar.rb +0 -58
- data/lib/poolparty/monitors/monitors/cpu_monitor.rb +0 -15
- data/lib/poolparty/monitors/monitors/web_monitor.rb +0 -18
- data/lib/poolparty/net/messenger.rb +0 -72
- data/lib/poolparty/net/remote.rb +0 -38
- data/lib/poolparty/net/remote_bases/ec2.rb +0 -190
- data/lib/poolparty/net/remoter.rb +0 -343
- data/lib/poolparty/plugins/deploydirectory.rb +0 -71
- data/lib/poolparty/plugins/line.rb +0 -77
- data/lib/poolparty/plugins/rsyncmirror.rb +0 -26
- data/lib/poolparty/poolparty/custom_resource.rb +0 -45
- data/lib/poolparty/poolparty/resources/class_package.rb +0 -105
- data/lib/poolparty/poolparty/resources/conditional.rb +0 -67
- data/lib/poolparty/poolparty/resources/cron.rb +0 -14
- data/lib/poolparty/poolparty/resources/custom_service.rb +0 -30
- data/lib/poolparty/poolparty/resources/directory.rb +0 -26
- data/lib/poolparty/poolparty/resources/exec.rb +0 -28
- data/lib/poolparty/poolparty/resources/file.rb +0 -23
- data/lib/poolparty/poolparty/resources/gem_package.rb +0 -52
- data/lib/poolparty/poolparty/resources/host.rb +0 -14
- data/lib/poolparty/poolparty/resources/mount.rb +0 -22
- data/lib/poolparty/poolparty/resources/package.rb +0 -24
- data/lib/poolparty/poolparty/resources/remote_file.rb +0 -26
- data/lib/poolparty/poolparty/resources/service.rb +0 -21
- data/lib/poolparty/poolparty/resources/sshkey.rb +0 -23
- data/lib/poolparty/poolparty/resources/symlink.rb +0 -25
- data/lib/poolparty/poolparty/resources/variable.rb +0 -32
- data/lib/poolparty/provisioners/capistrano/capistrano.rb +0 -127
- data/lib/poolparty/provisioners/capistrano/capistrano_configurer.rb +0 -58
- data/lib/poolparty/provisioners/capistrano/recipies/base.rb +0 -104
- data/lib/poolparty/provisioners/capistrano/recipies/master.rb +0 -121
- data/lib/poolparty/provisioners/capistrano/recipies/slave.rb +0 -12
- data/lib/poolparty/provisioners/provisioner_base.rb +0 -204
- data/lib/poolparty/spec/core/string.rb +0 -16
- data/lib/poolparty/spec/matchers/a_spec_extensions_base.rb +0 -26
- data/lib/poolparty/spec/matchers/have_cron.rb +0 -28
- data/lib/poolparty/spec/matchers/have_deploydirectory.rb +0 -15
- data/lib/poolparty/spec/matchers/have_directory.rb +0 -31
- data/lib/poolparty/spec/matchers/have_exec.rb +0 -28
- data/lib/poolparty/spec/matchers/have_file.rb +0 -28
- data/lib/poolparty/spec/matchers/have_gempackage.rb +0 -28
- data/lib/poolparty/spec/matchers/have_git.rb +0 -28
- data/lib/poolparty/spec/matchers/have_host.rb +0 -28
- data/lib/poolparty/spec/matchers/have_mount.rb +0 -28
- data/lib/poolparty/spec/matchers/have_package.rb +0 -28
- data/lib/poolparty/spec/matchers/have_remotefile.rb +0 -28
- data/lib/poolparty/spec/matchers/have_rsyncmirror.rb +0 -28
- data/lib/poolparty/spec/matchers/have_service.rb +0 -28
- data/lib/poolparty/spec/matchers/have_sshkey.rb +0 -28
- data/lib/poolparty/spec/matchers/have_symlink.rb +0 -28
- data/lib/poolparty/spec/matchers/have_variable.rb +0 -32
- data/lib/poolparty/spec/spec/dynamic_matchers.rb +0 -63
- data/lib/poolparty/spec/spec/ensure_matchers_exist.rb +0 -7
- data/lib/poolparty/spec/templates/have_base.rb +0 -28
- data/lib/poolparty/templates/puppet.conf +0 -26
- data/lib/poolparty/templates/puppetcleaner +0 -12
- data/lib/poolparty/templates/puppetrerun +0 -22
- data/lib/poolparty/version.rb +0 -9
- data/lib/poolpartyspec.rb +0 -34
- data/log/pool.log +0 -0
- data/poolparty.gemspec +0 -580
- data/spec/poolparty/dependency_resolutions/base_spec.rb +0 -11
- data/spec/poolparty/modules/configurable_spec.rb +0 -29
- data/spec/poolparty/net/log/pool.log +0 -0
- data/spec/poolparty/net/messenger_spec.rb +0 -16
- data/spec/poolparty/plugins/svn_spec.rb +0 -16
- data/spec/poolparty/poolparty/custom_resource_spec.rb +0 -120
- data/spec/poolparty/poolparty/resources/class_package_spec.rb +0 -120
- data/spec/poolparty/poolparty/resources/conditional_spec.rb +0 -77
- data/spec/poolparty/poolparty/resources/cron_spec.rb +0 -50
- data/spec/poolparty/poolparty/resources/directory_spec.rb +0 -40
- data/spec/poolparty/poolparty/resources/exec_spec.rb +0 -37
- data/spec/poolparty/poolparty/resources/file_spec.rb +0 -40
- data/spec/poolparty/poolparty/resources/gem_spec.rb +0 -46
- data/spec/poolparty/poolparty/resources/host_spec.rb +0 -28
- data/spec/poolparty/poolparty/resources/package_spec.rb +0 -44
- data/spec/poolparty/poolparty/resources/remote_file_spec.rb +0 -40
- data/spec/poolparty/poolparty/resources/service_spec.rb +0 -45
- data/spec/poolparty/poolparty/resources/sshkey_spec.rb +0 -48
- data/spec/poolparty/poolparty/resources/symlink_spec.rb +0 -22
- data/spec/poolparty/poolparty/resources/user_spec.rb +0 -38
- data/spec/poolparty/poolparty/resources/variable_spec.rb +0 -24
- data/spec/poolparty/provisioners/capistrano/capistrano_spec.rb +0 -27
- data/spec/poolparty/provisioners/provisioner_base_spec.rb +0 -120
- data/spec/poolparty/spec/core/string_spec.rb +0 -57
- data/website/index.html +0 -107
- data/website/index.txt +0 -95
- data/website/stylesheets/code.css +0 -29
@@ -0,0 +1,90 @@
|
|
1
|
+
require "#{::File.dirname(__FILE__)}/../../test_helper"
|
2
|
+
|
3
|
+
class PuppetResolverSpec
|
4
|
+
plugin :apache do
|
5
|
+
end
|
6
|
+
end
|
7
|
+
|
8
|
+
class TestPuppetResolver < Test::Unit::TestCase
|
9
|
+
context "from a hash" do
|
10
|
+
setup do
|
11
|
+
reset!
|
12
|
+
@cloud_reference_hash = {
|
13
|
+
:options => {:name => "dog", :keypair => "bob", :users => ["ari", "michael"]},
|
14
|
+
:resources => [
|
15
|
+
{:name => "/etc/motd", :content => "Welcome to the cloud", :pp_type => "file"},
|
16
|
+
{:name => "/etc/profile", :content => "profile info", :pp_type => "file"},
|
17
|
+
{:name => "/var/www", :pp_type => "directory"},
|
18
|
+
{:name => "apache_class", :pp_type => "plugin", :resources => [
|
19
|
+
{:name => "/etc/apache2/apache2.conf", :pp_type => "file", :template => "/absolute/path/to/template", :content => "rendered template string"}
|
20
|
+
]}
|
21
|
+
],
|
22
|
+
}
|
23
|
+
end
|
24
|
+
|
25
|
+
should "throw an exception if not given a hash" do
|
26
|
+
lambda { PoolParty::PuppetResolver.compile }.should raise_error
|
27
|
+
end
|
28
|
+
should "accept a hash" do
|
29
|
+
lambda { PoolParty::PuppetResolver.compile(@cloud_reference_hash)}.should_not raise_error
|
30
|
+
end
|
31
|
+
context "compiled" do
|
32
|
+
setup do
|
33
|
+
reset!
|
34
|
+
@dr = PuppetResolver.new(@cloud_reference_hash)
|
35
|
+
@compiled = @dr.compile
|
36
|
+
end
|
37
|
+
|
38
|
+
should "should print resources in the proper layout" do
|
39
|
+
@compiled.should =~ /file \{ "\/etc\/motd"/
|
40
|
+
end
|
41
|
+
|
42
|
+
should "should print apache into a class definition" do
|
43
|
+
# puts "<pre>#{@compiled.to_yaml}</pre>"
|
44
|
+
@compiled.should =~ /class apache \{/
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
context "with a cloud" do
|
50
|
+
setup do
|
51
|
+
reset!
|
52
|
+
@cloud = cloud :hope do
|
53
|
+
keypair "bob"
|
54
|
+
has_file :name => "/etc/motd", :content => "Welcome to the cloud"
|
55
|
+
has_file :name => "/etc/profile", :content => "profile info"
|
56
|
+
|
57
|
+
has_directory :name => "/var/www"
|
58
|
+
has_file :name => "/var/www/index.html", :content => "profile info", :requires => get_directory("/var/www")
|
59
|
+
|
60
|
+
dependency_resolver "puppet"
|
61
|
+
# has_package :name => "bash"
|
62
|
+
# parent == cloud
|
63
|
+
apache do
|
64
|
+
# parent == apache
|
65
|
+
listen "8080"
|
66
|
+
has_file :name => "/etc/apache2/apache2.conf", :template => "#{::File.dirname(__FILE__)}/../../fixtures/test_template.erb", :friends => "bob"
|
67
|
+
has_exec :command => "ls /etc/apache2"
|
68
|
+
end
|
69
|
+
end
|
70
|
+
@properties = @cloud.to_properties_hash
|
71
|
+
|
72
|
+
# puts "<pre>#{@cloud_reference_hash.to_yaml}\n\n#{@properties}</pre>"
|
73
|
+
@dr = PuppetResolver.new(@properties)
|
74
|
+
@compiled = @dr.compile
|
75
|
+
end
|
76
|
+
should "should compile to a string" do
|
77
|
+
# puts "<pre>#{@compiled.to_yaml}</pre>"
|
78
|
+
@compiled.class.should == String
|
79
|
+
end
|
80
|
+
should "should include apache class" do
|
81
|
+
@compiled.should =~ /class apache \{/
|
82
|
+
end
|
83
|
+
should "should require the file to have the directory (written as file)" do
|
84
|
+
@compiled.should =~ /require => File\[\"\/var\/www\"\]/
|
85
|
+
end
|
86
|
+
should "should ensure file" do
|
87
|
+
@compiled.should =~ /ensure => "present"/
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
require "#{::File.dirname(__FILE__)}/../../test_helper"
|
2
|
+
|
3
|
+
class CallbacksTestClass
|
4
|
+
attr_reader :configured
|
5
|
+
include PoolParty::Callbacks
|
6
|
+
|
7
|
+
additional_callbacks ["after_boxes"]
|
8
|
+
|
9
|
+
def before_configure
|
10
|
+
@configured = true
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class TestCallbacks < Test::Unit::TestCase
|
15
|
+
context "methods" do
|
16
|
+
setup do
|
17
|
+
@tc = CallbacksTestClass.new
|
18
|
+
@tc.setup_callbacks
|
19
|
+
end
|
20
|
+
|
21
|
+
should "have the 4 basic callbacks" do
|
22
|
+
assert @tc.respond_to?(:call_before_bootstrap_callbacks)
|
23
|
+
assert @tc.respond_to?(:call_after_bootstrap_callbacks)
|
24
|
+
assert @tc.respond_to?(:call_before_configure_callbacks)
|
25
|
+
assert @tc.respond_to?(:call_after_configure_callbacks)
|
26
|
+
end
|
27
|
+
should "have an addiitonal callback caller method" do
|
28
|
+
assert @tc.respond_to?(:call_after_boxes_callbacks)
|
29
|
+
end
|
30
|
+
should "call the callback on the class when calling call_(\w+)_callbacks method" do
|
31
|
+
assert_nil @tc.configured
|
32
|
+
@tc.call_before_configure_callbacks
|
33
|
+
assert @tc.configured
|
34
|
+
end
|
35
|
+
should "not explode when the method does not exist on the call_(\w+)_callbacks method" do
|
36
|
+
lambda {@tc.call_after_boxes_callbacks}.should_not raise_error
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
end
|
@@ -0,0 +1,60 @@
|
|
1
|
+
require "#{::File.dirname(__FILE__)}/../../test_helper"
|
2
|
+
|
3
|
+
class TestCloudDsl < Test::Unit::TestCase
|
4
|
+
context "enabling and disabling" do
|
5
|
+
setup do
|
6
|
+
reset!
|
7
|
+
@cloud = cloud :test_cloud_dsl do
|
8
|
+
end
|
9
|
+
end
|
10
|
+
should "not have an option set for hyper_drive" do
|
11
|
+
@cloud.dsl_options[:hyper_drive].should == nil
|
12
|
+
end
|
13
|
+
|
14
|
+
should "set the option to :enabled when enabled" do
|
15
|
+
@cloud.enable :hyper_drive
|
16
|
+
@cloud.dsl_options[:hyper_drive].should == :enabled
|
17
|
+
end
|
18
|
+
|
19
|
+
should "set the option to disabled when disabled" do
|
20
|
+
@cloud.disable :hyper_drive
|
21
|
+
@cloud.dsl_options[:hyper_drive].should == :disabled
|
22
|
+
end
|
23
|
+
|
24
|
+
should "be able to check if they are enabled" do
|
25
|
+
@cloud.enable :hyper_drive
|
26
|
+
@cloud.enabled?(:hyper_drive).should == true
|
27
|
+
end
|
28
|
+
should "be able to check that they are disabled" do
|
29
|
+
@cloud.disable :hyper_drive
|
30
|
+
@cloud.enabled?(:hyper_drive).should == false
|
31
|
+
end
|
32
|
+
end
|
33
|
+
context "calling add_optional_enabled_services" do
|
34
|
+
setup do
|
35
|
+
reset!
|
36
|
+
@cloud = cloud :test_cloud_dsl_2 do
|
37
|
+
enable :haproxy
|
38
|
+
end
|
39
|
+
@cloud.instance_eval "self.class.send :attr_reader, :brains"
|
40
|
+
@cloud.instance_eval "def box;@brains = 'pepper';end"
|
41
|
+
end
|
42
|
+
|
43
|
+
should "send @cloud the method box after it's been enabled" do
|
44
|
+
@cloud.enable :box
|
45
|
+
@cloud.add_optional_enabled_services
|
46
|
+
@cloud.brains.should == "pepper"
|
47
|
+
end
|
48
|
+
should "not call box if the method has not been enabled" do
|
49
|
+
@cloud.add_optional_enabled_services
|
50
|
+
@cloud.brains.should == nil
|
51
|
+
end
|
52
|
+
should "call haproxy when adding enabled serivces" do
|
53
|
+
@cloud.add_optional_enabled_services
|
54
|
+
klasses = @cloud.plugin_store.map {|a| a.class.to_s.split("::")[-1] }
|
55
|
+
klasses.include?("HaproxyClass").should == true
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
|
60
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
require "#{::File.dirname(__FILE__)}/../../../../test_helper"
|
2
|
+
|
3
|
+
# Uncomment the tests for live-testing
|
4
|
+
class TestVmRun < Test::Unit::TestCase
|
5
|
+
context "registered as remote base" do
|
6
|
+
setup do
|
7
|
+
reset!
|
8
|
+
$vmx_keys = {
|
9
|
+
::File.expand_path("~/Documents/vm/Ubuntu32bitVM.vmwarevm/Ubuntu32bitVM.vmx") => "192.168.248.133"
|
10
|
+
}
|
11
|
+
$vmx_files = $vmx_keys.keys
|
12
|
+
$ipaddresses = $vmx_keys.values
|
13
|
+
|
14
|
+
@cloud = cloud :test_vm_runner do
|
15
|
+
|
16
|
+
using :vmrun do
|
17
|
+
vmx_hash $vmx_keys
|
18
|
+
end
|
19
|
+
|
20
|
+
end
|
21
|
+
end
|
22
|
+
# should "be setting the type of remote_base as Vmrun" do
|
23
|
+
# @cloud.remote_base.class.should == PoolParty::Remote::Vmrun
|
24
|
+
# end
|
25
|
+
# should "have the method vmrun as the remoter base" do
|
26
|
+
# @cloud.vmrun.should == @cloud.remote_base
|
27
|
+
# end
|
28
|
+
# should "start vmware instance" do
|
29
|
+
# @cloud.launch_instance!
|
30
|
+
# assert @cloud.vmrun.describe_instances.first[:instance_id], $vmx_files.first
|
31
|
+
# end
|
32
|
+
# should "have the ip and mac address" do
|
33
|
+
# @cloud.launch_instance!
|
34
|
+
#
|
35
|
+
# vmx_file = @cloud.vmrun.describe_instances.first[:instance_id]
|
36
|
+
# instance = @cloud.vmrun.describe_instance(:vmx_file => vmx_file)
|
37
|
+
#
|
38
|
+
# assert !instance.mac_address.nil?
|
39
|
+
# assert !instance.ip.nil?
|
40
|
+
# end
|
41
|
+
# should "be able to turn off the instance" do
|
42
|
+
# @cloud.launch_instance!
|
43
|
+
# @cloud.terminate_instance!
|
44
|
+
# assert @cloud.describe_instances.empty?
|
45
|
+
# end
|
46
|
+
# teardown do
|
47
|
+
# # PoolParty::Remote::Vmrun.terminate!(
|
48
|
+
# @cloud.describe_instances.each do |inst|
|
49
|
+
# @cloud.terminate_instance! inst[:instance_id]
|
50
|
+
# end
|
51
|
+
# end
|
52
|
+
end
|
53
|
+
|
54
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require "#{::File.dirname(__FILE__)}/../../test_helper"
|
2
|
+
|
3
|
+
class TestNeighborhoods < Test::Unit::TestCase
|
4
|
+
context "Constant" do
|
5
|
+
should "have the constant Neighborhoods" do
|
6
|
+
PoolParty.const_get("Neighborhoods").should == PoolParty::Neighborhoods
|
7
|
+
end
|
8
|
+
end
|
9
|
+
context "setting up a neighborhood" do
|
10
|
+
should "set the schema when starting with a json string or a hash" do
|
11
|
+
n = Neighborhoods.new({:instances => "b"})
|
12
|
+
n.schema.nil?.should == false
|
13
|
+
n.schema.class.should == PoolParty::Schema
|
14
|
+
end
|
15
|
+
should "raise an error if there started with nil" do
|
16
|
+
lambda {Neighborhoods.new}.should raise_error
|
17
|
+
end
|
18
|
+
should "should not raise a fit if there ARE instances defined" do
|
19
|
+
lambda{Neighborhoods.new({:instances => ["10.0.0.1"]})}.should_not raise_error
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
@@ -0,0 +1,84 @@
|
|
1
|
+
require "#{::File.dirname(__FILE__)}/../../test_helper"
|
2
|
+
|
3
|
+
class TestBaseClass < PoolParty::PoolPartyBaseClass
|
4
|
+
end
|
5
|
+
|
6
|
+
class TestBaseClassTest < Test::Unit::TestCase
|
7
|
+
context "services" do
|
8
|
+
setup do
|
9
|
+
reset!
|
10
|
+
@tbc = TestBaseClass.new do
|
11
|
+
has_git_repos :name => "test git", :at => "/var/www/google", :source => "git://pop.git"
|
12
|
+
end
|
13
|
+
end
|
14
|
+
should "should add a service when a service is called" do
|
15
|
+
@tbc.ordered_resources.size.should == 1
|
16
|
+
end
|
17
|
+
end
|
18
|
+
context "context_stack" do
|
19
|
+
setup do
|
20
|
+
::PoolParty.reset!
|
21
|
+
@a = TestBaseClass.new
|
22
|
+
end
|
23
|
+
should "should have a context stack that is empty" do
|
24
|
+
@a.context_stack.empty?.should == true
|
25
|
+
end
|
26
|
+
should "should have a context_stack that is not empty when being evaluated" do
|
27
|
+
TestBaseClass.new do
|
28
|
+
context_stack.empty?.should == false
|
29
|
+
end
|
30
|
+
end
|
31
|
+
should "should have self in context_stack" do
|
32
|
+
TestBaseClass.new do
|
33
|
+
context_stack.last.should == self
|
34
|
+
end
|
35
|
+
end
|
36
|
+
should "should have the parent of self set in the context stack in the current_context" do
|
37
|
+
TestBaseClass.new do
|
38
|
+
current_context.last.should == parent
|
39
|
+
end
|
40
|
+
end
|
41
|
+
context "depth" do
|
42
|
+
setup do
|
43
|
+
reset!
|
44
|
+
Proc.new do
|
45
|
+
@a = $a =TestBaseClass.new do
|
46
|
+
@@b = $b = TestBaseClass.new do
|
47
|
+
@@c = $c =TestBaseClass.new do
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end.call
|
52
|
+
end
|
53
|
+
should "should set the correct depth" do
|
54
|
+
@a.depth.should == 0
|
55
|
+
@@b.depth.should == 1
|
56
|
+
@@c.depth.should == 2
|
57
|
+
end
|
58
|
+
should "should have the parent set properly" do
|
59
|
+
# @a.parent.should == nil
|
60
|
+
@@c.parent.should == @@b
|
61
|
+
@@b.parent.should == @a
|
62
|
+
end
|
63
|
+
should "should have proper self" do
|
64
|
+
@a.this.should == $a.this
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
should "should have the parent set properly" do
|
69
|
+
@a = TestBaseClass.new do
|
70
|
+
@@b = TestBaseClass.new do
|
71
|
+
@@c = TestBaseClass.new do
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
76
|
+
@a.parent.should == nil
|
77
|
+
@@c.parent.should == @@b
|
78
|
+
@@b.parent.should == @a
|
79
|
+
|
80
|
+
@a.parent.should == nil
|
81
|
+
@@c.parent.should == @@b
|
82
|
+
@@b.parent.should == @a
|
83
|
+
end
|
84
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require "#{::File.dirname(__FILE__)}/../../test_helper"
|
2
|
+
|
3
|
+
class TestDrConfigure < Test::Unit::TestCase
|
4
|
+
context "Rendering of a string" do
|
5
|
+
setup do
|
6
|
+
@template_string = "Hello <%= name %>"
|
7
|
+
end
|
8
|
+
should "should have a method called compile_string on the class" do assert Template.respond_to?(:compile_string);end
|
9
|
+
should "should return rendered content" do assert Template.compile_string(@template_string, {:name => "bob"}), "Hello bob" end
|
10
|
+
end
|
11
|
+
context "Rendering of a file" do
|
12
|
+
setup do
|
13
|
+
@template_file = ::File.dirname(__FILE__) + "/../../fixtures/test_template.erb"
|
14
|
+
end
|
15
|
+
should "should have a method called compile_file on the class" do assert Template.respond_to?(:compile_file);end
|
16
|
+
should "should return rendered content" do assert Template.compile_file(@template_file, {:friends => "bob"}), "Hello bob" end
|
17
|
+
end
|
18
|
+
context "render_as" do
|
19
|
+
setup do
|
20
|
+
@template_options = {:render_as => :erb}
|
21
|
+
end
|
22
|
+
|
23
|
+
should "should call render with as erb" do
|
24
|
+
assert Template.compile_string("Hi <%= world %>", @template_options.merge(:world => "world")), "Hi world"
|
25
|
+
end
|
26
|
+
should "call render with haml if rendered with haml" do
|
27
|
+
# assert Template.compile_string("Hi <%= world %>", @template_options.merge(:render_as => :haml, :world => "world")), nil
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
require "#{::File.dirname(__FILE__)}/../../test_helper"
|
2
|
+
|
3
|
+
module PoolParty
|
4
|
+
module Verifiers
|
5
|
+
class Ding < VerifierBase
|
6
|
+
attr_accessor :port, :checked
|
7
|
+
def initialize(port=80)
|
8
|
+
@port = port
|
9
|
+
end
|
10
|
+
def passing?
|
11
|
+
@checked
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
end
|
16
|
+
end
|
17
|
+
class TestVerificationClass
|
18
|
+
include PoolParty::Verification
|
19
|
+
|
20
|
+
attr_reader :port
|
21
|
+
def initialize(port=70, &block)
|
22
|
+
@port = port
|
23
|
+
instance_eval &block
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
class TestVerification < Test::Unit::TestCase
|
28
|
+
context "verification included" do
|
29
|
+
setup do
|
30
|
+
@vc = TestVerificationClass.new do
|
31
|
+
verify do
|
32
|
+
ding 830
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
should "have a the ping verifier as a verifiers in the class" do
|
37
|
+
@vc.verifiers.first.class.should == PoolParty::Verifiers::Ding
|
38
|
+
end
|
39
|
+
should "not explode when calling verify on the verifier" do
|
40
|
+
@vc.verifiers.first.checked = true
|
41
|
+
@vc.passing?.should == true
|
42
|
+
end
|
43
|
+
should "explode if the verification fails" do
|
44
|
+
@vc.verifiers.first.checked = false
|
45
|
+
lambda {@vc.passing?}.should raise_error
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
end
|
data/test/test_helper.rb
CHANGED
data/test/test_poolparty.rb
CHANGED
@@ -1,11 +1,12 @@
|
|
1
1
|
require File.dirname(__FILE__) + '/test_helper.rb'
|
2
2
|
|
3
3
|
class TestPoolParty < Test::Unit::TestCase
|
4
|
-
|
5
|
-
|
4
|
+
context "helpers" do
|
5
|
+
|
6
|
+
should "include_user_directory" do
|
7
|
+
# FIXUP
|
8
|
+
assert false
|
9
|
+
end
|
6
10
|
end
|
7
11
|
|
8
|
-
def test_truth
|
9
|
-
assert true
|
10
|
-
end
|
11
12
|
end
|
@@ -0,0 +1,59 @@
|
|
1
|
+
= DESCRIPTION:
|
2
|
+
|
3
|
+
Complete Debian/Ubuntu style Apache2 configuration.
|
4
|
+
|
5
|
+
= REQUIREMENTS:
|
6
|
+
|
7
|
+
Debian or Ubuntu preferred.
|
8
|
+
|
9
|
+
Red Hat/CentOS and Fedora can be used,
|
10
|
+
|
11
|
+
= ATTRIBUTES:
|
12
|
+
|
13
|
+
The file attributes/apache.rb contains the following attribute types:
|
14
|
+
|
15
|
+
* platform specific locations and settings.
|
16
|
+
* general settings
|
17
|
+
* prefork attributes
|
18
|
+
* worker attributes
|
19
|
+
|
20
|
+
General settings and prefork/worker attributes are tunable.
|
21
|
+
|
22
|
+
= USAGE:
|
23
|
+
|
24
|
+
Include the apache2 recipe to install Apache2 and get 'sane' default settings. Configuration is modularized through Apache vhost sites a la Debian style configuration.
|
25
|
+
|
26
|
+
== Defines:
|
27
|
+
|
28
|
+
* apache_module: sets up an Apache module.
|
29
|
+
* apache_site: sets up a vhost site. The conf file must be available.
|
30
|
+
* web_app: copies the template for a web app and enables it as a site via apache_site.
|
31
|
+
|
32
|
+
== Web Apps:
|
33
|
+
|
34
|
+
Various applications that can be set up with Apache as the front end, such as PHP, Django, Rails and others can use the web_app define to set up the template and the Apache site. The define is kind of dumb, so the template needs have the application implementation settings, since we don't know what your app is or what is needed from Apache.
|
35
|
+
|
36
|
+
We only prototype one parameter for the web_app define, "template". This is used to specify the name of the template to use in the current cookbook. When you use web_app, you can set up any parameters you want to use in your template. They will get passed to the template through the params hash. For example, the sample web_app.conf.erb template in this cookbook makes use of these.
|
37
|
+
|
38
|
+
* docroot
|
39
|
+
* server_name
|
40
|
+
* server_aliases
|
41
|
+
|
42
|
+
These are available as @params[:docroot], @params[:server_name], @params[:server_aliases] within the template.
|
43
|
+
|
44
|
+
= LICENSE & AUTHOR:
|
45
|
+
|
46
|
+
Author:: Joshua Timberman (<joshua@opscode.com>)
|
47
|
+
Copyright:: 2009, Opscode, Inc
|
48
|
+
|
49
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
50
|
+
you may not use this file except in compliance with the License.
|
51
|
+
You may obtain a copy of the License at
|
52
|
+
|
53
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
54
|
+
|
55
|
+
Unless required by applicable law or agreed to in writing, software
|
56
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
57
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
58
|
+
See the License for the specific language governing permissions and
|
59
|
+
limitations under the License.
|
@@ -0,0 +1,72 @@
|
|
1
|
+
#
|
2
|
+
# Cookbook Name:: apache2
|
3
|
+
# Attributes:: apache
|
4
|
+
#
|
5
|
+
# Copyright 2008, OpsCode, Inc.
|
6
|
+
#
|
7
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
8
|
+
# you may not use this file except in compliance with the License.
|
9
|
+
# You may obtain a copy of the License at
|
10
|
+
#
|
11
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
12
|
+
#
|
13
|
+
# Unless required by applicable law or agreed to in writing, software
|
14
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
15
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
16
|
+
# See the License for the specific language governing permissions and
|
17
|
+
# limitations under the License.
|
18
|
+
#
|
19
|
+
|
20
|
+
apache Mash.new unless attribute?("apache")
|
21
|
+
|
22
|
+
# Where the various parts of apache are
|
23
|
+
case platform
|
24
|
+
when "redhat","centos","fedora","suse"
|
25
|
+
apache[:dir] = "/etc/httpd"
|
26
|
+
apache[:log_dir] = "/var/log/httpd"
|
27
|
+
apache[:user] = "apache"
|
28
|
+
apache[:binary] = "/usr/sbin/httpd"
|
29
|
+
apache[:icondir] = "/var/www/icons"
|
30
|
+
when "debian","ubuntu"
|
31
|
+
apache[:dir] = "/etc/apache2"
|
32
|
+
apache[:log_dir] = "/var/log/apache2"
|
33
|
+
apache[:user] = "www-data"
|
34
|
+
apache[:binary] = "/usr/sbin/apache2"
|
35
|
+
apache[:icondir] = "/usr/share/apache2/icons"
|
36
|
+
else
|
37
|
+
apache[:dir] = "/etc/apache2"
|
38
|
+
apache[:log_dir] = "/var/log/apache2"
|
39
|
+
apache[:user] = "www-data"
|
40
|
+
apache[:binary] = "/usr/sbin/apache2"
|
41
|
+
apache[:icondir] = "/usr/share/apache2/icons"
|
42
|
+
end
|
43
|
+
|
44
|
+
###
|
45
|
+
# These settings need the unless, since we want them to be tunable,
|
46
|
+
# and we don't want to override the tunings.
|
47
|
+
###
|
48
|
+
|
49
|
+
# General settings
|
50
|
+
apache[:listen_ports] = [ "80" ] unless apache.has_key?(:listen_ports)
|
51
|
+
apache[:contact] = "ops@example.com" unless apache.has_key?(:contact)
|
52
|
+
apache[:timeout] = 300 unless apache.has_key?(:timeout)
|
53
|
+
apache[:keepalive] = "On" unless apache.has_key?(:keepalive)
|
54
|
+
apache[:keepaliverequests] = 100 unless apache.has_key?(:keepaliverequests)
|
55
|
+
apache[:keepalivetimeout] = 5 unless apache.has_key?(:keepalivetimeout)
|
56
|
+
|
57
|
+
# Prefork Attributes
|
58
|
+
apache[:prefork] = Mash.new unless apache.has_key?(:prefork)
|
59
|
+
apache[:prefork][:startservers] = 16 unless apache[:prefork].has_key?(:prefork_startservers)
|
60
|
+
apache[:prefork][:minspareservers] = 16 unless apache[:prefork].has_key?(:prefork_minspareservers)
|
61
|
+
apache[:prefork][:maxspareservers] = 32 unless apache[:prefork].has_key?(:prefork_maxspareservers)
|
62
|
+
apache[:prefork][:maxclients] = 400 unless apache[:prefork].has_key?(:prefork_maxclients)
|
63
|
+
apache[:prefork][:maxrequestsperchild] = 10000 unless apache[:prefork].has_key?(:prefork_maxrequestsperchild)
|
64
|
+
|
65
|
+
# Worker Attributes
|
66
|
+
apache[:worker] = Mash.new unless apache.has_key?(:worker)
|
67
|
+
apache[:worker][:startservers] = 4 unless apache[:worker].has_key?(:startservers)
|
68
|
+
apache[:worker][:maxclients] = 1024 unless apache[:worker].has_key?(:maxclients)
|
69
|
+
apache[:worker][:minsparethreads] = 64 unless apache[:worker].has_key?(:minsparethreads)
|
70
|
+
apache[:worker][:maxsparethreads] = 192 unless apache[:worker].has_key?(:maxsparethreads)
|
71
|
+
apache[:worker][:threadsperchild] = 64 unless apache[:worker].has_key?(:threadsperchild)
|
72
|
+
apache[:worker][:maxrequestsperchild] = 0 unless apache[:worker].has_key?(:maxrequestsperchild)
|
@@ -0,0 +1,36 @@
|
|
1
|
+
#
|
2
|
+
# Cookbook Name:: apache2
|
3
|
+
# Definition:: apache_module
|
4
|
+
#
|
5
|
+
# Copyright 2008, OpsCode, Inc.
|
6
|
+
#
|
7
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
8
|
+
# you may not use this file except in compliance with the License.
|
9
|
+
# You may obtain a copy of the License at
|
10
|
+
#
|
11
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
12
|
+
#
|
13
|
+
# Unless required by applicable law or agreed to in writing, software
|
14
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
15
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
16
|
+
# See the License for the specific language governing permissions and
|
17
|
+
# limitations under the License.
|
18
|
+
#
|
19
|
+
|
20
|
+
define :apache_module, :enable => true do
|
21
|
+
include_recipe "apache2"
|
22
|
+
|
23
|
+
if params[:enable]
|
24
|
+
execute "a2enmod #{params[:name]}" do
|
25
|
+
command "/usr/sbin/a2enmod #{params[:name]}"
|
26
|
+
notifies :restart, resources(:service => "apache2")
|
27
|
+
not_if do File.symlink?("#{node[:apache][:dir]}/mods-enabled/#{params[:name]}.load") end
|
28
|
+
end
|
29
|
+
else
|
30
|
+
execute "a2dismod #{params[:name]}" do
|
31
|
+
command "/usr/sbin/a2dismod #{params[:name]}"
|
32
|
+
notifies :restart, resources(:service => "apache2")
|
33
|
+
only_if do File.symlink?("#{node[:apache][:dir]}/mods-enabled/#{params[:name]}.load") end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|