freighthop 0.0.6 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (270) hide show
  1. data/Puppetfile +1 -0
  2. data/Puppetfile.lock +3 -0
  3. data/Vagrantfile +1 -1
  4. data/bin/fh +2 -78
  5. data/lib/freighthop/cli/help.rb +69 -0
  6. data/lib/freighthop/cli/ssh.rb +46 -0
  7. data/lib/freighthop/cli/vagrant.rb +26 -0
  8. data/lib/freighthop/cli.rb +40 -0
  9. data/lib/freighthop/config.rb +4 -0
  10. data/lib/freighthop/vagrant_env.rb +24 -0
  11. data/lib/freighthop/version.rb +1 -1
  12. data/lib/freighthop.rb +7 -4
  13. data/local_modules/freighthop/manifests/database/mysql.pp +20 -0
  14. data/local_modules/freighthop/manifests/database/postgres.pp +6 -6
  15. data/local_modules/freighthop/manifests/database.pp +6 -8
  16. data/local_modules/freighthop/manifests/init.pp +1 -8
  17. data/local_modules/freighthop/manifests/params.pp +0 -3
  18. data/modules/apt/CHANGELOG +12 -2
  19. data/modules/apt/Gemfile +6 -5
  20. data/modules/apt/Gemfile.lock +40 -5
  21. data/modules/apt/Modulefile +1 -1
  22. data/modules/apt/README.md +2 -1
  23. data/modules/apt/Rakefile +1 -0
  24. data/modules/apt/manifests/init.pp +4 -1
  25. data/modules/apt/manifests/ppa.pp +1 -1
  26. data/modules/apt/manifests/update.pp +1 -0
  27. data/modules/apt/metadata.json +21 -13
  28. data/modules/apt/spec/defines/ppa_spec.rb +3 -3
  29. data/modules/apt/spec/defines/source_spec.rb +2 -2
  30. data/modules/apt/spec/spec_helper_system.rb +30 -0
  31. data/modules/apt/spec/system/apt_builddep_spec.rb +38 -0
  32. data/modules/apt/spec/system/apt_key_spec.rb +53 -0
  33. data/modules/apt/spec/system/apt_ppa_spec.rb +59 -0
  34. data/modules/apt/spec/system/apt_source_spec.rb +51 -0
  35. data/modules/apt/spec/system/basic_spec.rb +10 -0
  36. data/modules/apt/spec/system/class_spec.rb +20 -0
  37. data/modules/apt/templates/source.list.erb +2 -2
  38. data/modules/freighthop/manifests/database/mysql.pp +20 -0
  39. data/modules/freighthop/manifests/database/postgres.pp +6 -6
  40. data/modules/freighthop/manifests/database.pp +6 -8
  41. data/modules/freighthop/manifests/init.pp +1 -8
  42. data/modules/freighthop/manifests/params.pp +0 -3
  43. data/modules/mysql/CHANGELOG +403 -0
  44. data/modules/mysql/Gemfile +24 -0
  45. data/modules/mysql/Gemfile.lock +129 -0
  46. data/modules/mysql/LICENSE +201 -0
  47. data/modules/mysql/Modulefile +9 -0
  48. data/modules/mysql/README.md +492 -0
  49. data/modules/mysql/Rakefile +2 -0
  50. data/modules/mysql/TODO +8 -0
  51. data/modules/mysql/files/mysqltuner.pl +966 -0
  52. data/modules/mysql/lib/puppet/parser/functions/mysql_deepmerge.rb +52 -0
  53. data/modules/mysql/lib/puppet/parser/functions/mysql_password.rb +15 -0
  54. data/modules/mysql/lib/puppet/parser/functions/mysql_strip_hash.rb +21 -0
  55. data/modules/mysql/lib/puppet/provider/database/mysql.rb +52 -0
  56. data/modules/mysql/lib/puppet/provider/database_grant/mysql.rb +210 -0
  57. data/modules/mysql/lib/puppet/provider/database_user/mysql.rb +76 -0
  58. data/modules/mysql/lib/puppet/provider/mysql.rb +67 -0
  59. data/modules/mysql/lib/puppet/provider/mysql_database/mysql.rb +68 -0
  60. data/modules/mysql/lib/puppet/provider/mysql_grant/mysql.rb +115 -0
  61. data/modules/mysql/lib/puppet/provider/mysql_user/mysql.rb +115 -0
  62. data/modules/mysql/lib/puppet/type/database.rb +21 -0
  63. data/modules/mysql/lib/puppet/type/database_grant.rb +79 -0
  64. data/modules/mysql/lib/puppet/type/database_user.rb +31 -0
  65. data/modules/mysql/lib/puppet/type/mysql_database.rb +22 -0
  66. data/modules/mysql/lib/puppet/type/mysql_grant.rb +72 -0
  67. data/modules/mysql/lib/puppet/type/mysql_user.rb +45 -0
  68. data/modules/mysql/manifests/backup.pp +31 -0
  69. data/modules/mysql/manifests/bindings/java.pp +10 -0
  70. data/modules/mysql/manifests/bindings/perl.pp +10 -0
  71. data/modules/mysql/manifests/bindings/php.pp +10 -0
  72. data/modules/mysql/manifests/bindings/python.pp +10 -0
  73. data/modules/mysql/manifests/bindings/ruby.pp +10 -0
  74. data/modules/mysql/manifests/bindings.pp +33 -0
  75. data/modules/mysql/manifests/client/install.pp +8 -0
  76. data/modules/mysql/manifests/client.pp +27 -0
  77. data/modules/mysql/manifests/db.pp +59 -0
  78. data/modules/mysql/manifests/init.pp +100 -0
  79. data/modules/mysql/manifests/params.pp +230 -0
  80. data/modules/mysql/manifests/server/account_security.pp +22 -0
  81. data/modules/mysql/manifests/server/backup.pp +56 -0
  82. data/modules/mysql/manifests/server/config.pp +31 -0
  83. data/modules/mysql/manifests/server/install.pp +9 -0
  84. data/modules/mysql/manifests/server/monitor.pp +24 -0
  85. data/modules/mysql/manifests/server/mysqltuner.pp +9 -0
  86. data/modules/mysql/manifests/server/providers.pp +8 -0
  87. data/modules/mysql/manifests/server/root_password.pp +21 -0
  88. data/modules/mysql/manifests/server/service.pp +19 -0
  89. data/modules/mysql/manifests/server.pp +69 -0
  90. data/modules/mysql/metadata.json +289 -0
  91. data/modules/mysql/spec/classes/mysql_bindings_spec.rb +58 -0
  92. data/modules/mysql/spec/classes/mysql_client_spec.rb +16 -0
  93. data/modules/mysql/spec/classes/mysql_server_account_security_spec.rb +41 -0
  94. data/modules/mysql/spec/classes/mysql_server_backup_spec.rb +112 -0
  95. data/modules/mysql/spec/classes/mysql_server_monitor_spec.rb +31 -0
  96. data/modules/mysql/spec/classes/mysql_server_mysqltuner_spec.rb +5 -0
  97. data/modules/mysql/spec/classes/mysql_server_spec.rb +162 -0
  98. data/modules/mysql/spec/defines/mysql_db_spec.rb +51 -0
  99. data/modules/mysql/spec/spec.opts +6 -0
  100. data/modules/mysql/spec/spec_helper.rb +5 -0
  101. data/modules/mysql/spec/spec_helper_system.rb +28 -0
  102. data/modules/mysql/spec/system/mysql_account_delete_spec.rb +35 -0
  103. data/modules/mysql/spec/system/mysql_backup_spec.rb +77 -0
  104. data/modules/mysql/spec/system/mysql_bindings_spec.rb +90 -0
  105. data/modules/mysql/spec/system/mysql_db_spec.rb +61 -0
  106. data/modules/mysql/spec/system/mysql_server_monitor_spec.rb +30 -0
  107. data/modules/mysql/spec/system/mysql_server_root_password_spec.rb +71 -0
  108. data/modules/mysql/spec/system/mysql_server_spec.rb +85 -0
  109. data/modules/mysql/spec/system/types/mysql_grant_spec.rb +314 -0
  110. data/modules/mysql/spec/system/types/mysql_user_spec.rb +35 -0
  111. data/modules/mysql/spec/unit/mysql_password_spec.rb +27 -0
  112. data/modules/mysql/spec/unit/puppet/functions/mysql_deepmerge_spec.rb +77 -0
  113. data/modules/mysql/spec/unit/puppet/provider/database/mysql_spec.rb +86 -0
  114. data/modules/mysql/spec/unit/puppet/provider/database_grant/mysql_spec.rb +95 -0
  115. data/modules/mysql/spec/unit/puppet/provider/database_user/mysql_spec.rb +119 -0
  116. data/modules/mysql/spec/unit/puppet/provider/mysql_database/mysql_spec.rb +118 -0
  117. data/modules/mysql/spec/unit/puppet/provider/mysql_user/mysql_spec.rb +130 -0
  118. data/modules/mysql/spec/unit/puppet/type/mysql_database_spec.rb +29 -0
  119. data/modules/mysql/spec/unit/puppet/type/mysql_user_spec.rb +30 -0
  120. data/modules/mysql/templates/my.cnf.erb +17 -0
  121. data/modules/mysql/templates/my.cnf.pass.erb +7 -0
  122. data/modules/mysql/templates/my.conf.cnf.erb +17 -0
  123. data/modules/mysql/templates/mysqlbackup.sh.erb +57 -0
  124. data/modules/mysql/tests/backup.pp +8 -0
  125. data/modules/mysql/tests/bindings.pp +3 -0
  126. data/modules/mysql/tests/init.pp +1 -0
  127. data/modules/mysql/tests/java.pp +1 -0
  128. data/modules/mysql/tests/mysql_database.pp +12 -0
  129. data/modules/mysql/tests/mysql_grant.pp +5 -0
  130. data/modules/mysql/tests/mysql_user.pp +23 -0
  131. data/modules/mysql/tests/perl.pp +1 -0
  132. data/modules/mysql/tests/python.pp +1 -0
  133. data/modules/mysql/tests/ruby.pp +1 -0
  134. data/modules/mysql/tests/server/account_security.pp +4 -0
  135. data/modules/mysql/tests/server/config.pp +11 -0
  136. data/modules/mysql/tests/server.pp +3 -0
  137. data/modules/postgresql/Changelog +191 -0
  138. data/modules/postgresql/Gemfile +1 -0
  139. data/modules/postgresql/Gemfile.lock +9 -0
  140. data/modules/postgresql/LICENSE +198 -12
  141. data/modules/postgresql/Modulefile +2 -2
  142. data/modules/postgresql/NOTICE +14 -0
  143. data/modules/postgresql/README.md +435 -184
  144. data/modules/postgresql/files/validate_postgresql_connection.sh +31 -0
  145. data/modules/postgresql/lib/puppet/provider/postgresql_conf/parsed.rb +37 -0
  146. data/modules/postgresql/lib/puppet/provider/postgresql_psql/ruby.rb +4 -0
  147. data/modules/postgresql/lib/puppet/type/postgresql_conf.rb +31 -0
  148. data/modules/postgresql/lib/puppet/type/postgresql_psql.rb +4 -0
  149. data/modules/postgresql/manifests/client.pp +17 -16
  150. data/modules/postgresql/manifests/globals.pp +95 -0
  151. data/modules/postgresql/manifests/lib/devel.pp +15 -0
  152. data/modules/postgresql/manifests/lib/java.pp +15 -0
  153. data/modules/postgresql/manifests/lib/python.pp +13 -0
  154. data/modules/postgresql/manifests/params.pp +127 -222
  155. data/modules/postgresql/manifests/repo/apt_postgresql_org.pp +30 -0
  156. data/modules/postgresql/manifests/repo/yum_postgresql_org.pp +38 -0
  157. data/modules/postgresql/manifests/repo.pp +22 -0
  158. data/modules/postgresql/manifests/server/config.pp +113 -0
  159. data/modules/postgresql/manifests/server/config_entry.pp +43 -0
  160. data/modules/postgresql/manifests/server/contrib.pp +27 -0
  161. data/modules/postgresql/manifests/server/database.pp +75 -0
  162. data/modules/postgresql/manifests/server/database_grant.pp +18 -0
  163. data/modules/postgresql/manifests/server/db.pp +36 -0
  164. data/modules/postgresql/manifests/server/firewall.pp +21 -0
  165. data/modules/postgresql/manifests/server/grant.pp +81 -0
  166. data/modules/postgresql/manifests/server/initdb.pp +52 -0
  167. data/modules/postgresql/manifests/server/install.pp +49 -0
  168. data/modules/postgresql/manifests/server/passwd.pp +34 -0
  169. data/modules/postgresql/manifests/server/pg_hba_rule.pp +54 -0
  170. data/modules/postgresql/manifests/server/plperl.pp +27 -0
  171. data/modules/postgresql/manifests/server/reload.pp +15 -0
  172. data/modules/postgresql/manifests/{role.pp → server/role.pp} +19 -33
  173. data/modules/postgresql/manifests/server/service.pp +40 -0
  174. data/modules/postgresql/manifests/{table_grant.pp → server/table_grant.pp} +4 -4
  175. data/modules/postgresql/manifests/server/tablespace.pp +42 -0
  176. data/modules/postgresql/manifests/server.pp +61 -83
  177. data/modules/postgresql/manifests/validate_db_connection.pp +49 -50
  178. data/modules/postgresql/metadata.json +123 -73
  179. data/modules/postgresql/spec/spec_helper_system.rb +13 -1
  180. data/modules/postgresql/spec/system/client_spec.rb +22 -0
  181. data/modules/postgresql/spec/system/common_patterns_spec.rb +53 -0
  182. data/modules/postgresql/spec/system/contrib_spec.rb +33 -0
  183. data/modules/postgresql/spec/system/lib/devel_spec.rb +22 -0
  184. data/modules/postgresql/spec/system/lib/java_spec.rb +25 -0
  185. data/modules/postgresql/spec/system/lib/python_spec.rb +24 -0
  186. data/modules/postgresql/spec/system/postgresql_psql_spec.rb +51 -0
  187. data/modules/postgresql/spec/system/server/config_entry_spec.rb +32 -0
  188. data/modules/postgresql/spec/system/server/database_grant_spec.rb +54 -0
  189. data/modules/postgresql/spec/system/server/database_spec.rb +35 -0
  190. data/modules/postgresql/spec/system/server/db_spec.rb +143 -0
  191. data/modules/postgresql/spec/system/server/grant_spec.rb +55 -0
  192. data/modules/postgresql/spec/system/server/pg_hba_rule_spec.rb +85 -0
  193. data/modules/postgresql/spec/system/server/plperl_spec.rb +29 -0
  194. data/modules/postgresql/spec/system/server/role_spec.rb +103 -0
  195. data/modules/postgresql/spec/system/server/table_grant_spec.rb +72 -0
  196. data/modules/postgresql/spec/system/server/tablespace_spec.rb +74 -0
  197. data/modules/postgresql/spec/system/server_spec.rb +217 -0
  198. data/modules/postgresql/spec/system/validate_db_connection_spec.rb +91 -0
  199. data/modules/postgresql/spec/unit/classes/client_spec.rb +27 -2
  200. data/modules/postgresql/spec/unit/classes/globals_spec.rb +28 -0
  201. data/modules/postgresql/spec/unit/classes/lib/devel_spec.rb +12 -0
  202. data/modules/postgresql/spec/unit/classes/{postgresql_java_spec.rb → lib/java_spec.rb} +9 -19
  203. data/modules/postgresql/spec/unit/classes/lib/python_spec.rb +31 -0
  204. data/modules/postgresql/spec/unit/classes/params_spec.rb +2 -1
  205. data/modules/postgresql/spec/unit/classes/repo_spec.rb +17 -0
  206. data/modules/postgresql/spec/unit/classes/server/contrib_spec.rb +42 -0
  207. data/modules/postgresql/spec/unit/classes/server/initdb_spec.rb +28 -0
  208. data/modules/postgresql/spec/unit/classes/server/plperl_spec.rb +45 -0
  209. data/modules/postgresql/spec/unit/classes/server_spec.rb +83 -2
  210. data/modules/postgresql/spec/unit/defines/server/config_entry_spec.rb +23 -0
  211. data/modules/postgresql/spec/unit/defines/server/database_grant_spec.rb +26 -0
  212. data/modules/postgresql/spec/unit/defines/server/database_spec.rb +16 -0
  213. data/modules/postgresql/spec/unit/defines/server/db_spec.rb +28 -0
  214. data/modules/postgresql/spec/unit/defines/{database_grant_spec.rb → server/grant_spec.rb} +7 -4
  215. data/modules/postgresql/spec/unit/defines/{pg_hba_rule_spec.rb → server/pg_hba_rule_spec.rb} +59 -2
  216. data/modules/postgresql/spec/unit/defines/server/role_spec.rb +23 -0
  217. data/modules/postgresql/spec/unit/defines/server/table_grant_spec.rb +27 -0
  218. data/modules/postgresql/spec/unit/defines/server/tablespace_spec.rb +23 -0
  219. data/modules/postgresql/spec/unit/defines/validate_db_connection_spec.rb +22 -9
  220. data/modules/postgresql/spec/unit/provider/postgresql_conf/parsed_spec.rb +112 -0
  221. data/modules/postgresql/spec/unit/puppet/provider/postgresql_psql/ruby_spec.rb +29 -0
  222. data/modules/postgresql/spec/unit/puppet/type/postgresql_psql_spec.rb +1 -0
  223. data/modules/postgresql/spec/unit/type/postgresql_conf_spec.rb +50 -0
  224. metadata +177 -53
  225. data/modules/postgresql/examples/init.pp +0 -1
  226. data/modules/postgresql/examples/official-postgresql-repos.pp +0 -19
  227. data/modules/postgresql/examples/postgresql_database.pp +0 -22
  228. data/modules/postgresql/examples/postgresql_db.pp +0 -30
  229. data/modules/postgresql/examples/postgresql_grant.pp +0 -14
  230. data/modules/postgresql/examples/postgresql_pg_hba_rule.pp +0 -18
  231. data/modules/postgresql/examples/postgresql_pgconf_extras.pp +0 -19
  232. data/modules/postgresql/examples/postgresql_tablespace.pp +0 -73
  233. data/modules/postgresql/examples/postgresql_user.pp +0 -28
  234. data/modules/postgresql/examples/server.pp +0 -10
  235. data/modules/postgresql/lib/facter/postgres_default_version.rb +0 -69
  236. data/modules/postgresql/manifests/config/afterservice.pp +0 -47
  237. data/modules/postgresql/manifests/config/beforeservice.pp +0 -171
  238. data/modules/postgresql/manifests/config.pp +0 -74
  239. data/modules/postgresql/manifests/contrib.pp +0 -29
  240. data/modules/postgresql/manifests/database.pp +0 -85
  241. data/modules/postgresql/manifests/database_grant.pp +0 -35
  242. data/modules/postgresql/manifests/database_user.pp +0 -60
  243. data/modules/postgresql/manifests/db.pp +0 -77
  244. data/modules/postgresql/manifests/devel.pp +0 -27
  245. data/modules/postgresql/manifests/grant.pp +0 -77
  246. data/modules/postgresql/manifests/init.pp +0 -145
  247. data/modules/postgresql/manifests/initdb.pp +0 -52
  248. data/modules/postgresql/manifests/java.pp +0 -29
  249. data/modules/postgresql/manifests/package_source/apt_postgresql_org.pp +0 -21
  250. data/modules/postgresql/manifests/package_source/yum_postgresql_org.pp +0 -30
  251. data/modules/postgresql/manifests/pg_hba.pp +0 -19
  252. data/modules/postgresql/manifests/pg_hba_rule.pp +0 -41
  253. data/modules/postgresql/manifests/plperl.pp +0 -24
  254. data/modules/postgresql/manifests/psql.pp +0 -56
  255. data/modules/postgresql/manifests/python.pp +0 -18
  256. data/modules/postgresql/manifests/tablespace.pp +0 -59
  257. data/modules/postgresql/spec/system/install_spec.rb +0 -707
  258. data/modules/postgresql/spec/system/non_defaults_spec.rb +0 -114
  259. data/modules/postgresql/spec/unit/classes/contrib_spec.rb +0 -11
  260. data/modules/postgresql/spec/unit/classes/devel_spec.rb +0 -11
  261. data/modules/postgresql/spec/unit/classes/init_spec.rb +0 -71
  262. data/modules/postgresql/spec/unit/classes/postgresql_python_spec.rb +0 -53
  263. data/modules/postgresql/spec/unit/defines/database_spec.rb +0 -14
  264. data/modules/postgresql/spec/unit/defines/database_user_spec.rb +0 -19
  265. data/modules/postgresql/spec/unit/defines/db_spec.rb +0 -20
  266. data/modules/postgresql/spec/unit/defines/pg_hba_spec.rb +0 -20
  267. data/modules/postgresql/spec/unit/defines/psql_spec.rb +0 -20
  268. data/modules/postgresql/spec/unit/defines/role_spec.rb +0 -14
  269. data/modules/postgresql/spec/unit/defines/tablespace_spec.rb +0 -19
  270. data/modules/postgresql/spec/unit/facts/postgres_default_version_spec.rb +0 -14
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "puppetlabs-apt",
3
- "version": "1.3.0",
3
+ "version": "1.4.0",
4
4
  "summary": "Puppet Labs Apt Module",
