poolparty 0.2.84 → 1.2.2
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/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
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
=begin rdoc
|
|
2
|
-
Base provisioner capistrano tasks
|
|
3
|
-
=end
|
|
4
|
-
Capistrano::Configuration.instance(:must_exist).load do
|
|
5
|
-
# namespace(:base) do
|
|
6
|
-
desc "Install rubygems"
|
|
7
|
-
task :install_rubygems do
|
|
8
|
-
run "#{installer_for} ruby rubygems"
|
|
9
|
-
end
|
|
10
|
-
dec "Setup for poolparty"
|
|
11
|
-
task :setup_for_poolparty do
|
|
12
|
-
run "mkdir -p /etc/poolparty"
|
|
13
|
-
end
|
|
14
|
-
desc "Install provisioner"
|
|
15
|
-
task :install_provisioner do
|
|
16
|
-
run "#{installer_for} #{puppet_packages}"
|
|
17
|
-
end
|
|
18
|
-
desc "Create poolparty commands"
|
|
19
|
-
task :create_poolparty_commands do
|
|
20
|
-
end
|
|
21
|
-
desc "Create poolparty runner command"
|
|
22
|
-
task :create_puppetrunner_command do
|
|
23
|
-
run <<-EOR
|
|
24
|
-
cp #{remote_storage_path}/templates/puppetrunner /usr/bin/puppetrunner &&
|
|
25
|
-
chmod +x /usr/bin/puppetrunner
|
|
26
|
-
EOR
|
|
27
|
-
end
|
|
28
|
-
desc "Create poolparty rerun command"
|
|
29
|
-
task :create_puppetrerun_command do
|
|
30
|
-
run <<-EOR
|
|
31
|
-
cp #{remote_storage_path}/templates/puppetrerun /usr/bin/puppetrerun &&
|
|
32
|
-
chmod +x /usr/bin/puppetrerun
|
|
33
|
-
EOR
|
|
34
|
-
end
|
|
35
|
-
desc "Add the proper configs for provisioner"
|
|
36
|
-
task :add_provisioner_configs do
|
|
37
|
-
run "cp #{remote_storage_path}/namespaceauth.conf /etc/puppet/namespaceauth.conf"
|
|
38
|
-
end
|
|
39
|
-
desc "Setup config file for provisioner"
|
|
40
|
-
task :setup_provisioner_config do
|
|
41
|
-
run "mv #{remote_storage_path}/puppet.conf /etc/puppet/puppet.conf"
|
|
42
|
-
end
|
|
43
|
-
desc "Run the provisioner"
|
|
44
|
-
task :run_provisioner do
|
|
45
|
-
run "/usr/sbin/puppetd --onetime --daemonize --logdest syslog --server master"
|
|
46
|
-
end
|
|
47
|
-
desc "Rerun the provisioner"
|
|
48
|
-
task :rerun_provisioner do
|
|
49
|
-
run "/usr/bin/puppetrerun"
|
|
50
|
-
end
|
|
51
|
-
desc "Remove the certs"
|
|
52
|
-
task :remove_certs do
|
|
53
|
-
run "rm -rf /etc/puppet/ssl"
|
|
54
|
-
end
|
|
55
|
-
desc "Update rubygems"
|
|
56
|
-
task :update_rubygems do
|
|
57
|
-
run "/usr/bin/gem update --system 2>1 > /dev/null && /usr/bin/gem update --system"
|
|
58
|
-
end
|
|
59
|
-
desc "Fix rubygems"
|
|
60
|
-
task :fix_rubygems do
|
|
61
|
-
# echo '#{open(::File.join(template_directory, "gem")).read}' > /usr/bin/gem &&
|
|
62
|
-
run <<-EOR
|
|
63
|
-
/usr/bin/gem update --system 2>&1 > /dev/null;/usr/bin/gem update --system &&
|
|
64
|
-
cp -f #{remote_storage_path}/gem /usr/bin/gem
|
|
65
|
-
EOR
|
|
66
|
-
end
|
|
67
|
-
desc "Upgrade system"
|
|
68
|
-
task :upgrade_system do
|
|
69
|
-
str = case os
|
|
70
|
-
when :ubuntu
|
|
71
|
-
"
|
|
72
|
-
echo 'deb http://mirrors.kernel.org/ubuntu hardy main universe' >> /etc/apt/sources.list &&
|
|
73
|
-
aptitude update -y
|
|
74
|
-
"
|
|
75
|
-
else
|
|
76
|
-
"echo 'No system upgrade needed'"
|
|
77
|
-
end
|
|
78
|
-
run str
|
|
79
|
-
end
|
|
80
|
-
desc "Upgrade rubygems"
|
|
81
|
-
task :upgrade_rubygems do
|
|
82
|
-
|
|
83
|
-
end
|
|
84
|
-
desc "Make log directory"
|
|
85
|
-
task :make_log_directory do
|
|
86
|
-
run "mkdir -p /var/log/poolparty"
|
|
87
|
-
end
|
|
88
|
-
desc "Create ssl storage directories for poolparty"
|
|
89
|
-
task :create_poolparty_ssl_store do
|
|
90
|
-
run <<-EOR
|
|
91
|
-
mkdir -p #{poolparty_config_directory}/ssl/private_keys &&
|
|
92
|
-
mkdir -p #{poolparty_config_directory}/ssl/certs &&
|
|
93
|
-
mkdir -p #{poolparty_config_directory}/ssl/public_keys
|
|
94
|
-
EOR
|
|
95
|
-
end
|
|
96
|
-
desc "Add erlang cookie"
|
|
97
|
-
task :write_erlang_cookie do
|
|
98
|
-
run <<-EOR
|
|
99
|
-
mv #{remote_storage_path}/cookie ~/.erlang.cookie &&
|
|
100
|
-
chmod 400 ~/.erlang.cookie
|
|
101
|
-
EOR
|
|
102
|
-
end
|
|
103
|
-
# end
|
|
104
|
-
end
|
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
# Cloud tasks
|
|
2
|
-
Capistrano::Configuration.instance(:must_exist).load do
|
|
3
|
-
namespace(:master) do
|
|
4
|
-
desc "Provision master"
|
|
5
|
-
task :provision_master do
|
|
6
|
-
upgrade_system
|
|
7
|
-
set_hostname_to_master
|
|
8
|
-
create_local_hosts_entry
|
|
9
|
-
setup_for_poolparty
|
|
10
|
-
install_provisioner
|
|
11
|
-
start_provisioner_base
|
|
12
|
-
setup_basic_poolparty_structure
|
|
13
|
-
setup_provisioner_filestore
|
|
14
|
-
setup_provisioner_autosigning
|
|
15
|
-
install_rubygems
|
|
16
|
-
fix_rubygems
|
|
17
|
-
add_provisioner_configs
|
|
18
|
-
setup_provisioner_config
|
|
19
|
-
create_puppetrunner_command
|
|
20
|
-
create_puppetrerun_command
|
|
21
|
-
download_base_gems
|
|
22
|
-
install_base_gems
|
|
23
|
-
write_erlang_cookie
|
|
24
|
-
end
|
|
25
|
-
desc "Configure master"
|
|
26
|
-
task :configure_master do
|
|
27
|
-
master:move_provisioner_manifest
|
|
28
|
-
master:move_template_files
|
|
29
|
-
master:setup_poolparty_base_structure
|
|
30
|
-
run_provisioner
|
|
31
|
-
end
|
|
32
|
-
desc "Set hostname to master"
|
|
33
|
-
task :set_hostname_to_master do
|
|
34
|
-
run "hostname master"
|
|
35
|
-
end
|
|
36
|
-
desc "Add host entry into the master instance"
|
|
37
|
-
task :create_local_hosts_entry do
|
|
38
|
-
run "if [ -z \"$(grep -v '#' /etc/hosts | grep 'puppet')\" ]; then echo '#{cloud.master.ip} master puppet localhost' >> /etc/hosts; fi"
|
|
39
|
-
end
|
|
40
|
-
desc "Setup basic poolparty structure"
|
|
41
|
-
task :setup_basic_poolparty_structure do
|
|
42
|
-
run <<-EOR
|
|
43
|
-
echo "Creating basic structure for poolparty" &&
|
|
44
|
-
mkdir -p /etc/puppet/manifests/nodes &&
|
|
45
|
-
mkdir -p /etc/puppet/manifests/classes &&
|
|
46
|
-
echo "import 'nodes/*.pp'" > /etc/puppet/manifests/site.pp &&
|
|
47
|
-
echo "import 'classes/*.pp'" >> /etc/puppet/manifests/site.pp
|
|
48
|
-
EOR
|
|
49
|
-
end
|
|
50
|
-
desc "Setup shareable file system for provisioner"
|
|
51
|
-
task :setup_provisioner_filestore do
|
|
52
|
-
run <<-EOR
|
|
53
|
-
echo '[files]' > /etc/puppet/fileserver.conf &&
|
|
54
|
-
echo ' path #{remote_storage_path}' >> /etc/puppet/fileserver.conf &&
|
|
55
|
-
echo ' allow *' >> /etc/puppet/fileserver.conf &&
|
|
56
|
-
mkdir -p /var/poolparty/facts &&
|
|
57
|
-
mkdir -p /var/poolparty/files &&
|
|
58
|
-
mkdir -p #{base_config_directory}
|
|
59
|
-
EOR
|
|
60
|
-
end
|
|
61
|
-
desc "Setup autosigning for provisioner"
|
|
62
|
-
task :setup_provisioner_autosigning do
|
|
63
|
-
run "echo \"*\" > /etc/puppet/autosign.conf"
|
|
64
|
-
end
|
|
65
|
-
desc "Setup poolparty structure"
|
|
66
|
-
task :setup_poolparty_base_structure do
|
|
67
|
-
run <<-EOR
|
|
68
|
-
cp #{remote_storage_path}/#{key_file_locations.first} "#{base_config_directory}/.ppkeys" &&
|
|
69
|
-
mv #{remote_storage_path}/#{default_specfile_name} #{base_config_directory}/
|
|
70
|
-
EOR
|
|
71
|
-
end
|
|
72
|
-
desc "Download base gems"
|
|
73
|
-
task :download_base_gems do
|
|
74
|
-
run download_base_gems_string
|
|
75
|
-
end
|
|
76
|
-
desc "Install base gems"
|
|
77
|
-
task :install_base_gems do
|
|
78
|
-
run(returning(Array.new) do |arr|
|
|
79
|
-
base_gems.each do |name, url|
|
|
80
|
-
arr << "/usr/bin/gem install --ignore-dependencies --no-ri --no-rdoc #{Base.remote_storage_path}/#{name}.gem"
|
|
81
|
-
end
|
|
82
|
-
end.join(" && "))
|
|
83
|
-
end
|
|
84
|
-
desc "Start provisioner base"
|
|
85
|
-
task :start_provisioner_base do
|
|
86
|
-
run "/etc/init.d/puppetmaster start"
|
|
87
|
-
end
|
|
88
|
-
desc "Restart provisioner base"
|
|
89
|
-
task :restart_provisioner_base do
|
|
90
|
-
run "/etc/init.d/puppetmaster stop;rm -rf /etc/poolparty/ssl;puppetmasterd --verbose;/etc/init.d/puppetmaster start"
|
|
91
|
-
end
|
|
92
|
-
desc "Create local node for puppet manifest"
|
|
93
|
-
task :create_local_node_entry_for_puppet do
|
|
94
|
-
# run ". /etc/profile && server-write-new-nodes"
|
|
95
|
-
str = returning Array.new do |arr|
|
|
96
|
-
arr << "node default { include poolparty }"
|
|
97
|
-
list_of_running_instances.each do |ri|
|
|
98
|
-
arr << "node \"#{ri.name}\" inherits default {}\n"
|
|
99
|
-
end
|
|
100
|
-
end.join("\n")
|
|
101
|
-
run "echo #{str} > #{manifest_path}/nodes/nodes.pp"
|
|
102
|
-
end
|
|
103
|
-
desc "Move template files into place"
|
|
104
|
-
task :move_template_files do
|
|
105
|
-
run <<-EOR
|
|
106
|
-
mkdir -p #{template_path} &&
|
|
107
|
-
cp -R #{remote_storage_path}/templates/* #{template_path}
|
|
108
|
-
EOR
|
|
109
|
-
end
|
|
110
|
-
desc "Move manifest into place"
|
|
111
|
-
task :move_provisioner_manifest do
|
|
112
|
-
run <<-EOR
|
|
113
|
-
cp #{remote_storage_path}/poolparty.pp /etc/puppet/manifests/classes/poolparty.pp
|
|
114
|
-
EOR
|
|
115
|
-
end
|
|
116
|
-
desc "Move poolparty keys"
|
|
117
|
-
task :move_poolparty_keys do
|
|
118
|
-
run "cp #{remote_storage_path}/#{@full_keypair_name} #{@remote_keypair_path}"
|
|
119
|
-
end
|
|
120
|
-
end
|
|
121
|
-
end
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
Capistrano::Configuration.instance(:must_exist).load do
|
|
2
|
-
namespace(:slave) do
|
|
3
|
-
desc "Add master ip to hosts file"
|
|
4
|
-
task :add_master_to_hosts_file do
|
|
5
|
-
run "if [ -z \"$(grep -v '#' /etc/hosts | grep 'master')\" ]; then echo '#{master_ip} puppet master' >> /etc/hosts; else echo 'host already set'; fi"
|
|
6
|
-
end
|
|
7
|
-
desc "Stop provisioner daemon"
|
|
8
|
-
task :stop_provisioner_daemon do
|
|
9
|
-
run "/etc/init.d/puppetmaster stop"
|
|
10
|
-
end
|
|
11
|
-
end
|
|
12
|
-
end
|
|
@@ -1,204 +0,0 @@
|
|
|
1
|
-
=begin rdoc
|
|
2
|
-
The Provisioner is responsible for provisioning REMOTE servers
|
|
3
|
-
This class only comes in to play when calling the setup commands on
|
|
4
|
-
the development machine
|
|
5
|
-
=end
|
|
6
|
-
require 'capistrano/cli'
|
|
7
|
-
|
|
8
|
-
module PoolParty
|
|
9
|
-
module Provisioner
|
|
10
|
-
|
|
11
|
-
def provisioner_for(inst)
|
|
12
|
-
PoolParty::Provisioner::Capistrano.new(inst, self, :ubuntu)
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
class ProvisionerBase
|
|
16
|
-
attr_accessor :config, :loaded_tasks, :instance, :cloud, :os
|
|
17
|
-
|
|
18
|
-
include Configurable
|
|
19
|
-
include CloudResourcer
|
|
20
|
-
include FileWriter
|
|
21
|
-
|
|
22
|
-
def initialize(instance=nil, cld=self, os=:ubuntu, &block)
|
|
23
|
-
@instance = instance
|
|
24
|
-
@cloud = cld
|
|
25
|
-
|
|
26
|
-
options(cloud.options) if cloud && cloud.respond_to?(:options)
|
|
27
|
-
# set_vars_from_options(instance.options) unless instance.nil? || !instance.options || !instance.options.empty?
|
|
28
|
-
# options(instance.options) if instance.respond_to?(:options)
|
|
29
|
-
|
|
30
|
-
@os = os.to_s.downcase.to_sym
|
|
31
|
-
self.instance_eval &block if block
|
|
32
|
-
|
|
33
|
-
loaded
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
def provision_master?
|
|
37
|
-
!@instance.nil? && @instance.master?
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
# Callback after initialized
|
|
41
|
-
def loaded
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
def loaded_tasks
|
|
45
|
-
@loaded_tasks ||= []
|
|
46
|
-
end
|
|
47
|
-
|
|
48
|
-
### Installation tasks
|
|
49
|
-
|
|
50
|
-
# This is the actual runner for the installation
|
|
51
|
-
def install(testing=false)
|
|
52
|
-
error unless valid?
|
|
53
|
-
setup_runner
|
|
54
|
-
unless testing
|
|
55
|
-
before_install(@instance)
|
|
56
|
-
|
|
57
|
-
vputs "Provisioning #{@instance.name}"
|
|
58
|
-
process_install!(testing)
|
|
59
|
-
|
|
60
|
-
after_install(@instance)
|
|
61
|
-
end
|
|
62
|
-
end
|
|
63
|
-
# The provisioner bases overwrite this method
|
|
64
|
-
def process_install!(testing=false)
|
|
65
|
-
end
|
|
66
|
-
|
|
67
|
-
# Configuration
|
|
68
|
-
def configure(testing=false)
|
|
69
|
-
error unless valid?
|
|
70
|
-
setup_runner
|
|
71
|
-
unless testing
|
|
72
|
-
before_configure(@instance)
|
|
73
|
-
|
|
74
|
-
vputs "Provisioning #{@instance.name}"
|
|
75
|
-
process_configure!(testing)
|
|
76
|
-
|
|
77
|
-
after_configure(@instance)
|
|
78
|
-
end
|
|
79
|
-
end
|
|
80
|
-
|
|
81
|
-
# Tasks that need to be performed everytime we do any
|
|
82
|
-
# remote ssh'ing into any instance
|
|
83
|
-
def setup_runner(force=false)
|
|
84
|
-
@cloud.prepare_for_configuration
|
|
85
|
-
@cloud.build_and_store_new_config_file(force)
|
|
86
|
-
end
|
|
87
|
-
|
|
88
|
-
# Callbacks
|
|
89
|
-
# Before installation callback
|
|
90
|
-
def before_install(instance)
|
|
91
|
-
end
|
|
92
|
-
def after_install(instance)
|
|
93
|
-
end
|
|
94
|
-
def before_configure(instance)
|
|
95
|
-
end
|
|
96
|
-
def after_configure(instance)
|
|
97
|
-
end
|
|
98
|
-
|
|
99
|
-
def valid?
|
|
100
|
-
true
|
|
101
|
-
end
|
|
102
|
-
def error
|
|
103
|
-
raise ProvisionerException.new("Error in installation")
|
|
104
|
-
end
|
|
105
|
-
# Custom installation tasks
|
|
106
|
-
# Allow the remoter bases to attach their own tasks on the
|
|
107
|
-
# installation process
|
|
108
|
-
def custom_install_tasks
|
|
109
|
-
@cloud.custom_install_tasks_for(@instance) || []
|
|
110
|
-
end
|
|
111
|
-
# Custom configure tasks
|
|
112
|
-
# Allows the remoter bases to attach their own
|
|
113
|
-
# custom configuration tasks to the configuration process
|
|
114
|
-
def custom_configure_tasks
|
|
115
|
-
@cloud.custom_configure_tasks_for(@instance) || []
|
|
116
|
-
end
|
|
117
|
-
|
|
118
|
-
# Get the packages associated with each os
|
|
119
|
-
def puppet_packages
|
|
120
|
-
case @os
|
|
121
|
-
when :fedora
|
|
122
|
-
"puppet-server puppet factor"
|
|
123
|
-
else
|
|
124
|
-
"puppet puppetmaster"
|
|
125
|
-
end
|
|
126
|
-
end
|
|
127
|
-
# Package installers for general *nix operating systems
|
|
128
|
-
def self.installers
|
|
129
|
-
@installers ||= {
|
|
130
|
-
:ubuntu => "aptitude install -y",
|
|
131
|
-
:fedora => "yum install",
|
|
132
|
-
:gentoo => "emerge"
|
|
133
|
-
}
|
|
134
|
-
end
|
|
135
|
-
def os_installer
|
|
136
|
-
"#{self.class.installers[@os]}"
|
|
137
|
-
end
|
|
138
|
-
# Convenience method to grab the installer
|
|
139
|
-
def installer_for(names=[])
|
|
140
|
-
packages = names.is_a?(Array) ? names.join(" ") : names
|
|
141
|
-
"#{self.class.installers[@os]} #{packages}"
|
|
142
|
-
end
|
|
143
|
-
|
|
144
|
-
#TODO#
|
|
145
|
-
# Abstract the gems out
|
|
146
|
-
def base_gems
|
|
147
|
-
{
|
|
148
|
-
:logging => "http://rubyforge.org/frs/download.php/44731/logging-0.9.4.gem",
|
|
149
|
-
:ZenTest => "http://rubyforge.org/frs/download.php/45581/ZenTest-3.11.0.gem",
|
|
150
|
-
:ParseTree => "http://rubyforge.org/frs/download.php/45600/ParseTree-3.0.1.gem",
|
|
151
|
-
:ruby2ruby => "http://rubyforge.org/frs/download.php/45587/ruby2ruby-1.2.0.gem",
|
|
152
|
-
:activesupport => "http://rubyforge.org/frs/download.php/45627/activesupport-2.1.2.gem",
|
|
153
|
-
:"xml-simple" => "http://rubyforge.org/frs/download.php/18366/xml-simple-1.0.11.gem",
|
|
154
|
-
:RubyInline => "http://rubyforge.org/frs/download.php/45683/RubyInline-3.8.1.gem",
|
|
155
|
-
:flexmock => "http://rubyforge.org/frs/download.php/42580/flexmock-0.8.3.gem",
|
|
156
|
-
:hoe => "http://rubyforge.org/frs/download.php/45685/hoe-1.8.2.gem",
|
|
157
|
-
:lockfile => "http://rubyforge.org/frs/download.php/18698/lockfile-1.4.3.gem",
|
|
158
|
-
:rubyforge => "http://rubyforge.org/frs/download.php/45546/rubyforge-1.0.1.gem",
|
|
159
|
-
:rake => "http://rubyforge.org/frs/download.php/43954/rake-0.8.3.gem",
|
|
160
|
-
:sexp_processor => "http://rubyforge.org/frs/download.php/45589/sexp_processor-3.0.0.gem",
|
|
161
|
-
:capistrano => "http://rubyforge.org/frs/download.php/48031/capistrano-2.5.3.gem",
|
|
162
|
-
:poolparty => "http://github.com/auser/poolparty/tree/master%2Fpkg%2Fpoolparty.gem?raw=true",
|
|
163
|
-
"ec2" => "http://rubyforge.org/frs/download.php/43666/amazon-ec2-0.3.1.gem"
|
|
164
|
-
}
|
|
165
|
-
end
|
|
166
|
-
|
|
167
|
-
def download_base_gems_string
|
|
168
|
-
returning(Array.new) do |arr|
|
|
169
|
-
base_gems.each do |name, url|
|
|
170
|
-
arr << "wget #{url} -O #{Base.remote_storage_path}/#{name}.gem 2>&1"
|
|
171
|
-
end
|
|
172
|
-
end.join(" && ")
|
|
173
|
-
end
|
|
174
|
-
|
|
175
|
-
def install_base_gems_string
|
|
176
|
-
returning(Array.new) do |arr|
|
|
177
|
-
base_gems.each do |name, url|
|
|
178
|
-
arr << "/usr/bin/gem install --ignore-dependencies --no-ri --no-rdoc #{Base.remote_storage_path}/#{name}.gem"
|
|
179
|
-
end
|
|
180
|
-
end.join(" && ")
|
|
181
|
-
end
|
|
182
|
-
|
|
183
|
-
# Template directory from the provisioner base
|
|
184
|
-
def template_directory
|
|
185
|
-
File.join(File.dirname(__FILE__), "..", "templates")
|
|
186
|
-
end
|
|
187
|
-
|
|
188
|
-
# Install from the class-level
|
|
189
|
-
def self.install(instance, cl=self, testing=false)
|
|
190
|
-
new(instance, cl).install(testing)
|
|
191
|
-
end
|
|
192
|
-
|
|
193
|
-
def self.configure(instance, cl=self, testing=false)
|
|
194
|
-
new(instance, cl).configure(testing)
|
|
195
|
-
end
|
|
196
|
-
|
|
197
|
-
end
|
|
198
|
-
end
|
|
199
|
-
end
|
|
200
|
-
|
|
201
|
-
## Load the provisioners
|
|
202
|
-
Dir[File.dirname(__FILE__) + "/*/*.rb"].each do |file|
|
|
203
|
-
require file
|
|
204
|
-
end
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
class String
|
|
2
|
-
def grab_entry_for(type, name)
|
|
3
|
-
begin
|
|
4
|
-
allowed = /[ \$\._\-\[\]\n\t\\\/&,\(\)"',|:=\>\<0-9a-zA-Z]/
|
|
5
|
-
matches = self.match(/#{type}(.*)\{(.*)"#{name}":(.*)(#{allowed})*\}/)[0]
|
|
6
|
-
rescue
|
|
7
|
-
""
|
|
8
|
-
end
|
|
9
|
-
end
|
|
10
|
-
def _grab_key_value_for(type, name, key)
|
|
11
|
-
grab_entry_for(type, name).scan(/#{key}[ =>]*(.*)[,?]?$/).flatten.first rescue ""
|
|
12
|
-
end
|
|
13
|
-
def grab_key_value_for(ty, name, key)
|
|
14
|
-
_grab_key_value_for(ty,name,key).gsub(/,/, '')
|
|
15
|
-
end
|
|
16
|
-
end
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
module Spec
|
|
2
|
-
module Matchers
|
|
3
|
-
module SpecExtensions
|
|
4
|
-
# Mainly extensions, these methods are inherent in all of the matchers
|
|
5
|
-
# and are intended for helping parse the final manifest for spec'ing purposes.
|
|
6
|
-
class SpecExtensionsBase
|
|
7
|
-
def ensured_as(ensured="present")
|
|
8
|
-
str = "ensure => '#{ensured}'"
|
|
9
|
-
!grab_entry.scan(/#{str}/).empty?
|
|
10
|
-
end
|
|
11
|
-
def is_present?
|
|
12
|
-
!grab_entry.empty? && is_valid_resource?
|
|
13
|
-
end
|
|
14
|
-
def grab_entry
|
|
15
|
-
@target.grab_entry_for(type, @expected)
|
|
16
|
-
end
|
|
17
|
-
def type
|
|
18
|
-
"file"
|
|
19
|
-
end
|
|
20
|
-
def is_valid_resource?
|
|
21
|
-
grab_entry.split(/\n/).select {|l| l.match(/(.*)=>(\W+),$/) }.empty?
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
end
|
|
26
|
-
end
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
module Spec
|
|
2
|
-
module Matchers
|
|
3
|
-
module SpecExtensions
|
|
4
|
-
class HaveCron < SpecExtensionsBase
|
|
5
|
-
def initialize(expected,extra="")
|
|
6
|
-
@expected = expected
|
|
7
|
-
@extra = extra
|
|
8
|
-
end
|
|
9
|
-
def matches?(target)
|
|
10
|
-
@target = target
|
|
11
|
-
is_present?
|
|
12
|
-
end
|
|
13
|
-
def failure_message
|
|
14
|
-
"expected #{@target.inspect} to have cron #{@expected}"
|
|
15
|
-
end
|
|
16
|
-
def negative_failure_message
|
|
17
|
-
"expected #{@target.inspect} not to have cron #{@expected}"
|
|
18
|
-
end
|
|
19
|
-
def type
|
|
20
|
-
"cron"
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
def have_cron(name, extra="")
|
|
25
|
-
SpecExtensions::HaveCron.new(name, extra)
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
end
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
module PoolParty
|
|
2
|
-
class SpecCore
|
|
3
|
-
# dynamic_matcher_for(:deploydirectory) do
|
|
4
|
-
# it "should have the directory" do
|
|
5
|
-
# @manifest.should have_directory(@to)
|
|
6
|
-
# end
|
|
7
|
-
# it "should have the rsyncmirror" do
|
|
8
|
-
# @manifest.should have_rsyncmirror("deploydirectory-#{@to}")
|
|
9
|
-
# end
|
|
10
|
-
# it "should have the exec to unpack the archive" do
|
|
11
|
-
# @manifest.should have_exec("deploy-directory-#{@to}")
|
|
12
|
-
# end
|
|
13
|
-
# end
|
|
14
|
-
end
|
|
15
|
-
end
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
module Spec
|
|
2
|
-
module Matchers
|
|
3
|
-
module SpecExtensions
|
|
4
|
-
class HaveDirectory < SpecExtensionsBase
|
|
5
|
-
def initialize(expected,extra="")
|
|
6
|
-
@expected = expected
|
|
7
|
-
@extra = extra
|
|
8
|
-
end
|
|
9
|
-
def matches?(target)
|
|
10
|
-
@target = target
|
|
11
|
-
is_present? && is_a_directory?
|
|
12
|
-
end
|
|
13
|
-
def is_a_directory?
|
|
14
|
-
ensured_as("directory")
|
|
15
|
-
end
|
|
16
|
-
def failure_message
|
|
17
|
-
"expected #{@target.inspect} to have directory #{@expected}"
|
|
18
|
-
end
|
|
19
|
-
def negative_failure_message
|
|
20
|
-
"expected #{@target.inspect} not to have directory #{@expected}"
|
|
21
|
-
end
|
|
22
|
-
def type
|
|
23
|
-
"file"
|
|
24
|
-
end
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
def have_directory(name, extra="")
|
|
28
|
-
SpecExtensions::HaveDirectory.new(name, extra)
|
|
29
|
-
end
|
|
30
|
-
end
|
|
31
|
-
end
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
module Spec
|
|
2
|
-
module Matchers
|
|
3
|
-
module SpecExtensions
|
|
4
|
-
class HaveExec < SpecExtensionsBase
|
|
5
|
-
def initialize(expected,extra="")
|
|
6
|
-
@expected = expected
|
|
7
|
-
@extra = extra
|
|
8
|
-
end
|
|
9
|
-
def matches?(target)
|
|
10
|
-
@target = target
|
|
11
|
-
is_present?
|
|
12
|
-
end
|
|
13
|
-
def failure_message
|
|
14
|
-
"expected #{@target.inspect} to have exec #{@expected}"
|
|
15
|
-
end
|
|
16
|
-
def negative_failure_message
|
|
17
|
-
"expected #{@target.inspect} not to have exec #{@expected}"
|
|
18
|
-
end
|
|
19
|
-
def type
|
|
20
|
-
"exec"
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
def have_exec(name, extra="")
|
|
25
|
-
SpecExtensions::HaveExec.new(name, extra)
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
end
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
module Spec
|
|
2
|
-
module Matchers
|
|
3
|
-
module SpecExtensions
|
|
4
|
-
class HaveFile < SpecExtensionsBase
|
|
5
|
-
def initialize(expected,extra="")
|
|
6
|
-
@expected = expected
|
|
7
|
-
@extra = extra
|
|
8
|
-
end
|
|
9
|
-
def matches?(target)
|
|
10
|
-
@target = target
|
|
11
|
-
is_present?
|
|
12
|
-
end
|
|
13
|
-
def failure_message
|
|
14
|
-
"expected #{@target.inspect} to have file #{@expected}"
|
|
15
|
-
end
|
|
16
|
-
def negative_failure_message
|
|
17
|
-
"expected #{@target.inspect} not to have file #{@expected}"
|
|
18
|
-
end
|
|
19
|
-
def type
|
|
20
|
-
"file"
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
def have_file(name, extra="")
|
|
25
|
-
SpecExtensions::HaveFile.new(name, extra)
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
end
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
module Spec
|
|
2
|
-
module Matchers
|
|
3
|
-
module SpecExtensions
|
|
4
|
-
class HaveGempackage < SpecExtensionsBase
|
|
5
|
-
def initialize(expected,extra="")
|
|
6
|
-
@expected = expected
|
|
7
|
-
@extra = extra
|
|
8
|
-
end
|
|
9
|
-
def matches?(target)
|
|
10
|
-
@target = target
|
|
11
|
-
is_present?
|
|
12
|
-
end
|
|
13
|
-
def failure_message
|
|
14
|
-
"expected #{@target.inspect} to have gempackage #{@expected}"
|
|
15
|
-
end
|
|
16
|
-
def negative_failure_message
|
|
17
|
-
"expected #{@target.inspect} not to have gempackage #{@expected}"
|
|
18
|
-
end
|
|
19
|
-
def type
|
|
20
|
-
"exec"
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
def have_gempackage(name, extra="")
|
|
25
|
-
SpecExtensions::HaveGempackage.new(name, extra)
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
end
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
module Spec
|
|
2
|
-
module Matchers
|
|
3
|
-
module SpecExtensions
|
|
4
|
-
class HaveGit < SpecExtensionsBase
|
|
5
|
-
def initialize(expected,extra="")
|
|
6
|
-
@expected = expected
|
|
7
|
-
@extra = extra
|
|
8
|
-
end
|
|
9
|
-
def matches?(target)
|
|
10
|
-
@target = target
|
|
11
|
-
is_present?
|
|
12
|
-
end
|
|
13
|
-
def failure_message
|
|
14
|
-
"expected #{@target.inspect} to have git #{@expected}"
|
|
15
|
-
end
|
|
16
|
-
def negative_failure_message
|
|
17
|
-
"expected #{@target.inspect} not to have git #{@expected}"
|
|
18
|
-
end
|
|
19
|
-
def type
|
|
20
|
-
"git"
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
def have_git(name, extra="")
|
|
25
|
-
SpecExtensions::HaveGit.new(name, extra)
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
end
|