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,5 @@
1
+ #!/bin/sh -e
2
+
3
+ #DEBHELPER#
4
+
5
+ exit 0
@@ -0,0 +1,22 @@
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/puppetmaster 2.7.16-1puppetlabs1 puppetmaster -- "$@"
11
+
12
+
13
+ # For systems with dpkg < 1.15.7-2
14
+ else
15
+
16
+ if [ -f /etc/logrotate.d/puppetmaster ]; then
17
+ rm /etc/logrotate.d/puppetmaster || true
18
+ fi
19
+ fi
20
+
21
+
22
+ #DEBHELPER#
@@ -0,0 +1,128 @@
1
+ #!/usr/bin/make -f
2
+ # -*- makefile -*-
3
+
4
+ # Uncomment this to turn on verbose mode.
5
+ #export DH_VERBOSE=1
6
+
7
+ INSTALL=install -Dp
8
+
9
+ prefix := $(CURDIR)/debian/tmp
10
+ bindir := $(prefix)/$(shell /usr/bin/ruby -rrbconfig -e 'puts RbConfig::CONFIG["bindir"]')
11
+ libdir := $(prefix)/usr/lib
12
+ localstatedir := $(prefix)/var
13
+ rubylibdir := $(shell /usr/bin/ruby -rrbconfig -e 'puts RbConfig::CONFIG["vendordir"]')
14
+ sysconfdir := $(prefix)/etc
15
+ pkgconfdir := $(sysconfdir)/puppet
16
+
17
+ ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
18
+ CFLAGS += -O0
19
+ else
20
+ CFLAGS += -O2
21
+ endif
22
+
23
+ configure: configure-stamp
24
+ configure-stamp:
25
+ dh_testdir
26
+ touch configure-stamp
27
+
28
+
29
+ build-arch: build
30
+ build-indep: build
31
+
32
+ build: build-stamp
33
+ build-stamp: configure-stamp
34
+ dh_testdir
35
+ touch build-stamp
36
+
37
+ clean:
38
+ dh_testdir
39
+ dh_testroot
40
+ rm -f build-stamp configure-stamp
41
+ rm -f debian/puppet-common.logcheck.ignore.server
42
+ dh_clean
43
+
44
+ install: build
45
+ dh_testdir
46
+ dh_testroot
47
+ dh_clean -k
48
+ dh_installdirs
49
+
50
+ $(CURDIR)/install.rb --destdir=debian/tmp --bindir=/usr/bin --sitelibdir=$(rubylibdir) --ruby=/usr/bin/ruby
51
+
52
+ # strip executable bit from all the non-executable files.
53
+ find $(prefix)/$(rubylibdir) -type f -perm /u+x,g+x,o+x -exec chmod a-x {} \;
54
+ # fix the permissions on all of the directories
55
+ find $(prefix)/$(rubylibdir) -type d -exec chmod 755 {} \;
56
+
57
+ # Vim auto-syntax-highlighting stuff
58
+ $(INSTALL) -m0644 ext/vim/syntax/puppet.vim \
59
+ $(CURDIR)/debian/vim-puppet/usr/share/vim/addons/syntax/
60
+ $(INSTALL) -m0644 ext/vim/ftdetect/puppet.vim \
61
+ $(CURDIR)/debian/vim-puppet/usr/share/vim/addons/ftdetect/
62
+ $(INSTALL) -m0644 debian/vim-puppet.yaml \
63
+ $(CURDIR)/debian/vim-puppet/usr/share/vim/registry/
64
+
65
+ # Emacs mode
66
+ $(INSTALL) -m0644 ext/emacs/puppet-mode.el \
67
+ $(CURDIR)/debian/puppet-el/usr/share/emacs/site-lisp/puppet-mode.el
68
+
69
+ # Install the rack README as README.rack
70
+ $(INSTALL) -m0644 ext/rack/README \
71
+ $(CURDIR)/debian/puppetmaster-passenger/usr/share/doc/puppetmaster-passenger/README.rack
72
+ # Install the config.ru
73
+ $(INSTALL) -m0644 ext/rack/files/config.ru \
74
+ $(CURDIR)/debian/puppetmaster-passenger/usr/share/puppet/rack/puppetmasterd
75
+ # Install apache2 site configuration template
76
+ $(INSTALL) -m0644 ext/rack/files/apache2.conf \
77
+ $(CURDIR)/debian/puppetmaster-passenger/usr/share/puppetmaster-passenger/apache2.site.conf.tmpl
78
+
79
+ # Add ext directory
80
+ cp -pr ext $(CURDIR)/debian/puppet-common/usr/share/puppet
81
+ # Remove misc packaging artifacts not applicable to debian
82
+ rm -rf $(CURDIR)/debian/puppet-common/usr/share/puppet/ext/gentoo
83
+ rm -rf $(CURDIR)/debian/puppet-common/usr/share/puppet/ext/freebsd
84
+ rm -rf $(CURDIR)/debian/puppet-common/usr/share/puppet/ext/solaris
85
+ rm -rf $(CURDIR)/debian/puppet-common/usr/share/puppet/ext/suse
86
+ rm -rf $(CURDIR)/debian/puppet-common/usr/share/puppet/ext/windows
87
+ rm -rf $(CURDIR)/debian/puppet-common/usr/share/puppet/ext/redhat
88
+ rm -rf $(CURDIR)/debian/puppet-common/usr/share/puppet/ext/ips
89
+ rm -rf $(CURDIR)/debian/puppet-common/usr/share/puppet/ext/osx
90
+ rm -rf $(CURDIR)/debian/puppet-common/usr/share/puppet/ext/build_defaults.yaml
91
+ rm -rf $(CURDIR)/debian/puppet-common/usr/share/puppet/ext/project_data.yaml
92
+
93
+ dh_installexamples -p puppet-common examples/*
94
+
95
+ $(INSTALL) -d -m0775 $(pkgconfdir)/templates
96
+ $(INSTALL) -d -m0775 $(pkgconfdir)/modules
97
+
98
+ # Logcheck rules. Gee I wish you could specify a file to source
99
+ # in dh_installlogcheck.
100
+ ln ext/logcheck/puppet debian/puppet-common.logcheck.ignore.server
101
+
102
+ # Build architecture-dependent files here.
103
+ binary-arch: build install
104
+
105
+ # Build architecture-independent files here.
106
+ binary-indep: build install
107
+ dh_testdir
108
+ dh_testroot
109
+ dh_install -i
110
+ dh_installdocs -i
111
+ dh_installemacsen
112
+ dh_installlogcheck
113
+ dh_installman
114
+ dh_installinit -ppuppetmaster
115
+ dh_installinit --name=puppetqd
116
+ dh_installinit -ppuppet --error-handler=true -- defaults 21
117
+ dh_installlogrotate -i
118
+ dh_lintian -i
119
+ dh_compress -i
120
+ dh_fixperms -i
121
+ dh_installdeb -i
122
+ dh_shlibdeps -i
123
+ dh_gencontrol -i
124
+ dh_md5sums -i
125
+ dh_builddeb -i
126
+
127
+ binary: binary-indep binary-arch
128
+ .PHONY: build clean binary-indep binary-arch binary install configure
@@ -0,0 +1 @@
1
+ 3.0 (quilt)
@@ -0,0 +1 @@
1
+ single-debian-patch
@@ -0,0 +1,13 @@
1
+ Dear user, this package provides the vim addon puppet, but it is not enabled
2
+ per default.
3
+
4
+ If you want to enable it for your user account just execute
5
+
6
+ vim-addons install puppet
7
+
8
+ Similarly, to enable it for all users of this system just execute (as root):
9
+
10
+ vim-addons -w install puppet
11
+
12
+ vim-addons is provided by the vim-addon-manager package, have a look at its
13
+ manpage for more information.
@@ -0,0 +1,3 @@
1
+ usr/share/vim/registry
2
+ usr/share/vim/addons/syntax
3
+ usr/share/vim/addons/ftdetect
@@ -0,0 +1,5 @@
1
+ addon: puppet
2
+ description: "Syntax highlighting for puppet"
3
+ files:
4
+ - ftdetect/puppet.vim
5
+ - syntax/puppet.vim
@@ -0,0 +1,2 @@
1
+ version=3
2
+ http://pkg-ruby-extras.alioth.debian.org/cgi-bin/gemwatch/puppet .*/puppet-(.*).tar.gz
@@ -386,6 +386,7 @@ The variable puppet-indent-level controls the amount of indentation.
386
386
  (setq mode-name "Puppet")