5
5
  "author": "Evolving Web / Puppet Labs",
6
6
  "description": "APT Module for Puppet",
@@ -18,29 +18,30 @@
18
18
  ".forge-release/publish": "1c1d6dd64ef52246db485eb5459aa941",
19
19
  ".forge-release/settings.xml": "06d768a57d582fe1ee078b563427e750",
20
20
  ".forge-release/validate": "7fffde8112f42a1ec986d49ba80ac219",
21
+ ".nodeset.yml": "78d78c172336a387a1067464434ffbcb",
21
22
  ".travis.yml": "782420dcc9d6412c79c30f03b1f3613c",
22
- "CHANGELOG": "afd5267ae14ecd16f8b30ac7a34d9490",
23
- "Gemfile": "6bac61e5713dbf7c477c0c8dccc00cf6",
24
- "Gemfile.lock": "73d412ad5face41b380d04298137bb42",
23
+ "CHANGELOG": "f5488e1e891a8f8c47143dac790ddab3",
24
+ "Gemfile": "1bfa7eb6e30346c9ddb4a8b144b0d255",
25
+ "Gemfile.lock": "8ff8bc3d32bb7412bd97e48190a93b2f",
25
26
  "LICENSE": "20bcc606fc61ffba2b8cea840e8dce4d",
