puppet 3.0.0.rc5 → 3.0.0.rc7

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of puppet might be problematic. Click here for more details.

Files changed (398) hide show
  1. data/LICENSE +1 -1
  2. data/README_DEVELOPER.md +209 -1
  3. data/README_HIERA.md +148 -0
  4. data/Rakefile +25 -27
  5. data/bin/extlookup2hiera +56 -0
  6. data/conf/auth.conf +34 -34
  7. data/examples/hiera/README.md +91 -0
  8. data/examples/hiera/etc/hiera.yaml +15 -0
  9. data/examples/hiera/etc/hieradb/common.yaml +3 -0
  10. data/examples/hiera/etc/hieradb/dc1.yaml +6 -0
  11. data/examples/hiera/etc/hieradb/development.yaml +2 -0
  12. data/examples/hiera/etc/puppet.conf +3 -0
  13. data/examples/hiera/modules/data/manifests/common.pp +3 -0
  14. data/examples/hiera/modules/ntp/manifests/config.pp +5 -0
  15. data/examples/hiera/modules/ntp/manifests/data.pp +3 -0
  16. data/examples/hiera/modules/ntp/templates/ntp.conf.erb +3 -0
  17. data/examples/hiera/modules/users/manifests/common.pp +3 -0
  18. data/examples/hiera/modules/users/manifests/dc1.pp +3 -0
  19. data/examples/hiera/modules/users/manifests/development.pp +3 -0
  20. data/examples/hiera/site.pp +3 -0
  21. data/ext/build_defaults.yaml +23 -0
  22. data/ext/debian/README.Debian +8 -0
  23. data/ext/debian/README.source +2 -0
  24. data/ext/debian/TODO.Debian +1 -0
  25. data/ext/debian/changelog.erb +1104 -0
  26. data/ext/debian/compat +1 -0
  27. data/ext/debian/control +143 -0
  28. data/ext/debian/copyright +361 -0
  29. data/ext/debian/docs +1 -0
  30. data/ext/debian/fileserver.conf +17 -0
  31. data/ext/debian/puppet-common.dirs +8 -0
  32. data/ext/debian/puppet-common.install +4 -0
  33. data/ext/debian/puppet-common.lintian-overrides +5 -0
  34. data/ext/debian/puppet-common.manpages +2 -0
  35. data/ext/debian/puppet-common.postinst +35 -0
  36. data/ext/debian/puppet-common.postrm +32 -0
  37. data/ext/debian/puppet-el.dirs +1 -0
  38. data/ext/debian/puppet-el.emacsen-install +25 -0
  39. data/ext/debian/puppet-el.emacsen-remove +11 -0
  40. data/ext/debian/puppet-el.emacsen-startup +9 -0
  41. data/ext/debian/puppet-el.install +1 -0
  42. data/ext/debian/puppet-testsuite.install +2 -0
  43. data/ext/debian/puppet-testsuite.lintian-overrides +4 -0
  44. data/ext/debian/puppet.conf +14 -0
  45. data/ext/debian/puppet.default +7 -0
  46. data/ext/debian/puppet.init +118 -0
  47. data/ext/debian/puppet.lintian-overrides +3 -0
  48. data/ext/debian/puppet.logrotate +11 -0
  49. data/ext/debian/puppet.manpages +32 -0
  50. data/ext/debian/puppet.postinst +20 -0
  51. data/ext/debian/puppet.postrm +20 -0
  52. data/ext/debian/puppet.preinst +20 -0
  53. data/ext/debian/puppetmaster-common.install +2 -0
  54. data/ext/debian/puppetmaster-common.manpages +2 -0
  55. data/ext/debian/puppetmaster-common.puppetqd.default +27 -0
  56. data/ext/debian/puppetmaster-common.puppetqd.init +84 -0
  57. data/ext/debian/puppetmaster-passenger.dirs +4 -0
  58. data/ext/debian/puppetmaster-passenger.postinst +66 -0
  59. data/ext/debian/puppetmaster-passenger.postrm +33 -0
  60. data/ext/debian/puppetmaster.README.debian +16 -0
  61. data/ext/debian/puppetmaster.default +38 -0
  62. data/ext/debian/puppetmaster.init +158 -0
  63. data/ext/debian/puppetmaster.lintian-overrides +3 -0
  64. data/ext/debian/puppetmaster.postinst +20 -0
  65. data/ext/debian/puppetmaster.postrm +5 -0
  66. data/ext/debian/puppetmaster.preinst +22 -0
  67. data/ext/debian/rules +128 -0
  68. data/ext/debian/source/format +1 -0
  69. data/ext/debian/source/options +1 -0
  70. data/ext/debian/vim-puppet.README.Debian +13 -0
  71. data/ext/debian/vim-puppet.dirs +3 -0
  72. data/ext/debian/vim-puppet.yaml +5 -0
  73. data/ext/debian/watch +2 -0
  74. data/ext/emacs/puppet-mode.el +1 -0
  75. data/ext/envpuppet +4 -0
  76. data/ext/envpuppet.bat +3 -2
  77. data/{conf → ext}/freebsd/puppetd +0 -0
  78. data/{conf → ext}/freebsd/puppetmasterd +0 -0
  79. data/{conf → ext}/gentoo/conf.d/puppet +0 -0
  80. data/{conf → ext}/gentoo/conf.d/puppetmaster +0 -0
  81. data/{conf → ext}/gentoo/init.d/puppet +0 -0
  82. data/{conf → ext}/gentoo/init.d/puppetmaster +0 -0
  83. data/{conf → ext}/gentoo/puppet/fileserver.conf +0 -0
  84. data/{conf → ext}/gentoo/puppet/puppet.conf +0 -0
  85. data/ext/ips/puppet-agent +49 -0
  86. data/ext/ips/puppet-master +44 -0
  87. data/ext/ips/puppet.conf +29 -0
  88. data/ext/ips/puppet.p5m.erb +12 -0
  89. data/ext/ips/puppetagent.xml +46 -0
  90. data/ext/ips/puppetmaster.xml +42 -0
  91. data/ext/ips/rules +19 -0
  92. data/ext/ips/transforms +34 -0
  93. data/{conf → ext}/osx/PackageInfo.plist +0 -0
  94. data/{conf → ext}/osx/createpackage.sh +1 -1
  95. data/ext/osx/file_mapping.yaml +33 -0
  96. data/ext/osx/preflight.erb +37 -0
  97. data/{tasks/rake/templates → ext/osx}/prototype.plist.erb +0 -0
  98. data/ext/packaging/README-Solaris.md +117 -0
  99. data/ext/packaging/README.md +89 -0
  100. data/ext/packaging/tasks/00_utils.rb +236 -0
  101. data/ext/packaging/tasks/10_setupvars.rake +62 -0
  102. data/ext/packaging/tasks/apple.rake +201 -0
  103. data/ext/packaging/tasks/clean.rake +5 -0
  104. data/ext/packaging/tasks/deb.rake +105 -0
  105. data/ext/packaging/tasks/gem.rake +52 -0
  106. data/ext/packaging/tasks/ips.rake +78 -0
  107. data/ext/packaging/tasks/mock.rake +88 -0
  108. data/ext/packaging/tasks/release.rake +20 -0
  109. data/ext/packaging/tasks/rpm.rake +39 -0
  110. data/ext/packaging/tasks/ship.rake +34 -0
  111. data/ext/packaging/tasks/sign.rake +76 -0
  112. data/ext/packaging/tasks/tar.rake +20 -0
  113. data/ext/project_data.yaml +25 -0
  114. data/ext/rack/files/apache2.conf +2 -1
  115. data/{conf → ext}/redhat/client.init +0 -0
  116. data/{conf → ext}/redhat/client.sysconfig +0 -0
  117. data/{conf → ext}/redhat/fileserver.conf +0 -0
  118. data/{conf → ext}/redhat/logrotate +0 -0
  119. data/{conf → ext}/redhat/puppet.conf +0 -0
  120. data/{conf/redhat/puppet.spec → ext/redhat/puppet.spec.erb} +140 -33
  121. data/{conf → ext}/redhat/queue.init +0 -0
  122. data/{conf → ext}/redhat/rundir-perms.patch +0 -0
  123. data/{conf → ext}/redhat/server.init +0 -0
  124. data/{conf → ext}/redhat/server.sysconfig +0 -0
  125. data/{conf → ext}/solaris/pkginfo +0 -0
  126. data/{conf → ext}/solaris/smf/puppetd.xml +0 -0
  127. data/{conf → ext}/solaris/smf/puppetmasterd.xml +0 -0
  128. data/{conf → ext}/solaris/smf/svc-puppetd +0 -0
  129. data/{conf → ext}/solaris/smf/svc-puppetmasterd +0 -0
  130. data/{conf → ext}/suse/client.init +0 -0
  131. data/{conf → ext}/suse/fileserver.conf +0 -0
  132. data/{conf → ext}/suse/logrotate +0 -0
  133. data/{conf → ext}/suse/puppet.conf +0 -0
  134. data/{conf → ext}/suse/puppet.spec +1 -1
  135. data/{conf → ext}/suse/server.init +0 -0
  136. data/ext/systemd/puppetagent.service +13 -0
  137. data/ext/systemd/puppetmaster.service +13 -0
  138. data/{conf → ext}/windows/eventlog/Rakefile +0 -0
  139. data/{conf → ext}/windows/eventlog/puppetres.dll +0 -0
  140. data/{conf → ext}/windows/eventlog/puppetres.mc +0 -0
  141. data/ext/windows/service/daemon.bat +6 -0
  142. data/ext/windows/service/daemon.rb +90 -0
  143. data/install.rb +22 -32
  144. data/lib/hiera/backend/puppet_backend.rb +102 -0
  145. data/lib/hiera/scope.rb +42 -0
  146. data/lib/hiera_puppet.rb +89 -0
  147. data/lib/puppet.rb +1 -1
  148. data/lib/puppet/agent.rb +2 -2
  149. data/lib/puppet/agent/locker.rb +12 -9
  150. data/lib/puppet/application.rb +10 -8
  151. data/lib/puppet/application/agent.rb +12 -8
  152. data/lib/puppet/application/apply.rb +2 -2
  153. data/lib/puppet/application/cert.rb +6 -6
  154. data/lib/puppet/application/certificate.rb +1 -4
  155. data/lib/puppet/application/describe.rb +1 -1
  156. data/lib/puppet/application/device.rb +5 -2
  157. data/lib/puppet/application/doc.rb +1 -1
  158. data/lib/puppet/application/face_base.rb +3 -13
  159. data/lib/puppet/application/filebucket.rb +1 -1
  160. data/lib/puppet/application/inspect.rb +1 -1
  161. data/lib/puppet/application/kick.rb +4 -2
  162. data/lib/puppet/application/master.rb +2 -2
  163. data/lib/puppet/application/queue.rb +3 -1
  164. data/lib/puppet/application/resource.rb +1 -1
  165. data/lib/puppet/configurer.rb +11 -7
  166. data/lib/puppet/configurer/downloader.rb +1 -4
  167. data/lib/puppet/daemon.rb +4 -4
  168. data/lib/puppet/defaults.rb +64 -60
  169. data/lib/puppet/external/dot.rb +1 -1
  170. data/lib/puppet/external/pson/common.rb +15 -0
  171. data/lib/puppet/external/pson/pure.rb +0 -62
  172. data/lib/puppet/external/pson/pure/generator.rb +1 -1
  173. data/lib/puppet/external/pson/pure/parser.rb +2 -2
  174. data/lib/puppet/face/ca.rb +19 -14
  175. data/lib/puppet/face/config.rb +2 -2
  176. data/lib/puppet/face/facts.rb +1 -1
  177. data/lib/puppet/face/help/action.erb +0 -1
  178. data/lib/puppet/face/help/face.erb +0 -1
  179. data/lib/puppet/face/help/man.erb +3 -6
  180. data/lib/puppet/face/module/install.rb +1 -1
  181. data/lib/puppet/face/module/list.rb +1 -1
  182. data/lib/puppet/face/module/uninstall.rb +1 -1
  183. data/lib/puppet/face/node.rb +1 -1
  184. data/lib/puppet/face/node/clean.rb +30 -25
  185. data/lib/puppet/feature/base.rb +0 -3
  186. data/lib/puppet/feature/rails.rb +2 -1
  187. data/lib/puppet/file_serving/terminus_selector.rb +1 -1
  188. data/lib/puppet/indirector/catalog/active_record.rb +5 -0
  189. data/lib/puppet/indirector/catalog/static_compiler.rb +2 -3
  190. data/lib/puppet/indirector/certificate/disabled_ca.rb +22 -0
  191. data/lib/puppet/indirector/certificate_request/disabled_ca.rb +22 -0
  192. data/lib/puppet/indirector/certificate_revocation_list/disabled_ca.rb +22 -0
  193. data/lib/puppet/indirector/face.rb +3 -3
  194. data/lib/puppet/indirector/facts/active_record.rb +5 -0
  195. data/lib/puppet/indirector/facts/facter.rb +1 -4
  196. data/lib/puppet/indirector/facts/inventory_active_record.rb +6 -0
  197. data/lib/puppet/indirector/file_bucket_file/file.rb +2 -1
  198. data/lib/puppet/indirector/indirection.rb +2 -2
  199. data/lib/puppet/indirector/key/disabled_ca.rb +22 -0
  200. data/lib/puppet/indirector/node/active_record.rb +5 -0
  201. data/lib/puppet/indirector/request.rb +4 -0
  202. data/lib/puppet/indirector/resource/active_record.rb +5 -0
  203. data/lib/puppet/network/authentication.rb +30 -0
  204. data/lib/puppet/network/http.rb +0 -13
  205. data/lib/puppet/network/http/connection.rb +10 -2
  206. data/lib/puppet/network/http/handler.rb +8 -0
  207. data/lib/puppet/network/http/mongrel/rest.rb +5 -0
  208. data/lib/puppet/network/http/rack/rest.rb +7 -0
  209. data/lib/puppet/network/http/webrick.rb +3 -6
  210. data/lib/puppet/network/http/webrick/rest.rb +4 -0
  211. data/lib/puppet/network/server.rb +9 -33
  212. data/lib/puppet/node.rb +1 -1
  213. data/lib/puppet/node/facts.rb +0 -1
  214. data/lib/puppet/parser/compiler.rb +1 -1
  215. data/lib/puppet/parser/functions.rb +12 -1
  216. data/lib/puppet/parser/functions/hiera.rb +8 -0
  217. data/lib/puppet/parser/functions/hiera_array.rb +8 -0
  218. data/lib/puppet/parser/functions/hiera_hash.rb +8 -0
  219. data/lib/puppet/parser/functions/hiera_include.rb +11 -0
  220. data/lib/puppet/parser/functions/shellquote.rb +21 -29
  221. data/lib/puppet/parser/lexer.rb +2 -1
  222. data/lib/puppet/parser/scope.rb +8 -0
  223. data/lib/puppet/provider/exec/windows.rb +1 -1
  224. data/lib/puppet/provider/group/groupadd.rb +2 -3
  225. data/lib/puppet/provider/package/pkg.rb +37 -10
  226. data/lib/puppet/provider/service/daemontools.rb +1 -1
  227. data/lib/puppet/provider/service/launchd.rb +1 -1
  228. data/lib/puppet/provider/service/redhat.rb +1 -1
  229. data/lib/puppet/provider/service/runit.rb +1 -1
  230. data/lib/puppet/provider/user/useradd.rb +8 -3
  231. data/lib/puppet/provider/user/windows_adsi.rb +11 -0
  232. data/lib/puppet/provider/zfs/zfs.rb +29 -2
  233. data/lib/puppet/provider/zone/solaris.rb +144 -39
  234. data/lib/puppet/provider/zpool/zpool.rb +7 -10
  235. data/lib/puppet/settings.rb +50 -86
  236. data/lib/puppet/settings/duration_setting.rb +34 -0
  237. data/lib/puppet/settings/terminus_setting.rb +16 -0
  238. data/lib/puppet/ssl/base.rb +49 -9
  239. data/lib/puppet/ssl/certificate.rb +13 -9
  240. data/lib/puppet/ssl/certificate_authority.rb +4 -0
  241. data/lib/puppet/ssl/certificate_authority/interface.rb +10 -17
  242. data/lib/puppet/ssl/certificate_factory.rb +4 -21
  243. data/lib/puppet/ssl/certificate_request.rb +1 -10
  244. data/lib/puppet/ssl/certificate_revocation_list.rb +1 -3
  245. data/lib/puppet/ssl/digest.rb +20 -0
  246. data/lib/puppet/ssl/host.rb +31 -6
  247. data/lib/puppet/test/test_helper.rb +1 -1
  248. data/lib/puppet/transaction/report.rb +2 -1
  249. data/lib/puppet/type.rb +1 -1
  250. data/lib/puppet/type/augeas.rb +1 -1
  251. data/lib/puppet/type/cron.rb +1 -1
  252. data/lib/puppet/type/exec.rb +7 -8
  253. data/lib/puppet/type/file.rb +1 -1
  254. data/lib/puppet/type/file/content.rb +2 -2
  255. data/lib/puppet/type/file/ensure.rb +1 -1
  256. data/lib/puppet/type/file/mode.rb +1 -1
  257. data/lib/puppet/type/file/selcontext.rb +6 -2
  258. data/lib/puppet/type/file/source.rb +1 -1
  259. data/lib/puppet/type/schedule.rb +1 -1
  260. data/lib/puppet/type/scheduled_task.rb +1 -1
  261. data/lib/puppet/type/tidy.rb +1 -1
  262. data/lib/puppet/type/zone.rb +126 -253
  263. data/lib/puppet/util.rb +10 -23
  264. data/lib/puppet/util/adsi.rb +22 -14
  265. data/lib/puppet/util/log/destinations.rb +7 -0
  266. data/lib/puppet/util/log/rate_limited_logger.rb +40 -0
  267. data/lib/puppet/util/metric.rb +2 -2
  268. data/lib/puppet/util/monkey_patches.rb +8 -0
  269. data/lib/puppet/util/platform.rb +7 -0
  270. data/lib/puppet/util/selinux.rb +31 -36
  271. data/lib/puppet/util/windows/error.rb +1 -1
  272. data/lib/puppet/util/windows/process.rb +3 -3
  273. data/lib/puppet/util/windows/security.rb +7 -7
  274. data/lib/puppet/util/windows/user.rb +65 -2
  275. data/lib/puppet/util/zaml.rb +90 -46
  276. data/lib/puppet/version.rb +1 -1
  277. data/spec/fixtures/hiera.yaml +9 -0
  278. data/spec/fixtures/manifests/site.pp +0 -0
  279. data/spec/integration/defaults_spec.rb +25 -11
  280. data/spec/integration/faces/ca_spec.rb +11 -16
  281. data/spec/integration/network/server/webrick_spec.rb +14 -27
  282. data/spec/integration/node_spec.rb +4 -1
  283. data/spec/integration/parser/functions/require_spec.rb +3 -3
  284. data/spec/integration/parser/undef_param_spec.rb +88 -0
  285. data/spec/integration/provider/mount_spec.rb +4 -1
  286. data/spec/integration/ssl/certificate_authority_spec.rb +18 -0
  287. data/spec/lib/puppet_spec/files.rb +3 -3
  288. data/spec/lib/puppet_spec/settings.rb +0 -1
  289. data/spec/shared_contexts/platform.rb +8 -0
  290. data/spec/spec_helper.rb +6 -0
  291. data/spec/unit/agent/locker_spec.rb +8 -2
  292. data/spec/unit/application/agent_spec.rb +29 -7
  293. data/spec/unit/application/apply_spec.rb +1 -1
  294. data/spec/unit/application/device_spec.rb +18 -1
  295. data/spec/unit/application/face_base_spec.rb +16 -2
  296. data/spec/unit/application/kick_spec.rb +8 -0
  297. data/spec/unit/application/queue_spec.rb +5 -0
  298. data/spec/unit/application_spec.rb +13 -23
  299. data/spec/unit/configurer/downloader_spec.rb +2 -11
  300. data/spec/unit/configurer_spec.rb +6 -0
  301. data/spec/unit/face/node_spec.rb +1 -1
  302. data/spec/unit/hiera/backend/puppet_backend_spec.rb +140 -0
  303. data/spec/unit/hiera/scope_spec.rb +62 -0
  304. data/spec/unit/hiera_puppet_spec.rb +111 -0
  305. data/spec/unit/indirector/catalog/active_record_spec.rb +4 -0
  306. data/spec/unit/indirector/catalog/static_compiler_spec.rb +194 -0
  307. data/spec/unit/indirector/certificate/disabled_ca_spec.rb +33 -0
  308. data/spec/unit/indirector/certificate_request/disabled_ca_spec.rb +33 -0
  309. data/spec/unit/indirector/certificate_revocation_list/disabled_ca_spec.rb +33 -0
  310. data/spec/unit/indirector/facts/active_record_spec.rb +37 -26
  311. data/spec/unit/indirector/facts/inventory_active_record_spec.rb +5 -0
  312. data/spec/unit/indirector/hiera_spec.rb +2 -1
  313. data/spec/unit/indirector/key/disabled_ca_spec.rb +33 -0
  314. data/spec/unit/indirector/node/active_record_spec.rb +7 -0
  315. data/spec/unit/indirector/request_spec.rb +22 -0
  316. data/spec/unit/indirector/resource/active_record_spec.rb +5 -0
  317. data/spec/unit/module_tool/application_spec.rb +1 -1
  318. data/spec/unit/network/authentication_spec.rb +86 -0
  319. data/spec/unit/network/http/connection_spec.rb +21 -0
  320. data/spec/unit/network/http/handler_spec.rb +12 -0
  321. data/spec/unit/network/http/rack/rest_spec.rb +7 -0
  322. data/spec/unit/network/http/webrick_spec.rb +11 -26
  323. data/spec/unit/network/server_spec.rb +79 -192
  324. data/spec/unit/node/facts_spec.rb +2 -2
  325. data/spec/unit/parser/ast/vardef_spec.rb +4 -4
  326. data/spec/unit/parser/files_spec.rb +3 -0
  327. data/spec/unit/parser/functions/defined_spec.rb +5 -5
  328. data/spec/unit/parser/functions/fqdn_rand_spec.rb +1 -1
  329. data/spec/unit/parser/functions/hiera_array_spec.rb +23 -0
  330. data/spec/unit/parser/functions/hiera_hash_spec.rb +19 -0
  331. data/spec/unit/parser/functions/hiera_include_spec.rb +19 -0
  332. data/spec/unit/parser/functions/hiera_spec.rb +21 -0
  333. data/spec/unit/parser/functions/include_spec.rb +3 -3
  334. data/spec/unit/parser/functions/realize_spec.rb +3 -3
  335. data/spec/unit/parser/functions/require_spec.rb +5 -5
  336. data/spec/unit/parser/functions/shellquote_spec.rb +0 -4
  337. data/spec/unit/parser/functions_spec.rb +6 -10
  338. data/spec/unit/parser/lexer_spec.rb +13 -0
  339. data/spec/unit/parser/scope_spec.rb +16 -1
  340. data/spec/unit/provider/exec/posix_spec.rb +7 -6
  341. data/spec/unit/provider/group/groupadd_spec.rb +36 -30
  342. data/spec/unit/provider/package/pkg_spec.rb +16 -2
  343. data/spec/unit/provider/service/redhat_spec.rb +2 -2
  344. data/spec/unit/provider/sshkey/parsed_spec.rb +4 -0
  345. data/spec/unit/provider/user/user_role_add_spec.rb +125 -126
  346. data/spec/unit/provider/user/useradd_spec.rb +147 -118
  347. data/spec/unit/provider/user/windows_adsi_spec.rb +22 -0
  348. data/spec/unit/provider/zone/solaris_spec.rb +126 -7
  349. data/spec/unit/provider/zpool/zpool_spec.rb +4 -3
  350. data/spec/unit/puppet_spec.rb +7 -0
  351. data/spec/unit/settings/duration_setting_spec.rb +45 -0
  352. data/spec/unit/settings/terminus_setting_spec.rb +28 -0
  353. data/spec/unit/settings_spec.rb +21 -23
  354. data/spec/unit/ssl/base_spec.rb +68 -19
  355. data/spec/unit/ssl/certificate_authority/interface_spec.rb +19 -30
  356. data/spec/unit/ssl/certificate_authority_spec.rb +3 -2
  357. data/spec/unit/ssl/certificate_factory_spec.rb +15 -6
  358. data/spec/unit/ssl/certificate_request_spec.rb +80 -113
  359. data/spec/unit/ssl/certificate_revocation_list_spec.rb +1 -1
  360. data/spec/unit/ssl/certificate_spec.rb +26 -2
  361. data/spec/unit/ssl/digest_spec.rb +35 -0
  362. data/spec/unit/ssl/host_spec.rb +73 -27
  363. data/spec/unit/ssl/key_spec.rb +0 -4
  364. data/spec/unit/type/exec_spec.rb +1 -1
  365. data/spec/unit/type/file_spec.rb +2 -1
  366. data/spec/unit/type/scheduled_task_spec.rb +2 -2
  367. data/spec/unit/type/zone_spec.rb +52 -10
  368. data/spec/unit/util/adsi_spec.rb +19 -0
  369. data/spec/unit/util/checksums_spec.rb +2 -3
  370. data/spec/unit/util/execution_spec.rb +1 -1
  371. data/spec/unit/util/log/destinations_spec.rb +1 -0
  372. data/spec/unit/util/log/rate_limited_logger_spec.rb +51 -0
  373. data/spec/unit/util/logging_spec.rb +6 -6
  374. data/spec/unit/util/selinux_spec.rb +24 -32
  375. data/spec/unit/util/zaml_spec.rb +94 -6
  376. data/spec/unit/util_spec.rb +17 -0
  377. data/spec/watchr.rb +2 -6
  378. data/tasks/{rake/manpages.rake → manpages.rake} +0 -0
  379. data/tasks/{rake/parser.rake → parser.rake} +0 -0
  380. metadata +1003 -119
  381. data/CHANGELOG +0 -9233
  382. data/conf/osx/preflight +0 -24
  383. data/lib/puppet/network/http/mongrel.rb +0 -35
  384. data/lib/puppet/util/config_timeout.rb +0 -24
  385. data/spec/unit/network/http/mongrel/rest_spec.rb +0 -257
  386. data/spec/unit/network/http/mongrel_spec.rb +0 -91
  387. data/spec/unit/network/http_spec.rb +0 -31
  388. data/spec/unit/util/config_timeout_spec.rb +0 -57
  389. data/tasks/rake/apple.rake +0 -176
  390. data/tasks/rake/changelog.rake +0 -15
  391. data/tasks/rake/ci.rake +0 -22
  392. data/tasks/rake/dailybuild.rake +0 -9
  393. data/tasks/rake/gem.rake +0 -63
  394. data/tasks/rake/git_workflow.rake +0 -134
  395. data/tasks/rake/metrics.rake +0 -14
  396. data/tasks/rake/sign.rake +0 -14
  397. data/tasks/rake/testbranch.rake +0 -16
  398. data/tasks/rake/yard.rake +0 -11
