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.
Files changed (515) hide show
  1. checksums.yaml +15 -0
  2. data/LICENSE +202 -0
  3. data/README.md +54 -0
  4. data/Rakefile +51 -0
  5. data/VERSION +1 -0
  6. data/bin/strace-4.8_patched/strace-i686 +0 -0
  7. data/bin/strace-4.8_patched/strace-x86_64 +0 -0
  8. data/bin/toaster +74 -0
  9. data/chef/cookbooks/chef-solo-search/CHANGELOG +16 -0
  10. data/chef/cookbooks/chef-solo-search/Gemfile +8 -0
  11. data/chef/cookbooks/chef-solo-search/LICENSE +202 -0
  12. data/chef/cookbooks/chef-solo-search/NOTICE +18 -0
  13. data/chef/cookbooks/chef-solo-search/README.md +143 -0
  14. data/chef/cookbooks/chef-solo-search/Rakefile +10 -0
  15. data/chef/cookbooks/chef-solo-search/libraries/search/overrides.rb +100 -0
  16. data/chef/cookbooks/chef-solo-search/libraries/search/parser.rb +222 -0
  17. data/chef/cookbooks/chef-solo-search/libraries/search.rb +75 -0
  18. data/chef/cookbooks/chef-solo-search/libraries/vendor/chef/solr_query/lucene.treetop +150 -0
  19. data/chef/cookbooks/chef-solo-search/libraries/vendor/chef/solr_query/lucene_nodes.rb +285 -0
  20. data/chef/cookbooks/chef-solo-search/libraries/vendor/chef/solr_query/query_transform.rb +65 -0
  21. data/chef/cookbooks/chef-solo-search/metadata.rb +11 -0
  22. data/chef/cookbooks/chef-solo-search/recipes/default.rb +3 -0
  23. data/chef/cookbooks/chef-solo-search/tests/data/data_bags/node/alpha.json +10 -0
  24. data/chef/cookbooks/chef-solo-search/tests/data/data_bags/node/beta.json +10 -0
  25. data/chef/cookbooks/chef-solo-search/tests/data/data_bags/node/without_json_class.json +7 -0
  26. data/chef/cookbooks/chef-solo-search/tests/data/data_bags/users/jerry.json +8 -0
  27. data/chef/cookbooks/chef-solo-search/tests/data/data_bags/users/lea.json +10 -0
  28. data/chef/cookbooks/chef-solo-search/tests/data/data_bags/users/mike.json +13 -0
  29. data/chef/cookbooks/chef-solo-search/tests/data/data_bags/users/tom.json +10 -0
  30. data/chef/cookbooks/chef-solo-search/tests/gemfiles/Gemfile.10 +4 -0
  31. data/chef/cookbooks/chef-solo-search/tests/gemfiles/Gemfile.11 +5 -0
  32. data/chef/cookbooks/chef-solo-search/tests/test_data_bags.rb +45 -0
  33. data/chef/cookbooks/chef-solo-search/tests/test_search.rb +244 -0
  34. data/chef/cookbooks/lxc/attributes/create_lxc.rb +8 -0
  35. data/chef/cookbooks/lxc/attributes/general.rb +15 -0
  36. data/chef/cookbooks/lxc/attributes/init_bare_os.rb +15 -0
  37. data/chef/cookbooks/lxc/attributes/init_proto.rb +18 -0
  38. data/chef/cookbooks/lxc/attributes/install_ruby.rb +51 -0
  39. data/chef/cookbooks/lxc/attributes/mount_volume.rb +11 -0
  40. data/chef/cookbooks/lxc/attributes/setup_host.rb +9 -0
  41. data/chef/cookbooks/lxc/attributes/setup_proxy.rb +3 -0
  42. data/chef/cookbooks/lxc/attributes/start_lxc.rb +11 -0
  43. data/chef/cookbooks/lxc/attributes/stop_lxc.rb +3 -0
  44. data/chef/cookbooks/lxc/files/install.chef.sh +78 -0
  45. data/chef/cookbooks/lxc/metadata.json +6 -0
  46. data/chef/cookbooks/lxc/recipes/create_lxc.rb +106 -0
  47. data/chef/cookbooks/lxc/recipes/init_bare_os.rb +82 -0
  48. data/chef/cookbooks/lxc/recipes/init_proto.rb +417 -0
  49. data/chef/cookbooks/lxc/recipes/install_docker.rb +61 -0
  50. data/chef/cookbooks/lxc/recipes/install_ruby.rb +28 -0
  51. data/chef/cookbooks/lxc/recipes/mount_volume.rb +63 -0
  52. data/chef/cookbooks/lxc/recipes/setup_database.rb +22 -0
  53. data/chef/cookbooks/lxc/recipes/setup_host.rb +179 -0
  54. data/chef/cookbooks/lxc/recipes/setup_proxy.rb +157 -0
  55. data/chef/cookbooks/lxc/recipes/start_lxc.rb +180 -0
  56. data/chef/cookbooks/lxc/recipes/stop_lxc.rb +86 -0
  57. data/chef/cookbooks/mysql/CHANGELOG.md +391 -0
  58. data/chef/cookbooks/mysql/README.md +211 -0
  59. data/chef/cookbooks/mysql/attributes/default.rb +22 -0
  60. data/chef/cookbooks/mysql/libraries/helpers.rb +277 -0
  61. data/chef/cookbooks/mysql/libraries/matchers.rb +17 -0
  62. data/chef/cookbooks/mysql/libraries/provider_mysql_client.rb +10 -0
  63. data/chef/cookbooks/mysql/libraries/provider_mysql_client_debian.rb +37 -0
  64. data/chef/cookbooks/mysql/libraries/provider_mysql_client_fedora.rb +38 -0
  65. data/chef/cookbooks/mysql/libraries/provider_mysql_client_freebsd.rb +33 -0
  66. data/chef/cookbooks/mysql/libraries/provider_mysql_client_omnios.rb +41 -0
  67. data/chef/cookbooks/mysql/libraries/provider_mysql_client_rhel.rb +42 -0
  68. data/chef/cookbooks/mysql/libraries/provider_mysql_client_smartos.rb +33 -0
  69. data/chef/cookbooks/mysql/libraries/provider_mysql_client_suse.rb +37 -0
  70. data/chef/cookbooks/mysql/libraries/provider_mysql_client_ubuntu.rb +37 -0
  71. data/chef/cookbooks/mysql/libraries/provider_mysql_service.rb +10 -0
  72. data/chef/cookbooks/mysql/libraries/provider_mysql_service_debian.rb +193 -0
  73. data/chef/cookbooks/mysql/libraries/provider_mysql_service_fedora.rb +157 -0
  74. data/chef/cookbooks/mysql/libraries/provider_mysql_service_freebsd.rb +151 -0
  75. data/chef/cookbooks/mysql/libraries/provider_mysql_service_omnios.rb +232 -0
  76. data/chef/cookbooks/mysql/libraries/provider_mysql_service_rhel.rb +318 -0
  77. data/chef/cookbooks/mysql/libraries/provider_mysql_service_smartos.rb +216 -0
  78. data/chef/cookbooks/mysql/libraries/provider_mysql_service_suse.rb +170 -0
  79. data/chef/cookbooks/mysql/libraries/provider_mysql_service_ubuntu.rb +218 -0
  80. data/chef/cookbooks/mysql/libraries/resource_mysql_client.rb +11 -0
  81. data/chef/cookbooks/mysql/libraries/resource_mysql_service.rb +194 -0
  82. data/chef/cookbooks/mysql/metadata.json +40 -0
  83. data/chef/cookbooks/mysql/metadata.rb +20 -0
  84. data/chef/cookbooks/mysql/recipes/client.rb +22 -0
  85. data/chef/cookbooks/mysql/recipes/server.rb +33 -0
  86. data/chef/cookbooks/mysql/recipes/server_deprecated.rb +23 -0
  87. data/chef/cookbooks/mysql/templates/default/5.0/my.cnf.erb +38 -0
  88. data/chef/cookbooks/mysql/templates/default/5.1/my.cnf.erb +38 -0
  89. data/chef/cookbooks/mysql/templates/default/5.5/my.cnf.erb +38 -0
  90. data/chef/cookbooks/mysql/templates/default/5.6/my.cnf.erb +39 -0
  91. data/chef/cookbooks/mysql/templates/default/apparmor/usr.sbin.mysqld.erb +40 -0
  92. data/chef/cookbooks/mysql/templates/default/debian/debian.cnf.erb +12 -0
  93. data/chef/cookbooks/mysql/templates/default/debian/mysql-server.seed.erb +10 -0
  94. data/chef/cookbooks/mysql/templates/default/deprecated/my.cnf.erb +374 -0
  95. data/chef/cookbooks/mysql/templates/default/grants/grants.sql.erb +27 -0
  96. data/chef/cookbooks/mysql/templates/default/omnios/mysql.xml.erb +26 -0
  97. data/chef/cookbooks/mysql/templates/default/omnios/svc.method.mysqld.erb +29 -0
  98. data/chef/cookbooks/mysql/templates/default/smartos/mysql.xml.erb +32 -0
  99. data/chef/cookbooks/mysql/templates/default/smartos/svc.method.mysqld.erb +29 -0
  100. data/chef/cookbooks/openssl/README.md +37 -0
  101. data/chef/cookbooks/openssl/libraries/secure_password.rb +37 -0
  102. data/chef/cookbooks/openssl/metadata.json +30 -0
  103. data/chef/cookbooks/openssl/metadata.rb +8 -0
  104. data/chef/cookbooks/openssl/recipes/default.rb +19 -0
  105. data/chef/cookbooks/ssh/attributes/default.rb +8 -0
  106. data/chef/cookbooks/ssh/recipes/authorize_key.rb +20 -0
  107. data/chef/cookbooks/toaster/attributes/testing.rb +37 -0
  108. data/chef/cookbooks/toaster/libraries/default.rb +61 -0
  109. data/chef/cookbooks/toaster/recipes/post__cakephp__default.rb +27 -0
  110. data/chef/cookbooks/toaster/recipes/post__cube__default.rb +26 -0
  111. data/chef/cookbooks/toaster/recipes/post__drupal__default.rb +16 -0
  112. data/chef/cookbooks/toaster/recipes/post__icinga__default.rb +9 -0
  113. data/chef/cookbooks/toaster/recipes/post__node__default.rb +16 -0
  114. data/chef/cookbooks/toaster/recipes/post__virtualbox__default.rb +12 -0
  115. data/chef/cookbooks/toaster/recipes/post__wordpress__default.rb +12 -0
  116. data/chef/cookbooks/toaster/recipes/pre__aegir__default.rb +12 -0
  117. data/chef/cookbooks/toaster/recipes/pre__app__default.rb +3 -0
  118. data/chef/cookbooks/toaster/recipes/pre__cakephp__default.rb +24 -0
  119. data/chef/cookbooks/toaster/recipes/pre__cube__default.rb +9 -0
  120. data/chef/cookbooks/toaster/recipes/pre__disco__default.rb +21 -0
  121. data/chef/cookbooks/toaster/recipes/pre__drbd__default.rb +7 -0
  122. data/chef/cookbooks/toaster/recipes/pre__eaccelerator__default.rb +2 -0
  123. data/chef/cookbooks/toaster/recipes/pre__elasticsearch-head__default.rb +11 -0
  124. data/chef/cookbooks/toaster/recipes/pre__elasticsearch__default.rb +6 -0
  125. data/chef/cookbooks/toaster/recipes/pre__gitosis__default.rb +17 -0
  126. data/chef/cookbooks/toaster/recipes/pre__kafka__default.rb +3 -0
  127. data/chef/cookbooks/toaster/recipes/pre__munin__server.rb +6 -0
  128. data/chef/cookbooks/toaster/recipes/pre__mysql__server.rb +4 -0
  129. data/chef/cookbooks/toaster/recipes/pre__nagios__default.rb +3 -0
  130. data/chef/cookbooks/toaster/recipes/pre__netkernel__default.rb +24 -0
  131. data/chef/cookbooks/toaster/recipes/pre__php__default.rb +2 -0
  132. data/chef/cookbooks/toaster/recipes/pre__postgresql__server.rb +3 -0
  133. data/chef/cookbooks/toaster/recipes/pre__pxe_dust__default.rb +9 -0
  134. data/chef/cookbooks/toaster/recipes/pre__pxe_install_server__default.rb +6 -0
  135. data/chef/cookbooks/toaster/recipes/pre__riak__default.rb +40 -0
  136. data/chef/cookbooks/toaster/recipes/pre__sensu__default.rb +9 -0
  137. data/chef/cookbooks/toaster/recipes/pre__sol__default.rb +2 -0
  138. data/chef/cookbooks/toaster/recipes/pre__solr__default.rb +6 -0
  139. data/chef/cookbooks/toaster/recipes/pre__sonar__default.rb +2 -0
  140. data/chef/cookbooks/toaster/recipes/pre__storm__default.rb +3 -0
  141. data/chef/cookbooks/toaster/recipes/pre__vmware__tools.rb +4 -0
  142. data/chef/cookbooks/toaster/recipes/pre__wordpress__default.rb +17 -0
  143. data/chef/cookbooks/toaster/recipes/pre__xen__default.rb +7 -0
  144. data/chef/cookbooks/toaster/recipes/pre__znc__default.rb +7 -0
  145. data/chef/cookbooks/toaster/recipes/testing.rb +241 -0
  146. data/chef/cookbooks/toaster/recipes/testing_post.rb +36 -0
  147. data/chef/cookbooks/yum/CHANGELOG.md +212 -0
  148. data/chef/cookbooks/yum/README.md +268 -0
  149. data/chef/cookbooks/yum/attributes/main.rb +97 -0
  150. data/chef/cookbooks/yum/libraries/matchers.rb +27 -0
  151. data/chef/cookbooks/yum/metadata.json +34 -0
  152. data/chef/cookbooks/yum/metadata.rb +13 -0
  153. data/chef/cookbooks/yum/providers/globalconfig.rb +37 -0
  154. data/chef/cookbooks/yum/providers/repository.rb +85 -0
  155. data/chef/cookbooks/yum/recipes/default.rb +34 -0
  156. data/chef/cookbooks/yum/resources/globalconfig.rb +105 -0
  157. data/chef/cookbooks/yum/resources/repository.rb +63 -0
  158. data/chef/cookbooks/yum/templates/default/main.erb +251 -0
  159. data/chef/cookbooks/yum/templates/default/repo.erb +109 -0
  160. data/chef/cookbooks/yum-mysql-community/CHANGELOG.md +67 -0
  161. data/chef/cookbooks/yum-mysql-community/README.md +137 -0
  162. data/chef/cookbooks/yum-mysql-community/attributes/mysql-connectors-community.rb +31 -0
  163. data/chef/cookbooks/yum-mysql-community/attributes/mysql55-community.rb +29 -0
  164. data/chef/cookbooks/yum-mysql-community/attributes/mysql56-community.rb +31 -0
  165. data/chef/cookbooks/yum-mysql-community/files/default/mysql_pubkey.asc +33 -0
  166. data/chef/cookbooks/yum-mysql-community/metadata.json +30 -0
  167. data/chef/cookbooks/yum-mysql-community/metadata.rb +8 -0
  168. data/chef/cookbooks/yum-mysql-community/recipes/connectors.rb +48 -0
  169. data/chef/cookbooks/yum-mysql-community/recipes/mysql55.rb +48 -0
  170. data/chef/cookbooks/yum-mysql-community/recipes/mysql56.rb +48 -0
  171. data/config.json +34 -0
  172. data/lib/toaster/api.rb +447 -0
  173. data/lib/toaster/chef/chef_listener.rb +514 -0
  174. data/lib/toaster/chef/chef_node_inspector.rb +165 -0
  175. data/lib/toaster/chef/chef_util.rb +865 -0
  176. data/lib/toaster/chef/failsafe_resource_parser.rb +140 -0
  177. data/lib/toaster/chef/resource_inspector.rb +536 -0
  178. data/lib/toaster/db/cache.rb +98 -0
  179. data/lib/toaster/db/cached_db.rb +53 -0
  180. data/lib/toaster/db/cgi_session_cache.rb +209 -0
  181. data/lib/toaster/db/db.rb +98 -0
  182. data/lib/toaster/db/mysql.rb +18 -0
  183. data/lib/toaster/db/ram_cache.rb +203 -0
  184. data/lib/toaster/markup/jdom-1.1.jar +0 -0
  185. data/lib/toaster/markup/jdom-b7.jar +0 -0
  186. data/lib/toaster/markup/markup_util.rb +437 -0
  187. data/lib/toaster/markup/vmtools-utils-0.5.jar +0 -0
  188. data/lib/toaster/markup/xmldiff.sh +5 -0
  189. data/lib/toaster/model/additional_property.rb +11 -0
  190. data/lib/toaster/model/automation.rb +218 -0
  191. data/lib/toaster/model/automation_attribute.rb +13 -0
  192. data/lib/toaster/model/automation_run.rb +104 -0
  193. data/lib/toaster/model/ignore_property.rb +11 -0
  194. data/lib/toaster/model/key_value_pair.rb +59 -0
  195. data/lib/toaster/model/run_attribute.rb +17 -0
  196. data/lib/toaster/model/state.rb +17 -0
  197. data/lib/toaster/model/state_change.rb +79 -0
  198. data/lib/toaster/model/task.rb +292 -0
  199. data/lib/toaster/model/task_execution.rb +76 -0
  200. data/lib/toaster/model/task_parameter.rb +66 -0
  201. data/lib/toaster/model/user.rb +32 -0
  202. data/lib/toaster/ohai/_disabled_/network_ports.rb +81 -0
  203. data/lib/toaster/ohai/apache/apache.rb +48 -0
  204. data/lib/toaster/ohai/cron/cron.rb +32 -0
  205. data/lib/toaster/ohai/files/_meta.rb +30 -0
  206. data/lib/toaster/ohai/files/files.rb +20 -0
  207. data/lib/toaster/ohai/gems/gems.rb +19 -0
  208. data/lib/toaster/ohai/groups/groups.rb +20 -0
  209. data/lib/toaster/ohai/iptables/iptables.rb +48 -0
  210. data/lib/toaster/ohai/mounts/mounts.rb +26 -0
  211. data/lib/toaster/ohai/mysql/mysql.rb +31 -0
  212. data/lib/toaster/ohai/packages/_meta.rb +86 -0
  213. data/lib/toaster/ohai/packages/packages.rb +33 -0
  214. data/lib/toaster/ohai/ports/ports.rb +21 -0
  215. data/lib/toaster/ohai/routes/routes.rb +25 -0
  216. data/lib/toaster/ohai/services/services.rb +42 -0
  217. data/lib/toaster/ohai/users/users.rb +17 -0
  218. data/lib/toaster/state/convergence.rb +197 -0
  219. data/lib/toaster/state/idempotence.rb +192 -0
  220. data/lib/toaster/state/ptrace_util.rb +48 -0
  221. data/lib/toaster/state/state_node.rb +105 -0
  222. data/lib/toaster/state/state_transition.rb +38 -0
  223. data/lib/toaster/state/state_transition_graph.rb +701 -0
  224. data/lib/toaster/state/syscall_tracer.rb +317 -0
  225. data/lib/toaster/state/system_state.rb +349 -0
  226. data/lib/toaster/state/transition_edge.rb +65 -0
  227. data/lib/toaster/test/test_attribute.rb +19 -0
  228. data/lib/toaster/test/test_case.rb +175 -0
  229. data/lib/toaster/test/test_coverage.rb +147 -0
  230. data/lib/toaster/test/test_coverage_goal.rb +108 -0
  231. data/lib/toaster/test/test_generator.rb +246 -0
  232. data/lib/toaster/test/test_orchestrator.rb +165 -0
  233. data/lib/toaster/test/test_result.rb +73 -0
  234. data/lib/toaster/test/test_runner.rb +394 -0
  235. data/lib/toaster/test/test_suite.rb +151 -0
  236. data/lib/toaster/test_manager.rb +281 -0
  237. data/lib/toaster/toaster_app_service.rb +141 -0
  238. data/lib/toaster/util/blocking_map.rb +80 -0
  239. data/lib/toaster/util/combinatorial.rb +58 -0
  240. data/lib/toaster/util/config.rb +103 -0
  241. data/lib/toaster/util/docker.rb +71 -0
  242. data/lib/toaster/util/logging.rb +19 -0
  243. data/lib/toaster/util/lxc.rb +383 -0
  244. data/lib/toaster/util/mem_dump.rb +38 -0
  245. data/lib/toaster/util/proxy.rb +23 -0
  246. data/lib/toaster/util/timestamp.rb +131 -0
  247. data/lib/toaster/util/util.rb +437 -0
  248. data/lib/toaster/web_ui.rb +7 -0
  249. data/webapp/Gemfile +46 -0
  250. data/webapp/Gemfile.lock +237 -0
  251. data/webapp/Rakefile +6 -0
  252. data/webapp/app/assets/fonts/font.woff +0 -0
  253. data/webapp/app/assets/images/final_state.gif +0 -0
  254. data/webapp/app/assets/images/initial_state.gif +0 -0
  255. data/webapp/app/assets/images/loading.gif +0 -0
  256. data/webapp/app/assets/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  257. data/webapp/app/assets/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  258. data/webapp/app/assets/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  259. data/webapp/app/assets/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  260. data/webapp/app/assets/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  261. data/webapp/app/assets/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  262. data/webapp/app/assets/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  263. data/webapp/app/assets/images/ui-icons_222222_256x240.png +0 -0
  264. data/webapp/app/assets/javascripts/analysis.js.coffee +3 -0
  265. data/webapp/app/assets/javascripts/application.js +16 -0
  266. data/webapp/app/assets/javascripts/execs.js.coffee +3 -0
  267. data/webapp/app/assets/javascripts/graph.js +441 -0
  268. data/webapp/app/assets/javascripts/jquery-1.7.2.js +9404 -0
  269. data/webapp/app/assets/javascripts/jquery-ui-1.8.22.js +11529 -0
  270. data/webapp/app/assets/javascripts/jquery.cookie.js +96 -0
  271. data/webapp/app/assets/javascripts/jquery.hotkeys.js +99 -0
  272. data/webapp/app/assets/javascripts/jquery.jstree.js +4551 -0
  273. data/webapp/app/assets/javascripts/jsPlumb/jquery.jsPlumb-1.3.14-all-min.js +1 -0
  274. data/webapp/app/assets/javascripts/jstree.util.js +53 -0
  275. data/webapp/app/assets/javascripts/scripts.js.coffee +3 -0
  276. data/webapp/app/assets/javascripts/settings.js.coffee +3 -0
  277. data/webapp/app/assets/javascripts/test.js.coffee +3 -0
  278. data/webapp/app/assets/javascripts/util.js.coffee +3 -0
  279. data/webapp/app/assets/stylesheets/analysis.css.scss +3 -0
  280. data/webapp/app/assets/stylesheets/application.css +49 -0
  281. data/webapp/app/assets/stylesheets/execs.css.scss +3 -0
  282. data/webapp/app/assets/stylesheets/graph.css +159 -0
  283. data/webapp/app/assets/stylesheets/jquery-ui-1.8.6.custom.css +572 -0
  284. data/webapp/app/assets/stylesheets/layout.css +151 -0
  285. data/webapp/app/assets/stylesheets/menu.css +186 -0
  286. data/webapp/app/assets/stylesheets/reset.css +41 -0
  287. data/webapp/app/assets/stylesheets/scripts.css.scss +3 -0
  288. data/webapp/app/assets/stylesheets/settings.css.scss +3 -0
  289. data/webapp/app/assets/stylesheets/test.css.scss +3 -0
  290. data/webapp/app/assets/stylesheets/util.css.scss +3 -0
  291. data/webapp/app/assets/stylesheets/websymbols/websymbols-regular-webfont.eot +0 -0
  292. data/webapp/app/assets/stylesheets/websymbols/websymbols-regular-webfont.svg +1 -0
  293. data/webapp/app/assets/stylesheets/websymbols/websymbols-regular-webfont.ttf +0 -0
  294. data/webapp/app/assets/stylesheets/websymbols/websymbols-regular-webfont.woff +0 -0
  295. data/webapp/app/controllers/analysis_controller.rb +7 -0
  296. data/webapp/app/controllers/application_controller.rb +14 -0
  297. data/webapp/app/controllers/base_controller.rb +91 -0
  298. data/webapp/app/controllers/execs_controller.rb +59 -0
  299. data/webapp/app/controllers/graph_controller.rb +17 -0
  300. data/webapp/app/controllers/scripts_controller.rb +166 -0
  301. data/webapp/app/controllers/settings_controller.rb +10 -0
  302. data/webapp/app/controllers/test_controller.rb +127 -0
  303. data/webapp/app/controllers/util_controller.rb +6 -0
  304. data/webapp/app/helpers/analysis_helper.rb +2 -0
  305. data/webapp/app/helpers/application_helper.rb +2 -0
  306. data/webapp/app/helpers/automations_helper.rb +2 -0
  307. data/webapp/app/helpers/execs_helper.rb +2 -0
  308. data/webapp/app/helpers/scripts_helper.rb +2 -0
  309. data/webapp/app/helpers/settings_helper.rb +2 -0
  310. data/webapp/app/helpers/test_helper.rb +2 -0
  311. data/webapp/app/helpers/util_helper.rb +2 -0
  312. data/webapp/app/views/analysis/convergence.html.erb +156 -0
  313. data/webapp/app/views/analysis/idempotence.html.erb +2 -0
  314. data/webapp/app/views/execs/automation_runs.html.erb +98 -0
  315. data/webapp/app/views/execs/task_executions.html.erb +154 -0
  316. data/webapp/app/views/graph/graph_frame.html +101 -0
  317. data/webapp/app/views/layouts/application.html.erb +114 -0
  318. data/webapp/app/views/scripts/edit.html.erb +58 -0
  319. data/webapp/app/views/scripts/graph.html.erb +75 -0
  320. data/webapp/app/views/scripts/import_chef.html.erb +104 -0
  321. data/webapp/app/views/scripts/scripts.html.erb +116 -0
  322. data/webapp/app/views/scripts/tasks.html.erb +139 -0
  323. data/webapp/app/views/settings/containers.html.erb +161 -0
  324. data/webapp/app/views/settings/index.html.erb +51 -0
  325. data/webapp/app/views/test/cases.html.erb +2 -0
  326. data/webapp/app/views/test/gen.html.erb +229 -0
  327. data/webapp/app/views/test/suites.html.erb +205 -0
  328. data/webapp/app/views/util/chef.html.erb +53 -0
  329. data/webapp/bin/bundle +3 -0
  330. data/webapp/bin/rails +4 -0
  331. data/webapp/bin/rake +4 -0
  332. data/webapp/config/application.rb +28 -0
  333. data/webapp/config/boot.rb +18 -0
  334. data/webapp/config/database.yml +42 -0
  335. data/webapp/config/environment.rb +5 -0
  336. data/webapp/config/environments/development.rb +35 -0
  337. data/webapp/config/environments/production.rb +80 -0
  338. data/webapp/config/environments/test.rb +36 -0
  339. data/webapp/config/initializers/backtrace_silencers.rb +7 -0
  340. data/webapp/config/initializers/devise.rb +256 -0
  341. data/webapp/config/initializers/filter_parameter_logging.rb +4 -0
  342. data/webapp/config/initializers/inflections.rb +16 -0
  343. data/webapp/config/initializers/mime_types.rb +5 -0
  344. data/webapp/config/initializers/patches.rb +13 -0
  345. data/webapp/config/initializers/secret_token.rb +12 -0
  346. data/webapp/config/initializers/session_store.rb +6 -0
  347. data/webapp/config/initializers/wrap_parameters.rb +16 -0
  348. data/webapp/config/locales/devise.en.yml +59 -0
  349. data/webapp/config/locales/en.yml +23 -0
  350. data/webapp/config/routes.rb +113 -0
  351. data/webapp/config.ru +4 -0
  352. data/webapp/db/development.sqlite3 +0 -0
  353. data/webapp/db/migrate/20140624002037_devise_create_users.rb +42 -0
  354. data/webapp/db/migrate/20140628002058_create_all_tables.rb +159 -0
  355. data/webapp/db/schema.rb +162 -0
  356. data/webapp/db/seeds.rb +7 -0
  357. data/webapp/log/development.log +167823 -0
  358. data/webapp/public/404.html +58 -0
  359. data/webapp/public/422.html +58 -0
  360. data/webapp/public/500.html +57 -0
  361. data/webapp/public/favicon.ico +0 -0
  362. data/webapp/public/robots.txt +5 -0
  363. data/webapp/test/controllers/analysis_controller_test.rb +14 -0
  364. data/webapp/test/controllers/automations_controller_test.rb +49 -0
  365. data/webapp/test/controllers/execs_controller_test.rb +9 -0
  366. data/webapp/test/controllers/executions_controller_test.rb +9 -0
  367. data/webapp/test/controllers/runs_controller_test.rb +7 -0
  368. data/webapp/test/controllers/scripts_controller_test.rb +9 -0
  369. data/webapp/test/controllers/settings_controller_test.rb +9 -0
  370. data/webapp/test/controllers/test_controller_test.rb +14 -0
  371. data/webapp/test/controllers/util_controller_test.rb +9 -0
  372. data/webapp/test/fixtures/users.yml +11 -0
  373. data/webapp/test/helpers/analysis_helper_test.rb +4 -0
  374. data/webapp/test/helpers/automations_helper_test.rb +4 -0
  375. data/webapp/test/helpers/execs_helper_test.rb +4 -0
  376. data/webapp/test/helpers/executions_helper_test.rb +4 -0
  377. data/webapp/test/helpers/runs_helper_test.rb +4 -0
  378. data/webapp/test/helpers/scripts_helper_test.rb +4 -0
  379. data/webapp/test/helpers/settings_helper_test.rb +4 -0
  380. data/webapp/test/helpers/test_helper_test.rb +4 -0
  381. data/webapp/test/helpers/util_helper_test.rb +4 -0
  382. data/webapp/test/models/user_test.rb +7 -0
  383. data/webapp/test/test_helper.rb +15 -0
  384. data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/analysis.css.scssc +0 -0
  385. data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/automations.css.scssc +0 -0
  386. data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/execs.css.scssc +0 -0
  387. data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/executions.css.scssc +0 -0
  388. data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/scripts.css.scssc +0 -0
  389. data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/settings.css.scssc +0 -0
  390. data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/test.css.scssc +0 -0
  391. data/webapp/tmp/cache/assets/development/sass/1330a34c6b24ed44c0f194c03246f627289a985a/util.css.scssc +0 -0
  392. data/webapp/tmp/cache/assets/development/sprockets/06a1cdb3d5472dd126cffc18f548c342 +0 -0
  393. data/webapp/tmp/cache/assets/development/sprockets/0dc0562647e703ca0535da3b9fcad796 +0 -0
  394. data/webapp/tmp/cache/assets/development/sprockets/113f1c71cb0f2a786729477989122982 +0 -0
  395. data/webapp/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  396. data/webapp/tmp/cache/assets/development/sprockets/151a1c6b128721d8923ba0c380a2af17 +0 -0
  397. data/webapp/tmp/cache/assets/development/sprockets/1722fb8a6daad566c8a6d5ef31969459 +0 -0
  398. data/webapp/tmp/cache/assets/development/sprockets/1a05555c46560c6b246aa0a996679bc6 +0 -0
  399. data/webapp/tmp/cache/assets/development/sprockets/1cb7fb6aa8bd1c2b7df8f7c52442e345 +0 -0
  400. data/webapp/tmp/cache/assets/development/sprockets/1d76f803b0a83adc5ea7e7c848657967 +0 -0
  401. data/webapp/tmp/cache/assets/development/sprockets/200152f95fc464d69c425ed8fdc2fbcc +0 -0
  402. data/webapp/tmp/cache/assets/development/sprockets/2049c8927ebd046c8a3291f81041d5f1 +0 -0
  403. data/webapp/tmp/cache/assets/development/sprockets/207907100aabd08a6767e39a95b364e3 +0 -0
  404. data/webapp/tmp/cache/assets/development/sprockets/249e2d4db815922fc72419c4a1407caf +0 -0
  405. data/webapp/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  406. data/webapp/tmp/cache/assets/development/sprockets/3034e4c334b1ebed9433e33050555f18 +0 -0
  407. data/webapp/tmp/cache/assets/development/sprockets/316c88d859cc3666044e51b1dd89e872 +0 -0
  408. data/webapp/tmp/cache/assets/development/sprockets/347f43d816178c8ba11a28a771696924 +0 -0
  409. data/webapp/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  410. data/webapp/tmp/cache/assets/development/sprockets/36ab92a3b8d527ed1eff0944b5f1263d +0 -0
  411. data/webapp/tmp/cache/assets/development/sprockets/3893b852ff196f05ff6ca8e38bb2237f +0 -0
  412. data/webapp/tmp/cache/assets/development/sprockets/3c358bd5fa32d151c7aa44971dd9b96f +0 -0
  413. data/webapp/tmp/cache/assets/development/sprockets/3ce88fad85146e0bed233f5419c24d29 +0 -0
  414. data/webapp/tmp/cache/assets/development/sprockets/3dabcb7c89677292e1e019a9bac446e5 +0 -0
  415. data/webapp/tmp/cache/assets/development/sprockets/4116fac01e6d379ede37af725a592477 +0 -0
  416. data/webapp/tmp/cache/assets/development/sprockets/42628e032b8f0b16a5ba01a1fcc7b6d7 +0 -0
  417. data/webapp/tmp/cache/assets/development/sprockets/437b258a98e8fe2c87fa8e24b7ce9abf +0 -0
  418. data/webapp/tmp/cache/assets/development/sprockets/43e98ed206f05738ae305e7e1b09a840 +0 -0
  419. data/webapp/tmp/cache/assets/development/sprockets/468da8933ba442b88b2f4b0e40c2ac30 +0 -0
  420. data/webapp/tmp/cache/assets/development/sprockets/48ef3fa68e9084c7cfa84e525decc318 +0 -0
  421. data/webapp/tmp/cache/assets/development/sprockets/4b68dcc030691297629a7156361018dc +0 -0
  422. data/webapp/tmp/cache/assets/development/sprockets/50368b1bd77c9130d821cbad89ab83ac +0 -0
  423. data/webapp/tmp/cache/assets/development/sprockets/511a980807b8d16fc3fb839991041865 +0 -0
  424. data/webapp/tmp/cache/assets/development/sprockets/516a0973874a73d0d15feec9448f7466 +0 -0
  425. data/webapp/tmp/cache/assets/development/sprockets/569e21b0ca1a230c7880f8d7a8b1febf +0 -0
  426. data/webapp/tmp/cache/assets/development/sprockets/5b5543d2ed5bed100f1739fc12ebf2c5 +0 -0
  427. data/webapp/tmp/cache/assets/development/sprockets/5c10dbffb918651dc0498579ba9a6853 +0 -0
  428. data/webapp/tmp/cache/assets/development/sprockets/5c366b5370316b3e9c03d1a58cb5eb44 +0 -0
  429. data/webapp/tmp/cache/assets/development/sprockets/5fcb9466e0d5cb0e31b35957fe2d3901 +0 -0
  430. data/webapp/tmp/cache/assets/development/sprockets/61da396fb86c5ecd844a2d83ac759b4b +0 -0
  431. data/webapp/tmp/cache/assets/development/sprockets/624ba87170059068845a4651b3cd2c7c +0 -0
  432. data/webapp/tmp/cache/assets/development/sprockets/6391f61b6121feda70da6d0a22520fdd +0 -0
  433. data/webapp/tmp/cache/assets/development/sprockets/653a981829c12a52bd57b7918168a148 +0 -0
  434. data/webapp/tmp/cache/assets/development/sprockets/66479793d9e5683d9f7fa67522d1962d +0 -0
  435. data/webapp/tmp/cache/assets/development/sprockets/69c589bd224ee0df5ab02e4568e0ab39 +0 -0
  436. data/webapp/tmp/cache/assets/development/sprockets/6dd7c564897b7e66eecbb180baeef2c6 +0 -0
  437. data/webapp/tmp/cache/assets/development/sprockets/6e2b92a4e6966cb78e63207bc7888391 +0 -0
  438. data/webapp/tmp/cache/assets/development/sprockets/70adb410f59a0edc5aea8c2b2ef8a441 +0 -0
  439. data/webapp/tmp/cache/assets/development/sprockets/72cbfd5bf33945bcce154f7a4feaf04d +0 -0
  440. data/webapp/tmp/cache/assets/development/sprockets/740ee9d355ada8cf5e9beb620f2cd5cc +0 -0
  441. data/webapp/tmp/cache/assets/development/sprockets/74770a22b5d1b0b3bc3527da83706f96 +0 -0
  442. data/webapp/tmp/cache/assets/development/sprockets/759bf97655af50852816720db7b59fcb +0 -0
  443. data/webapp/tmp/cache/assets/development/sprockets/76e9c19246c684413a02af695fa2b0bc +0 -0
  444. data/webapp/tmp/cache/assets/development/sprockets/7728beeace48ca12e336d2bce0158871 +0 -0
  445. data/webapp/tmp/cache/assets/development/sprockets/77f49730c7b689f75a2e174fbd3ace2a +0 -0
  446. data/webapp/tmp/cache/assets/development/sprockets/78021a57030fd36cf82699aad9910b26 +0 -0
  447. data/webapp/tmp/cache/assets/development/sprockets/796b349b06da691fe5f069f9e3947fcb +0 -0
  448. data/webapp/tmp/cache/assets/development/sprockets/79e7505c70697cc7d34d4a8351c3b840 +0 -0
  449. data/webapp/tmp/cache/assets/development/sprockets/7b2b7d9034fc7b77daf5da1436667e6f +0 -0
  450. data/webapp/tmp/cache/assets/development/sprockets/7c2ea2ca2cdd89b062bf23f44e8f599c +0 -0
  451. data/webapp/tmp/cache/assets/development/sprockets/7ea112af55e6df12cdff377052b71420 +0 -0
  452. data/webapp/tmp/cache/assets/development/sprockets/7f27632588dd316836b009a621c0176c +0 -0
  453. data/webapp/tmp/cache/assets/development/sprockets/7fcef9f644290dea8d0e4bf13f6bb8e9 +0 -0
  454. data/webapp/tmp/cache/assets/development/sprockets/81c6bf67419a29257ed79f442c24907d +0 -0
  455. data/webapp/tmp/cache/assets/development/sprockets/83656ce9260eb473c1654420e0180167 +0 -0
  456. data/webapp/tmp/cache/assets/development/sprockets/83e8bdddefc2dce069b56e6650135397 +0 -0
  457. data/webapp/tmp/cache/assets/development/sprockets/880c796f41e5d67ae68ed239acfc91e3 +0 -0
  458. data/webapp/tmp/cache/assets/development/sprockets/8c1c39dd537d2c9990fe9c70a5646b06 +0 -0
  459. data/webapp/tmp/cache/assets/development/sprockets/8d763042da5254015767385ce324b348 +0 -0
  460. data/webapp/tmp/cache/assets/development/sprockets/91e1ccbf65ff4d9b0f42b1159796bcf2 +0 -0
  461. data/webapp/tmp/cache/assets/development/sprockets/92cdfac7698b6bb68983cf317c1cedef +0 -0
  462. data/webapp/tmp/cache/assets/development/sprockets/94cab8cbc120e152ce4c444492a3fc1d +0 -0
  463. data/webapp/tmp/cache/assets/development/sprockets/96b918c3c041b6a089c8adc870fa3aaa +0 -0
  464. data/webapp/tmp/cache/assets/development/sprockets/97cbe306627b432ab3bfb52416690d1d +0 -0
  465. data/webapp/tmp/cache/assets/development/sprockets/98da83d396c0c00eb03937ecbc2e6bfa +0 -0
  466. data/webapp/tmp/cache/assets/development/sprockets/9db04db20ec9c4a0f84ed01caa5e6e2b +0 -0
  467. data/webapp/tmp/cache/assets/development/sprockets/9dc1c251f50c828fae95d6107619c53e +0 -0
  468. data/webapp/tmp/cache/assets/development/sprockets/9e91711ab34bbf89ad1cfb4351027d36 +0 -0
  469. data/webapp/tmp/cache/assets/development/sprockets/9f587881f98b328b656e6456178418b5 +0 -0
  470. data/webapp/tmp/cache/assets/development/sprockets/9fc981560caba00621bb95d0974ad076 +0 -0
  471. data/webapp/tmp/cache/assets/development/sprockets/9fd4385f8fda99f3ddd3f133a89231d1 +0 -0
  472. data/webapp/tmp/cache/assets/development/sprockets/a32ab71649e3db15eca95bcc3a7588da +0 -0
  473. data/webapp/tmp/cache/assets/development/sprockets/a497c976969bdbb1f69875358d39d3b5 +0 -0
  474. data/webapp/tmp/cache/assets/development/sprockets/b06058d455770c1d9db6b6670bc4bf4d +0 -0
  475. data/webapp/tmp/cache/assets/development/sprockets/b3da405f1e68470ad6146a1322f2438c +0 -0
  476. data/webapp/tmp/cache/assets/development/sprockets/b4ba5853663f6721d15942ce08dd76bf +0 -0
  477. data/webapp/tmp/cache/assets/development/sprockets/b6f1534bcdbff92a16c85487f363235a +0 -0
  478. data/webapp/tmp/cache/assets/development/sprockets/b9c57b9750f8af3551b1a5d9e27f0a92 +0 -0
  479. data/webapp/tmp/cache/assets/development/sprockets/bb5be6a0ee889a15214e2442aee8c6e1 +0 -0
  480. data/webapp/tmp/cache/assets/development/sprockets/bc80a81b2d67b5ad40f3c7a2bb6e6f22 +0 -0
  481. data/webapp/tmp/cache/assets/development/sprockets/bfaba27d5ce71d292f453659b0755511 +0 -0
  482. data/webapp/tmp/cache/assets/development/sprockets/bfac6cd2984fbd5e0d762389e3c37164 +0 -0
  483. data/webapp/tmp/cache/assets/development/sprockets/c17bec9e3b5db6d8385c3d6eb362e628 +0 -0
  484. data/webapp/tmp/cache/assets/development/sprockets/c1a9eceddc0a1e41eb2992e9204f71e6 +0 -0
  485. data/webapp/tmp/cache/assets/development/sprockets/c50cd87be040044504b5c3fde1047e24 +0 -0
  486. data/webapp/tmp/cache/assets/development/sprockets/c5907cfd07b24ad19b8c80e8af618a57 +0 -0
  487. data/webapp/tmp/cache/assets/development/sprockets/c8da5594caf845a183dd1c6cd45c5433 +0 -0
  488. data/webapp/tmp/cache/assets/development/sprockets/cbc6968ed49fa14db439a64dd0a46abc +0 -0
  489. data/webapp/tmp/cache/assets/development/sprockets/cedf710ee090647b81c08675583eca62 +0 -0
  490. data/webapp/tmp/cache/assets/development/sprockets/cf1e3cebfad43293c3c470a5e437ebc9 +0 -0
  491. data/webapp/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  492. data/webapp/tmp/cache/assets/development/sprockets/d5a14f86bb4b422fdd8eb4722d966c9a +0 -0
  493. data/webapp/tmp/cache/assets/development/sprockets/d66b9cdd3230f9e5354e495e17097c49 +0 -0
  494. data/webapp/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  495. data/webapp/tmp/cache/assets/development/sprockets/dfa0ed87d851222fe58ada385e3f037d +0 -0
  496. data/webapp/tmp/cache/assets/development/sprockets/e1aa402390382db4d97b27cb094485fa +0 -0
  497. data/webapp/tmp/cache/assets/development/sprockets/e4f1db35ef9d9fbbf53252a44e381eb8 +0 -0
  498. data/webapp/tmp/cache/assets/development/sprockets/e57eb6c1ad51fd8c13afc0e719a259b5 +0 -0
  499. data/webapp/tmp/cache/assets/development/sprockets/e7c37b542e914e392ec326190cea1aa2 +0 -0
  500. data/webapp/tmp/cache/assets/development/sprockets/e923d7e19c216d4a924831f3896e007a +0 -0
  501. data/webapp/tmp/cache/assets/development/sprockets/e96a414a621483bbc89e73f11be5e7b4 +0 -0
  502. data/webapp/tmp/cache/assets/development/sprockets/eafcfc3d2561c18743c1b32f0f710c68 +0 -0
  503. data/webapp/tmp/cache/assets/development/sprockets/ecdd630f5466d45a2afa7515aaa5fc3b +0 -0
  504. data/webapp/tmp/cache/assets/development/sprockets/ee60a0a35d60cff425373970547694bd +0 -0
  505. data/webapp/tmp/cache/assets/development/sprockets/eee2c36b75709b0c3797c2a151fdd5d3 +0 -0
  506. data/webapp/tmp/cache/assets/development/sprockets/f104b66c0f89b453d0c8c73980fbab18 +0 -0
  507. data/webapp/tmp/cache/assets/development/sprockets/f26d1bc86590415685e9836ad75d1774 +0 -0
  508. data/webapp/tmp/cache/assets/development/sprockets/f4081e868eb565527099dba2c9d8c4de +0 -0
  509. data/webapp/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  510. data/webapp/tmp/cache/assets/development/sprockets/f813030b97e30415ad276bbd1f7e1fb4 +0 -0
  511. data/webapp/tmp/cache/assets/development/sprockets/f8e3e28bc9640c25da58aea46c3ac4b3 +0 -0
  512. data/webapp/tmp/cache/assets/development/sprockets/f9169d0a8b70eaf95de52b3c6ad51105 +0 -0
  513. data/webapp/tmp/cache/assets/development/sprockets/f939450f7a481e3fbeb158b81b39c624 +0 -0
  514. data/webapp/tmp/cache/assets/development/sprockets/fce73296b8298ac4c74b3e95cde4dfdb +0 -0
  515. metadata +941 -0