26
- "Modulefile": "c49fc65c8164416b8dd5f62dbaa563f0",
27
- "README.md": "48d8b527c8c0efa83223be6aebfe7114",
28
- "Rakefile": "0254db5d3fc38c67a2c160d7296a24f8",
27
+ "Modulefile": "b34e93626fbc137cbb651952e7509839",
28
+ "README.md": "65176b395f7202fe5d222ae7b0de4e05",
29
+ "Rakefile": "0428ea3759a4692c91604396c406a9c1",
29
30
  "manifests/backports.pp": "09f1d86603d0f44a2169acb3eeea2a70",
30
31
  "manifests/builddep.pp": "4f313b5140c84aa7d5793b5a073c30dd",
31
32
  "manifests/conf.pp": "5ddf258195d414d93284dfd281a8d6e3",
32
33
  "manifests/debian/testing.pp": "aeb625bacb6a8df46c864ee9ee1cb5a5",
33
34
  "manifests/debian/unstable.pp": "108038596b05dc1d28975884693f73f5",
34
35
  "manifests/force.pp": "cf871e869f4114f32ab164de2a67e7e2",
35
- "manifests/init.pp": "07ddf785dc2887a59d3b1ca0bb3f3444",
36
+ "manifests/init.pp": "5ec106a7a03313c544159a9a1f6b78e6",
36
37
  "manifests/key.pp": "3cf082ed91a3933ab7218d1be3464f4f",