@@ -0,0 +1 @@
1
+ README.md
@@ -0,0 +1,17 @@
1
+ # This file consists of arbitrarily named sections/modules
2
+ # defining where files are served from and to whom
3
+
4
+ # Define a section 'files'
5
+ # Adapt the allow/deny settings to your needs. Order
6
+ # for allow/deny does not matter, allow always takes precedence
7
+ # over deny
8
+ #[files]
9
+ # path /etc/puppet/files
10
+ # allow *.example.com
11
+ # deny *.evil.example.com
12
+ # allow 192.168.0.0/24
13
+
14
+ #[plugins]
15
+ # allow *.example.com
16
+ # deny *.evil.example.com
17
+ # allow 192.168.0.0/24
@@ -0,0 +1,8 @@
1
+ etc/puppet
2
+ etc/puppet/manifests
3
+ etc/puppet/templates
4
+ etc/puppet/modules
5
+ usr/lib/ruby/vendor_ruby
6
+ usr/share/puppet/ext
7
+ var/lib/puppet
8
+ var/log/puppet
@@ -0,0 +1,4 @@
1
+ debian/puppet.conf etc/puppet
2
+ debian/tmp/usr/bin/puppet usr/bin
3
+ debian/tmp/usr/bin/extlookup2hiera usr/bin
4
+ debian/tmp/usr/lib/ruby/vendor_ruby/* usr/lib/ruby/vendor_ruby
@@ -0,0 +1,5 @@
1
+ # Man pages are automatically generated, not much to do here
2
+ puppet-common binary: manpage-has-bad-whatis-entry
3
+ puppet-common binary: manpage-has-errors-from-man
4
+ # These are "scripts" but do nothing other than providing documentation
5
+ puppet-common: script-not-executable
@@ -0,0 +1,2 @@
1
+ man/man5/puppet.conf.5
2
+ man/man8/puppet.8
@@ -0,0 +1,35 @@
1
+ #!/bin/sh
2
+
3
+ set -e
4
+
5
+ if [ "$1" = "configure" ]; then
6
+
7
+ # Create the "puppet" user
8
+ if ! getent passwd puppet > /dev/null; then
9
+ adduser --quiet --system --group --home /var/lib/puppet \
10
+ --no-create-home \
11
+ --gecos "Puppet configuration management daemon" \
12
+ puppet
13
+ fi
14
+
15
+ # Set correct permissions and ownership for puppet directories
16
+ if ! dpkg-statoverride --list /var/log/puppet >/dev/null 2>&1; then
17
+ dpkg-statoverride --update --add puppet puppet 0750 /var/log/puppet
18
+ fi
19
+
20
+ if ! dpkg-statoverride --list /var/lib/puppet >/dev/null 2>&1; then
21
+ dpkg-statoverride --update --add puppet puppet 0750 /var/lib/puppet
22
+ fi
23
+
24
+ # Create folders common to "puppet" and "puppetmaster", which need
25
+ # to be owned by the "puppet" user
26
+ install --owner puppet --group puppet --directory \
27
+ /var/lib/puppet/state
28
+
29
+ # Handle
30
+ if [ -d /etc/puppet/ssl ] && [ ! -e /var/lib/puppet/ssl ] && grep -q 'ssldir=/var/lib/puppet/ssl' /etc/puppet/puppet.conf; then
31
+ mv /etc/puppet/ssl /var/lib/puppet/ssl
32
+ fi
33
+ fi
34
+
35
+ #DEBHELPER#
@@ -0,0 +1,32 @@
1
+ #!/bin/sh -e
2
+
3
+ case "$1" in
4
+ purge)
5
+ # Remove puppetd.conf (used in > 0.24)
6
+ rm -f /etc/puppet/puppetd.conf
7
+
8
+ # Remove puppet state directory created by the postinst script.
9
+ # This directory can be removed without causing harm
10
+ # according to upstream documentation.
11
+ rm -rf /var/lib/puppet/state
12
+ if [ -d /var/lib/puppet ]; then
13
+ rmdir --ignore-fail-on-non-empty /var/lib/puppet
14
+ fi
15
+
16
+ # Remove puppet log files
17
+ rm -rf /var/log/puppet/
18
+ ;;
19
+ remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
20
+
21
+
22
+ ;;
23
+
24
+ *)
25
+ echo "postrm called with unknown argument \`$1'" >&2
26
+ exit 1
27
+
28
+ esac
29
+
30
+ #DEBHELPER#
31
+
32
+ exit 0
@@ -0,0 +1 @@
1
+ usr/share/emacs/site-lisp
@@ -0,0 +1,25 @@
1
+ #!/bin/sh
2
+ #
3
+ # emacsen install script for the Debian GNU/Linux puppet-el package
4
+
5
+ FLAVOR=$1
6
+ PACKAGE=puppet-el
7
+
8
+ ELDIR=/usr/share/emacs/site-lisp/
9
+ ELCDIR=/usr/share/${FLAVOR}/site-lisp/${PACKAGE}
10
+ ELFILE="puppet-mode.el"
11
+ FLAGS="-batch -no-site-file -l path.el -f batch-byte-compile"
12
+
13
+ if [ ${FLAVOR} != emacs ]; then
14
+ echo install/${PACKAGE}: Byte-compiling for ${FLAVOR}
15
+
16
+ install -m 755 -d ${ELCDIR}
17
+ cd ${ELDIR}
18
+ cp ${ELFILE} ${ELCDIR}
19
+ cd ${ELCDIR}
20
+ cat << EOF > path.el
21
+ (setq load-path (cons "." load-path) byte-compile-warnings nil)
22
+ EOF
23
+ ${FLAVOR} ${FLAGS} ${ELFILE}
24
+ rm -f ${ELFILE} path.el
25
+ fi
@@ -0,0 +1,11 @@
1
+ #!/bin/sh
2
+ set -e
3
+
4
+ FLAVOR=$1
5
+ PACKAGE=puppet-el
6
+ ELCFILE=puppet-mode.elc
7
+
8
+ if [ ${FLAVOR} != emacs ]; then
9
+ echo remove/${PACKAGE}: Purging byte-compiled files for ${FLAVOR}
10
+ rm -f /usr/share/${FLAVOR}/site-lisp/${ELCFILE}
11
+ fi
@@ -0,0 +1,9 @@
1
+ ;; -*-emacs-lisp-*-
2
+ ;;
3
+ ;; Emacs startup file for the Debian GNU/Linux puppet-el package
4
+
5
+ (autoload 'puppet-mode "puppet-mode" "Major mode for editing puppet manifests")
6
+
7
+ (add-to-list 'auto-mode-alist '("\\.pp$" . puppet-mode))
8
+
9
+
@@ -0,0 +1 @@
1
+ ext/emacs/puppet-mode.el usr/share/emacs/site-lisp
@@ -0,0 +1,2 @@
1
+ spec/* /usr/share/puppet-testsuite/spec
2
+ Rakefile /usr/share/puppet-testsuite/
@@ -0,0 +1,4 @@
1
+ # Upstream distributes it like this
2
+ puppet-testsuite binary: executable-not-elf-or-script
3
+ puppet-testsuite binary: script-not-executable
4
+ puppet-testsuite binary: unusual-interpreter
@@ -0,0 +1,14 @@
1
+ [main]
2
+ logdir=/var/log/puppet
3
+ vardir=/var/lib/puppet
4
+ ssldir=/var/lib/puppet/ssl
5
+ rundir=/var/run/puppet
6
+ factpath=$vardir/lib/facter
7
+ templatedir=$confdir/templates
8
+
9
+ [master]
10
+ # These are needed when the puppetmaster is run by passenger
11
+ # and can safely be removed if webrick is used.
12
+ ssl_client_header = SSL_CLIENT_S_DN
13
+ ssl_client_verify_header = SSL_CLIENT_VERIFY
14
+
@@ -0,0 +1,7 @@
1
+ # Defaults for puppet - sourced by /etc/init.d/puppet
2
+
3
+ # Start puppet on boot?
4
+ START=no
5
+
6
+ # Startup options
7
+ DAEMON_OPTS=""
@@ -0,0 +1,118 @@
1
+ #! /bin/sh
2
+ ### BEGIN INIT INFO
3
+ # Provides: puppet
4
+ # Required-Start: $network $named $remote_fs $syslog
5
+ # Required-Stop: $network $named $remote_fs $syslog
6
+ # Should-Start: puppet
7
+ # Default-Start: 2 3 4 5
8
+ # Default-Stop: 0 1 6
9
+ ### END INIT INFO
10
+
11
+ PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
12
+ DAEMON=/usr/bin/puppet
13
+ DAEMON_OPTS="agent"
14
+ NAME=agent
15
+ DESC="puppet agent"
16
+ PIDFILE="/var/run/puppet/${NAME}.pid"
17
+
18
+ test -x $DAEMON || exit 0
19
+
20
+ [ -r /etc/default/puppet ] && . /etc/default/puppet
21
+
22
+ . /lib/lsb/init-functions
23
+
24
+ is_true() {
25
+ if [ "x$1" = "xtrue" -o "x$1" = "xyes" -o "x$1" = "x0" ] ; then
26
+ return 0
27
+ else
28
+ return 1
29
+ fi
30
+ }
31
+
32
+ reload_puppet_agent() {
33
+ start-stop-daemon --stop --quiet --signal HUP --pidfile $PIDFILE
34
+ }
35
+
36
+ start_puppet_agent() {
37
+ if is_true "$START" ; then
38
+ start-stop-daemon --start --quiet --pidfile $PIDFILE \
39
+ --startas $DAEMON -- $NAME $DAEMON_OPTS
40
+ else
41
+ echo ""
42
+ echo "puppet not configured to start, please edit /etc/default/puppet to enable"
43
+ fi
44
+ }
45
+
46
+ stop_puppet_agent() {
47
+ start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE
48
+ }
49
+
50
+ status_puppet_agent() {
51
+ if (type status_of_proc > /dev/null 2>&1) ; then
52
+ status_of_proc -p "${PIDFILE}" "${DAEMON}" "${NAME}"
53
+ else
54
+ status_of_proc() {
55
+ local pidfile daemon name status
56
+
57
+ pidfile=
58
+ OPTIND=1
59
+ while getopts p: opt ; do
60
+ case "$opt" in
61
+ p) pidfile="$OPTARG";;
62
+ esac
63
+ done
64
+ shift $(($OPTIND - 1))
65
+
66
+ if [ -n "$pidfile" ]; then
67
+ pidfile="-p $pidfile"
68
+ fi
69
+ daemon="$1"
70
+ name="$2"
71
+ status="0"
72
+ pidofproc $pidfile $daemon >/dev/null || status="$?"
73
+ if [ "$status" = 0 ]; then
74
+ log_success_msg "$name is running"
75
+ return 0
76
+ elif [ "$status" = 4 ]; then
77
+ log_failure_msg "could not access PID file for $name"
78
+ return $status
79
+ else
80
+ log_failure_msg "$name is not running"
81
+ return $status
82
+ fi
83
+ }
84
+ status_of_proc -p "${PIDFILE}" "${DAEMON}" "${NAME}"
85
+ fi
86
+ }
87
+
88
+ case "$1" in
89
+ start)
90
+ log_begin_msg "Starting $DESC"
91
+ start_puppet_agent
92
+ log_end_msg $?
93
+ ;;
94
+ stop)
95
+ log_begin_msg "Stopping $DESC"
96
+ stop_puppet_agent
97
+ log_end_msg $?
98
+ ;;
99
+ reload)
100
+ log_begin_msg "Reloading $DESC"
101
+ reload_puppet_agent
102
+ log_end_msg $?
103
+ ;;
104
+ status)
105
+ status_puppet_agent
106
+ ;;
107
+ restart|force-reload)
108
+ log_begin_msg "Restarting $DESC"
109
+ stop_puppet_agent
110
+ sleep 1
111
+ start_puppet_agent
112
+ log_end_msg $?
113
+ ;;
114
+ *)
115
+ echo "Usage: $0 {start|stop|status|restart|force-reload|reload}" >&2
116
+ exit 1
117
+ ;;
118
+ esac
@@ -0,0 +1,3 @@
1
+ # Man pages are automatically generated, not much to do here
2
+ puppet binary: manpage-has-bad-whatis-entry
3
+ puppet binary: manpage-has-errors-from-man
@@ -0,0 +1,11 @@
1
+ /var/log/puppet/*log {
2
+ missingok
3
+ create 0644 puppet puppet
4
+ compress
5
+ rotate 4
6
+
7
+ postrotate
8
+ pkill -USR2 -u puppet -f 'puppet master' || true
9
+ [ -e /etc/init.d/puppet ] && /etc/init.d/puppet reload > /dev/null 2>&1 || true
10
+ endscript
11
+ }
@@ -0,0 +1,32 @@
1
+ man/man8/puppet-agent.8
2
+ man/man8/puppet-apply.8
3
+ man/man8/puppet-catalog.8
4
+ man/man8/puppet-describe.8
5
+ man/man8/puppet-cert.8
6
+ man/man8/puppet-certificate.8
7
+ man/man8/puppet-certificate_request.8
8
+ man/man8/puppet-certificate_revocation_list.8
9
+ man/man8/puppet-config.8
10
+ man/man8/puppet-device.8
11
+ man/man8/puppet-doc.8
12
+ man/man8/puppet-facts.8
13
+ man/man8/puppet-file.8
14
+ man/man8/puppet-filebucket.8
15
+ man/man8/puppet-help.8
16
+ man/man8/puppet-inspect.8
17
+ man/man8/puppet-instrumentation_data.8
18
+ man/man8/puppet-instrumentation_listener.8
19
+ man/man8/puppet-instrumentation_probe.8
20
+ man/man8/puppet-key.8
21
+ man/man8/puppet-kick.8
22
+ man/man8/puppet-man.8
23
+ man/man8/puppet-module.8
24
+ man/man8/puppet-node.8
25
+ man/man8/puppet-parser.8
26
+ man/man8/puppet-plugin.8
27
+ man/man8/puppet-queue.8
28
+ man/man8/puppet-report.8
29
+ man/man8/puppet-resource.8
30
+ man/man8/puppet-resource_type.8
31
+ man/man8/puppet-secret_agent.8
32
+ man/man8/puppet-status.8
@@ -0,0 +1,20 @@
1
+ #!/bin/sh
2
+
3
+ set -e
4
+
5
+ # Remove renamed configuration files which are now handled by other
6
+ # packages
7
+ if dpkg-maintscript-helper supports rm_conffile 2>/dev/null; then
8
+
9
+ dpkg-maintscript-helper rm_conffile \
10
+ /etc/logrotate.d/puppet 2.6.4-2 puppet -- "$@"
11
+
12
+ dpkg-maintscript-helper rm_conffile \
13
+ /etc/logcheck/ignore.d.server/puppet 2.6.4-2 puppet -- "$@"
14
+
15
+ dpkg-maintscript-helper rm_conffile \
16
+ /etc/emacs/site-start.d/50puppet-mode-init.el 2.6.4-2 puppet -- "$@"
17
+
18
+ fi
19
+
20
+ #DEBHELPER#
@@ -0,0 +1,20 @@
1
+ #!/bin/sh
2
+
3
+ set -e
4
+
5
+ # Remove renamed configuration files which are now handled by other
6
+ # packages
7
+ if dpkg-maintscript-helper supports rm_conffile 2>/dev/null; then
8
+
9
+ dpkg-maintscript-helper rm_conffile \
10
+ /etc/logrotate.d/puppet 2.6.4-2 puppet -- "$@"
11
+
12
+ dpkg-maintscript-helper rm_conffile \
13
+ /etc/logcheck/ignore.d.server/puppet 2.6.4-2 puppet -- "$@"
14
+
15
+ dpkg-maintscript-helper rm_conffile \
16
+ /etc/emacs/site-start.d/50puppet-mode-init.el 2.6.4-2 puppet -- "$@"
17
+
18
+ fi
19
+
20
+ #DEBHELPER#
@@ -0,0 +1,20 @@
1
+ #!/bin/sh
2
+
3
+ set -e
4
+
5
+ # Remove renamed configuration files which are now handled by other
6
+ # packages
7
+ if dpkg-maintscript-helper supports rm_conffile 2>/dev/null; then
8
+
9
+ dpkg-maintscript-helper rm_conffile \
10
+ /etc/logrotate.d/puppet 2.6.4-2 puppet -- "$@"
11
+
12
+ dpkg-maintscript-helper rm_conffile \
13
+ /etc/logcheck/ignore.d.server/puppet 2.6.4-2 puppet -- "$@"
14
+
15
+ dpkg-maintscript-helper rm_conffile \
16
+ /etc/emacs/site-start.d/50puppet-mode-init.el 2.6.4-2 puppet -- "$@"
17
+
18
+ fi
19
+
20
+ #DEBHELPER#
@@ -0,0 +1,2 @@
1
+ debian/fileserver.conf etc/puppet
2
+ conf/auth.conf etc/puppet