bolt 0.19.1 → 0.20.0

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

Potentially problematic release.


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

Files changed (1261) hide show
  1. checksums.yaml +4 -4
  2. data/bolt-modules/boltlib/lib/puppet/functions/puppetdb_query.rb +25 -0
  3. data/bolt-modules/boltlib/lib/puppet/functions/without_default_logging.rb +18 -0
  4. data/lib/bolt/cli.rb +1 -1
  5. data/lib/bolt/config.rb +1 -1
  6. data/lib/bolt/executor.rb +1 -1
  7. data/lib/bolt/puppetdb/client.rb +26 -19
  8. data/lib/bolt/transport/ssh/connection.rb +3 -1
  9. data/lib/bolt/version.rb +1 -1
  10. data/modules/canary/plans/init.pp +22 -1
  11. data/modules/facts/tasks/bash.sh +1 -1
  12. data/modules/facts/tasks/powershell.ps1 +1 -1
  13. data/modules/facts/tasks/ruby.rb +1 -1
  14. metadata +4 -1249
  15. data/modules/apply/tasks/resource.json +0 -18
  16. data/modules/apply/tasks/resource.rb +0 -98
  17. data/modules/package/tasks/init.json +0 -22
  18. data/modules/package/tasks/init.rb +0 -69
  19. data/modules/puppet_conf/tasks/init.json +0 -22
  20. data/modules/puppet_conf/tasks/init.rb +0 -43
  21. data/modules/service/tasks/init.json +0 -18
  22. data/modules/service/tasks/init.rb +0 -71
  23. data/modules/service/tasks/linux.json +0 -14
  24. data/modules/service/tasks/linux.sh +0 -45
  25. data/modules/service/tasks/windows.json +0 -14
  26. data/modules/service/tasks/windows.ps1 +0 -85
  27. data/vendored/facter/lib/facter.rb +0 -261
  28. data/vendored/facter/lib/facter/Cfkey.rb +0 -42
  29. data/vendored/facter/lib/facter/application.rb +0 -206
  30. data/vendored/facter/lib/facter/architecture.rb +0 -50
  31. data/vendored/facter/lib/facter/augeasversion.rb +0 -28
  32. data/vendored/facter/lib/facter/blockdevices.rb +0 -105
  33. data/vendored/facter/lib/facter/core/aggregate.rb +0 -220
  34. data/vendored/facter/lib/facter/core/directed_graph.rb +0 -46
  35. data/vendored/facter/lib/facter/core/execution.rb +0 -123
  36. data/vendored/facter/lib/facter/core/execution/base.rb +0 -81
  37. data/vendored/facter/lib/facter/core/execution/posix.rb +0 -50
  38. data/vendored/facter/lib/facter/core/execution/windows.rb +0 -57
  39. data/vendored/facter/lib/facter/core/logging.rb +0 -197
  40. data/vendored/facter/lib/facter/core/resolvable.rb +0 -94
  41. data/vendored/facter/lib/facter/core/suitable.rb +0 -113
  42. data/vendored/facter/lib/facter/dhcp_servers.rb +0 -45
  43. data/vendored/facter/lib/facter/domain.rb +0 -99
  44. data/vendored/facter/lib/facter/ec2.rb +0 -68
  45. data/vendored/facter/lib/facter/ec2/rest.rb +0 -137
  46. data/vendored/facter/lib/facter/facterversion.rb +0 -15
  47. data/vendored/facter/lib/facter/filesystems.rb +0 -45
  48. data/vendored/facter/lib/facter/fqdn.rb +0 -24
  49. data/vendored/facter/lib/facter/gce.rb +0 -16
  50. data/vendored/facter/lib/facter/gce/metadata.rb +0 -87
  51. data/vendored/facter/lib/facter/gid.rb +0 -25
  52. data/vendored/facter/lib/facter/hardwareisa.rb +0 -20
  53. data/vendored/facter/lib/facter/hardwaremodel.rb +0 -67
  54. data/vendored/facter/lib/facter/hostname.rb +0 -31
  55. data/vendored/facter/lib/facter/id.rb +0 -21
  56. data/vendored/facter/lib/facter/interfaces.rb +0 -58
  57. data/vendored/facter/lib/facter/ipaddress.rb +0 -169
  58. data/vendored/facter/lib/facter/ipaddress6.rb +0 -82
  59. data/vendored/facter/lib/facter/iphostnumber.rb +0 -29
  60. data/vendored/facter/lib/facter/kernel.rb +0 -22
  61. data/vendored/facter/lib/facter/kernelmajversion.rb +0 -23
  62. data/vendored/facter/lib/facter/kernelrelease.rb +0 -45
  63. data/vendored/facter/lib/facter/kernelversion.rb +0 -22
  64. data/vendored/facter/lib/facter/ldom.rb +0 -51
  65. data/vendored/facter/lib/facter/lsbdistcodename.rb +0 -20
  66. data/vendored/facter/lib/facter/lsbdistdescription.rb +0 -21
  67. data/vendored/facter/lib/facter/lsbdistid.rb +0 -20
  68. data/vendored/facter/lib/facter/lsbdistrelease.rb +0 -20
  69. data/vendored/facter/lib/facter/lsbmajdistrelease.rb +0 -22
  70. data/vendored/facter/lib/facter/lsbminordistrelease.rb +0 -22
  71. data/vendored/facter/lib/facter/lsbrelease.rb +0 -20
  72. data/vendored/facter/lib/facter/macaddress.rb +0 -99
  73. data/vendored/facter/lib/facter/macosx.rb +0 -56
  74. data/vendored/facter/lib/facter/manufacturer.rb +0 -68
  75. data/vendored/facter/lib/facter/memory.rb +0 -168
  76. data/vendored/facter/lib/facter/netmask.rb +0 -43
  77. data/vendored/facter/lib/facter/network.rb +0 -20
  78. data/vendored/facter/lib/facter/operatingsystem.rb +0 -24
  79. data/vendored/facter/lib/facter/operatingsystem/base.rb +0 -61
  80. data/vendored/facter/lib/facter/operatingsystem/cumuluslinux.rb +0 -27
  81. data/vendored/facter/lib/facter/operatingsystem/implementation.rb +0 -33
  82. data/vendored/facter/lib/facter/operatingsystem/linux.rb +0 -484
  83. data/vendored/facter/lib/facter/operatingsystem/osreleaselinux.rb +0 -28
  84. data/vendored/facter/lib/facter/operatingsystem/sunos.rb +0 -54
  85. data/vendored/facter/lib/facter/operatingsystem/vmkernel.rb +0 -11
  86. data/vendored/facter/lib/facter/operatingsystem/windows.rb +0 -43
  87. data/vendored/facter/lib/facter/operatingsystemmajrelease.rb +0 -31
  88. data/vendored/facter/lib/facter/operatingsystemrelease.rb +0 -29
  89. data/vendored/facter/lib/facter/os.rb +0 -98
  90. data/vendored/facter/lib/facter/osfamily.rb +0 -18
  91. data/vendored/facter/lib/facter/partitions.rb +0 -39
  92. data/vendored/facter/lib/facter/path.rb +0 -14
  93. data/vendored/facter/lib/facter/physicalprocessorcount.rb +0 -27
  94. data/vendored/facter/lib/facter/processor.rb +0 -52
  95. data/vendored/facter/lib/facter/processors.rb +0 -66
  96. data/vendored/facter/lib/facter/processors/os.rb +0 -244
  97. data/vendored/facter/lib/facter/ps.rb +0 -31
  98. data/vendored/facter/lib/facter/puppetversion.rb +0 -20
  99. data/vendored/facter/lib/facter/rackspace.rb +0 -37
  100. data/vendored/facter/lib/facter/rubyplatform.rb +0 -12
  101. data/vendored/facter/lib/facter/rubysitedir.rb +0 -15
  102. data/vendored/facter/lib/facter/rubyversion.rb +0 -12
  103. data/vendored/facter/lib/facter/selinux.rb +0 -154
  104. data/vendored/facter/lib/facter/ssh.rb +0 -73
  105. data/vendored/facter/lib/facter/system32.rb +0 -21
  106. data/vendored/facter/lib/facter/system_uptime.rb +0 -44
  107. data/vendored/facter/lib/facter/timezone.rb +0 -14
  108. data/vendored/facter/lib/facter/uniqueid.rb +0 -4
  109. data/vendored/facter/lib/facter/uptime.rb +0 -16
  110. data/vendored/facter/lib/facter/uptime_days.rb +0 -13
  111. data/vendored/facter/lib/facter/uptime_hours.rb +0 -13
  112. data/vendored/facter/lib/facter/uptime_seconds.rb +0 -20
  113. data/vendored/facter/lib/facter/util/architecture.rb +0 -19
  114. data/vendored/facter/lib/facter/util/collection.rb +0 -161
  115. data/vendored/facter/lib/facter/util/composite_loader.rb +0 -12
  116. data/vendored/facter/lib/facter/util/config.rb +0 -88
  117. data/vendored/facter/lib/facter/util/confine.rb +0 -66
  118. data/vendored/facter/lib/facter/util/dhcp_servers.rb +0 -58
  119. data/vendored/facter/lib/facter/util/directory_loader.rb +0 -88
  120. data/vendored/facter/lib/facter/util/ec2.rb +0 -106
  121. data/vendored/facter/lib/facter/util/fact.rb +0 -204
  122. data/vendored/facter/lib/facter/util/file_read.rb +0 -37
  123. data/vendored/facter/lib/facter/util/formatter.rb +0 -39
  124. data/vendored/facter/lib/facter/util/ip.rb +0 -340
  125. data/vendored/facter/lib/facter/util/ip/windows.rb +0 -215
  126. data/vendored/facter/lib/facter/util/loader.rb +0 -155
  127. data/vendored/facter/lib/facter/util/macaddress.rb +0 -43
  128. data/vendored/facter/lib/facter/util/macosx.rb +0 -73
  129. data/vendored/facter/lib/facter/util/manufacturer.rb +0 -99
  130. data/vendored/facter/lib/facter/util/memory.rb +0 -228
  131. data/vendored/facter/lib/facter/util/netmask.rb +0 -40
  132. data/vendored/facter/lib/facter/util/normalization.rb +0 -94
  133. data/vendored/facter/lib/facter/util/nothing_loader.rb +0 -12
  134. data/vendored/facter/lib/facter/util/operatingsystem.rb +0 -21
  135. data/vendored/facter/lib/facter/util/parser.rb +0 -168
  136. data/vendored/facter/lib/facter/util/partitions.rb +0 -47
  137. data/vendored/facter/lib/facter/util/partitions/linux.rb +0 -71
  138. data/vendored/facter/lib/facter/util/partitions/openbsd.rb +0 -40
  139. data/vendored/facter/lib/facter/util/plist.rb +0 -24
  140. data/vendored/facter/lib/facter/util/plist/generator.rb +0 -228
  141. data/vendored/facter/lib/facter/util/plist/parser.rb +0 -226
  142. data/vendored/facter/lib/facter/util/posix.rb +0 -16
  143. data/vendored/facter/lib/facter/util/processor.rb +0 -289
  144. data/vendored/facter/lib/facter/util/registry.rb +0 -11
  145. data/vendored/facter/lib/facter/util/resolution.rb +0 -160
  146. data/vendored/facter/lib/facter/util/solaris_zones.rb +0 -158
  147. data/vendored/facter/lib/facter/util/unix_root.rb +0 -5
  148. data/vendored/facter/lib/facter/util/uptime.rb +0 -83
  149. data/vendored/facter/lib/facter/util/values.rb +0 -109
  150. data/vendored/facter/lib/facter/util/virtual.rb +0 -212
  151. data/vendored/facter/lib/facter/util/vlans.rb +0 -21
  152. data/vendored/facter/lib/facter/util/windows.rb +0 -10
  153. data/vendored/facter/lib/facter/util/windows/api_types.rb +0 -135
  154. data/vendored/facter/lib/facter/util/windows/dir.rb +0 -43
  155. data/vendored/facter/lib/facter/util/windows/error.rb +0 -87
  156. data/vendored/facter/lib/facter/util/windows/process.rb +0 -294
  157. data/vendored/facter/lib/facter/util/windows/user.rb +0 -186
  158. data/vendored/facter/lib/facter/util/windows_root.rb +0 -7
  159. data/vendored/facter/lib/facter/util/wmi.rb +0 -49
  160. data/vendored/facter/lib/facter/util/xendomains.rb +0 -28
  161. data/vendored/facter/lib/facter/version.rb +0 -86
  162. data/vendored/facter/lib/facter/virtual.rb +0 -330
  163. data/vendored/facter/lib/facter/vlans.rb +0 -17
  164. data/vendored/facter/lib/facter/xendomains.rb +0 -20
  165. data/vendored/facter/lib/facter/zfs_version.rb +0 -14
  166. data/vendored/facter/lib/facter/zonename.rb +0 -6
  167. data/vendored/facter/lib/facter/zones.rb +0 -18
  168. data/vendored/facter/lib/facter/zpool_version.rb +0 -10
  169. data/vendored/hiera/lib/hiera.rb +0 -119
  170. data/vendored/hiera/lib/hiera/backend.rb +0 -360
  171. data/vendored/hiera/lib/hiera/backend/json_backend.rb +0 -58
  172. data/vendored/hiera/lib/hiera/backend/yaml_backend.rb +0 -63
  173. data/vendored/hiera/lib/hiera/config.rb +0 -97
  174. data/vendored/hiera/lib/hiera/console_logger.rb +0 -13
  175. data/vendored/hiera/lib/hiera/error.rb +0 -4
  176. data/vendored/hiera/lib/hiera/fallback_logger.rb +0 -41
  177. data/vendored/hiera/lib/hiera/filecache.rb +0 -86
  178. data/vendored/hiera/lib/hiera/interpolate.rb +0 -121
  179. data/vendored/hiera/lib/hiera/noop_logger.rb +0 -8
  180. data/vendored/hiera/lib/hiera/puppet_logger.rb +0 -17
  181. data/vendored/hiera/lib/hiera/recursive_guard.rb +0 -20
  182. data/vendored/hiera/lib/hiera/util.rb +0 -65
  183. data/vendored/hiera/lib/hiera/util/win32.rb +0 -40
  184. data/vendored/hiera/lib/hiera/version.rb +0 -89
  185. data/vendored/puppet/lib/hiera/puppet_function.rb +0 -84
  186. data/vendored/puppet/lib/hiera/scope.rb +0 -61
  187. data/vendored/puppet/lib/hiera_puppet.rb +0 -79
  188. data/vendored/puppet/lib/puppet.rb +0 -307
  189. data/vendored/puppet/lib/puppet/agent.rb +0 -134
  190. data/vendored/puppet/lib/puppet/agent/disabler.rb +0 -53
  191. data/vendored/puppet/lib/puppet/agent/locker.rb +0 -53
  192. data/vendored/puppet/lib/puppet/application.rb +0 -502
  193. data/vendored/puppet/lib/puppet/application/agent.rb +0 -473
  194. data/vendored/puppet/lib/puppet/application/apply.rb +0 -356
  195. data/vendored/puppet/lib/puppet/application/ca.rb +0 -11
  196. data/vendored/puppet/lib/puppet/application/catalog.rb +0 -4
  197. data/vendored/puppet/lib/puppet/application/cert.rb +0 -339
  198. data/vendored/puppet/lib/puppet/application/certificate.rb +0 -17
  199. data/vendored/puppet/lib/puppet/application/certificate_request.rb +0 -7
  200. data/vendored/puppet/lib/puppet/application/certificate_revocation_list.rb +0 -7
  201. data/vendored/puppet/lib/puppet/application/config.rb +0 -5
  202. data/vendored/puppet/lib/puppet/application/describe.rb +0 -257
  203. data/vendored/puppet/lib/puppet/application/device.rb +0 -378
  204. data/vendored/puppet/lib/puppet/application/doc.rb +0 -230
  205. data/vendored/puppet/lib/puppet/application/epp.rb +0 -5
  206. data/vendored/puppet/lib/puppet/application/face_base.rb +0 -268
  207. data/vendored/puppet/lib/puppet/application/facts.rb +0 -9
  208. data/vendored/puppet/lib/puppet/application/filebucket.rb +0 -300
  209. data/vendored/puppet/lib/puppet/application/generate.rb +0 -5
  210. data/vendored/puppet/lib/puppet/application/help.rb +0 -5
  211. data/vendored/puppet/lib/puppet/application/indirection_base.rb +0 -4
  212. data/vendored/puppet/lib/puppet/application/key.rb +0 -4
  213. data/vendored/puppet/lib/puppet/application/lookup.rb +0 -369
  214. data/vendored/puppet/lib/puppet/application/man.rb +0 -4
  215. data/vendored/puppet/lib/puppet/application/master.rb +0 -317
  216. data/vendored/puppet/lib/puppet/application/module.rb +0 -4
  217. data/vendored/puppet/lib/puppet/application/node.rb +0 -4
  218. data/vendored/puppet/lib/puppet/application/parser.rb +0 -5
  219. data/vendored/puppet/lib/puppet/application/plugin.rb +0 -3
  220. data/vendored/puppet/lib/puppet/application/report.rb +0 -4
  221. data/vendored/puppet/lib/puppet/application/resource.rb +0 -231
  222. data/vendored/puppet/lib/puppet/application/script.rb +0 -261
  223. data/vendored/puppet/lib/puppet/application/status.rb +0 -4
  224. data/vendored/puppet/lib/puppet/application_support.rb +0 -62
  225. data/vendored/puppet/lib/puppet/coercion.rb +0 -40
  226. data/vendored/puppet/lib/puppet/compilable_resource_type.rb +0 -15
  227. data/vendored/puppet/lib/puppet/configurer.rb +0 -464
  228. data/vendored/puppet/lib/puppet/configurer/downloader.rb +0 -67
  229. data/vendored/puppet/lib/puppet/configurer/fact_handler.rb +0 -46
  230. data/vendored/puppet/lib/puppet/configurer/plugin_handler.rb +0 -49
  231. data/vendored/puppet/lib/puppet/confine.rb +0 -80
  232. data/vendored/puppet/lib/puppet/confine/any.rb +0 -26
  233. data/vendored/puppet/lib/puppet/confine/exists.rb +0 -19
  234. data/vendored/puppet/lib/puppet/confine/false.rb +0 -19
  235. data/vendored/puppet/lib/puppet/confine/feature.rb +0 -17
  236. data/vendored/puppet/lib/puppet/confine/true.rb +0 -20
  237. data/vendored/puppet/lib/puppet/confine/variable.rb +0 -59
  238. data/vendored/puppet/lib/puppet/confine_collection.rb +0 -50
  239. data/vendored/puppet/lib/puppet/confiner.rb +0 -46
  240. data/vendored/puppet/lib/puppet/context.rb +0 -116
  241. data/vendored/puppet/lib/puppet/context/trusted_information.rb +0 -76
  242. data/vendored/puppet/lib/puppet/daemon.rb +0 -195
  243. data/vendored/puppet/lib/puppet/data_binding.rb +0 -14
  244. data/vendored/puppet/lib/puppet/datatypes.rb +0 -213
  245. data/vendored/puppet/lib/puppet/datatypes/error.rb +0 -21
  246. data/vendored/puppet/lib/puppet/datatypes/impl/error.rb +0 -40
  247. data/vendored/puppet/lib/puppet/defaults.rb +0 -2071
  248. data/vendored/puppet/lib/puppet/environments.rb +0 -511
  249. data/vendored/puppet/lib/puppet/error.rb +0 -110
  250. data/vendored/puppet/lib/puppet/etc.rb +0 -161
  251. data/vendored/puppet/lib/puppet/external/dot.rb +0 -319
  252. data/vendored/puppet/lib/puppet/external/nagios.rb +0 -46
  253. data/vendored/puppet/lib/puppet/external/nagios/base.rb +0 -472
  254. data/vendored/puppet/lib/puppet/external/nagios/parser.rb +0 -400
  255. data/vendored/puppet/lib/puppet/external/pson/common.rb +0 -374
  256. data/vendored/puppet/lib/puppet/external/pson/pure.rb +0 -15
  257. data/vendored/puppet/lib/puppet/external/pson/pure/generator.rb +0 -395
  258. data/vendored/puppet/lib/puppet/external/pson/pure/parser.rb +0 -307
  259. data/vendored/puppet/lib/puppet/external/pson/version.rb +0 -8
  260. data/vendored/puppet/lib/puppet/face.rb +0 -12
  261. data/vendored/puppet/lib/puppet/face/ca.rb +0 -266
  262. data/vendored/puppet/lib/puppet/face/catalog.rb +0 -130
  263. data/vendored/puppet/lib/puppet/face/catalog/select.rb +0 -49
  264. data/vendored/puppet/lib/puppet/face/certificate.rb +0 -165
  265. data/vendored/puppet/lib/puppet/face/certificate_request.rb +0 -56
  266. data/vendored/puppet/lib/puppet/face/certificate_revocation_list.rb +0 -56
  267. data/vendored/puppet/lib/puppet/face/config.rb +0 -210
  268. data/vendored/puppet/lib/puppet/face/epp.rb +0 -554
  269. data/vendored/puppet/lib/puppet/face/facts.rb +0 -87
  270. data/vendored/puppet/lib/puppet/face/generate.rb +0 -64
  271. data/vendored/puppet/lib/puppet/face/help.rb +0 -201
  272. data/vendored/puppet/lib/puppet/face/key.rb +0 -16
  273. data/vendored/puppet/lib/puppet/face/man.rb +0 -145
  274. data/vendored/puppet/lib/puppet/face/module.rb +0 -19
  275. data/vendored/puppet/lib/puppet/face/module/build.rb +0 -64
  276. data/vendored/puppet/lib/puppet/face/module/changes.rb +0 -42
  277. data/vendored/puppet/lib/puppet/face/module/generate.rb +0 -256
  278. data/vendored/puppet/lib/puppet/face/module/install.rb +0 -150
  279. data/vendored/puppet/lib/puppet/face/module/list.rb +0 -268
  280. data/vendored/puppet/lib/puppet/face/module/search.rb +0 -98
  281. data/vendored/puppet/lib/puppet/face/module/uninstall.rb +0 -93
  282. data/vendored/puppet/lib/puppet/face/module/upgrade.rb +0 -91
  283. data/vendored/puppet/lib/puppet/face/node.rb +0 -43
  284. data/vendored/puppet/lib/puppet/face/node/clean.rb +0 -96
  285. data/vendored/puppet/lib/puppet/face/parser.rb +0 -187
  286. data/vendored/puppet/lib/puppet/face/plugin.rb +0 -56
  287. data/vendored/puppet/lib/puppet/face/report.rb +0 -54
  288. data/vendored/puppet/lib/puppet/face/resource.rb +0 -53
  289. data/vendored/puppet/lib/puppet/face/status.rb +0 -51
  290. data/vendored/puppet/lib/puppet/feature/base.rb +0 -95
  291. data/vendored/puppet/lib/puppet/feature/bolt.rb +0 -3
  292. data/vendored/puppet/lib/puppet/feature/cfpropertylist.rb +0 -3
  293. data/vendored/puppet/lib/puppet/feature/eventlog.rb +0 -5
  294. data/vendored/puppet/lib/puppet/feature/hiera_eyaml.rb +0 -3
  295. data/vendored/puppet/lib/puppet/feature/hocon.rb +0 -3
  296. data/vendored/puppet/lib/puppet/feature/libuser.rb +0 -8
  297. data/vendored/puppet/lib/puppet/feature/msgpack.rb +0 -3
  298. data/vendored/puppet/lib/puppet/feature/pe_license.rb +0 -4
  299. data/vendored/puppet/lib/puppet/feature/rack.rb +0 -19
  300. data/vendored/puppet/lib/puppet/feature/selinux.rb +0 -3
  301. data/vendored/puppet/lib/puppet/feature/ssh.rb +0 -3
  302. data/vendored/puppet/lib/puppet/feature/telnet.rb +0 -9
  303. data/vendored/puppet/lib/puppet/feature/zlib.rb +0 -5
  304. data/vendored/puppet/lib/puppet/file_bucket.rb +0 -4
  305. data/vendored/puppet/lib/puppet/file_bucket/dipper.rb +0 -173
  306. data/vendored/puppet/lib/puppet/file_bucket/file.rb +0 -129
  307. data/vendored/puppet/lib/puppet/file_serving.rb +0 -3
  308. data/vendored/puppet/lib/puppet/file_serving/base.rb +0 -86
  309. data/vendored/puppet/lib/puppet/file_serving/configuration.rb +0 -115
  310. data/vendored/puppet/lib/puppet/file_serving/configuration/parser.rb +0 -137
  311. data/vendored/puppet/lib/puppet/file_serving/content.rb +0 -43
  312. data/vendored/puppet/lib/puppet/file_serving/fileset.rb +0 -174
  313. data/vendored/puppet/lib/puppet/file_serving/http_metadata.rb +0 -46
  314. data/vendored/puppet/lib/puppet/file_serving/metadata.rb +0 -163
  315. data/vendored/puppet/lib/puppet/file_serving/mount.rb +0 -39
  316. data/vendored/puppet/lib/puppet/file_serving/mount/file.rb +0 -121
  317. data/vendored/puppet/lib/puppet/file_serving/mount/locales.rb +0 -35
  318. data/vendored/puppet/lib/puppet/file_serving/mount/modules.rb +0 -24
  319. data/vendored/puppet/lib/puppet/file_serving/mount/pluginfacts.rb +0 -35
  320. data/vendored/puppet/lib/puppet/file_serving/mount/plugins.rb +0 -35
  321. data/vendored/puppet/lib/puppet/file_serving/mount/tasks.rb +0 -21
  322. data/vendored/puppet/lib/puppet/file_serving/terminus_helper.rb +0 -31
  323. data/vendored/puppet/lib/puppet/file_serving/terminus_selector.rb +0 -32
  324. data/vendored/puppet/lib/puppet/file_system.rb +0 -404
  325. data/vendored/puppet/lib/puppet/file_system/file_impl.rb +0 -154
  326. data/vendored/puppet/lib/puppet/file_system/memory_file.rb +0 -66
  327. data/vendored/puppet/lib/puppet/file_system/memory_impl.rb +0 -86
  328. data/vendored/puppet/lib/puppet/file_system/path_pattern.rb +0 -98
  329. data/vendored/puppet/lib/puppet/file_system/posix.rb +0 -46
  330. data/vendored/puppet/lib/puppet/file_system/uniquefile.rb +0 -190
  331. data/vendored/puppet/lib/puppet/file_system/windows.rb +0 -130
  332. data/vendored/puppet/lib/puppet/forge.rb +0 -242
  333. data/vendored/puppet/lib/puppet/forge/cache.rb +0 -60
  334. data/vendored/puppet/lib/puppet/forge/errors.rb +0 -114
  335. data/vendored/puppet/lib/puppet/forge/repository.rb +0 -155
  336. data/vendored/puppet/lib/puppet/functions.rb +0 -725
  337. data/vendored/puppet/lib/puppet/functions/alert.rb +0 -14
  338. data/vendored/puppet/lib/puppet/functions/all.rb +0 -104
  339. data/vendored/puppet/lib/puppet/functions/annotate.rb +0 -108
  340. data/vendored/puppet/lib/puppet/functions/any.rb +0 -109
  341. data/vendored/puppet/lib/puppet/functions/assert_type.rb +0 -93
  342. data/vendored/puppet/lib/puppet/functions/binary_file.rb +0 -32
  343. data/vendored/puppet/lib/puppet/functions/break.rb +0 -51
  344. data/vendored/puppet/lib/puppet/functions/call.rb +0 -42
  345. data/vendored/puppet/lib/puppet/functions/contain.rb +0 -55
  346. data/vendored/puppet/lib/puppet/functions/convert_to.rb +0 -33
  347. data/vendored/puppet/lib/puppet/functions/crit.rb +0 -14
  348. data/vendored/puppet/lib/puppet/functions/debug.rb +0 -14
  349. data/vendored/puppet/lib/puppet/functions/defined.rb +0 -159
  350. data/vendored/puppet/lib/puppet/functions/dig.rb +0 -47
  351. data/vendored/puppet/lib/puppet/functions/each.rb +0 -169
  352. data/vendored/puppet/lib/puppet/functions/emerg.rb +0 -14
  353. data/vendored/puppet/lib/puppet/functions/empty.rb +0 -79
  354. data/vendored/puppet/lib/puppet/functions/epp.rb +0 -48
  355. data/vendored/puppet/lib/puppet/functions/err.rb +0 -14
  356. data/vendored/puppet/lib/puppet/functions/eyaml_lookup_key.rb +0 -96
  357. data/vendored/puppet/lib/puppet/functions/filter.rb +0 -143
  358. data/vendored/puppet/lib/puppet/functions/find_file.rb +0 -44
  359. data/vendored/puppet/lib/puppet/functions/flatten.rb +0 -64
  360. data/vendored/puppet/lib/puppet/functions/hiera.rb +0 -88
  361. data/vendored/puppet/lib/puppet/functions/hiera_array.rb +0 -81
  362. data/vendored/puppet/lib/puppet/functions/hiera_hash.rb +0 -92
  363. data/vendored/puppet/lib/puppet/functions/hiera_include.rb +0 -104
  364. data/vendored/puppet/lib/puppet/functions/hocon_data.rb +0 -41
  365. data/vendored/puppet/lib/puppet/functions/import.rb +0 -7
  366. data/vendored/puppet/lib/puppet/functions/include.rb +0 -53
  367. data/vendored/puppet/lib/puppet/functions/info.rb +0 -14
  368. data/vendored/puppet/lib/puppet/functions/inline_epp.rb +0 -59
  369. data/vendored/puppet/lib/puppet/functions/join.rb +0 -56
  370. data/vendored/puppet/lib/puppet/functions/json_data.rb +0 -33
  371. data/vendored/puppet/lib/puppet/functions/keys.rb +0 -25
  372. data/vendored/puppet/lib/puppet/functions/length.rb +0 -44
  373. data/vendored/puppet/lib/puppet/functions/lest.rb +0 -55
  374. data/vendored/puppet/lib/puppet/functions/lookup.rb +0 -223
  375. data/vendored/puppet/lib/puppet/functions/map.rb +0 -136
  376. data/vendored/puppet/lib/puppet/functions/match.rb +0 -120
  377. data/vendored/puppet/lib/puppet/functions/module_directory.rb +0 -41
  378. data/vendored/puppet/lib/puppet/functions/new.rb +0 -1022
  379. data/vendored/puppet/lib/puppet/functions/next.rb +0 -23
  380. data/vendored/puppet/lib/puppet/functions/notice.rb +0 -14
  381. data/vendored/puppet/lib/puppet/functions/reduce.rb +0 -164
  382. data/vendored/puppet/lib/puppet/functions/regsubst.rb +0 -82
  383. data/vendored/puppet/lib/puppet/functions/require.rb +0 -77
  384. data/vendored/puppet/lib/puppet/functions/return.rb +0 -22
  385. data/vendored/puppet/lib/puppet/functions/reverse_each.rb +0 -94
  386. data/vendored/puppet/lib/puppet/functions/scanf.rb +0 -44
  387. data/vendored/puppet/lib/puppet/functions/slice.rb +0 -124
  388. data/vendored/puppet/lib/puppet/functions/split.rb +0 -49
  389. data/vendored/puppet/lib/puppet/functions/step.rb +0 -98
  390. data/vendored/puppet/lib/puppet/functions/strftime.rb +0 -217
  391. data/vendored/puppet/lib/puppet/functions/then.rb +0 -77
  392. data/vendored/puppet/lib/puppet/functions/tree_each.rb +0 -200
  393. data/vendored/puppet/lib/puppet/functions/type.rb +0 -72
  394. data/vendored/puppet/lib/puppet/functions/unique.rb +0 -132
  395. data/vendored/puppet/lib/puppet/functions/unwrap.rb +0 -44
  396. data/vendored/puppet/lib/puppet/functions/values.rb +0 -25
  397. data/vendored/puppet/lib/puppet/functions/versioncmp.rb +0 -36
  398. data/vendored/puppet/lib/puppet/functions/warning.rb +0 -14
  399. data/vendored/puppet/lib/puppet/functions/with.rb +0 -32
  400. data/vendored/puppet/lib/puppet/functions/yaml_data.rb +0 -42
  401. data/vendored/puppet/lib/puppet/generate/models/type/property.rb +0 -70
  402. data/vendored/puppet/lib/puppet/generate/models/type/type.rb +0 -62
  403. data/vendored/puppet/lib/puppet/generate/type.rb +0 -239
  404. data/vendored/puppet/lib/puppet/gettext/config.rb +0 -252
  405. data/vendored/puppet/lib/puppet/gettext/module_translations.rb +0 -42
  406. data/vendored/puppet/lib/puppet/gettext/stubs.rb +0 -11
  407. data/vendored/puppet/lib/puppet/graph.rb +0 -11
  408. data/vendored/puppet/lib/puppet/graph/key.rb +0 -26
  409. data/vendored/puppet/lib/puppet/graph/prioritizer.rb +0 -29
  410. data/vendored/puppet/lib/puppet/graph/random_prioritizer.rb +0 -16
  411. data/vendored/puppet/lib/puppet/graph/rb_tree_map.rb +0 -388
  412. data/vendored/puppet/lib/puppet/graph/relationship_graph.rb +0 -283
  413. data/vendored/puppet/lib/puppet/graph/sequential_prioritizer.rb +0 -31
  414. data/vendored/puppet/lib/puppet/graph/simple_graph.rb +0 -539
  415. data/vendored/puppet/lib/puppet/graph/title_hash_prioritizer.rb +0 -16
  416. data/vendored/puppet/lib/puppet/indirector.rb +0 -61
  417. data/vendored/puppet/lib/puppet/indirector/catalog/compiler.rb +0 -418
  418. data/vendored/puppet/lib/puppet/indirector/catalog/json.rb +0 -24
  419. data/vendored/puppet/lib/puppet/indirector/catalog/msgpack.rb +0 -6
  420. data/vendored/puppet/lib/puppet/indirector/catalog/rest.rb +0 -6
  421. data/vendored/puppet/lib/puppet/indirector/catalog/store_configs.rb +0 -8
  422. data/vendored/puppet/lib/puppet/indirector/catalog/yaml.rb +0 -22
  423. data/vendored/puppet/lib/puppet/indirector/certificate/ca.rb +0 -9
  424. data/vendored/puppet/lib/puppet/indirector/certificate/disabled_ca.rb +0 -22
  425. data/vendored/puppet/lib/puppet/indirector/certificate/file.rb +0 -9
  426. data/vendored/puppet/lib/puppet/indirector/certificate/rest.rb +0 -16
  427. data/vendored/puppet/lib/puppet/indirector/certificate_request/ca.rb +0 -22
  428. data/vendored/puppet/lib/puppet/indirector/certificate_request/disabled_ca.rb +0 -22
  429. data/vendored/puppet/lib/puppet/indirector/certificate_request/file.rb +0 -8
  430. data/vendored/puppet/lib/puppet/indirector/certificate_request/memory.rb +0 -6
  431. data/vendored/puppet/lib/puppet/indirector/certificate_request/rest.rb +0 -10
  432. data/vendored/puppet/lib/puppet/indirector/certificate_revocation_list/ca.rb +0 -8
  433. data/vendored/puppet/lib/puppet/indirector/certificate_revocation_list/disabled_ca.rb +0 -22
  434. data/vendored/puppet/lib/puppet/indirector/certificate_revocation_list/file.rb +0 -8
  435. data/vendored/puppet/lib/puppet/indirector/certificate_revocation_list/rest.rb +0 -22
  436. data/vendored/puppet/lib/puppet/indirector/certificate_status.rb +0 -4
  437. data/vendored/puppet/lib/puppet/indirector/certificate_status/file.rb +0 -91
  438. data/vendored/puppet/lib/puppet/indirector/certificate_status/rest.rb +0 -11
  439. data/vendored/puppet/lib/puppet/indirector/code.rb +0 -6
  440. data/vendored/puppet/lib/puppet/indirector/data_binding/hiera.rb +0 -7
  441. data/vendored/puppet/lib/puppet/indirector/data_binding/none.rb +0 -8
  442. data/vendored/puppet/lib/puppet/indirector/direct_file_server.rb +0 -17
  443. data/vendored/puppet/lib/puppet/indirector/envelope.rb +0 -11
  444. data/vendored/puppet/lib/puppet/indirector/errors.rb +0 -5
  445. data/vendored/puppet/lib/puppet/indirector/exec.rb +0 -38
  446. data/vendored/puppet/lib/puppet/indirector/face.rb +0 -153
  447. data/vendored/puppet/lib/puppet/indirector/facts/facter.rb +0 -88
  448. data/vendored/puppet/lib/puppet/indirector/facts/memory.rb +0 -9
  449. data/vendored/puppet/lib/puppet/indirector/facts/network_device.rb +0 -27
  450. data/vendored/puppet/lib/puppet/indirector/facts/rest.rb +0 -21
  451. data/vendored/puppet/lib/puppet/indirector/facts/store_configs.rb +0 -11
  452. data/vendored/puppet/lib/puppet/indirector/facts/yaml.rb +0 -82
  453. data/vendored/puppet/lib/puppet/indirector/file_bucket_file/file.rb +0 -262
  454. data/vendored/puppet/lib/puppet/indirector/file_bucket_file/rest.rb +0 -8
  455. data/vendored/puppet/lib/puppet/indirector/file_bucket_file/selector.rb +0 -53
  456. data/vendored/puppet/lib/puppet/indirector/file_content.rb +0 -5
  457. data/vendored/puppet/lib/puppet/indirector/file_content/file.rb +0 -7
  458. data/vendored/puppet/lib/puppet/indirector/file_content/file_server.rb +0 -7
  459. data/vendored/puppet/lib/puppet/indirector/file_content/http.rb +0 -17
  460. data/vendored/puppet/lib/puppet/indirector/file_content/rest.rb +0 -9
  461. data/vendored/puppet/lib/puppet/indirector/file_content/selector.rb +0 -30
  462. data/vendored/puppet/lib/puppet/indirector/file_metadata.rb +0 -5
  463. data/vendored/puppet/lib/puppet/indirector/file_metadata/file.rb +0 -7
  464. data/vendored/puppet/lib/puppet/indirector/file_metadata/file_server.rb +0 -7
  465. data/vendored/puppet/lib/puppet/indirector/file_metadata/http.rb +0 -27
  466. data/vendored/puppet/lib/puppet/indirector/file_metadata/rest.rb +0 -9
  467. data/vendored/puppet/lib/puppet/indirector/file_metadata/selector.rb +0 -30
  468. data/vendored/puppet/lib/puppet/indirector/file_server.rb +0 -59
  469. data/vendored/puppet/lib/puppet/indirector/generic_http.rb +0 -16
  470. data/vendored/puppet/lib/puppet/indirector/hiera.rb +0 -94
  471. data/vendored/puppet/lib/puppet/indirector/indirection.rb +0 -344
  472. data/vendored/puppet/lib/puppet/indirector/json.rb +0 -75
  473. data/vendored/puppet/lib/puppet/indirector/key/ca.rb +0 -16
  474. data/vendored/puppet/lib/puppet/indirector/key/disabled_ca.rb +0 -22
  475. data/vendored/puppet/lib/puppet/indirector/key/file.rb +0 -50
  476. data/vendored/puppet/lib/puppet/indirector/key/memory.rb +0 -6
  477. data/vendored/puppet/lib/puppet/indirector/ldap.rb +0 -80
  478. data/vendored/puppet/lib/puppet/indirector/memory.rb +0 -34
  479. data/vendored/puppet/lib/puppet/indirector/msgpack.rb +0 -83
  480. data/vendored/puppet/lib/puppet/indirector/node/exec.rb +0 -71
  481. data/vendored/puppet/lib/puppet/indirector/node/ldap.rb +0 -275
  482. data/vendored/puppet/lib/puppet/indirector/node/memory.rb +0 -10
  483. data/vendored/puppet/lib/puppet/indirector/node/msgpack.rb +0 -7
  484. data/vendored/puppet/lib/puppet/indirector/node/plain.rb +0 -21
  485. data/vendored/puppet/lib/puppet/indirector/node/rest.rb +0 -7
  486. data/vendored/puppet/lib/puppet/indirector/node/store_configs.rb +0 -8
  487. data/vendored/puppet/lib/puppet/indirector/node/write_only_yaml.rb +0 -39
  488. data/vendored/puppet/lib/puppet/indirector/node/yaml.rb +0 -13
  489. data/vendored/puppet/lib/puppet/indirector/none.rb +0 -9
  490. data/vendored/puppet/lib/puppet/indirector/plain.rb +0 -9
  491. data/vendored/puppet/lib/puppet/indirector/report/msgpack.rb +0 -11
  492. data/vendored/puppet/lib/puppet/indirector/report/processor.rb +0 -59
  493. data/vendored/puppet/lib/puppet/indirector/report/rest.rb +0 -28
  494. data/vendored/puppet/lib/puppet/indirector/report/yaml.rb +0 -11
  495. data/vendored/puppet/lib/puppet/indirector/request.rb +0 -278
  496. data/vendored/puppet/lib/puppet/indirector/resource/ral.rb +0 -63
  497. data/vendored/puppet/lib/puppet/indirector/resource/store_configs.rb +0 -12
  498. data/vendored/puppet/lib/puppet/indirector/resource/validator.rb +0 -8
  499. data/vendored/puppet/lib/puppet/indirector/rest.rb +0 -350
  500. data/vendored/puppet/lib/puppet/indirector/ssl_file.rb +0 -201
  501. data/vendored/puppet/lib/puppet/indirector/status.rb +0 -3
  502. data/vendored/puppet/lib/puppet/indirector/status/local.rb +0 -12
  503. data/vendored/puppet/lib/puppet/indirector/status/rest.rb +0 -9
  504. data/vendored/puppet/lib/puppet/indirector/store_configs.rb +0 -30
  505. data/vendored/puppet/lib/puppet/indirector/terminus.rb +0 -169
  506. data/vendored/puppet/lib/puppet/indirector/yaml.rb +0 -63
  507. data/vendored/puppet/lib/puppet/info_service.rb +0 -17
  508. data/vendored/puppet/lib/puppet/info_service/class_information_service.rb +0 -110
  509. data/vendored/puppet/lib/puppet/info_service/task_information_service.rb +0 -32
  510. data/vendored/puppet/lib/puppet/interface.rb +0 -237
  511. data/vendored/puppet/lib/puppet/interface/action.rb +0 -402
  512. data/vendored/puppet/lib/puppet/interface/action_builder.rb +0 -166
  513. data/vendored/puppet/lib/puppet/interface/action_manager.rb +0 -97
  514. data/vendored/puppet/lib/puppet/interface/documentation.rb +0 -353
  515. data/vendored/puppet/lib/puppet/interface/face_collection.rb +0 -132
  516. data/vendored/puppet/lib/puppet/interface/option.rb +0 -171
  517. data/vendored/puppet/lib/puppet/interface/option_builder.rb +0 -105
  518. data/vendored/puppet/lib/puppet/interface/option_manager.rb +0 -104
  519. data/vendored/puppet/lib/puppet/loaders.rb +0 -27
  520. data/vendored/puppet/lib/puppet/metatype/manager.rb +0 -199
  521. data/vendored/puppet/lib/puppet/module.rb +0 -467
  522. data/vendored/puppet/lib/puppet/module/task.rb +0 -90
  523. data/vendored/puppet/lib/puppet/module_tool.rb +0 -196
  524. data/vendored/puppet/lib/puppet/module_tool/applications.rb +0 -14
  525. data/vendored/puppet/lib/puppet/module_tool/applications/application.rb +0 -90
  526. data/vendored/puppet/lib/puppet/module_tool/applications/builder.rb +0 -152
  527. data/vendored/puppet/lib/puppet/module_tool/applications/checksummer.rb +0 -62
  528. data/vendored/puppet/lib/puppet/module_tool/applications/installer.rb +0 -355
  529. data/vendored/puppet/lib/puppet/module_tool/applications/searcher.rb +0 -29
  530. data/vendored/puppet/lib/puppet/module_tool/applications/uninstaller.rb +0 -121
  531. data/vendored/puppet/lib/puppet/module_tool/applications/unpacker.rb +0 -100
  532. data/vendored/puppet/lib/puppet/module_tool/applications/upgrader.rb +0 -281
  533. data/vendored/puppet/lib/puppet/module_tool/checksums.rb +0 -49
  534. data/vendored/puppet/lib/puppet/module_tool/contents_description.rb +0 -88
  535. data/vendored/puppet/lib/puppet/module_tool/dependency.rb +0 -41
  536. data/vendored/puppet/lib/puppet/module_tool/errors.rb +0 -11
  537. data/vendored/puppet/lib/puppet/module_tool/errors/base.rb +0 -15
  538. data/vendored/puppet/lib/puppet/module_tool/errors/installer.rb +0 -93
  539. data/vendored/puppet/lib/puppet/module_tool/errors/shared.rb +0 -195
  540. data/vendored/puppet/lib/puppet/module_tool/errors/uninstaller.rb +0 -50
  541. data/vendored/puppet/lib/puppet/module_tool/errors/upgrader.rb +0 -63
  542. data/vendored/puppet/lib/puppet/module_tool/install_directory.rb +0 -45
  543. data/vendored/puppet/lib/puppet/module_tool/installed_modules.rb +0 -96
  544. data/vendored/puppet/lib/puppet/module_tool/local_tarball.rb +0 -90
  545. data/vendored/puppet/lib/puppet/module_tool/metadata.rb +0 -223
  546. data/vendored/puppet/lib/puppet/module_tool/shared_behaviors.rb +0 -180
  547. data/vendored/puppet/lib/puppet/module_tool/skeleton/templates/generator/spec/spec_helper.rb +0 -1
  548. data/vendored/puppet/lib/puppet/module_tool/tar.rb +0 -18
  549. data/vendored/puppet/lib/puppet/module_tool/tar/gnu.rb +0 -19
  550. data/vendored/puppet/lib/puppet/module_tool/tar/mini.rb +0 -106
  551. data/vendored/puppet/lib/puppet/network.rb +0 -3
  552. data/vendored/puppet/lib/puppet/network/auth_config_parser.rb +0 -90
  553. data/vendored/puppet/lib/puppet/network/authconfig.rb +0 -112
  554. data/vendored/puppet/lib/puppet/network/authorization.rb +0 -41
  555. data/vendored/puppet/lib/puppet/network/authstore.rb +0 -282
  556. data/vendored/puppet/lib/puppet/network/client_request.rb +0 -29
  557. data/vendored/puppet/lib/puppet/network/format.rb +0 -110
  558. data/vendored/puppet/lib/puppet/network/format_handler.rb +0 -108
  559. data/vendored/puppet/lib/puppet/network/format_support.rb +0 -134
  560. data/vendored/puppet/lib/puppet/network/formats.rb +0 -171
  561. data/vendored/puppet/lib/puppet/network/http.rb +0 -30
  562. data/vendored/puppet/lib/puppet/network/http/api.rb +0 -44
  563. data/vendored/puppet/lib/puppet/network/http/api/ca.rb +0 -2
  564. data/vendored/puppet/lib/puppet/network/http/api/ca/v1.rb +0 -11
  565. data/vendored/puppet/lib/puppet/network/http/api/indirected_routes.rb +0 -279
  566. data/vendored/puppet/lib/puppet/network/http/api/indirection_type.rb +0 -32
  567. data/vendored/puppet/lib/puppet/network/http/api/master.rb +0 -2
  568. data/vendored/puppet/lib/puppet/network/http/api/master/v3.rb +0 -28
  569. data/vendored/puppet/lib/puppet/network/http/api/master/v3/authorization.rb +0 -18
  570. data/vendored/puppet/lib/puppet/network/http/api/master/v3/environment.rb +0 -85
  571. data/vendored/puppet/lib/puppet/network/http/api/master/v3/environments.rb +0 -35
  572. data/vendored/puppet/lib/puppet/network/http/compression.rb +0 -120
  573. data/vendored/puppet/lib/puppet/network/http/connection.rb +0 -332
  574. data/vendored/puppet/lib/puppet/network/http/error.rb +0 -73
  575. data/vendored/puppet/lib/puppet/network/http/factory.rb +0 -56
  576. data/vendored/puppet/lib/puppet/network/http/handler.rb +0 -183
  577. data/vendored/puppet/lib/puppet/network/http/issues.rb +0 -12
  578. data/vendored/puppet/lib/puppet/network/http/memory_response.rb +0 -13
  579. data/vendored/puppet/lib/puppet/network/http/nocache_pool.rb +0 -21
  580. data/vendored/puppet/lib/puppet/network/http/pool.rb +0 -129
  581. data/vendored/puppet/lib/puppet/network/http/rack.rb +0 -33
  582. data/vendored/puppet/lib/puppet/network/http/rack/rest.rb +0 -162
  583. data/vendored/puppet/lib/puppet/network/http/request.rb +0 -70
  584. data/vendored/puppet/lib/puppet/network/http/response.rb +0 -23
  585. data/vendored/puppet/lib/puppet/network/http/route.rb +0 -100
  586. data/vendored/puppet/lib/puppet/network/http/session.rb +0 -17
  587. data/vendored/puppet/lib/puppet/network/http/site.rb +0 -39
  588. data/vendored/puppet/lib/puppet/network/http/webrick.rb +0 -124
  589. data/vendored/puppet/lib/puppet/network/http/webrick/rest.rb +0 -114
  590. data/vendored/puppet/lib/puppet/network/http_pool.rb +0 -61
  591. data/vendored/puppet/lib/puppet/network/resolver.rb +0 -85
  592. data/vendored/puppet/lib/puppet/network/rest_controller.rb +0 -2
  593. data/vendored/puppet/lib/puppet/network/rights.rb +0 -209
  594. data/vendored/puppet/lib/puppet/network/server.rb +0 -39
  595. data/vendored/puppet/lib/puppet/node.rb +0 -282
  596. data/vendored/puppet/lib/puppet/node/environment.rb +0 -586
  597. data/vendored/puppet/lib/puppet/node/facts.rb +0 -137
  598. data/vendored/puppet/lib/puppet/parameter.rb +0 -567
  599. data/vendored/puppet/lib/puppet/parameter/boolean.rb +0 -15
  600. data/vendored/puppet/lib/puppet/parameter/package_options.rb +0 -31
  601. data/vendored/puppet/lib/puppet/parameter/path.rb +0 -57
  602. data/vendored/puppet/lib/puppet/parameter/value.rb +0 -91
  603. data/vendored/puppet/lib/puppet/parameter/value_collection.rb +0 -212
  604. data/vendored/puppet/lib/puppet/parser.rb +0 -20
  605. data/vendored/puppet/lib/puppet/parser/abstract_compiler.rb +0 -36
  606. data/vendored/puppet/lib/puppet/parser/ast.rb +0 -65
  607. data/vendored/puppet/lib/puppet/parser/ast/block_expression.rb +0 -15
  608. data/vendored/puppet/lib/puppet/parser/ast/branch.rb +0 -19
  609. data/vendored/puppet/lib/puppet/parser/ast/hostclass.rb +0 -27
  610. data/vendored/puppet/lib/puppet/parser/ast/leaf.rb +0 -75
  611. data/vendored/puppet/lib/puppet/parser/ast/node.rb +0 -17
  612. data/vendored/puppet/lib/puppet/parser/ast/pops_bridge.rb +0 -273
  613. data/vendored/puppet/lib/puppet/parser/ast/resource.rb +0 -66
  614. data/vendored/puppet/lib/puppet/parser/ast/resource_instance.rb +0 -10
  615. data/vendored/puppet/lib/puppet/parser/ast/resourceparam.rb +0 -31
  616. data/vendored/puppet/lib/puppet/parser/ast/top_level_construct.rb +0 -4
  617. data/vendored/puppet/lib/puppet/parser/compiler.rb +0 -797
  618. data/vendored/puppet/lib/puppet/parser/compiler/catalog_validator.rb +0 -33
  619. data/vendored/puppet/lib/puppet/parser/compiler/catalog_validator/env_relationship_validator.rb +0 -64
  620. data/vendored/puppet/lib/puppet/parser/compiler/catalog_validator/relationship_validator.rb +0 -57
  621. data/vendored/puppet/lib/puppet/parser/compiler/catalog_validator/site_validator.rb +0 -20
  622. data/vendored/puppet/lib/puppet/parser/e4_parser_adapter.rb +0 -60
  623. data/vendored/puppet/lib/puppet/parser/environment_compiler.rb +0 -199
  624. data/vendored/puppet/lib/puppet/parser/files.rb +0 -92
  625. data/vendored/puppet/lib/puppet/parser/functions.rb +0 -277
  626. data/vendored/puppet/lib/puppet/parser/functions/assert_type.rb +0 -60
  627. data/vendored/puppet/lib/puppet/parser/functions/binary_file.rb +0 -24
  628. data/vendored/puppet/lib/puppet/parser/functions/break.rb +0 -39
  629. data/vendored/puppet/lib/puppet/parser/functions/contain.rb +0 -30
  630. data/vendored/puppet/lib/puppet/parser/functions/create_resources.rb +0 -112
  631. data/vendored/puppet/lib/puppet/parser/functions/defined.rb +0 -107
  632. data/vendored/puppet/lib/puppet/parser/functions/dig.rb +0 -38
  633. data/vendored/puppet/lib/puppet/parser/functions/digest.rb +0 -5
  634. data/vendored/puppet/lib/puppet/parser/functions/each.rb +0 -104
  635. data/vendored/puppet/lib/puppet/parser/functions/epp.rb +0 -39
  636. data/vendored/puppet/lib/puppet/parser/functions/fail.rb +0 -4
  637. data/vendored/puppet/lib/puppet/parser/functions/file.rb +0 -33
  638. data/vendored/puppet/lib/puppet/parser/functions/filter.rb +0 -78
  639. data/vendored/puppet/lib/puppet/parser/functions/find_file.rb +0 -28
  640. data/vendored/puppet/lib/puppet/parser/functions/fqdn_rand.rb +0 -36
  641. data/vendored/puppet/lib/puppet/parser/functions/generate.rb +0 -36
  642. data/vendored/puppet/lib/puppet/parser/functions/hiera.rb +0 -103
  643. data/vendored/puppet/lib/puppet/parser/functions/hiera_array.rb +0 -92
  644. data/vendored/puppet/lib/puppet/parser/functions/hiera_hash.rb +0 -102
  645. data/vendored/puppet/lib/puppet/parser/functions/hiera_include.rb +0 -102
  646. data/vendored/puppet/lib/puppet/parser/functions/include.rb +0 -34
  647. data/vendored/puppet/lib/puppet/parser/functions/inline_epp.rb +0 -51
  648. data/vendored/puppet/lib/puppet/parser/functions/inline_template.rb +0 -26
  649. data/vendored/puppet/lib/puppet/parser/functions/lest.rb +0 -49
  650. data/vendored/puppet/lib/puppet/parser/functions/lookup.rb +0 -132
  651. data/vendored/puppet/lib/puppet/parser/functions/map.rb +0 -76
  652. data/vendored/puppet/lib/puppet/parser/functions/match.rb +0 -43
  653. data/vendored/puppet/lib/puppet/parser/functions/md5.rb +0 -5
  654. data/vendored/puppet/lib/puppet/parser/functions/new.rb +0 -991
  655. data/vendored/puppet/lib/puppet/parser/functions/next.rb +0 -38
  656. data/vendored/puppet/lib/puppet/parser/functions/realize.rb +0 -20
  657. data/vendored/puppet/lib/puppet/parser/functions/reduce.rb +0 -137
  658. data/vendored/puppet/lib/puppet/parser/functions/regsubst.rb +0 -62
  659. data/vendored/puppet/lib/puppet/parser/functions/require.rb +0 -40
  660. data/vendored/puppet/lib/puppet/parser/functions/return.rb +0 -71
  661. data/vendored/puppet/lib/puppet/parser/functions/reverse_each.rb +0 -83
  662. data/vendored/puppet/lib/puppet/parser/functions/scanf.rb +0 -38
  663. data/vendored/puppet/lib/puppet/parser/functions/sha1.rb +0 -5
  664. data/vendored/puppet/lib/puppet/parser/functions/sha256.rb +0 -5
  665. data/vendored/puppet/lib/puppet/parser/functions/shellquote.rb +0 -61
  666. data/vendored/puppet/lib/puppet/parser/functions/slice.rb +0 -39
  667. data/vendored/puppet/lib/puppet/parser/functions/split.rb +0 -28
  668. data/vendored/puppet/lib/puppet/parser/functions/sprintf.rb +0 -50
  669. data/vendored/puppet/lib/puppet/parser/functions/step.rb +0 -84
  670. data/vendored/puppet/lib/puppet/parser/functions/strftime.rb +0 -185
  671. data/vendored/puppet/lib/puppet/parser/functions/tag.rb +0 -12
  672. data/vendored/puppet/lib/puppet/parser/functions/tagged.rb +0 -24
  673. data/vendored/puppet/lib/puppet/parser/functions/template.rb +0 -39
  674. data/vendored/puppet/lib/puppet/parser/functions/then.rb +0 -73
  675. data/vendored/puppet/lib/puppet/parser/functions/type.rb +0 -53
  676. data/vendored/puppet/lib/puppet/parser/functions/versioncmp.rb +0 -30
  677. data/vendored/puppet/lib/puppet/parser/functions/with.rb +0 -28
  678. data/vendored/puppet/lib/puppet/parser/parser_factory.rb +0 -30
  679. data/vendored/puppet/lib/puppet/parser/relationship.rb +0 -83
  680. data/vendored/puppet/lib/puppet/parser/resource.rb +0 -417
  681. data/vendored/puppet/lib/puppet/parser/resource/param.rb +0 -22
  682. data/vendored/puppet/lib/puppet/parser/scope.rb +0 -1125
  683. data/vendored/puppet/lib/puppet/parser/script_compiler.rb +0 -118
  684. data/vendored/puppet/lib/puppet/parser/templatewrapper.rb +0 -102
  685. data/vendored/puppet/lib/puppet/parser/type_loader.rb +0 -149
  686. data/vendored/puppet/lib/puppet/plugins.rb +0 -9
  687. data/vendored/puppet/lib/puppet/plugins/configuration.rb +0 -25
  688. data/vendored/puppet/lib/puppet/plugins/syntax_checkers.rb +0 -98
  689. data/vendored/puppet/lib/puppet/pops.rb +0 -120
  690. data/vendored/puppet/lib/puppet/pops/adaptable.rb +0 -206
  691. data/vendored/puppet/lib/puppet/pops/adapters.rb +0 -138
  692. data/vendored/puppet/lib/puppet/pops/evaluator/access_operator.rb +0 -719
  693. data/vendored/puppet/lib/puppet/pops/evaluator/callable_signature.rb +0 -107
  694. data/vendored/puppet/lib/puppet/pops/evaluator/closure.rb +0 -373
  695. data/vendored/puppet/lib/puppet/pops/evaluator/collector_transformer.rb +0 -234
  696. data/vendored/puppet/lib/puppet/pops/evaluator/collectors/abstract_collector.rb +0 -86
  697. data/vendored/puppet/lib/puppet/pops/evaluator/collectors/catalog_collector.rb +0 -29
  698. data/vendored/puppet/lib/puppet/pops/evaluator/collectors/exported_collector.rb +0 -69
  699. data/vendored/puppet/lib/puppet/pops/evaluator/collectors/fixed_set_collector.rb +0 -37
  700. data/vendored/puppet/lib/puppet/pops/evaluator/compare_operator.rb +0 -252
  701. data/vendored/puppet/lib/puppet/pops/evaluator/epp_evaluator.rb +0 -120
  702. data/vendored/puppet/lib/puppet/pops/evaluator/evaluator_impl.rb +0 -1284
  703. data/vendored/puppet/lib/puppet/pops/evaluator/external_syntax_support.rb +0 -45
  704. data/vendored/puppet/lib/puppet/pops/evaluator/json_strict_literal_evaluator.rb +0 -82
  705. data/vendored/puppet/lib/puppet/pops/evaluator/literal_evaluator.rb +0 -87
  706. data/vendored/puppet/lib/puppet/pops/evaluator/puppet_proc.rb +0 -69
  707. data/vendored/puppet/lib/puppet/pops/evaluator/relationship_operator.rb +0 -185
  708. data/vendored/puppet/lib/puppet/pops/evaluator/runtime3_converter.rb +0 -202
  709. data/vendored/puppet/lib/puppet/pops/evaluator/runtime3_resource_support.rb +0 -117
  710. data/vendored/puppet/lib/puppet/pops/evaluator/runtime3_support.rb +0 -540
  711. data/vendored/puppet/lib/puppet/pops/functions/dispatch.rb +0 -101
  712. data/vendored/puppet/lib/puppet/pops/functions/dispatcher.rb +0 -71
  713. data/vendored/puppet/lib/puppet/pops/functions/function.rb +0 -141
  714. data/vendored/puppet/lib/puppet/pops/issue_reporter.rb +0 -137
  715. data/vendored/puppet/lib/puppet/pops/issues.rb +0 -901
  716. data/vendored/puppet/lib/puppet/pops/label_provider.rb +0 -90
  717. data/vendored/puppet/lib/puppet/pops/loader/base_loader.rb +0 -166
  718. data/vendored/puppet/lib/puppet/pops/loader/dependency_loader.rb +0 -92
  719. data/vendored/puppet/lib/puppet/pops/loader/gem_support.rb +0 -49
  720. data/vendored/puppet/lib/puppet/pops/loader/loader.rb +0 -209
  721. data/vendored/puppet/lib/puppet/pops/loader/loader_paths.rb +0 -375
  722. data/vendored/puppet/lib/puppet/pops/loader/module_loaders.rb +0 -523
  723. data/vendored/puppet/lib/puppet/pops/loader/null_loader.rb +0 -60
  724. data/vendored/puppet/lib/puppet/pops/loader/predefined_loader.rb +0 -24
  725. data/vendored/puppet/lib/puppet/pops/loader/puppet_function_instantiator.rb +0 -84
  726. data/vendored/puppet/lib/puppet/pops/loader/puppet_plan_instantiator.rb +0 -84
  727. data/vendored/puppet/lib/puppet/pops/loader/puppet_resource_type_impl_instantiator.rb +0 -79
  728. data/vendored/puppet/lib/puppet/pops/loader/ruby_data_type_instantiator.rb +0 -39
  729. data/vendored/puppet/lib/puppet/pops/loader/ruby_function_instantiator.rb +0 -45
  730. data/vendored/puppet/lib/puppet/pops/loader/runtime3_type_loader.rb +0 -101
  731. data/vendored/puppet/lib/puppet/pops/loader/simple_environment_loader.rb +0 -20
  732. data/vendored/puppet/lib/puppet/pops/loader/static_loader.rb +0 -163
  733. data/vendored/puppet/lib/puppet/pops/loader/task_instantiator.rb +0 -69
  734. data/vendored/puppet/lib/puppet/pops/loader/type_definition_instantiator.rb +0 -100
  735. data/vendored/puppet/lib/puppet/pops/loader/typed_name.rb +0 -54
  736. data/vendored/puppet/lib/puppet/pops/loader/uri_helper.rb +0 -22
  737. data/vendored/puppet/lib/puppet/pops/loaders.rb +0 -545
  738. data/vendored/puppet/lib/puppet/pops/lookup.rb +0 -96
  739. data/vendored/puppet/lib/puppet/pops/lookup/configured_data_provider.rb +0 -93
  740. data/vendored/puppet/lib/puppet/pops/lookup/context.rb +0 -200
  741. data/vendored/puppet/lib/puppet/pops/lookup/data_adapter.rb +0 -27
  742. data/vendored/puppet/lib/puppet/pops/lookup/data_dig_function_provider.rb +0 -145
  743. data/vendored/puppet/lib/puppet/pops/lookup/data_hash_function_provider.rb +0 -126
  744. data/vendored/puppet/lib/puppet/pops/lookup/data_provider.rb +0 -92
  745. data/vendored/puppet/lib/puppet/pops/lookup/environment_data_provider.rb +0 -35
  746. data/vendored/puppet/lib/puppet/pops/lookup/explainer.rb +0 -595
  747. data/vendored/puppet/lib/puppet/pops/lookup/function_provider.rb +0 -110
  748. data/vendored/puppet/lib/puppet/pops/lookup/global_data_provider.rb +0 -75
  749. data/vendored/puppet/lib/puppet/pops/lookup/hiera_config.rb +0 -761
  750. data/vendored/puppet/lib/puppet/pops/lookup/interpolation.rb +0 -154
  751. data/vendored/puppet/lib/puppet/pops/lookup/invocation.rb +0 -261
  752. data/vendored/puppet/lib/puppet/pops/lookup/location_resolver.rb +0 -99
  753. data/vendored/puppet/lib/puppet/pops/lookup/lookup_adapter.rb +0 -471
  754. data/vendored/puppet/lib/puppet/pops/lookup/lookup_key.rb +0 -99
  755. data/vendored/puppet/lib/puppet/pops/lookup/lookup_key_function_provider.rb +0 -92
  756. data/vendored/puppet/lib/puppet/pops/lookup/module_data_provider.rb +0 -89
  757. data/vendored/puppet/lib/puppet/pops/lookup/sub_lookup.rb +0 -92
  758. data/vendored/puppet/lib/puppet/pops/merge_strategy.rb +0 -437
  759. data/vendored/puppet/lib/puppet/pops/migration/migration_checker.rb +0 -58
  760. data/vendored/puppet/lib/puppet/pops/model/ast.rb +0 -4870
  761. data/vendored/puppet/lib/puppet/pops/model/ast_transformer.rb +0 -131
  762. data/vendored/puppet/lib/puppet/pops/model/factory.rb +0 -1150
  763. data/vendored/puppet/lib/puppet/pops/model/model_label_provider.rb +0 -132
  764. data/vendored/puppet/lib/puppet/pops/model/model_tree_dumper.rb +0 -467
  765. data/vendored/puppet/lib/puppet/pops/model/pn_transformer.rb +0 -400
  766. data/vendored/puppet/lib/puppet/pops/model/tree_dumper.rb +0 -59
  767. data/vendored/puppet/lib/puppet/pops/parser/code_merger.rb +0 -29
  768. data/vendored/puppet/lib/puppet/pops/parser/eparser.rb +0 -3315
  769. data/vendored/puppet/lib/puppet/pops/parser/epp_parser.rb +0 -51
  770. data/vendored/puppet/lib/puppet/pops/parser/epp_support.rb +0 -260
  771. data/vendored/puppet/lib/puppet/pops/parser/evaluating_parser.rb +0 -165
  772. data/vendored/puppet/lib/puppet/pops/parser/heredoc_support.rb +0 -143
  773. data/vendored/puppet/lib/puppet/pops/parser/interpolation_support.rb +0 -244
  774. data/vendored/puppet/lib/puppet/pops/parser/lexer2.rb +0 -772
  775. data/vendored/puppet/lib/puppet/pops/parser/lexer_support.rb +0 -221
  776. data/vendored/puppet/lib/puppet/pops/parser/locatable.rb +0 -23
  777. data/vendored/puppet/lib/puppet/pops/parser/locator.rb +0 -336
  778. data/vendored/puppet/lib/puppet/pops/parser/parser_support.rb +0 -247
  779. data/vendored/puppet/lib/puppet/pops/parser/pn_parser.rb +0 -316
  780. data/vendored/puppet/lib/puppet/pops/parser/slurp_support.rb +0 -117
  781. data/vendored/puppet/lib/puppet/pops/patterns.rb +0 -60
  782. data/vendored/puppet/lib/puppet/pops/pcore.rb +0 -147
  783. data/vendored/puppet/lib/puppet/pops/pn.rb +0 -236
  784. data/vendored/puppet/lib/puppet/pops/puppet_stack.rb +0 -43
  785. data/vendored/puppet/lib/puppet/pops/resource/param.rb +0 -55
  786. data/vendored/puppet/lib/puppet/pops/resource/resource_type_impl.rb +0 -314
  787. data/vendored/puppet/lib/puppet/pops/semantic_error.rb +0 -29
  788. data/vendored/puppet/lib/puppet/pops/serialization.rb +0 -41
  789. data/vendored/puppet/lib/puppet/pops/serialization/abstract_reader.rb +0 -180
  790. data/vendored/puppet/lib/puppet/pops/serialization/abstract_writer.rb +0 -222
  791. data/vendored/puppet/lib/puppet/pops/serialization/deserializer.rb +0 -80
  792. data/vendored/puppet/lib/puppet/pops/serialization/extension.rb +0 -158
  793. data/vendored/puppet/lib/puppet/pops/serialization/from_data_converter.rb +0 -223
  794. data/vendored/puppet/lib/puppet/pops/serialization/instance_reader.rb +0 -19
  795. data/vendored/puppet/lib/puppet/pops/serialization/instance_writer.rb +0 -14
  796. data/vendored/puppet/lib/puppet/pops/serialization/json.rb +0 -297
  797. data/vendored/puppet/lib/puppet/pops/serialization/json_path.rb +0 -127
  798. data/vendored/puppet/lib/puppet/pops/serialization/object.rb +0 -70
  799. data/vendored/puppet/lib/puppet/pops/serialization/serializer.rb +0 -140
  800. data/vendored/puppet/lib/puppet/pops/serialization/time_factory.rb +0 -67
  801. data/vendored/puppet/lib/puppet/pops/serialization/to_data_converter.rb +0 -305
  802. data/vendored/puppet/lib/puppet/pops/time/timespan.rb +0 -718
  803. data/vendored/puppet/lib/puppet/pops/time/timestamp.rb +0 -160
  804. data/vendored/puppet/lib/puppet/pops/types/annotatable.rb +0 -36
  805. data/vendored/puppet/lib/puppet/pops/types/annotation.rb +0 -71
  806. data/vendored/puppet/lib/puppet/pops/types/class_loader.rb +0 -132
  807. data/vendored/puppet/lib/puppet/pops/types/enumeration.rb +0 -16
  808. data/vendored/puppet/lib/puppet/pops/types/implementation_registry.rb +0 -134
  809. data/vendored/puppet/lib/puppet/pops/types/iterable.rb +0 -339
  810. data/vendored/puppet/lib/puppet/pops/types/p_binary_type.rb +0 -233
  811. data/vendored/puppet/lib/puppet/pops/types/p_init_type.rb +0 -238
  812. data/vendored/puppet/lib/puppet/pops/types/p_meta_type.rb +0 -94
  813. data/vendored/puppet/lib/puppet/pops/types/p_object_type.rb +0 -1114
  814. data/vendored/puppet/lib/puppet/pops/types/p_object_type_extension.rb +0 -218
  815. data/vendored/puppet/lib/puppet/pops/types/p_runtime_type.rb +0 -115
  816. data/vendored/puppet/lib/puppet/pops/types/p_sem_ver_range_type.rb +0 -190
  817. data/vendored/puppet/lib/puppet/pops/types/p_sem_ver_type.rb +0 -149
  818. data/vendored/puppet/lib/puppet/pops/types/p_sensitive_type.rb +0 -73
  819. data/vendored/puppet/lib/puppet/pops/types/p_timespan_type.rb +0 -192
  820. data/vendored/puppet/lib/puppet/pops/types/p_timestamp_type.rb +0 -73
  821. data/vendored/puppet/lib/puppet/pops/types/p_type_set_type.rb +0 -383
  822. data/vendored/puppet/lib/puppet/pops/types/p_uri_type.rb +0 -190
  823. data/vendored/puppet/lib/puppet/pops/types/puppet_object.rb +0 -40
  824. data/vendored/puppet/lib/puppet/pops/types/recursion_guard.rb +0 -136
  825. data/vendored/puppet/lib/puppet/pops/types/ruby_generator.rb +0 -472
  826. data/vendored/puppet/lib/puppet/pops/types/ruby_method.rb +0 -31
  827. data/vendored/puppet/lib/puppet/pops/types/string_converter.rb +0 -1123
  828. data/vendored/puppet/lib/puppet/pops/types/tree_iterators.rb +0 -254
  829. data/vendored/puppet/lib/puppet/pops/types/type_acceptor.rb +0 -25
  830. data/vendored/puppet/lib/puppet/pops/types/type_asserter.rb +0 -47
  831. data/vendored/puppet/lib/puppet/pops/types/type_assertion_error.rb +0 -27
  832. data/vendored/puppet/lib/puppet/pops/types/type_calculator.rb +0 -809
  833. data/vendored/puppet/lib/puppet/pops/types/type_conversion_error.rb +0 -15
  834. data/vendored/puppet/lib/puppet/pops/types/type_factory.rb +0 -614
  835. data/vendored/puppet/lib/puppet/pops/types/type_formatter.rb +0 -802
  836. data/vendored/puppet/lib/puppet/pops/types/type_mismatch_describer.rb +0 -1075
  837. data/vendored/puppet/lib/puppet/pops/types/type_parser.rb +0 -685
  838. data/vendored/puppet/lib/puppet/pops/types/type_set_reference.rb +0 -59
  839. data/vendored/puppet/lib/puppet/pops/types/type_with_members.rb +0 -43
  840. data/vendored/puppet/lib/puppet/pops/types/types.rb +0 -3650
  841. data/vendored/puppet/lib/puppet/pops/utils.rb +0 -119
  842. data/vendored/puppet/lib/puppet/pops/validation.rb +0 -466
  843. data/vendored/puppet/lib/puppet/pops/validation/checker4_0.rb +0 -998
  844. data/vendored/puppet/lib/puppet/pops/validation/tasks_checker.rb +0 -60
  845. data/vendored/puppet/lib/puppet/pops/validation/validator_factory_4_0.rb +0 -43
  846. data/vendored/puppet/lib/puppet/pops/visitable.rb +0 -6
  847. data/vendored/puppet/lib/puppet/pops/visitor.rb +0 -116
  848. data/vendored/puppet/lib/puppet/property.rb +0 -608
  849. data/vendored/puppet/lib/puppet/property/boolean.rb +0 -7
  850. data/vendored/puppet/lib/puppet/property/ensure.rb +0 -105
  851. data/vendored/puppet/lib/puppet/property/keyvalue.rb +0 -95
  852. data/vendored/puppet/lib/puppet/property/list.rb +0 -69
  853. data/vendored/puppet/lib/puppet/property/ordered_list.rb +0 -29
  854. data/vendored/puppet/lib/puppet/provider.rb +0 -613
  855. data/vendored/puppet/lib/puppet/provider/aixobject.rb +0 -392
  856. data/vendored/puppet/lib/puppet/provider/augeas/augeas.rb +0 -566
  857. data/vendored/puppet/lib/puppet/provider/cisco.rb +0 -9
  858. data/vendored/puppet/lib/puppet/provider/command.rb +0 -25
  859. data/vendored/puppet/lib/puppet/provider/computer/computer.rb +0 -20
  860. data/vendored/puppet/lib/puppet/provider/confine.rb +0 -6
  861. data/vendored/puppet/lib/puppet/provider/cron/crontab.rb +0 -297
  862. data/vendored/puppet/lib/puppet/provider/exec.rb +0 -96
  863. data/vendored/puppet/lib/puppet/provider/exec/posix.rb +0 -48
  864. data/vendored/puppet/lib/puppet/provider/exec/shell.rb +0 -25
  865. data/vendored/puppet/lib/puppet/provider/exec/windows.rb +0 -55
  866. data/vendored/puppet/lib/puppet/provider/file/posix.rb +0 -136
  867. data/vendored/puppet/lib/puppet/provider/file/windows.rb +0 -104
  868. data/vendored/puppet/lib/puppet/provider/group/aix.rb +0 -143
  869. data/vendored/puppet/lib/puppet/provider/group/directoryservice.rb +0 -22
  870. data/vendored/puppet/lib/puppet/provider/group/groupadd.rb +0 -111
  871. data/vendored/puppet/lib/puppet/provider/group/ldap.rb +0 -45
  872. data/vendored/puppet/lib/puppet/provider/group/pw.rb +0 -49
  873. data/vendored/puppet/lib/puppet/provider/group/windows_adsi.rb +0 -106
  874. data/vendored/puppet/lib/puppet/provider/host/parsed.rb +0 -46
  875. data/vendored/puppet/lib/puppet/provider/interface/cisco.rb +0 -27
  876. data/vendored/puppet/lib/puppet/provider/ldap.rb +0 -137
  877. data/vendored/puppet/lib/puppet/provider/macauthorization/macauthorization.rb +0 -298
  878. data/vendored/puppet/lib/puppet/provider/mailalias/aliases.rb +0 -50
  879. data/vendored/puppet/lib/puppet/provider/maillist/mailman.rb +0 -108
  880. data/vendored/puppet/lib/puppet/provider/mcx/mcxcontent.rb +0 -173
  881. data/vendored/puppet/lib/puppet/provider/mount.rb +0 -76
  882. data/vendored/puppet/lib/puppet/provider/mount/parsed.rb +0 -282
  883. data/vendored/puppet/lib/puppet/provider/naginator.rb +0 -63
  884. data/vendored/puppet/lib/puppet/provider/nameservice.rb +0 -325
  885. data/vendored/puppet/lib/puppet/provider/nameservice/directoryservice.rb +0 -508
  886. data/vendored/puppet/lib/puppet/provider/nameservice/objectadd.rb +0 -22
  887. data/vendored/puppet/lib/puppet/provider/nameservice/pw.rb +0 -21
  888. data/vendored/puppet/lib/puppet/provider/network_device.rb +0 -72
  889. data/vendored/puppet/lib/puppet/provider/package.rb +0 -56
  890. data/vendored/puppet/lib/puppet/provider/package/aix.rb +0 -152
  891. data/vendored/puppet/lib/puppet/provider/package/appdmg.rb +0 -109
  892. data/vendored/puppet/lib/puppet/provider/package/apple.rb +0 -46
  893. data/vendored/puppet/lib/puppet/provider/package/apt.rb +0 -116
  894. data/vendored/puppet/lib/puppet/provider/package/aptitude.rb +0 -29
  895. data/vendored/puppet/lib/puppet/provider/package/aptrpm.rb +0 -83
  896. data/vendored/puppet/lib/puppet/provider/package/blastwave.rb +0 -111
  897. data/vendored/puppet/lib/puppet/provider/package/dnf.rb +0 -46
  898. data/vendored/puppet/lib/puppet/provider/package/dpkg.rb +0 -165
  899. data/vendored/puppet/lib/puppet/provider/package/fink.rb +0 -79
  900. data/vendored/puppet/lib/puppet/provider/package/freebsd.rb +0 -47
  901. data/vendored/puppet/lib/puppet/provider/package/gem.rb +0 -175
  902. data/vendored/puppet/lib/puppet/provider/package/hpux.rb +0 -44
  903. data/vendored/puppet/lib/puppet/provider/package/macports.rb +0 -107
  904. data/vendored/puppet/lib/puppet/provider/package/nim.rb +0 -282
  905. data/vendored/puppet/lib/puppet/provider/package/openbsd.rb +0 -242
  906. data/vendored/puppet/lib/puppet/provider/package/opkg.rb +0 -81
  907. data/vendored/puppet/lib/puppet/provider/package/pacman.rb +0 -267
  908. data/vendored/puppet/lib/puppet/provider/package/pip.rb +0 -188
  909. data/vendored/puppet/lib/puppet/provider/package/pip3.rb +0 -20
  910. data/vendored/puppet/lib/puppet/provider/package/pkg.rb +0 -255
  911. data/vendored/puppet/lib/puppet/provider/package/pkgdmg.rb +0 -151
  912. data/vendored/puppet/lib/puppet/provider/package/pkgin.rb +0 -87
  913. data/vendored/puppet/lib/puppet/provider/package/pkgng.rb +0 -143
  914. data/vendored/puppet/lib/puppet/provider/package/pkgutil.rb +0 -186
  915. data/vendored/puppet/lib/puppet/provider/package/portage.rb +0 -300
  916. data/vendored/puppet/lib/puppet/provider/package/ports.rb +0 -91
  917. data/vendored/puppet/lib/puppet/provider/package/portupgrade.rb +0 -239
  918. data/vendored/puppet/lib/puppet/provider/package/puppet_gem.rb +0 -17
  919. data/vendored/puppet/lib/puppet/provider/package/rpm.rb +0 -405
  920. data/vendored/puppet/lib/puppet/provider/package/rug.rb +0 -51
  921. data/vendored/puppet/lib/puppet/provider/package/sun.rb +0 -133
  922. data/vendored/puppet/lib/puppet/provider/package/sunfreeware.rb +0 -9
  923. data/vendored/puppet/lib/puppet/provider/package/tdnf.rb +0 -28
  924. data/vendored/puppet/lib/puppet/provider/package/up2date.rb +0 -40
  925. data/vendored/puppet/lib/puppet/provider/package/urpmi.rb +0 -55
  926. data/vendored/puppet/lib/puppet/provider/package/windows.rb +0 -113
  927. data/vendored/puppet/lib/puppet/provider/package/windows/exe_package.rb +0 -71
  928. data/vendored/puppet/lib/puppet/provider/package/windows/msi_package.rb +0 -62
  929. data/vendored/puppet/lib/puppet/provider/package/windows/package.rb +0 -100
  930. data/vendored/puppet/lib/puppet/provider/package/yum.rb +0 -293
  931. data/vendored/puppet/lib/puppet/provider/package/zypper.rb +0 -145
  932. data/vendored/puppet/lib/puppet/provider/parsedfile.rb +0 -459
  933. data/vendored/puppet/lib/puppet/provider/scheduled_task/win32_taskscheduler.rb +0 -590
  934. data/vendored/puppet/lib/puppet/provider/selboolean/getsetsebool.rb +0 -47
  935. data/vendored/puppet/lib/puppet/provider/selmodule/semodule.rb +0 -140
  936. data/vendored/puppet/lib/puppet/provider/service/base.rb +0 -134
  937. data/vendored/puppet/lib/puppet/provider/service/bsd.rb +0 -51
  938. data/vendored/puppet/lib/puppet/provider/service/daemontools.rb +0 -194
  939. data/vendored/puppet/lib/puppet/provider/service/debian.rb +0 -74
  940. data/vendored/puppet/lib/puppet/provider/service/freebsd.rb +0 -143
  941. data/vendored/puppet/lib/puppet/provider/service/gentoo.rb +0 -45
  942. data/vendored/puppet/lib/puppet/provider/service/init.rb +0 -194
  943. data/vendored/puppet/lib/puppet/provider/service/launchd.rb +0 -345
  944. data/vendored/puppet/lib/puppet/provider/service/openbsd.rb +0 -100
  945. data/vendored/puppet/lib/puppet/provider/service/openrc.rb +0 -71
  946. data/vendored/puppet/lib/puppet/provider/service/openwrt.rb +0 -36
  947. data/vendored/puppet/lib/puppet/provider/service/rcng.rb +0 -51
  948. data/vendored/puppet/lib/puppet/provider/service/redhat.rb +0 -72
  949. data/vendored/puppet/lib/puppet/provider/service/runit.rb +0 -112
  950. data/vendored/puppet/lib/puppet/provider/service/service.rb +0 -42
  951. data/vendored/puppet/lib/puppet/provider/service/smf.rb +0 -170
  952. data/vendored/puppet/lib/puppet/provider/service/src.rb +0 -147
  953. data/vendored/puppet/lib/puppet/provider/service/systemd.rb +0 -187
  954. data/vendored/puppet/lib/puppet/provider/service/upstart.rb +0 -359
  955. data/vendored/puppet/lib/puppet/provider/service/windows.rb +0 -106
  956. data/vendored/puppet/lib/puppet/provider/ssh_authorized_key/parsed.rb +0 -105
  957. data/vendored/puppet/lib/puppet/provider/sshkey/parsed.rb +0 -50
  958. data/vendored/puppet/lib/puppet/provider/user/aix.rb +0 -383
  959. data/vendored/puppet/lib/puppet/provider/user/directoryservice.rb +0 -632
  960. data/vendored/puppet/lib/puppet/provider/user/hpux.rb +0 -95
  961. data/vendored/puppet/lib/puppet/provider/user/ldap.rb +0 -128
  962. data/vendored/puppet/lib/puppet/provider/user/openbsd.rb +0 -76
  963. data/vendored/puppet/lib/puppet/provider/user/pw.rb +0 -98
  964. data/vendored/puppet/lib/puppet/provider/user/user_role_add.rb +0 -233
  965. data/vendored/puppet/lib/puppet/provider/user/useradd.rb +0 -265
  966. data/vendored/puppet/lib/puppet/provider/user/windows_adsi.rb +0 -148
  967. data/vendored/puppet/lib/puppet/provider/vlan/cisco.rb +0 -28
  968. data/vendored/puppet/lib/puppet/provider/yumrepo/inifile.rb +0 -303
  969. data/vendored/puppet/lib/puppet/provider/zfs/zfs.rb +0 -108
  970. data/vendored/puppet/lib/puppet/provider/zone/solaris.rb +0 -364
  971. data/vendored/puppet/lib/puppet/provider/zpool/zpool.rb +0 -125
  972. data/vendored/puppet/lib/puppet/reference/configuration.rb +0 -86
  973. data/vendored/puppet/lib/puppet/reference/function.rb +0 -17
  974. data/vendored/puppet/lib/puppet/reference/indirection.rb +0 -71
  975. data/vendored/puppet/lib/puppet/reference/metaparameter.rb +0 -35
  976. data/vendored/puppet/lib/puppet/reference/providers.rb +0 -118
  977. data/vendored/puppet/lib/puppet/reference/report.rb +0 -20
  978. data/vendored/puppet/lib/puppet/reference/type.rb +0 -113
  979. data/vendored/puppet/lib/puppet/relationship.rb +0 -89
  980. data/vendored/puppet/lib/puppet/reports.rb +0 -93
  981. data/vendored/puppet/lib/puppet/reports/http.rb +0 -37
  982. data/vendored/puppet/lib/puppet/reports/log.rb +0 -14
  983. data/vendored/puppet/lib/puppet/reports/store.rb +0 -68
  984. data/vendored/puppet/lib/puppet/resource.rb +0 -670
  985. data/vendored/puppet/lib/puppet/resource/capability_finder.rb +0 -150
  986. data/vendored/puppet/lib/puppet/resource/catalog.rb +0 -682
  987. data/vendored/puppet/lib/puppet/resource/status.rb +0 -227
  988. data/vendored/puppet/lib/puppet/resource/type.rb +0 -524
  989. data/vendored/puppet/lib/puppet/resource/type_collection.rb +0 -263
  990. data/vendored/puppet/lib/puppet/scheduler.rb +0 -16
  991. data/vendored/puppet/lib/puppet/scheduler/job.rb +0 -53
  992. data/vendored/puppet/lib/puppet/scheduler/scheduler.rb +0 -44
  993. data/vendored/puppet/lib/puppet/scheduler/splay_job.rb +0 -32
  994. data/vendored/puppet/lib/puppet/scheduler/timer.rb +0 -13
  995. data/vendored/puppet/lib/puppet/settings.rb +0 -1475
  996. data/vendored/puppet/lib/puppet/settings/array_setting.rb +0 -17
  997. data/vendored/puppet/lib/puppet/settings/autosign_setting.rb +0 -22
  998. data/vendored/puppet/lib/puppet/settings/base_setting.rb +0 -197
  999. data/vendored/puppet/lib/puppet/settings/boolean_setting.rb +0 -32
  1000. data/vendored/puppet/lib/puppet/settings/certificate_revocation_setting.rb +0 -21
  1001. data/vendored/puppet/lib/puppet/settings/config_file.rb +0 -153
  1002. data/vendored/puppet/lib/puppet/settings/directory_setting.rb +0 -18
  1003. data/vendored/puppet/lib/puppet/settings/duration_setting.rb +0 -32
  1004. data/vendored/puppet/lib/puppet/settings/enum_setting.rb +0 -16
  1005. data/vendored/puppet/lib/puppet/settings/environment_conf.rb +0 -213
  1006. data/vendored/puppet/lib/puppet/settings/errors.rb +0 -11
  1007. data/vendored/puppet/lib/puppet/settings/file_or_directory_setting.rb +0 -40
  1008. data/vendored/puppet/lib/puppet/settings/file_setting.rb +0 -245
  1009. data/vendored/puppet/lib/puppet/settings/ini_file.rb +0 -225
  1010. data/vendored/puppet/lib/puppet/settings/path_setting.rb +0 -8
  1011. data/vendored/puppet/lib/puppet/settings/priority_setting.rb +0 -42
  1012. data/vendored/puppet/lib/puppet/settings/server_list_setting.rb +0 -20
  1013. data/vendored/puppet/lib/puppet/settings/string_setting.rb +0 -9
  1014. data/vendored/puppet/lib/puppet/settings/symbolic_enum_setting.rb +0 -17
  1015. data/vendored/puppet/lib/puppet/settings/terminus_setting.rb +0 -14
  1016. data/vendored/puppet/lib/puppet/settings/ttl_setting.rb +0 -51
  1017. data/vendored/puppet/lib/puppet/settings/value_translator.rb +0 -15
  1018. data/vendored/puppet/lib/puppet/ssl.rb +0 -13
  1019. data/vendored/puppet/lib/puppet/ssl/base.rb +0 -158
  1020. data/vendored/puppet/lib/puppet/ssl/certificate.rb +0 -95
  1021. data/vendored/puppet/lib/puppet/ssl/certificate_authority.rb +0 -553
  1022. data/vendored/puppet/lib/puppet/ssl/certificate_authority/autosign_command.rb +0 -45
  1023. data/vendored/puppet/lib/puppet/ssl/certificate_authority/interface.rb +0 -324
  1024. data/vendored/puppet/lib/puppet/ssl/certificate_factory.rb +0 -219
  1025. data/vendored/puppet/lib/puppet/ssl/certificate_request.rb +0 -325
  1026. data/vendored/puppet/lib/puppet/ssl/certificate_request_attributes.rb +0 -37
  1027. data/vendored/puppet/lib/puppet/ssl/certificate_revocation_list.rb +0 -111
  1028. data/vendored/puppet/lib/puppet/ssl/certificate_signer.rb +0 -33
  1029. data/vendored/puppet/lib/puppet/ssl/configuration.rb +0 -61
  1030. data/vendored/puppet/lib/puppet/ssl/digest.rb +0 -20
  1031. data/vendored/puppet/lib/puppet/ssl/host.rb +0 -400
  1032. data/vendored/puppet/lib/puppet/ssl/inventory.rb +0 -55
  1033. data/vendored/puppet/lib/puppet/ssl/key.rb +0 -63
  1034. data/vendored/puppet/lib/puppet/ssl/oids.rb +0 -193
  1035. data/vendored/puppet/lib/puppet/ssl/validator.rb +0 -60
  1036. data/vendored/puppet/lib/puppet/ssl/validator/default_validator.rb +0 -173
  1037. data/vendored/puppet/lib/puppet/ssl/validator/no_validator.rb +0 -20
  1038. data/vendored/puppet/lib/puppet/status.rb +0 -40
  1039. data/vendored/puppet/lib/puppet/syntax_checkers.rb +0 -3
  1040. data/vendored/puppet/lib/puppet/syntax_checkers/base64.rb +0 -40
  1041. data/vendored/puppet/lib/puppet/syntax_checkers/json.rb +0 -35
  1042. data/vendored/puppet/lib/puppet/test/test_helper.rb +0 -252
  1043. data/vendored/puppet/lib/puppet/transaction.rb +0 -444
  1044. data/vendored/puppet/lib/puppet/transaction/additional_resource_generator.rb +0 -220
  1045. data/vendored/puppet/lib/puppet/transaction/event.rb +0 -144
  1046. data/vendored/puppet/lib/puppet/transaction/event_manager.rb +0 -167
  1047. data/vendored/puppet/lib/puppet/transaction/persistence.rb +0 -99
  1048. data/vendored/puppet/lib/puppet/transaction/report.rb +0 -468
  1049. data/vendored/puppet/lib/puppet/transaction/resource_harness.rb +0 -318
  1050. data/vendored/puppet/lib/puppet/type.rb +0 -2665
  1051. data/vendored/puppet/lib/puppet/type/augeas.rb +0 -211
  1052. data/vendored/puppet/lib/puppet/type/component.rb +0 -88
  1053. data/vendored/puppet/lib/puppet/type/computer.rb +0 -66
  1054. data/vendored/puppet/lib/puppet/type/cron.rb +0 -480
  1055. data/vendored/puppet/lib/puppet/type/exec.rb +0 -623
  1056. data/vendored/puppet/lib/puppet/type/file.rb +0 -1039
  1057. data/vendored/puppet/lib/puppet/type/file/checksum.rb +0 -50
  1058. data/vendored/puppet/lib/puppet/type/file/checksum_value.rb +0 -54
  1059. data/vendored/puppet/lib/puppet/type/file/content.rb +0 -160
  1060. data/vendored/puppet/lib/puppet/type/file/ctime.rb +0 -20
  1061. data/vendored/puppet/lib/puppet/type/file/data_sync.rb +0 -93
  1062. data/vendored/puppet/lib/puppet/type/file/ensure.rb +0 -192
  1063. data/vendored/puppet/lib/puppet/type/file/group.rb +0 -41
  1064. data/vendored/puppet/lib/puppet/type/file/mode.rb +0 -177
  1065. data/vendored/puppet/lib/puppet/type/file/mtime.rb +0 -18
  1066. data/vendored/puppet/lib/puppet/type/file/owner.rb +0 -44
  1067. data/vendored/puppet/lib/puppet/type/file/selcontext.rb +0 -141
  1068. data/vendored/puppet/lib/puppet/type/file/source.rb +0 -356
  1069. data/vendored/puppet/lib/puppet/type/file/target.rb +0 -87
  1070. data/vendored/puppet/lib/puppet/type/file/type.rb +0 -19
  1071. data/vendored/puppet/lib/puppet/type/filebucket.rb +0 -117
  1072. data/vendored/puppet/lib/puppet/type/group.rb +0 -209
  1073. data/vendored/puppet/lib/puppet/type/host.rb +0 -95
  1074. data/vendored/puppet/lib/puppet/type/interface.rb +0 -121
  1075. data/vendored/puppet/lib/puppet/type/k5login.rb +0 -165
  1076. data/vendored/puppet/lib/puppet/type/macauthorization.rb +0 -167
  1077. data/vendored/puppet/lib/puppet/type/mailalias.rb +0 -46
  1078. data/vendored/puppet/lib/puppet/type/maillist.rb +0 -62
  1079. data/vendored/puppet/lib/puppet/type/mcx.rb +0 -98
  1080. data/vendored/puppet/lib/puppet/type/mount.rb +0 -314
  1081. data/vendored/puppet/lib/puppet/type/nagios_command.rb +0 -3
  1082. data/vendored/puppet/lib/puppet/type/nagios_contact.rb +0 -3
  1083. data/vendored/puppet/lib/puppet/type/nagios_contactgroup.rb +0 -3
  1084. data/vendored/puppet/lib/puppet/type/nagios_host.rb +0 -3
  1085. data/vendored/puppet/lib/puppet/type/nagios_hostdependency.rb +0 -3
  1086. data/vendored/puppet/lib/puppet/type/nagios_hostescalation.rb +0 -3
  1087. data/vendored/puppet/lib/puppet/type/nagios_hostextinfo.rb +0 -3
  1088. data/vendored/puppet/lib/puppet/type/nagios_hostgroup.rb +0 -3
  1089. data/vendored/puppet/lib/puppet/type/nagios_service.rb +0 -3
  1090. data/vendored/puppet/lib/puppet/type/nagios_servicedependency.rb +0 -3
  1091. data/vendored/puppet/lib/puppet/type/nagios_serviceescalation.rb +0 -3
  1092. data/vendored/puppet/lib/puppet/type/nagios_serviceextinfo.rb +0 -3
  1093. data/vendored/puppet/lib/puppet/type/nagios_servicegroup.rb +0 -3
  1094. data/vendored/puppet/lib/puppet/type/nagios_timeperiod.rb +0 -3
  1095. data/vendored/puppet/lib/puppet/type/notify.rb +0 -46
  1096. data/vendored/puppet/lib/puppet/type/package.rb +0 -571
  1097. data/vendored/puppet/lib/puppet/type/resources.rb +0 -180
  1098. data/vendored/puppet/lib/puppet/type/router.rb +0 -17
  1099. data/vendored/puppet/lib/puppet/type/schedule.rb +0 -481
  1100. data/vendored/puppet/lib/puppet/type/scheduled_task.rb +0 -183
  1101. data/vendored/puppet/lib/puppet/type/selboolean.rb +0 -26
  1102. data/vendored/puppet/lib/puppet/type/selmodule.rb +0 -59
  1103. data/vendored/puppet/lib/puppet/type/service.rb +0 -258
  1104. data/vendored/puppet/lib/puppet/type/ssh_authorized_key.rb +0 -143
  1105. data/vendored/puppet/lib/puppet/type/sshkey.rb +0 -83
  1106. data/vendored/puppet/lib/puppet/type/stage.rb +0 -27
  1107. data/vendored/puppet/lib/puppet/type/tidy.rb +0 -345
  1108. data/vendored/puppet/lib/puppet/type/user.rb +0 -794
  1109. data/vendored/puppet/lib/puppet/type/vlan.rb +0 -26
  1110. data/vendored/puppet/lib/puppet/type/whit.rb +0 -34
  1111. data/vendored/puppet/lib/puppet/type/yumrepo.rb +0 -439
  1112. data/vendored/puppet/lib/puppet/type/zfs.rb +0 -154
  1113. data/vendored/puppet/lib/puppet/type/zone.rb +0 -382
  1114. data/vendored/puppet/lib/puppet/type/zpool.rb +0 -91
  1115. data/vendored/puppet/lib/puppet/util.rb +0 -700
  1116. data/vendored/puppet/lib/puppet/util/at_fork.rb +0 -35
  1117. data/vendored/puppet/lib/puppet/util/at_fork/noop.rb +0 -18
  1118. data/vendored/puppet/lib/puppet/util/at_fork/solaris.rb +0 -160
  1119. data/vendored/puppet/lib/puppet/util/autoload.rb +0 -226
  1120. data/vendored/puppet/lib/puppet/util/backups.rb +0 -86
  1121. data/vendored/puppet/lib/puppet/util/character_encoding.rb +0 -98
  1122. data/vendored/puppet/lib/puppet/util/checksums.rb +0 -363
  1123. data/vendored/puppet/lib/puppet/util/classgen.rb +0 -228
  1124. data/vendored/puppet/lib/puppet/util/colors.rb +0 -100
  1125. data/vendored/puppet/lib/puppet/util/command_line.rb +0 -190
  1126. data/vendored/puppet/lib/puppet/util/command_line/puppet_option_parser.rb +0 -87
  1127. data/vendored/puppet/lib/puppet/util/command_line/trollop.rb +0 -825
  1128. data/vendored/puppet/lib/puppet/util/constant_inflector.rb +0 -24
  1129. data/vendored/puppet/lib/puppet/util/diff.rb +0 -79
  1130. data/vendored/puppet/lib/puppet/util/docs.rb +0 -128
  1131. data/vendored/puppet/lib/puppet/util/errors.rb +0 -159
  1132. data/vendored/puppet/lib/puppet/util/execution.rb +0 -412
  1133. data/vendored/puppet/lib/puppet/util/execution_stub.rb +0 -26
  1134. data/vendored/puppet/lib/puppet/util/feature.rb +0 -95
  1135. data/vendored/puppet/lib/puppet/util/file_watcher.rb +0 -28
  1136. data/vendored/puppet/lib/puppet/util/fileparsing.rb +0 -375
  1137. data/vendored/puppet/lib/puppet/util/filetype.rb +0 -309
  1138. data/vendored/puppet/lib/puppet/util/http_proxy.rb +0 -207
  1139. data/vendored/puppet/lib/puppet/util/inifile.rb +0 -340
  1140. data/vendored/puppet/lib/puppet/util/instance_loader.rb +0 -79
  1141. data/vendored/puppet/lib/puppet/util/json_lockfile.rb +0 -44
  1142. data/vendored/puppet/lib/puppet/util/ldap.rb +0 -2
  1143. data/vendored/puppet/lib/puppet/util/ldap/connection.rb +0 -71
  1144. data/vendored/puppet/lib/puppet/util/ldap/generator.rb +0 -42
  1145. data/vendored/puppet/lib/puppet/util/ldap/manager.rb +0 -281
  1146. data/vendored/puppet/lib/puppet/util/libuser.rb +0 -12
  1147. data/vendored/puppet/lib/puppet/util/limits.rb +0 -12
  1148. data/vendored/puppet/lib/puppet/util/lockfile.rb +0 -66
  1149. data/vendored/puppet/lib/puppet/util/log.rb +0 -415
  1150. data/vendored/puppet/lib/puppet/util/log/destination.rb +0 -49
  1151. data/vendored/puppet/lib/puppet/util/log/destinations.rb +0 -258
  1152. data/vendored/puppet/lib/puppet/util/logging.rb +0 -311
  1153. data/vendored/puppet/lib/puppet/util/metaid.rb +0 -21
  1154. data/vendored/puppet/lib/puppet/util/methodhelper.rb +0 -32
  1155. data/vendored/puppet/lib/puppet/util/metric.rb +0 -64
  1156. data/vendored/puppet/lib/puppet/util/monkey_patches.rb +0 -108
  1157. data/vendored/puppet/lib/puppet/util/multi_match.rb +0 -51
  1158. data/vendored/puppet/lib/puppet/util/nagios_maker.rb +0 -85
  1159. data/vendored/puppet/lib/puppet/util/network_device.rb +0 -17
  1160. data/vendored/puppet/lib/puppet/util/network_device/base.rb +0 -23
  1161. data/vendored/puppet/lib/puppet/util/network_device/cisco.rb +0 -4
  1162. data/vendored/puppet/lib/puppet/util/network_device/cisco/device.rb +0 -285
  1163. data/vendored/puppet/lib/puppet/util/network_device/cisco/facts.rb +0 -72
  1164. data/vendored/puppet/lib/puppet/util/network_device/cisco/interface.rb +0 -94
  1165. data/vendored/puppet/lib/puppet/util/network_device/config.rb +0 -105
  1166. data/vendored/puppet/lib/puppet/util/network_device/ipcalc.rb +0 -68
  1167. data/vendored/puppet/lib/puppet/util/network_device/transport.rb +0 -5
  1168. data/vendored/puppet/lib/puppet/util/network_device/transport/base.rb +0 -26
  1169. data/vendored/puppet/lib/puppet/util/network_device/transport/ssh.rb +0 -126
  1170. data/vendored/puppet/lib/puppet/util/network_device/transport/telnet.rb +0 -47
  1171. data/vendored/puppet/lib/puppet/util/package.rb +0 -31
  1172. data/vendored/puppet/lib/puppet/util/pidlock.rb +0 -62
  1173. data/vendored/puppet/lib/puppet/util/platform.rb +0 -35
  1174. data/vendored/puppet/lib/puppet/util/plist.rb +0 -155
  1175. data/vendored/puppet/lib/puppet/util/posix.rb +0 -137
  1176. data/vendored/puppet/lib/puppet/util/profiler.rb +0 -53
  1177. data/vendored/puppet/lib/puppet/util/profiler/aggregate.rb +0 -85
  1178. data/vendored/puppet/lib/puppet/util/profiler/around_profiler.rb +0 -67
  1179. data/vendored/puppet/lib/puppet/util/profiler/logging.rb +0 -48
  1180. data/vendored/puppet/lib/puppet/util/profiler/object_counts.rb +0 -17
  1181. data/vendored/puppet/lib/puppet/util/profiler/wall_clock.rb +0 -35
  1182. data/vendored/puppet/lib/puppet/util/provider_features.rb +0 -184
  1183. data/vendored/puppet/lib/puppet/util/psych_support.rb +0 -30
  1184. data/vendored/puppet/lib/puppet/util/rdoc.rb +0 -60
  1185. data/vendored/puppet/lib/puppet/util/rdoc/code_objects.rb +0 -294
  1186. data/vendored/puppet/lib/puppet/util/rdoc/generators/puppet_generator.rb +0 -910
  1187. data/vendored/puppet/lib/puppet/util/rdoc/generators/template/puppet/puppet.rb +0 -1085
  1188. data/vendored/puppet/lib/puppet/util/rdoc/parser.rb +0 -12
  1189. data/vendored/puppet/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +0 -259
  1190. data/vendored/puppet/lib/puppet/util/rdoc/parser/puppet_parser_rdoc2.rb +0 -14
  1191. data/vendored/puppet/lib/puppet/util/reference.rb +0 -118
  1192. data/vendored/puppet/lib/puppet/util/resource_template.rb +0 -61
  1193. data/vendored/puppet/lib/puppet/util/retry_action.rb +0 -46
  1194. data/vendored/puppet/lib/puppet/util/rubygems.rb +0 -75
  1195. data/vendored/puppet/lib/puppet/util/run_mode.rb +0 -110
  1196. data/vendored/puppet/lib/puppet/util/selinux.rb +0 -264
  1197. data/vendored/puppet/lib/puppet/util/skip_tags.rb +0 -9
  1198. data/vendored/puppet/lib/puppet/util/splayer.rb +0 -18
  1199. data/vendored/puppet/lib/puppet/util/ssl.rb +0 -53
  1200. data/vendored/puppet/lib/puppet/util/storage.rb +0 -89
  1201. data/vendored/puppet/lib/puppet/util/suidmanager.rb +0 -165
  1202. data/vendored/puppet/lib/puppet/util/symbolic_file_mode.rb +0 -144
  1203. data/vendored/puppet/lib/puppet/util/tag_set.rb +0 -27
  1204. data/vendored/puppet/lib/puppet/util/tagging.rb +0 -118
  1205. data/vendored/puppet/lib/puppet/util/terminal.rb +0 -16
  1206. data/vendored/puppet/lib/puppet/util/user_attr.rb +0 -21
  1207. data/vendored/puppet/lib/puppet/util/warnings.rb +0 -31
  1208. data/vendored/puppet/lib/puppet/util/watched_file.rb +0 -37
  1209. data/vendored/puppet/lib/puppet/util/watcher.rb +0 -17
  1210. data/vendored/puppet/lib/puppet/util/watcher/change_watcher.rb +0 -33
  1211. data/vendored/puppet/lib/puppet/util/watcher/periodic_watcher.rb +0 -37
  1212. data/vendored/puppet/lib/puppet/util/watcher/timer.rb +0 -19
  1213. data/vendored/puppet/lib/puppet/util/windows.rb +0 -35
  1214. data/vendored/puppet/lib/puppet/util/windows/access_control_entry.rb +0 -84
  1215. data/vendored/puppet/lib/puppet/util/windows/access_control_list.rb +0 -113
  1216. data/vendored/puppet/lib/puppet/util/windows/adsi.rb +0 -545
  1217. data/vendored/puppet/lib/puppet/util/windows/api_types.rb +0 -282
  1218. data/vendored/puppet/lib/puppet/util/windows/com.rb +0 -225
  1219. data/vendored/puppet/lib/puppet/util/windows/error.rb +0 -83
  1220. data/vendored/puppet/lib/puppet/util/windows/eventlog.rb +0 -197
  1221. data/vendored/puppet/lib/puppet/util/windows/file.rb +0 -571
  1222. data/vendored/puppet/lib/puppet/util/windows/principal.rb +0 -192
  1223. data/vendored/puppet/lib/puppet/util/windows/process.rb +0 -497
  1224. data/vendored/puppet/lib/puppet/util/windows/registry.rb +0 -374
  1225. data/vendored/puppet/lib/puppet/util/windows/root_certs.rb +0 -108
  1226. data/vendored/puppet/lib/puppet/util/windows/security.rb +0 -857
  1227. data/vendored/puppet/lib/puppet/util/windows/security_descriptor.rb +0 -62
  1228. data/vendored/puppet/lib/puppet/util/windows/sid.rb +0 -282
  1229. data/vendored/puppet/lib/puppet/util/windows/string.rb +0 -16
  1230. data/vendored/puppet/lib/puppet/util/windows/taskscheduler.rb +0 -1267
  1231. data/vendored/puppet/lib/puppet/util/windows/user.rb +0 -309
  1232. data/vendored/puppet/lib/puppet/util/yaml.rb +0 -36
  1233. data/vendored/puppet/lib/puppet/vendor.rb +0 -57
  1234. data/vendored/puppet/lib/puppet/vendor/deep_merge/lib/deep_merge.rb +0 -2
  1235. data/vendored/puppet/lib/puppet/vendor/deep_merge/lib/deep_merge/core.rb +0 -210
  1236. data/vendored/puppet/lib/puppet/vendor/deep_merge/lib/deep_merge/deep_merge_hash.rb +0 -28
  1237. data/vendored/puppet/lib/puppet/vendor/deep_merge/lib/deep_merge/rails_compat.rb +0 -27
  1238. data/vendored/puppet/lib/puppet/vendor/deep_merge/test/test_deep_merge.rb +0 -608
  1239. data/vendored/puppet/lib/puppet/vendor/load_deep_merge.rb +0 -1
  1240. data/vendored/puppet/lib/puppet/vendor/load_pathspec.rb +0 -1
  1241. data/vendored/puppet/lib/puppet/vendor/load_semantic.rb +0 -1
  1242. data/vendored/puppet/lib/puppet/vendor/load_semantic_puppet.rb +0 -1
  1243. data/vendored/puppet/lib/puppet/vendor/pathspec/lib/pathspec.rb +0 -122
  1244. data/vendored/puppet/lib/puppet/vendor/pathspec/lib/pathspec/gitignorespec.rb +0 -275
  1245. data/vendored/puppet/lib/puppet/vendor/pathspec/lib/pathspec/regexspec.rb +0 -17
  1246. data/vendored/puppet/lib/puppet/vendor/pathspec/lib/pathspec/spec.rb +0 -14
  1247. data/vendored/puppet/lib/puppet/vendor/require_vendored.rb +0 -6
  1248. data/vendored/puppet/lib/puppet/vendor/semantic/lib/semantic.rb +0 -5
  1249. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet.rb +0 -11
  1250. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency.rb +0 -181
  1251. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/graph.rb +0 -60
  1252. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/graph_node.rb +0 -117
  1253. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/module_release.rb +0 -58
  1254. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/source.rb +0 -25
  1255. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/unsatisfiable_graph.rb +0 -31
  1256. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/gem_version.rb +0 -3
  1257. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version.rb +0 -203
  1258. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version_range.rb +0 -758
  1259. data/vendored/puppet/lib/puppet/version.rb +0 -93
  1260. data/vendored/puppet/lib/puppet_pal.rb +0 -879
  1261. data/vendored/puppet/lib/puppet_x.rb +0 -14