37
38
  "manifests/params.pp": "ca4ce3730a65c43f884ab3e6445f1661",
38
39
  "manifests/pin.pp": "dea8cbaabc37010ce25838080608802b",
39
- "manifests/ppa.pp": "83e80406afc451e8e8f216ebd982f973",
40
+ "manifests/ppa.pp": "754a83944ae79b5001fc0c0a8c775985",
40
41
  "manifests/release.pp": "427f3ee70a6a1e55fa291e58655bd5d9",
41
42
  "manifests/source.pp": "6eab8d33c173a066f5dec8474efdedb6",
42
43
  "manifests/unattended_upgrades.pp": "e97f908b42010ff9a85be4afd2c721ab",
43
- "manifests/update.pp": "bff1331f5467f146edf9fa43475fe532",
44
+ "manifests/update.pp": "436c79f160f2cb603710795a9ec71ac7",
44
45
  "spec/classes/apt_spec.rb": "54841b04b42026770ed6d744a82c55df",
45
46
  "spec/classes/backports_spec.rb": "7d2454a881cc26edd3dcd3acb7ffd20f",
46
47
  "spec/classes/debian_testing_spec.rb": "fad1384cb9d3c99b2663d7df4762dc0e",
@@ -53,13 +54,20 @@
53
54
  "spec/defines/force_spec.rb": "97098c5b123be49e321e71cda288fe53",
