puppet 5.5.16-x86-mingw32 → 5.5.21-x86-mingw32
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of puppet might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CODEOWNERS +10 -10
- data/Gemfile +2 -3
- data/Gemfile.lock +57 -52
- data/ext/build_defaults.yaml +1 -0
- data/ext/cert_inspector +3 -3
- data/ext/project_data.yaml +2 -2
- data/ext/puppet-test +2 -2
- data/ext/regexp_nodes/regexp_nodes.rb +4 -4
- data/ext/windows/service/daemon.rb +54 -8
- data/install.rb +6 -24
- data/lib/puppet.rb +5 -2
- data/lib/puppet/agent.rb +5 -13
- data/lib/puppet/application.rb +1 -1
- data/lib/puppet/application/agent.rb +15 -1
- data/lib/puppet/application/apply.rb +2 -2
- data/lib/puppet/application/describe.rb +3 -9
- data/lib/puppet/application/device.rb +4 -4
- data/lib/puppet/application/doc.rb +1 -1
- data/lib/puppet/application/filebucket.rb +13 -0
- data/lib/puppet/application/lookup.rb +1 -1
- data/lib/puppet/application/resource.rb +4 -4
- data/lib/puppet/application/script.rb +2 -2
- data/lib/puppet/configurer.rb +86 -28
- data/lib/puppet/configurer/downloader.rb +2 -6
- data/lib/puppet/daemon.rb +1 -1
- data/lib/puppet/defaults.rb +82 -38
- data/lib/puppet/error.rb +9 -1
- data/lib/puppet/external/nagios/base.rb +1 -1
- data/lib/puppet/face/ca.rb +1 -1
- data/lib/puppet/face/config.rb +10 -48
- data/lib/puppet/face/facts.rb +1 -1
- data/lib/puppet/face/module/list.rb +5 -5
- data/lib/puppet/face/module/search.rb +1 -1
- data/lib/puppet/face/module/uninstall.rb +1 -1
- data/lib/puppet/face/module/upgrade.rb +1 -1
- data/lib/puppet/face/plugin.rb +9 -2
- data/lib/puppet/file_serving/http_metadata.rb +1 -1
- data/lib/puppet/file_system.rb +0 -8
- data/lib/puppet/file_system/memory_file.rb +1 -1
- data/lib/puppet/file_system/posix.rb +3 -2
- data/lib/puppet/file_system/uniquefile.rb +4 -0
- data/lib/puppet/forge.rb +3 -3
- data/lib/puppet/functions/epp.rb +4 -4
- data/lib/puppet/functions/inline_epp.rb +5 -5
- data/lib/puppet/functions/reduce.rb +2 -4
- data/lib/puppet/gettext/module_translations.rb +1 -1
- data/lib/puppet/graph/rb_tree_map.rb +2 -2
- data/lib/puppet/graph/simple_graph.rb +6 -5
- data/lib/puppet/indirector/catalog/compiler.rb +8 -0
- data/lib/puppet/indirector/file_bucket_file/file.rb +1 -1
- data/lib/puppet/indirector/hiera.rb +2 -0
- data/lib/puppet/indirector/resource/ral.rb +1 -3
- data/lib/puppet/indirector/resource/validator.rb +1 -1
- data/lib/puppet/interface.rb +2 -1
- data/lib/puppet/loaders.rb +0 -1
- data/lib/puppet/metatype/manager.rb +1 -1
- data/lib/puppet/module.rb +1 -1
- data/lib/puppet/module_tool/applications/builder.rb +1 -1
- data/lib/puppet/module_tool/applications/installer.rb +1 -1
- data/lib/puppet/module_tool/applications/uninstaller.rb +3 -3
- data/lib/puppet/module_tool/metadata.rb +1 -1
- data/lib/puppet/module_tool/shared_behaviors.rb +4 -4
- data/lib/puppet/module_tool/tar/mini.rb +12 -2
- data/lib/puppet/network/http/api/indirected_routes.rb +13 -12
- data/lib/puppet/network/http/api/master/v3/environment.rb +3 -0
- data/lib/puppet/network/http/connection.rb +14 -12
- data/lib/puppet/network/http/factory.rb +1 -11
- data/lib/puppet/network/http/pool.rb +7 -1
- data/lib/puppet/network/http/rack/rest.rb +2 -2
- data/lib/puppet/network/http/site.rb +1 -1
- data/lib/puppet/network/resolver.rb +2 -2
- data/lib/puppet/node/environment.rb +4 -2
- data/lib/puppet/parameter.rb +8 -0
- data/lib/puppet/parser/ast.rb +1 -1
- data/lib/puppet/parser/ast/resourceparam.rb +1 -1
- data/lib/puppet/parser/compiler/catalog_validator/env_relationship_validator.rb +2 -0
- data/lib/puppet/parser/compiler/catalog_validator/site_validator.rb +2 -0
- data/lib/puppet/parser/environment_compiler.rb +3 -0
- data/lib/puppet/parser/functions.rb +1 -1
- data/lib/puppet/parser/functions/epp.rb +3 -3
- data/lib/puppet/parser/functions/inline_epp.rb +5 -5
- data/lib/puppet/parser/resource.rb +3 -2
- data/lib/puppet/parser/resource/param.rb +6 -0
- data/lib/puppet/pops/evaluator/access_operator.rb +2 -2
- data/lib/puppet/pops/evaluator/collectors/catalog_collector.rb +1 -1
- data/lib/puppet/pops/evaluator/collectors/exported_collector.rb +1 -1
- data/lib/puppet/pops/evaluator/evaluator_impl.rb +1 -1
- data/lib/puppet/pops/evaluator/external_syntax_support.rb +3 -2
- data/lib/puppet/pops/evaluator/runtime3_support.rb +4 -4
- data/lib/puppet/pops/issues.rb +5 -0
- data/lib/puppet/pops/loaders.rb +1 -1
- data/lib/puppet/pops/lookup/hiera_config.rb +1 -0
- data/lib/puppet/pops/lookup/sub_lookup.rb +1 -1
- data/lib/puppet/pops/merge_strategy.rb +22 -18
- data/lib/puppet/pops/parser/heredoc_support.rb +1 -1
- data/lib/puppet/pops/parser/interpolation_support.rb +4 -4
- data/lib/puppet/pops/parser/locator.rb +1 -1
- data/lib/puppet/pops/parser/pn_parser.rb +17 -16
- data/lib/puppet/pops/puppet_stack.rb +51 -48
- data/lib/puppet/pops/resource/resource_type_impl.rb +2 -0
- data/lib/puppet/pops/types/p_sensitive_type.rb +1 -1
- data/lib/puppet/pops/types/string_converter.rb +10 -10
- data/lib/puppet/pops/types/type_calculator.rb +24 -0
- data/lib/puppet/pops/types/types.rb +3 -3
- data/lib/puppet/pops/validation/checker4_0.rb +10 -0
- data/lib/puppet/pops/validation/validator_factory_4_0.rb +1 -0
- data/lib/puppet/property.rb +1 -1
- data/lib/puppet/property/ensure.rb +1 -1
- data/lib/puppet/provider/augeas/augeas.rb +1 -1
- data/lib/puppet/provider/cron/crontab.rb +1 -1
- data/lib/puppet/provider/exec.rb +6 -2
- data/lib/puppet/provider/file/posix.rb +5 -0
- data/lib/puppet/provider/group/groupadd.rb +19 -19
- data/lib/puppet/provider/group/windows_adsi.rb +3 -3
- data/lib/puppet/provider/mailalias/aliases.rb +1 -1
- data/lib/puppet/provider/mount.rb +1 -1
- data/lib/puppet/provider/mount/parsed.rb +8 -8
- data/lib/puppet/provider/nameservice.rb +10 -3
- data/lib/puppet/provider/nameservice/directoryservice.rb +1 -1
- data/lib/puppet/provider/nameservice/pw.rb +2 -2
- data/lib/puppet/provider/package/aix.rb +17 -2
- data/lib/puppet/provider/package/apt.rb +14 -3
- data/lib/puppet/provider/package/dnf.rb +1 -1
- data/lib/puppet/provider/package/dnfmodule.rb +141 -0
- data/lib/puppet/provider/package/dpkg.rb +16 -18
- data/lib/puppet/provider/package/fink.rb +20 -3
- data/lib/puppet/provider/package/openbsd.rb +14 -2
- data/lib/puppet/provider/package/pip.rb +37 -10
- data/lib/puppet/provider/package/pkg.rb +18 -5
- data/lib/puppet/provider/package/pkgdmg.rb +1 -1
- data/lib/puppet/provider/package/pkgng.rb +16 -4
- data/lib/puppet/provider/package/portage.rb +4 -4
- data/lib/puppet/provider/package/rpm.rb +57 -19
- data/lib/puppet/provider/package/windows/package.rb +1 -1
- data/lib/puppet/provider/package/yum.rb +35 -24
- data/lib/puppet/provider/package/zypper.rb +1 -0
- data/lib/puppet/provider/package_targetable.rb +5 -4
- data/lib/puppet/provider/parsedfile.rb +1 -1
- data/lib/puppet/provider/scheduled_task/win32_taskscheduler.rb +3 -3
- data/lib/puppet/provider/selmodule/semodule.rb +43 -26
- data/lib/puppet/provider/service/daemontools.rb +9 -9
- data/lib/puppet/provider/service/launchd.rb +20 -5
- data/lib/puppet/provider/service/openbsd.rb +1 -1
- data/lib/puppet/provider/service/rcng.rb +2 -2
- data/lib/puppet/provider/service/runit.rb +2 -8
- data/lib/puppet/provider/service/systemd.rb +35 -22
- data/lib/puppet/provider/service/windows.rb +8 -0
- data/lib/puppet/provider/user/directoryservice.rb +31 -6
- data/lib/puppet/provider/user/hpux.rb +1 -1
- data/lib/puppet/provider/user/pw.rb +12 -3
- data/lib/puppet/provider/user/user_role_add.rb +5 -1
- data/lib/puppet/provider/user/useradd.rb +62 -27
- data/lib/puppet/provider/user/windows_adsi.rb +4 -5
- data/lib/puppet/provider/yumrepo/inifile.rb +2 -2
- data/lib/puppet/reference/indirection.rb +2 -2
- data/lib/puppet/reference/metaparameter.rb +1 -3
- data/lib/puppet/reference/providers.rb +1 -1
- data/lib/puppet/reference/type.rb +3 -9
- data/lib/puppet/reports.rb +1 -1
- data/lib/puppet/resource.rb +18 -1
- data/lib/puppet/resource/catalog.rb +1 -1
- data/lib/puppet/resource/type.rb +8 -0
- data/lib/puppet/settings.rb +43 -3
- data/lib/puppet/settings/environment_conf.rb +1 -0
- data/lib/puppet/ssl/certificate.rb +2 -1
- data/lib/puppet/ssl/certificate_authority.rb +6 -5
- data/lib/puppet/ssl/certificate_authority/interface.rb +1 -1
- data/lib/puppet/ssl/certificate_factory.rb +2 -2
- data/lib/puppet/ssl/host.rb +3 -3
- data/lib/puppet/ssl/oids.rb +1 -1
- data/lib/puppet/test/test_helper.rb +15 -10
- data/lib/puppet/transaction/report.rb +1 -1
- data/lib/puppet/transaction/resource_harness.rb +1 -1
- data/lib/puppet/type.rb +15 -4
- data/lib/puppet/type/cron.rb +1 -1
- data/lib/puppet/type/exec.rb +21 -9
- data/lib/puppet/type/file.rb +14 -2
- data/lib/puppet/type/file/data_sync.rb +5 -1
- data/lib/puppet/type/group.rb +4 -2
- data/lib/puppet/type/interface.rb +1 -1
- data/lib/puppet/type/notify.rb +3 -2
- data/lib/puppet/type/package.rb +107 -8
- data/lib/puppet/type/schedule.rb +1 -1
- data/lib/puppet/type/selboolean.rb +17 -3
- data/lib/puppet/type/service.rb +9 -10
- data/lib/puppet/type/user.rb +6 -24
- data/lib/puppet/type/yumrepo.rb +3 -7
- data/lib/puppet/util.rb +47 -25
- data/lib/puppet/util/command_line/trollop.rb +1 -1
- data/lib/puppet/util/execution.rb +4 -3
- data/lib/puppet/util/http_proxy.rb +24 -16
- data/lib/puppet/util/instance_loader.rb +1 -1
- data/lib/puppet/util/log.rb +1 -1
- data/lib/puppet/util/log/destinations.rb +3 -12
- data/lib/puppet/util/logging.rb +30 -18
- data/lib/puppet/util/metric.rb +2 -2
- data/lib/puppet/util/monkey_patches.rb +1 -1
- data/lib/puppet/util/nagios_maker.rb +2 -2
- data/lib/puppet/util/network_device/cisco/device.rb +1 -1
- data/lib/puppet/util/network_device/cisco/interface.rb +2 -2
- data/lib/puppet/util/network_device/transport/ssh.rb +1 -1
- data/lib/puppet/util/pidlock.rb +12 -6
- data/lib/puppet/util/plist.rb +6 -0
- data/lib/puppet/util/provider_features.rb +2 -4
- data/lib/puppet/util/rdoc.rb +1 -1
- data/lib/puppet/util/reference.rb +1 -1
- data/lib/puppet/util/resource_template.rb +1 -1
- data/lib/puppet/util/selinux.rb +8 -2
- data/lib/puppet/util/windows/adsi.rb +60 -30
- data/lib/puppet/util/windows/api_types.rb +45 -32
- data/lib/puppet/util/windows/eventlog.rb +1 -6
- data/lib/puppet/util/windows/principal.rb +8 -6
- data/lib/puppet/util/windows/process.rb +16 -15
- data/lib/puppet/util/windows/registry.rb +17 -15
- data/lib/puppet/util/windows/security.rb +3 -0
- data/lib/puppet/util/windows/service.rb +149 -4
- data/lib/puppet/util/windows/sid.rb +4 -3
- data/lib/puppet/vendor.rb +1 -1
- data/lib/puppet/version.rb +1 -1
- data/lib/puppet_pal.rb +2 -2
- data/locales/puppet.pot +479 -443
- data/man/man5/puppet.conf.5 +38 -8
- data/man/man8/puppet-agent.8 +2 -2
- data/man/man8/puppet-apply.8 +1 -1
- data/man/man8/puppet-ca.8 +1 -1
- data/man/man8/puppet-catalog.8 +1 -1
- data/man/man8/puppet-cert.8 +1 -1
- data/man/man8/puppet-certificate.8 +1 -1
- data/man/man8/puppet-certificate_request.8 +1 -1
- data/man/man8/puppet-certificate_revocation_list.8 +1 -1
- data/man/man8/puppet-config.8 +1 -1
- data/man/man8/puppet-describe.8 +1 -1
- data/man/man8/puppet-device.8 +1 -1
- data/man/man8/puppet-doc.8 +1 -1
- data/man/man8/puppet-epp.8 +1 -1
- data/man/man8/puppet-facts.8 +1 -1
- data/man/man8/puppet-filebucket.8 +16 -1
- data/man/man8/puppet-generate.8 +1 -1
- data/man/man8/puppet-help.8 +1 -1
- data/man/man8/puppet-key.8 +1 -1
- data/man/man8/puppet-lookup.8 +1 -1
- data/man/man8/puppet-man.8 +1 -1
- data/man/man8/puppet-master.8 +1 -1
- data/man/man8/puppet-module.8 +1 -1
- data/man/man8/puppet-node.8 +1 -1
- data/man/man8/puppet-parser.8 +1 -1
- data/man/man8/puppet-plugin.8 +1 -1
- data/man/man8/puppet-report.8 +1 -1
- data/man/man8/puppet-resource.8 +1 -1
- data/man/man8/puppet-script.8 +1 -1
- data/man/man8/puppet-status.8 +1 -1
- data/man/man8/puppet.8 +2 -2
- data/spec/fixtures/integration/provider/mailalias/aliases/test1 +1 -0
- data/spec/fixtures/unit/provider/package/dnfmodule/dnf-module-list.txt +19 -0
- data/spec/fixtures/unit/provider/package/pkgng/pkg.version +2 -0
- data/spec/fixtures/unit/provider/package/yum/yum-check-update-subscription-manager.txt +9 -0
- data/spec/fixtures/unit/provider/service/systemd/list_unit_files_services +9 -0
- data/spec/integration/configurer_spec.rb +52 -0
- data/spec/integration/defaults_spec.rb +1 -2
- data/spec/integration/indirector/facts/facter_spec.rb +4 -0
- data/spec/integration/parser/compiler_spec.rb +11 -0
- data/spec/integration/provider/service/systemd_spec.rb +8 -5
- data/spec/integration/type/file_spec.rb +28 -0
- data/spec/integration/type/notify_spec.rb +46 -0
- data/spec/integration/util/execution_spec.rb +27 -0
- data/spec/integration/util/windows/adsi_spec.rb +6 -1
- data/spec/integration/util/windows/registry_spec.rb +7 -7
- data/spec/unit/agent_spec.rb +34 -26
- data/spec/unit/application/agent_spec.rb +18 -0
- data/spec/unit/application/apply_spec.rb +2 -12
- data/spec/unit/application/device_spec.rb +1 -1
- data/spec/unit/configurer/fact_handler_spec.rb +0 -4
- data/spec/unit/configurer_spec.rb +377 -397
- data/spec/unit/daemon_spec.rb +0 -1
- data/spec/unit/face/facts_spec.rb +9 -0
- data/spec/unit/face/plugin_spec.rb +8 -0
- data/spec/unit/file_system/uniquefile_spec.rb +11 -0
- data/spec/unit/forge/forge_spec.rb +1 -3
- data/spec/unit/forge/repository_spec.rb +1 -3
- data/spec/unit/indirector/catalog/compiler_spec.rb +45 -26
- data/spec/unit/indirector/resource/ral_spec.rb +4 -4
- data/spec/unit/module_tool/tar/mini_spec.rb +1 -1
- data/spec/unit/network/http/api/indirected_routes_spec.rb +28 -11
- data/spec/unit/network/http/connection_spec.rb +43 -1
- data/spec/unit/network/http/factory_spec.rb +27 -5
- data/spec/unit/network/http/pool_spec.rb +32 -0
- data/spec/unit/node_spec.rb +7 -4
- data/spec/unit/parser/environment_compiler_spec.rb +7 -0
- data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +8 -3
- data/spec/unit/pops/validator/validator_spec.rb +7 -0
- data/spec/unit/provider/exec_spec.rb +209 -0
- data/spec/unit/provider/group/groupadd_spec.rb +30 -1
- data/spec/unit/provider/group/windows_adsi_spec.rb +43 -10
- data/spec/unit/provider/package/aix_spec.rb +29 -0
- data/spec/unit/provider/package/apt_spec.rb +13 -2
- data/spec/unit/provider/package/aptitude_spec.rb +1 -0
- data/spec/unit/provider/package/aptrpm_spec.rb +1 -1
- data/spec/unit/provider/package/dnf_spec.rb +7 -0
- data/spec/unit/provider/package/dnfmodule_spec.rb +247 -0
- data/spec/unit/provider/package/dpkg_spec.rb +35 -7
- data/spec/unit/provider/package/openbsd_spec.rb +17 -0
- data/spec/unit/provider/package/pip_spec.rb +93 -22
- data/spec/unit/provider/package/pkg_spec.rb +13 -1
- data/spec/unit/provider/package/pkgdmg_spec.rb +1 -1
- data/spec/unit/provider/package/pkgng_spec.rb +36 -0
- data/spec/unit/provider/package/portage_spec.rb +4 -4
- data/spec/unit/provider/package/rpm_spec.rb +150 -16
- data/spec/unit/provider/package/yum_spec.rb +66 -0
- data/spec/unit/provider/package/zypper_spec.rb +13 -0
- data/spec/unit/provider/package_targetable_spec.rb +60 -0
- data/spec/unit/provider/selmodule_spec.rb +118 -47
- data/spec/unit/provider/service/daemontools_spec.rb +24 -0
- data/spec/unit/provider/service/launchd_spec.rb +28 -0
- data/spec/unit/provider/service/runit_spec.rb +24 -0
- data/spec/unit/provider/service/systemd_spec.rb +109 -36
- data/spec/unit/provider/service/windows_spec.rb +20 -0
- data/spec/unit/provider/user/directoryservice_spec.rb +41 -0
- data/spec/unit/provider/user/hpux_spec.rb +2 -2
- data/spec/unit/provider/user/openbsd_spec.rb +1 -0
- data/spec/unit/provider/user/pw_spec.rb +37 -0
- data/spec/unit/provider/user/useradd_spec.rb +122 -15
- data/spec/unit/provider/user/windows_adsi_spec.rb +3 -3
- data/spec/unit/puppet_pal_2pec.rb +3 -0
- data/spec/unit/resource_spec.rb +26 -1
- data/spec/unit/ssl/certificate_authority_spec.rb +2 -3
- data/spec/unit/ssl/certificate_spec.rb +7 -0
- data/spec/unit/test/test_helper_spec.rb +17 -0
- data/spec/unit/transaction_spec.rb +18 -0
- data/spec/unit/type/exec_spec.rb +15 -12
- data/spec/unit/type/file/content_spec.rb +9 -3
- data/spec/unit/type/file/source_spec.rb +4 -4
- data/spec/unit/type/file_spec.rb +9 -4
- data/spec/unit/type/package_spec.rb +8 -0
- data/spec/unit/type/schedule_spec.rb +3 -1
- data/spec/unit/type/selboolean_spec.rb +4 -6
- data/spec/unit/type/service_spec.rb +25 -8
- data/spec/unit/type/user_spec.rb +32 -26
- data/spec/unit/type/yumrepo_spec.rb +30 -0
- data/spec/unit/type_spec.rb +40 -0
- data/spec/unit/util/execution_spec.rb +16 -0
- data/spec/unit/util/http_proxy_spec.rb +121 -1
- data/spec/unit/util/log/destinations_spec.rb +2 -26
- data/spec/unit/util/log_spec.rb +0 -112
- data/spec/unit/util/logging_spec.rb +200 -0
- data/spec/unit/util/pidlock_spec.rb +67 -40
- data/spec/unit/util/plist_spec.rb +20 -0
- data/spec/unit/util/windows/adsi_spec.rb +55 -4
- data/spec/unit/util/windows/api_types_spec.rb +104 -40
- data/spec/unit/util/windows/service_spec.rb +9 -0
- data/spec/unit/util/windows/sid_spec.rb +2 -2
- data/tasks/manpages.rake +1 -0
- metadata +18 -13
- data/ext/windows/eventlog/Rakefile +0 -32
- data/ext/windows/eventlog/puppetres.dll +0 -0
- data/ext/windows/eventlog/puppetres.mc +0 -18
- data/lib/puppet/pops/loader/null_loader.rb +0 -60
- data/locales/ja/puppet.po +0 -12114
- data/spec/integration/test/test_helper_spec.rb +0 -31
data/lib/puppet/daemon.rb
CHANGED
data/lib/puppet/defaults.rb
CHANGED
@@ -39,7 +39,11 @@ module Puppet
|
|
39
39
|
|
40
40
|
AS_DURATION = %q{This setting can be a time interval in seconds (30 or 30s), minutes (30m), hours (6h), days (2d), or years (5y).}
|
41
41
|
|
42
|
-
|
42
|
+
# @api public
|
43
|
+
# @param args [Puppet::Settings] the settings object to define default settings for
|
44
|
+
# @return void
|
45
|
+
def self.initialize_default_settings!(settings)
|
46
|
+
settings.define_settings(:main,
|
43
47
|
:confdir => {
|
44
48
|
:default => nil,
|
45
49
|
:type => :directory,
|
@@ -76,7 +80,7 @@ module Puppet
|
|
76
80
|
}
|
77
81
|
)
|
78
82
|
|
79
|
-
define_settings(:main,
|
83
|
+
settings.define_settings(:main,
|
80
84
|
:logdir => {
|
81
85
|
:default => nil,
|
82
86
|
:type => :directory,
|
@@ -167,7 +171,7 @@ module Puppet
|
|
167
171
|
}
|
168
172
|
)
|
169
173
|
|
170
|
-
define_settings(:main,
|
174
|
+
settings.define_settings(:main,
|
171
175
|
:priority => {
|
172
176
|
:default => nil,
|
173
177
|
:type => :priority,
|
@@ -180,12 +184,19 @@ module Puppet
|
|
180
184
|
:trace => {
|
181
185
|
:default => false,
|
182
186
|
:type => :boolean,
|
183
|
-
:desc => "Whether to print stack traces on some errors
|
187
|
+
:desc => "Whether to print stack traces on some errors. Will print
|
188
|
+
internal Ruby stack trace interleaved with Puppet function frames.",
|
184
189
|
:hook => proc do |value|
|
185
190
|
# Enable or disable Facter's trace option too
|
186
191
|
Facter.trace(value) if Facter.respond_to? :trace
|
187
192
|
end
|
188
193
|
},
|
194
|
+
:puppet_trace => {
|
195
|
+
:default => false,
|
196
|
+
:type => :boolean,
|
197
|
+
:desc => "Whether to print the Puppet stack trace on some errors.
|
198
|
+
This is a noop if `trace` is also set.",
|
199
|
+
},
|
189
200
|
:profile => {
|
190
201
|
:default => false,
|
191
202
|
:type => :boolean,
|
@@ -481,12 +492,12 @@ module Puppet
|
|
481
492
|
:hiera_config => {
|
482
493
|
:default => lambda do
|
483
494
|
config = nil
|
484
|
-
codedir =
|
495
|
+
codedir = settings[:codedir]
|
485
496
|
if codedir.is_a?(String)
|
486
497
|
config = File.expand_path(File.join(codedir, 'hiera.yaml'))
|
487
498
|
config = nil unless Puppet::FileSystem.exist?(config)
|
488
499
|
end
|
489
|
-
config = File.expand_path(File.join(
|
500
|
+
config = File.expand_path(File.join(settings[:confdir], 'hiera.yaml')) if config.nil?
|
490
501
|
config
|
491
502
|
end,
|
492
503
|
:desc => "The hiera configuration file. Puppet only reads this file on startup, so you must restart the puppet master every time you edit it.",
|
@@ -524,9 +535,10 @@ module Puppet
|
|
524
535
|
},
|
525
536
|
:http_proxy_host => {
|
526
537
|
:default => "none",
|
527
|
-
:desc => "The HTTP proxy host to use for outgoing connections.
|
538
|
+
:desc => "The HTTP proxy host to use for outgoing connections. The proxy will be bypassed if
|
539
|
+
the server's hostname matches the NO_PROXY environment variable or `no_proxy` setting. Note: You
|
528
540
|
may need to use a FQDN for the server hostname when using a proxy. Environment variable
|
529
|
-
http_proxy or HTTP_PROXY will override this value",
|
541
|
+
http_proxy or HTTP_PROXY will override this value. ",
|
530
542
|
},
|
531
543
|
:http_proxy_port => {
|
532
544
|
:default => 3128,
|
@@ -539,7 +551,7 @@ module Puppet
|
|
539
551
|
:http_proxy_password =>{
|
540
552
|
:default => "none",
|
541
553
|
:hook => proc do |value|
|
542
|
-
if
|
554
|
+
if settings[:http_proxy_password] =~ /[@!# \/]/
|
543
555
|
raise "Passwords set in the http_proxy_password setting must be valid as part of a URL, and any reserved characters must be URL-encoded. We received: #{value}"
|
544
556
|
end
|
545
557
|
end,
|
@@ -550,6 +562,10 @@ module Puppet
|
|
550
562
|
contains any characters with special meanings in URLs (as specified by RFC 3986
|
551
563
|
section 2.2), they must be URL-encoded. (For example, `#` would become `%23`.)",
|
552
564
|
},
|
565
|
+
:no_proxy => {
|
566
|
+
:default => "localhost, 127.0.0.1",
|
567
|
+
:desc => "List of host or domain names that should not go through `http_proxy_host`. Environment variable no_proxy or NO_PROXY will override this value. Names can be specified as an FQDN `host.example.com`, wildcard `*.example.com`, dotted domain `.example.com`, or suffix `example.com`.",
|
568
|
+
},
|
553
569
|
:http_keepalive_timeout => {
|
554
570
|
:default => "4s",
|
555
571
|
:type => :duration,
|
@@ -665,7 +681,7 @@ module Puppet
|
|
665
681
|
}
|
666
682
|
)
|
667
683
|
|
668
|
-
define_settings(:main,
|
684
|
+
settings.define_settings(:main,
|
669
685
|
# Whether the application management feature is on or off - now deprecated and always on.
|
670
686
|
:app_management => {
|
671
687
|
:default => false,
|
@@ -675,7 +691,7 @@ module Puppet
|
|
675
691
|
}
|
676
692
|
)
|
677
693
|
|
678
|
-
|
694
|
+
settings.define_settings(:module_tool,
|
679
695
|
:module_repository => {
|
680
696
|
:default => 'https://forgeapi.puppet.com',
|
681
697
|
:desc => "The module repository",
|
@@ -698,7 +714,7 @@ module Puppet
|
|
698
714
|
}
|
699
715
|
)
|
700
716
|
|
701
|
-
|
717
|
+
settings.define_settings(
|
702
718
|
:main,
|
703
719
|
|
704
720
|
# We have to downcase the fqdn, because the current ssl stuff (as opposed to in master) doesn't have good facilities for
|
@@ -791,13 +807,17 @@ This is useful for embedding a pre-shared key for autosigning policy executables
|
|
791
807
|
("challenge password") OID.
|
792
808
|
|
793
809
|
Extension requests will be permanently embedded in the final certificate.
|
794
|
-
Extension OIDs must be in the "ppRegCertExt" (`1.3.6.1.4.1.34380.1.1`)
|
795
|
-
"ppPrivCertExt" (`1.3.6.1.4.1.34380.1.2`)
|
810
|
+
Extension OIDs must be in the "ppRegCertExt" (`1.3.6.1.4.1.34380.1.1`),
|
811
|
+
"ppPrivCertExt" (`1.3.6.1.4.1.34380.1.2`), or
|
812
|
+
"ppAuthCertExt" (`1.3.6.1.4.1.34380.1.3`) OID arcs. The ppRegCertExt arc is
|
796
813
|
reserved for four of the most common pieces of data to embed: `pp_uuid` (`.1`),
|
797
814
|
`pp_instance_id` (`.2`), `pp_image_name` (`.3`), and `pp_preshared_key` (`.4`)
|
798
815
|
--- in the YAML file, these can be referred to by their short descriptive names
|
799
816
|
instead of their full OID. The ppPrivCertExt arc is unregulated, and can be used
|
800
|
-
for site-specific extensions.
|
817
|
+
for site-specific extensions. The ppAuthCert arc is reserved for two pieces of
|
818
|
+
data to embed: `pp_authorization` (`.1`) and `pp_auth_role` (`.13`). As with
|
819
|
+
ppRegCertExt, in the YAML file, these can be referred to by their short
|
820
|
+
descriptive name instead of their full OID.
|
801
821
|
EOT
|
802
822
|
},
|
803
823
|
:certdir => {
|
@@ -986,7 +1006,7 @@ EOT
|
|
986
1006
|
}
|
987
1007
|
)
|
988
1008
|
|
989
|
-
define_settings(
|
1009
|
+
settings.define_settings(
|
990
1010
|
:ca,
|
991
1011
|
:ca_name => {
|
992
1012
|
:default => "Puppet CA: $certname",
|
@@ -1134,7 +1154,7 @@ EOT
|
|
1134
1154
|
|
1135
1155
|
# Define the config default.
|
1136
1156
|
|
1137
|
-
define_settings(:application,
|
1157
|
+
settings.define_settings(:application,
|
1138
1158
|
:config_file_name => {
|
1139
1159
|
:type => :string,
|
1140
1160
|
:default => Puppet::Settings.default_config_file_name,
|
@@ -1164,7 +1184,7 @@ EOT
|
|
1164
1184
|
}
|
1165
1185
|
)
|
1166
1186
|
|
1167
|
-
define_settings(:environment,
|
1187
|
+
settings.define_settings(:environment,
|
1168
1188
|
:manifest => {
|
1169
1189
|
:default => nil,
|
1170
1190
|
:type => :file_or_directory,
|
@@ -1207,7 +1227,7 @@ EOT
|
|
1207
1227
|
}
|
1208
1228
|
)
|
1209
1229
|
|
1210
|
-
define_settings(:master,
|
1230
|
+
settings.define_settings(:master,
|
1211
1231
|
:user => {
|
1212
1232
|
:default => "puppet",
|
1213
1233
|
:desc => "The user Puppet Server will run as. Used to ensure
|
@@ -1277,13 +1297,23 @@ EOT
|
|
1277
1297
|
overridden by more specific settings (see `ca_port`, `report_port`).",
|
1278
1298
|
},
|
1279
1299
|
:node_name => {
|
1280
|
-
:default =>
|
1300
|
+
:default => 'cert',
|
1301
|
+
:type => :enum,
|
1302
|
+
:values => ['cert', 'facter'],
|
1303
|
+
:deprecated => :completely,
|
1304
|
+
:hook => proc { |val|
|
1305
|
+
if val != 'cert'
|
1306
|
+
Puppet.deprecation_warning("The node_name setting is deprecated and will be removed in a future release.")
|
1307
|
+
end
|
1308
|
+
},
|
1281
1309
|
:desc => "How the puppet master determines the client's identity
|
1282
1310
|
and sets the 'hostname', 'fqdn' and 'domain' facts for use in the manifest,
|
1283
1311
|
in particular for determining which 'node' statement applies to the client.
|
1284
1312
|
Possible values are 'cert' (use the subject's CN in the client's
|
1285
1313
|
certificate) and 'facter' (use the hostname that the client
|
1286
|
-
reported in its facts)
|
1314
|
+
reported in its facts).
|
1315
|
+
|
1316
|
+
This setting is deprecated, please use explicit fact matching for classification.",
|
1287
1317
|
},
|
1288
1318
|
:bucketdir => {
|
1289
1319
|
:default => "$vardir/bucket",
|
@@ -1412,14 +1442,23 @@ EOT
|
|
1412
1442
|
:desc => "Where the fileserver configuration is stored.",
|
1413
1443
|
},
|
1414
1444
|
:strict_hostname_checking => {
|
1415
|
-
:default =>
|
1445
|
+
:default => true,
|
1446
|
+
:type => :boolean,
|
1416
1447
|
:desc => "Whether to only search for the complete
|
1417
|
-
|
1418
|
-
|
1448
|
+
hostname as it is in the certificate when searching for node information
|
1449
|
+
in the catalogs or to match dot delimited segments of the cert's certname
|
1450
|
+
and the hostname, fqdn, and/or domain facts.
|
1451
|
+
|
1452
|
+
This setting is deprecated and will be removed in a future release.",
|
1453
|
+
:hook => proc { |val|
|
1454
|
+
if val != true
|
1455
|
+
Puppet.deprecation_warning("Setting strict_hostname_checking to false is deprecated and will be removed in a future release. Please use regular expressions in your node declarations or explicit fact matching for classification (though be warned that fact based classification may be considered insecure).")
|
1456
|
+
end
|
1457
|
+
}
|
1419
1458
|
}
|
1420
1459
|
)
|
1421
1460
|
|
1422
|
-
define_settings(:device,
|
1461
|
+
settings.define_settings(:device,
|
1423
1462
|
:devicedir => {
|
1424
1463
|
:default => "$vardir/devices",
|
1425
1464
|
:type => :directory,
|
@@ -1434,7 +1473,7 @@ EOT
|
|
1434
1473
|
}
|
1435
1474
|
)
|
1436
1475
|
|
1437
|
-
define_settings(:agent,
|
1476
|
+
settings.define_settings(:agent,
|
1438
1477
|
:node_name_value => {
|
1439
1478
|
:default => "$certname",
|
1440
1479
|
:desc => "The explicit value used for the node name for all requests the agent
|
@@ -1459,7 +1498,7 @@ EOT
|
|
1459
1498
|
:statefile => {
|
1460
1499
|
:default => "$statedir/state.yaml",
|
1461
1500
|
:type => :file,
|
1462
|
-
:mode => "
|
1501
|
+
:mode => "0640",
|
1463
1502
|
:desc => "Where puppet agent and puppet master store state associated
|
1464
1503
|
with the running configuration. In the case of puppet master,
|
1465
1504
|
this file reflects the state discovered through interacting
|
@@ -1481,7 +1520,7 @@ EOT
|
|
1481
1520
|
:transactionstorefile => {
|
1482
1521
|
:default => "$statedir/transactionstore.yaml",
|
1483
1522
|
:type => :file,
|
1484
|
-
:mode => "
|
1523
|
+
:mode => "0640",
|
1485
1524
|
:desc => "Transactional storage file for persisting data between
|
1486
1525
|
transactions for the purposes of infering information (such as
|
1487
1526
|
corrective_change) on new data received."
|
@@ -1726,6 +1765,11 @@ EOT
|
|
1726
1765
|
:type => :boolean,
|
1727
1766
|
:desc => "Whether to send reports after every transaction.",
|
1728
1767
|
},
|
1768
|
+
:resubmit_facts => {
|
1769
|
+
:default => false,
|
1770
|
+
:type => :boolean,
|
1771
|
+
:desc => "Whether to send updated facts after every transaction.",
|
1772
|
+
},
|
1729
1773
|
:lastrunfile => {
|
1730
1774
|
:default => "$statedir/last_run_summary.yaml",
|
1731
1775
|
:type => :file,
|
@@ -1815,7 +1859,7 @@ EOT
|
|
1815
1859
|
|
1816
1860
|
# Plugin information.
|
1817
1861
|
|
1818
|
-
define_settings(
|
1862
|
+
settings.define_settings(
|
1819
1863
|
:main,
|
1820
1864
|
:plugindest => {
|
1821
1865
|
:type => :directory,
|
@@ -1869,7 +1913,7 @@ EOT
|
|
1869
1913
|
|
1870
1914
|
# Central fact information.
|
1871
1915
|
|
1872
|
-
define_settings(
|
1916
|
+
settings.define_settings(
|
1873
1917
|
:main,
|
1874
1918
|
:factpath => {
|
1875
1919
|
:type => :path,
|
@@ -1886,7 +1930,7 @@ EOT
|
|
1886
1930
|
}
|
1887
1931
|
)
|
1888
1932
|
|
1889
|
-
define_settings(
|
1933
|
+
settings.define_settings(
|
1890
1934
|
:transaction,
|
1891
1935
|
:tags => {
|
1892
1936
|
:default => "",
|
@@ -1914,7 +1958,7 @@ EOT
|
|
1914
1958
|
}
|
1915
1959
|
)
|
1916
1960
|
|
1917
|
-
define_settings(
|
1961
|
+
settings.define_settings(
|
1918
1962
|
:main,
|
1919
1963
|
:external_nodes => {
|
1920
1964
|
:default => "none",
|
@@ -1939,7 +1983,7 @@ EOT
|
|
1939
1983
|
}
|
1940
1984
|
)
|
1941
1985
|
|
1942
|
-
define_settings(
|
1986
|
+
settings.define_settings(
|
1943
1987
|
:ldap,
|
1944
1988
|
:ldapssl => {
|
1945
1989
|
:default => false,
|
@@ -2008,7 +2052,7 @@ EOT
|
|
2008
2052
|
}
|
2009
2053
|
)
|
2010
2054
|
|
2011
|
-
define_settings(:master,
|
2055
|
+
settings.define_settings(:master,
|
2012
2056
|
:storeconfigs => {
|
2013
2057
|
:default => false,
|
2014
2058
|
:type => :boolean,
|
@@ -2041,7 +2085,7 @@ EOT
|
|
2041
2085
|
}
|
2042
2086
|
)
|
2043
2087
|
|
2044
|
-
define_settings(:parser,
|
2088
|
+
settings.define_settings(:parser,
|
2045
2089
|
:max_errors => {
|
2046
2090
|
:default => 10,
|
2047
2091
|
:desc => <<-'EOT'
|
@@ -2083,7 +2127,7 @@ EOT
|
|
2083
2127
|
EOT
|
2084
2128
|
}
|
2085
2129
|
)
|
2086
|
-
define_settings(:puppetdoc,
|
2130
|
+
settings.define_settings(:puppetdoc,
|
2087
2131
|
:document_all => {
|
2088
2132
|
:default => false,
|
2089
2133
|
:type => :boolean,
|
@@ -2092,7 +2136,7 @@ EOT
|
|
2092
2136
|
}
|
2093
2137
|
)
|
2094
2138
|
|
2095
|
-
define_settings(
|
2139
|
+
settings.define_settings(
|
2096
2140
|
:main,
|
2097
2141
|
:rich_data => {
|
2098
2142
|
:default => false,
|
@@ -2109,5 +2153,5 @@ EOT
|
|
2109
2153
|
EOT
|
2110
2154
|
}
|
2111
2155
|
)
|
2112
|
-
|
2156
|
+
end
|
2113
2157
|
end
|
data/lib/puppet/error.rb
CHANGED
@@ -12,7 +12,7 @@ module Puppet
|
|
12
12
|
# This module implements logging with a filename and line number. Use this
|
13
13
|
# for errors that need to report a location in a non-ruby file that we
|
14
14
|
# parse.
|
15
|
-
attr_accessor :line, :file, :pos
|
15
|
+
attr_accessor :line, :file, :pos, :puppetstack
|
16
16
|
|
17
17
|
# May be called with 3 arguments for message, file, line, and exception, or
|
18
18
|
# 4 args including the position on the line.
|
@@ -22,10 +22,18 @@ module Puppet
|
|
22
22
|
original = pos
|
23
23
|
pos = nil
|
24
24
|
end
|
25
|
+
|
25
26
|
super(message, original)
|
27
|
+
|
26
28
|
@file = file unless (file.is_a?(String) && file.empty?)
|
27
29
|
@line = line
|
28
30
|
@pos = pos
|
31
|
+
|
32
|
+
if original && original.respond_to?(:puppetstack)
|
33
|
+
@puppetstack = original.puppetstack
|
34
|
+
else
|
35
|
+
@puppetstack = Puppet::Pops::PuppetStack.stacktrace()
|
36
|
+
end
|
29
37
|
end
|
30
38
|
|
31
39
|
def to_s
|
data/lib/puppet/face/ca.rb
CHANGED
@@ -93,7 +93,7 @@ Puppet::Face.define(:ca, '0.1.0') do
|
|
93
93
|
ca.verify(host.name)
|
94
94
|
"+ #{name} #{host.certificate.digest(options[:digest])}"
|
95
95
|
rescue Puppet::SSL::CertificateAuthority::CertificateVerificationError => e
|
96
|
-
"- #{name} #{host.certificate.digest(options[:digest])} (#{e
|
96
|
+
"- #{name} #{host.certificate.digest(options[:digest])} (#{e})"
|
97
97
|
end
|
98
98
|
end
|
99
99
|
end.join("\n")
|
data/lib/puppet/face/config.rb
CHANGED
@@ -66,41 +66,18 @@ Puppet::Face.define(:config, '0.0.1') do
|
|
66
66
|
@default_section = true
|
67
67
|
end
|
68
68
|
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
values_from_the_selected_section =
|
74
|
-
Puppet.settings.values(nil, options[:section].to_sym)
|
75
|
-
|
76
|
-
loader_settings = {
|
77
|
-
:environmentpath => values_from_the_selected_section.interpolate(:environmentpath),
|
78
|
-
:basemodulepath => values_from_the_selected_section.interpolate(:basemodulepath),
|
79
|
-
}
|
80
|
-
|
81
|
-
to_be_rendered = nil
|
82
|
-
Puppet.override(Puppet.base_context(loader_settings),
|
83
|
-
_("New environment loaders generated from the requested section.")) do
|
84
|
-
# And now we can lookup values that include those from environments configured from
|
85
|
-
# the requested section
|
86
|
-
values = Puppet.settings.values(Puppet[:environment].to_sym, options[:section].to_sym)
|
87
|
-
|
88
|
-
if Puppet::Util::Log.sendlevel?(:info)
|
89
|
-
warn_default_section(options[:section]) if @default_section
|
90
|
-
report_section_and_environment(options[:section], Puppet.settings[:environment])
|
91
|
-
end
|
92
|
-
|
93
|
-
to_be_rendered = {}
|
94
|
-
args.sort.each do |setting_name|
|
95
|
-
to_be_rendered[setting_name] = values.print(setting_name.to_sym)
|
96
|
-
end
|
69
|
+
if Puppet::Util::Log.sendlevel?(:info)
|
70
|
+
warn_default_section(options[:section]) if @default_section
|
71
|
+
report_section_and_environment(options[:section], Puppet.settings[:environment])
|
97
72
|
end
|
98
73
|
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
74
|
+
names = if args.empty? || args == ['all']
|
75
|
+
:all
|
76
|
+
else
|
77
|
+
args
|
78
|
+
end
|
79
|
+
|
80
|
+
Puppet.settings.stringify_settings(options[:section], names)
|
104
81
|
end
|
105
82
|
|
106
83
|
when_rendering :console do |to_be_rendered|
|
@@ -117,21 +94,6 @@ Puppet::Face.define(:config, '0.0.1') do
|
|
117
94
|
end
|
118
95
|
end
|
119
96
|
|
120
|
-
def stringifyhash(hash)
|
121
|
-
newhash = {}
|
122
|
-
hash.each do |key, val|
|
123
|
-
key = key.to_s
|
124
|
-
if val.is_a? Hash
|
125
|
-
newhash[key] = stringifyhash(val)
|
126
|
-
elsif val.is_a? Symbol
|
127
|
-
newhash[key] = val.to_s
|
128
|
-
else
|
129
|
-
newhash[key] = val
|
130
|
-
end
|
131
|
-
end
|
132
|
-
newhash
|
133
|
-
end
|
134
|
-
|
135
97
|
def warn_default_section(section_name)
|
136
98
|
messages = []
|
137
99
|
messages << _("No section specified; defaulting to '%{section_name}'.") %
|