@@ -1,62 +0,0 @@
1
- # Windows Security Descriptor
2
- #
3
- # Represents a security descriptor that can be applied to any Windows securable
4
- # object, e.g. file, registry key, service, etc. It consists of an owner, group,
5
- # flags, DACL, and SACL. The SACL is not currently supported, though it has the
6
- # same layout as a DACL.
7
- #
8
- # @see https://msdn.microsoft.com/en-us/library/windows/desktop/aa379563(v=vs.85).aspx
9
- # @api private
10
- class Puppet::Util::Windows::SecurityDescriptor
11
- require 'puppet/util/windows/security'
12
- include Puppet::Util::Windows::SID
13
-
14
- attr_reader :owner, :group, :dacl
15
- attr_accessor :protect
16
-
17
- # Construct a security descriptor
18
- #
19
- # @param owner [String] The SID of the owner, e.g. 'S-1-5-18'
20
- # @param group [String] The SID of the group
21
- # @param dacl [AccessControlList] The ACL specifying the rights granted to
22
- # each user for accessing the object that the security descriptor refers to.
23
- # @param protect [Boolean] If true, then inheritable access control
24
- # entries will be blocked, and not applied to the object.
25
- def initialize(owner, group, dacl, protect = false)
26
- @owner = owner
27
- @group = group
28
- @dacl = dacl
29
- @protect = protect
30
- end
31
-
32
- # Set the owner. Non-inherited access control entries assigned to the
33
- # current owner will be assigned to the new owner.
34
- #
35
- # @param new_owner [String] The SID of the new owner, e.g. 'S-1-5-18'
36
- def owner=(new_owner)
37
- if @owner != new_owner
38
- @dacl.reassign!(@owner, new_owner)
39
- @owner = new_owner
40
- end
41
- end
42
-
43
- # Set the group. Non-inherited access control entries assigned to the
44
- # current group will be assigned to the new group.
45
- #
46
- # @param new_group [String] The SID of the new group, e.g. 'S-1-0-0'
47
- def group=(new_group)
48
- if @group != new_group
49
- @dacl.reassign!(@group, new_group)
50
- @group = new_group
51
- end
52
- end
53
-
54
- def inspect
55
- str = sid_to_name(owner)
56
- str << "\n"
57
- str << sid_to_name(group)
58
- str << "\n"
59
- str << @dacl.inspect
60
- str
61
- end
62
- end
@@ -1,282 +0,0 @@
1
- require 'puppet/util/windows'
2
-
3
- module Puppet::Util::Windows
4
- module SID
5
- require 'ffi'
6
- extend FFI::Library
7
-
8
- # missing from Windows::Error
9
- ERROR_NONE_MAPPED = 1332
10
- ERROR_INVALID_SID_STRUCTURE = 1337
11
-
12
- # Well Known SIDs
13
- Null = 'S-1-0'
14
- Nobody = 'S-1-0-0'
15
- World = 'S-1-1'
16
- Everyone = 'S-1-1-0'
17
- Local = 'S-1-2'
18
- Creator = 'S-1-3'
19
- CreatorOwner = 'S-1-3-0'
20
- CreatorGroup = 'S-1-3-1'
21
- CreatorOwnerServer = 'S-1-3-2'
22
- CreatorGroupServer = 'S-1-3-3'
23
- NonUnique = 'S-1-4'
24
- Nt = 'S-1-5'
25
- Dialup = 'S-1-5-1'
26
- Network = 'S-1-5-2'
27
- Batch = 'S-1-5-3'
28
- Interactive = 'S-1-5-4'
29
- Service = 'S-1-5-6'
30
- Anonymous = 'S-1-5-7'
31
- Proxy = 'S-1-5-8'
32
- EnterpriseDomainControllers = 'S-1-5-9'
33
- PrincipalSelf = 'S-1-5-10'
34
- AuthenticatedUsers = 'S-1-5-11'
35
- RestrictedCode = 'S-1-5-12'
36
- TerminalServerUsers = 'S-1-5-13'
37
- LocalSystem = 'S-1-5-18'
38
- NtLocal = 'S-1-5-19'
39
- NtNetwork = 'S-1-5-20'
40
- BuiltinAdministrators = 'S-1-5-32-544'
41
- BuiltinUsers = 'S-1-5-32-545'
42
- Guests = 'S-1-5-32-546'
43
- PowerUsers = 'S-1-5-32-547'
44
- AccountOperators = 'S-1-5-32-548'
45
- ServerOperators = 'S-1-5-32-549'
46
- PrintOperators = 'S-1-5-32-550'
47
- BackupOperators = 'S-1-5-32-551'
48
- Replicators = 'S-1-5-32-552'
49
-
50
- # Convert an account name, e.g. 'Administrators' into a SID string,
51
- # e.g. 'S-1-5-32-544'. The name can be specified as 'Administrators',
52
- # 'BUILTIN\Administrators', or 'S-1-5-32-544', and will return the
53
- # SID. Returns nil if the account doesn't exist.
54
- def name_to_sid(name)
55
- sid = name_to_principal(name)
56
-
57
- sid ? sid.sid : nil
58
- end
59
- module_function :name_to_sid
60
-
61
- # Convert an account name, e.g. 'Administrators' into a Principal::SID object,
62
- # e.g. 'S-1-5-32-544'. The name can be specified as 'Administrators',
63
- # 'BUILTIN\Administrators', or 'S-1-5-32-544', and will return the
64
- # SID object. Returns nil if the account doesn't exist.
65
- # This method returns a SID::Principal with the account, domain, SID, etc
66
- def name_to_principal(name)
67
- # Apparently, we accept a symbol..
68
- name = name.to_s.strip if name
69
-
70
- # if name is a SID string, convert it to raw bytes for use with lookup_account_sid
71
- raw_sid_bytes = nil
72
- begin
73
- string_to_sid_ptr(name) do |sid_ptr|
74
- raw_sid_bytes = sid_ptr.read_array_of_uchar(get_length_sid(sid_ptr))
75
- end
76
- rescue
77
- end
78
-
79
- raw_sid_bytes ? Principal.lookup_account_sid(raw_sid_bytes) : Principal.lookup_account_name(name)
80
- rescue
81
- nil
82
- end
83
- module_function :name_to_principal
84
- class << self; alias name_to_sid_object name_to_principal; end
85
-
86
- # Converts an octet string array of bytes to a SID::Principal object,
87
- # e.g. [1, 1, 0, 0, 0, 0, 0, 5, 18, 0, 0, 0] is the representation for
88
- # S-1-5-18, the local 'SYSTEM' account.
89
- # Raises an Error for nil or non-array input.
90
- # This method returns a SID::Principal with the account, domain, SID, etc
91
- def octet_string_to_principal(bytes)
92
- if !bytes || !bytes.respond_to?('pack') || bytes.empty?
93
- raise Puppet::Util::Windows::Error.new(_("Octet string must be an array of bytes"))
94
- end
95
-
96
- Principal.lookup_account_sid(bytes)
97
- end
98
- module_function :octet_string_to_principal
99
- class << self; alias octet_string_to_sid_object octet_string_to_principal; end
100
-
101
- # Converts a COM instance of IAdsUser or IAdsGroup to a SID::Principal object,
102
- # Raises an Error for nil or an object without an objectSID / Name property.
103
- # This method returns a SID::Principal with the account, domain, SID, etc
104
- # This method will return instances even when the SID is unresolvable, as
105
- # may be the case when domain users have been added to local groups, but
106
- # removed from the domain
107
- def ads_to_principal(ads_object)
108
- if !ads_object || !ads_object.respond_to?(:ole_respond_to?) ||
109
- !ads_object.ole_respond_to?(:objectSID) || !ads_object.ole_respond_to?(:Name)
110
- raise Puppet::Error.new("ads_object must be an IAdsUser or IAdsGroup instance")
111
- end
112
- octet_string_to_principal(ads_object.objectSID)
113
- rescue Puppet::Util::Windows::Error => e
114
- # if the error is not a lookup / mapping problem, immediately re-raise
115
- raise if e.code != ERROR_NONE_MAPPED
116
-
117
- # if the Name property isn't formatted like a SID, OR
118
- if !valid_sid?(ads_object.Name) ||
119
- # if the objectSID doesn't match the Name property, also raise
120
- ((converted = octet_string_to_sid_string(ads_object.objectSID)) != ads_object.Name)
121
- raise Puppet::Error.new("ads_object Name: #{ads_object.Name} invalid or does not match objectSID: #{ads_object.objectSID} (#{converted})", e)
122
- end
123
-
124
- unresolved_principal(ads_object.Name, ads_object.objectSID)
125
- end
126
- module_function :ads_to_principal
127
-
128
- # Convert a SID string, e.g. "S-1-5-32-544" to a name,
129
- # e.g. 'BUILTIN\Administrators'. Returns nil if an account
130
- # for that SID does not exist.
131
- def sid_to_name(value)
132
-
133
- sid_bytes = []
134
- begin
135
- string_to_sid_ptr(value) do |ptr|
136
- sid_bytes = ptr.read_array_of_uchar(get_length_sid(ptr))
137
- end
138
- rescue Puppet::Util::Windows::Error => e
139
- raise if e.code != ERROR_INVALID_SID_STRUCTURE
140
- end
141
-
142
- Principal.lookup_account_sid(sid_bytes).domain_account
143
- rescue
144
- nil
145
- end
146
- module_function :sid_to_name
147
-
148
- # https://stackoverflow.com/a/1792930 - 68 bytes, 184 characters in a string
149
- MAXIMUM_SID_STRING_LENGTH = 184
150
-
151
- # Convert a SID pointer to a SID string, e.g. "S-1-5-32-544".
152
- def sid_ptr_to_string(psid)
153
- if ! psid.kind_of?(FFI::Pointer) || IsValidSid(psid) == FFI::WIN32_FALSE
154
- raise Puppet::Util::Windows::Error.new(_("Invalid SID"))
155
- end
156
-
157
- sid_string = nil
158
- FFI::MemoryPointer.new(:pointer, 1) do |buffer_ptr|
159
- if ConvertSidToStringSidW(psid, buffer_ptr) == FFI::WIN32_FALSE
160
- raise Puppet::Util::Windows::Error.new(_("Failed to convert binary SID"))
161
- end
162
-
163
- buffer_ptr.read_win32_local_pointer do |wide_string_ptr|
164
- if wide_string_ptr.null?
165
- raise Puppet::Error.new(_("ConvertSidToStringSidW failed to allocate buffer for sid"))
166
- end
167
-
168
- sid_string = wide_string_ptr.read_arbitrary_wide_string_up_to(MAXIMUM_SID_STRING_LENGTH)
169
- end
170
- end
171
-
172
- sid_string
173
- end
174
- module_function :sid_ptr_to_string
175
-
176
- # Convert a SID string, e.g. "S-1-5-32-544" to a pointer (containing the
177
- # address of the binary SID structure). The returned value can be used in
178
- # Win32 APIs that expect a PSID, e.g. IsValidSid. The account for this
179
- # SID may or may not exist.
180
- def string_to_sid_ptr(string_sid, &block)
181
- FFI::MemoryPointer.from_string_to_wide_string(string_sid) do |lpcwstr|
182
- FFI::MemoryPointer.new(:pointer, 1) do |sid_ptr_ptr|
183
-
184
- if ConvertStringSidToSidW(lpcwstr, sid_ptr_ptr) == FFI::WIN32_FALSE
185
- raise Puppet::Util::Windows::Error.new(_("Failed to convert string SID: %{string_sid}") % { string_sid: string_sid })
186
- end
187
-
188
- sid_ptr_ptr.read_win32_local_pointer do |sid_ptr|
189
- yield sid_ptr
190
- end
191
- end
192
- end
193
-
194
- # yielded sid_ptr has already had LocalFree called, nothing to return
195
- nil
196
- end
197
- module_function :string_to_sid_ptr
198
-
199
- # Return true if the string is a valid SID, e.g. "S-1-5-32-544", false otherwise.
200
- def valid_sid?(string_sid)
201
- valid = false
202
-
203
- begin
204
- string_to_sid_ptr(string_sid) { |ptr| valid = ! ptr.nil? && ! ptr.null? }
205
- rescue Puppet::Util::Windows::Error => e
206
- raise if e.code != ERROR_INVALID_SID_STRUCTURE
207
- end
208
-
209
- valid
210
- end
211
- module_function :valid_sid?
212
-
213
- def get_length_sid(sid_ptr)
214
- # MSDN states IsValidSid should be called on pointer first
215
- if ! sid_ptr.kind_of?(FFI::Pointer) || IsValidSid(sid_ptr) == FFI::WIN32_FALSE
216
- raise Puppet::Util::Windows::Error.new(_("Invalid SID"))
217
- end
218
-
219
- GetLengthSid(sid_ptr)
220
- end
221
- module_function :get_length_sid
222
-
223
- def octet_string_to_sid_string(sid_bytes)
224
- sid_string = nil
225
-
226
- FFI::MemoryPointer.new(:byte, sid_bytes.length) do |sid_ptr|
227
- sid_ptr.write_array_of_uchar(sid_bytes)
228
- sid_string = Puppet::Util::Windows::SID.sid_ptr_to_string(sid_ptr)
229
- end
230
-
231
- sid_string
232
- end
233
- module_function :octet_string_to_sid_string
234
-
235
- # @api private
236
- def self.unresolved_principal(name, sid_bytes)
237
- Principal.new(
238
- name + " (unresolvable)", # account
239
- sid_bytes, # sid_bytes
240
- name, # sid string
241
- nil, #domain
242
- # https://msdn.microsoft.com/en-us/library/cc245534.aspx?f=255&MSPPError=-2147217396
243
- # Indicates that the type of object could not be determined. For example, no object with that SID exists.
244
- :SidTypeUnknown)
245
- end
246
-
247
- ffi_convention :stdcall
248
-
249
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa379151(v=vs.85).aspx
250
- # BOOL WINAPI IsValidSid(
251
- # _In_ PSID pSid
252
- # );
253
- ffi_lib :advapi32
254
- attach_function_private :IsValidSid,
255
- [:pointer], :win32_bool
256
-
257
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa376399(v=vs.85).aspx
258
- # BOOL ConvertSidToStringSid(
259
- # _In_ PSID Sid,
260
- # _Out_ LPTSTR *StringSid
261
- # );
262
- ffi_lib :advapi32
263
- attach_function_private :ConvertSidToStringSidW,
264
- [:pointer, :pointer], :win32_bool
265
-
266
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa376402(v=vs.85).aspx
267
- # BOOL WINAPI ConvertStringSidToSid(
268
- # _In_ LPCTSTR StringSid,
269
- # _Out_ PSID *Sid
270
- # );
271
- ffi_lib :advapi32
272
- attach_function_private :ConvertStringSidToSidW,
273
- [:lpcwstr, :pointer], :win32_bool
274
-
275
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa446642(v=vs.85).aspx
276
- # DWORD WINAPI GetLengthSid(
277
- # _In_ PSID pSid
278
- # );
279
- ffi_lib :advapi32
280
- attach_function_private :GetLengthSid, [:pointer], :dword
281
- end
282
- end
@@ -1,16 +0,0 @@
1
- require 'puppet/util/windows'
2
-
3
- module Puppet::Util::Windows::String
4
- def wide_string(str)
5
- # if given a nil string, assume caller wants to pass a nil pointer to win32
6
- return nil if str.nil?
7
- # ruby (< 2.1) does not respect multibyte terminators, so it is possible
8
- # for a string to contain a single trailing null byte, followed by garbage
9
- # causing buffer overruns.
10
- #
11
- # See http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?revision=41920&view=revision
12
- newstr = str + "\0".encode(str.encoding)
13
- newstr.encode!('UTF-16LE')
14
- end
15
- module_function :wide_string
16
- end
@@ -1,1267 +0,0 @@
1
- require 'puppet/util/windows'
2
-
3
- # The Win32 module serves as a namespace only
4
- module Win32
5
- # The TaskScheduler class encapsulates taskscheduler settings and behavior
6
- class TaskScheduler
7
- include Puppet::Util::Windows::String
8
-
9
- require 'ffi'
10
- extend FFI::Library
11
-
12
- # The error class raised if any task scheduler specific calls fail.
13
- class Error < Puppet::Util::Windows::Error; end
14
-
15
- class << self
16
- attr_accessor :com_initialized
17
- end
18
-
19
- # :stopdoc:
20
- TASK_TIME_TRIGGER_ONCE = :TASK_TIME_TRIGGER_ONCE
21
- TASK_TIME_TRIGGER_DAILY = :TASK_TIME_TRIGGER_DAILY
22
- TASK_TIME_TRIGGER_WEEKLY = :TASK_TIME_TRIGGER_WEEKLY
23
- TASK_TIME_TRIGGER_MONTHLYDATE = :TASK_TIME_TRIGGER_MONTHLYDATE
24
- TASK_TIME_TRIGGER_MONTHLYDOW = :TASK_TIME_TRIGGER_MONTHLYDOW
25
- TASK_EVENT_TRIGGER_ON_IDLE = :TASK_EVENT_TRIGGER_ON_IDLE
26
- TASK_EVENT_TRIGGER_AT_SYSTEMSTART = :TASK_EVENT_TRIGGER_AT_SYSTEMSTART
27
- TASK_EVENT_TRIGGER_AT_LOGON = :TASK_EVENT_TRIGGER_AT_LOGON
28
-
29
- TASK_SUNDAY = 0x1
30
- TASK_MONDAY = 0x2
31
- TASK_TUESDAY = 0x4
32
- TASK_WEDNESDAY = 0x8
33
- TASK_THURSDAY = 0x10
34
- TASK_FRIDAY = 0x20
35
- TASK_SATURDAY = 0x40
36
- TASK_FIRST_WEEK = 1
37
- TASK_SECOND_WEEK = 2
38
- TASK_THIRD_WEEK = 3
39
- TASK_FOURTH_WEEK = 4
40
- TASK_LAST_WEEK = 5
41
- TASK_JANUARY = 0x1
42
- TASK_FEBRUARY = 0x2
43
- TASK_MARCH = 0x4
44
- TASK_APRIL = 0x8
45
- TASK_MAY = 0x10
46
- TASK_JUNE = 0x20
47
- TASK_JULY = 0x40
48
- TASK_AUGUST = 0x80
49
- TASK_SEPTEMBER = 0x100
50
- TASK_OCTOBER = 0x200
51
- TASK_NOVEMBER = 0x400
52
- TASK_DECEMBER = 0x800
53
-
54
- TASK_FLAG_INTERACTIVE = 0x1
55
- TASK_FLAG_DELETE_WHEN_DONE = 0x2
56
- TASK_FLAG_DISABLED = 0x4
57
- TASK_FLAG_START_ONLY_IF_IDLE = 0x10
58
- TASK_FLAG_KILL_ON_IDLE_END = 0x20
59
- TASK_FLAG_DONT_START_IF_ON_BATTERIES = 0x40
60
- TASK_FLAG_KILL_IF_GOING_ON_BATTERIES = 0x80
61
- TASK_FLAG_RUN_ONLY_IF_DOCKED = 0x100
62
- TASK_FLAG_HIDDEN = 0x200
63
- TASK_FLAG_RUN_IF_CONNECTED_TO_INTERNET = 0x400
64
- TASK_FLAG_RESTART_ON_IDLE_RESUME = 0x800
65
- TASK_FLAG_SYSTEM_REQUIRED = 0x1000
66
- TASK_FLAG_RUN_ONLY_IF_LOGGED_ON = 0x2000
67
- TASK_TRIGGER_FLAG_HAS_END_DATE = 0x1
68
- TASK_TRIGGER_FLAG_KILL_AT_DURATION_END = 0x2
69
- TASK_TRIGGER_FLAG_DISABLED = 0x4
70
-
71
- TASK_MAX_RUN_TIMES = 1440
72
- TASKS_TO_RETRIEVE = 5
73
-
74
- # COM
75
-
76
- CLSID_CTask = FFI::WIN32::GUID['148BD520-A2AB-11CE-B11F-00AA00530503']
77
- IID_ITask = FFI::WIN32::GUID['148BD524-A2AB-11CE-B11F-00AA00530503']
78
- IID_IPersistFile = FFI::WIN32::GUID['0000010b-0000-0000-C000-000000000046']
79
-
80
- SCHED_S_TASK_READY = 0x00041300
81
- SCHED_S_TASK_RUNNING = 0x00041301
82
- SCHED_S_TASK_HAS_NOT_RUN = 0x00041303
83
- SCHED_S_TASK_NOT_SCHEDULED = 0x00041305
84
- # HRESULT error codes
85
- # https://blogs.msdn.com/b/eldar/archive/2007/04/03/a-lot-of-hresult-codes.aspx
86
- # in Ruby, an 0x8XXXXXXX style HRESULT can be resolved to 2s complement
87
- # by using "0x8XXXXXXX".to_i(16) - - 0x100000000
88
- SCHED_E_ACCOUNT_INFORMATION_NOT_SET = -2147216625 # 0x8004130F
89
- SCHED_E_NO_SECURITY_SERVICES = -2147216622 # 0x80041312
90
- # No mapping between account names and security IDs was done.
91
- ERROR_NONE_MAPPED = -2147023564 # 0x80070534 WIN32 Error CODE 1332 (0x534)
92
-
93
- # :startdoc:
94
-
95
- # Shorthand constants
96
- IDLE = Puppet::Util::Windows::Process::IDLE_PRIORITY_CLASS
97
- NORMAL = Puppet::Util::Windows::Process::NORMAL_PRIORITY_CLASS
98
- HIGH = Puppet::Util::Windows::Process::HIGH_PRIORITY_CLASS
99
- REALTIME = Puppet::Util::Windows::Process::REALTIME_PRIORITY_CLASS
100
- BELOW_NORMAL = Puppet::Util::Windows::Process::BELOW_NORMAL_PRIORITY_CLASS
101
- ABOVE_NORMAL = Puppet::Util::Windows::Process::ABOVE_NORMAL_PRIORITY_CLASS
102
-
103
- ONCE = TASK_TIME_TRIGGER_ONCE
104
- DAILY = TASK_TIME_TRIGGER_DAILY
105
- WEEKLY = TASK_TIME_TRIGGER_WEEKLY
106
- MONTHLYDATE = TASK_TIME_TRIGGER_MONTHLYDATE
107
- MONTHLYDOW = TASK_TIME_TRIGGER_MONTHLYDOW
108
-
109
- ON_IDLE = TASK_EVENT_TRIGGER_ON_IDLE
110
- AT_SYSTEMSTART = TASK_EVENT_TRIGGER_AT_SYSTEMSTART
111
- AT_LOGON = TASK_EVENT_TRIGGER_AT_LOGON
112
- FIRST_WEEK = TASK_FIRST_WEEK
113
- SECOND_WEEK = TASK_SECOND_WEEK
114
- THIRD_WEEK = TASK_THIRD_WEEK
115
- FOURTH_WEEK = TASK_FOURTH_WEEK
116
- LAST_WEEK = TASK_LAST_WEEK
117
- SUNDAY = TASK_SUNDAY
118
- MONDAY = TASK_MONDAY
119
- TUESDAY = TASK_TUESDAY
120
- WEDNESDAY = TASK_WEDNESDAY
121
- THURSDAY = TASK_THURSDAY
122
- FRIDAY = TASK_FRIDAY
123
- SATURDAY = TASK_SATURDAY
124
- JANUARY = TASK_JANUARY
125
- FEBRUARY = TASK_FEBRUARY
126
- MARCH = TASK_MARCH
127
- APRIL = TASK_APRIL
128
- MAY = TASK_MAY
129
- JUNE = TASK_JUNE
130
- JULY = TASK_JULY
131
- AUGUST = TASK_AUGUST
132
- SEPTEMBER = TASK_SEPTEMBER
133
- OCTOBER = TASK_OCTOBER
134
- NOVEMBER = TASK_NOVEMBER
135
- DECEMBER = TASK_DECEMBER
136
-
137
- INTERACTIVE = TASK_FLAG_INTERACTIVE
138
- DELETE_WHEN_DONE = TASK_FLAG_DELETE_WHEN_DONE
139
- DISABLED = TASK_FLAG_DISABLED
140
- START_ONLY_IF_IDLE = TASK_FLAG_START_ONLY_IF_IDLE
141
- KILL_ON_IDLE_END = TASK_FLAG_KILL_ON_IDLE_END
142
- DONT_START_IF_ON_BATTERIES = TASK_FLAG_DONT_START_IF_ON_BATTERIES
143
- KILL_IF_GOING_ON_BATTERIES = TASK_FLAG_KILL_IF_GOING_ON_BATTERIES
144
- RUN_ONLY_IF_DOCKED = TASK_FLAG_RUN_ONLY_IF_DOCKED
145
- HIDDEN = TASK_FLAG_HIDDEN
146
- RUN_IF_CONNECTED_TO_INTERNET = TASK_FLAG_RUN_IF_CONNECTED_TO_INTERNET
147
- RESTART_ON_IDLE_RESUME = TASK_FLAG_RESTART_ON_IDLE_RESUME
148
- SYSTEM_REQUIRED = TASK_FLAG_SYSTEM_REQUIRED
149
- RUN_ONLY_IF_LOGGED_ON = TASK_FLAG_RUN_ONLY_IF_LOGGED_ON
150
-
151
- FLAG_HAS_END_DATE = TASK_TRIGGER_FLAG_HAS_END_DATE
152
- FLAG_KILL_AT_DURATION_END = TASK_TRIGGER_FLAG_KILL_AT_DURATION_END
153
- FLAG_DISABLED = TASK_TRIGGER_FLAG_DISABLED
154
-
155
- MAX_RUN_TIMES = TASK_MAX_RUN_TIMES
156
-
157
- # unfortunately MSTask.h does not specify the limits for any settings
158
- # so these were determined with some experimentation
159
- # if values too large are written, its suspected there may be internal
160
- # limits may be exceeded, corrupting the job
161
- # used for max application name and path values
162
- MAX_PATH = 260
163
- # UNLEN from lmcons.h is 256
164
- # https://technet.microsoft.com/it-it/library/bb726984(en-us).aspx specifies 104
165
- MAX_ACCOUNT_LENGTH = 256
166
- # command line max length is limited to 8191, choose something high but still enough that we don't blow out CLI
167
- MAX_PARAMETERS_LENGTH = 4096
168
- # in testing, this value could be set to a length of 99999, but saving / loading the task failed
169
- MAX_COMMENT_LENGTH = 8192
170
-
171
- # Returns a new TaskScheduler object. If a work_item (and possibly the
172
- # the trigger) are passed as arguments then a new work item is created and
173
- # associated with that trigger, although you can still activate other tasks
174
- # with the same handle.
175
- #
176
- # This is really just a bit of convenience. Passing arguments to the
177
- # constructor is the same as calling TaskScheduler.new plus
178
- # TaskScheduler#new_work_item.
179
- #
180
- def initialize(work_item=nil, trigger=nil)
181
- @pITS = nil
182
- @pITask = nil
183
-
184
- if ! self.class.com_initialized
185
- Puppet::Util::Windows::COM.InitializeCom()
186
- self.class.com_initialized = true
187
- end
188
-
189
- @pITS = COM::TaskScheduler.new
190
- at_exit do
191
- begin
192
- @pITS.Release if @pITS && !@pITS.null?
193
- @pITS = nil
194
- rescue
195
- end
196
- end
197
-
198
- if work_item
199
- if trigger
200
- raise TypeError unless trigger.is_a?(Hash)
201
- new_work_item(work_item, trigger)
202
- end
203
- end
204
- end
205
-
206
- # Returns an array of scheduled task names.
207
- #
208
- def enum
209
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
210
- array = []
211
-
212
- @pITS.UseInstance(COM::EnumWorkItems, :Enum) do |pIEnum|
213
- FFI::MemoryPointer.new(:pointer) do |names_array_ptr_ptr|
214
- FFI::MemoryPointer.new(:win32_ulong) do |fetched_count_ptr|
215
- # awkward usage, if number requested is available, returns S_OK (0), or if less were returned returns S_FALSE (1)
216
- while (pIEnum.Next(TASKS_TO_RETRIEVE, names_array_ptr_ptr, fetched_count_ptr) >= Puppet::Util::Windows::COM::S_OK)
217
- count = fetched_count_ptr.read_win32_ulong
218
- break if count == 0
219
-
220
- names_array_ptr_ptr.read_com_memory_pointer do |names_array_ptr|
221
- # iterate over the array of pointers
222
- name_ptr_ptr = FFI::Pointer.new(:pointer, names_array_ptr)
223
- for i in 0 ... count
224
- name_ptr_ptr[i].read_com_memory_pointer do |name_ptr|
225
- array << name_ptr.read_arbitrary_wide_string_up_to(MAX_PATH)
226
- end
227
- end
228
- end
229
- end
230
- end
231
- end
232
- end
233
-
234
- array
235
- end
236
-
237
- alias :tasks :enum
238
-
239
- # Activate the specified task.
240
- #
241
- def activate(task)
242
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
243
- raise TypeError unless task.is_a?(String)
244
-
245
- FFI::MemoryPointer.new(:pointer) do |ptr|
246
- @pITS.Activate(wide_string(task), IID_ITask, ptr)
247
-
248
- reset_current_task
249
- @pITask = COM::Task.new(ptr.read_pointer)
250
- end
251
-
252
- @pITask
253
- end
254
-
255
- # Delete the specified task name.
256
- #
257
- def delete(task)
258
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
259
- raise TypeError unless task.is_a?(String)
260
-
261
- @pITS.Delete(wide_string(task))
262
-
263
- true
264
- end
265
-
266
- # Execute the current task.
267
- #
268
- def run
269
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
270
-
271
- @pITask.Run
272
- end
273
-
274
- # Saves the current task. Tasks must be saved before they can be activated.
275
- # The .job file itself is typically stored in the C:\WINDOWS\Tasks folder.
276
- #
277
- # If +file+ (an absolute path) is specified then the job is saved to that
278
- # file instead. A '.job' extension is recommended but not enforced.
279
- #
280
- def save(file = nil)
281
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
282
- raise Error.new(_('Account information must be set on the current task to save it properly.')) if !@account_information_set
283
-
284
- reset = true
285
-
286
- begin
287
- @pITask.QueryInstance(COM::PersistFile) do |pIPersistFile|
288
- wide_file = wide_string(file)
289
- pIPersistFile.Save(wide_file, 1)
290
- pIPersistFile.SaveCompleted(wide_file)
291
- end
292
- rescue
293
- reset = false
294
- ensure
295
- reset_current_task if reset
296
- end
297
- end
298
-
299
- # Terminate the current task.
300
- #
301
- def terminate
302
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
303
-
304
- @pITask.Terminate
305
- end
306
-
307
- # Set the host on which the various TaskScheduler methods will execute.
308
- #
309
- def machine=(host)
310
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
311
- raise TypeError unless host.is_a?(String)
312
-
313
- @pITS.SetTargetComputer(wide_string(host))
314
-
315
- host
316
- end
317
-
318
- alias :host= :machine=
319
-
320
- # Sets the +user+ and +password+ for the given task. If the user and
321
- # password are set properly then true is returned.
322
- #
323
- # In some cases the job may be created, but the account information was
324
- # bad. In this case the task is created but a warning is generated and
325
- # false is returned.
326
- #
327
- # Note that if intending to use SYSTEM, specify an empty user and nil password
328
- #
329
- # Calling task.set_account_information('SYSTEM', nil) will generally not
330
- # work, except for one special case where flags are also set like:
331
- # task.flags = Win32::TaskScheduler::TASK_FLAG_RUN_ONLY_IF_LOGGED_ON
332
- #
333
- # This must be done prior to the 1st save() call for the task to be
334
- # properly registered and visible through the MMC snap-in / schtasks.exe
335
- #
336
- def set_account_information(user, password)
337
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
338
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
339
-
340
- bool = false
341
-
342
- begin
343
- if (user.nil? || user=="") && (password.nil? || password=="")
344
- @pITask.SetAccountInformation(wide_string(""), FFI::Pointer::NULL)
345
- else
346
- if user.length > MAX_ACCOUNT_LENGTH
347
- raise Error.new(_("User has exceeded maximum allowed length %{max}") % { max: MAX_ACCOUNT_LENGTH })
348
- end
349
- user = wide_string(user)
350
- password = wide_string(password)
351
- @pITask.SetAccountInformation(user, password)
352
- end
353
-
354
- @account_information_set = true
355
- bool = true
356
- rescue Puppet::Util::Windows::Error => e
357
- raise e unless e.code == SCHED_E_ACCOUNT_INFORMATION_NOT_SET
358
-
359
- warn _('job created, but password was invalid')
360
- end
361
-
362
- bool
363
- end
364
-
365
- # Returns the user associated with the task or nil if no user has yet
366
- # been associated with the task.
367
- #
368
- def account_information
369
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
370
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
371
-
372
- # default under certain failures
373
- user = nil
374
-
375
- begin
376
- FFI::MemoryPointer.new(:pointer) do |ptr|
377
- @pITask.GetAccountInformation(ptr)
378
- ptr.read_com_memory_pointer do |str_ptr|
379
- user = str_ptr.read_arbitrary_wide_string_up_to(MAX_ACCOUNT_LENGTH) if ! str_ptr.null?
380
- end
381
- end
382
- rescue Puppet::Util::Windows::Error => e
383
- raise e unless e.code == SCHED_E_ACCOUNT_INFORMATION_NOT_SET ||
384
- e.code == SCHED_E_NO_SECURITY_SERVICES ||
385
- e.code == ERROR_NONE_MAPPED
386
- end
387
-
388
- user
389
- end
390
-
391
- # Returns the name of the application associated with the task.
392
- #
393
- def application_name
394
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
395
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
396
-
397
- app = nil
398
-
399
- FFI::MemoryPointer.new(:pointer) do |ptr|
400
- @pITask.GetApplicationName(ptr)
401
-
402
- ptr.read_com_memory_pointer do |str_ptr|
403
- app = str_ptr.read_arbitrary_wide_string_up_to(MAX_PATH) if ! str_ptr.null?
404
- end
405
- end
406
-
407
- app
408
- end
409
-
410
- # Sets the application name associated with the task.
411
- #
412
- def application_name=(app)
413
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
414
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
415
- raise TypeError unless app.is_a?(String)
416
-
417
- # the application name is written to a .job file on disk, so is subject to path limitations
418
- if app.length > MAX_PATH
419
- raise Error.new(_("Application name has exceeded maximum allowed length %{max}") % { max: MAX_PATH })
420
- end
421
- @pITask.SetApplicationName(wide_string(app))
422
-
423
- app
424
- end
425
-
426
- # Returns the command line parameters for the task.
427
- #
428
- def parameters
429
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
430
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
431
-
432
- param = nil
433
-
434
- FFI::MemoryPointer.new(:pointer) do |ptr|
435
- @pITask.GetParameters(ptr)
436
-
437
- ptr.read_com_memory_pointer do |str_ptr|
438
- param = str_ptr.read_arbitrary_wide_string_up_to(MAX_PARAMETERS_LENGTH) if ! str_ptr.null?
439
- end
440
- end
441
-
442
- param
443
- end
444
-
445
- # Sets the parameters for the task. These parameters are passed as command
446
- # line arguments to the application the task will run. To clear the command
447
- # line parameters set it to an empty string.
448
- #
449
- def parameters=(param)
450
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
451
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
452
- raise TypeError unless param.is_a?(String)
453
-
454
- if param.length > MAX_PARAMETERS_LENGTH
455
- raise Error.new(_("Parameters has exceeded maximum allowed length %{max}") % { max: MAX_PARAMETERS_LENGTH })
456
- end
457
-
458
- @pITask.SetParameters(wide_string(param))
459
-
460
- param
461
- end
462
-
463
- # Returns the working directory for the task.
464
- #
465
- def working_directory
466
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
467
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
468
-
469
- dir = nil
470
-
471
- FFI::MemoryPointer.new(:pointer) do |ptr|
472
- @pITask.GetWorkingDirectory(ptr)
473
-
474
- ptr.read_com_memory_pointer do |str_ptr|
475
- dir = str_ptr.read_arbitrary_wide_string_up_to(MAX_PATH) if ! str_ptr.null?
476
- end
477
- end
478
-
479
- dir
480
- end
481
-
482
- # Sets the working directory for the task.
483
- #
484
- def working_directory=(dir)
485
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
486
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
487
- raise TypeError unless dir.is_a?(String)
488
-
489
- if dir.length > MAX_PATH
490
- raise Error.new(_("Working directory has exceeded maximum allowed length %{max}") % { max: MAX_PATH })
491
- end
492
-
493
- @pITask.SetWorkingDirectory(wide_string(dir))
494
-
495
- dir
496
- end
497
-
498
- # Returns the task's priority level. Possible values are 'idle',
499
- # 'normal', 'high', 'realtime', 'below_normal', 'above_normal',
500
- # and 'unknown'.
501
- #
502
- def priority
503
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
504
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
505
-
506
- priority_name = ''
507
-
508
- FFI::MemoryPointer.new(:dword, 1) do |ptr|
509
- @pITask.GetPriority(ptr)
510
-
511
- pri = ptr.read_dword
512
- if (pri & IDLE) != 0
513
- priority_name = 'idle'
514
- elsif (pri & NORMAL) != 0
515
- priority_name = 'normal'
516
- elsif (pri & HIGH) != 0
517
- priority_name = 'high'
518
- elsif (pri & REALTIME) != 0
519
- priority_name = 'realtime'
520
- elsif (pri & BELOW_NORMAL) != 0
521
- priority_name = 'below_normal'
522
- elsif (pri & ABOVE_NORMAL) != 0
523
- priority_name = 'above_normal'
524
- else
525
- priority_name = 'unknown'
526
- end
527
- end
528
-
529
- priority_name
530
- end
531
-
532
- # Sets the priority of the task. The +priority+ should be a numeric
533
- # priority constant value.
534
- #
535
- def priority=(priority)
536
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
537
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
538
- raise TypeError unless priority.is_a?(Numeric)
539
-
540
- @pITask.SetPriority(priority)
541
-
542
- priority
543
- end
544
-
545
- # Creates a new work item (scheduled job) with the given +trigger+. The
546
- # trigger variable is a hash of options that define when the scheduled
547
- # job should run.
548
- #
549
- def new_work_item(task, trigger)
550
- raise TypeError unless trigger.is_a?(Hash)
551
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
552
-
553
- # I'm working around github issue #1 here.
554
- enum.each{ |name|
555
- if name.downcase == task.downcase + '.job'
556
- raise Error.new(_("task '%{task}' already exists") % { task: task })
557
- end
558
- }
559
-
560
- FFI::MemoryPointer.new(:pointer) do |ptr|
561
- @pITS.NewWorkItem(wide_string(task), CLSID_CTask, IID_ITask, ptr)
562
-
563
- reset_current_task
564
- @pITask = COM::Task.new(ptr.read_pointer)
565
-
566
- FFI::MemoryPointer.new(:word, 1) do |trigger_index_ptr|
567
- # Without the 'enum.include?' check above the code segfaults here if the
568
- # task already exists. This should probably be handled properly instead
569
- # of simply avoiding the issue.
570
-
571
- @pITask.UseInstance(COM::TaskTrigger, :CreateTrigger, trigger_index_ptr) do |pITaskTrigger|
572
- populate_trigger(pITaskTrigger, trigger)
573
- end
574
- end
575
- end
576
-
577
- # preload task with the SYSTEM account
578
- # empty string '' means 'SYSTEM' per MSDN, so default it
579
- # given an account is necessary for creation of a task
580
- # note that a user may set SYSTEM explicitly, but that has problems
581
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa381276(v=vs.85).aspx
582
- set_account_information('', nil)
583
-
584
- @pITask
585
- end
586
-
587
- alias :new_task :new_work_item
588
-
589
- # Returns the number of triggers associated with the active task.
590
- #
591
- def trigger_count
592
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
593
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
594
-
595
- count = 0
596
-
597
- FFI::MemoryPointer.new(:word, 1) do |ptr|
598
- @pITask.GetTriggerCount(ptr)
599
- count = ptr.read_word
600
- end
601
-
602
- count
603
- end
604
-
605
- # Deletes the trigger at the specified index.
606
- #
607
- def delete_trigger(index)
608
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
609
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
610
-
611
- @pITask.DeleteTrigger(index)
612
- index
613
- end
614
-
615
- # Returns a hash that describes the trigger at the given index for the
616
- # current task.
617
- #
618
- def trigger(index)
619
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
620
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
621
-
622
- trigger = {}
623
-
624
- @pITask.UseInstance(COM::TaskTrigger, :GetTrigger, index) do |pITaskTrigger|
625
- FFI::MemoryPointer.new(COM::TASK_TRIGGER.size) do |task_trigger_ptr|
626
- pITaskTrigger.GetTrigger(task_trigger_ptr)
627
- trigger = populate_hash_from_trigger(COM::TASK_TRIGGER.new(task_trigger_ptr))
628
- end
629
- end
630
-
631
- trigger
632
- end
633
-
634
- # Sets the trigger for the currently active task.
635
- #
636
- def trigger=(trigger)
637
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
638
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
639
- raise TypeError unless trigger.is_a?(Hash)
640
-
641
- FFI::MemoryPointer.new(:word, 1) do |trigger_index_ptr|
642
- # Without the 'enum.include?' check above the code segfaults here if the
643
- # task already exists. This should probably be handled properly instead
644
- # of simply avoiding the issue.
645
-
646
- @pITask.UseInstance(COM::TaskTrigger, :CreateTrigger, trigger_index_ptr) do |pITaskTrigger|
647
- populate_trigger(pITaskTrigger, trigger)
648
- end
649
- end
650
-
651
- trigger
652
- end
653
-
654
- # Adds a trigger at the specified index.
655
- #
656
- def add_trigger(index, trigger)
657
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
658
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
659
- raise TypeError unless trigger.is_a?(Hash)
660
-
661
- @pITask.UseInstance(COM::TaskTrigger, :GetTrigger, index) do |pITaskTrigger|
662
- populate_trigger(pITaskTrigger, trigger)
663
- end
664
- end
665
-
666
- # Returns the flags (integer) that modify the behavior of the work item. You
667
- # must OR the return value to determine the flags yourself.
668
- #
669
- def flags
670
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
671
-
672
- flags = 0
673
-
674
- FFI::MemoryPointer.new(:dword, 1) do |ptr|
675
- @pITask.GetFlags(ptr)
676
- flags = ptr.read_dword
677
- end
678
-
679
- flags
680
- end
681
-
682
- # Sets an OR'd value of flags that modify the behavior of the work item.
683
- #
684
- def flags=(flags)
685
- raise Error.new(_('No current task scheduler. ITaskScheduler is NULL.')) if @pITS.nil?
686
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
687
-
688
- @pITask.SetFlags(flags)
689
- flags
690
- end
691
-
692
- # Returns the status of the currently active task. Possible values are
693
- # 'ready', 'running', 'not scheduled' or 'unknown'.
694
- #
695
- def status
696
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
697
-
698
- st = nil
699
-
700
- FFI::MemoryPointer.new(:hresult, 1) do |ptr|
701
- @pITask.GetStatus(ptr)
702
- st = ptr.read_hresult
703
- end
704
-
705
- case st
706
- when SCHED_S_TASK_READY
707
- status = 'ready'
708
- when SCHED_S_TASK_RUNNING
709
- status = 'running'
710
- when SCHED_S_TASK_NOT_SCHEDULED
711
- status = 'not scheduled'
712
- else
713
- status = 'unknown'
714
- end
715
-
716
- status
717
- end
718
-
719
- # Returns the exit code from the last scheduled run.
720
- #
721
- def exit_code
722
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
723
-
724
- status = 0
725
-
726
- begin
727
- FFI::MemoryPointer.new(:dword, 1) do |ptr|
728
- @pITask.GetExitCode(ptr)
729
- status = ptr.read_dword
730
- end
731
- rescue Puppet::Util::Windows::Error => e
732
- raise e unless e.code == SCHED_S_TASK_HAS_NOT_RUN
733
- end
734
-
735
- status
736
- end
737
-
738
- # Returns the comment associated with the task, if any.
739
- #
740
- def comment
741
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
742
-
743
- comment = nil
744
-
745
- FFI::MemoryPointer.new(:pointer) do |ptr|
746
- @pITask.GetComment(ptr)
747
-
748
- ptr.read_com_memory_pointer do |str_ptr|
749
- comment = str_ptr.read_arbitrary_wide_string_up_to(MAX_COMMENT_LENGTH) if ! str_ptr.null?
750
- end
751
- end
752
-
753
- comment
754
- end
755
-
756
- # Sets the comment for the task.
757
- #
758
- def comment=(comment)
759
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
760
- raise TypeError unless comment.is_a?(String)
761
-
762
- if comment.length > MAX_COMMENT_LENGTH
763
- raise Error.new(_("Comment has exceeded maximum allowed length %{max}") % { max: MAX_COMMENT_LENGTH })
764
- end
765
-
766
- @pITask.SetComment(wide_string(comment))
767
- comment
768
- end
769
-
770
- # Returns the name of the user who created the task.
771
- #
772
- def creator
773
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
774
-
775
- creator = nil
776
-
777
- FFI::MemoryPointer.new(:pointer) do |ptr|
778
- @pITask.GetCreator(ptr)
779
-
780
- ptr.read_com_memory_pointer do |str_ptr|
781
- creator = str_ptr.read_arbitrary_wide_string_up_to(MAX_ACCOUNT_LENGTH) if ! str_ptr.null?
782
- end
783
- end
784
-
785
- creator
786
- end
787
-
788
- # Sets the creator for the task.
789
- #
790
- def creator=(creator)
791
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
792
- raise TypeError unless creator.is_a?(String)
793
-
794
- if creator.length > MAX_ACCOUNT_LENGTH
795
- raise Error.new(_("Creator has exceeded maximum allowed length %{max}") % { max: MAX_ACCOUNT_LENGTH })
796
- end
797
-
798
-
799
- @pITask.SetCreator(wide_string(creator))
800
- creator
801
- end
802
-
803
- # Returns a Time object that indicates the next time the task will run.
804
- #
805
- def next_run_time
806
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
807
-
808
- time = nil
809
-
810
- FFI::MemoryPointer.new(WIN32::SYSTEMTIME.size) do |ptr|
811
- @pITask.GetNextRunTime(ptr)
812
- time = WIN32::SYSTEMTIME.new(ptr).to_local_time
813
- end
814
-
815
- time
816
- end
817
-
818
- # Returns a Time object indicating the most recent time the task ran or
819
- # nil if the task has never run.
820
- #
821
- def most_recent_run_time
822
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
823
-
824
- time = nil
825
-
826
- begin
827
- FFI::MemoryPointer.new(WIN32::SYSTEMTIME.size) do |ptr|
828
- @pITask.GetMostRecentRunTime(ptr)
829
- time = WIN32::SYSTEMTIME.new(ptr).to_local_time
830
- end
831
- rescue Puppet::Util::Windows::Error => e
832
- raise e unless e.code == SCHED_S_TASK_HAS_NOT_RUN
833
- end
834
-
835
- time
836
- end
837
-
838
- # Returns the maximum length of time, in milliseconds, that the task
839
- # will run before terminating.
840
- #
841
- def max_run_time
842
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
843
-
844
- max_run_time = nil
845
-
846
- FFI::MemoryPointer.new(:dword, 1) do |ptr|
847
- @pITask.GetMaxRunTime(ptr)
848
- max_run_time = ptr.read_dword
849
- end
850
-
851
- max_run_time
852
- end
853
-
854
- # Sets the maximum length of time, in milliseconds, that the task can run
855
- # before terminating. Returns the value you specified if successful.
856
- #
857
- def max_run_time=(max_run_time)
858
- raise Error.new(_('No currently active task. ITask is NULL.')) if @pITask.nil?
859
- raise TypeError unless max_run_time.is_a?(Numeric)
860
-
861
- @pITask.SetMaxRunTime(max_run_time)
862
- max_run_time
863
- end
864
-
865
- # Returns whether or not the scheduled task exists.
866
- def exists?(job_name)
867
- # task name comparison is case insensitive
868
- tasks.any? { |name| name.casecmp(job_name + '.job') == 0 }
869
- end
870
-
871
- private
872
-
873
- # :stopdoc:
874
-
875
- # Used for the new_work_item method
876
- ValidTriggerKeys = [
877
- 'end_day',
878
- 'end_month',
879
- 'end_year',
880
- 'flags',
881
- 'minutes_duration',
882
- 'minutes_interval',
883
- 'random_minutes_interval',
884
- 'start_day',
885
- 'start_hour',
886
- 'start_minute',
887
- 'start_month',
888
- 'start_year',
889
- 'trigger_type',
890
- 'type'
891
- ]
892
-
893
- ValidTypeKeys = [
894
- 'days_interval',
895
- 'weeks_interval',
896
- 'days_of_week',
897
- 'months',
898
- 'days',
899
- 'weeks'
900
- ]
901
-
902
- # Private method that validates keys, and converts all keys to lowercase
903
- # strings.
904
- #
905
- def transform_and_validate(hash)
906
- new_hash = {}
907
-
908
- hash.each{ |key, value|
909
- key = key.to_s.downcase
910
- if key == 'type'
911
- new_type_hash = {}
912
- raise ArgumentError unless value.is_a?(Hash)
913
- value.each{ |subkey, subvalue|
914
- subkey = subkey.to_s.downcase
915
- if ValidTypeKeys.include?(subkey)
916
- new_type_hash[subkey] = subvalue
917
- else
918
- raise ArgumentError, _("Invalid type key '%{key}'") % { key: subkey }
919
- end
920
- }
921
- new_hash[key] = new_type_hash
922
- else
923
- if ValidTriggerKeys.include?(key)
924
- new_hash[key] = value
925
- else
926
- raise ArgumentError, _("Invalid key '%{key}'") % { key: key }
927
- end
928
- end
929
- }
930
-
931
- new_hash
932
- end
933
-
934
- def reset_current_task
935
- # Ensure that COM reference is decremented properly
936
- @pITask.Release if @pITask && ! @pITask.null?
937
- @pITask = nil
938
- @account_information_set = false
939
- end
940
-
941
- def populate_trigger(task_trigger, trigger)
942
- raise TypeError unless task_trigger.is_a?(COM::TaskTrigger)
943
- trigger = transform_and_validate(trigger)
944
-
945
- FFI::MemoryPointer.new(COM::TASK_TRIGGER.size) do |trigger_ptr|
946
- FFI::MemoryPointer.new(COM::TRIGGER_TYPE_UNION.size) do |trigger_type_union_ptr|
947
- trigger_type_union = COM::TRIGGER_TYPE_UNION.new(trigger_type_union_ptr)
948
-
949
- tmp = trigger['type'].is_a?(Hash) ? trigger['type'] : nil
950
- case trigger['trigger_type']
951
- when :TASK_TIME_TRIGGER_DAILY
952
- if tmp && tmp['days_interval']
953
- trigger_type_union[:Daily][:DaysInterval] = tmp['days_interval']
954
- end
955
- when :TASK_TIME_TRIGGER_WEEKLY
956
- if tmp && tmp['weeks_interval'] && tmp['days_of_week']
957
- trigger_type_union[:Weekly][:WeeksInterval] = tmp['weeks_interval']
958
- trigger_type_union[:Weekly][:rgfDaysOfTheWeek] = tmp['days_of_week']
959
- end
960
- when :TASK_TIME_TRIGGER_MONTHLYDATE
961
- if tmp && tmp['months'] && tmp['days']
962
- trigger_type_union[:MonthlyDate][:rgfDays] = tmp['days']
963
- trigger_type_union[:MonthlyDate][:rgfMonths] = tmp['months']
964
- end
965
- when :TASK_TIME_TRIGGER_MONTHLYDOW
966
- if tmp && tmp['weeks'] && tmp['days_of_week'] && tmp['months']
967
- trigger_type_union[:MonthlyDOW][:wWhichWeek] = tmp['weeks']
968
- trigger_type_union[:MonthlyDOW][:rgfDaysOfTheWeek] = tmp['days_of_week']
969
- trigger_type_union[:MonthlyDOW][:rgfMonths] = tmp['months']
970
- end
971
- when :TASK_TIME_TRIGGER_ONCE
972
- # Do nothing. The Type member of the TASK_TRIGGER struct is ignored.
973
- else
974
- raise Error.new(_("Unknown trigger type %{type}") % { type: trigger['trigger_type'] })
975
- end
976
-
977
- trigger_struct = COM::TASK_TRIGGER.new(trigger_ptr)
978
- trigger_struct[:cbTriggerSize] = COM::TASK_TRIGGER.size
979
- now = Time.now
980
- trigger_struct[:wBeginYear] = trigger['start_year'] || now.year
981
- trigger_struct[:wBeginMonth] = trigger['start_month'] || now.month
982
- trigger_struct[:wBeginDay] = trigger['start_day'] || now.day
983
- trigger_struct[:wEndYear] = trigger['end_year'] || 0
984
- trigger_struct[:wEndMonth] = trigger['end_month'] || 0
985
- trigger_struct[:wEndDay] = trigger['end_day'] || 0
986
- trigger_struct[:wStartHour] = trigger['start_hour'] || 0
987
- trigger_struct[:wStartMinute] = trigger['start_minute'] || 0
988
- trigger_struct[:MinutesDuration] = trigger['minutes_duration'] || 0
989
- trigger_struct[:MinutesInterval] = trigger['minutes_interval'] || 0
990
- trigger_struct[:rgFlags] = trigger['flags'] || 0
991
- trigger_struct[:TriggerType] = trigger['trigger_type'] || :TASK_TIME_TRIGGER_ONCE
992
- trigger_struct[:Type] = trigger_type_union
993
- trigger_struct[:wRandomMinutesInterval] = trigger['random_minutes_interval'] || 0
994
-
995
- task_trigger.SetTrigger(trigger_struct)
996
- end
997
- end
998
- end
999
-
1000
- def populate_hash_from_trigger(task_trigger)
1001
- raise TypeError unless task_trigger.is_a?(COM::TASK_TRIGGER)
1002
-
1003
- trigger = {
1004
- 'start_year' => task_trigger[:wBeginYear],
1005
- 'start_month' => task_trigger[:wBeginMonth],
1006
- 'start_day' => task_trigger[:wBeginDay],
1007
- 'end_year' => task_trigger[:wEndYear],
1008
- 'end_month' => task_trigger[:wEndMonth],
1009
- 'end_day' => task_trigger[:wEndDay],
1010
- 'start_hour' => task_trigger[:wStartHour],
1011
- 'start_minute' => task_trigger[:wStartMinute],
1012
- 'minutes_duration' => task_trigger[:MinutesDuration],
1013
- 'minutes_interval' => task_trigger[:MinutesInterval],
1014
- 'flags' => task_trigger[:rgFlags],
1015
- 'trigger_type' => task_trigger[:TriggerType],
1016
- 'random_minutes_interval' => task_trigger[:wRandomMinutesInterval]
1017
- }
1018
-
1019
- case task_trigger[:TriggerType]
1020
- when :TASK_TIME_TRIGGER_DAILY
1021
- trigger['type'] = { 'days_interval' => task_trigger[:Type][:Daily][:DaysInterval] }
1022
- when :TASK_TIME_TRIGGER_WEEKLY
1023
- trigger['type'] = {
1024
- 'weeks_interval' => task_trigger[:Type][:Weekly][:WeeksInterval],
1025
- 'days_of_week' => task_trigger[:Type][:Weekly][:rgfDaysOfTheWeek]
1026
- }
1027
- when :TASK_TIME_TRIGGER_MONTHLYDATE
1028
- trigger['type'] = {
1029
- 'days' => task_trigger[:Type][:MonthlyDate][:rgfDays],
1030
- 'months' => task_trigger[:Type][:MonthlyDate][:rgfMonths]
1031
- }
1032
- when :TASK_TIME_TRIGGER_MONTHLYDOW
1033
- trigger['type'] = {
1034
- 'weeks' => task_trigger[:Type][:MonthlyDOW][:wWhichWeek],
1035
- 'days_of_week' => task_trigger[:Type][:MonthlyDOW][:rgfDaysOfTheWeek],
1036
- 'months' => task_trigger[:Type][:MonthlyDOW][:rgfMonths]
1037
- }
1038
- when :TASK_TIME_TRIGGER_ONCE
1039
- trigger['type'] = { 'once' => nil }
1040
- else
1041
- raise Error.new(_("Unknown trigger type %{type}") % { type: task_trigger[:TriggerType] })
1042
- end
1043
-
1044
- trigger
1045
- end
1046
-
1047
- module COM
1048
- extend FFI::Library
1049
-
1050
- com = Puppet::Util::Windows::COM
1051
-
1052
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa381811(v=vs.85).aspx
1053
- ITaskScheduler = com::Interface[com::IUnknown,
1054
- FFI::WIN32::GUID['148BD527-A2AB-11CE-B11F-00AA00530503'],
1055
-
1056
- SetTargetComputer: [[:lpcwstr], :hresult],
1057
- # LPWSTR *
1058
- GetTargetComputer: [[:pointer], :hresult],
1059
- # IEnumWorkItems **
1060
- Enum: [[:pointer], :hresult],
1061
- # LPCWSTR, REFIID, IUnknown **
1062
- Activate: [[:lpcwstr, :pointer, :pointer], :hresult],
1063
- Delete: [[:lpcwstr], :hresult],
1064
- # LPCWSTR, REFCLSID, REFIID, IUnknown **
1065
- NewWorkItem: [[:lpcwstr, :pointer, :pointer, :pointer], :hresult],
1066
- # LPCWSTR, IScheduledWorkItem *
1067
- AddWorkItem: [[:lpcwstr, :pointer], :hresult],
1068
- # LPCWSTR, REFIID
1069
- IsOfType: [[:lpcwstr, :pointer], :hresult]
1070
- ]
1071
-
1072
- TaskScheduler = com::Factory[ITaskScheduler,
1073
- FFI::WIN32::GUID['148BD52A-A2AB-11CE-B11F-00AA00530503']]
1074
-
1075
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa380706(v=vs.85).aspx
1076
- IEnumWorkItems = com::Interface[com::IUnknown,
1077
- FFI::WIN32::GUID['148BD528-A2AB-11CE-B11F-00AA00530503'],
1078
-
1079
- # ULONG, LPWSTR **, ULONG *
1080
- Next: [[:win32_ulong, :pointer, :pointer], :hresult],
1081
- Skip: [[:win32_ulong], :hresult],
1082
- Reset: [[], :hresult],
1083
- # IEnumWorkItems ** ppEnumWorkItems
1084
- Clone: [[:pointer], :hresult]
1085
- ]
1086
-
1087
- EnumWorkItems = com::Instance[IEnumWorkItems]
1088
-
1089
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa381216(v=vs.85).aspx
1090
- IScheduledWorkItem = com::Interface[com::IUnknown,
1091
- FFI::WIN32::GUID['a6b952f0-a4b1-11d0-997d-00aa006887ec'],
1092
-
1093
- # WORD *, ITaskTrigger **
1094
- CreateTrigger: [[:pointer, :pointer], :hresult],
1095
- DeleteTrigger: [[:word], :hresult],
1096
- # WORD *
1097
- GetTriggerCount: [[:pointer], :hresult],
1098
- # WORD, ITaskTrigger **
1099
- GetTrigger: [[:word, :pointer], :hresult],
1100
- # WORD, LPWSTR *
1101
- GetTriggerString: [[:word, :pointer], :hresult],
1102
- # LPSYSTEMTIME, LPSYSTEMTIME, WORD *, LPSYSTEMTIME *
1103
- GetRunTimes: [[:pointer, :pointer, :pointer, :pointer], :hresult],
1104
- # SYSTEMTIME *
1105
- GetNextRunTime: [[:pointer], :hresult],
1106
- SetIdleWait: [[:word, :word], :hresult],
1107
- # WORD *, WORD *
1108
- GetIdleWait: [[:pointer, :pointer], :hresult],
1109
- Run: [[], :hresult],
1110
- Terminate: [[], :hresult],
1111
- EditWorkItem: [[:hwnd, :dword], :hresult],
1112
- # SYSTEMTIME *
1113
- GetMostRecentRunTime: [[:pointer], :hresult],
1114
- # HRESULT *
1115
- GetStatus: [[:pointer], :hresult],
1116
- GetExitCode: [[:pdword], :hresult],
1117
- SetComment: [[:lpcwstr], :hresult],
1118
- # LPWSTR *
1119
- GetComment: [[:pointer], :hresult],
1120
- SetCreator: [[:lpcwstr], :hresult],
1121
- # LPWSTR *
1122
- GetCreator: [[:pointer], :hresult],
1123
- # WORD, BYTE[]
1124
- SetWorkItemData: [[:word, :buffer_in], :hresult],
1125
- # WORD *, BYTE **
1126
- GetWorkItemData: [[:pointer, :pointer], :hresult],
1127
- SetErrorRetryCount: [[:word], :hresult],
1128
- # WORD *
1129
- GetErrorRetryCount: [[:pointer], :hresult],
1130
- SetErrorRetryInterval: [[:word], :hresult],
1131
- # WORD *
1132
- GetErrorRetryInterval: [[:pointer], :hresult],
1133
- SetFlags: [[:dword], :hresult],
1134
- # WORD *
1135
- GetFlags: [[:pointer], :hresult],
1136
- SetAccountInformation: [[:lpcwstr, :lpcwstr], :hresult],
1137
- # LPWSTR *
1138
- GetAccountInformation: [[:pointer], :hresult]
1139
- ]
1140
-
1141
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa381311(v=vs.85).aspx
1142
- ITask = com::Interface[IScheduledWorkItem,
1143
- FFI::WIN32::GUID['148BD524-A2AB-11CE-B11F-00AA00530503'],
1144
-
1145
- SetApplicationName: [[:lpcwstr], :hresult],
1146
- # LPWSTR *
1147
- GetApplicationName: [[:pointer], :hresult],
1148
- SetParameters: [[:lpcwstr], :hresult],
1149
- # LPWSTR *
1150
- GetParameters: [[:pointer], :hresult],
1151
- SetWorkingDirectory: [[:lpcwstr], :hresult],
1152
- # LPWSTR *
1153
- GetWorkingDirectory: [[:pointer], :hresult],
1154
- SetPriority: [[:dword], :hresult],
1155
- # DWORD *
1156
- GetPriority: [[:pointer], :hresult],
1157
- SetTaskFlags: [[:dword], :hresult],
1158
- # DWORD *
1159
- GetTaskFlags: [[:pointer], :hresult],
1160
- SetMaxRunTime: [[:dword], :hresult],
1161
- # DWORD *
1162
- GetMaxRunTime: [[:pointer], :hresult]
1163
- ]
1164
-
1165
- Task = com::Instance[ITask]
1166
-
1167
- # https://msdn.microsoft.com/en-us/library/windows/desktop/ms688695(v=vs.85).aspx
1168
- IPersist = com::Interface[com::IUnknown,
1169
- FFI::WIN32::GUID['0000010c-0000-0000-c000-000000000046'],
1170
- # CLSID *
1171
- GetClassID: [[:pointer], :hresult]
1172
- ]
1173
-
1174
- # https://msdn.microsoft.com/en-us/library/windows/desktop/ms687223(v=vs.85).aspx
1175
- IPersistFile = com::Interface[IPersist,
1176
- FFI::WIN32::GUID['0000010b-0000-0000-C000-000000000046'],
1177
-
1178
- IsDirty: [[], :hresult],
1179
- Load: [[:lpcolestr, :dword], :hresult],
1180
- Save: [[:lpcolestr, :win32_bool], :hresult],
1181
- SaveCompleted: [[:lpcolestr], :hresult],
1182
- # LPOLESTR *
1183
- GetCurFile: [[:pointer], :hresult]
1184
- ]
1185
-
1186
- PersistFile = com::Instance[IPersistFile]
1187
-
1188
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa381864(v=vs.85).aspx
1189
- ITaskTrigger = com::Interface[com::IUnknown,
1190
- FFI::WIN32::GUID['148BD52B-A2AB-11CE-B11F-00AA00530503'],
1191
-
1192
- SetTrigger: [[:pointer], :hresult],
1193
- GetTrigger: [[:pointer], :hresult],
1194
- GetTriggerString: [[:pointer], :hresult]
1195
- ]
1196
-
1197
- TaskTrigger = com::Instance[ITaskTrigger]
1198
-
1199
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa383620(v=vs.85).aspx
1200
- # The TASK_TRIGGER_TYPE field of the TASK_TRIGGER structure determines
1201
- # which member of the TRIGGER_TYPE_UNION field to use.
1202
- TASK_TRIGGER_TYPE = enum(
1203
- :TASK_TIME_TRIGGER_ONCE, 0, # Ignore the Type field
1204
- :TASK_TIME_TRIGGER_DAILY, 1,
1205
- :TASK_TIME_TRIGGER_WEEKLY, 2,
1206
- :TASK_TIME_TRIGGER_MONTHLYDATE, 3,
1207
- :TASK_TIME_TRIGGER_MONTHLYDOW, 4,
1208
- :TASK_EVENT_TRIGGER_ON_IDLE, 5, # Ignore the Type field
1209
- :TASK_EVENT_TRIGGER_AT_SYSTEMSTART, 6, # Ignore the Type field
1210
- :TASK_EVENT_TRIGGER_AT_LOGON, 7 # Ignore the Type field
1211
- )
1212
-
1213
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa446857(v=vs.85).aspx
1214
- class DAILY < FFI::Struct
1215
- layout :DaysInterval, :word
1216
- end
1217
-
1218
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa384014(v=vs.85).aspx
1219
- class WEEKLY < FFI::Struct
1220
- layout :WeeksInterval, :word,
1221
- :rgfDaysOfTheWeek, :word
1222
- end
1223
-
1224
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa381918(v=vs.85).aspx
1225
- class MONTHLYDATE < FFI::Struct
1226
- layout :rgfDays, :dword,
1227
- :rgfMonths, :word
1228
- end
1229
-
1230
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa381918(v=vs.85).aspx
1231
- class MONTHLYDOW < FFI::Struct
1232
- layout :wWhichWeek, :word,
1233
- :rgfDaysOfTheWeek, :word,
1234
- :rgfMonths, :word
1235
- end
1236
-
1237
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa384002(v=vs.85).aspx
1238
- class TRIGGER_TYPE_UNION < FFI::Union
1239
- layout :Daily, DAILY,
1240
- :Weekly, WEEKLY,
1241
- :MonthlyDate, MONTHLYDATE,
1242
- :MonthlyDOW, MONTHLYDOW
1243
- end
1244
-
1245
- # https://msdn.microsoft.com/en-us/library/windows/desktop/aa383618(v=vs.85).aspx
1246
- class TASK_TRIGGER < FFI::Struct
1247
- layout :cbTriggerSize, :word, # Structure size.
1248
- :Reserved1, :word, # Reserved. Must be zero.
1249
- :wBeginYear, :word, # Trigger beginning date year.
1250
- :wBeginMonth, :word, # Trigger beginning date month.
1251
- :wBeginDay, :word, # Trigger beginning date day.
1252
- :wEndYear, :word, # Optional trigger ending date year.
1253
- :wEndMonth, :word, # Optional trigger ending date month.
1254
- :wEndDay, :word, # Optional trigger ending date day.
1255
- :wStartHour, :word, # Run bracket start time hour.
1256
- :wStartMinute, :word, # Run bracket start time minute.
1257
- :MinutesDuration, :dword, # Duration of run bracket.
1258
- :MinutesInterval, :dword, # Run bracket repetition interval.
1259
- :rgFlags, :dword, # Trigger flags.
1260
- :TriggerType, TASK_TRIGGER_TYPE, # Trigger type.
1261
- :Type, TRIGGER_TYPE_UNION, # Trigger data.
1262
- :Reserved2, :word, # Reserved. Must be zero.
1263
- :wRandomMinutesInterval, :word # Maximum number of random minutes after start time
1264
- end
1265
- end
1266
- end
1267
- end