387
387
  (setq major-mode 'puppet-mode)
388
388
  (set-syntax-table puppet-mode-syntax-table)
389
+ (set (make-local-variable 'parse-sexp-ignore-comments) t)
389
390
  (set (make-local-variable 'local-abbrev-table) puppet-mode-abbrev-table)
390
391
  (set (make-local-variable 'comment-start) "# ")
391
392
  (set (make-local-variable 'comment-start-skip) "#+ *")
@@ -93,6 +93,10 @@ myrubylib="${ENVPUPPET_BASEDIR}/puppet/lib"
93
93
  mypath="${mypath}:${ENVPUPPET_BASEDIR}/facter/bin"
94
94
  myrubylib="${myrubylib}:${ENVPUPPET_BASEDIR}/facter/lib"
95
95
 
96
+ # git://github.com/puppetlabs/hiera.git
97
+ mypath="${mypath}:${ENVPUPPET_BASEDIR}/hiera/bin"
98
+ myrubylib="${myrubylib}:${ENVPUPPET_BASEDIR}/hiera/lib"
99
+
96
100
  if [[ "${ENVPUPPET_BLEEDING:-}" == "true" ]]; then
97
101
  # git://github.com/puppetlabs/facter.git
98
102
  mypath="${mypath}:${ENVPUPPET_BASEDIR}/puppet-interfaces/bin"
@@ -5,9 +5,10 @@ REM net use Z: "\\vmware-host\Shared Folders" /persistent:yes
5
5
 
6
6
  SET PUPPET_DIR=%~dp0..
7
7
  SET FACTER_DIR=%PUPPET_DIR%\..\facter
8
+ SET HIERA_DIR=%PUPPET_DIR%\..\hiera
8
9
 
9
- SET PATH=%PUPPET_DIR%\bin;%FACTER_DIR%\bin;%PATH%
10
- SET RUBYLIB=%PUPPET_DIR%\lib;%FACTER_DIR%\lib;%RUBYLIB%
10
+ SET PATH=%PUPPET_DIR%\bin;%FACTER_DIR%\bin;%HIERA_DIR%\bin;%PATH%
11
+ SET RUBYLIB=%PUPPET_DIR%\lib;%FACTER_DIR%\lib;%HIERA_DIR%\lib;%RUBYLIB%
11
12
  SET RUBYLIB=%RUBYLIB:\=/%
12
13
 
13
14
  ruby -S %*
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1,49 @@
1
+ #!/sbin/sh
2
+ # It needs the smf property puppet-agent/server to be set to where the server is.
3
+ # svccfg -s svc:/network/puppet/agent setprop server/name=asstring:localhost
4
+
5
+
6
+ . /lib/svc/share/smf_include.sh
7
+
8
+ [[ -z "${SMF_FMRI}" ]] && exit $SMF_EXIT_ERR
9
+
10
+ typeset -r CONF_FILE=/etc/puppet/puppet.conf
11
+ [[ ! -f "${CONF_FILE}" ]] && exit $SMF_EXIT_ERR_CONFIG
12
+
13
+ typeset -r PUPPET=/usr/bin/puppet
14
+ typeset -r PUPPET_SERVER=$(svcprop -p server/name $SMF_FMRI)
15
+ [[ -z "${PUPPET_SERVER}" ]] && exit $SMF_EXIT_ERR_CONFIG
16
+
17
+ case "$1" in
18
+ start)
19
+ exec $PUPPET agent --daemonize --server $PUPPET_SERVER
20
+ ;;
21
+
22
+ stop)
23
+ # stop sends sigterm first followed by sigkill
24
+ # smf_kill_contract <CTID> TERM 1 30
25
+ # sends sigterm to all process in ctid and will continue
26
+ # to do so for 30 seconds with interval of 5 seconds
27
+ # smf_kill_contract <CTID> KILL 1
28
+ # continues until all processes are killed.
29
+ # svcs -p <fmri> lists all processes in the contract.
30
+ # http://bnsmb.de/solaris/My_Little_SMF_FAQ.html
31
+ ctid=`svcprop -p restarter/contract $SMF_FMRI`
32
+ if [ -n "$ctid" ]; then
33
+ smf_kill_contract $ctid TERM 1 5
34
+ ret=$?
35
+ [ $ret -eq 1 ] && exit $SMF_EXIT_ERR_FATAL
36
+
37
+ if [ $ret -eq 2 ] ; then
38
+ smf_kill_contract $ctid KILL 1
39
+ [ $? -ne 0 ] && exit $SMF_EXIT_ERR_FATAL
40
+ fi
41
+ fi
42
+ ;;
43
+ *)
44
+ echo "Usage: $0 {start|stop}";
45
+ exit $SMF_EXIT_ERR_FATAL
46
+ ;;
47
+ esac
48
+ exit $SMF_EXIT_OK
49
+
@@ -0,0 +1,44 @@
1
+ #!/sbin/sh
2
+
3
+ . /lib/svc/share/smf_include.sh
4
+
5
+ [[ -z "${SMF_FMRI}" ]] && exit $SMF_EXIT_ERR
6
+
7
+ typeset -r CONF_FILE=/etc/puppet/puppet.conf
8
+ [[ ! -f ${CONF_FILE} ]] && exit $SMF_EXIT_ERR_CONFIG
9
+ typeset -r PUPPET=/usr/bin/puppet
10
+
11
+ case "$1" in
12
+ start)
13
+ exec $PUPPET master --daemonize
14
+ ;;
15
+
16
+ stop)
17
+ # stop sends sigterm first followed by sigkill
18
+ # smf_kill_contract <CTID> TERM 1 30
19
+ # sends sigterm to all process in ctid and will continue
20
+ # to do so for 30 seconds with interval of 5 seconds
21
+ # smf_kill_contract <CTID> KILL 1
22
+ # continues until all processes are killed.
23
+ # svcs -p <fmri> lists all processes in the contract.
24
+ # http://bnsmb.de/solaris/My_Little_SMF_FAQ.html
25
+
26
+ ctid=`svcprop -p restarter/contract $SMF_FMRI`
27
+ if [ -n "$ctid" ]; then
28
+ smf_kill_contract $ctid TERM 1 5
29
+ ret=$?
30
+ [ $ret -eq 1 ] && exit $SMF_EXIT_ERR_FATAL
31
+
32
+ if [ $ret -eq 2 ] ; then
33
+ smf_kill_contract $ctid KILL 1
34
+ [ $? -ne 0 ] && exit $SMF_EXIT_ERR_FATAL
35
+ fi
36
+ fi
37
+ ;;
38
+ *)
39
+ echo "Usage: $0 {start|stop}";
40
+ exit $SMF_EXIT_ERR_FATAL
41
+ ;;
42
+ esac
43
+ exit $SMF_EXIT_OK
44
+
@@ -0,0 +1,29 @@
1
+
2
+ [main]
3
+ vardir = /var/lib/puppet
4
+
5
+ # The Puppet log directory.
6
+ # The default value is '$vardir/log'.
7
+ logdir = /var/log/puppet
8
+
9
+ # Where Puppet PID files are kept.
10
+ # The default value is '$vardir/run'.
11
+ rundir = /var/run/puppet
12
+
13
+ # Where SSL certificates are kept.
14
+ # The default value is '$confdir/ssl'.
15
+ ssldir = $vardir/ssl
16
+
17
+ [agent]
18
+ # The file in which puppetd stores a list of the classes
19
+ # associated with the retrieved configuratiion. Can be loaded in
20
+ # the separate ``puppet`` executable using the ``--loadclasses``
21
+ # option.
22
+ # The default value is '$confdir/classes.txt'.
23
+ classfile = $vardir/classes.txt
24
+
25
+ # Where puppetd caches the local configuration. An
26
+ # extension indicating the cache format is added automatically.
27
+ # The default value is '$confdir/localconfig'.
28
+ localconfig = $vardir/localconfig
29
+
@@ -0,0 +1,12 @@
1
+ set name=pkg.fmri value=pkg://puppetlabs.com/system/management/<%=@name%>@<%=@ipsversion%>
2
+ set name=pkg.summary value="<%=@summary%>"
3
+ set name=pkg.human-version value="<%=@version%>"
4
+ set name=pkg.description value="<%=@description%>"
5
+ set name=info.classification value="org.opensolaris.category.2008:System/Administration and Configuration"
6
+ set name=org.opensolaris.consolidation value="puppet"
7
+ set name=description value="<%=@description%>"
8
+ set name=variant.opensolaris.zone value=global value=nonglobal
9
+ set name=variant.arch value=sparc value=i386
10
+ license puppet.license license="Apache v2.0"
11
+ group groupname=puppet
12
+ user username=puppet password='*NP*' group=puppet
@@ -0,0 +1,46 @@
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="puppet:agent">
4
+
5
+ <service name="network/puppet/agent" type="service" version="1">
6
+ <create_default_instance enabled="false"/>
7
+ <single_instance/>
8
+
9
+ <dependency name="config-file" grouping="require_all" restart_on="none" type="path">
10
+ <service_fmri value="file:///etc/puppet/puppet.conf"/>
11
+ </dependency>
12
+
13
+ <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'>
14
+ <service_fmri value='svc:/system/filesystem/local:default'/>
15
+ </dependency>
16
+
17
+ <dependency name='network' grouping='require_all' restart_on='error' type='service'>
18
+ <service_fmri value='svc:/milestone/network:default'/>
19
+ </dependency>
20
+
21
+ <dependency name="fs-local" grouping="require_all" restart_on="none" type="service">
22
+ <service_fmri value="svc:/system/filesystem/local"/>
23
+ </dependency>
24
+
25
+ <exec_method type="method" name="start" exec="/lib/svc/method/puppet-agent start" timeout_seconds="60"/>
26
+
27
+ <exec_method type="method" name="stop" exec="/lib/svc/method/puppet-agent stop" timeout_seconds="60"/>
28
+
29
+ <property_group name='server' type='framework'>
30
+ <propval name='name' type='astring' value='puppet' />
31
+ </property_group>
32
+
33
+ <stability value="Evolving"/>
34
+
35
+ <template>
36
+ <common_name>
37
+ <loctext xml:lang="C">Puppet Agent Daemon</loctext>
38
+ </common_name>
39
+ <documentation>
40
+ <manpage title="puppet" section="1"/>
41
+ <doc_link name="puppetlabs.com" uri="http://puppetlabs.com/puppet/introduction"/>
42
+ </documentation>
43
+ </template>
44
+ </service>
45
+
46
+ </service_bundle>
@@ -0,0 +1,42 @@
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="puppet:master">
4
+
5
+ <service name="network/puppet/master" type="service" version="1">
6
+ <create_default_instance enabled="false"/>
7
+ <single_instance/>
8
+
9
+ <dependency name="config-file" grouping="require_all" restart_on="none" type="path">
10
+ <service_fmri value="file:///etc/puppet/puppet.conf"/>
11
+ </dependency>
12
+
13
+ <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'>
14
+ <service_fmri value='svc:/system/filesystem/local:default'/>
15
+ </dependency>
16
+
17
+ <dependency name='network' grouping='require_all' restart_on='error' type='service'>
18
+ <service_fmri value='svc:/milestone/network:default'/>
19
+ </dependency>
20
+
21
+ <dependency name="fs-local" grouping="require_all" restart_on="none" type="service">
22
+ <service_fmri value="svc:/system/filesystem/local"/>
23
+ </dependency>
24
+
25
+ <exec_method type="method" name="start" exec="/lib/svc/method/puppet-master start" timeout_seconds="60"/>
26
+
27
+ <exec_method type="method" name="stop" exec="/lib/svc/method/puppet-master stop" timeout_seconds="60"/>
28
+
29
+ <stability value="Evolving"/>
30
+
31
+ <template>
32
+ <common_name>
33
+ <loctext xml:lang="C">Puppet Master Daemon</loctext>
34
+ </common_name>
35
+ <documentation>
36
+ <manpage title="puppet" section="1"/>
37
+ <doc_link name="puppetlabs.com" uri="http://puppetlabs.com/puppet/introduction"/>
38
+ </documentation>
39
+ </template>
40
+ </service>
41
+
42
+ </service_bundle>