54
55
  "spec/defines/key_spec.rb": "7800c30647b1ddf799b991110109cba0",
55
56
  "spec/defines/pin_spec.rb": "c912e59e9e3d1145280d659cccabe72b",
56
- "spec/defines/ppa_spec.rb": "c7057d002f2d95ce95bc83c5089fa2c0",
57
- "spec/defines/source_spec.rb": "caa3be1996630704730af19bc1ee798c",
57
+ "spec/defines/ppa_spec.rb": "72ce037a1d6ea0a33f369b1f3d98b3d6",
58
+ "spec/defines/source_spec.rb": "e553bb9598dbe2becba6ae7f91d4deb0",
58
59
  "spec/spec_helper.rb": "0db89c9a486df193c0e40095422e19dc",
60
+ "spec/spec_helper_system.rb": "e67d2574baae312f1095f90d78fdf5e9",
61
+ "spec/system/apt_builddep_spec.rb": "97be5a48d2d16d96cb7c35ccdbcdcb69",
62
+ "spec/system/apt_key_spec.rb": "098835d0c53c69390d4c3b6ea8ef3815",
63
+ "spec/system/apt_ppa_spec.rb": "c96f6d0bbdafac39beaf0d5e6eba9010",
64
+ "spec/system/apt_source_spec.rb": "df5aa98b03688884903c564bb507469f",
65
+ "spec/system/basic_spec.rb": "0a5b33d18254bedcb7886e34846ebff6",
66
+ "spec/system/class_spec.rb": "2ba4265236f00685c23cb00f908defc1",
59
67
  "templates/10periodic.erb": "2aeea866a39f19a62254abbb4f1bc59d",
