bolt 0.20.0 → 0.20.2
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.
- checksums.yaml +4 -4
- data/lib/bolt/cli.rb +5 -0
- data/lib/bolt/puppetdb/client.rb +1 -1
- data/lib/bolt/transport/ssh.rb +1 -1
- data/lib/bolt/util/on_access.rb +4 -2
- data/lib/bolt/version.rb +1 -1
- data/vendored/facter/lib/facter.rb +261 -0
- data/vendored/facter/lib/facter/Cfkey.rb +42 -0
- data/vendored/facter/lib/facter/application.rb +206 -0
- data/vendored/facter/lib/facter/architecture.rb +50 -0
- data/vendored/facter/lib/facter/augeasversion.rb +28 -0
- data/vendored/facter/lib/facter/blockdevices.rb +105 -0
- data/vendored/facter/lib/facter/core/aggregate.rb +220 -0
- data/vendored/facter/lib/facter/core/directed_graph.rb +46 -0
- data/vendored/facter/lib/facter/core/execution.rb +123 -0
- data/vendored/facter/lib/facter/core/execution/base.rb +81 -0
- data/vendored/facter/lib/facter/core/execution/posix.rb +50 -0
- data/vendored/facter/lib/facter/core/execution/windows.rb +57 -0
- data/vendored/facter/lib/facter/core/logging.rb +197 -0
- data/vendored/facter/lib/facter/core/resolvable.rb +94 -0
- data/vendored/facter/lib/facter/core/suitable.rb +113 -0
- data/vendored/facter/lib/facter/dhcp_servers.rb +45 -0
- data/vendored/facter/lib/facter/domain.rb +99 -0
- data/vendored/facter/lib/facter/ec2.rb +68 -0
- data/vendored/facter/lib/facter/ec2/rest.rb +137 -0
- data/vendored/facter/lib/facter/facterversion.rb +15 -0
- data/vendored/facter/lib/facter/filesystems.rb +45 -0
- data/vendored/facter/lib/facter/fqdn.rb +24 -0
- data/vendored/facter/lib/facter/gce.rb +16 -0
- data/vendored/facter/lib/facter/gce/metadata.rb +87 -0
- data/vendored/facter/lib/facter/gid.rb +25 -0
- data/vendored/facter/lib/facter/hardwareisa.rb +20 -0
- data/vendored/facter/lib/facter/hardwaremodel.rb +67 -0
- data/vendored/facter/lib/facter/hostname.rb +31 -0
- data/vendored/facter/lib/facter/id.rb +21 -0
- data/vendored/facter/lib/facter/interfaces.rb +58 -0
- data/vendored/facter/lib/facter/ipaddress.rb +169 -0
- data/vendored/facter/lib/facter/ipaddress6.rb +82 -0
- data/vendored/facter/lib/facter/iphostnumber.rb +29 -0
- data/vendored/facter/lib/facter/kernel.rb +22 -0
- data/vendored/facter/lib/facter/kernelmajversion.rb +23 -0
- data/vendored/facter/lib/facter/kernelrelease.rb +45 -0
- data/vendored/facter/lib/facter/kernelversion.rb +22 -0
- data/vendored/facter/lib/facter/ldom.rb +51 -0
- data/vendored/facter/lib/facter/lsbdistcodename.rb +20 -0
- data/vendored/facter/lib/facter/lsbdistdescription.rb +21 -0
- data/vendored/facter/lib/facter/lsbdistid.rb +20 -0
- data/vendored/facter/lib/facter/lsbdistrelease.rb +20 -0
- data/vendored/facter/lib/facter/lsbmajdistrelease.rb +22 -0
- data/vendored/facter/lib/facter/lsbminordistrelease.rb +22 -0
- data/vendored/facter/lib/facter/lsbrelease.rb +20 -0
- data/vendored/facter/lib/facter/macaddress.rb +99 -0
- data/vendored/facter/lib/facter/macosx.rb +56 -0
- data/vendored/facter/lib/facter/manufacturer.rb +68 -0
- data/vendored/facter/lib/facter/memory.rb +168 -0
- data/vendored/facter/lib/facter/netmask.rb +43 -0
- data/vendored/facter/lib/facter/network.rb +20 -0
- data/vendored/facter/lib/facter/operatingsystem.rb +24 -0
- data/vendored/facter/lib/facter/operatingsystem/base.rb +61 -0
- data/vendored/facter/lib/facter/operatingsystem/cumuluslinux.rb +27 -0
- data/vendored/facter/lib/facter/operatingsystem/implementation.rb +33 -0
- data/vendored/facter/lib/facter/operatingsystem/linux.rb +484 -0
- data/vendored/facter/lib/facter/operatingsystem/osreleaselinux.rb +28 -0
- data/vendored/facter/lib/facter/operatingsystem/sunos.rb +54 -0
- data/vendored/facter/lib/facter/operatingsystem/vmkernel.rb +11 -0
- data/vendored/facter/lib/facter/operatingsystem/windows.rb +43 -0
- data/vendored/facter/lib/facter/operatingsystemmajrelease.rb +31 -0
- data/vendored/facter/lib/facter/operatingsystemrelease.rb +29 -0
- data/vendored/facter/lib/facter/os.rb +98 -0
- data/vendored/facter/lib/facter/osfamily.rb +18 -0
- data/vendored/facter/lib/facter/partitions.rb +39 -0
- data/vendored/facter/lib/facter/path.rb +14 -0
- data/vendored/facter/lib/facter/physicalprocessorcount.rb +27 -0
- data/vendored/facter/lib/facter/processor.rb +52 -0
- data/vendored/facter/lib/facter/processors.rb +66 -0
- data/vendored/facter/lib/facter/processors/os.rb +244 -0
- data/vendored/facter/lib/facter/ps.rb +31 -0
- data/vendored/facter/lib/facter/puppetversion.rb +20 -0
- data/vendored/facter/lib/facter/rackspace.rb +37 -0
- data/vendored/facter/lib/facter/rubyplatform.rb +12 -0
- data/vendored/facter/lib/facter/rubysitedir.rb +15 -0
- data/vendored/facter/lib/facter/rubyversion.rb +12 -0
- data/vendored/facter/lib/facter/selinux.rb +154 -0
- data/vendored/facter/lib/facter/ssh.rb +73 -0
- data/vendored/facter/lib/facter/system32.rb +21 -0
- data/vendored/facter/lib/facter/system_uptime.rb +44 -0
- data/vendored/facter/lib/facter/timezone.rb +14 -0
- data/vendored/facter/lib/facter/uniqueid.rb +4 -0
- data/vendored/facter/lib/facter/uptime.rb +16 -0
- data/vendored/facter/lib/facter/uptime_days.rb +13 -0
- data/vendored/facter/lib/facter/uptime_hours.rb +13 -0
- data/vendored/facter/lib/facter/uptime_seconds.rb +20 -0
- data/vendored/facter/lib/facter/util/architecture.rb +19 -0
- data/vendored/facter/lib/facter/util/collection.rb +161 -0
- data/vendored/facter/lib/facter/util/composite_loader.rb +12 -0
- data/vendored/facter/lib/facter/util/config.rb +88 -0
- data/vendored/facter/lib/facter/util/confine.rb +66 -0
- data/vendored/facter/lib/facter/util/dhcp_servers.rb +58 -0
- data/vendored/facter/lib/facter/util/directory_loader.rb +88 -0
- data/vendored/facter/lib/facter/util/ec2.rb +106 -0
- data/vendored/facter/lib/facter/util/fact.rb +204 -0
- data/vendored/facter/lib/facter/util/file_read.rb +37 -0
- data/vendored/facter/lib/facter/util/formatter.rb +39 -0
- data/vendored/facter/lib/facter/util/ip.rb +340 -0
- data/vendored/facter/lib/facter/util/ip/windows.rb +215 -0
- data/vendored/facter/lib/facter/util/loader.rb +155 -0
- data/vendored/facter/lib/facter/util/macaddress.rb +43 -0
- data/vendored/facter/lib/facter/util/macosx.rb +73 -0
- data/vendored/facter/lib/facter/util/manufacturer.rb +99 -0
- data/vendored/facter/lib/facter/util/memory.rb +228 -0
- data/vendored/facter/lib/facter/util/netmask.rb +40 -0
- data/vendored/facter/lib/facter/util/normalization.rb +94 -0
- data/vendored/facter/lib/facter/util/nothing_loader.rb +12 -0
- data/vendored/facter/lib/facter/util/operatingsystem.rb +21 -0
- data/vendored/facter/lib/facter/util/parser.rb +168 -0
- data/vendored/facter/lib/facter/util/partitions.rb +47 -0
- data/vendored/facter/lib/facter/util/partitions/linux.rb +71 -0
- data/vendored/facter/lib/facter/util/partitions/openbsd.rb +40 -0
- data/vendored/facter/lib/facter/util/plist.rb +24 -0
- data/vendored/facter/lib/facter/util/plist/generator.rb +228 -0
- data/vendored/facter/lib/facter/util/plist/parser.rb +226 -0
- data/vendored/facter/lib/facter/util/posix.rb +16 -0
- data/vendored/facter/lib/facter/util/processor.rb +289 -0
- data/vendored/facter/lib/facter/util/registry.rb +11 -0
- data/vendored/facter/lib/facter/util/resolution.rb +160 -0
- data/vendored/facter/lib/facter/util/solaris_zones.rb +158 -0
- data/vendored/facter/lib/facter/util/unix_root.rb +5 -0
- data/vendored/facter/lib/facter/util/uptime.rb +83 -0
- data/vendored/facter/lib/facter/util/values.rb +109 -0
- data/vendored/facter/lib/facter/util/virtual.rb +212 -0
- data/vendored/facter/lib/facter/util/vlans.rb +21 -0
- data/vendored/facter/lib/facter/util/windows.rb +10 -0
- data/vendored/facter/lib/facter/util/windows/api_types.rb +135 -0
- data/vendored/facter/lib/facter/util/windows/dir.rb +43 -0
- data/vendored/facter/lib/facter/util/windows/error.rb +87 -0
- data/vendored/facter/lib/facter/util/windows/process.rb +294 -0
- data/vendored/facter/lib/facter/util/windows/user.rb +186 -0
- data/vendored/facter/lib/facter/util/windows_root.rb +7 -0
- data/vendored/facter/lib/facter/util/wmi.rb +49 -0
- data/vendored/facter/lib/facter/util/xendomains.rb +28 -0
- data/vendored/facter/lib/facter/version.rb +86 -0
- data/vendored/facter/lib/facter/virtual.rb +330 -0
- data/vendored/facter/lib/facter/vlans.rb +17 -0
- data/vendored/facter/lib/facter/xendomains.rb +20 -0
- data/vendored/facter/lib/facter/zfs_version.rb +14 -0
- data/vendored/facter/lib/facter/zonename.rb +6 -0
- data/vendored/facter/lib/facter/zones.rb +18 -0
- data/vendored/facter/lib/facter/zpool_version.rb +10 -0
- data/vendored/hiera/lib/hiera.rb +119 -0
- data/vendored/hiera/lib/hiera/backend.rb +360 -0
- data/vendored/hiera/lib/hiera/backend/json_backend.rb +58 -0
- data/vendored/hiera/lib/hiera/backend/yaml_backend.rb +63 -0
- data/vendored/hiera/lib/hiera/config.rb +97 -0
- data/vendored/hiera/lib/hiera/console_logger.rb +13 -0
- data/vendored/hiera/lib/hiera/error.rb +4 -0
- data/vendored/hiera/lib/hiera/fallback_logger.rb +41 -0
- data/vendored/hiera/lib/hiera/filecache.rb +86 -0
- data/vendored/hiera/lib/hiera/interpolate.rb +121 -0
- data/vendored/hiera/lib/hiera/noop_logger.rb +8 -0
- data/vendored/hiera/lib/hiera/puppet_logger.rb +17 -0
- data/vendored/hiera/lib/hiera/recursive_guard.rb +20 -0
- data/vendored/hiera/lib/hiera/util.rb +65 -0
- data/vendored/hiera/lib/hiera/util/win32.rb +40 -0
- data/vendored/hiera/lib/hiera/version.rb +89 -0
- data/vendored/puppet/lib/hiera/puppet_function.rb +84 -0
- data/vendored/puppet/lib/hiera/scope.rb +61 -0
- data/vendored/puppet/lib/hiera_puppet.rb +79 -0
- data/vendored/puppet/lib/puppet.rb +307 -0
- data/vendored/puppet/lib/puppet/agent.rb +134 -0
- data/vendored/puppet/lib/puppet/agent/disabler.rb +53 -0
- data/vendored/puppet/lib/puppet/agent/locker.rb +53 -0
- data/vendored/puppet/lib/puppet/application.rb +502 -0
- data/vendored/puppet/lib/puppet/application/agent.rb +473 -0
- data/vendored/puppet/lib/puppet/application/apply.rb +356 -0
- data/vendored/puppet/lib/puppet/application/ca.rb +11 -0
- data/vendored/puppet/lib/puppet/application/catalog.rb +4 -0
- data/vendored/puppet/lib/puppet/application/cert.rb +339 -0
- data/vendored/puppet/lib/puppet/application/certificate.rb +17 -0
- data/vendored/puppet/lib/puppet/application/certificate_request.rb +7 -0
- data/vendored/puppet/lib/puppet/application/certificate_revocation_list.rb +7 -0
- data/vendored/puppet/lib/puppet/application/config.rb +5 -0
- data/vendored/puppet/lib/puppet/application/describe.rb +257 -0
- data/vendored/puppet/lib/puppet/application/device.rb +378 -0
- data/vendored/puppet/lib/puppet/application/doc.rb +230 -0
- data/vendored/puppet/lib/puppet/application/epp.rb +5 -0
- data/vendored/puppet/lib/puppet/application/face_base.rb +268 -0
- data/vendored/puppet/lib/puppet/application/facts.rb +9 -0
- data/vendored/puppet/lib/puppet/application/filebucket.rb +300 -0
- data/vendored/puppet/lib/puppet/application/generate.rb +5 -0
- data/vendored/puppet/lib/puppet/application/help.rb +5 -0
- data/vendored/puppet/lib/puppet/application/indirection_base.rb +4 -0
- data/vendored/puppet/lib/puppet/application/key.rb +4 -0
- data/vendored/puppet/lib/puppet/application/lookup.rb +369 -0
- data/vendored/puppet/lib/puppet/application/man.rb +4 -0
- data/vendored/puppet/lib/puppet/application/master.rb +317 -0
- data/vendored/puppet/lib/puppet/application/module.rb +4 -0
- data/vendored/puppet/lib/puppet/application/node.rb +4 -0
- data/vendored/puppet/lib/puppet/application/parser.rb +5 -0
- data/vendored/puppet/lib/puppet/application/plugin.rb +3 -0
- data/vendored/puppet/lib/puppet/application/report.rb +4 -0
- data/vendored/puppet/lib/puppet/application/resource.rb +231 -0
- data/vendored/puppet/lib/puppet/application/script.rb +261 -0
- data/vendored/puppet/lib/puppet/application/status.rb +4 -0
- data/vendored/puppet/lib/puppet/application_support.rb +62 -0
- data/vendored/puppet/lib/puppet/coercion.rb +40 -0
- data/vendored/puppet/lib/puppet/compilable_resource_type.rb +15 -0
- data/vendored/puppet/lib/puppet/configurer.rb +464 -0
- data/vendored/puppet/lib/puppet/configurer/downloader.rb +67 -0
- data/vendored/puppet/lib/puppet/configurer/fact_handler.rb +46 -0
- data/vendored/puppet/lib/puppet/configurer/plugin_handler.rb +49 -0
- data/vendored/puppet/lib/puppet/confine.rb +80 -0
- data/vendored/puppet/lib/puppet/confine/any.rb +26 -0
- data/vendored/puppet/lib/puppet/confine/exists.rb +19 -0
- data/vendored/puppet/lib/puppet/confine/false.rb +19 -0
- data/vendored/puppet/lib/puppet/confine/feature.rb +17 -0
- data/vendored/puppet/lib/puppet/confine/true.rb +20 -0
- data/vendored/puppet/lib/puppet/confine/variable.rb +59 -0
- data/vendored/puppet/lib/puppet/confine_collection.rb +50 -0
- data/vendored/puppet/lib/puppet/confiner.rb +46 -0
- data/vendored/puppet/lib/puppet/context.rb +116 -0
- data/vendored/puppet/lib/puppet/context/trusted_information.rb +76 -0
- data/vendored/puppet/lib/puppet/daemon.rb +195 -0
- data/vendored/puppet/lib/puppet/data_binding.rb +14 -0
- data/vendored/puppet/lib/puppet/datatypes.rb +213 -0
- data/vendored/puppet/lib/puppet/datatypes/error.rb +21 -0
- data/vendored/puppet/lib/puppet/datatypes/impl/error.rb +40 -0
- data/vendored/puppet/lib/puppet/defaults.rb +2071 -0
- data/vendored/puppet/lib/puppet/environments.rb +511 -0
- data/vendored/puppet/lib/puppet/error.rb +110 -0
- data/vendored/puppet/lib/puppet/etc.rb +161 -0
- data/vendored/puppet/lib/puppet/external/dot.rb +319 -0
- data/vendored/puppet/lib/puppet/external/nagios.rb +46 -0
- data/vendored/puppet/lib/puppet/external/nagios/base.rb +472 -0
- data/vendored/puppet/lib/puppet/external/nagios/parser.rb +400 -0
- data/vendored/puppet/lib/puppet/external/pson/common.rb +374 -0
- data/vendored/puppet/lib/puppet/external/pson/pure.rb +15 -0
- data/vendored/puppet/lib/puppet/external/pson/pure/generator.rb +395 -0
- data/vendored/puppet/lib/puppet/external/pson/pure/parser.rb +307 -0
- data/vendored/puppet/lib/puppet/external/pson/version.rb +8 -0
- data/vendored/puppet/lib/puppet/face.rb +12 -0
- data/vendored/puppet/lib/puppet/face/ca.rb +266 -0
- data/vendored/puppet/lib/puppet/face/catalog.rb +130 -0
- data/vendored/puppet/lib/puppet/face/catalog/select.rb +49 -0
- data/vendored/puppet/lib/puppet/face/certificate.rb +165 -0
- data/vendored/puppet/lib/puppet/face/certificate_request.rb +56 -0
- data/vendored/puppet/lib/puppet/face/certificate_revocation_list.rb +56 -0
- data/vendored/puppet/lib/puppet/face/config.rb +210 -0
- data/vendored/puppet/lib/puppet/face/epp.rb +554 -0
- data/vendored/puppet/lib/puppet/face/facts.rb +87 -0
- data/vendored/puppet/lib/puppet/face/generate.rb +64 -0
- data/vendored/puppet/lib/puppet/face/help.rb +201 -0
- data/vendored/puppet/lib/puppet/face/key.rb +16 -0
- data/vendored/puppet/lib/puppet/face/man.rb +145 -0
- data/vendored/puppet/lib/puppet/face/module.rb +19 -0
- data/vendored/puppet/lib/puppet/face/module/build.rb +64 -0
- data/vendored/puppet/lib/puppet/face/module/changes.rb +42 -0
- data/vendored/puppet/lib/puppet/face/module/generate.rb +256 -0
- data/vendored/puppet/lib/puppet/face/module/install.rb +150 -0
- data/vendored/puppet/lib/puppet/face/module/list.rb +268 -0
- data/vendored/puppet/lib/puppet/face/module/search.rb +98 -0
- data/vendored/puppet/lib/puppet/face/module/uninstall.rb +93 -0
- data/vendored/puppet/lib/puppet/face/module/upgrade.rb +91 -0
- data/vendored/puppet/lib/puppet/face/node.rb +43 -0
- data/vendored/puppet/lib/puppet/face/node/clean.rb +96 -0
- data/vendored/puppet/lib/puppet/face/parser.rb +187 -0
- data/vendored/puppet/lib/puppet/face/plugin.rb +56 -0
- data/vendored/puppet/lib/puppet/face/report.rb +54 -0
- data/vendored/puppet/lib/puppet/face/resource.rb +53 -0
- data/vendored/puppet/lib/puppet/face/status.rb +51 -0
- data/vendored/puppet/lib/puppet/feature/base.rb +95 -0
- data/vendored/puppet/lib/puppet/feature/bolt.rb +3 -0
- data/vendored/puppet/lib/puppet/feature/cfpropertylist.rb +3 -0
- data/vendored/puppet/lib/puppet/feature/eventlog.rb +5 -0
- data/vendored/puppet/lib/puppet/feature/hiera_eyaml.rb +3 -0
- data/vendored/puppet/lib/puppet/feature/hocon.rb +3 -0
- data/vendored/puppet/lib/puppet/feature/libuser.rb +8 -0
- data/vendored/puppet/lib/puppet/feature/msgpack.rb +3 -0
- data/vendored/puppet/lib/puppet/feature/pe_license.rb +4 -0
- data/vendored/puppet/lib/puppet/feature/rack.rb +19 -0
- data/vendored/puppet/lib/puppet/feature/selinux.rb +3 -0
- data/vendored/puppet/lib/puppet/feature/ssh.rb +3 -0
- data/vendored/puppet/lib/puppet/feature/telnet.rb +9 -0
- data/vendored/puppet/lib/puppet/feature/zlib.rb +5 -0
- data/vendored/puppet/lib/puppet/file_bucket.rb +4 -0
- data/vendored/puppet/lib/puppet/file_bucket/dipper.rb +173 -0
- data/vendored/puppet/lib/puppet/file_bucket/file.rb +129 -0
- data/vendored/puppet/lib/puppet/file_serving.rb +3 -0
- data/vendored/puppet/lib/puppet/file_serving/base.rb +86 -0
- data/vendored/puppet/lib/puppet/file_serving/configuration.rb +115 -0
- data/vendored/puppet/lib/puppet/file_serving/configuration/parser.rb +137 -0
- data/vendored/puppet/lib/puppet/file_serving/content.rb +43 -0
- data/vendored/puppet/lib/puppet/file_serving/fileset.rb +174 -0
- data/vendored/puppet/lib/puppet/file_serving/http_metadata.rb +46 -0
- data/vendored/puppet/lib/puppet/file_serving/metadata.rb +163 -0
- data/vendored/puppet/lib/puppet/file_serving/mount.rb +39 -0
- data/vendored/puppet/lib/puppet/file_serving/mount/file.rb +121 -0
- data/vendored/puppet/lib/puppet/file_serving/mount/locales.rb +35 -0
- data/vendored/puppet/lib/puppet/file_serving/mount/modules.rb +24 -0
- data/vendored/puppet/lib/puppet/file_serving/mount/pluginfacts.rb +35 -0
- data/vendored/puppet/lib/puppet/file_serving/mount/plugins.rb +35 -0
- data/vendored/puppet/lib/puppet/file_serving/mount/tasks.rb +21 -0
- data/vendored/puppet/lib/puppet/file_serving/terminus_helper.rb +31 -0
- data/vendored/puppet/lib/puppet/file_serving/terminus_selector.rb +32 -0
- data/vendored/puppet/lib/puppet/file_system.rb +404 -0
- data/vendored/puppet/lib/puppet/file_system/file_impl.rb +154 -0
- data/vendored/puppet/lib/puppet/file_system/memory_file.rb +66 -0
- data/vendored/puppet/lib/puppet/file_system/memory_impl.rb +86 -0
- data/vendored/puppet/lib/puppet/file_system/path_pattern.rb +98 -0
- data/vendored/puppet/lib/puppet/file_system/posix.rb +46 -0
- data/vendored/puppet/lib/puppet/file_system/uniquefile.rb +190 -0
- data/vendored/puppet/lib/puppet/file_system/windows.rb +130 -0
- data/vendored/puppet/lib/puppet/forge.rb +242 -0
- data/vendored/puppet/lib/puppet/forge/cache.rb +60 -0
- data/vendored/puppet/lib/puppet/forge/errors.rb +114 -0
- data/vendored/puppet/lib/puppet/forge/repository.rb +155 -0
- data/vendored/puppet/lib/puppet/functions.rb +725 -0
- data/vendored/puppet/lib/puppet/functions/alert.rb +14 -0
- data/vendored/puppet/lib/puppet/functions/all.rb +104 -0
- data/vendored/puppet/lib/puppet/functions/annotate.rb +108 -0
- data/vendored/puppet/lib/puppet/functions/any.rb +109 -0
- data/vendored/puppet/lib/puppet/functions/assert_type.rb +93 -0
- data/vendored/puppet/lib/puppet/functions/binary_file.rb +32 -0
- data/vendored/puppet/lib/puppet/functions/break.rb +51 -0
- data/vendored/puppet/lib/puppet/functions/call.rb +42 -0
- data/vendored/puppet/lib/puppet/functions/contain.rb +55 -0
- data/vendored/puppet/lib/puppet/functions/convert_to.rb +33 -0
- data/vendored/puppet/lib/puppet/functions/crit.rb +14 -0
- data/vendored/puppet/lib/puppet/functions/debug.rb +14 -0
- data/vendored/puppet/lib/puppet/functions/defined.rb +159 -0
- data/vendored/puppet/lib/puppet/functions/dig.rb +47 -0
- data/vendored/puppet/lib/puppet/functions/each.rb +169 -0
- data/vendored/puppet/lib/puppet/functions/emerg.rb +14 -0
- data/vendored/puppet/lib/puppet/functions/empty.rb +79 -0
- data/vendored/puppet/lib/puppet/functions/epp.rb +48 -0
- data/vendored/puppet/lib/puppet/functions/err.rb +14 -0
- data/vendored/puppet/lib/puppet/functions/eyaml_lookup_key.rb +96 -0
- data/vendored/puppet/lib/puppet/functions/filter.rb +143 -0
- data/vendored/puppet/lib/puppet/functions/find_file.rb +44 -0
- data/vendored/puppet/lib/puppet/functions/flatten.rb +64 -0
- data/vendored/puppet/lib/puppet/functions/hiera.rb +88 -0
- data/vendored/puppet/lib/puppet/functions/hiera_array.rb +81 -0
- data/vendored/puppet/lib/puppet/functions/hiera_hash.rb +92 -0
- data/vendored/puppet/lib/puppet/functions/hiera_include.rb +104 -0
- data/vendored/puppet/lib/puppet/functions/hocon_data.rb +41 -0
- data/vendored/puppet/lib/puppet/functions/import.rb +7 -0
- data/vendored/puppet/lib/puppet/functions/include.rb +53 -0
- data/vendored/puppet/lib/puppet/functions/info.rb +14 -0
- data/vendored/puppet/lib/puppet/functions/inline_epp.rb +59 -0
- data/vendored/puppet/lib/puppet/functions/join.rb +56 -0
- data/vendored/puppet/lib/puppet/functions/json_data.rb +33 -0
- data/vendored/puppet/lib/puppet/functions/keys.rb +25 -0
- data/vendored/puppet/lib/puppet/functions/length.rb +44 -0
- data/vendored/puppet/lib/puppet/functions/lest.rb +55 -0
- data/vendored/puppet/lib/puppet/functions/lookup.rb +223 -0
- data/vendored/puppet/lib/puppet/functions/map.rb +136 -0
- data/vendored/puppet/lib/puppet/functions/match.rb +120 -0
- data/vendored/puppet/lib/puppet/functions/module_directory.rb +41 -0
- data/vendored/puppet/lib/puppet/functions/new.rb +1022 -0
- data/vendored/puppet/lib/puppet/functions/next.rb +23 -0
- data/vendored/puppet/lib/puppet/functions/notice.rb +14 -0
- data/vendored/puppet/lib/puppet/functions/reduce.rb +164 -0
- data/vendored/puppet/lib/puppet/functions/regsubst.rb +82 -0
- data/vendored/puppet/lib/puppet/functions/require.rb +77 -0
- data/vendored/puppet/lib/puppet/functions/return.rb +22 -0
- data/vendored/puppet/lib/puppet/functions/reverse_each.rb +94 -0
- data/vendored/puppet/lib/puppet/functions/scanf.rb +44 -0
- data/vendored/puppet/lib/puppet/functions/slice.rb +124 -0
- data/vendored/puppet/lib/puppet/functions/split.rb +49 -0
- data/vendored/puppet/lib/puppet/functions/step.rb +98 -0
- data/vendored/puppet/lib/puppet/functions/strftime.rb +217 -0
- data/vendored/puppet/lib/puppet/functions/then.rb +77 -0
- data/vendored/puppet/lib/puppet/functions/tree_each.rb +200 -0
- data/vendored/puppet/lib/puppet/functions/type.rb +72 -0
- data/vendored/puppet/lib/puppet/functions/unique.rb +132 -0
- data/vendored/puppet/lib/puppet/functions/unwrap.rb +44 -0
- data/vendored/puppet/lib/puppet/functions/values.rb +25 -0
- data/vendored/puppet/lib/puppet/functions/versioncmp.rb +36 -0
- data/vendored/puppet/lib/puppet/functions/warning.rb +14 -0
- data/vendored/puppet/lib/puppet/functions/with.rb +32 -0
- data/vendored/puppet/lib/puppet/functions/yaml_data.rb +42 -0
- data/vendored/puppet/lib/puppet/generate/models/type/property.rb +70 -0
- data/vendored/puppet/lib/puppet/generate/models/type/type.rb +62 -0
- data/vendored/puppet/lib/puppet/generate/type.rb +239 -0
- data/vendored/puppet/lib/puppet/gettext/config.rb +252 -0
- data/vendored/puppet/lib/puppet/gettext/module_translations.rb +42 -0
- data/vendored/puppet/lib/puppet/gettext/stubs.rb +11 -0
- data/vendored/puppet/lib/puppet/graph.rb +11 -0
- data/vendored/puppet/lib/puppet/graph/key.rb +26 -0
- data/vendored/puppet/lib/puppet/graph/prioritizer.rb +29 -0
- data/vendored/puppet/lib/puppet/graph/random_prioritizer.rb +16 -0
- data/vendored/puppet/lib/puppet/graph/rb_tree_map.rb +388 -0
- data/vendored/puppet/lib/puppet/graph/relationship_graph.rb +283 -0
- data/vendored/puppet/lib/puppet/graph/sequential_prioritizer.rb +31 -0
- data/vendored/puppet/lib/puppet/graph/simple_graph.rb +539 -0
- data/vendored/puppet/lib/puppet/graph/title_hash_prioritizer.rb +16 -0
- data/vendored/puppet/lib/puppet/indirector.rb +61 -0
- data/vendored/puppet/lib/puppet/indirector/catalog/compiler.rb +418 -0
- data/vendored/puppet/lib/puppet/indirector/catalog/json.rb +24 -0
- data/vendored/puppet/lib/puppet/indirector/catalog/msgpack.rb +6 -0
- data/vendored/puppet/lib/puppet/indirector/catalog/rest.rb +6 -0
- data/vendored/puppet/lib/puppet/indirector/catalog/store_configs.rb +8 -0
- data/vendored/puppet/lib/puppet/indirector/catalog/yaml.rb +22 -0
- data/vendored/puppet/lib/puppet/indirector/certificate/ca.rb +9 -0
- data/vendored/puppet/lib/puppet/indirector/certificate/disabled_ca.rb +22 -0
- data/vendored/puppet/lib/puppet/indirector/certificate/file.rb +9 -0
- data/vendored/puppet/lib/puppet/indirector/certificate/rest.rb +16 -0
- data/vendored/puppet/lib/puppet/indirector/certificate_request/ca.rb +22 -0
- data/vendored/puppet/lib/puppet/indirector/certificate_request/disabled_ca.rb +22 -0
- data/vendored/puppet/lib/puppet/indirector/certificate_request/file.rb +8 -0
- data/vendored/puppet/lib/puppet/indirector/certificate_request/memory.rb +6 -0
- data/vendored/puppet/lib/puppet/indirector/certificate_request/rest.rb +10 -0
- data/vendored/puppet/lib/puppet/indirector/certificate_revocation_list/ca.rb +8 -0
- data/vendored/puppet/lib/puppet/indirector/certificate_revocation_list/disabled_ca.rb +22 -0
- data/vendored/puppet/lib/puppet/indirector/certificate_revocation_list/file.rb +8 -0
- data/vendored/puppet/lib/puppet/indirector/certificate_revocation_list/rest.rb +22 -0
- data/vendored/puppet/lib/puppet/indirector/certificate_status.rb +4 -0
- data/vendored/puppet/lib/puppet/indirector/certificate_status/file.rb +91 -0
- data/vendored/puppet/lib/puppet/indirector/certificate_status/rest.rb +11 -0
- data/vendored/puppet/lib/puppet/indirector/code.rb +6 -0
- data/vendored/puppet/lib/puppet/indirector/data_binding/hiera.rb +7 -0
- data/vendored/puppet/lib/puppet/indirector/data_binding/none.rb +8 -0
- data/vendored/puppet/lib/puppet/indirector/direct_file_server.rb +17 -0
- data/vendored/puppet/lib/puppet/indirector/envelope.rb +11 -0
- data/vendored/puppet/lib/puppet/indirector/errors.rb +5 -0
- data/vendored/puppet/lib/puppet/indirector/exec.rb +38 -0
- data/vendored/puppet/lib/puppet/indirector/face.rb +153 -0
- data/vendored/puppet/lib/puppet/indirector/facts/facter.rb +88 -0
- data/vendored/puppet/lib/puppet/indirector/facts/memory.rb +9 -0
- data/vendored/puppet/lib/puppet/indirector/facts/network_device.rb +27 -0
- data/vendored/puppet/lib/puppet/indirector/facts/rest.rb +21 -0
- data/vendored/puppet/lib/puppet/indirector/facts/store_configs.rb +11 -0
- data/vendored/puppet/lib/puppet/indirector/facts/yaml.rb +82 -0
- data/vendored/puppet/lib/puppet/indirector/file_bucket_file/file.rb +262 -0
- data/vendored/puppet/lib/puppet/indirector/file_bucket_file/rest.rb +8 -0
- data/vendored/puppet/lib/puppet/indirector/file_bucket_file/selector.rb +53 -0
- data/vendored/puppet/lib/puppet/indirector/file_content.rb +5 -0
- data/vendored/puppet/lib/puppet/indirector/file_content/file.rb +7 -0
- data/vendored/puppet/lib/puppet/indirector/file_content/file_server.rb +7 -0
- data/vendored/puppet/lib/puppet/indirector/file_content/http.rb +17 -0
- data/vendored/puppet/lib/puppet/indirector/file_content/rest.rb +9 -0
- data/vendored/puppet/lib/puppet/indirector/file_content/selector.rb +30 -0
- data/vendored/puppet/lib/puppet/indirector/file_metadata.rb +5 -0
- data/vendored/puppet/lib/puppet/indirector/file_metadata/file.rb +7 -0
- data/vendored/puppet/lib/puppet/indirector/file_metadata/file_server.rb +7 -0
- data/vendored/puppet/lib/puppet/indirector/file_metadata/http.rb +27 -0
- data/vendored/puppet/lib/puppet/indirector/file_metadata/rest.rb +9 -0
- data/vendored/puppet/lib/puppet/indirector/file_metadata/selector.rb +30 -0
- data/vendored/puppet/lib/puppet/indirector/file_server.rb +59 -0
- data/vendored/puppet/lib/puppet/indirector/generic_http.rb +16 -0
- data/vendored/puppet/lib/puppet/indirector/hiera.rb +94 -0
- data/vendored/puppet/lib/puppet/indirector/indirection.rb +344 -0
- data/vendored/puppet/lib/puppet/indirector/json.rb +75 -0
- data/vendored/puppet/lib/puppet/indirector/key/ca.rb +16 -0
- data/vendored/puppet/lib/puppet/indirector/key/disabled_ca.rb +22 -0
- data/vendored/puppet/lib/puppet/indirector/key/file.rb +50 -0
- data/vendored/puppet/lib/puppet/indirector/key/memory.rb +6 -0
- data/vendored/puppet/lib/puppet/indirector/ldap.rb +80 -0
- data/vendored/puppet/lib/puppet/indirector/memory.rb +34 -0
- data/vendored/puppet/lib/puppet/indirector/msgpack.rb +83 -0
- data/vendored/puppet/lib/puppet/indirector/node/exec.rb +71 -0
- data/vendored/puppet/lib/puppet/indirector/node/ldap.rb +275 -0
- data/vendored/puppet/lib/puppet/indirector/node/memory.rb +10 -0
- data/vendored/puppet/lib/puppet/indirector/node/msgpack.rb +7 -0
- data/vendored/puppet/lib/puppet/indirector/node/plain.rb +21 -0
- data/vendored/puppet/lib/puppet/indirector/node/rest.rb +7 -0
- data/vendored/puppet/lib/puppet/indirector/node/store_configs.rb +8 -0
- data/vendored/puppet/lib/puppet/indirector/node/write_only_yaml.rb +39 -0
- data/vendored/puppet/lib/puppet/indirector/node/yaml.rb +13 -0
- data/vendored/puppet/lib/puppet/indirector/none.rb +9 -0
- data/vendored/puppet/lib/puppet/indirector/plain.rb +9 -0
- data/vendored/puppet/lib/puppet/indirector/report/msgpack.rb +11 -0
- data/vendored/puppet/lib/puppet/indirector/report/processor.rb +59 -0
- data/vendored/puppet/lib/puppet/indirector/report/rest.rb +28 -0
- data/vendored/puppet/lib/puppet/indirector/report/yaml.rb +11 -0
- data/vendored/puppet/lib/puppet/indirector/request.rb +278 -0
- data/vendored/puppet/lib/puppet/indirector/resource/ral.rb +63 -0
- data/vendored/puppet/lib/puppet/indirector/resource/store_configs.rb +12 -0
- data/vendored/puppet/lib/puppet/indirector/resource/validator.rb +8 -0
- data/vendored/puppet/lib/puppet/indirector/rest.rb +350 -0
- data/vendored/puppet/lib/puppet/indirector/ssl_file.rb +201 -0
- data/vendored/puppet/lib/puppet/indirector/status.rb +3 -0
- data/vendored/puppet/lib/puppet/indirector/status/local.rb +12 -0
- data/vendored/puppet/lib/puppet/indirector/status/rest.rb +9 -0
- data/vendored/puppet/lib/puppet/indirector/store_configs.rb +30 -0
- data/vendored/puppet/lib/puppet/indirector/terminus.rb +169 -0
- data/vendored/puppet/lib/puppet/indirector/yaml.rb +63 -0
- data/vendored/puppet/lib/puppet/info_service.rb +17 -0
- data/vendored/puppet/lib/puppet/info_service/class_information_service.rb +110 -0
- data/vendored/puppet/lib/puppet/info_service/task_information_service.rb +32 -0
- data/vendored/puppet/lib/puppet/interface.rb +237 -0
- data/vendored/puppet/lib/puppet/interface/action.rb +402 -0
- data/vendored/puppet/lib/puppet/interface/action_builder.rb +166 -0
- data/vendored/puppet/lib/puppet/interface/action_manager.rb +97 -0
- data/vendored/puppet/lib/puppet/interface/documentation.rb +353 -0
- data/vendored/puppet/lib/puppet/interface/face_collection.rb +132 -0
- data/vendored/puppet/lib/puppet/interface/option.rb +171 -0
- data/vendored/puppet/lib/puppet/interface/option_builder.rb +105 -0
- data/vendored/puppet/lib/puppet/interface/option_manager.rb +104 -0
- data/vendored/puppet/lib/puppet/loaders.rb +27 -0
- data/vendored/puppet/lib/puppet/metatype/manager.rb +199 -0
- data/vendored/puppet/lib/puppet/module.rb +467 -0
- data/vendored/puppet/lib/puppet/module/task.rb +90 -0
- data/vendored/puppet/lib/puppet/module_tool.rb +196 -0
- data/vendored/puppet/lib/puppet/module_tool/applications.rb +14 -0
- data/vendored/puppet/lib/puppet/module_tool/applications/application.rb +90 -0
- data/vendored/puppet/lib/puppet/module_tool/applications/builder.rb +152 -0
- data/vendored/puppet/lib/puppet/module_tool/applications/checksummer.rb +62 -0
- data/vendored/puppet/lib/puppet/module_tool/applications/installer.rb +355 -0
- data/vendored/puppet/lib/puppet/module_tool/applications/searcher.rb +29 -0
- data/vendored/puppet/lib/puppet/module_tool/applications/uninstaller.rb +121 -0
- data/vendored/puppet/lib/puppet/module_tool/applications/unpacker.rb +100 -0
- data/vendored/puppet/lib/puppet/module_tool/applications/upgrader.rb +281 -0
- data/vendored/puppet/lib/puppet/module_tool/checksums.rb +49 -0
- data/vendored/puppet/lib/puppet/module_tool/contents_description.rb +88 -0
- data/vendored/puppet/lib/puppet/module_tool/dependency.rb +41 -0
- data/vendored/puppet/lib/puppet/module_tool/errors.rb +11 -0
- data/vendored/puppet/lib/puppet/module_tool/errors/base.rb +15 -0
- data/vendored/puppet/lib/puppet/module_tool/errors/installer.rb +93 -0
- data/vendored/puppet/lib/puppet/module_tool/errors/shared.rb +195 -0
- data/vendored/puppet/lib/puppet/module_tool/errors/uninstaller.rb +50 -0
- data/vendored/puppet/lib/puppet/module_tool/errors/upgrader.rb +63 -0
- data/vendored/puppet/lib/puppet/module_tool/install_directory.rb +45 -0
- data/vendored/puppet/lib/puppet/module_tool/installed_modules.rb +96 -0
- data/vendored/puppet/lib/puppet/module_tool/local_tarball.rb +90 -0
- data/vendored/puppet/lib/puppet/module_tool/metadata.rb +223 -0
- data/vendored/puppet/lib/puppet/module_tool/shared_behaviors.rb +180 -0
- data/vendored/puppet/lib/puppet/module_tool/skeleton/templates/generator/spec/spec_helper.rb +1 -0
- data/vendored/puppet/lib/puppet/module_tool/tar.rb +18 -0
- data/vendored/puppet/lib/puppet/module_tool/tar/gnu.rb +19 -0
- data/vendored/puppet/lib/puppet/module_tool/tar/mini.rb +106 -0
- data/vendored/puppet/lib/puppet/network.rb +3 -0
- data/vendored/puppet/lib/puppet/network/auth_config_parser.rb +90 -0
- data/vendored/puppet/lib/puppet/network/authconfig.rb +112 -0
- data/vendored/puppet/lib/puppet/network/authorization.rb +41 -0
- data/vendored/puppet/lib/puppet/network/authstore.rb +282 -0
- data/vendored/puppet/lib/puppet/network/client_request.rb +29 -0
- data/vendored/puppet/lib/puppet/network/format.rb +110 -0
- data/vendored/puppet/lib/puppet/network/format_handler.rb +108 -0
- data/vendored/puppet/lib/puppet/network/format_support.rb +134 -0
- data/vendored/puppet/lib/puppet/network/formats.rb +171 -0
- data/vendored/puppet/lib/puppet/network/http.rb +30 -0
- data/vendored/puppet/lib/puppet/network/http/api.rb +44 -0
- data/vendored/puppet/lib/puppet/network/http/api/ca.rb +2 -0
- data/vendored/puppet/lib/puppet/network/http/api/ca/v1.rb +11 -0
- data/vendored/puppet/lib/puppet/network/http/api/indirected_routes.rb +279 -0
- data/vendored/puppet/lib/puppet/network/http/api/indirection_type.rb +32 -0
- data/vendored/puppet/lib/puppet/network/http/api/master.rb +2 -0
- data/vendored/puppet/lib/puppet/network/http/api/master/v3.rb +28 -0
- data/vendored/puppet/lib/puppet/network/http/api/master/v3/authorization.rb +18 -0
- data/vendored/puppet/lib/puppet/network/http/api/master/v3/environment.rb +85 -0
- data/vendored/puppet/lib/puppet/network/http/api/master/v3/environments.rb +35 -0
- data/vendored/puppet/lib/puppet/network/http/compression.rb +120 -0
- data/vendored/puppet/lib/puppet/network/http/connection.rb +332 -0
- data/vendored/puppet/lib/puppet/network/http/error.rb +73 -0
- data/vendored/puppet/lib/puppet/network/http/factory.rb +56 -0
- data/vendored/puppet/lib/puppet/network/http/handler.rb +183 -0
- data/vendored/puppet/lib/puppet/network/http/issues.rb +12 -0
- data/vendored/puppet/lib/puppet/network/http/memory_response.rb +13 -0
- data/vendored/puppet/lib/puppet/network/http/nocache_pool.rb +21 -0
- data/vendored/puppet/lib/puppet/network/http/pool.rb +129 -0
- data/vendored/puppet/lib/puppet/network/http/rack.rb +33 -0
- data/vendored/puppet/lib/puppet/network/http/rack/rest.rb +162 -0
- data/vendored/puppet/lib/puppet/network/http/request.rb +70 -0
- data/vendored/puppet/lib/puppet/network/http/response.rb +23 -0
- data/vendored/puppet/lib/puppet/network/http/route.rb +100 -0
- data/vendored/puppet/lib/puppet/network/http/session.rb +17 -0
- data/vendored/puppet/lib/puppet/network/http/site.rb +39 -0
- data/vendored/puppet/lib/puppet/network/http/webrick.rb +124 -0
- data/vendored/puppet/lib/puppet/network/http/webrick/rest.rb +114 -0
- data/vendored/puppet/lib/puppet/network/http_pool.rb +61 -0
- data/vendored/puppet/lib/puppet/network/resolver.rb +85 -0
- data/vendored/puppet/lib/puppet/network/rest_controller.rb +2 -0
- data/vendored/puppet/lib/puppet/network/rights.rb +209 -0
- data/vendored/puppet/lib/puppet/network/server.rb +39 -0
- data/vendored/puppet/lib/puppet/node.rb +282 -0
- data/vendored/puppet/lib/puppet/node/environment.rb +586 -0
- data/vendored/puppet/lib/puppet/node/facts.rb +137 -0
- data/vendored/puppet/lib/puppet/parameter.rb +567 -0
- data/vendored/puppet/lib/puppet/parameter/boolean.rb +15 -0
- data/vendored/puppet/lib/puppet/parameter/package_options.rb +31 -0
- data/vendored/puppet/lib/puppet/parameter/path.rb +57 -0
- data/vendored/puppet/lib/puppet/parameter/value.rb +91 -0
- data/vendored/puppet/lib/puppet/parameter/value_collection.rb +212 -0
- data/vendored/puppet/lib/puppet/parser.rb +20 -0
- data/vendored/puppet/lib/puppet/parser/abstract_compiler.rb +36 -0
- data/vendored/puppet/lib/puppet/parser/ast.rb +65 -0
- data/vendored/puppet/lib/puppet/parser/ast/block_expression.rb +15 -0
- data/vendored/puppet/lib/puppet/parser/ast/branch.rb +19 -0
- data/vendored/puppet/lib/puppet/parser/ast/hostclass.rb +27 -0
- data/vendored/puppet/lib/puppet/parser/ast/leaf.rb +75 -0
- data/vendored/puppet/lib/puppet/parser/ast/node.rb +17 -0
- data/vendored/puppet/lib/puppet/parser/ast/pops_bridge.rb +273 -0
- data/vendored/puppet/lib/puppet/parser/ast/resource.rb +66 -0
- data/vendored/puppet/lib/puppet/parser/ast/resource_instance.rb +10 -0
- data/vendored/puppet/lib/puppet/parser/ast/resourceparam.rb +31 -0
- data/vendored/puppet/lib/puppet/parser/ast/top_level_construct.rb +4 -0
- data/vendored/puppet/lib/puppet/parser/compiler.rb +797 -0
- data/vendored/puppet/lib/puppet/parser/compiler/catalog_validator.rb +33 -0
- data/vendored/puppet/lib/puppet/parser/compiler/catalog_validator/env_relationship_validator.rb +64 -0
- data/vendored/puppet/lib/puppet/parser/compiler/catalog_validator/relationship_validator.rb +57 -0
- data/vendored/puppet/lib/puppet/parser/compiler/catalog_validator/site_validator.rb +20 -0
- data/vendored/puppet/lib/puppet/parser/e4_parser_adapter.rb +60 -0
- data/vendored/puppet/lib/puppet/parser/environment_compiler.rb +199 -0
- data/vendored/puppet/lib/puppet/parser/files.rb +92 -0
- data/vendored/puppet/lib/puppet/parser/functions.rb +277 -0
- data/vendored/puppet/lib/puppet/parser/functions/assert_type.rb +60 -0
- data/vendored/puppet/lib/puppet/parser/functions/binary_file.rb +24 -0
- data/vendored/puppet/lib/puppet/parser/functions/break.rb +39 -0
- data/vendored/puppet/lib/puppet/parser/functions/contain.rb +30 -0
- data/vendored/puppet/lib/puppet/parser/functions/create_resources.rb +112 -0
- data/vendored/puppet/lib/puppet/parser/functions/defined.rb +107 -0
- data/vendored/puppet/lib/puppet/parser/functions/dig.rb +38 -0
- data/vendored/puppet/lib/puppet/parser/functions/digest.rb +5 -0
- data/vendored/puppet/lib/puppet/parser/functions/each.rb +104 -0
- data/vendored/puppet/lib/puppet/parser/functions/epp.rb +39 -0
- data/vendored/puppet/lib/puppet/parser/functions/fail.rb +4 -0
- data/vendored/puppet/lib/puppet/parser/functions/file.rb +33 -0
- data/vendored/puppet/lib/puppet/parser/functions/filter.rb +78 -0
- data/vendored/puppet/lib/puppet/parser/functions/find_file.rb +28 -0
- data/vendored/puppet/lib/puppet/parser/functions/fqdn_rand.rb +36 -0
- data/vendored/puppet/lib/puppet/parser/functions/generate.rb +36 -0
- data/vendored/puppet/lib/puppet/parser/functions/hiera.rb +103 -0
- data/vendored/puppet/lib/puppet/parser/functions/hiera_array.rb +92 -0
- data/vendored/puppet/lib/puppet/parser/functions/hiera_hash.rb +102 -0
- data/vendored/puppet/lib/puppet/parser/functions/hiera_include.rb +102 -0
- data/vendored/puppet/lib/puppet/parser/functions/include.rb +34 -0
- data/vendored/puppet/lib/puppet/parser/functions/inline_epp.rb +51 -0
- data/vendored/puppet/lib/puppet/parser/functions/inline_template.rb +26 -0
- data/vendored/puppet/lib/puppet/parser/functions/lest.rb +49 -0
- data/vendored/puppet/lib/puppet/parser/functions/lookup.rb +132 -0
- data/vendored/puppet/lib/puppet/parser/functions/map.rb +76 -0
- data/vendored/puppet/lib/puppet/parser/functions/match.rb +43 -0
- data/vendored/puppet/lib/puppet/parser/functions/md5.rb +5 -0
- data/vendored/puppet/lib/puppet/parser/functions/new.rb +991 -0
- data/vendored/puppet/lib/puppet/parser/functions/next.rb +38 -0
- data/vendored/puppet/lib/puppet/parser/functions/realize.rb +20 -0
- data/vendored/puppet/lib/puppet/parser/functions/reduce.rb +137 -0
- data/vendored/puppet/lib/puppet/parser/functions/regsubst.rb +62 -0
- data/vendored/puppet/lib/puppet/parser/functions/require.rb +40 -0
- data/vendored/puppet/lib/puppet/parser/functions/return.rb +71 -0
- data/vendored/puppet/lib/puppet/parser/functions/reverse_each.rb +83 -0
- data/vendored/puppet/lib/puppet/parser/functions/scanf.rb +38 -0
- data/vendored/puppet/lib/puppet/parser/functions/sha1.rb +5 -0
- data/vendored/puppet/lib/puppet/parser/functions/sha256.rb +5 -0
- data/vendored/puppet/lib/puppet/parser/functions/shellquote.rb +61 -0
- data/vendored/puppet/lib/puppet/parser/functions/slice.rb +39 -0
- data/vendored/puppet/lib/puppet/parser/functions/split.rb +28 -0
- data/vendored/puppet/lib/puppet/parser/functions/sprintf.rb +50 -0
- data/vendored/puppet/lib/puppet/parser/functions/step.rb +84 -0
- data/vendored/puppet/lib/puppet/parser/functions/strftime.rb +185 -0
- data/vendored/puppet/lib/puppet/parser/functions/tag.rb +12 -0
- data/vendored/puppet/lib/puppet/parser/functions/tagged.rb +24 -0
- data/vendored/puppet/lib/puppet/parser/functions/template.rb +39 -0
- data/vendored/puppet/lib/puppet/parser/functions/then.rb +73 -0
- data/vendored/puppet/lib/puppet/parser/functions/type.rb +53 -0
- data/vendored/puppet/lib/puppet/parser/functions/versioncmp.rb +30 -0
- data/vendored/puppet/lib/puppet/parser/functions/with.rb +28 -0
- data/vendored/puppet/lib/puppet/parser/parser_factory.rb +30 -0
- data/vendored/puppet/lib/puppet/parser/relationship.rb +83 -0
- data/vendored/puppet/lib/puppet/parser/resource.rb +417 -0
- data/vendored/puppet/lib/puppet/parser/resource/param.rb +22 -0
- data/vendored/puppet/lib/puppet/parser/scope.rb +1125 -0
- data/vendored/puppet/lib/puppet/parser/script_compiler.rb +118 -0
- data/vendored/puppet/lib/puppet/parser/templatewrapper.rb +102 -0
- data/vendored/puppet/lib/puppet/parser/type_loader.rb +149 -0
- data/vendored/puppet/lib/puppet/plugins.rb +9 -0
- data/vendored/puppet/lib/puppet/plugins/configuration.rb +25 -0
- data/vendored/puppet/lib/puppet/plugins/syntax_checkers.rb +98 -0
- data/vendored/puppet/lib/puppet/pops.rb +120 -0
- data/vendored/puppet/lib/puppet/pops/adaptable.rb +206 -0
- data/vendored/puppet/lib/puppet/pops/adapters.rb +138 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/access_operator.rb +719 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/callable_signature.rb +107 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/closure.rb +373 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/collector_transformer.rb +234 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/collectors/abstract_collector.rb +86 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/collectors/catalog_collector.rb +29 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/collectors/exported_collector.rb +69 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/collectors/fixed_set_collector.rb +37 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/compare_operator.rb +252 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/epp_evaluator.rb +120 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/evaluator_impl.rb +1284 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/external_syntax_support.rb +45 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/json_strict_literal_evaluator.rb +82 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/literal_evaluator.rb +87 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/puppet_proc.rb +69 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/relationship_operator.rb +185 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/runtime3_converter.rb +202 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/runtime3_resource_support.rb +117 -0
- data/vendored/puppet/lib/puppet/pops/evaluator/runtime3_support.rb +540 -0
- data/vendored/puppet/lib/puppet/pops/functions/dispatch.rb +101 -0
- data/vendored/puppet/lib/puppet/pops/functions/dispatcher.rb +71 -0
- data/vendored/puppet/lib/puppet/pops/functions/function.rb +141 -0
- data/vendored/puppet/lib/puppet/pops/issue_reporter.rb +137 -0
- data/vendored/puppet/lib/puppet/pops/issues.rb +901 -0
- data/vendored/puppet/lib/puppet/pops/label_provider.rb +90 -0
- data/vendored/puppet/lib/puppet/pops/loader/base_loader.rb +166 -0
- data/vendored/puppet/lib/puppet/pops/loader/dependency_loader.rb +92 -0
- data/vendored/puppet/lib/puppet/pops/loader/gem_support.rb +49 -0
- data/vendored/puppet/lib/puppet/pops/loader/loader.rb +209 -0
- data/vendored/puppet/lib/puppet/pops/loader/loader_paths.rb +375 -0
- data/vendored/puppet/lib/puppet/pops/loader/module_loaders.rb +523 -0
- data/vendored/puppet/lib/puppet/pops/loader/null_loader.rb +60 -0
- data/vendored/puppet/lib/puppet/pops/loader/predefined_loader.rb +24 -0
- data/vendored/puppet/lib/puppet/pops/loader/puppet_function_instantiator.rb +84 -0
- data/vendored/puppet/lib/puppet/pops/loader/puppet_plan_instantiator.rb +84 -0
- data/vendored/puppet/lib/puppet/pops/loader/puppet_resource_type_impl_instantiator.rb +79 -0
- data/vendored/puppet/lib/puppet/pops/loader/ruby_data_type_instantiator.rb +39 -0
- data/vendored/puppet/lib/puppet/pops/loader/ruby_function_instantiator.rb +45 -0
- data/vendored/puppet/lib/puppet/pops/loader/runtime3_type_loader.rb +101 -0
- data/vendored/puppet/lib/puppet/pops/loader/simple_environment_loader.rb +20 -0
- data/vendored/puppet/lib/puppet/pops/loader/static_loader.rb +163 -0
- data/vendored/puppet/lib/puppet/pops/loader/task_instantiator.rb +69 -0
- data/vendored/puppet/lib/puppet/pops/loader/type_definition_instantiator.rb +100 -0
- data/vendored/puppet/lib/puppet/pops/loader/typed_name.rb +54 -0
- data/vendored/puppet/lib/puppet/pops/loader/uri_helper.rb +22 -0
- data/vendored/puppet/lib/puppet/pops/loaders.rb +545 -0
- data/vendored/puppet/lib/puppet/pops/lookup.rb +96 -0
- data/vendored/puppet/lib/puppet/pops/lookup/configured_data_provider.rb +93 -0
- data/vendored/puppet/lib/puppet/pops/lookup/context.rb +200 -0
- data/vendored/puppet/lib/puppet/pops/lookup/data_adapter.rb +27 -0
- data/vendored/puppet/lib/puppet/pops/lookup/data_dig_function_provider.rb +145 -0
- data/vendored/puppet/lib/puppet/pops/lookup/data_hash_function_provider.rb +126 -0
- data/vendored/puppet/lib/puppet/pops/lookup/data_provider.rb +92 -0
- data/vendored/puppet/lib/puppet/pops/lookup/environment_data_provider.rb +35 -0
- data/vendored/puppet/lib/puppet/pops/lookup/explainer.rb +595 -0
- data/vendored/puppet/lib/puppet/pops/lookup/function_provider.rb +110 -0
- data/vendored/puppet/lib/puppet/pops/lookup/global_data_provider.rb +75 -0
- data/vendored/puppet/lib/puppet/pops/lookup/hiera_config.rb +761 -0
- data/vendored/puppet/lib/puppet/pops/lookup/interpolation.rb +154 -0
- data/vendored/puppet/lib/puppet/pops/lookup/invocation.rb +261 -0
- data/vendored/puppet/lib/puppet/pops/lookup/location_resolver.rb +99 -0
- data/vendored/puppet/lib/puppet/pops/lookup/lookup_adapter.rb +471 -0
- data/vendored/puppet/lib/puppet/pops/lookup/lookup_key.rb +99 -0
- data/vendored/puppet/lib/puppet/pops/lookup/lookup_key_function_provider.rb +92 -0
- data/vendored/puppet/lib/puppet/pops/lookup/module_data_provider.rb +89 -0
- data/vendored/puppet/lib/puppet/pops/lookup/sub_lookup.rb +92 -0
- data/vendored/puppet/lib/puppet/pops/merge_strategy.rb +437 -0
- data/vendored/puppet/lib/puppet/pops/migration/migration_checker.rb +58 -0
- data/vendored/puppet/lib/puppet/pops/model/ast.rb +4870 -0
- data/vendored/puppet/lib/puppet/pops/model/ast_transformer.rb +131 -0
- data/vendored/puppet/lib/puppet/pops/model/factory.rb +1150 -0
- data/vendored/puppet/lib/puppet/pops/model/model_label_provider.rb +132 -0
- data/vendored/puppet/lib/puppet/pops/model/model_tree_dumper.rb +467 -0
- data/vendored/puppet/lib/puppet/pops/model/pn_transformer.rb +400 -0
- data/vendored/puppet/lib/puppet/pops/model/tree_dumper.rb +59 -0
- data/vendored/puppet/lib/puppet/pops/parser/code_merger.rb +29 -0
- data/vendored/puppet/lib/puppet/pops/parser/eparser.rb +3315 -0
- data/vendored/puppet/lib/puppet/pops/parser/epp_parser.rb +51 -0
- data/vendored/puppet/lib/puppet/pops/parser/epp_support.rb +260 -0
- data/vendored/puppet/lib/puppet/pops/parser/evaluating_parser.rb +165 -0
- data/vendored/puppet/lib/puppet/pops/parser/heredoc_support.rb +143 -0
- data/vendored/puppet/lib/puppet/pops/parser/interpolation_support.rb +244 -0
- data/vendored/puppet/lib/puppet/pops/parser/lexer2.rb +772 -0
- data/vendored/puppet/lib/puppet/pops/parser/lexer_support.rb +221 -0
- data/vendored/puppet/lib/puppet/pops/parser/locatable.rb +23 -0
- data/vendored/puppet/lib/puppet/pops/parser/locator.rb +336 -0
- data/vendored/puppet/lib/puppet/pops/parser/parser_support.rb +247 -0
- data/vendored/puppet/lib/puppet/pops/parser/pn_parser.rb +316 -0
- data/vendored/puppet/lib/puppet/pops/parser/slurp_support.rb +117 -0
- data/vendored/puppet/lib/puppet/pops/patterns.rb +60 -0
- data/vendored/puppet/lib/puppet/pops/pcore.rb +147 -0
- data/vendored/puppet/lib/puppet/pops/pn.rb +236 -0
- data/vendored/puppet/lib/puppet/pops/puppet_stack.rb +43 -0
- data/vendored/puppet/lib/puppet/pops/resource/param.rb +55 -0
- data/vendored/puppet/lib/puppet/pops/resource/resource_type_impl.rb +314 -0
- data/vendored/puppet/lib/puppet/pops/semantic_error.rb +29 -0
- data/vendored/puppet/lib/puppet/pops/serialization.rb +41 -0
- data/vendored/puppet/lib/puppet/pops/serialization/abstract_reader.rb +180 -0
- data/vendored/puppet/lib/puppet/pops/serialization/abstract_writer.rb +222 -0
- data/vendored/puppet/lib/puppet/pops/serialization/deserializer.rb +80 -0
- data/vendored/puppet/lib/puppet/pops/serialization/extension.rb +158 -0
- data/vendored/puppet/lib/puppet/pops/serialization/from_data_converter.rb +223 -0
- data/vendored/puppet/lib/puppet/pops/serialization/instance_reader.rb +19 -0
- data/vendored/puppet/lib/puppet/pops/serialization/instance_writer.rb +14 -0
- data/vendored/puppet/lib/puppet/pops/serialization/json.rb +297 -0
- data/vendored/puppet/lib/puppet/pops/serialization/json_path.rb +127 -0
- data/vendored/puppet/lib/puppet/pops/serialization/object.rb +70 -0
- data/vendored/puppet/lib/puppet/pops/serialization/serializer.rb +140 -0
- data/vendored/puppet/lib/puppet/pops/serialization/time_factory.rb +67 -0
- data/vendored/puppet/lib/puppet/pops/serialization/to_data_converter.rb +305 -0
- data/vendored/puppet/lib/puppet/pops/time/timespan.rb +718 -0
- data/vendored/puppet/lib/puppet/pops/time/timestamp.rb +160 -0
- data/vendored/puppet/lib/puppet/pops/types/annotatable.rb +36 -0
- data/vendored/puppet/lib/puppet/pops/types/annotation.rb +71 -0
- data/vendored/puppet/lib/puppet/pops/types/class_loader.rb +132 -0
- data/vendored/puppet/lib/puppet/pops/types/enumeration.rb +16 -0
- data/vendored/puppet/lib/puppet/pops/types/implementation_registry.rb +134 -0
- data/vendored/puppet/lib/puppet/pops/types/iterable.rb +339 -0
- data/vendored/puppet/lib/puppet/pops/types/p_binary_type.rb +233 -0
- data/vendored/puppet/lib/puppet/pops/types/p_init_type.rb +238 -0
- data/vendored/puppet/lib/puppet/pops/types/p_meta_type.rb +94 -0
- data/vendored/puppet/lib/puppet/pops/types/p_object_type.rb +1114 -0
- data/vendored/puppet/lib/puppet/pops/types/p_object_type_extension.rb +218 -0
- data/vendored/puppet/lib/puppet/pops/types/p_runtime_type.rb +115 -0
- data/vendored/puppet/lib/puppet/pops/types/p_sem_ver_range_type.rb +190 -0
- data/vendored/puppet/lib/puppet/pops/types/p_sem_ver_type.rb +149 -0
- data/vendored/puppet/lib/puppet/pops/types/p_sensitive_type.rb +73 -0
- data/vendored/puppet/lib/puppet/pops/types/p_timespan_type.rb +192 -0
- data/vendored/puppet/lib/puppet/pops/types/p_timestamp_type.rb +73 -0
- data/vendored/puppet/lib/puppet/pops/types/p_type_set_type.rb +383 -0
- data/vendored/puppet/lib/puppet/pops/types/p_uri_type.rb +190 -0
- data/vendored/puppet/lib/puppet/pops/types/puppet_object.rb +40 -0
- data/vendored/puppet/lib/puppet/pops/types/recursion_guard.rb +136 -0
- data/vendored/puppet/lib/puppet/pops/types/ruby_generator.rb +472 -0
- data/vendored/puppet/lib/puppet/pops/types/ruby_method.rb +31 -0
- data/vendored/puppet/lib/puppet/pops/types/string_converter.rb +1123 -0
- data/vendored/puppet/lib/puppet/pops/types/tree_iterators.rb +254 -0
- data/vendored/puppet/lib/puppet/pops/types/type_acceptor.rb +25 -0
- data/vendored/puppet/lib/puppet/pops/types/type_asserter.rb +47 -0
- data/vendored/puppet/lib/puppet/pops/types/type_assertion_error.rb +27 -0
- data/vendored/puppet/lib/puppet/pops/types/type_calculator.rb +809 -0
- data/vendored/puppet/lib/puppet/pops/types/type_conversion_error.rb +15 -0
- data/vendored/puppet/lib/puppet/pops/types/type_factory.rb +614 -0
- data/vendored/puppet/lib/puppet/pops/types/type_formatter.rb +802 -0
- data/vendored/puppet/lib/puppet/pops/types/type_mismatch_describer.rb +1075 -0
- data/vendored/puppet/lib/puppet/pops/types/type_parser.rb +685 -0
- data/vendored/puppet/lib/puppet/pops/types/type_set_reference.rb +59 -0
- data/vendored/puppet/lib/puppet/pops/types/type_with_members.rb +43 -0
- data/vendored/puppet/lib/puppet/pops/types/types.rb +3650 -0
- data/vendored/puppet/lib/puppet/pops/utils.rb +119 -0
- data/vendored/puppet/lib/puppet/pops/validation.rb +466 -0
- data/vendored/puppet/lib/puppet/pops/validation/checker4_0.rb +998 -0
- data/vendored/puppet/lib/puppet/pops/validation/tasks_checker.rb +60 -0
- data/vendored/puppet/lib/puppet/pops/validation/validator_factory_4_0.rb +43 -0
- data/vendored/puppet/lib/puppet/pops/visitable.rb +6 -0
- data/vendored/puppet/lib/puppet/pops/visitor.rb +116 -0
- data/vendored/puppet/lib/puppet/property.rb +608 -0
- data/vendored/puppet/lib/puppet/property/boolean.rb +7 -0
- data/vendored/puppet/lib/puppet/property/ensure.rb +105 -0
- data/vendored/puppet/lib/puppet/property/keyvalue.rb +95 -0
- data/vendored/puppet/lib/puppet/property/list.rb +69 -0
- data/vendored/puppet/lib/puppet/property/ordered_list.rb +29 -0
- data/vendored/puppet/lib/puppet/provider.rb +613 -0
- data/vendored/puppet/lib/puppet/provider/aixobject.rb +392 -0
- data/vendored/puppet/lib/puppet/provider/augeas/augeas.rb +566 -0
- data/vendored/puppet/lib/puppet/provider/cisco.rb +9 -0
- data/vendored/puppet/lib/puppet/provider/command.rb +25 -0
- data/vendored/puppet/lib/puppet/provider/computer/computer.rb +20 -0
- data/vendored/puppet/lib/puppet/provider/confine.rb +6 -0
- data/vendored/puppet/lib/puppet/provider/cron/crontab.rb +297 -0
- data/vendored/puppet/lib/puppet/provider/exec.rb +96 -0
- data/vendored/puppet/lib/puppet/provider/exec/posix.rb +48 -0
- data/vendored/puppet/lib/puppet/provider/exec/shell.rb +25 -0
- data/vendored/puppet/lib/puppet/provider/exec/windows.rb +55 -0
- data/vendored/puppet/lib/puppet/provider/file/posix.rb +136 -0
- data/vendored/puppet/lib/puppet/provider/file/windows.rb +104 -0
- data/vendored/puppet/lib/puppet/provider/group/aix.rb +143 -0
- data/vendored/puppet/lib/puppet/provider/group/directoryservice.rb +22 -0
- data/vendored/puppet/lib/puppet/provider/group/groupadd.rb +111 -0
- data/vendored/puppet/lib/puppet/provider/group/ldap.rb +45 -0
- data/vendored/puppet/lib/puppet/provider/group/pw.rb +49 -0
- data/vendored/puppet/lib/puppet/provider/group/windows_adsi.rb +106 -0
- data/vendored/puppet/lib/puppet/provider/host/parsed.rb +46 -0
- data/vendored/puppet/lib/puppet/provider/interface/cisco.rb +27 -0
- data/vendored/puppet/lib/puppet/provider/ldap.rb +137 -0
- data/vendored/puppet/lib/puppet/provider/macauthorization/macauthorization.rb +298 -0
- data/vendored/puppet/lib/puppet/provider/mailalias/aliases.rb +50 -0
- data/vendored/puppet/lib/puppet/provider/maillist/mailman.rb +108 -0
- data/vendored/puppet/lib/puppet/provider/mcx/mcxcontent.rb +173 -0
- data/vendored/puppet/lib/puppet/provider/mount.rb +76 -0
- data/vendored/puppet/lib/puppet/provider/mount/parsed.rb +282 -0
- data/vendored/puppet/lib/puppet/provider/naginator.rb +63 -0
- data/vendored/puppet/lib/puppet/provider/nameservice.rb +325 -0
- data/vendored/puppet/lib/puppet/provider/nameservice/directoryservice.rb +508 -0
- data/vendored/puppet/lib/puppet/provider/nameservice/objectadd.rb +22 -0
- data/vendored/puppet/lib/puppet/provider/nameservice/pw.rb +21 -0
- data/vendored/puppet/lib/puppet/provider/network_device.rb +72 -0
- data/vendored/puppet/lib/puppet/provider/package.rb +56 -0
- data/vendored/puppet/lib/puppet/provider/package/aix.rb +152 -0
- data/vendored/puppet/lib/puppet/provider/package/appdmg.rb +109 -0
- data/vendored/puppet/lib/puppet/provider/package/apple.rb +46 -0
- data/vendored/puppet/lib/puppet/provider/package/apt.rb +116 -0
- data/vendored/puppet/lib/puppet/provider/package/aptitude.rb +29 -0
- data/vendored/puppet/lib/puppet/provider/package/aptrpm.rb +83 -0
- data/vendored/puppet/lib/puppet/provider/package/blastwave.rb +111 -0
- data/vendored/puppet/lib/puppet/provider/package/dnf.rb +46 -0
- data/vendored/puppet/lib/puppet/provider/package/dpkg.rb +165 -0
- data/vendored/puppet/lib/puppet/provider/package/fink.rb +79 -0
- data/vendored/puppet/lib/puppet/provider/package/freebsd.rb +47 -0
- data/vendored/puppet/lib/puppet/provider/package/gem.rb +175 -0
- data/vendored/puppet/lib/puppet/provider/package/hpux.rb +44 -0
- data/vendored/puppet/lib/puppet/provider/package/macports.rb +107 -0
- data/vendored/puppet/lib/puppet/provider/package/nim.rb +282 -0
- data/vendored/puppet/lib/puppet/provider/package/openbsd.rb +242 -0
- data/vendored/puppet/lib/puppet/provider/package/opkg.rb +81 -0
- data/vendored/puppet/lib/puppet/provider/package/pacman.rb +267 -0
- data/vendored/puppet/lib/puppet/provider/package/pip.rb +188 -0
- data/vendored/puppet/lib/puppet/provider/package/pip3.rb +20 -0
- data/vendored/puppet/lib/puppet/provider/package/pkg.rb +255 -0
- data/vendored/puppet/lib/puppet/provider/package/pkgdmg.rb +151 -0
- data/vendored/puppet/lib/puppet/provider/package/pkgin.rb +87 -0
- data/vendored/puppet/lib/puppet/provider/package/pkgng.rb +143 -0
- data/vendored/puppet/lib/puppet/provider/package/pkgutil.rb +186 -0
- data/vendored/puppet/lib/puppet/provider/package/portage.rb +300 -0
- data/vendored/puppet/lib/puppet/provider/package/ports.rb +91 -0
- data/vendored/puppet/lib/puppet/provider/package/portupgrade.rb +239 -0
- data/vendored/puppet/lib/puppet/provider/package/puppet_gem.rb +17 -0
- data/vendored/puppet/lib/puppet/provider/package/rpm.rb +405 -0
- data/vendored/puppet/lib/puppet/provider/package/rug.rb +51 -0
- data/vendored/puppet/lib/puppet/provider/package/sun.rb +133 -0
- data/vendored/puppet/lib/puppet/provider/package/sunfreeware.rb +9 -0
- data/vendored/puppet/lib/puppet/provider/package/tdnf.rb +28 -0
- data/vendored/puppet/lib/puppet/provider/package/up2date.rb +40 -0
- data/vendored/puppet/lib/puppet/provider/package/urpmi.rb +55 -0
- data/vendored/puppet/lib/puppet/provider/package/windows.rb +113 -0
- data/vendored/puppet/lib/puppet/provider/package/windows/exe_package.rb +71 -0
- data/vendored/puppet/lib/puppet/provider/package/windows/msi_package.rb +62 -0
- data/vendored/puppet/lib/puppet/provider/package/windows/package.rb +100 -0
- data/vendored/puppet/lib/puppet/provider/package/yum.rb +293 -0
- data/vendored/puppet/lib/puppet/provider/package/zypper.rb +145 -0
- data/vendored/puppet/lib/puppet/provider/parsedfile.rb +459 -0
- data/vendored/puppet/lib/puppet/provider/scheduled_task/win32_taskscheduler.rb +590 -0
- data/vendored/puppet/lib/puppet/provider/selboolean/getsetsebool.rb +47 -0
- data/vendored/puppet/lib/puppet/provider/selmodule/semodule.rb +140 -0
- data/vendored/puppet/lib/puppet/provider/service/base.rb +134 -0
- data/vendored/puppet/lib/puppet/provider/service/bsd.rb +51 -0
- data/vendored/puppet/lib/puppet/provider/service/daemontools.rb +194 -0
- data/vendored/puppet/lib/puppet/provider/service/debian.rb +74 -0
- data/vendored/puppet/lib/puppet/provider/service/freebsd.rb +143 -0
- data/vendored/puppet/lib/puppet/provider/service/gentoo.rb +45 -0
- data/vendored/puppet/lib/puppet/provider/service/init.rb +194 -0
- data/vendored/puppet/lib/puppet/provider/service/launchd.rb +345 -0
- data/vendored/puppet/lib/puppet/provider/service/openbsd.rb +100 -0
- data/vendored/puppet/lib/puppet/provider/service/openrc.rb +71 -0
- data/vendored/puppet/lib/puppet/provider/service/openwrt.rb +36 -0
- data/vendored/puppet/lib/puppet/provider/service/rcng.rb +51 -0
- data/vendored/puppet/lib/puppet/provider/service/redhat.rb +72 -0
- data/vendored/puppet/lib/puppet/provider/service/runit.rb +112 -0
- data/vendored/puppet/lib/puppet/provider/service/service.rb +42 -0
- data/vendored/puppet/lib/puppet/provider/service/smf.rb +170 -0
- data/vendored/puppet/lib/puppet/provider/service/src.rb +147 -0
- data/vendored/puppet/lib/puppet/provider/service/systemd.rb +187 -0
- data/vendored/puppet/lib/puppet/provider/service/upstart.rb +359 -0
- data/vendored/puppet/lib/puppet/provider/service/windows.rb +106 -0
- data/vendored/puppet/lib/puppet/provider/ssh_authorized_key/parsed.rb +105 -0
- data/vendored/puppet/lib/puppet/provider/sshkey/parsed.rb +50 -0
- data/vendored/puppet/lib/puppet/provider/user/aix.rb +383 -0
- data/vendored/puppet/lib/puppet/provider/user/directoryservice.rb +632 -0
- data/vendored/puppet/lib/puppet/provider/user/hpux.rb +95 -0
- data/vendored/puppet/lib/puppet/provider/user/ldap.rb +128 -0
- data/vendored/puppet/lib/puppet/provider/user/openbsd.rb +76 -0
- data/vendored/puppet/lib/puppet/provider/user/pw.rb +98 -0
- data/vendored/puppet/lib/puppet/provider/user/user_role_add.rb +233 -0
- data/vendored/puppet/lib/puppet/provider/user/useradd.rb +265 -0
- data/vendored/puppet/lib/puppet/provider/user/windows_adsi.rb +148 -0
- data/vendored/puppet/lib/puppet/provider/vlan/cisco.rb +28 -0
- data/vendored/puppet/lib/puppet/provider/yumrepo/inifile.rb +303 -0
- data/vendored/puppet/lib/puppet/provider/zfs/zfs.rb +108 -0
- data/vendored/puppet/lib/puppet/provider/zone/solaris.rb +364 -0
- data/vendored/puppet/lib/puppet/provider/zpool/zpool.rb +125 -0
- data/vendored/puppet/lib/puppet/reference/configuration.rb +86 -0
- data/vendored/puppet/lib/puppet/reference/function.rb +17 -0
- data/vendored/puppet/lib/puppet/reference/indirection.rb +71 -0
- data/vendored/puppet/lib/puppet/reference/metaparameter.rb +35 -0
- data/vendored/puppet/lib/puppet/reference/providers.rb +118 -0
- data/vendored/puppet/lib/puppet/reference/report.rb +20 -0
- data/vendored/puppet/lib/puppet/reference/type.rb +113 -0
- data/vendored/puppet/lib/puppet/relationship.rb +89 -0
- data/vendored/puppet/lib/puppet/reports.rb +93 -0
- data/vendored/puppet/lib/puppet/reports/http.rb +37 -0
- data/vendored/puppet/lib/puppet/reports/log.rb +14 -0
- data/vendored/puppet/lib/puppet/reports/store.rb +68 -0
- data/vendored/puppet/lib/puppet/resource.rb +670 -0
- data/vendored/puppet/lib/puppet/resource/capability_finder.rb +150 -0
- data/vendored/puppet/lib/puppet/resource/catalog.rb +682 -0
- data/vendored/puppet/lib/puppet/resource/status.rb +227 -0
- data/vendored/puppet/lib/puppet/resource/type.rb +524 -0
- data/vendored/puppet/lib/puppet/resource/type_collection.rb +263 -0
- data/vendored/puppet/lib/puppet/scheduler.rb +16 -0
- data/vendored/puppet/lib/puppet/scheduler/job.rb +53 -0
- data/vendored/puppet/lib/puppet/scheduler/scheduler.rb +44 -0
- data/vendored/puppet/lib/puppet/scheduler/splay_job.rb +32 -0
- data/vendored/puppet/lib/puppet/scheduler/timer.rb +13 -0
- data/vendored/puppet/lib/puppet/settings.rb +1475 -0
- data/vendored/puppet/lib/puppet/settings/array_setting.rb +17 -0
- data/vendored/puppet/lib/puppet/settings/autosign_setting.rb +22 -0
- data/vendored/puppet/lib/puppet/settings/base_setting.rb +197 -0
- data/vendored/puppet/lib/puppet/settings/boolean_setting.rb +32 -0
- data/vendored/puppet/lib/puppet/settings/certificate_revocation_setting.rb +21 -0
- data/vendored/puppet/lib/puppet/settings/config_file.rb +153 -0
- data/vendored/puppet/lib/puppet/settings/directory_setting.rb +18 -0
- data/vendored/puppet/lib/puppet/settings/duration_setting.rb +32 -0
- data/vendored/puppet/lib/puppet/settings/enum_setting.rb +16 -0
- data/vendored/puppet/lib/puppet/settings/environment_conf.rb +213 -0
- data/vendored/puppet/lib/puppet/settings/errors.rb +11 -0
- data/vendored/puppet/lib/puppet/settings/file_or_directory_setting.rb +40 -0
- data/vendored/puppet/lib/puppet/settings/file_setting.rb +245 -0
- data/vendored/puppet/lib/puppet/settings/ini_file.rb +225 -0
- data/vendored/puppet/lib/puppet/settings/path_setting.rb +8 -0
- data/vendored/puppet/lib/puppet/settings/priority_setting.rb +42 -0
- data/vendored/puppet/lib/puppet/settings/server_list_setting.rb +20 -0
- data/vendored/puppet/lib/puppet/settings/string_setting.rb +9 -0
- data/vendored/puppet/lib/puppet/settings/symbolic_enum_setting.rb +17 -0
- data/vendored/puppet/lib/puppet/settings/terminus_setting.rb +14 -0
- data/vendored/puppet/lib/puppet/settings/ttl_setting.rb +51 -0
- data/vendored/puppet/lib/puppet/settings/value_translator.rb +15 -0
- data/vendored/puppet/lib/puppet/ssl.rb +13 -0
- data/vendored/puppet/lib/puppet/ssl/base.rb +158 -0
- data/vendored/puppet/lib/puppet/ssl/certificate.rb +95 -0
- data/vendored/puppet/lib/puppet/ssl/certificate_authority.rb +553 -0
- data/vendored/puppet/lib/puppet/ssl/certificate_authority/autosign_command.rb +45 -0
- data/vendored/puppet/lib/puppet/ssl/certificate_authority/interface.rb +324 -0
- data/vendored/puppet/lib/puppet/ssl/certificate_factory.rb +219 -0
- data/vendored/puppet/lib/puppet/ssl/certificate_request.rb +325 -0
- data/vendored/puppet/lib/puppet/ssl/certificate_request_attributes.rb +37 -0
- data/vendored/puppet/lib/puppet/ssl/certificate_revocation_list.rb +111 -0
- data/vendored/puppet/lib/puppet/ssl/certificate_signer.rb +33 -0
- data/vendored/puppet/lib/puppet/ssl/configuration.rb +61 -0
- data/vendored/puppet/lib/puppet/ssl/digest.rb +20 -0
- data/vendored/puppet/lib/puppet/ssl/host.rb +400 -0
- data/vendored/puppet/lib/puppet/ssl/inventory.rb +55 -0
- data/vendored/puppet/lib/puppet/ssl/key.rb +63 -0
- data/vendored/puppet/lib/puppet/ssl/oids.rb +193 -0
- data/vendored/puppet/lib/puppet/ssl/validator.rb +60 -0
- data/vendored/puppet/lib/puppet/ssl/validator/default_validator.rb +173 -0
- data/vendored/puppet/lib/puppet/ssl/validator/no_validator.rb +20 -0
- data/vendored/puppet/lib/puppet/status.rb +40 -0
- data/vendored/puppet/lib/puppet/syntax_checkers.rb +3 -0
- data/vendored/puppet/lib/puppet/syntax_checkers/base64.rb +40 -0
- data/vendored/puppet/lib/puppet/syntax_checkers/json.rb +35 -0
- data/vendored/puppet/lib/puppet/test/test_helper.rb +252 -0
- data/vendored/puppet/lib/puppet/transaction.rb +444 -0
- data/vendored/puppet/lib/puppet/transaction/additional_resource_generator.rb +220 -0
- data/vendored/puppet/lib/puppet/transaction/event.rb +144 -0
- data/vendored/puppet/lib/puppet/transaction/event_manager.rb +167 -0
- data/vendored/puppet/lib/puppet/transaction/persistence.rb +99 -0
- data/vendored/puppet/lib/puppet/transaction/report.rb +468 -0
- data/vendored/puppet/lib/puppet/transaction/resource_harness.rb +318 -0
- data/vendored/puppet/lib/puppet/type.rb +2665 -0
- data/vendored/puppet/lib/puppet/type/augeas.rb +211 -0
- data/vendored/puppet/lib/puppet/type/component.rb +88 -0
- data/vendored/puppet/lib/puppet/type/computer.rb +66 -0
- data/vendored/puppet/lib/puppet/type/cron.rb +480 -0
- data/vendored/puppet/lib/puppet/type/exec.rb +623 -0
- data/vendored/puppet/lib/puppet/type/file.rb +1039 -0
- data/vendored/puppet/lib/puppet/type/file/checksum.rb +50 -0
- data/vendored/puppet/lib/puppet/type/file/checksum_value.rb +54 -0
- data/vendored/puppet/lib/puppet/type/file/content.rb +160 -0
- data/vendored/puppet/lib/puppet/type/file/ctime.rb +20 -0
- data/vendored/puppet/lib/puppet/type/file/data_sync.rb +93 -0
- data/vendored/puppet/lib/puppet/type/file/ensure.rb +192 -0
- data/vendored/puppet/lib/puppet/type/file/group.rb +41 -0
- data/vendored/puppet/lib/puppet/type/file/mode.rb +177 -0
- data/vendored/puppet/lib/puppet/type/file/mtime.rb +18 -0
- data/vendored/puppet/lib/puppet/type/file/owner.rb +44 -0
- data/vendored/puppet/lib/puppet/type/file/selcontext.rb +141 -0
- data/vendored/puppet/lib/puppet/type/file/source.rb +356 -0
- data/vendored/puppet/lib/puppet/type/file/target.rb +87 -0
- data/vendored/puppet/lib/puppet/type/file/type.rb +19 -0
- data/vendored/puppet/lib/puppet/type/filebucket.rb +117 -0
- data/vendored/puppet/lib/puppet/type/group.rb +209 -0
- data/vendored/puppet/lib/puppet/type/host.rb +95 -0
- data/vendored/puppet/lib/puppet/type/interface.rb +121 -0
- data/vendored/puppet/lib/puppet/type/k5login.rb +165 -0
- data/vendored/puppet/lib/puppet/type/macauthorization.rb +167 -0
- data/vendored/puppet/lib/puppet/type/mailalias.rb +46 -0
- data/vendored/puppet/lib/puppet/type/maillist.rb +62 -0
- data/vendored/puppet/lib/puppet/type/mcx.rb +98 -0
- data/vendored/puppet/lib/puppet/type/mount.rb +314 -0
- data/vendored/puppet/lib/puppet/type/nagios_command.rb +3 -0
- data/vendored/puppet/lib/puppet/type/nagios_contact.rb +3 -0
- data/vendored/puppet/lib/puppet/type/nagios_contactgroup.rb +3 -0
- data/vendored/puppet/lib/puppet/type/nagios_host.rb +3 -0
- data/vendored/puppet/lib/puppet/type/nagios_hostdependency.rb +3 -0
- data/vendored/puppet/lib/puppet/type/nagios_hostescalation.rb +3 -0
- data/vendored/puppet/lib/puppet/type/nagios_hostextinfo.rb +3 -0
- data/vendored/puppet/lib/puppet/type/nagios_hostgroup.rb +3 -0
- data/vendored/puppet/lib/puppet/type/nagios_service.rb +3 -0
- data/vendored/puppet/lib/puppet/type/nagios_servicedependency.rb +3 -0
- data/vendored/puppet/lib/puppet/type/nagios_serviceescalation.rb +3 -0
- data/vendored/puppet/lib/puppet/type/nagios_serviceextinfo.rb +3 -0
- data/vendored/puppet/lib/puppet/type/nagios_servicegroup.rb +3 -0
- data/vendored/puppet/lib/puppet/type/nagios_timeperiod.rb +3 -0
- data/vendored/puppet/lib/puppet/type/notify.rb +46 -0
- data/vendored/puppet/lib/puppet/type/package.rb +571 -0
- data/vendored/puppet/lib/puppet/type/resources.rb +180 -0
- data/vendored/puppet/lib/puppet/type/router.rb +17 -0
- data/vendored/puppet/lib/puppet/type/schedule.rb +481 -0
- data/vendored/puppet/lib/puppet/type/scheduled_task.rb +183 -0
- data/vendored/puppet/lib/puppet/type/selboolean.rb +26 -0
- data/vendored/puppet/lib/puppet/type/selmodule.rb +59 -0
- data/vendored/puppet/lib/puppet/type/service.rb +258 -0
- data/vendored/puppet/lib/puppet/type/ssh_authorized_key.rb +143 -0
- data/vendored/puppet/lib/puppet/type/sshkey.rb +83 -0
- data/vendored/puppet/lib/puppet/type/stage.rb +27 -0
- data/vendored/puppet/lib/puppet/type/tidy.rb +345 -0
- data/vendored/puppet/lib/puppet/type/user.rb +794 -0
- data/vendored/puppet/lib/puppet/type/vlan.rb +26 -0
- data/vendored/puppet/lib/puppet/type/whit.rb +34 -0
- data/vendored/puppet/lib/puppet/type/yumrepo.rb +439 -0
- data/vendored/puppet/lib/puppet/type/zfs.rb +154 -0
- data/vendored/puppet/lib/puppet/type/zone.rb +382 -0
- data/vendored/puppet/lib/puppet/type/zpool.rb +91 -0
- data/vendored/puppet/lib/puppet/util.rb +700 -0
- data/vendored/puppet/lib/puppet/util/at_fork.rb +35 -0
- data/vendored/puppet/lib/puppet/util/at_fork/noop.rb +18 -0
- data/vendored/puppet/lib/puppet/util/at_fork/solaris.rb +160 -0
- data/vendored/puppet/lib/puppet/util/autoload.rb +226 -0
- data/vendored/puppet/lib/puppet/util/backups.rb +86 -0
- data/vendored/puppet/lib/puppet/util/character_encoding.rb +98 -0
- data/vendored/puppet/lib/puppet/util/checksums.rb +363 -0
- data/vendored/puppet/lib/puppet/util/classgen.rb +228 -0
- data/vendored/puppet/lib/puppet/util/colors.rb +100 -0
- data/vendored/puppet/lib/puppet/util/command_line.rb +190 -0
- data/vendored/puppet/lib/puppet/util/command_line/puppet_option_parser.rb +87 -0
- data/vendored/puppet/lib/puppet/util/command_line/trollop.rb +825 -0
- data/vendored/puppet/lib/puppet/util/constant_inflector.rb +24 -0
- data/vendored/puppet/lib/puppet/util/diff.rb +79 -0
- data/vendored/puppet/lib/puppet/util/docs.rb +128 -0
- data/vendored/puppet/lib/puppet/util/errors.rb +159 -0
- data/vendored/puppet/lib/puppet/util/execution.rb +412 -0
- data/vendored/puppet/lib/puppet/util/execution_stub.rb +26 -0
- data/vendored/puppet/lib/puppet/util/feature.rb +95 -0
- data/vendored/puppet/lib/puppet/util/file_watcher.rb +28 -0
- data/vendored/puppet/lib/puppet/util/fileparsing.rb +375 -0
- data/vendored/puppet/lib/puppet/util/filetype.rb +309 -0
- data/vendored/puppet/lib/puppet/util/http_proxy.rb +207 -0
- data/vendored/puppet/lib/puppet/util/inifile.rb +340 -0
- data/vendored/puppet/lib/puppet/util/instance_loader.rb +79 -0
- data/vendored/puppet/lib/puppet/util/json_lockfile.rb +44 -0
- data/vendored/puppet/lib/puppet/util/ldap.rb +2 -0
- data/vendored/puppet/lib/puppet/util/ldap/connection.rb +71 -0
- data/vendored/puppet/lib/puppet/util/ldap/generator.rb +42 -0
- data/vendored/puppet/lib/puppet/util/ldap/manager.rb +281 -0
- data/vendored/puppet/lib/puppet/util/libuser.rb +12 -0
- data/vendored/puppet/lib/puppet/util/limits.rb +12 -0
- data/vendored/puppet/lib/puppet/util/lockfile.rb +66 -0
- data/vendored/puppet/lib/puppet/util/log.rb +415 -0
- data/vendored/puppet/lib/puppet/util/log/destination.rb +49 -0
- data/vendored/puppet/lib/puppet/util/log/destinations.rb +258 -0
- data/vendored/puppet/lib/puppet/util/logging.rb +311 -0
- data/vendored/puppet/lib/puppet/util/metaid.rb +21 -0
- data/vendored/puppet/lib/puppet/util/methodhelper.rb +32 -0
- data/vendored/puppet/lib/puppet/util/metric.rb +64 -0
- data/vendored/puppet/lib/puppet/util/monkey_patches.rb +108 -0
- data/vendored/puppet/lib/puppet/util/multi_match.rb +51 -0
- data/vendored/puppet/lib/puppet/util/nagios_maker.rb +85 -0
- data/vendored/puppet/lib/puppet/util/network_device.rb +17 -0
- data/vendored/puppet/lib/puppet/util/network_device/base.rb +23 -0
- data/vendored/puppet/lib/puppet/util/network_device/cisco.rb +4 -0
- data/vendored/puppet/lib/puppet/util/network_device/cisco/device.rb +285 -0
- data/vendored/puppet/lib/puppet/util/network_device/cisco/facts.rb +72 -0
- data/vendored/puppet/lib/puppet/util/network_device/cisco/interface.rb +94 -0
- data/vendored/puppet/lib/puppet/util/network_device/config.rb +105 -0
- data/vendored/puppet/lib/puppet/util/network_device/ipcalc.rb +68 -0
- data/vendored/puppet/lib/puppet/util/network_device/transport.rb +5 -0
- data/vendored/puppet/lib/puppet/util/network_device/transport/base.rb +26 -0
- data/vendored/puppet/lib/puppet/util/network_device/transport/ssh.rb +126 -0
- data/vendored/puppet/lib/puppet/util/network_device/transport/telnet.rb +47 -0
- data/vendored/puppet/lib/puppet/util/package.rb +31 -0
- data/vendored/puppet/lib/puppet/util/pidlock.rb +62 -0
- data/vendored/puppet/lib/puppet/util/platform.rb +35 -0
- data/vendored/puppet/lib/puppet/util/plist.rb +155 -0
- data/vendored/puppet/lib/puppet/util/posix.rb +137 -0
- data/vendored/puppet/lib/puppet/util/profiler.rb +53 -0
- data/vendored/puppet/lib/puppet/util/profiler/aggregate.rb +85 -0
- data/vendored/puppet/lib/puppet/util/profiler/around_profiler.rb +67 -0
- data/vendored/puppet/lib/puppet/util/profiler/logging.rb +48 -0
- data/vendored/puppet/lib/puppet/util/profiler/object_counts.rb +17 -0
- data/vendored/puppet/lib/puppet/util/profiler/wall_clock.rb +35 -0
- data/vendored/puppet/lib/puppet/util/provider_features.rb +184 -0
- data/vendored/puppet/lib/puppet/util/psych_support.rb +30 -0
- data/vendored/puppet/lib/puppet/util/rdoc.rb +60 -0
- data/vendored/puppet/lib/puppet/util/rdoc/code_objects.rb +294 -0
- data/vendored/puppet/lib/puppet/util/rdoc/generators/puppet_generator.rb +910 -0
- data/vendored/puppet/lib/puppet/util/rdoc/generators/template/puppet/puppet.rb +1085 -0
- data/vendored/puppet/lib/puppet/util/rdoc/parser.rb +12 -0
- data/vendored/puppet/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +259 -0
- data/vendored/puppet/lib/puppet/util/rdoc/parser/puppet_parser_rdoc2.rb +14 -0
- data/vendored/puppet/lib/puppet/util/reference.rb +118 -0
- data/vendored/puppet/lib/puppet/util/resource_template.rb +61 -0
- data/vendored/puppet/lib/puppet/util/retry_action.rb +46 -0
- data/vendored/puppet/lib/puppet/util/rubygems.rb +75 -0
- data/vendored/puppet/lib/puppet/util/run_mode.rb +110 -0
- data/vendored/puppet/lib/puppet/util/selinux.rb +264 -0
- data/vendored/puppet/lib/puppet/util/skip_tags.rb +9 -0
- data/vendored/puppet/lib/puppet/util/splayer.rb +18 -0
- data/vendored/puppet/lib/puppet/util/ssl.rb +53 -0
- data/vendored/puppet/lib/puppet/util/storage.rb +89 -0
- data/vendored/puppet/lib/puppet/util/suidmanager.rb +165 -0
- data/vendored/puppet/lib/puppet/util/symbolic_file_mode.rb +144 -0
- data/vendored/puppet/lib/puppet/util/tag_set.rb +27 -0
- data/vendored/puppet/lib/puppet/util/tagging.rb +118 -0
- data/vendored/puppet/lib/puppet/util/terminal.rb +16 -0
- data/vendored/puppet/lib/puppet/util/user_attr.rb +21 -0
- data/vendored/puppet/lib/puppet/util/warnings.rb +31 -0
- data/vendored/puppet/lib/puppet/util/watched_file.rb +37 -0
- data/vendored/puppet/lib/puppet/util/watcher.rb +17 -0
- data/vendored/puppet/lib/puppet/util/watcher/change_watcher.rb +33 -0
- data/vendored/puppet/lib/puppet/util/watcher/periodic_watcher.rb +37 -0
- data/vendored/puppet/lib/puppet/util/watcher/timer.rb +19 -0
- data/vendored/puppet/lib/puppet/util/windows.rb +35 -0
- data/vendored/puppet/lib/puppet/util/windows/access_control_entry.rb +84 -0
- data/vendored/puppet/lib/puppet/util/windows/access_control_list.rb +113 -0
- data/vendored/puppet/lib/puppet/util/windows/adsi.rb +545 -0
- data/vendored/puppet/lib/puppet/util/windows/api_types.rb +282 -0
- data/vendored/puppet/lib/puppet/util/windows/com.rb +225 -0
- data/vendored/puppet/lib/puppet/util/windows/error.rb +83 -0
- data/vendored/puppet/lib/puppet/util/windows/eventlog.rb +197 -0
- data/vendored/puppet/lib/puppet/util/windows/file.rb +571 -0
- data/vendored/puppet/lib/puppet/util/windows/principal.rb +192 -0
- data/vendored/puppet/lib/puppet/util/windows/process.rb +497 -0
- data/vendored/puppet/lib/puppet/util/windows/registry.rb +374 -0
- data/vendored/puppet/lib/puppet/util/windows/root_certs.rb +108 -0
- data/vendored/puppet/lib/puppet/util/windows/security.rb +857 -0
- data/vendored/puppet/lib/puppet/util/windows/security_descriptor.rb +62 -0
- data/vendored/puppet/lib/puppet/util/windows/sid.rb +282 -0
- data/vendored/puppet/lib/puppet/util/windows/string.rb +16 -0
- data/vendored/puppet/lib/puppet/util/windows/taskscheduler.rb +1267 -0
- data/vendored/puppet/lib/puppet/util/windows/user.rb +309 -0
- data/vendored/puppet/lib/puppet/util/yaml.rb +36 -0
- data/vendored/puppet/lib/puppet/vendor.rb +57 -0
- data/vendored/puppet/lib/puppet/vendor/deep_merge/lib/deep_merge.rb +2 -0
- data/vendored/puppet/lib/puppet/vendor/deep_merge/lib/deep_merge/core.rb +210 -0
- data/vendored/puppet/lib/puppet/vendor/deep_merge/lib/deep_merge/deep_merge_hash.rb +28 -0
- data/vendored/puppet/lib/puppet/vendor/deep_merge/lib/deep_merge/rails_compat.rb +27 -0
- data/vendored/puppet/lib/puppet/vendor/deep_merge/test/test_deep_merge.rb +608 -0
- data/vendored/puppet/lib/puppet/vendor/load_deep_merge.rb +1 -0
- data/vendored/puppet/lib/puppet/vendor/load_pathspec.rb +1 -0
- data/vendored/puppet/lib/puppet/vendor/load_semantic.rb +1 -0
- data/vendored/puppet/lib/puppet/vendor/load_semantic_puppet.rb +1 -0
- data/vendored/puppet/lib/puppet/vendor/pathspec/lib/pathspec.rb +122 -0
- data/vendored/puppet/lib/puppet/vendor/pathspec/lib/pathspec/gitignorespec.rb +275 -0
- data/vendored/puppet/lib/puppet/vendor/pathspec/lib/pathspec/regexspec.rb +17 -0
- data/vendored/puppet/lib/puppet/vendor/pathspec/lib/pathspec/spec.rb +14 -0
- data/vendored/puppet/lib/puppet/vendor/require_vendored.rb +6 -0
- data/vendored/puppet/lib/puppet/vendor/semantic/lib/semantic.rb +5 -0
- data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet.rb +11 -0
- data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency.rb +181 -0
- data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/graph.rb +60 -0
- data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/graph_node.rb +117 -0
- data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/module_release.rb +58 -0
- data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/source.rb +25 -0
- data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/unsatisfiable_graph.rb +31 -0
- data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/gem_version.rb +3 -0
- data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version.rb +203 -0
- data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version_range.rb +758 -0
- data/vendored/puppet/lib/puppet/version.rb +93 -0
- data/vendored/puppet/lib/puppet_pal.rb +879 -0
- data/vendored/puppet/lib/puppet_x.rb +14 -0
- metadata +1237 -2
@@ -0,0 +1,24 @@
|
|
1
|
+
# Created on 2008-02-12
|
2
|
+
# Copyright Luke Kanies
|
3
|
+
|
4
|
+
# NOTE: I think it might be worth considering moving these methods directly into Puppet::Util.
|
5
|
+
|
6
|
+
# A common module for converting between constants and
|
7
|
+
# file names.
|
8
|
+
|
9
|
+
|
10
|
+
module Puppet
|
11
|
+
module Util
|
12
|
+
module ConstantInflector
|
13
|
+
def file2constant(file)
|
14
|
+
file.split("/").collect { |name| name.capitalize }.join("::").gsub(/_+(.)/) { |term| $1.capitalize }
|
15
|
+
end
|
16
|
+
module_function :file2constant
|
17
|
+
|
18
|
+
def constant2file(constant)
|
19
|
+
constant.to_s.gsub(/([a-z])([A-Z])/) { |term| $1 + "_#{$2}" }.gsub("::", "/").downcase
|
20
|
+
end
|
21
|
+
module_function :constant2file
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,79 @@
|
|
1
|
+
require 'tempfile'
|
2
|
+
|
3
|
+
# Provide a diff between two strings.
|
4
|
+
module Puppet::Util::Diff
|
5
|
+
include Puppet::Util::Execution
|
6
|
+
require 'tempfile'
|
7
|
+
|
8
|
+
def diff(old, new)
|
9
|
+
return '' unless diff_cmd = Puppet[:diff] and diff_cmd != ""
|
10
|
+
|
11
|
+
command = [diff_cmd]
|
12
|
+
if args = Puppet[:diff_args] and args != ""
|
13
|
+
args.split(' ').each do|arg|
|
14
|
+
command << arg
|
15
|
+
end
|
16
|
+
end
|
17
|
+
command << old << new
|
18
|
+
Puppet::Util::Execution.execute(command, :failonfail => false, :combine => false)
|
19
|
+
end
|
20
|
+
|
21
|
+
module_function :diff
|
22
|
+
|
23
|
+
# return diff string of two input strings
|
24
|
+
# format defaults to unified
|
25
|
+
# context defaults to 3 lines
|
26
|
+
def lcs_diff(data_old, data_new, format=:unified, context_lines=3)
|
27
|
+
unless Puppet.features.diff?
|
28
|
+
Puppet.warning _("Cannot provide diff without the diff/lcs Ruby library")
|
29
|
+
return ""
|
30
|
+
end
|
31
|
+
data_old = data_old.split(/\n/).map! { |e| e.chomp }
|
32
|
+
data_new = data_new.split(/\n/).map! { |e| e.chomp }
|
33
|
+
|
34
|
+
output = ""
|
35
|
+
|
36
|
+
diffs = ::Diff::LCS.diff(data_old, data_new)
|
37
|
+
return output if diffs.empty?
|
38
|
+
|
39
|
+
oldhunk = hunk = nil
|
40
|
+
file_length_difference = 0
|
41
|
+
|
42
|
+
diffs.each do |piece|
|
43
|
+
begin
|
44
|
+
|
45
|
+
hunk = ::Diff::LCS::Hunk.new(
|
46
|
+
data_old, data_new, piece,
|
47
|
+
context_lines,
|
48
|
+
|
49
|
+
file_length_difference)
|
50
|
+
file_length_difference = hunk.file_length_difference
|
51
|
+
next unless oldhunk
|
52
|
+
# Hunks may overlap, which is why we need to be careful when our
|
53
|
+
# diff includes lines of context. Otherwise, we might print
|
54
|
+
# redundant lines.
|
55
|
+
if (context_lines > 0) and hunk.overlaps?(oldhunk)
|
56
|
+
hunk.unshift(oldhunk)
|
57
|
+
else
|
58
|
+
output << oldhunk.diff(format)
|
59
|
+
end
|
60
|
+
ensure
|
61
|
+
oldhunk = hunk
|
62
|
+
output << "\n"
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
# Handle the last remaining hunk
|
67
|
+
output << oldhunk.diff(format) << "\n"
|
68
|
+
end
|
69
|
+
|
70
|
+
def string_file_diff(path, string)
|
71
|
+
tempfile = Tempfile.new("puppet-diffing")
|
72
|
+
tempfile.open
|
73
|
+
tempfile.print string
|
74
|
+
tempfile.close
|
75
|
+
notice "\n" + diff(path, tempfile.path)
|
76
|
+
tempfile.delete
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
@@ -0,0 +1,128 @@
|
|
1
|
+
# Some simple methods for helping manage automatic documentation generation.
|
2
|
+
module Puppet::Util::Docs
|
3
|
+
# Specify the actual doc string.
|
4
|
+
def desc(str)
|
5
|
+
@doc = str
|
6
|
+
end
|
7
|
+
|
8
|
+
# Add a new autodoc block. We have to define these as class methods,
|
9
|
+
# rather than just sticking them in a hash, because otherwise they're
|
10
|
+
# too difficult to do inheritance with.
|
11
|
+
def dochook(name, &block)
|
12
|
+
method = "dochook_#{name}"
|
13
|
+
|
14
|
+
meta_def method, &block
|
15
|
+
end
|
16
|
+
|
17
|
+
attr_writer :doc
|
18
|
+
|
19
|
+
# Generate the full doc string.
|
20
|
+
def doc
|
21
|
+
extra = methods.find_all { |m| m.to_s =~ /^dochook_.+/ }.sort.collect { |m|
|
22
|
+
self.send(m)
|
23
|
+
}.delete_if {|r| r.nil? }.collect {|r| "* #{r}"}.join("\n")
|
24
|
+
|
25
|
+
if @doc
|
26
|
+
scrub(@doc) + (extra.empty? ? '' : "\n\n#{extra}")
|
27
|
+
else
|
28
|
+
extra
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
# Build a table
|
33
|
+
def doctable(headers, data)
|
34
|
+
str = "\n\n"
|
35
|
+
|
36
|
+
lengths = []
|
37
|
+
# Figure out the longest field for all columns
|
38
|
+
data.each do |name, values|
|
39
|
+
[name, values].flatten.each_with_index do |value, i|
|
40
|
+
lengths[i] ||= 0
|
41
|
+
lengths[i] = value.to_s.length if value.to_s.length > lengths[i]
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
# The headers could also be longest
|
46
|
+
headers.each_with_index do |value, i|
|
47
|
+
lengths[i] = value.to_s.length if value.to_s.length > lengths[i]
|
48
|
+
end
|
49
|
+
|
50
|
+
# Add the header names
|
51
|
+
str += headers.zip(lengths).collect { |value, num| pad(value, num) }.join(" | ") + " |" + "\n"
|
52
|
+
|
53
|
+
# And the header row
|
54
|
+
str += lengths.collect { |num| "-" * num }.join(" | ") + " |" + "\n"
|
55
|
+
|
56
|
+
# Now each data row
|
57
|
+
data.sort { |a, b| a[0].to_s <=> b[0].to_s }.each do |name, rows|
|
58
|
+
str += [name, rows].flatten.zip(lengths).collect do |value, length|
|
59
|
+
pad(value, length)
|
60
|
+
end.join(" | ") + " |" + "\n"
|
61
|
+
end
|
62
|
+
|
63
|
+
str + "\n"
|
64
|
+
end
|
65
|
+
|
66
|
+
# There is nothing that would ever set this. It gets read in reference/type.rb, but will never have any value but nil.
|
67
|
+
attr_reader :nodoc
|
68
|
+
def nodoc?
|
69
|
+
nodoc
|
70
|
+
end
|
71
|
+
|
72
|
+
# Pad a field with spaces
|
73
|
+
def pad(value, length)
|
74
|
+
value.to_s + (" " * (length - value.to_s.length))
|
75
|
+
end
|
76
|
+
|
77
|
+
HEADER_LEVELS = [nil, "#", "##", "###", "####", "#####"]
|
78
|
+
|
79
|
+
def markdown_header(name, level)
|
80
|
+
"#{HEADER_LEVELS[level]} #{name}\n\n"
|
81
|
+
end
|
82
|
+
|
83
|
+
def markdown_definitionlist(term, definition)
|
84
|
+
lines = scrub(definition).split("\n")
|
85
|
+
str = "#{term}\n: #{lines.shift}\n"
|
86
|
+
lines.each do |line|
|
87
|
+
str << " " if line =~ /\S/
|
88
|
+
str << "#{line}\n"
|
89
|
+
end
|
90
|
+
str << "\n"
|
91
|
+
end
|
92
|
+
|
93
|
+
# Strip indentation and trailing whitespace from embedded doc fragments.
|
94
|
+
#
|
95
|
+
# Multi-line doc fragments are sometimes indented in order to preserve the
|
96
|
+
# formatting of the code they're embedded in. Since indents are syntactic
|
97
|
+
# elements in Markdown, we need to make sure we remove any indent that was
|
98
|
+
# added solely to preserve surrounding code formatting, but LEAVE any indent
|
99
|
+
# that delineates a Markdown element (code blocks, multi-line bulleted list
|
100
|
+
# items). We can do this by removing the *least common indent* from each line.
|
101
|
+
#
|
102
|
+
# Least common indent is defined as follows:
|
103
|
+
#
|
104
|
+
# * Find the smallest amount of leading space on any line...
|
105
|
+
# * ...excluding the first line (which may have zero indent without affecting
|
106
|
+
# the common indent)...
|
107
|
+
# * ...and excluding lines that consist solely of whitespace.
|
108
|
+
# * The least common indent may be a zero-length string, if the fragment is
|
109
|
+
# not indented to match code.
|
110
|
+
# * If there are hard tabs for some dumb reason, we assume they're at least
|
111
|
+
# consistent within this doc fragment.
|
112
|
+
#
|
113
|
+
# See tests in spec/unit/util/docs_spec.rb for examples.
|
114
|
+
def scrub(text)
|
115
|
+
# One-liners are easy! (One-liners may be buffered with extra newlines.)
|
116
|
+
return text.strip if text.strip !~ /\n/
|
117
|
+
excluding_first_line = text.partition("\n").last
|
118
|
+
indent = excluding_first_line.scan(/^[ \t]*(?=\S)/).min || '' # prevent nil
|
119
|
+
# Clean hanging indent, if any
|
120
|
+
if indent.length > 0
|
121
|
+
text = text.gsub(/^#{indent}/, '')
|
122
|
+
end
|
123
|
+
# Clean trailing space
|
124
|
+
text.lines.map{|line|line.rstrip}.join("\n").rstrip
|
125
|
+
end
|
126
|
+
|
127
|
+
module_function :scrub
|
128
|
+
end
|
@@ -0,0 +1,159 @@
|
|
1
|
+
# Some helper methods for throwing and populating errors.
|
2
|
+
#
|
3
|
+
# @api public
|
4
|
+
module Puppet::Util::Errors
|
5
|
+
# Throw a Puppet::DevError with the specified message. Used for unknown or
|
6
|
+
# internal application failures.
|
7
|
+
#
|
8
|
+
# @param msg [String] message used in raised error
|
9
|
+
# @raise [Puppet::DevError] always raised with the supplied message
|
10
|
+
def devfail(msg)
|
11
|
+
self.fail(Puppet::DevError, msg)
|
12
|
+
end
|
13
|
+
|
14
|
+
# Add line and file info to the supplied exception if info is available from
|
15
|
+
# this object, is appropriately populated and the supplied exception supports
|
16
|
+
# it. When other is supplied, the backtrace will be copied to the error
|
17
|
+
# object and the 'original' will be dropped from the error.
|
18
|
+
#
|
19
|
+
# @param error [Exception] exception that is populated with info
|
20
|
+
# @param other [Exception] original exception, source of backtrace info
|
21
|
+
# @return [Exception] error parameter
|
22
|
+
def adderrorcontext(error, other = nil)
|
23
|
+
error.line ||= self.line if error.respond_to?(:line=) and self.respond_to?(:line) and self.line
|
24
|
+
error.file ||= self.file if error.respond_to?(:file=) and self.respond_to?(:file) and self.file
|
25
|
+
error.original ||= other if error.respond_to?(:original=)
|
26
|
+
|
27
|
+
error.set_backtrace(other.backtrace) if other and other.respond_to?(:backtrace)
|
28
|
+
# It is not meaningful to keep the wrapped exception since its backtrace has already
|
29
|
+
# been adopted by the error. (The instance variable is private for good reasons).
|
30
|
+
error.instance_variable_set(:@original, nil)
|
31
|
+
error
|
32
|
+
end
|
33
|
+
|
34
|
+
# Return a human-readable string of this object's file, line, and pos attributes,
|
35
|
+
# if set.
|
36
|
+
#
|
37
|
+
# @param file [String] the file path for the error (nil or "", for not known)
|
38
|
+
# @param line [String] the line number for the error (nil or "", for not known)
|
39
|
+
# @param column [String] the column number for the error (nil or "", for not known)
|
40
|
+
# @return [String] description of file, line, and column
|
41
|
+
#
|
42
|
+
def self.error_location(file, line=nil, column=nil)
|
43
|
+
file = nil if (file.is_a?(String) && file.empty?)
|
44
|
+
line = nil if (line.is_a?(String) && line.empty?)
|
45
|
+
column = nil if (column.is_a?(String) && column.empty?)
|
46
|
+
if file and line and column
|
47
|
+
_("(file: %{file}, line: %{line}, column: %{column})") % { file: file, line: line, column: column }
|
48
|
+
elsif file and line
|
49
|
+
_("(file: %{file}, line: %{line})") % { file: file, line: line }
|
50
|
+
elsif line and column
|
51
|
+
_("(line: %{line}, column: %{column})") % { line: line, column: column }
|
52
|
+
elsif line
|
53
|
+
_("(line: %{line})") % { line: line }
|
54
|
+
elsif file
|
55
|
+
_("(file: %{file})") % { file: file }
|
56
|
+
else
|
57
|
+
''
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
# Return a human-readable string of this object's file, line, and pos attributes,
|
62
|
+
# with a proceeding space in the output
|
63
|
+
# if set.
|
64
|
+
#
|
65
|
+
# @param file [String] the file path for the error (nil or "", for not known)
|
66
|
+
# @param line [String] the line number for the error (nil or "", for not known)
|
67
|
+
# @param column [String] the column number for the error (nil or "", for not known)
|
68
|
+
# @return [String] description of file, line, and column
|
69
|
+
#
|
70
|
+
def self.error_location_with_space(file, line=nil, column=nil)
|
71
|
+
error_location_str = error_location(file, line, column)
|
72
|
+
if error_location_str.empty?
|
73
|
+
''
|
74
|
+
else
|
75
|
+
' ' + error_location_str
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
79
|
+
# Return a human-readable string of this object's file and line
|
80
|
+
# where unknown entries are listed as 'unknown'
|
81
|
+
#
|
82
|
+
# @param file [String] the file path for the error (nil or "", for not known)
|
83
|
+
# @param line [String] the line number for the error (nil or "", for not known)
|
84
|
+
# @return [String] description of file, and line
|
85
|
+
def self.error_location_with_unknowns(file, line)
|
86
|
+
file = nil if (file.is_a?(String) && file.empty?)
|
87
|
+
line = nil if (line.is_a?(String) && line.empty?)
|
88
|
+
file = _('unknown') unless file
|
89
|
+
line = _('unknown') unless line
|
90
|
+
error_location(file, line)
|
91
|
+
end
|
92
|
+
|
93
|
+
# Return a human-readable string of this object's file and line attributes,
|
94
|
+
# if set.
|
95
|
+
#
|
96
|
+
# @return [String] description of file and line with a leading space
|
97
|
+
def error_context
|
98
|
+
Puppet::Util::Errors.error_location_with_space(file, line)
|
99
|
+
end
|
100
|
+
|
101
|
+
# Wrap a call in such a way that we always throw the right exception and keep
|
102
|
+
# as much context as possible.
|
103
|
+
#
|
104
|
+
# @param options [Hash<Symbol,Object>] options used to create error
|
105
|
+
# @option options [Class] :type error type to raise, defaults to
|
106
|
+
# Puppet::DevError
|
107
|
+
# @option options [String] :message message to use in error, default mentions
|
108
|
+
# the name of this class
|
109
|
+
# @raise [Puppet::Error] re-raised with extra context if the block raises it
|
110
|
+
# @raise [Error] of type options[:type], when the block raises other
|
111
|
+
# exceptions
|
112
|
+
def exceptwrap(options = {})
|
113
|
+
options[:type] ||= Puppet::DevError
|
114
|
+
begin
|
115
|
+
return yield
|
116
|
+
rescue Puppet::Error => detail
|
117
|
+
raise adderrorcontext(detail)
|
118
|
+
rescue => detail
|
119
|
+
message = options[:message] || _("%{klass} failed with error %{error_type}: %{detail}") % { klass: self.class, error_type: detail.class, detail: detail }
|
120
|
+
|
121
|
+
error = options[:type].new(message)
|
122
|
+
# We can't use self.fail here because it always expects strings,
|
123
|
+
# not exceptions.
|
124
|
+
raise adderrorcontext(error, detail)
|
125
|
+
end
|
126
|
+
|
127
|
+
retval
|
128
|
+
end
|
129
|
+
|
130
|
+
# Throw an error, defaulting to a Puppet::Error.
|
131
|
+
#
|
132
|
+
# @overload fail(message, ..)
|
133
|
+
# Throw a Puppet::Error with a message concatenated from the given
|
134
|
+
# arguments.
|
135
|
+
# @param [String] message error message(s)
|
136
|
+
# @overload fail(error_klass, message, ..)
|
137
|
+
# Throw an exception of type error_klass with a message concatenated from
|
138
|
+
# the given arguments.
|
139
|
+
# @param [Class] type of error
|
140
|
+
# @param [String] message error message(s)
|
141
|
+
# @overload fail(error_klass, message, ..)
|
142
|
+
# Throw an exception of type error_klass with a message concatenated from
|
143
|
+
# the given arguments.
|
144
|
+
# @param [Class] type of error
|
145
|
+
# @param [String] message error message(s)
|
146
|
+
# @param [Exception] original exception, source of backtrace info
|
147
|
+
def fail(*args)
|
148
|
+
if args[0].is_a?(Class)
|
149
|
+
type = args.shift
|
150
|
+
else
|
151
|
+
type = Puppet::Error
|
152
|
+
end
|
153
|
+
|
154
|
+
other = args.count > 1 ? args.pop : nil
|
155
|
+
error = adderrorcontext(type.new(args.join(" ")), other)
|
156
|
+
|
157
|
+
raise error
|
158
|
+
end
|
159
|
+
end
|
@@ -0,0 +1,412 @@
|
|
1
|
+
require 'timeout'
|
2
|
+
require 'puppet/file_system/uniquefile'
|
3
|
+
|
4
|
+
module Puppet
|
5
|
+
require 'rbconfig'
|
6
|
+
|
7
|
+
require 'puppet/error'
|
8
|
+
# A command failed to execute.
|
9
|
+
# @api public
|
10
|
+
class ExecutionFailure < Puppet::Error
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
# This module defines methods for execution of system commands. It is intended for inclusion
|
15
|
+
# in classes that needs to execute system commands.
|
16
|
+
# @api public
|
17
|
+
module Puppet::Util::Execution
|
18
|
+
|
19
|
+
# This is the full output from a process. The object itself (a String) is the
|
20
|
+
# stdout of the process.
|
21
|
+
#
|
22
|
+
# @api public
|
23
|
+
class ProcessOutput < String
|
24
|
+
# @return [Integer] The exit status of the process
|
25
|
+
# @api public
|
26
|
+
attr_reader :exitstatus
|
27
|
+
|
28
|
+
# @api private
|
29
|
+
def initialize(value,exitstatus)
|
30
|
+
super(value)
|
31
|
+
@exitstatus = exitstatus
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
# The command can be a simple string, which is executed as-is, or an Array,
|
36
|
+
# which is treated as a set of command arguments to pass through.
|
37
|
+
#
|
38
|
+
# In either case, the command is passed directly to the shell, STDOUT and
|
39
|
+
# STDERR are connected together, and STDOUT will be streamed to the yielded
|
40
|
+
# pipe.
|
41
|
+
#
|
42
|
+
# @param command [String, Array<String>] the command to execute as one string,
|
43
|
+
# or as parts in an array. The parts of the array are joined with one
|
44
|
+
# separating space between each entry when converting to the command line
|
45
|
+
# string to execute.
|
46
|
+
# @param failonfail [Boolean] (true) if the execution should fail with
|
47
|
+
# Exception on failure or not.
|
48
|
+
# @yield [pipe] to a block executing a subprocess
|
49
|
+
# @yieldparam pipe [IO] the opened pipe
|
50
|
+
# @yieldreturn [String] the output to return
|
51
|
+
# @raise [Puppet::ExecutionFailure] if the executed child process did not
|
52
|
+
# exit with status == 0 and `failonfail` is `true`.
|
53
|
+
# @return [String] a string with the output from the subprocess executed by
|
54
|
+
# the given block
|
55
|
+
#
|
56
|
+
# @see Kernel#open for `mode` values
|
57
|
+
# @api public
|
58
|
+
def self.execpipe(command, failonfail = true)
|
59
|
+
# Paste together an array with spaces. We used to paste directly
|
60
|
+
# together, no spaces, which made for odd invocations; the user had to
|
61
|
+
# include whitespace between arguments.
|
62
|
+
#
|
63
|
+
# Having two spaces is really not a big drama, since this passes to the
|
64
|
+
# shell anyhow, while no spaces makes for a small developer cost every
|
65
|
+
# time this is invoked. --daniel 2012-02-13
|
66
|
+
command_str = command.respond_to?(:join) ? command.join(' ') : command
|
67
|
+
|
68
|
+
if respond_to? :debug
|
69
|
+
debug "Executing '#{command_str}'"
|
70
|
+
else
|
71
|
+
Puppet.debug "Executing '#{command_str}'"
|
72
|
+
end
|
73
|
+
|
74
|
+
# force the run of the command with
|
75
|
+
# the user/system locale to "C" (via environment variables LANG and LC_*)
|
76
|
+
# it enables to have non localized output for some commands and therefore
|
77
|
+
# a predictable output
|
78
|
+
english_env = ENV.to_hash.merge( {'LANG' => 'C', 'LC_ALL' => 'C'} )
|
79
|
+
output = Puppet::Util.withenv(english_env) do
|
80
|
+
open("| #{command_str} 2>&1") do |pipe|
|
81
|
+
yield pipe
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
if failonfail && exitstatus != 0
|
86
|
+
raise Puppet::ExecutionFailure, output.to_s
|
87
|
+
end
|
88
|
+
|
89
|
+
output
|
90
|
+
end
|
91
|
+
|
92
|
+
def self.exitstatus
|
93
|
+
$CHILD_STATUS.exitstatus
|
94
|
+
end
|
95
|
+
private_class_method :exitstatus
|
96
|
+
|
97
|
+
# Wraps execution of {execute} with mapping of exception to given exception (and output as argument).
|
98
|
+
# @raise [exception] under same conditions as {execute}, but raises the given `exception` with the output as argument
|
99
|
+
# @return (see execute)
|
100
|
+
# @api public
|
101
|
+
# @deprecated
|
102
|
+
def self.execfail(command, exception)
|
103
|
+
execute(command)
|
104
|
+
rescue Puppet::ExecutionFailure => detail
|
105
|
+
raise exception, detail.message, detail.backtrace
|
106
|
+
end
|
107
|
+
|
108
|
+
# Default empty options for {execute}
|
109
|
+
NoOptionsSpecified = {}
|
110
|
+
|
111
|
+
# Executes the desired command, and return the status and output.
|
112
|
+
# def execute(command, options)
|
113
|
+
# @param command [Array<String>, String] the command to execute. If it is
|
114
|
+
# an Array the first element should be the executable and the rest of the
|
115
|
+
# elements should be the individual arguments to that executable.
|
116
|
+
# @param options [Hash] a Hash of options
|
117
|
+
# @option options [Boolean] :failonfail if this value is set to true, then this method will raise an error if the
|
118
|
+
# command is not executed successfully.
|
119
|
+
# @option options [Integer, String] :uid (nil) the user id of the user that the process should be run as. Will be ignored if the
|
120
|
+
# user id matches the effective user id of the current process.
|
121
|
+
# @option options [Integer, String] :gid (nil) the group id of the group that the process should be run as. Will be ignored if the
|
122
|
+
# group id matches the effective group id of the current process.
|
123
|
+
# @option options [Boolean] :combine sets whether or not to combine stdout/stderr in the output, if false stderr output is discarded
|
124
|
+
# @option options [String] :stdinfile (nil) sets a file that can be used for stdin. Passing a string for stdin is not currently
|
125
|
+
# supported.
|
126
|
+
# @option options [Boolean] :squelch (false) if true, ignore stdout / stderr completely.
|
127
|
+
# @option options [Boolean] :override_locale (true) by default (and if this option is set to true), we will temporarily override
|
128
|
+
# the user/system locale to "C" (via environment variables LANG and LC_*) while we are executing the command.
|
129
|
+
# This ensures that the output of the command will be formatted consistently, making it predictable for parsing.
|
130
|
+
# Passing in a value of false for this option will allow the command to be executed using the user/system locale.
|
131
|
+
# @option options [Hash<{String => String}>] :custom_environment ({}) a hash of key/value pairs to set as environment variables for the duration
|
132
|
+
# of the command.
|
133
|
+
# @return [Puppet::Util::Execution::ProcessOutput] output as specified by options
|
134
|
+
# @raise [Puppet::ExecutionFailure] if the executed chiled process did not exit with status == 0 and `failonfail` is
|
135
|
+
# `true`.
|
136
|
+
# @note Unfortunately, the default behavior for failonfail and combine (since
|
137
|
+
# 0.22.4 and 0.24.7, respectively) depend on whether options are specified
|
138
|
+
# or not. If specified, then failonfail and combine default to false (even
|
139
|
+
# when the options specified are neither failonfail nor combine). If no
|
140
|
+
# options are specified, then failonfail and combine default to true.
|
141
|
+
# @comment See commits efe9a833c and d32d7f30
|
142
|
+
# @api public
|
143
|
+
#
|
144
|
+
def self.execute(command, options = NoOptionsSpecified)
|
145
|
+
# specifying these here rather than in the method signature to allow callers to pass in a partial
|
146
|
+
# set of overrides without affecting the default values for options that they don't pass in
|
147
|
+
default_options = {
|
148
|
+
:failonfail => NoOptionsSpecified.equal?(options),
|
149
|
+
:uid => nil,
|
150
|
+
:gid => nil,
|
151
|
+
:combine => NoOptionsSpecified.equal?(options),
|
152
|
+
:stdinfile => nil,
|
153
|
+
:squelch => false,
|
154
|
+
:override_locale => true,
|
155
|
+
:custom_environment => {},
|
156
|
+
:sensitive => false,
|
157
|
+
}
|
158
|
+
|
159
|
+
options = default_options.merge(options)
|
160
|
+
|
161
|
+
if options[:sensitive]
|
162
|
+
command_str = '[redacted]'
|
163
|
+
elsif command.is_a?(Array)
|
164
|
+
command = command.flatten.map(&:to_s)
|
165
|
+
command_str = command.join(" ")
|
166
|
+
elsif command.is_a?(String)
|
167
|
+
command_str = command
|
168
|
+
end
|
169
|
+
|
170
|
+
user_log_s = ''
|
171
|
+
if options[:uid]
|
172
|
+
user_log_s << " uid=#{options[:uid]}"
|
173
|
+
end
|
174
|
+
if options[:gid]
|
175
|
+
user_log_s << " gid=#{options[:gid]}"
|
176
|
+
end
|
177
|
+
if user_log_s != ''
|
178
|
+
user_log_s.prepend(' with')
|
179
|
+
end
|
180
|
+
|
181
|
+
if respond_to? :debug
|
182
|
+
debug "Executing#{user_log_s}: '#{command_str}'"
|
183
|
+
else
|
184
|
+
Puppet.debug "Executing#{user_log_s}: '#{command_str}'"
|
185
|
+
end
|
186
|
+
|
187
|
+
null_file = Puppet.features.microsoft_windows? ? 'NUL' : '/dev/null'
|
188
|
+
|
189
|
+
begin
|
190
|
+
stdin = Puppet::FileSystem.open(options[:stdinfile] || null_file, nil, 'r')
|
191
|
+
# On Windows, continue to use the file-based approach to avoid breaking people's existing
|
192
|
+
# manifests. If they use a script that doesn't background cleanly, such as
|
193
|
+
# `start /b ping 127.0.0.1`, we couldn't handle it with pipes as there's no non-blocking
|
194
|
+
# read available.
|
195
|
+
if options[:squelch]
|
196
|
+
stdout = Puppet::FileSystem.open(null_file, nil, 'w')
|
197
|
+
elsif Puppet.features.posix?
|
198
|
+
reader, stdout = IO.pipe
|
199
|
+
else
|
200
|
+
stdout = Puppet::FileSystem::Uniquefile.new('puppet')
|
201
|
+
end
|
202
|
+
stderr = options[:combine] ? stdout : Puppet::FileSystem.open(null_file, nil, 'w')
|
203
|
+
|
204
|
+
exec_args = [command, options, stdin, stdout, stderr]
|
205
|
+
output = ''
|
206
|
+
|
207
|
+
# We close stdin/stdout/stderr immediately after fork/exec as they're no longer needed by
|
208
|
+
# this process. In most cases they could be closed later, but when `stdout` is the "writer"
|
209
|
+
# pipe we must close it or we'll never reach eof on the `reader` pipe.
|
210
|
+
if execution_stub = Puppet::Util::ExecutionStub.current_value
|
211
|
+
child_pid = execution_stub.call(*exec_args)
|
212
|
+
[stdin, stdout, stderr].each {|io| io.close rescue nil}
|
213
|
+
return child_pid
|
214
|
+
elsif Puppet.features.posix?
|
215
|
+
child_pid = nil
|
216
|
+
begin
|
217
|
+
child_pid = execute_posix(*exec_args)
|
218
|
+
[stdin, stdout, stderr].each {|io| io.close rescue nil}
|
219
|
+
if options[:squelch]
|
220
|
+
exit_status = Process.waitpid2(child_pid).last.exitstatus
|
221
|
+
else
|
222
|
+
# Use non-blocking read to check for data. After each attempt,
|
223
|
+
# check whether the child is done. This is done in case the child
|
224
|
+
# forks and inherits stdout, as happens in `foo &`.
|
225
|
+
until results = Process.waitpid2(child_pid, Process::WNOHANG)
|
226
|
+
|
227
|
+
# If not done, wait for data to read with a timeout
|
228
|
+
# This timeout is selected to keep activity low while waiting on
|
229
|
+
# a long process, while not waiting too long for the pathological
|
230
|
+
# case where stdout is never closed.
|
231
|
+
ready = IO.select([reader], [], [], 0.1)
|
232
|
+
begin
|
233
|
+
output << reader.read_nonblock(4096) if ready
|
234
|
+
rescue Errno::EAGAIN
|
235
|
+
rescue EOFError
|
236
|
+
end
|
237
|
+
end
|
238
|
+
|
239
|
+
# Read any remaining data. Allow for but don't expect EOF.
|
240
|
+
begin
|
241
|
+
loop do
|
242
|
+
output << reader.read_nonblock(4096)
|
243
|
+
end
|
244
|
+
rescue Errno::EAGAIN
|
245
|
+
rescue EOFError
|
246
|
+
end
|
247
|
+
|
248
|
+
# Force to external encoding to preserve prior behavior when reading a file.
|
249
|
+
# Wait until after reading all data so we don't encounter corruption when
|
250
|
+
# reading part of a multi-byte unicode character if default_external is UTF-8.
|
251
|
+
output.force_encoding(Encoding.default_external)
|
252
|
+
exit_status = results.last.exitstatus
|
253
|
+
end
|
254
|
+
child_pid = nil
|
255
|
+
rescue Timeout::Error => e
|
256
|
+
# NOTE: For Ruby 2.1+, an explicit Timeout::Error class has to be
|
257
|
+
# passed to Timeout.timeout in order for there to be something for
|
258
|
+
# this block to rescue.
|
259
|
+
unless child_pid.nil?
|
260
|
+
Process.kill(:TERM, child_pid)
|
261
|
+
# Spawn a thread to reap the process if it dies.
|
262
|
+
Thread.new { Process.waitpid(child_pid) }
|
263
|
+
end
|
264
|
+
|
265
|
+
raise e
|
266
|
+
end
|
267
|
+
elsif Puppet.features.microsoft_windows?
|
268
|
+
process_info = execute_windows(*exec_args)
|
269
|
+
begin
|
270
|
+
[stdin, stderr].each {|io| io.close rescue nil}
|
271
|
+
exit_status = Puppet::Util::Windows::Process.wait_process(process_info.process_handle)
|
272
|
+
|
273
|
+
# read output in if required
|
274
|
+
unless options[:squelch]
|
275
|
+
output = wait_for_output(stdout)
|
276
|
+
Puppet.warning _("Could not get output") unless output
|
277
|
+
end
|
278
|
+
ensure
|
279
|
+
FFI::WIN32.CloseHandle(process_info.process_handle)
|
280
|
+
FFI::WIN32.CloseHandle(process_info.thread_handle)
|
281
|
+
end
|
282
|
+
end
|
283
|
+
|
284
|
+
if options[:failonfail] and exit_status != 0
|
285
|
+
raise Puppet::ExecutionFailure, _("Execution of '%{str}' returned %{exit_status}: %{output}") % { str: command_str, exit_status: exit_status, output: output.strip }
|
286
|
+
end
|
287
|
+
ensure
|
288
|
+
# Make sure all handles are closed in case an exception was thrown attempting to execute.
|
289
|
+
[stdin, stdout, stderr].each {|io| io.close rescue nil}
|
290
|
+
if !options[:squelch]
|
291
|
+
# if we opened a pipe, we need to clean it up.
|
292
|
+
reader.close if reader
|
293
|
+
stdout.close! if Puppet.features.microsoft_windows?
|
294
|
+
end
|
295
|
+
end
|
296
|
+
|
297
|
+
Puppet::Util::Execution::ProcessOutput.new(output || '', exit_status)
|
298
|
+
end
|
299
|
+
|
300
|
+
# Returns the path to the ruby executable (available via Config object, even if
|
301
|
+
# it's not in the PATH... so this is slightly safer than just using Puppet::Util.which)
|
302
|
+
# @return [String] the path to the Ruby executable
|
303
|
+
# @api private
|
304
|
+
#
|
305
|
+
def self.ruby_path()
|
306
|
+
File.join(RbConfig::CONFIG['bindir'],
|
307
|
+
RbConfig::CONFIG['ruby_install_name'] + RbConfig::CONFIG['EXEEXT']).
|
308
|
+
sub(/.*\s.*/m, '"\&"')
|
309
|
+
end
|
310
|
+
|
311
|
+
# Because some modules provide their own version of this method.
|
312
|
+
class << self
|
313
|
+
alias util_execute execute
|
314
|
+
end
|
315
|
+
|
316
|
+
|
317
|
+
# This is private method.
|
318
|
+
# @comment see call to private_class_method after method definition
|
319
|
+
# @api private
|
320
|
+
#
|
321
|
+
def self.execute_posix(command, options, stdin, stdout, stderr)
|
322
|
+
child_pid = Puppet::Util.safe_posix_fork(stdin, stdout, stderr) do
|
323
|
+
|
324
|
+
# We can't just call Array(command), and rely on it returning
|
325
|
+
# things like ['foo'], when passed ['foo'], because
|
326
|
+
# Array(command) will call command.to_a internally, which when
|
327
|
+
# given a string can end up doing Very Bad Things(TM), such as
|
328
|
+
# turning "/tmp/foo;\r\n /bin/echo" into ["/tmp/foo;\r\n", " /bin/echo"]
|
329
|
+
command = [command].flatten
|
330
|
+
Process.setsid
|
331
|
+
begin
|
332
|
+
Puppet::Util::SUIDManager.change_privileges(options[:uid], options[:gid], true)
|
333
|
+
|
334
|
+
# if the caller has requested that we override locale environment variables,
|
335
|
+
if (options[:override_locale]) then
|
336
|
+
# loop over them and clear them
|
337
|
+
Puppet::Util::POSIX::LOCALE_ENV_VARS.each { |name| ENV.delete(name) }
|
338
|
+
# set LANG and LC_ALL to 'C' so that the command will have consistent, predictable output
|
339
|
+
# it's OK to manipulate these directly rather than, e.g., via "withenv", because we are in
|
340
|
+
# a forked process.
|
341
|
+
ENV['LANG'] = 'C'
|
342
|
+
ENV['LC_ALL'] = 'C'
|
343
|
+
end
|
344
|
+
|
345
|
+
# unset all of the user-related environment variables so that different methods of starting puppet
|
346
|
+
# (automatic start during boot, via 'service', via /etc/init.d, etc.) won't have unexpected side
|
347
|
+
# effects relating to user / home dir environment vars.
|
348
|
+
# it's OK to manipulate these directly rather than, e.g., via "withenv", because we are in
|
349
|
+
# a forked process.
|
350
|
+
Puppet::Util::POSIX::USER_ENV_VARS.each { |name| ENV.delete(name) }
|
351
|
+
|
352
|
+
options[:custom_environment] ||= {}
|
353
|
+
Puppet::Util.withenv(options[:custom_environment]) do
|
354
|
+
Kernel.exec(*command)
|
355
|
+
end
|
356
|
+
rescue => detail
|
357
|
+
Puppet.log_exception(detail, _("Could not execute posix command: %{detail}") % { detail: detail })
|
358
|
+
exit!(1)
|
359
|
+
end
|
360
|
+
end
|
361
|
+
child_pid
|
362
|
+
end
|
363
|
+
private_class_method :execute_posix
|
364
|
+
|
365
|
+
|
366
|
+
# This is private method.
|
367
|
+
# @comment see call to private_class_method after method definition
|
368
|
+
# @api private
|
369
|
+
#
|
370
|
+
def self.execute_windows(command, options, stdin, stdout, stderr)
|
371
|
+
command = command.map do |part|
|
372
|
+
part.include?(' ') ? %Q["#{part.gsub(/"/, '\"')}"] : part
|
373
|
+
end.join(" ") if command.is_a?(Array)
|
374
|
+
|
375
|
+
options[:custom_environment] ||= {}
|
376
|
+
Puppet::Util.withenv(options[:custom_environment], :windows) do
|
377
|
+
Puppet::Util::Windows::Process.execute(command, options, stdin, stdout, stderr)
|
378
|
+
end
|
379
|
+
end
|
380
|
+
private_class_method :execute_windows
|
381
|
+
|
382
|
+
|
383
|
+
# This is private method.
|
384
|
+
# @comment see call to private_class_method after method definition
|
385
|
+
# @api private
|
386
|
+
#
|
387
|
+
def self.wait_for_output(stdout)
|
388
|
+
# Make sure the file's actually been written. This is basically a race
|
389
|
+
# condition, and is probably a horrible way to handle it, but, well, oh
|
390
|
+
# well.
|
391
|
+
# (If this method were treated as private / inaccessible from outside of this file, we shouldn't have to worry
|
392
|
+
# about a race condition because all of the places that we call this from are preceded by a call to "waitpid2",
|
393
|
+
# meaning that the processes responsible for writing the file have completed before we get here.)
|
394
|
+
2.times do |try|
|
395
|
+
if Puppet::FileSystem.exist?(stdout.path)
|
396
|
+
stdout.open
|
397
|
+
begin
|
398
|
+
return stdout.read
|
399
|
+
ensure
|
400
|
+
stdout.close
|
401
|
+
stdout.unlink
|
402
|
+
end
|
403
|
+
else
|
404
|
+
time_to_sleep = try / 2.0
|
405
|
+
Puppet.warning _("Waiting for output; will sleep %{time_to_sleep} seconds") % { time_to_sleep: time_to_sleep }
|
406
|
+
sleep(time_to_sleep)
|
407
|
+
end
|
408
|
+
end
|
409
|
+
nil
|
410
|
+
end
|
411
|
+
private_class_method :wait_for_output
|
412
|
+
end
|