@@ -0,0 +1,374 @@
1
+ #
2
+ # Generated by Chef for <%= node['hostname'] %>
3
+ #
4
+ # Local modifications will be overwritten.
5
+ #
6
+ # The MySQL database server configuration file.
7
+ #
8
+ # You can copy this to one of:
9
+ # - "/etc/mysql/my.cnf" to set global options,
10
+ # - "~/.my.cnf" to set user-specific options.
11
+ #
12
+ # One can use all long options that the program supports.
13
+ # Run program with --help to get a list of available options and with
14
+ # --print-defaults to see which it would actually understand and use.
15
+ #
16
+ # For explanations see
17
+ # http://dev.mysql.com/doc/mysql/en/server-system-variables.html
18
+
19
+ # This will be passed to all mysql clients
20
+ # It has been reported that passwords should be enclosed with ticks/quotes
21
+ # escpecially if they contain "#" chars...
22
+ # Remember to edit /etc/mysql/debian.cnf when changing the socket location.
23
+ [client]
24
+ port = <%= node['mysql']['port'] %>
25
+ socket = <%= node['mysql']['server']['socket'] %>
26
+
27
+ # Here is entries for some specific programs
28
+ # The following values assume you have at least 32M ram
29
+
30
+ # This was formally known as [safe_mysqld]. Both versions are currently parsed.
31
+ [mysqld_safe]
32
+ socket = <%= node['mysql']['server']['socket'] %>
33
+ nice = <%= node['mysql']['nice'] %>
34
+
35
+ [mysqld]
36
+ #
37
+ # * Basic Settings
38
+ #
39
+
40
+ #
41
+ # * IMPORTANT
42
+ # If you make changes to these settings and your system uses apparmor, you may
43
+ # also need to also adjust /etc/apparmor.d/usr.sbin.mysqld.
44
+ #
45
+
46
+ user = mysql
47
+ pid-file = <%= node['mysql']['server']['pid_file'] %>
48
+ socket = <%= node['mysql']['server']['socket'] %>
49
+ port = <%= node['mysql']['port'] %>
50
+ basedir = <%= node['mysql']['server']['basedir'] %>
51
+ datadir = <%= node['mysql']['data_dir'] %>
52
+ tmpdir = <%= node['mysql']['server']['tmpdir'].join(':') %>
53
+ skip-external-locking
54
+ <%- if node['mysql']['tunable']['skip-name-resolve'] %>
55
+ skip-name-resolve
56
+ <%- end %>
57
+
58
+ # Charset and Collation
59
+ character-set-server = <%= node['mysql']['tunable']['character-set-server'] %>
60
+ collation-server = <%= node['mysql']['tunable']['collation-server'] %>
61
+ <%- if node['mysql']['tunable']['lower_case_table_names'] %>
62
+ lower_case_table_names = <%= node['mysql']['tunable']['lower_case_table_names'] %>
63
+ <%- end %>
64
+ <%- if node['mysql']['tunable']['event_scheduler'] %>
65
+ event_scheduler = <%= node['mysql']['tunable']['event_scheduler'] %>
66
+ <%- end %>
67
+ <%- if node['mysql']['tunable']['skip-character-set-client-handshake'] %>
68
+ skip-character-set-client-handshake
69
+ <%- end %>
70
+ <%- if (node['mysql']['tunable']['lc_messages_dir'] && node['mysql']['tunable']['lc_messages']) %>
71
+ lc_messages_dir = <%= node['mysql']['lc_messages_dir'] %>
72
+ lc_messages = <%= node['mysql']['lc_messages'] %>
73
+ <%- elsif (node['mysql']['tunable']['languages']) %>
74
+ languages = <%= node['mysql']['tunable']['languages'] %>
75
+ <%- end %>
76
+
77
+ #
78
+ # Instead of skip-networking the default is now to listen only on
79
+ # localhost which is more compatible and is not less secure.
80
+ bind-address = <%= node['mysql']['bind_address'] %>
81
+ #
82
+ # * Fine Tuning
83
+ #
84
+ key_buffer_size = <%= node['mysql']['tunable']['key_buffer_size'] %>
85
+ max_allowed_packet = <%= node['mysql']['tunable']['max_allowed_packet'] %>
86
+ thread_stack = <%= node['mysql']['tunable']['thread_stack'] %>
87
+ thread_cache_size = <%= node['mysql']['tunable']['thread_cache_size'] %>
88
+ sort_buffer_size = <%= node['mysql']['tunable']['sort_buffer_size'] %>
89
+ read_buffer_size = <%= node['mysql']['tunable']['read_buffer_size'] %>
90
+ read_rnd_buffer_size = <%= node['mysql']['tunable']['read_rnd_buffer_size'] %>
91
+ join_buffer_size = <%= node['mysql']['tunable']['join_buffer_size'] %>
92
+
93
+ auto-increment-increment = <%= node['mysql']['auto-increment-increment'] %>
94
+ auto-increment-offset = <%= node['mysql']['auto-increment-offset'] %>
95
+
96
+ # This replaces the startup script and checks MyISAM tables if needed
97
+ # the first time they are touched
98
+ myisam-recover = <%= node['mysql']['tunable']['myisam-recover'] %>
99
+ max_connections = <%= node['mysql']['tunable']['max_connections'] %>
100
+ max_connect_errors = <%= node['mysql']['tunable']['max_connect_errors'] %>
101
+ concurrent_insert = <%= node['mysql']['tunable']['concurrent_insert'] %>
102
+ connect_timeout = <%= node['mysql']['tunable']['connect_timeout'] %>
103
+ wait_timeout = <%= node['mysql']['tunable']['wait_timeout'] %>
104
+ net_read_timeout = <%= node['mysql']['tunable']['net_read_timeout'] %>
105
+ net_write_timeout = <%= node['mysql']['tunable']['net_write_timeout'] %>
106
+ back_log = <%= node['mysql']['tunable']['back_log'] %>
107
+ <%- if node['mysql']['version'].to_f >= 5.6 %>
108
+ table_open_cache = <%= node['mysql']['tunable']['table_open_cache'] %>
109
+ <%- else %>
110
+ table_cache = <%= node['mysql']['tunable']['table_open_cache'] %>
111
+ <%- end %>
112
+
113
+ tmp_table_size = <%= node['mysql']['tunable']['tmp_table_size'] %>
114
+ max_heap_table_size = <%= node['mysql']['tunable']['max_heap_table_size'] %>
115
+ bulk_insert_buffer_size = <%= node['mysql']['tunable']['bulk_insert_buffer_size'] %>
116
+ open-files-limit = <%= node['mysql']['tunable']['open-files-limit'] %>
117
+
118
+ # Default Table Settings
119
+ <%- if node['mysql']['tunable']['sql_mode'] %>
120
+ sql_mode = "<%= node['mysql']['tunable']['sql_mode'] %>"
121
+ <%- end %>
122
+
123
+ #
124
+ # * Query Cache Configuration
125
+ #
126
+ query_cache_limit = <%= node['mysql']['tunable']['query_cache_limit'] %>
127
+ query_cache_size = <%= node['mysql']['tunable']['query_cache_size'] %>
128
+ #
129
+ # * Logging
130
+ #
131
+ # Both location gets rotated by the cronjob.
132
+ # Be aware that this log type is a performance killer.
133
+ #log = /var/log/mysql/mysql.log
134
+ #
135
+ # Error logging goes to syslog. This is a Debian improvement :)
136
+ <%- if node['mysql']['tunable']['log_error'] %>
137
+ log_error = <%= node['mysql']['tunable']['log_error'] %>
138
+ <%- end %>
139
+ <%- if node['mysql']['tunable']['log_warnings'] %>
140
+ log_warnings
141
+ <%- end %>
142
+ #
143
+ # * Replication
144
+ #
145
+
146
+
147
+ #
148
+ # Here you can see queries with especially long duration
149
+ <%- if node['mysql']['server']['slow_query_log'] %>
150
+ slow_query_log = 1
151
+ slow_query_log_file = <%= node['mysql']['server']['slow_query_log_file'] %>
152
+ <%- else %>
153
+ log_slow_queries = <%= node['mysql']['server']['log_slow_queries'] %>
154
+ <%- end %>
155
+
156
+ long_query_time = <%= node['mysql']['tunable']['long_query_time'] %>
157
+ <%- if node['mysql']['tunable']['log_queries_not_using_index'] and node['mysql']['tunable']['slow_query_log'] %>
158
+ log-queries-not-using-indexes
159
+ <%- end %>
160
+ #
161
+ # The following can be used as easy to replay backup logs or for replication.
162
+ # note: if you are setting up a replication slave, see README.Debian about
163
+ # other settings you may need to change.
164
+ <%- if node['mysql']['tunable']['server_id'] %>
165
+ server-id = <%= node['mysql']['tunable']['server_id'] %>
166
+ <% end %>
167
+ <%- if node['mysql']['tunable']['log_bin'] %>
168
+ log_bin = <%= node['mysql']['tunable']['log_bin'] %>
169
+ binlog_format = <%= node['mysql']['tunable']['binlog_format'] %>
170
+ log_slave_updates = <%= node['mysql']['tunable']['log_slave_updates'] %>
171
+ <%- end %>
172
+ <%- if node['mysql']['tunable']['log_bin_trust_function_creators'] %>
173
+ log_bin_trust_function_creators
174
+ <%- end %>
175
+ expire_logs_days = <%= node['mysql']['tunable']['expire_logs_days'] %>
176
+ max_binlog_size = <%= node['mysql']['tunable']['max_binlog_size'] %>
177
+ binlog_cache_size = <%= node['mysql']['tunable']['binlog_cache_size'] %>
178
+ #binlog_do_db = include_database_name
179
+ #binlog_ignore_db = include_database_name
180
+ <%- if node['mysql']['tunable']['relay_log'] %>
181
+ relay_log = <%= node['mysql']['tunable']['relay_log'] %>
182
+ <%- end %>
183
+ <%- if node['mysql']['tunable']['relay_log_index'] %>
184
+ relay_log_index = <%= node['mysql']['tunable']['relay_log_index'] %>
185
+ <%- end %>
186
+
187
+ <%- if node['mysql']['tunable']['replicate_do_db'] %>
188
+ replicate_do_db = <%= node['mysql']['tunable']['replicate_do_db'] %>
189
+ <%- end %>
190
+ <%- if node['mysql']['tunable']['replicate_do_table'] %>
191
+ replicate_do_table = <%= node['mysql']['tunable']['replicate_do_table'] %>
192
+ <%- end %>
193
+ <%- if node['mysql']['tunable']['replicate_ignore_db'] %>
194
+ replicate_ignore_db = <%= node['mysql']['tunable']['replicate_ignore_db'] %>
195
+ <%- end %>
196
+ <%- if node['mysql']['tunable']['replicate_ignore_table'] %>
197
+ replicate_ignore_table = <%= node['mysql']['tunable']['replicate_ignore_table'] %>
198
+ <%- end %>
199
+ <%- if node['mysql']['tunable']['replicate_wild_do_table'] %>
200
+ replicate_wild_do_table = <%= node['mysql']['tunable']['replicate_wild_do_table'] %>
201
+ <%- end %>
202
+ <%- if node['mysql']['tunable']['replicate_wild_ignore_table'] %>
203
+ replicate_wild_ignore_table = <%= node['mysql']['tunable']['replicate_wild_ignore_table'] %>
204
+ <%- end %>
205
+
206
+
207
+ sync_binlog = <%= node['mysql']['tunable']['sync_binlog'] %>
208
+ <%- if node['mysql']['tunable']['skip_slave_start'] %>
209
+ skip_slave_start
210
+ <%- end %>
211
+ <%- if node['mysql']['tunable']['read_only'] %>
212
+ read_only = 1
213
+ <%- end %>
214
+
215
+ <%- if node['mysql']['tunable']['transaction-isolation'] %>
216
+ transaction-isolation = <%= node['mysql']['tunable']['transaction-isolation'] %>
217
+ <%- end %>
218
+
219
+ <%- if node['mysql']['tunable']['slave_compressed_protocol'] %>
220
+ slave_compressed_protocol = <%= node['mysql']['tunable']['slave_compressed_protocol'] %>
221
+ <%- end %>
222
+ #
223
+ # * InnoDB
224
+ #
225
+ # InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
226
+ # Read the manual for more InnoDB related options. There are many!
227
+ # You might want to disable InnoDB to shrink the mysqld process by circa 100MB.
228
+ #skip-innodb
229
+
230
+ <%- if node["mysql"]["version"].to_f >= 5.5 %>
231
+ innodb_write_io_threads = <%= node['mysql']['tunable']['innodb_write_io_threads'] %>
232
+ innodb_io_capacity = <%= node['mysql']['tunable']['innodb_io_capacity'] %>
233
+ innodb_read_io_threads = <%= node['mysql']['tunable']['innodb_read_io_threads'] %>
234
+ innodb_buffer_pool_instances = <%= node['mysql']['tunable']['innodb_buffer_pool_instances'] %>
235
+ <%- end %>
236
+
237
+ ## InnoDB Plugin Independent Settings
238
+ innodb_data_home_dir = <%= node['mysql']['data_dir'] %>
239
+ innodb_log_group_home_dir = <%= node['mysql']['server']['directories']['log_dir'] %>
240
+ <%- if node['mysql']['log_files_in_group'] %>
241
+ innodb_log_files_in_group = <%= node['mysql']['log_files_in_group'] %>
242
+ <%- end %>
243
+
244
+ <%- if node['mysql']['innodb_status_file'] %>
245
+ innodb_status_file
246
+ <%- end %>
247
+ <%- if node['mysql']['tunable']['innodb_file_per_table'] %>
248
+ innodb_file_per_table
249
+ <%- end %>
250
+ innodb_table_locks = <%= node['mysql']['tunable']['innodb_table_locks'] %>
251
+ innodb_lock_wait_timeout = <%= node['mysql']['tunable']['innodb_lock_wait_timeout'] %>
252
+ <%- if node['mysql']['tunable']['innodb_rollback_on_timeout'] %>
253
+ innodb_rollback_on_timeout
254
+ <%- end %>
255
+ innodb_thread_concurrency = <%= node['mysql']['tunable']['innodb_thread_concurrency'] %>
256
+ innodb_commit_concurrency = <%= node['mysql']['tunable']['innodb_commit_concurrency'] %>
257
+ innodb_support_xa = <%= node['mysql']['tunable']['innodb_support_xa'] %>
258
+ <%- if node['mysql']['tunable']['skip-innodb-doublewrite'] %>
259
+ skip-innodb-doublewrite
260
+ <%- end %>
261
+
262
+ innodb_buffer_pool_size = <%= node['mysql']['tunable']['innodb_buffer_pool_size'] %>
263
+ innodb_log_file_size = <%= node['mysql']['tunable']['innodb_log_file_size'] %>
264
+ innodb_additional_mem_pool_size = <%= node['mysql']['tunable']['innodb_additional_mem_pool_size'] %>
265
+ innodb_data_file_path = <%= node['mysql']['tunable']['innodb_data_file_path'] %>
266
+ innodb_flush_log_at_trx_commit = <%= node['mysql']['tunable']['innodb_flush_log_at_trx_commit'] %>
267
+ <%- if node['mysql']['tunable']['innodb_flush_method'] %>
268
+ innodb_flush_method = <%= node['mysql']['tunable']['innodb_flush_method'] %>
269
+ <%- end %>
270
+ innodb_log_buffer_size = <%= node['mysql']['tunable']['innodb_log_buffer_size'] %>
271
+ <%- if node['mysql']['tunable']['innodb_adaptive_flushing'] %>
272
+ innodb_adaptive_flushing = <%= node['mysql']['tunable']['innodb_adaptive_flushing'] %>
273
+ <%- end %>
274
+ <%- if node['mysql']['tunable']['innodb_adaptive_flushing_method'] %>
275
+ innodb_adaptive_flushing_method = <%= node['mysql']['tunable']['innodb_adaptive_flushing_method'] %>
276
+ <%- end %>
277
+ <%- if node['mysql']['tunable']['innodb_adaptive_checkpoint'] %>
278
+ innodb_adaptive_checkpoint = <%= node['mysql']['tunable']['innodb_adaptive_checkpoint'] %>
279
+ <%- end %>
280
+
281
+ <% if node['mysql']['server']['skip_federated'] %>
282
+ #
283
+ # * Federated
284
+ #
285
+ # The FEDERATED storage engine is disabled since 5.0.67 by default in the .cnf files
286
+ # shipped with MySQL distributions (my-huge.cnf, my-medium.cnf, and so forth).
287
+ #
288
+ skip-federated
289
+ <% end %>
290
+ #
291
+ # * Security Features
292
+ #
293
+ # Read the manual, too, if you want chroot!
294
+
295
+ <% if node['mysql']['security']['chroot'] -%>
296
+ chroot = <%= node['mysql']['security']['chroot'] %>
297
+ <% end %>
298
+
299
+ <% if node['mysql']['security']['safe_user_create'] -%>
300
+ safe-user-create = <%= node['mysql']['security']['safe_user_create'] %>
301
+ <% end %>
302
+
303
+ <% if node['mysql']['security']['secure_auth'] -%>
304
+ secure-auth = <%= node['mysql']['security']['secure_auth'] %>
305
+ <% end %>
306
+
307
+ <% if node['mysql']['security']['skip_symbolic_links'] -%>
308
+ skip-symbolic-links = <%= node['mysql']['security']['skip_symbolic_links'] %>
309
+ <% end %>
310
+
311
+ <% if node['mysql']['security']['secure_file_priv'] -%>
312
+ secure-file-priv = <%= node['mysql']['security']['secure_file_priv'] %>
313
+ <% end %>
314
+
315
+ <% if node['mysql']['security']['local_infile'] -%>
316
+ local-infile = <%= node['mysql']['security']['local_infile'] %>
317
+ <% end %>
318
+
319
+ <% if node['mysql']['security']['skip_show_database'] -%>
320
+ skip-show-database
321
+ <% end %>
322
+
323
+ # For generating SSL certificates I recommend the OpenSSL GUI "tinyca".
324
+ #
325
+ # ssl-ca=/etc/mysql/cacert.pem
326
+ # ssl-cert=/etc/mysql/server-cert.pem
327
+ # ssl-key=/etc/mysql/server-key.pem
328
+
329
+ [mysqldump]
330
+ quick
331
+ quote-names
332
+ max_allowed_packet = <%= node['mysql']['tunable']['max_allowed_packet'] %>
333
+
334
+ [mysql]
335
+ #no-auto-rehash # faster start of mysql but no tab completition
336
+
337
+ [myisamchk]
338
+ key_buffer = <%= node['mysql']['tunable']['max_allowed_packet'] %>
339
+
340
+ myisam_sort_buffer_size = <%= node['mysql']['tunable']['myisam_sort_buffer_size'] %>
341
+ myisam_max_sort_file_size = <%= node['mysql']['tunable']['myisam_max_sort_file_size'] %>
342
+ myisam_repair_threads = <%= node['mysql']['tunable']['myisam_repair_threads'] %>
343
+ myisam-recover = <%= node['mysql']['tunable']['myisam-recover'] %>
344
+
345
+ #
346
+ # * NDB Cluster
347
+ #
348
+ # See /usr/share/doc/mysql-server-*/README.Debian for more information.
349
+ #
350
+ # The following configuration is read by the NDB Data Nodes (ndbd processes)
351
+ # not from the NDB Management Nodes (ndb_mgmd processes).
352
+ #
353
+ # [MYSQL_CLUSTER]
354
+ # ndb-connectstring=127.0.0.1
355
+
356
+ <% case node['platform_family'] -%>
357
+ <% when "rhel", "fedora", "suse" -%>
358
+ #
359
+ # * BerkeleyDB
360
+ #
361
+ # Using BerkeleyDB is now discouraged as its support will cease in 5.1.12.
362
+ skip-bdb
363
+ # Default to using old password format for compatibility with mysql 3.x
364
+ # clients (those using the mysqlclient10 compatibility package).
365
+ old_passwords = <%= node['mysql']['old_passwords'] %>
366
+ <% end -%>
367
+
368
+ <% if node['mysql']['server']['directories']['confd_dir'] -%>
369
+ #
370
+ # * IMPORTANT: Additional settings that can override those from this file!
371
+ # The files must end with '.cnf', otherwise they'll be ignored.
372
+ #
373
+ !includedir <%= node['mysql']['server']['directories']['confd_dir'] %>/
374
+ <% end -%>
@@ -0,0 +1,27 @@
1
+ <% case node['platform_family'] -%>
2
+ <% when 'debian' -%>
3
+ GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'debian-sys-maint'@'localhost' IDENTIFIED BY '<%= @config.server_debian_password %>' WITH GRANT OPTION;
4
+ <% end %>
5
+ <% if @config.server_repl_password -%>
6
+ GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%' identified by '<%= @config.server_repl_password %>';
7
+ <% end %>
8
+ <% if @config.allow_remote_root -%>
9
+ GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY '<%= @config.server_root_password %>' WITH GRANT OPTION;
10
+ <% else %>
11
+ DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1');
12
+ UPDATE mysql.user SET Password=PASSWORD('<%= @config.server_root_password %>') WHERE User='root';
13
+ <% end %>
14
+ <% if @config.remove_anonymous_users -%>
15
+ DELETE FROM mysql.user WHERE User='';
16
+ <% end %>
17
+ <% if @config.remove_test_database -%>
18
+ DROP DATABASE IF EXISTS test;
19
+ DELETE FROM mysql.db WHERE Db='test' OR Db='test\_%';
20
+ <% end %>
21
+ SET PASSWORD FOR 'root'@'localhost' = PASSWORD('<%= @config.server_root_password %>');
22
+ SET PASSWORD FOR 'root'@'127.0.0.1' = PASSWORD('<%= @config.server_root_password %>');
23
+ <% if @config.root_network_acl.each -%>
24
+ <% @config.root_network_acl.each do |acl| -%>
25
+ GRANT ALL PRIVILEGES ON *.* TO 'root'@'<%= acl %>' IDENTIFIED BY '<%= @config.server_root_password %>' WITH GRANT OPTION;
26
+ <% end %>
27
+ <% end %>
@@ -0,0 +1,26 @@
1
+ <?xml version='1.0'?>
2
+ <!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'>
3
+ <service_bundle type='manifest' name='export'>
4
+ <service name='database/mysql' type='service' version='0'>
5
+ <create_default_instance enabled='true'/>
6
+ <single_instance/>
7
+ <dependency name='fs' grouping='require_all' restart_on='none' type='service'>
8
+ <service_fmri value='svc:/system/filesystem/local'/>
9
+ </dependency>
10
+ <dependency name='net' grouping='require_all' restart_on='none' type='service'>
11
+ <service_fmri value='svc:/network/loopback'/>
12
+ </dependency>
13
+ <exec_method name='start' type='method' exec='/lib/svc/method/mysqld start' timeout_seconds='18446744073709551615'/>
14
+ <exec_method name='stop' type='method' exec='/lib/svc/method/mysqld stop' timeout_seconds='18446744073709551615'/>
15
+ <stability value='Evolving'/>
16
+ <template>
17
+ <common_name>
18
+ <loctext xml:lang='C'>MySQL RDBMS</loctext>
19
+ </common_name>
20
+ <documentation>
21
+ <manpage title='MySQL <%= @version %>' section='1'/>
22
+ <doc_link name='mysql.com' uri='http://dev.mysql.com/docs'/>
23
+ </documentation>
24
+ </template>
25
+ </service>
26
+ </service_bundle>
@@ -0,0 +1,29 @@
1
+ #!/sbin/sh
2
+ #
3
+ # Generated by Chef
4
+ #
5
+
6
+ . /lib/svc/share/smf_include.sh
7
+
8
+ PIDFILE=<%= @pid_file %>
9
+
10
+ ulimit -n 10240
11
+
12
+ case "$1" in
13
+ start)
14
+ <%= @base_dir %>/bin/mysqld --user=mysql \
15
+ --basedir=<%= @base_dir %> \
16
+ --datadir=<%= @data_dir %> \
17
+ --pid-file=${PIDFILE} \
18
+ --log-error=/var/log/mysql/error.log &
19
+ ;;
20
+ stop)
21
+ [ -f ${PIDFILE} ] && kill `/usr/bin/head -1 ${PIDFILE}`
22
+ ;;
23
+ *)
24
+ echo "Usage: $0 {start|stop}" >&2
25
+ exit 1
26
+ ;;
27
+ esac
28
+
29
+ exit $SMF_EXIT_OK
@@ -0,0 +1,32 @@
1
+ <?xml version='1.0'?>
2
+ <!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'>
3
+ <service_bundle type='manifest' name='export'>
4
+ <service name='pkgsrc/mysql' type='service' version='0'>
5
+ <create_default_instance enabled='true'/>
6
+ <single_instance/>
7
+ <dependency name='fs' grouping='require_all' restart_on='none' type='service'>
8
+ <service_fmri value='svc:/system/filesystem/local'/>
9
+ </dependency>
10
+ <dependency name='net' grouping='require_all' restart_on='none' type='service'>
11
+ <service_fmri value='svc:/network/loopback'/>
12
+ </dependency>
13
+ <method_context project='mysql' working_directory='/var/mysql'>
14
+ <method_credential group='mysql' user='mysql'/>
15
+ <method_environment>
16
+ <envvar name='LD_PRELOAD_32' value='/usr/lib/extendedFILE.so.1'/>
17
+ </method_environment>
18
+ </method_context>
19
+ <exec_method name='start' type='method' exec='/opt/local/lib/svc/method/mysqld start' timeout_seconds='18446744073709551615'/>
20
+ <exec_method name='stop' type='method' exec='/opt/local/lib/svc/method/mysqld stop' timeout_seconds='18446744073709551615'/>
21
+ <stability value='Evolving'/>
22
+ <template>
23
+ <common_name>
24
+ <loctext xml:lang='C'>MySQL RDBMS</loctext>
25
+ </common_name>
26
+ <documentation>
27
+ <manpage title='MySQL <%= @version %>' section='1'/>
28
+ <doc_link name='mysql.com' uri='http://dev.mysql.com/docs'/>
29
+ </documentation>
30
+ </template>
31
+ </service>
32
+ </service_bundle>
@@ -0,0 +1,29 @@
1
+ #!/sbin/sh
2
+ #
3
+ # Generated by Chef
4
+ #
5
+
6
+ . /lib/svc/share/smf_include.sh
7
+
8
+ PIDFILE="/var/mysql/mysql.pid"
9
+
10
+ ulimit -n 10240
11
+
12
+ case "$1" in
13
+ start)
14
+ /opt/local/sbin/mysqld --user=mysql \
15
+ --basedir=/opt/local \
16
+ --datadir=<%= @data_dir %> \
17
+ --pid-file=${PIDFILE} \
18
+ --log-error=/var/log/mysql/error.log &
19
+ ;;
20
+ stop)
21
+ [ -f ${PIDFILE} ] && kill `/usr/bin/head -1 ${PIDFILE}`
22
+ ;;
23
+ *)
24
+ echo "Usage: $0 {start|stop}" >&2
25
+ exit 1
26
+ ;;
27
+ esac
28
+
29
+ exit $SMF_EXIT_OK
@@ -0,0 +1,37 @@
1
+ Description
2
+ ====
3
+
4
+ Provide a library method to generate secure random passwords in recipes.
5
+
6
+ Requirements
7
+ ====
8
+
9
+ Works on any platform with OpenSSL Ruby bindings installed, which are a requirement for Chef anyway.
10
+
11
+ Usage
12
+ ====
13
+
14
+ Most often this will be used to generate a secure password for an attribute.
15
+
16
+ include Opscode::OpenSSL::Password
17
+
18
+ set_unless[:my_password] = secure_password
19
+
20
+ License and Author
21
+ ====
22
+
23
+ Author:: Joshua Timberman (<joshua@opscode.com>)
24
+
25
+ Copyright:: 2009-2011, Opscode, Inc
26
+
27
+ Licensed under the Apache License, Version 2.0 (the "License");
28
+ you may not use this file except in compliance with the License.
29
+ You may obtain a copy of the License at
30
+
31
+ http://www.apache.org/licenses/LICENSE-2.0
32
+
33
+ Unless required by applicable law or agreed to in writing, software
34
+ distributed under the License is distributed on an "AS IS" BASIS,
35
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
36
+ See the License for the specific language governing permissions and
37
+ limitations under the License.
@@ -0,0 +1,37 @@
1
+ #
2
+ # Cookbook Name:: openssl
3
+ # Library:: secure_password
4
+ # Author:: Joshua Timberman <joshua@opscode.com>
5
+ #
6
+ # Copyright 2009, Opscode, Inc.
7
+ #
8
+ # Licensed under the Apache License, Version 2.0 (the "License");
9
+ # you may not use this file except in compliance with the License.
10
+ # You may obtain a copy of the License at
11
+ #
12
+ # http://www.apache.org/licenses/LICENSE-2.0
13
+ #
14
+ # Unless required by applicable law or agreed to in writing, software
15
+ # distributed under the License is distributed on an "AS IS" BASIS,
16
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17
+ # See the License for the specific language governing permissions and
18
+ # limitations under the License.
19
+ #
20
+
21
+ require 'openssl'
22
+
23
+ module Opscode
24
+ module OpenSSL
25
+ module Password
26
+ def secure_password
27
+ pw = String.new
28
+
29
+ while pw.length < 20
30
+ pw << ::OpenSSL::Random.random_bytes(1).gsub(/\W/, '')
31
+ end
32
+
33
+ pw
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,30 @@
1
+ {
2
+ "name": "openssl",
3
+ "description": "Provides a library with a method for generating secure random passwords.",
4
+ "long_description": "Description\n====\n\nProvide a library method to generate secure random passwords in recipes.\n\nRequirements\n====\n\nWorks on any platform with OpenSSL Ruby bindings installed, which are a requirement for Chef anyway.\n\nUsage\n====\n\nMost often this will be used to generate a secure password for an attribute.\n\n include Opscode::OpenSSL::Password\n\n set_unless[:my_password] = secure_password\n\nLicense and Author\n====\n\nAuthor:: Joshua Timberman (<joshua@opscode.com>)\n\nCopyright:: 2009-2011, Opscode, Inc\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
5
+ "maintainer": "Opscode, Inc.",
6
+ "maintainer_email": "cookbooks@opscode.com",
7
+ "license": "Apache 2.0",
8
+ "platforms": {
9
+ },
10
+ "dependencies": {
11
+ },
12
+ "recommendations": {
13
+ },
14
+ "suggestions": {
15
+ },
16
+ "conflicting": {
17
+ },
18
+ "providing": {
19
+ },
20
+ "replacing": {
21
+ },
22
+ "attributes": {
23
+ },
24
+ "groupings": {
25
+ },
26
+ "recipes": {
27
+ "openssl": "Empty, this cookbook provides a library, see README.md"
28
+ },
29
+ "version": "1.0.0"
30
+ }
@@ -0,0 +1,8 @@
1
+ maintainer "Opscode, Inc."
2
+ maintainer_email "cookbooks@opscode.com"
3
+ license "Apache 2.0"
4
+ description "Provides a library with a method for generating secure random passwords."
5
+ long_description IO.read(File.join(File.dirname(__FILE__), 'README.md'))
6
+ version "1.0.0"
7
+
8
+ recipe "openssl", "Empty, this cookbook provides a library, see README.md"
@@ -0,0 +1,19 @@
1
+ #
2
+ # Cookbook Name:: openssl
3
+ # Recipe:: default
4
+ #
5
+ # Copyright 2009, Opscode, Inc.
6
+ #
7
+ # Licensed under the Apache License, Version 2.0 (the "License");
8
+ # you may not use this file except in compliance with the License.
9
+ # You may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing, software
14
+ # distributed under the License is distributed on an "AS IS" BASIS,
15
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ # See the License for the specific language governing permissions and
17
+ # limitations under the License.
18
+ #
19
+