60
68
  "templates/50unattended-upgrades.erb": "ae995ade214fdaefab51d335c85819ae",
61
69
  "templates/pin.pref.erb": "623249839cee7788fa0805a3474396db",
62
- "templates/source.list.erb": "9ddccd6b59757d40e99158dbfe9a97e2",
70
+ "templates/source.list.erb": "65a016e60daf065c481f3d5f2c883324",
63
71
  "tests/builddep.pp": "4773f57072111e58f2ed833fa4489a88",
64
72
  "tests/debian/testing.pp": "1cbee56baddd6a91d981db8fddec70fb",
65
73
  "tests/debian/unstable.pp": "4b2a090afeb315752262386f4dbcd8ca",
@@ -45,7 +45,7 @@ describe 'apt::ppa', :type => :define do
45
45
 
46
46
  it { should contain_exec("add-apt-repository-#{t}").with(
47
47
  'command' => "/usr/bin/add-apt-repository #{options} #{t}",
48
- 'creates' => "/etc/apt/sources.list.d/#{filename}",
48
+ 'unless' => "/usr/bin/test -s /etc/apt/sources.list.d/#{filename}",
49
49
  'require' => ["File[/etc/apt/sources.list.d]", "Package[#{package}]"],
50
50
  'notify' => "Exec[apt_update]"
51
51
  )
@@ -74,7 +74,7 @@ describe 'apt::ppa', :type => :define do
74
74
  it { should contain_exec("add-apt-repository-#{title}").with(
75
75
  'environment' => [],
76
76
  'command' => "/usr/bin/add-apt-repository #{options} #{title}",
77
- 'creates' => "/etc/apt/sources.list.d/#{filename}",
77
+ 'unless' => "/usr/bin/test -s /etc/apt/sources.list.d/#{filename}",
78
78
  'require' => ["File[/etc/apt/sources.list.d]", "Package[#{package}]"],
79
79
  'notify' => "Exec[apt_update]"
80
80
  )
@@ -100,7 +100,7 @@ describe 'apt::ppa', :type => :define do
100
100
  "https_proxy=http://user:pass@proxy:8080",
101
101
  ],
102
102
  'command' => "/usr/bin/add-apt-repository #{options} #{title}",
103
- 'creates' => "/etc/apt/sources.list.d/#{filename}",
103
+ 'unless' => "/usr/bin/test -s /etc/apt/sources.list.d/#{filename}",
104
104
  'require' => ["File[/etc/apt/sources.list.d]", "Package[#{package}]"],
105
105
  'notify' => "Exec[apt_update]"
106
106
  )
@@ -75,10 +75,10 @@ describe 'apt::source', :type => :define do
75
75
  if param_hash[:architecture]
76
76
  arch = "[arch=#{param_hash[:architecture]}]"
77
77
  end
78
- content << "\ndeb #{arch} #{param_hash[:location]} #{param_hash[:release]} #{param_hash[:repos]}\n"
78
+ content << "\ndeb #{arch}#{param_hash[:location]} #{param_hash[:release]} #{param_hash[:repos]}\n"
79
79
 
80
80
  if param_hash[:include_src]
81
- content << "deb-src #{arch} #{param_hash[:location]} #{param_hash[:release]} #{param_hash[:repos]}\n"
81
+ content << "deb-src #{arch}#{param_hash[:location]} #{param_hash[:release]} #{param_hash[:repos]}\n"
82
82
  end
83
83
  content
84
84
  end
