cloud-toaster 1.1.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.
- checksums.yaml +15 -0
- data/LICENSE +202 -0
- data/README.md +54 -0
- data/Rakefile +51 -0
- data/VERSION +1 -0
- data/bin/strace-4.8_patched/strace-i686 +0 -0
- data/bin/strace-4.8_patched/strace-x86_64 +0 -0
- data/bin/toaster +74 -0
- data/chef/cookbooks/chef-solo-search/CHANGELOG +16 -0
- data/chef/cookbooks/chef-solo-search/Gemfile +8 -0
- data/chef/cookbooks/chef-solo-search/LICENSE +202 -0
- data/chef/cookbooks/chef-solo-search/NOTICE +18 -0
- data/chef/cookbooks/chef-solo-search/README.md +143 -0
- data/chef/cookbooks/chef-solo-search/Rakefile +10 -0
- data/chef/cookbooks/chef-solo-search/libraries/search/overrides.rb +100 -0
- data/chef/cookbooks/chef-solo-search/libraries/search/parser.rb +222 -0
- data/chef/cookbooks/chef-solo-search/libraries/search.rb +75 -0
- data/chef/cookbooks/chef-solo-search/libraries/vendor/chef/solr_query/lucene.treetop +150 -0
- data/chef/cookbooks/chef-solo-search/libraries/vendor/chef/solr_query/lucene_nodes.rb +285 -0
- data/chef/cookbooks/chef-solo-search/libraries/vendor/chef/solr_query/query_transform.rb +65 -0
- data/chef/cookbooks/chef-solo-search/metadata.rb +11 -0
- data/chef/cookbooks/chef-solo-search/recipes/default.rb +3 -0
- data/chef/cookbooks/chef-solo-search/tests/data/data_bags/node/alpha.json +10 -0
- data/chef/cookbooks/chef-solo-search/tests/data/data_bags/node/beta.json +10 -0
- data/chef/cookbooks/chef-solo-search/tests/data/data_bags/node/without_json_class.json +7 -0
- data/chef/cookbooks/chef-solo-search/tests/data/data_bags/users/jerry.json +8 -0
- data/chef/cookbooks/chef-solo-search/tests/data/data_bags/users/lea.json +10 -0
- data/chef/cookbooks/chef-solo-search/tests/data/data_bags/users/mike.json +13 -0
- data/chef/cookbooks/chef-solo-search/tests/data/data_bags/users/tom.json +10 -0
- data/chef/cookbooks/chef-solo-search/tests/gemfiles/Gemfile.10 +4 -0
- data/chef/cookbooks/chef-solo-search/tests/gemfiles/Gemfile.11 +5 -0
- data/chef/cookbooks/chef-solo-search/tests/test_data_bags.rb +45 -0
- data/chef/cookbooks/chef-solo-search/tests/test_search.rb +244 -0
- data/chef/cookbooks/lxc/attributes/create_lxc.rb +8 -0
- data/chef/cookbooks/lxc/attributes/general.rb +15 -0
- data/chef/cookbooks/lxc/attributes/init_bare_os.rb +15 -0
- data/chef/cookbooks/lxc/attributes/init_proto.rb +18 -0
- data/chef/cookbooks/lxc/attributes/install_ruby.rb +51 -0
- data/chef/cookbooks/lxc/attributes/mount_volume.rb +11 -0
- data/chef/cookbooks/lxc/attributes/setup_host.rb +9 -0
- data/chef/cookbooks/lxc/attributes/setup_proxy.rb +3 -0
- data/chef/cookbooks/lxc/attributes/start_lxc.rb +11 -0
- data/chef/cookbooks/lxc/attributes/stop_lxc.rb +3 -0
- data/chef/cookbooks/lxc/files/install.chef.sh +78 -0
- data/chef/cookbooks/lxc/metadata.json +6 -0
- data/chef/cookbooks/lxc/recipes/create_lxc.rb +106 -0
- data/chef/cookbooks/lxc/recipes/init_bare_os.rb +82 -0
- data/chef/cookbooks/lxc/recipes/init_proto.rb +417 -0
- data/chef/cookbooks/lxc/recipes/install_docker.rb +61 -0
- data/chef/cookbooks/lxc/recipes/install_ruby.rb +28 -0
- data/chef/cookbooks/lxc/recipes/mount_volume.rb +63 -0
- data/chef/cookbooks/lxc/recipes/setup_database.rb +22 -0
- data/chef/cookbooks/lxc/recipes/setup_host.rb +179 -0
- data/chef/cookbooks/lxc/recipes/setup_proxy.rb +157 -0
- data/chef/cookbooks/lxc/recipes/start_lxc.rb +180 -0
- data/chef/cookbooks/lxc/recipes/stop_lxc.rb +86 -0
- data/chef/cookbooks/mysql/CHANGELOG.md +391 -0
- data/chef/cookbooks/mysql/README.md +211 -0
- data/chef/cookbooks/mysql/attributes/default.rb +22 -0
- data/chef/cookbooks/mysql/libraries/helpers.rb +277 -0
- data/chef/cookbooks/mysql/libraries/matchers.rb +17 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_client.rb +10 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_client_debian.rb +37 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_client_fedora.rb +38 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_client_freebsd.rb +33 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_client_omnios.rb +41 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_client_rhel.rb +42 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_client_smartos.rb +33 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_client_suse.rb +37 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_client_ubuntu.rb +37 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_service.rb +10 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_service_debian.rb +193 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_service_fedora.rb +157 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_service_freebsd.rb +151 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_service_omnios.rb +232 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_service_rhel.rb +318 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_service_smartos.rb +216 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_service_suse.rb +170 -0
- data/chef/cookbooks/mysql/libraries/provider_mysql_service_ubuntu.rb +218 -0
- data/chef/cookbooks/mysql/libraries/resource_mysql_client.rb +11 -0
- data/chef/cookbooks/mysql/libraries/resource_mysql_service.rb +194 -0
- data/chef/cookbooks/mysql/metadata.json +40 -0
- data/chef/cookbooks/mysql/metadata.rb +20 -0
- data/chef/cookbooks/mysql/recipes/client.rb +22 -0
- data/chef/cookbooks/mysql/recipes/server.rb +33 -0
- data/chef/cookbooks/mysql/recipes/server_deprecated.rb +23 -0
- data/chef/cookbooks/mysql/templates/default/5.0/my.cnf.erb +38 -0
- data/chef/cookbooks/mysql/templates/default/5.1/my.cnf.erb +38 -0
- data/chef/cookbooks/mysql/templates/default/5.5/my.cnf.erb +38 -0
- data/chef/cookbooks/mysql/templates/default/5.6/my.cnf.erb +39 -0
- data/chef/cookbooks/mysql/templates/default/apparmor/usr.sbin.mysqld.erb +40 -0
- data/chef/cookbooks/mysql/templates/default/debian/debian.cnf.erb +12 -0
- data/chef/cookbooks/mysql/templates/default/debian/mysql-server.seed.erb +10 -0
- data/chef/cookbooks/mysql/templates/default/deprecated/my.cnf.erb +374 -0
- data/chef/cookbooks/mysql/templates/default/grants/grants.sql.erb +27 -0
- data/chef/cookbooks/mysql/templates/default/omnios/mysql.xml.erb +26 -0
- data/chef/cookbooks/mysql/templates/default/omnios/svc.method.mysqld.erb +29 -0
- data/chef/cookbooks/mysql/templates/default/smartos/mysql.xml.erb +32 -0
- data/chef/cookbooks/mysql/templates/default/smartos/svc.method.mysqld.erb +29 -0
- data/chef/cookbooks/openssl/README.md +37 -0
- data/chef/cookbooks/openssl/libraries/secure_password.rb +37 -0
- data/chef/cookbooks/openssl/metadata.json +30 -0
- data/chef/cookbooks/openssl/metadata.rb +8 -0
- data/chef/cookbooks/openssl/recipes/default.rb +19 -0
- data/chef/cookbooks/ssh/attributes/default.rb +8 -0
- data/chef/cookbooks/ssh/recipes/authorize_key.rb +20 -0
- data/chef/cookbooks/toaster/attributes/testing.rb +37 -0
- data/chef/cookbooks/toaster/libraries/default.rb +61 -0
- data/chef/cookbooks/toaster/recipes/post__cakephp__default.rb +27 -0
- data/chef/cookbooks/toaster/recipes/post__cube__default.rb +26 -0
- data/chef/cookbooks/toaster/recipes/post__drupal__default.rb +16 -0
- data/chef/cookbooks/toaster/recipes/post__icinga__default.rb +9 -0
- data/chef/cookbooks/toaster/recipes/post__node__default.rb +16 -0
- data/chef/cookbooks/toaster/recipes/post__virtualbox__default.rb +12 -0
- data/chef/cookbooks/toaster/recipes/post__wordpress__default.rb +12 -0
- data/chef/cookbooks/toaster/recipes/pre__aegir__default.rb +12 -0
- data/chef/cookbooks/toaster/recipes/pre__app__default.rb +3 -0
- data/chef/cookbooks/toaster/recipes/pre__cakephp__default.rb +24 -0
- data/chef/cookbooks/toaster/recipes/pre__cube__default.rb +9 -0
- data/chef/cookbooks/toaster/recipes/pre__disco__default.rb +21 -0
- data/chef/cookbooks/toaster/recipes/pre__drbd__default.rb +7 -0
- data/chef/cookbooks/toaster/recipes/pre__eaccelerator__default.rb +2 -0
- data/chef/cookbooks/toaster/recipes/pre__elasticsearch-head__default.rb +11 -0
- data/chef/cookbooks/toaster/recipes/pre__elasticsearch__default.rb +6 -0
- data/chef/cookbooks/toaster/recipes/pre__gitosis__default.rb +17 -0
- data/chef/cookbooks/toaster/recipes/pre__kafka__default.rb +3 -0
- data/chef/cookbooks/toaster/recipes/pre__munin__server.rb +6 -0
- data/chef/cookbooks/toaster/recipes/pre__mysql__server.rb +4 -0
- data/chef/cookbooks/toaster/recipes/pre__nagios__default.rb +3 -0
- data/chef/cookbooks/toaster/recipes/pre__netkernel__default.rb +24 -0
- data/chef/cookbooks/toaster/recipes/pre__php__default.rb +2 -0
- data/chef/cookbooks/toaster/recipes/pre__postgresql__server.rb +3 -0
- data/chef/cookbooks/toaster/recipes/pre__pxe_dust__default.rb +9 -0
- data/chef/cookbooks/toaster/recipes/pre__pxe_install_server__default.rb +6 -0
- data/chef/cookbooks/toaster/recipes/pre__riak__default.rb +40 -0
- data/chef/cookbooks/toaster/recipes/pre__sensu__default.rb +9 -0
- data/chef/cookbooks/toaster/recipes/pre__sol__default.rb +2 -0
- data/chef/cookbooks/toaster/recipes/pre__solr__default.rb +6 -0
- data/chef/cookbooks/toaster/recipes/pre__sonar__default.rb +2 -0
- data/chef/cookbooks/toaster/recipes/pre__storm__default.rb +3 -0
- data/chef/cookbooks/toaster/recipes/pre__vmware__tools.rb +4 -0
- data/chef/cookbooks/toaster/recipes/pre__wordpress__default.rb +17 -0
- data/chef/cookbooks/toaster/recipes/pre__xen__default.rb +7 -0
- data/chef/cookbooks/toaster/recipes/pre__znc__default.rb +7 -0
- data/chef/cookbooks/toaster/recipes/testing.rb +241 -0
- data/chef/cookbooks/toaster/recipes/testing_post.rb +36 -0
- data/chef/cookbooks/yum/CHANGELOG.md +212 -0
- data/chef/cookbooks/yum/README.md +268 -0
- data/chef/cookbooks/yum/attributes/main.rb +97 -0
- data/chef/cookbooks/yum/libraries/matchers.rb +27 -0
- data/chef/cookbooks/yum/metadata.json +34 -0
- data/chef/cookbooks/yum/metadata.rb +13 -0
- data/chef/cookbooks/yum/providers/globalconfig.rb +37 -0
- data/chef/cookbooks/yum/providers/repository.rb +85 -0
- data/chef/cookbooks/yum/recipes/default.rb +34 -0
- data/chef/cookbooks/yum/resources/globalconfig.rb +105 -0
- data/chef/cookbooks/yum/resources/repository.rb +63 -0
- data/chef/cookbooks/yum/templates/default/main.erb +251 -0
- data/chef/cookbooks/yum/templates/default/repo.erb +109 -0
- data/chef/cookbooks/yum-mysql-community/CHANGELOG.md +67 -0
- data/chef/cookbooks/yum-mysql-community/README.md +137 -0
- data/chef/cookbooks/yum-mysql-community/attributes/mysql-connectors-community.rb +31 -0
- data/chef/cookbooks/yum-mysql-community/attributes/mysql55-community.rb +29 -0
- data/chef/cookbooks/yum-mysql-community/attributes/mysql56-community.rb +31 -0
- data/chef/cookbooks/yum-mysql-community/files/default/mysql_pubkey.asc +33 -0
- data/chef/cookbooks/yum-mysql-community/metadata.json +30 -0
- data/chef/cookbooks/yum-mysql-community/metadata.rb +8 -0
- data/chef/cookbooks/yum-mysql-community/recipes/connectors.rb +48 -0
- data/chef/cookbooks/yum-mysql-community/recipes/mysql55.rb +48 -0
- data/chef/cookbooks/yum-mysql-community/recipes/mysql56.rb +48 -0
- data/config.json +34 -0
- data/lib/toaster/api.rb +447 -0
- data/lib/toaster/chef/chef_listener.rb +514 -0
- data/lib/toaster/chef/chef_node_inspector.rb +165 -0
- data/lib/toaster/chef/chef_util.rb +865 -0
- data/lib/toaster/chef/failsafe_resource_parser.rb +140 -0
- data/lib/toaster/chef/resource_inspector.rb +536 -0
- data/lib/toaster/db/cache.rb +98 -0
- data/lib/toaster/db/cached_db.rb +53 -0
- data/lib/toaster/db/cgi_session_cache.rb +209 -0
- data/lib/toaster/db/db.rb +98 -0
- data/lib/toaster/db/mysql.rb +18 -0
- data/lib/toaster/db/ram_cache.rb +203 -0
- data/lib/toaster/markup/jdom-1.1.jar +0 -0
- data/lib/toaster/markup/jdom-b7.jar +0 -0
- data/lib/toaster/markup/markup_util.rb +437 -0
- data/lib/toaster/markup/vmtools-utils-0.5.jar +0 -0
- data/lib/toaster/markup/xmldiff.sh +5 -0
- data/lib/toaster/model/additional_property.rb +11 -0
- data/lib/toaster/model/automation.rb +218 -0
- data/lib/toaster/model/automation_attribute.rb +13 -0
- data/lib/toaster/model/automation_run.rb +104 -0
- data/lib/toaster/model/ignore_property.rb +11 -0
- data/lib/toaster/model/key_value_pair.rb +59 -0
- data/lib/toaster/model/run_attribute.rb +17 -0
- data/lib/toaster/model/state.rb +17 -0
- data/lib/toaster/model/state_change.rb +79 -0
- data/lib/toaster/model/task.rb +292 -0
- data/lib/toaster/model/task_execution.rb +76 -0
- data/lib/toaster/model/task_parameter.rb +66 -0
- data/lib/toaster/model/user.rb +32 -0
- data/lib/toaster/ohai/_disabled_/network_ports.rb +81 -0
- data/lib/toaster/ohai/apache/apache.rb +48 -0
- data/lib/toaster/ohai/cron/cron.rb +32 -0
- data/lib/toaster/ohai/files/_meta.rb +30 -0
- data/lib/toaster/ohai/files/files.rb +20 -0
- data/lib/toaster/ohai/gems/gems.rb +19 -0
- data/lib/toaster/ohai/groups/groups.rb +20 -0
- data/lib/toaster/ohai/iptables/iptables.rb +48 -0
- data/lib/toaster/ohai/mounts/mounts.rb +26 -0
- data/lib/toaster/ohai/mysql/mysql.rb +31 -0
- data/lib/toaster/ohai/packages/_meta.rb +86 -0
- data/lib/toaster/ohai/packages/packages.rb +33 -0
- data/lib/toaster/ohai/ports/ports.rb +21 -0
- data/lib/toaster/ohai/routes/routes.rb +25 -0
- data/lib/toaster/ohai/services/services.rb +42 -0
- data/lib/toaster/ohai/users/users.rb +17 -0
- data/lib/toaster/state/convergence.rb +197 -0
- data/lib/toaster/state/idempotence.rb +192 -0
- data/lib/toaster/state/ptrace_util.rb +48 -0
- data/lib/toaster/state/state_node.rb +105 -0
- data/lib/toaster/state/state_transition.rb +38 -0
- data/lib/toaster/state/state_transition_graph.rb +701 -0
- data/lib/toaster/state/syscall_tracer.rb +317 -0
- data/lib/toaster/state/system_state.rb +349 -0
- data/lib/toaster/state/transition_edge.rb +65 -0
- data/lib/toaster/test/test_attribute.rb +19 -0
- data/lib/toaster/test/test_case.rb +175 -0
- data/lib/toaster/test/test_coverage.rb +147 -0
- data/lib/toaster/test/test_coverage_goal.rb +108 -0
- data/lib/toaster/test/test_generator.rb +246 -0
- data/lib/toaster/test/test_orchestrator.rb +165 -0
- data/lib/toaster/test/test_result.rb +73 -0
- data/lib/toaster/test/test_runner.rb +394 -0
- data/lib/toaster/test/test_suite.rb +151 -0
- data/lib/toaster/test_manager.rb +281 -0
- data/lib/toaster/toaster_app_service.rb +141 -0
- data/lib/toaster/util/blocking_map.rb +80 -0
- data/lib/toaster/util/combinatorial.rb +58 -0
- data/lib/toaster/util/config.rb +103 -0
- data/lib/toaster/util/docker.rb +71 -0
- data/lib/toaster/util/logging.rb +19 -0
- data/lib/toaster/util/lxc.rb +383 -0
- data/lib/toaster/util/mem_dump.rb +38 -0
- data/lib/toaster/util/proxy.rb +23 -0
- data/lib/toaster/util/timestamp.rb +131 -0
- data/lib/toaster/util/util.rb +437 -0
- data/lib/toaster/web_ui.rb +7 -0
- data/webapp/Gemfile +46 -0
- data/webapp/Gemfile.lock +237 -0
- data/webapp/Rakefile +6 -0
- data/webapp/app/assets/fonts/font.woff +0 -0
- data/webapp/app/assets/images/final_state.gif +0 -0
- data/webapp/app/assets/images/initial_state.gif +0 -0
- data/webapp/app/assets/images/loading.gif +0 -0
- data/webapp/app/assets/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/webapp/app/assets/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/webapp/app/assets/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/webapp/app/assets/images/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/webapp/app/assets/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/webapp/app/assets/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/webapp/app/assets/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/webapp/app/assets/images/ui-icons_222222_256x240.png +0 -0
- data/webapp/app/assets/javascripts/analysis.js.coffee +3 -0
- data/webapp/app/assets/javascripts/application.js +16 -0
- data/webapp/app/assets/javascripts/execs.js.coffee +3 -0
- data/webapp/app/assets/javascripts/graph.js +441 -0
- data/webapp/app/assets/javascripts/jquery-1.7.2.js +9404 -0
- data/webapp/app/assets/javascripts/jquery-ui-1.8.22.js +11529 -0
- data/webapp/app/assets/javascripts/jquery.cookie.js +96 -0
- data/webapp/app/assets/javascripts/jquery.hotkeys.js +99 -0
- data/webapp/app/assets/javascripts/jquery.jstree.js +4551 -0
- data/webapp/app/assets/javascripts/jsPlumb/jquery.jsPlumb-1.3.14-all-min.js +1 -0
- data/webapp/app/assets/javascripts/jstree.util.js +53 -0
- data/webapp/app/assets/javascripts/scripts.js.coffee +3 -0
- data/webapp/app/assets/javascripts/settings.js.coffee +3 -0
- data/webapp/app/assets/javascripts/test.js.coffee +3 -0
- data/webapp/app/assets/javascripts/util.js.coffee +3 -0
- data/webapp/app/assets/stylesheets/analysis.css.scss +3 -0
- data/webapp/app/assets/stylesheets/application.css +49 -0
- data/webapp/app/assets/stylesheets/execs.css.scss +3 -0
- data/webapp/app/assets/stylesheets/graph.css +159 -0
- data/webapp/app/assets/stylesheets/jquery-ui-1.8.6.custom.css +572 -0
- data/webapp/app/assets/stylesheets/layout.css +151 -0
- data/webapp/app/assets/stylesheets/menu.css +186 -0
- data/webapp/app/assets/stylesheets/reset.css +41 -0
- data/webapp/app/assets/stylesheets/scripts.css.scss +3 -0
- data/webapp/app/assets/stylesheets/settings.css.scss +3 -0
- data/webapp/app/assets/stylesheets/test.css.scss +3 -0
- data/webapp/app/assets/stylesheets/util.css.scss +3 -0
- data/webapp/app/assets/stylesheets/websymbols/websymbols-regular-webfont.eot +0 -0
- data/webapp/app/assets/stylesheets/websymbols/websymbols-regular-webfont.svg +1 -0
- data/webapp/app/assets/stylesheets/websymbols/websymbols-regular-webfont.ttf +0 -0
- data/webapp/app/assets/stylesheets/websymbols/websymbols-regular-webfont.woff +0 -0
- data/webapp/app/controllers/analysis_controller.rb +7 -0
- data/webapp/app/controllers/application_controller.rb +14 -0
- data/webapp/app/controllers/base_controller.rb +91 -0
- data/webapp/app/controllers/execs_controller.rb +59 -0
- data/webapp/app/controllers/graph_controller.rb +17 -0
- data/webapp/app/controllers/scripts_controller.rb +166 -0
- data/webapp/app/controllers/settings_controller.rb +10 -0
- data/webapp/app/controllers/test_controller.rb +127 -0
- data/webapp/app/controllers/util_controller.rb +6 -0
- data/webapp/app/helpers/analysis_helper.rb +2 -0
- data/webapp/app/helpers/application_helper.rb +2 -0
- data/webapp/app/helpers/automations_helper.rb +2 -0
- data/webapp/app/helpers/execs_helper.rb +2 -0
- data/webapp/app/helpers/scripts_helper.rb +2 -0
- data/webapp/app/helpers/settings_helper.rb +2 -0
- data/webapp/app/helpers/test_helper.rb +2 -0
- data/webapp/app/helpers/util_helper.rb +2 -0
- data/webapp/app/views/analysis/convergence.html.erb +156 -0
- data/webapp/app/views/analysis/idempotence.html.erb +2 -0
- data/webapp/app/views/execs/automation_runs.html.erb +98 -0
- data/webapp/app/views/execs/task_executions.html.erb +154 -0
- data/webapp/app/views/graph/graph_frame.html +101 -0
- data/webapp/app/views/layouts/application.html.erb +114 -0
- data/webapp/app/views/scripts/edit.html.erb +58 -0
- data/webapp/app/views/scripts/graph.html.erb +75 -0
- data/webapp/app/views/scripts/import_chef.html.erb +104 -0
- data/webapp/app/views/scripts/scripts.html.erb +116 -0
- data/webapp/app/views/scripts/tasks.html.erb +139 -0
- data/webapp/app/views/settings/containers.html.erb +161 -0
- data/webapp/app/views/settings/index.html.erb +51 -0
- data/webapp/app/views/test/cases.html.erb +2 -0
- data/webapp/app/views/test/gen.html.erb +229 -0
- data/webapp/app/views/test/suites.html.erb +205 -0
- data/webapp/app/views/util/chef.html.erb +53 -0
- data/webapp/bin/bundle +3 -0
- data/webapp/bin/rails +4 -0
- data/webapp/bin/rake +4 -0
- data/webapp/config/application.rb +28 -0
- data/webapp/config/boot.rb +18 -0
- data/webapp/config/database.yml +42 -0
- data/webapp/config/environment.rb +5 -0
- data/webapp/config/environments/development.rb +35 -0
- data/webapp/config/environments/production.rb +80 -0
- data/webapp/config/environments/test.rb +36 -0
- data/webapp/config/initializers/backtrace_silencers.rb +7 -0
- data/webapp/config/initializers/devise.rb +256 -0
- data/webapp/config/initializers/filter_parameter_logging.rb +4 -0
- data/webapp/config/initializers/inflections.rb +16 -0
- data/webapp/config/initializers/mime_types.rb +5 -0
- data/webapp/config/initializers/patches.rb +13 -0
- data/webapp/config/initializers/secret_token.rb +12 -0
- data/webapp/config/initializers/session_store.rb +6 -0
- data/webapp/config/initializers/wrap_parameters.rb +16 -0
- data/webapp/config/locales/devise.en.yml +59 -0
- data/webapp/config/locales/en.yml +23 -0
- data/webapp/config/routes.rb +113 -0
- data/webapp/config.ru +4 -0
- data/webapp/db/development.sqlite3 +0 -0
- data/webapp/db/migrate/20140624002037_devise_create_users.rb +42 -0
- data/webapp/db/migrate/20140628002058_create_all_tables.rb +159 -0
- data/webapp/db/schema.rb +162 -0
- data/webapp/db/seeds.rb +7 -0
- data/webapp/log/development.log +167823 -0
- data/webapp/public/404.html +58 -0
- data/webapp/public/422.html +58 -0
- data/webapp/public/500.html +57 -0
- data/webapp/public/favicon.ico +0 -0
- data/webapp/public/robots.txt +5 -0
- data/webapp/test/controllers/analysis_controller_test.rb +14 -0
- data/webapp/test/controllers/automations_controller_test.rb +49 -0
- data/webapp/test/controllers/execs_controller_test.rb +9 -0
- data/webapp/test/controllers/executions_controller_test.rb +9 -0
- data/webapp/test/controllers/runs_controller_test.rb +7 -0
- data/webapp/test/controllers/scripts_controller_test.rb +9 -0
- data/webapp/test/controllers/settings_controller_test.rb +9 -0
- data/webapp/test/controllers/test_controller_test.rb +14 -0
- data/webapp/test/controllers/util_controller_test.rb +9 -0
- data/webapp/test/fixtures/users.yml +11 -0
- data/webapp/test/helpers/analysis_helper_test.rb +4 -0
- data/webapp/test/helpers/automations_helper_test.rb +4 -0
- data/webapp/test/helpers/execs_helper_test.rb +4 -0
- data/webapp/test/helpers/executions_helper_test.rb +4 -0
- data/webapp/test/helpers/runs_helper_test.rb +4 -0
- data/webapp/test/helpers/scripts_helper_test.rb +4 -0
- data/webapp/test/helpers/settings_helper_test.rb +4 -0
- data/webapp/test/helpers/test_helper_test.rb +4 -0
- data/webapp/test/helpers/util_helper_test.rb +4 -0
- data/webapp/test/models/user_test.rb +7 -0
- data/webapp/test/test_helper.rb +15 -0
- data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/analysis.css.scssc +0 -0
- data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/automations.css.scssc +0 -0
- data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/execs.css.scssc +0 -0
- data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/executions.css.scssc +0 -0
- data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/scripts.css.scssc +0 -0
- data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/settings.css.scssc +0 -0
- data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/test.css.scssc +0 -0
- data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/util.css.scssc +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/06a1cdb3d5472dd126cffc18f548c342 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/0dc0562647e703ca0535da3b9fcad796 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/113f1c71cb0f2a786729477989122982 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/151a1c6b128721d8923ba0c380a2af17 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/1722fb8a6daad566c8a6d5ef31969459 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/1a05555c46560c6b246aa0a996679bc6 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/1cb7fb6aa8bd1c2b7df8f7c52442e345 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/1d76f803b0a83adc5ea7e7c848657967 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/200152f95fc464d69c425ed8fdc2fbcc +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/2049c8927ebd046c8a3291f81041d5f1 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/207907100aabd08a6767e39a95b364e3 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/249e2d4db815922fc72419c4a1407caf +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/3034e4c334b1ebed9433e33050555f18 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/316c88d859cc3666044e51b1dd89e872 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/347f43d816178c8ba11a28a771696924 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/36ab92a3b8d527ed1eff0944b5f1263d +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/3893b852ff196f05ff6ca8e38bb2237f +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/3c358bd5fa32d151c7aa44971dd9b96f +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/3ce88fad85146e0bed233f5419c24d29 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/3dabcb7c89677292e1e019a9bac446e5 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/4116fac01e6d379ede37af725a592477 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/42628e032b8f0b16a5ba01a1fcc7b6d7 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/437b258a98e8fe2c87fa8e24b7ce9abf +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/43e98ed206f05738ae305e7e1b09a840 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/468da8933ba442b88b2f4b0e40c2ac30 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/48ef3fa68e9084c7cfa84e525decc318 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/4b68dcc030691297629a7156361018dc +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/50368b1bd77c9130d821cbad89ab83ac +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/511a980807b8d16fc3fb839991041865 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/516a0973874a73d0d15feec9448f7466 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/569e21b0ca1a230c7880f8d7a8b1febf +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/5b5543d2ed5bed100f1739fc12ebf2c5 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/5c10dbffb918651dc0498579ba9a6853 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/5c366b5370316b3e9c03d1a58cb5eb44 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/5fcb9466e0d5cb0e31b35957fe2d3901 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/61da396fb86c5ecd844a2d83ac759b4b +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/624ba87170059068845a4651b3cd2c7c +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/6391f61b6121feda70da6d0a22520fdd +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/653a981829c12a52bd57b7918168a148 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/66479793d9e5683d9f7fa67522d1962d +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/69c589bd224ee0df5ab02e4568e0ab39 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/6dd7c564897b7e66eecbb180baeef2c6 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/6e2b92a4e6966cb78e63207bc7888391 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/70adb410f59a0edc5aea8c2b2ef8a441 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/72cbfd5bf33945bcce154f7a4feaf04d +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/740ee9d355ada8cf5e9beb620f2cd5cc +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/74770a22b5d1b0b3bc3527da83706f96 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/759bf97655af50852816720db7b59fcb +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/76e9c19246c684413a02af695fa2b0bc +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/7728beeace48ca12e336d2bce0158871 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/77f49730c7b689f75a2e174fbd3ace2a +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/78021a57030fd36cf82699aad9910b26 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/796b349b06da691fe5f069f9e3947fcb +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/79e7505c70697cc7d34d4a8351c3b840 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/7b2b7d9034fc7b77daf5da1436667e6f +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/7c2ea2ca2cdd89b062bf23f44e8f599c +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/7ea112af55e6df12cdff377052b71420 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/7f27632588dd316836b009a621c0176c +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/7fcef9f644290dea8d0e4bf13f6bb8e9 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/81c6bf67419a29257ed79f442c24907d +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/83656ce9260eb473c1654420e0180167 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/83e8bdddefc2dce069b56e6650135397 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/880c796f41e5d67ae68ed239acfc91e3 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/8c1c39dd537d2c9990fe9c70a5646b06 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/8d763042da5254015767385ce324b348 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/91e1ccbf65ff4d9b0f42b1159796bcf2 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/92cdfac7698b6bb68983cf317c1cedef +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/94cab8cbc120e152ce4c444492a3fc1d +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/96b918c3c041b6a089c8adc870fa3aaa +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/97cbe306627b432ab3bfb52416690d1d +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/98da83d396c0c00eb03937ecbc2e6bfa +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/9db04db20ec9c4a0f84ed01caa5e6e2b +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/9dc1c251f50c828fae95d6107619c53e +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/9e91711ab34bbf89ad1cfb4351027d36 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/9f587881f98b328b656e6456178418b5 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/9fc981560caba00621bb95d0974ad076 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/9fd4385f8fda99f3ddd3f133a89231d1 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/a32ab71649e3db15eca95bcc3a7588da +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/a497c976969bdbb1f69875358d39d3b5 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/b06058d455770c1d9db6b6670bc4bf4d +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/b3da405f1e68470ad6146a1322f2438c +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/b4ba5853663f6721d15942ce08dd76bf +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/b6f1534bcdbff92a16c85487f363235a +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/b9c57b9750f8af3551b1a5d9e27f0a92 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/bb5be6a0ee889a15214e2442aee8c6e1 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/bc80a81b2d67b5ad40f3c7a2bb6e6f22 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/bfaba27d5ce71d292f453659b0755511 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/bfac6cd2984fbd5e0d762389e3c37164 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/c17bec9e3b5db6d8385c3d6eb362e628 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/c1a9eceddc0a1e41eb2992e9204f71e6 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/c50cd87be040044504b5c3fde1047e24 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/c5907cfd07b24ad19b8c80e8af618a57 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/c8da5594caf845a183dd1c6cd45c5433 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/cbc6968ed49fa14db439a64dd0a46abc +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/cedf710ee090647b81c08675583eca62 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/cf1e3cebfad43293c3c470a5e437ebc9 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/d5a14f86bb4b422fdd8eb4722d966c9a +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/d66b9cdd3230f9e5354e495e17097c49 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/dfa0ed87d851222fe58ada385e3f037d +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/e1aa402390382db4d97b27cb094485fa +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/e4f1db35ef9d9fbbf53252a44e381eb8 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/e57eb6c1ad51fd8c13afc0e719a259b5 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/e7c37b542e914e392ec326190cea1aa2 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/e923d7e19c216d4a924831f3896e007a +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/e96a414a621483bbc89e73f11be5e7b4 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/eafcfc3d2561c18743c1b32f0f710c68 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/ecdd630f5466d45a2afa7515aaa5fc3b +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/ee60a0a35d60cff425373970547694bd +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/eee2c36b75709b0c3797c2a151fdd5d3 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/f104b66c0f89b453d0c8c73980fbab18 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/f26d1bc86590415685e9836ad75d1774 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/f4081e868eb565527099dba2c9d8c4de +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/f813030b97e30415ad276bbd1f7e1fb4 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/f8e3e28bc9640c25da58aea46c3ac4b3 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/f9169d0a8b70eaf95de52b3c6ad51105 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/f939450f7a481e3fbeb158b81b39c624 +0 -0
- data/webapp/tmp/cache/assets/development/sprockets/fce73296b8298ac4c74b3e95cde4dfdb +0 -0
- metadata +941 -0
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
# Cookbook Name:: toaster
|
|
4
|
+
# Recipe:: testing
|
|
5
|
+
#
|
|
6
|
+
# Author:: Waldemar Hummer
|
|
7
|
+
|
|
8
|
+
puts "INFO: Initializing toaster::testing environment"
|
|
9
|
+
|
|
10
|
+
# some (actually quite many) recipes rely on recipe openssl but apparently fail to load it by default
|
|
11
|
+
include_recipe "openssl"
|
|
12
|
+
class Chef::Recipe
|
|
13
|
+
begin
|
|
14
|
+
include ::Opscode::OpenSSL::Password
|
|
15
|
+
rescue Object => ex
|
|
16
|
+
# This does not work under new Ruby 2.0.0 which
|
|
17
|
+
# apparently ships with a new/updated version of openssl.
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
# uncomment this to test whether the openssl dependency has been successfully installed
|
|
21
|
+
#foo = secure_password
|
|
22
|
+
|
|
23
|
+
# make sure Chef knows we're running in solo mode
|
|
24
|
+
Chef::Config[:solo] = true
|
|
25
|
+
|
|
26
|
+
# make sure IBM Java does not get (re-)installed if recipe
|
|
27
|
+
# "java::default" gets included by any of the Opscode recipes
|
|
28
|
+
node.set[:java][:jvm] = '__ignore__' # attribte should _not_ have value "IBM"
|
|
29
|
+
# set default JAVA_HOME
|
|
30
|
+
node.set["java"]["java_home"] = "/opt/ibm/java-x86_64-60/jre" if !node["java"]["java_home"]
|
|
31
|
+
|
|
32
|
+
# create Chef data_bags directory, if it does not yet exist (fixes an
|
|
33
|
+
# issue where Chef was complaining that /var/chef/data_bags does not exist)
|
|
34
|
+
require 'fileutils'
|
|
35
|
+
databags_dir = "/var/chef/data_bags"
|
|
36
|
+
FileUtils.mkpath(databags_dir) if !File.directory?(databags_dir)
|
|
37
|
+
|
|
38
|
+
package "gcc-c++" do
|
|
39
|
+
action :install
|
|
40
|
+
not_if "which g++"
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
# dependencies required for gems
|
|
44
|
+
if platform_family?("debian")
|
|
45
|
+
apt_package "libxml2-dev"
|
|
46
|
+
apt_package "libxslt-dev"
|
|
47
|
+
apt_package "nmap" do
|
|
48
|
+
not_if "which nmap"
|
|
49
|
+
end
|
|
50
|
+
elsif platform_family?("fedora") || platform_family?("linux")
|
|
51
|
+
yum_package "libxml2-devel"
|
|
52
|
+
yum_package "libxslt-devel"
|
|
53
|
+
yum_package "nmap" do
|
|
54
|
+
not_if "which nmap"
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
$installed_gems = `gem list --local`.strip
|
|
61
|
+
|
|
62
|
+
all_gems_installed = true
|
|
63
|
+
|
|
64
|
+
[
|
|
65
|
+
"ohai", # used as a framework to capture system state
|
|
66
|
+
"activesupport",
|
|
67
|
+
"bson", # JSON like datastructures
|
|
68
|
+
"bson_ext", # native JSON extension
|
|
69
|
+
"sexp_processor", # required by gem 'ruby_parser'
|
|
70
|
+
"ruby_parser",
|
|
71
|
+
"rails", # provides some utility methods
|
|
72
|
+
"rspec", # unit tests
|
|
73
|
+
"open4", # allows to read stdout from a forked process, line by line
|
|
74
|
+
"jsonpath", # select sub-parts of a state property JSON document
|
|
75
|
+
"hashdiff", # compute state property changes
|
|
76
|
+
"tidy", # tidy XML support. Note: gem "tidy" is not compatible with some Ruby versions
|
|
77
|
+
"tidy-ext", # XML tidy parsing
|
|
78
|
+
"json", # JSON support
|
|
79
|
+
].uniq.each do |pkg|
|
|
80
|
+
|
|
81
|
+
if node['toaster']['testing_mode'] && !$installed_gems.match(pkg)
|
|
82
|
+
all_gems_installed = false
|
|
83
|
+
r = gem_package pkg do
|
|
84
|
+
action :install
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
bash "install_toaster_gem" do
|
|
92
|
+
require 'toaster/util/config'
|
|
93
|
+
code <<-EOH
|
|
94
|
+
gem install --no-ri --no-rdoc cloud-toaster
|
|
95
|
+
EOH
|
|
96
|
+
not_if "which toaster"
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
# start instrumentation of Chef environment
|
|
100
|
+
|
|
101
|
+
$status_of_parsing_postprocessing_scripts = "off"
|
|
102
|
+
$postprocessing_scripts = []
|
|
103
|
+
$postprocessing_scripts_by_name = {}
|
|
104
|
+
|
|
105
|
+
# Add code directories to Ruby LOAD_PATH.
|
|
106
|
+
code_dir = File.join(__FILE__, "..","..","..","..", "lib")
|
|
107
|
+
$:.unshift(code_dir)
|
|
108
|
+
if node['toaster']['additional_load_paths'].kind_of?(Array)
|
|
109
|
+
node['toaster']['additional_load_paths'].each do |path|
|
|
110
|
+
if File.exist?(path)
|
|
111
|
+
puts "INFO: Adding folder to $LOAD_PATH: #{path}"
|
|
112
|
+
$:.unshift(path)
|
|
113
|
+
end
|
|
114
|
+
end
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
if !File.directory?("#{node['toaster']['tmp_dir']}")
|
|
118
|
+
`mkdir "#{node['toaster']['tmp_dir']}"`
|
|
119
|
+
end
|
|
120
|
+
|
|
121
|
+
if !$installed_gems.match("aquarium")
|
|
122
|
+
`gem install aquarium`
|
|
123
|
+
begin
|
|
124
|
+
# the following two commands are used to load gems that were just installed
|
|
125
|
+
Gem.clear_paths
|
|
126
|
+
Gem.refresh
|
|
127
|
+
rescue => ex
|
|
128
|
+
puts "Unable to refresh Gem package list: #{ex}"
|
|
129
|
+
end
|
|
130
|
+
end
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
$last_toaster_resource_name = "toaster_init_chef_listener"
|
|
134
|
+
ruby_block $last_toaster_resource_name do
|
|
135
|
+
block do
|
|
136
|
+
|
|
137
|
+
require 'rubygems'
|
|
138
|
+
begin
|
|
139
|
+
# the following two commands are used to load gems that were actually installed
|
|
140
|
+
# within this Chef run and are hence not yet available in this running instance.
|
|
141
|
+
Gem.clear_paths
|
|
142
|
+
Gem.refresh
|
|
143
|
+
rescue => ex
|
|
144
|
+
puts "Unable to refresh Gem package list: #{ex}"
|
|
145
|
+
end
|
|
146
|
+
require 'aquarium'
|
|
147
|
+
require 'toaster/test_manager'
|
|
148
|
+
require 'toaster/chef/chef_listener'
|
|
149
|
+
|
|
150
|
+
begin
|
|
151
|
+
db_type = node['toaster']['db_type']
|
|
152
|
+
mgr = Toaster::TestManager.new(
|
|
153
|
+
{
|
|
154
|
+
"db_type" => db_type,
|
|
155
|
+
db_type => node['toaster'][db_type],
|
|
156
|
+
"user_id" => node['user_id'],
|
|
157
|
+
"automation_uuid" => node['automation_uuid'],
|
|
158
|
+
"cookbook_paths" => node['toaster']['cookbook_paths'],
|
|
159
|
+
"skip_tasks" => node['toaster']['skip_tasks'],
|
|
160
|
+
"repeat_tasks" => node['toaster']['repeat_tasks'],
|
|
161
|
+
"task_execution_timeout" => node['toaster']['task_execution_timeout'],
|
|
162
|
+
"transfer_state_config" => node['toaster']['transfer_state_config'],
|
|
163
|
+
"task_exec_timeout_repeated" => node['toaster']['task_exec_timeout_repeated'],
|
|
164
|
+
"rest_timeout" => node['toaster']['rest_timeout'] ? node['toaster']['rest_timeout'] : 5*60
|
|
165
|
+
}
|
|
166
|
+
)
|
|
167
|
+
Toaster::ChefListener.add_listener(mgr)
|
|
168
|
+
rescue => ex
|
|
169
|
+
puts "ERROR: Unable to initialize ToASTER: #{ex} - #{ex.backtrace.join("\n")}"
|
|
170
|
+
end
|
|
171
|
+
$chef_instrumented = true
|
|
172
|
+
end
|
|
173
|
+
not_if do (node['toaster']['testing_mode'] != true) || ($chef_instrumented) end
|
|
174
|
+
end
|
|
175
|
+
|
|
176
|
+
require "aquarium"
|
|
177
|
+
Aquarium::Aspects::Aspect.new :around, :calls_to => /insert/,
|
|
178
|
+
:for_types => [Chef::ResourceCollection],
|
|
179
|
+
:method_options => :exclude_ancestor_methods do |jp, obj, *args|
|
|
180
|
+
begin
|
|
181
|
+
if jp.method_name.to_s == "insert"
|
|
182
|
+
name = args[0].to_s
|
|
183
|
+
if $status_of_parsing_postprocessing_scripts == "active"
|
|
184
|
+
contained = false
|
|
185
|
+
run_context.resource_collection.all_resources.each do |res|
|
|
186
|
+
if res.to_s == name
|
|
187
|
+
contained = true
|
|
188
|
+
break
|
|
189
|
+
end
|
|
190
|
+
end
|
|
191
|
+
if contained
|
|
192
|
+
puts "INFO: Injecting/replacing post-processing resource '#{name}'."
|
|
193
|
+
old_resource = run_context.resource_collection.find(name).target
|
|
194
|
+
new_resource = args[0]
|
|
195
|
+
new_resource.cookbook_name = old_resource.cookbook_name
|
|
196
|
+
new_resource.recipe_name = old_resource.recipe_name
|
|
197
|
+
new_resource.source_line = old_resource.source_line
|
|
198
|
+
run_context.resource_collection.find(name).target = new_resource
|
|
199
|
+
else
|
|
200
|
+
puts "INFO: Appending new post-processing resource '#{name}'."
|
|
201
|
+
run_context.resource_collection << Toaster::Proxy.new(args[0])
|
|
202
|
+
end
|
|
203
|
+
|
|
204
|
+
else $status_of_parsing_postprocessing_scripts == "off"
|
|
205
|
+
#puts "DEBUG: Wrapping resource #{jp.context.parameters[0]} with proxy object."
|
|
206
|
+
jp.context.parameters[0] = Toaster::Proxy.new(jp.context.parameters[0])
|
|
207
|
+
jp.proceed
|
|
208
|
+
end
|
|
209
|
+
else
|
|
210
|
+
begin
|
|
211
|
+
jp.proceed
|
|
212
|
+
rescue Object => exc
|
|
213
|
+
puts "Exception intercepting Chef::ResourceCollection.#{jp.method_name}: #{exc.class} - #{exc} - #{exc.backtrace.join("\n")}"
|
|
214
|
+
puts "Existing resources:"
|
|
215
|
+
run_context.resource_collection.all_resources.each do |res|
|
|
216
|
+
puts res
|
|
217
|
+
end
|
|
218
|
+
puts "--------"
|
|
219
|
+
end
|
|
220
|
+
end
|
|
221
|
+
end
|
|
222
|
+
end
|
|
223
|
+
|
|
224
|
+
class Chef::Recipe
|
|
225
|
+
include Toaster::ChefModules
|
|
226
|
+
end
|
|
227
|
+
# import "preprocessing" recipes. Lookup in the same directory as this file,
|
|
228
|
+
# name pattern "pre_<cookbook>_<recipe>.rb"
|
|
229
|
+
if node['toaster']['testing_mode']
|
|
230
|
+
recipe_dir = File.dirname(File.expand_path(__FILE__))
|
|
231
|
+
recipes_to_include = get_dynamic_recipes(recipe_dir, "pre")
|
|
232
|
+
recipes_to_include.each do |recipe_to_include|
|
|
233
|
+
puts "INFO: Including preparation recipe '#{recipe_to_include}'"
|
|
234
|
+
begin
|
|
235
|
+
include_recipe recipe_to_include
|
|
236
|
+
rescue Object => exc
|
|
237
|
+
puts "WARN: Exception in include_recipe: #{recipe_to_include}: #{exc.class} - #{exc} - #{exc.backtrace.join("\n")}"
|
|
238
|
+
end
|
|
239
|
+
end
|
|
240
|
+
end
|
|
241
|
+
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
# Cookbook Name:: toaster
|
|
4
|
+
# Recipe:: testing_post
|
|
5
|
+
#
|
|
6
|
+
# Author:: Waldemar Hummer
|
|
7
|
+
#
|
|
8
|
+
|
|
9
|
+
# import "postprocessing" recipes. Lookup in the same directory as this file,
|
|
10
|
+
# name pattern "post_<cookbook>_<recipe>.rb"
|
|
11
|
+
|
|
12
|
+
if node['toaster']['testing_mode']
|
|
13
|
+
|
|
14
|
+
index = -1
|
|
15
|
+
run_context.resource_collection.each_with_index do |res,idx|
|
|
16
|
+
if res.name == $last_toaster_resource_name
|
|
17
|
+
index = idx
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
class Chef::Recipe
|
|
22
|
+
include Toaster::ChefModules
|
|
23
|
+
end
|
|
24
|
+
resources_before = run_context.resource_collection.all_resources.size
|
|
25
|
+
recipe_dir = File.dirname(File.expand_path(__FILE__))
|
|
26
|
+
recipes_to_include = get_dynamic_recipes(recipe_dir, "post")
|
|
27
|
+
puts "INFO: Starting to include/parse post-processing recipes."
|
|
28
|
+
$status_of_parsing_postprocessing_scripts = "active"
|
|
29
|
+
recipes_to_include.each do |recipe_to_include|
|
|
30
|
+
puts "INFO: Including post-processing recipe '#{recipe_to_include}'"
|
|
31
|
+
include_recipe recipe_to_include
|
|
32
|
+
end
|
|
33
|
+
puts "INFO: Finished including/parsing post-processing recipes."
|
|
34
|
+
$status_of_parsing_postprocessing_scripts = "post"
|
|
35
|
+
|
|
36
|
+
end
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
yum Cookbook CHANGELOG
|
|
2
|
+
======================
|
|
3
|
+
This file is used to list changes made in each version of the yum cookbook.
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
v3.2.2 (2014-06-11)
|
|
7
|
+
-------------------
|
|
8
|
+
#77 - Parameter default to be Trueclass instead of "1"
|
|
9
|
+
#78 - add releasever parameter
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
v3.2.0 (2014-04-09)
|
|
13
|
+
-------------------
|
|
14
|
+
- [COOK-4510] - Adding username and password parameters to node attributes
|
|
15
|
+
- [COOK-4518] - Fix Scientific Linux distroverpkg
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
v3.1.6 (2014-03-27)
|
|
19
|
+
-------------------
|
|
20
|
+
- [COOK-4463] - support multiple GPG keys
|
|
21
|
+
- [COOK-4364] - yum_repository delete action fails
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
v3.1.4 (2014-03-12)
|
|
25
|
+
-------------------
|
|
26
|
+
- [COOK-4417] Expand test harness to encompass 32-bit boxes
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
v3.1.2 (2014-02-23)
|
|
30
|
+
-------------------
|
|
31
|
+
Fixing bugs around :delete action and cache clean
|
|
32
|
+
Fixing specs to cover :remove and :delete aliasing properly
|
|
33
|
+
Adding Travis-ci build matrix bits
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
v3.1.0 (2014-02-13)
|
|
37
|
+
-------------------
|
|
38
|
+
- Updating testing harness for integration testing on Travis-ci
|
|
39
|
+
- Adding TESTING.md and Guardfile
|
|
40
|
+
- PR #67 - Add skip_if_unvailable repository option
|
|
41
|
+
- PR #64 - Fix validation of 'metadata_expire' option to match documentation
|
|
42
|
+
- [COOK-3591] - removing node.name from repo template rendering
|
|
43
|
+
- [COOK-4275] - Enhancements to yum cookbook
|
|
44
|
+
- Adding full spec coverage
|
|
45
|
+
- Adding support for custom source template to yum_repository
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
v3.0.8 (2014-01-27)
|
|
49
|
+
-------------------
|
|
50
|
+
Fixing typo in default.rb. yum_globalconfig now passes proxy attribute correctly.
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
v3.0.6 (2014-01-27)
|
|
54
|
+
-------------------
|
|
55
|
+
Updating default.rb to consume node['yum']['main']['proxy']
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
v3.0.4 (2013-12-29)
|
|
59
|
+
-------------------
|
|
60
|
+
### Bug
|
|
61
|
+
- **[COOK-4156](https://tickets.opscode.com/browse/COOK-4156)** - yum cookbook creates a yum.conf with "cachefir" directive
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
v3.0.2
|
|
65
|
+
------
|
|
66
|
+
Updating globalconfig provider for Chef 10 compatability
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
v3.0.0
|
|
70
|
+
------
|
|
71
|
+
3.0.0
|
|
72
|
+
Major rewrite with breaking changes.
|
|
73
|
+
Recipes broken out into individual cookbooks
|
|
74
|
+
yum_key resource has been removed
|
|
75
|
+
yum_repository resource now takes gpgkey as a URL directly
|
|
76
|
+
yum_repository actions have been reduced to :create and :delete
|
|
77
|
+
'name' has been changed to repositoryid to avoid ambiguity
|
|
78
|
+
chefspec test coverage
|
|
79
|
+
gpgcheck is set to 'true' by default and must be explicitly disabled
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
v2.4.4
|
|
83
|
+
------
|
|
84
|
+
Reverting to Ruby 1.8 hash syntax.
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
v2.4.2
|
|
88
|
+
------
|
|
89
|
+
[COOK-3275] LWRP repository.rb :add method fails to create yum repo in
|
|
90
|
+
some cases which causes :update to fail Amazon rhel
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
v2.4.0
|
|
94
|
+
------
|
|
95
|
+
### Improvement
|
|
96
|
+
- [COOK-3025] - Allow per-repo proxy definitions
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
v2.3.4
|
|
100
|
+
------
|
|
101
|
+
### Improvement
|
|
102
|
+
- **[COOK-3689](https://tickets.opscode.com/browse/COOK-3689)** - Fix warnings about resource cloning
|
|
103
|
+
- **[COOK-3574](https://tickets.opscode.com/browse/COOK-3574)** - Add missing "description" field in metadata
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
v2.3.2
|
|
107
|
+
------
|
|
108
|
+
### Bug
|
|
109
|
+
- **[COOK-3145](https://tickets.opscode.com/browse/COOK-3145)** - Use correct download URL for epel `key_url`
|
|
110
|
+
|
|
111
|
+
v2.3.0
|
|
112
|
+
------
|
|
113
|
+
### New Feature
|
|
114
|
+
- [COOK-2924]: Yum should allow type setting in repo file
|
|
115
|
+
|
|
116
|
+
v2.2.4
|
|
117
|
+
------
|
|
118
|
+
### Bug
|
|
119
|
+
- [COOK-2360]: last commit to `yum_repository` changes previous behaviour
|
|
120
|
+
- [COOK-3015]: Yum cookbook test minitest to fail
|
|
121
|
+
|
|
122
|
+
v2.2.2
|
|
123
|
+
------
|
|
124
|
+
### Improvement
|
|
125
|
+
- [COOK-2741]: yum::elrepo
|
|
126
|
+
- [COOK-2946]: update tests, test kitchen support in yum cookbook
|
|
127
|
+
|
|
128
|
+
### Bug
|
|
129
|
+
- [COOK-2639]: Yum cookbook - epel - always assumes url is a mirror list
|
|
130
|
+
- [COOK-2663]: Yum should allow metadata_expire setting in repo file
|
|
131
|
+
- [COOK-2751]: Update yum.ius_release version to 1.0-11
|
|
132
|
+
|
|
133
|
+
v2.2.0
|
|
134
|
+
------
|
|
135
|
+
- [COOK-2189] - yum::ius failed on install (caused from rpm dependency)
|
|
136
|
+
- [COOK-2196] - Make includepkgs and exclude configurable for each repos
|
|
137
|
+
- [COOK-2244] - Allow configuring caching using attributes
|
|
138
|
+
- [COOK-2399] - yum cookbook LWRPs fail FoodCritic
|
|
139
|
+
- [COOK-2519] - Add priority option to Yum repo files
|
|
140
|
+
- [COOK-2593] - allow integer or string for yum priority
|
|
141
|
+
- [COOK-2643] - don't use conditional attribute for `yum_key` `remote_file`
|
|
142
|
+
|
|
143
|
+
v2.1.0
|
|
144
|
+
------
|
|
145
|
+
- [COOK-2045] - add remi repository recipe
|
|
146
|
+
- [COOK-2121] - add `:create` action to `yum_repository`
|
|
147
|
+
|
|
148
|
+
v2.0.6
|
|
149
|
+
------
|
|
150
|
+
- [COOK-2037] - minor style fixes
|
|
151
|
+
- [COOK-2038] - updated README
|
|
152
|
+
|
|
153
|
+
v2.0.4
|
|
154
|
+
------
|
|
155
|
+
- [COOK-1908] - unable to install repoforge on CentOS 6 32 bit
|
|
156
|
+
|
|
157
|
+
v2.0.2
|
|
158
|
+
------
|
|
159
|
+
- [COOK-1758] - Add default action for repository resource
|
|
160
|
+
|
|
161
|
+
v2.0.0
|
|
162
|
+
------
|
|
163
|
+
This version changes the behavior of the EPEL recipe (most commonly used in other Chef cookbooks) on Amazon, and removes an attribute, `node['yum']['epel_release']`. See the README for details.
|
|
164
|
+
|
|
165
|
+
- [COOK-1772] - Simplify management of EPEL with LWRP
|
|
166
|
+
|
|
167
|
+
v1.0.0
|
|
168
|
+
------
|
|
169
|
+
`mirrorlist` in the `yum_repository` LWRP must be set to the mirror list URI to use rather than setting it to true. See README.md.
|
|
170
|
+
|
|
171
|
+
- [COOK-1088] - use dl.fedoraproject.org for EPEL to prevent redirects
|
|
172
|
+
- [COOK-1653] - fix mirrorlist
|
|
173
|
+
- [COOK-1710] - support http proxy
|
|
174
|
+
- [COOK-1722] - update IUS version
|
|
175
|
+
|
|
176
|
+
v0.8.2
|
|
177
|
+
------
|
|
178
|
+
- [COOK-1521] - add :update action to `yum_repository`
|
|
179
|
+
|
|
180
|
+
v0.8.0
|
|
181
|
+
------
|
|
182
|
+
- [COOK-1204] - Make 'add' default action for yum_repository
|
|
183
|
+
- [COOK-1351] - option to not make the yum cache (via attribute)
|
|
184
|
+
- [COOK-1353] - x86_64 centos path fixes
|
|
185
|
+
- [COOK-1414] - recipe for repoforge
|
|
186
|
+
|
|
187
|
+
v0.6.2
|
|
188
|
+
------
|
|
189
|
+
- Updated README to remove git diff artifacts.
|
|
190
|
+
|
|
191
|
+
v0.6.0
|
|
192
|
+
------
|
|
193
|
+
- Default action for the yum_repository LWRP is now add.
|
|
194
|
+
- [COOK-1227] - clear Chefs internal cache after adding new yum repo
|
|
195
|
+
- [COOK-1262] - yum::epel should enable existing repo on Amazon Linux
|
|
196
|
+
- [COOK-1272], [COOK-1302] - update RPM file for CentOS / RHEL 6
|
|
197
|
+
- [COOK-1330] - update cookbook documentation on excludes for yum
|
|
198
|
+
- [COOK-1346] - retry remote_file for EPEL in case we get an FTP mirror
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
v0.5.2
|
|
202
|
+
------
|
|
203
|
+
- [COOK-825] - epel and ius `remote_file` should notify the `rpm_package` to install
|
|
204
|
+
|
|
205
|
+
v0.5.0
|
|
206
|
+
------
|
|
207
|
+
- [COOK-675] - add recipe for handling EPEL repository
|
|
208
|
+
- [COOK-722] - add recipe for handling IUS repository
|
|
209
|
+
|
|
210
|
+
v.0.1.2
|
|
211
|
+
------
|
|
212
|
+
- Remove yum update in default recipe, that doesn't update caches, it updates packages installed.
|