@@ -0,0 +1,30 @@
1
+ require 'rspec-system/spec_helper'
2
+ require 'rspec-system-puppet/helpers'
3
+ require 'rspec-system-serverspec/helpers'
4
+
5
+ include RSpecSystemPuppet::Helpers
6
+
7
+ include Serverspec::Helper::RSpecSystem
8
+ include Serverspec::Helper::DetectOS
9
+
10
+ RSpec.configure do |c|
11
+ # Project root
12
+ proj_root = File.expand_path(File.join(File.dirname(__FILE__), '..'))
13
+
14
+ # Enable colour
15
+ c.tty = true
16
+
17
+ c.include RSpecSystemPuppet::Helpers
18
+
19
+ # This is where we 'setup' the nodes before running our tests
20
+ c.before :suite do
21
+ # May as well update here as this can only run on apt-get machines.
22
+ shell('apt-get update')
23
+ # Install puppet
24
+ puppet_install
25
+
26
+ # Install modules and dependencies
27
+ puppet_module_install(:source => proj_root, :module_name => 'apt')
28
+ shell('puppet module install puppetlabs-stdlib')
29
+ end
30
+ end
@@ -0,0 +1,38 @@
1
+ require 'spec_helper_system'
2
+
3
+ describe 'apt::builddep' do
4
+
5
+ context 'reset' do
6
+ it 'removes packages' do
7
+ shell('apt-get -y remove glusterfs-server')
8
+ shell('apt-get -y remove g++')
9
+ end
10
+ end
11
+
12
+ context 'apt::builddep' do
13
+ it 'should work with no errors' do
14
+ pp = <<-EOS
15
+ include '::apt'
16
+ apt::builddep { 'glusterfs-server': }
17
+ EOS
18
+
19
+ puppet_apply(pp) do |r|
20
+ r.exit_code.should_not == 1
21
+ end
22
+ end
23
+
24
+ describe 'should install g++ as a dependency' do
25
+ describe package('g++') do
26
+ it { should be_installed }
27
+ end
28
+ end
29
+ end
30
+
31
+ context 'reset' do
32
+ it 'removes packages' do
33
+ shell('apt-get -y remove glusterfs-server')
34
+ shell('apt-get -y remove g++')
35
+ end
36
+ end
37
+
38
+ end
@@ -0,0 +1,53 @@
1
+ require 'spec_helper_system'
2
+
3
+ describe 'apt::key' do
4
+
5
+ context 'reset' do
6
+ it 'clean up keys' do
7
+ shell('apt-key del 4BD6EC30')
8
+ shell('apt-key del D50582E6')
9
+ end
10
+ end
11
+
12
+ context 'apt::key' do
13
+ it 'should work with no errors' do
14
+ pp = <<-EOS
15
+ include '::apt'
16
+ apt::key { 'puppetlabs':
17
+ key => '4BD6EC30',
18
+ key_server => 'pgp.mit.edu',
19
+ }
20
+
21
+ apt::key { 'jenkins':
22
+ key => 'D50582E6',
23
+ key_source => 'http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key',
24
+ }
25
+ EOS
26
+
27
+ puppet_apply(pp) do |r|
28
+ r.exit_code.should_not == 1
29
+ end
30
+ end
31
+
32
+ describe 'keys should exist' do
33
+ it 'finds puppetlabs key' do
34
+ shell('apt-key list | grep 4BD6EC30') do |r|
35
+ r.exit_code.should be_zero
36
+ end
37
+ end
38
+ it 'finds jenkins key' do
39
+ shell('apt-key list | grep D50582E6') do |r|
40
+ r.exit_code.should be_zero
41
+ end
42
+ end
43
+ end
44
+ end
45
+
46
+ context 'reset' do
47
+ it 'clean up keys' do
48
+ shell('apt-key del 4BD6EC30')
49
+ shell('apt-key del D50582E6')
50
+ end
51
+ end
52
+
53
+ end
@@ -0,0 +1,59 @@
1
+ require 'spec_helper_system'
2
+
3
+ describe 'apt::ppa' do
4
+
5
+ context 'reset' do
6
+ it 'removes ppa' do
7
+ shell('rm /etc/apt/sources.list.d/drizzle-developers-ppa*')
8
+ shell('rm /etc/apt/sources.list.d/raravena80-collectd5-*')
9
+ end
10
+ end
11
+
12
+ context 'adding a ppa that doesnt exist' do
13
+ it 'should work with no errors' do
14
+ pp = <<-EOS
15
+ include '::apt'
16
+ apt::ppa { 'ppa:drizzle-developers/ppa': }
17
+ EOS
18
+
19
+ puppet_apply(pp) do |r|
20
+ r.exit_code.should_not == 1
21
+ end
22
+ end
23
+
24
+ describe 'contains the source file' do
25
+ it 'contains a drizzle ppa source' do
26
+ shell('ls /etc/apt/sources.list.d/drizzle-developers-ppa-*.list') do |r|
27
+ r.exit_code.should be_zero
28
+ end
29
+ end
30
+ end
31
+ end
32
+
33
+ context 'readding a removed ppa.' do
34
+ it 'setup' do
35
+ shell('add-apt-repository -y ppa:raravena80/collectd5')
36
+ # This leaves a blank file
37
+ shell('add-apt-repository --remove ppa:raravena80/collectd5')
38
+ end
39
+
40
+ it 'should readd it successfully' do
41
+ pp = <<-EOS
42
+ include '::apt'
43
+ apt::ppa { 'ppa:raravena80/collectd5': }
44
+ EOS
45
+
46
+ puppet_apply(pp) do |r|
47
+ r.exit_code.should_not == 1
48
+ end
49
+ end
50
+ end
51
+
52
+ context 'reset' do
53
+ it 'removes added ppas' do
54
+ shell('rm /etc/apt/sources.list.d/drizzle-developers-ppa*')
55
+ shell('rm /etc/apt/sources.list.d/raravena80-collectd5-*')
56
+ end
57
+ end
58
+
59
+ end
@@ -0,0 +1,51 @@
1
+ require 'spec_helper_system'
2
+
3
+ describe 'apt::source' do
4
+
5
+ context 'reset' do
6
+ it 'clean up puppetlabs repo' do
7
+ shell('apt-key del 4BD6EC30')
8
+ shell('rm /etc/apt/sources.list.d/puppetlabs.list')
9
+ end
10
+ end
11
+
12
+ context 'apt::source' do
13
+ it 'should work with no errors' do
14
+ pp = <<-EOS
15
+ include '::apt'
16
+ apt::source { 'puppetlabs':
17
+ location => 'http://apt.puppetlabs.com',
18
+ repos => 'main',
19
+ key => '4BD6EC30',
20
+ key_server => 'pgp.mit.edu',
21
+ }
22
+ EOS
23
+
24
+ puppet_apply(pp) do |r|
25
+ r.exit_code.should_not == 1
26
+ end
27
+ end
28
+
29
+ describe 'key should exist' do
30
+ it 'finds puppetlabs key' do
31
+ shell('apt-key list | grep 4BD6EC30') do |r|
32
+ r.exit_code.should be_zero
33
+ end
34
+ end
35
+ end
36
+
37
+ describe 'source should exist' do
38
+ describe file('/etc/apt/sources.list.d/puppetlabs.list') do
39
+ it { should be_file }
40
+ end
41
+ end
42
+ end
43
+
44
+ context 'reset' do
45
+ it 'clean up puppetlabs repo' do
46
+ shell('apt-key del 4BD6EC30')
47
+ shell('rm /etc/apt/sources.list.d/puppetlabs.list')
48
+ end
49
+ end
50
+
51
+ end
@@ -0,0 +1,10 @@
1
+ require 'spec_helper_system'
2
+
3
+ describe 'basic tests:' do
4
+ # Using puppet_apply as a subject
5
+ context puppet_apply 'notice("foo")' do
6
+ its(:stdout) { should =~ /foo/ }
7
+ its(:stderr) { should be_empty }
8
+ its(:exit_code) { should be_zero }
9
+ end
10
+ end
@@ -0,0 +1,20 @@
1
+ require 'spec_helper_system'
2
+
3
+ describe 'apt class' do
4
+
5
+ context 'default parameters' do
6
+ # Using puppet_apply as a helper
7
+ it 'should work with no errors' do
8
+ pp = <<-EOS
9
+ class { 'apt': }
10
+ EOS
11
+
12
+ # Run it twice and test for idempotency
13
+ puppet_apply(pp) do |r|
14
+ r.exit_code.should_not == 1
15
+ r.refresh
16
+ r.exit_code.should be_zero
17
+ end
18
+ end
19
+ end
20
+ end
@@ -1,5 +1,5 @@
1
1
  # <%= @name %>
2
- deb <% if @architecture %>[arch=<%= @architecture %>]<% end %> <%= @location %> <%= @release_real %> <%= @repos %>
2
+ deb <% if @architecture %>[arch=<%= @architecture %>]<% end %><%= @location %> <%= @release_real %> <%= @repos %>
3
3
  <%- if @include_src then -%>
4
- deb-src <% if @architecture %>[arch=<%= @architecture %>]<% end %> <%= @location %> <%= @release_real %> <%= @repos %>
4
+ deb-src <% if @architecture %>[arch=<%= @architecture %>]<% end %><%= @location %> <%= @release_real %> <%= @repos %>
5
5
  <%- end -%>
@@ -0,0 +1,20 @@
1
+ class freighthop::database::mysql(
2
+ $db_names,
3
+ $users,
4
+ ) {
5
+ include mysql::server
6
+
7
+ mysql::db{$db_names:
8
+ user => "notorious",
9
+ password => "notorious",
10
+ host => "localhost",
11
+ grant => ['All']
12
+ }
13
+ mysql_grant { $users:
14
+ ensure => 'present',
15
+ options => ['GRANT'],
16
+ privileges => ['ALL'],
17
+ table => '*.*',
18
+ user => 'notorious@%',
19
+ }
20
+ }
@@ -1,17 +1,17 @@
1
1
  class freighthop::database::postgres(
2
- $databases,
3
- $database_users,
2
+ $db_names,
3
+ $users,
4
4
  ) {
5
5
  include postgresql::server
6
6
 
7
- postgresql::pg_hba_rule { 'local-users-get-everything':
7
+ postgresql::server::pg_hba_rule { 'local-users-get-everything':
8
8
  type => 'local',
9
9
  database => 'all',
10
10
  user => 'all',
11
11
  auth_method => 'trust',
12
12
  order => '0001',
13
13
  }
14
- postgresql::pg_hba_rule { 'local-host-connections-get-everything':
14
+ postgresql::server::pg_hba_rule { 'local-host-connections-get-everything':
15
15
  type => 'host',
16
16
  database => 'all',
17
17
  user => 'all',
@@ -19,8 +19,8 @@ class freighthop::database::postgres(
19
19
  auth_method => 'trust',
20
20
  order => '0001',
21
21
  }
22
- postgresql::database { $databases: }
23
- postgresql::database_user { $database_users:
22
+ postgresql::server::database { $db_names: }
23
+ postgresql::server::role { $users:
24
24
  superuser => true,
25
25
  createdb => true,
26
26
  createrole => true,
@@ -1,12 +1,10 @@
1
1
  class freighthop::database(
2
- $database_flavors,
3
- $databases,
4
- $database_users
2
+ $flavors
5
3
  ) {
6
- if (member($database_flavors, 'postgres')) {
7
- class { 'freighthop::database::postgres':
8
- databases => $databases,
9
- database_users => $database_users,
10
- }
4
+ if (member($flavors, 'postgres')) {
5
+ class { 'freighthop::database::postgres':}
6
+ }
7
+ if (member($flavors, 'mysql')) {
8
+ class { 'freighthop::database::mysql':}
11
9
  }
12
10
  }
@@ -2,9 +2,6 @@ class freighthop(
2
2
  $ppas = $freighthop::params::ppas,
3
3
  $packages = $freighthop::params::packages,
4
4
  $languages = $freighthop::params::languages,
5
- $database_flavors = $freighthop::params::database_flavors,
6
- $databases = $freighthop::params::databases,
7
- $database_users = $freighthop::params::database_users,
8
5
  $ruby_version = $freighthop::params::ruby_version,
9
6
  $app_name = $freighthop::params::app_name,
10
7
  $app_root = $freighthop::params::app_root,
@@ -34,9 +31,5 @@ class freighthop(
34
31
  ssl_key_path => $ssl_key_path,
35
32
  } ->
36
33
 
37
- class { 'freighthop::database':
38
- database_flavors => $database_flavors,
39
- databases => $databases,
40
- database_users => $database_users,
41
- }
34
+ class { 'freighthop::database':}
42
35
  }
@@ -1,7 +1,4 @@
1
1
  class freighthop::params {
2
- $database_flavors = []
3
- $databases = []
4
- $database_users = []
5
2
  $packages = []
6
3
  $ppas = []
7
4
  $languages = []