puppet 6.22.1-x64-mingw32 → 6.25.1-x64-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CONTRIBUTING.md +5 -5
- data/Gemfile +2 -2
- data/Gemfile.lock +20 -20
- data/README.md +4 -4
- data/{ext → examples/enc}/regexp_nodes/classes/databases +0 -0
- data/{ext → examples/enc}/regexp_nodes/classes/webservers +0 -0
- data/{ext → examples/enc}/regexp_nodes/environment/development +0 -0
- data/{ext → examples/enc}/regexp_nodes/parameters/service/prod +0 -0
- data/{ext → examples/enc}/regexp_nodes/parameters/service/qa +0 -0
- data/{ext → examples/enc}/regexp_nodes/parameters/service/sandbox +0 -0
- data/{ext → examples/enc}/regexp_nodes/regexp_nodes.rb +0 -0
- data/{ext → examples}/nagios/check_puppet.rb +2 -2
- data/ext/README.md +13 -0
- data/ext/osx/puppet.plist +2 -0
- data/ext/project_data.yaml +1 -0
- data/lib/puppet/application/agent.rb +16 -5
- data/lib/puppet/application/apply.rb +22 -3
- data/lib/puppet/application/device.rb +2 -1
- data/lib/puppet/application/filebucket.rb +1 -0
- data/lib/puppet/application/resource.rb +32 -16
- data/lib/puppet/application/script.rb +2 -1
- data/lib/puppet/application/ssl.rb +1 -0
- data/lib/puppet/concurrent/thread_local_singleton.rb +1 -0
- data/lib/puppet/configurer/downloader.rb +2 -1
- data/lib/puppet/configurer.rb +144 -56
- data/lib/puppet/confine/variable.rb +1 -1
- data/lib/puppet/defaults.rb +47 -33
- data/lib/puppet/environments.rb +75 -25
- data/lib/puppet/face/facts.rb +1 -1
- data/lib/puppet/face/help/action.erb +1 -0
- data/lib/puppet/face/help/face.erb +1 -0
- data/lib/puppet/face/node/clean.rb +11 -0
- data/lib/puppet/facter_impl.rb +96 -0
- data/lib/puppet/file_serving/configuration/parser.rb +2 -0
- data/lib/puppet/file_serving/configuration.rb +3 -0
- data/lib/puppet/file_serving/fileset.rb +14 -2
- data/lib/puppet/file_serving/mount/file.rb +4 -4
- data/lib/puppet/file_serving/mount/scripts.rb +24 -0
- data/lib/puppet/file_system/file_impl.rb +3 -1
- data/lib/puppet/file_system/windows.rb +2 -2
- data/lib/puppet/forge.rb +4 -4
- data/lib/puppet/functions/all.rb +1 -1
- data/lib/puppet/functions/camelcase.rb +1 -1
- data/lib/puppet/functions/capitalize.rb +2 -2
- data/lib/puppet/functions/downcase.rb +2 -2
- data/lib/puppet/functions/empty.rb +8 -0
- data/lib/puppet/functions/find_template.rb +2 -2
- data/lib/puppet/functions/get.rb +5 -5
- data/lib/puppet/functions/group_by.rb +13 -5
- data/lib/puppet/functions/lest.rb +1 -1
- data/lib/puppet/functions/new.rb +100 -100
- data/lib/puppet/functions/partition.rb +4 -4
- data/lib/puppet/functions/require.rb +5 -5
- data/lib/puppet/functions/sort.rb +3 -3
- data/lib/puppet/functions/strftime.rb +1 -0
- data/lib/puppet/functions/tree_each.rb +7 -9
- data/lib/puppet/functions/type.rb +4 -4
- data/lib/puppet/functions/unwrap.rb +17 -2
- data/lib/puppet/functions/upcase.rb +2 -2
- data/lib/puppet/http/client.rb +1 -1
- data/lib/puppet/http/redirector.rb +5 -0
- data/lib/puppet/http/resolver/server_list.rb +15 -4
- data/lib/puppet/http/service/compiler.rb +75 -1
- data/lib/puppet/http/service/file_server.rb +2 -1
- data/lib/puppet/indirector/catalog/compiler.rb +25 -6
- data/lib/puppet/indirector/catalog/rest.rb +1 -0
- data/lib/puppet/indirector/facts/facter.rb +6 -6
- data/lib/puppet/indirector/file_metadata/rest.rb +1 -0
- data/lib/puppet/indirector/indirection.rb +1 -1
- data/lib/puppet/indirector/resource/ral.rb +6 -1
- data/lib/puppet/indirector/terminus.rb +4 -0
- data/lib/puppet/interface/documentation.rb +1 -0
- data/lib/puppet/module/plan.rb +0 -1
- data/lib/puppet/module/task.rb +1 -1
- data/lib/puppet/module.rb +1 -0
- data/lib/puppet/module_tool/applications/installer.rb +12 -4
- data/lib/puppet/module_tool/applications/uninstaller.rb +1 -1
- data/lib/puppet/module_tool/applications/upgrader.rb +1 -1
- data/lib/puppet/module_tool/errors/shared.rb +17 -0
- data/lib/puppet/network/http/api/indirected_routes.rb +1 -1
- data/lib/puppet/node/environment.rb +10 -11
- data/lib/puppet/pal/pal_impl.rb +1 -1
- data/lib/puppet/parser/functions/fqdn_rand.rb +14 -6
- data/lib/puppet/parser/resource.rb +1 -1
- data/lib/puppet/parser/scope.rb +1 -0
- data/lib/puppet/parser/templatewrapper.rb +1 -0
- data/lib/puppet/pops/evaluator/closure.rb +7 -5
- data/lib/puppet/pops/evaluator/runtime3_resource_support.rb +1 -0
- data/lib/puppet/pops/lookup/lookup_adapter.rb +3 -2
- data/lib/puppet/pops/model/ast.rb +1 -0
- data/lib/puppet/pops/model/factory.rb +2 -1
- data/lib/puppet/pops/parser/eparser.rb +201 -201
- data/lib/puppet/pops/parser/lexer2.rb +92 -91
- data/lib/puppet/pops/parser/slurp_support.rb +1 -0
- data/lib/puppet/pops/serialization/to_data_converter.rb +18 -6
- data/lib/puppet/pops/serialization/to_stringified_converter.rb +1 -1
- data/lib/puppet/pops/types/p_sem_ver_type.rb +8 -2
- data/lib/puppet/pops/types/p_sensitive_type.rb +10 -0
- data/lib/puppet/pops/types/type_formatter.rb +4 -3
- data/lib/puppet/pops/types/type_mismatch_describer.rb +1 -1
- data/lib/puppet/pops/types/types.rb +1 -1
- data/lib/puppet/provider/aix_object.rb +1 -1
- data/lib/puppet/provider/exec/posix.rb +16 -4
- data/lib/puppet/provider/group/groupadd.rb +5 -2
- data/lib/puppet/provider/package/nim.rb +11 -6
- data/lib/puppet/provider/package/pip.rb +15 -3
- data/lib/puppet/provider/package/pkg.rb +19 -2
- data/lib/puppet/provider/package/puppetserver_gem.rb +1 -1
- data/lib/puppet/provider/package/yum.rb +1 -1
- data/lib/puppet/provider/parsedfile.rb +3 -0
- data/lib/puppet/provider/service/base.rb +1 -1
- data/lib/puppet/provider/service/init.rb +5 -5
- data/lib/puppet/provider/service/launchd.rb +2 -2
- data/lib/puppet/provider/service/redhat.rb +1 -1
- data/lib/puppet/provider/service/smf.rb +3 -3
- data/lib/puppet/provider/service/systemd.rb +15 -5
- data/lib/puppet/provider/service/upstart.rb +5 -5
- data/lib/puppet/provider/service/windows.rb +38 -0
- data/lib/puppet/provider/user/aix.rb +44 -1
- data/lib/puppet/provider/user/directoryservice.rb +26 -13
- data/lib/puppet/provider/user/useradd.rb +72 -16
- data/lib/puppet/provider.rb +1 -1
- data/lib/puppet/reference/configuration.rb +1 -1
- data/lib/puppet/reference/providers.rb +2 -2
- data/lib/puppet/resource/catalog.rb +1 -1
- data/lib/puppet/resource/type_collection.rb +1 -0
- data/lib/puppet/resource.rb +38 -5
- data/lib/puppet/runtime.rb +11 -1
- data/lib/puppet/settings.rb +32 -9
- data/lib/puppet/test/test_helper.rb +4 -1
- data/lib/puppet/transaction/additional_resource_generator.rb +1 -1
- data/lib/puppet/transaction/persistence.rb +11 -1
- data/lib/puppet/transaction/report.rb +15 -1
- data/lib/puppet/type/exec.rb +35 -5
- data/lib/puppet/type/file/mode.rb +6 -0
- data/lib/puppet/type/file/selcontext.rb +1 -1
- data/lib/puppet/type/file.rb +25 -7
- data/lib/puppet/type/filebucket.rb +3 -3
- data/lib/puppet/type/group.rb +0 -1
- data/lib/puppet/type/resources.rb +1 -1
- data/lib/puppet/type/service.rb +26 -41
- data/lib/puppet/type/tidy.rb +22 -3
- data/lib/puppet/type/user.rb +38 -21
- data/lib/puppet/type.rb +1 -1
- data/lib/puppet/util/command_line.rb +1 -1
- data/lib/puppet/util/filetype.rb +2 -2
- data/lib/puppet/util/json.rb +3 -0
- data/lib/puppet/util/log.rb +1 -2
- data/lib/puppet/util/logging.rb +1 -25
- data/lib/puppet/util/pidlock.rb +1 -1
- data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +1 -1
- data/lib/puppet/util/selinux.rb +30 -4
- data/lib/puppet/util/suidmanager.rb +1 -2
- data/lib/puppet/util/symbolic_file_mode.rb +29 -17
- data/lib/puppet/util/tagging.rb +1 -0
- data/lib/puppet/util/windows/service.rb +0 -5
- data/lib/puppet/util/windows/sid.rb +3 -1
- data/lib/puppet/util/windows/user.rb +0 -2
- data/lib/puppet/util/windows.rb +3 -0
- data/lib/puppet/util.rb +4 -3
- data/lib/puppet/version.rb +1 -1
- data/lib/puppet.rb +5 -9
- data/locales/puppet.pot +408 -364
- data/man/man5/puppet.conf.5 +303 -275
- data/man/man8/puppet-agent.8 +4 -1
- data/man/man8/puppet-apply.8 +1 -1
- data/man/man8/puppet-catalog.8 +9 -9
- 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 +8 -8
- data/man/man8/puppet-filebucket.8 +1 -1
- data/man/man8/puppet-generate.8 +1 -1
- data/man/man8/puppet-help.8 +1 -1
- data/man/man8/puppet-key.8 +7 -7
- data/man/man8/puppet-lookup.8 +1 -1
- data/man/man8/puppet-man.8 +1 -1
- data/man/man8/puppet-module.8 +3 -3
- data/man/man8/puppet-node.8 +5 -5
- data/man/man8/puppet-parser.8 +1 -1
- data/man/man8/puppet-plugin.8 +1 -1
- data/man/man8/puppet-report.8 +5 -5
- data/man/man8/puppet-resource.8 +1 -1
- data/man/man8/puppet-script.8 +1 -1
- data/man/man8/puppet-ssl.8 +1 -1
- data/man/man8/puppet-status.8 +4 -4
- data/man/man8/puppet.8 +2 -2
- data/spec/fixtures/integration/application/agent/cached_deferred_catalog.json +2 -1
- data/spec/fixtures/integration/application/agent/lib/facter/agent_spec_role.rb +3 -0
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Gemfile +4 -0
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Rakefile +3 -0
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/lib/puppet/functions/l10n.rb +8 -0
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/config.yaml +25 -0
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/ja/puppet-l10n.po +19 -0
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/puppet-l10n.pot +20 -0
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/metadata.json +8 -0
- data/spec/fixtures/ssl/127.0.0.1-key.pem +107 -57
- data/spec/fixtures/ssl/127.0.0.1.pem +52 -31
- data/spec/fixtures/ssl/bad-basic-constraints.pem +57 -35
- data/spec/fixtures/ssl/bad-int-basic-constraints.pem +57 -35
- data/spec/fixtures/ssl/ca.pem +57 -35
- data/spec/fixtures/ssl/crl.pem +28 -18
- data/spec/fixtures/ssl/ec-key.pem +11 -11
- data/spec/fixtures/ssl/ec.pem +33 -24
- data/spec/fixtures/ssl/encrypted-ec-key.pem +12 -12
- data/spec/fixtures/ssl/encrypted-key.pem +108 -58
- data/spec/fixtures/ssl/intermediate-agent-crl.pem +28 -19
- data/spec/fixtures/ssl/intermediate-agent.pem +57 -36
- data/spec/fixtures/ssl/intermediate-crl.pem +31 -21
- data/spec/fixtures/ssl/intermediate.pem +57 -36
- data/spec/fixtures/ssl/oid-key.pem +117 -0
- data/spec/fixtures/ssl/oid.pem +69 -0
- data/spec/fixtures/ssl/pluto-key.pem +107 -57
- data/spec/fixtures/ssl/pluto.pem +52 -30
- data/spec/fixtures/ssl/request-key.pem +107 -57
- data/spec/fixtures/ssl/request.pem +47 -26
- data/spec/fixtures/ssl/revoked-key.pem +107 -57
- data/spec/fixtures/ssl/revoked.pem +52 -30
- data/spec/fixtures/ssl/signed-key.pem +107 -57
- data/spec/fixtures/ssl/signed.pem +52 -30
- data/spec/fixtures/ssl/tampered-cert.pem +52 -30
- data/spec/fixtures/ssl/tampered-csr.pem +47 -26
- data/spec/fixtures/ssl/trusted_oid_mapping.yaml +5 -0
- data/spec/fixtures/ssl/unknown-127.0.0.1-key.pem +107 -57
- data/spec/fixtures/ssl/unknown-127.0.0.1.pem +50 -29
- data/spec/fixtures/ssl/unknown-ca-key.pem +107 -57
- data/spec/fixtures/ssl/unknown-ca.pem +55 -33
- data/spec/integration/application/agent_spec.rb +141 -37
- data/spec/integration/application/filebucket_spec.rb +16 -0
- data/spec/integration/application/module_spec.rb +21 -0
- data/spec/integration/application/resource_spec.rb +64 -0
- data/spec/integration/application/ssl_spec.rb +20 -0
- data/spec/integration/configurer_spec.rb +18 -2
- data/spec/integration/environments/settings_interpolation_spec.rb +0 -4
- data/spec/integration/indirector/facts/facter_spec.rb +93 -39
- data/spec/integration/l10n/compiler_spec.rb +37 -0
- data/spec/integration/parser/pcore_resource_spec.rb +10 -0
- data/spec/integration/transaction/report_spec.rb +1 -1
- data/spec/integration/type/exec_spec.rb +70 -45
- data/spec/integration/type/file_spec.rb +2 -2
- data/spec/integration/type/package_spec.rb +6 -6
- data/spec/integration/util/rdoc/parser_spec.rb +1 -1
- data/spec/integration/util/windows/process_spec.rb +1 -9
- data/spec/lib/puppet/test_ca.rb +7 -2
- data/spec/lib/puppet_spec/modules.rb +13 -2
- data/spec/lib/puppet_spec/puppetserver.rb +15 -0
- data/spec/lib/puppet_spec/settings.rb +1 -0
- data/spec/shared_behaviours/documentation_on_faces.rb +0 -2
- data/spec/shared_contexts/l10n.rb +27 -0
- data/spec/spec_helper.rb +1 -10
- data/spec/unit/application/agent_spec.rb +7 -2
- data/spec/unit/application/apply_spec.rb +76 -56
- data/spec/unit/application/resource_spec.rb +29 -0
- data/spec/unit/configurer/downloader_spec.rb +6 -0
- data/spec/unit/configurer_spec.rb +256 -57
- data/spec/unit/defaults_spec.rb +1 -0
- data/spec/unit/environments_spec.rb +184 -0
- data/spec/unit/facter_impl_spec.rb +31 -0
- data/spec/unit/file_bucket/dipper_spec.rb +2 -2
- data/spec/unit/file_serving/configuration/parser_spec.rb +23 -0
- data/spec/unit/file_serving/configuration_spec.rb +14 -4
- data/spec/unit/file_serving/fileset_spec.rb +60 -0
- data/spec/unit/file_serving/mount/scripts_spec.rb +69 -0
- data/spec/unit/file_system_spec.rb +13 -0
- data/spec/unit/functions/assert_type_spec.rb +1 -1
- data/spec/unit/functions/empty_spec.rb +10 -0
- data/spec/unit/functions/logging_spec.rb +1 -0
- data/spec/unit/functions/lookup_spec.rb +64 -0
- data/spec/unit/functions/unwrap_spec.rb +8 -0
- data/spec/unit/functions4_spec.rb +2 -2
- data/spec/unit/gettext/config_spec.rb +12 -0
- data/spec/unit/http/client_spec.rb +58 -1
- data/spec/unit/http/service/compiler_spec.rb +131 -0
- data/spec/unit/indirector/catalog/compiler_spec.rb +101 -10
- data/spec/unit/indirector/catalog/rest_spec.rb +8 -0
- data/spec/unit/indirector/indirection_spec.rb +10 -3
- data/spec/unit/indirector/resource/ral_spec.rb +40 -75
- data/spec/unit/interface/action_spec.rb +0 -9
- data/spec/unit/module_spec.rb +15 -1
- data/spec/unit/module_tool/applications/installer_spec.rb +51 -12
- data/spec/unit/network/authstore_spec.rb +0 -15
- data/spec/unit/network/formats_spec.rb +6 -0
- data/spec/unit/parser/functions/fqdn_rand_spec.rb +15 -1
- data/spec/unit/parser/templatewrapper_spec.rb +12 -2
- data/spec/unit/pops/parser/parse_containers_spec.rb +0 -11
- data/spec/unit/pops/serialization/to_from_hr_spec.rb +58 -0
- data/spec/unit/pops/serialization/to_stringified_spec.rb +5 -0
- data/spec/unit/pops/types/p_sem_ver_type_spec.rb +18 -0
- data/spec/unit/pops/types/p_sensitive_type_spec.rb +18 -0
- data/spec/unit/pops/types/type_calculator_spec.rb +6 -0
- data/spec/unit/provider/package/gem_spec.rb +1 -1
- data/spec/unit/provider/package/nim_spec.rb +42 -0
- data/spec/unit/provider/package/pip2_spec.rb +1 -1
- data/spec/unit/provider/package/pip3_spec.rb +1 -1
- data/spec/unit/provider/package/pip_spec.rb +38 -1
- data/spec/unit/provider/package/pkg_spec.rb +29 -4
- data/spec/unit/provider/package/puppet_gem_spec.rb +1 -1
- data/spec/unit/provider/package/puppetserver_gem_spec.rb +1 -1
- data/spec/unit/provider/parsedfile_spec.rb +10 -0
- data/spec/unit/provider/service/init_spec.rb +1 -0
- data/spec/unit/provider/service/launchd_spec.rb +11 -0
- data/spec/unit/provider/service/openwrt_spec.rb +3 -1
- data/spec/unit/provider/service/systemd_spec.rb +43 -9
- data/spec/unit/provider/service/windows_spec.rb +202 -0
- data/spec/unit/provider/user/aix_spec.rb +100 -0
- data/spec/unit/provider/user/directoryservice_spec.rb +68 -36
- data/spec/unit/provider/user/useradd_spec.rb +43 -2
- data/spec/unit/provider_spec.rb +4 -4
- data/spec/unit/puppet_spec.rb +12 -4
- data/spec/unit/resource/catalog_spec.rb +14 -1
- data/spec/unit/resource_spec.rb +58 -2
- data/spec/unit/settings_spec.rb +97 -56
- data/spec/unit/ssl/certificate_request_spec.rb +8 -14
- data/spec/unit/ssl/state_machine_spec.rb +19 -5
- data/spec/unit/transaction/additional_resource_generator_spec.rb +0 -2
- data/spec/unit/transaction_spec.rb +18 -20
- data/spec/unit/type/exec_spec.rb +76 -29
- data/spec/unit/type/file/selinux_spec.rb +3 -3
- data/spec/unit/type/file/source_spec.rb +4 -4
- data/spec/unit/type/service_spec.rb +86 -188
- data/spec/unit/type/tidy_spec.rb +24 -7
- data/spec/unit/type/user_spec.rb +45 -0
- data/spec/unit/type_spec.rb +2 -2
- data/spec/unit/util/logging_spec.rb +2 -0
- data/spec/unit/util/selinux_spec.rb +87 -16
- data/spec/unit/util/windows/sid_spec.rb +39 -4
- data/tasks/generate_cert_fixtures.rake +12 -3
- data/tasks/parallel.rake +3 -3
- metadata +49 -95
- data/ext/README.environment +0 -8
- data/ext/dbfix.sql +0 -132
- data/ext/debian/README.Debian +0 -8
- data/ext/debian/README.source +0 -2
- data/ext/debian/TODO.Debian +0 -1
- data/ext/debian/changelog.erb +0 -1122
- data/ext/debian/compat +0 -1
- data/ext/debian/control +0 -144
- data/ext/debian/copyright +0 -339
- data/ext/debian/docs +0 -1
- data/ext/debian/fileserver.conf +0 -41
- data/ext/debian/puppet-common.dirs +0 -13
- data/ext/debian/puppet-common.install +0 -3
- data/ext/debian/puppet-common.lintian-overrides +0 -5
- data/ext/debian/puppet-common.manpages +0 -28
- data/ext/debian/puppet-common.postinst +0 -35
- data/ext/debian/puppet-common.postrm +0 -33
- data/ext/debian/puppet-el.dirs +0 -1
- data/ext/debian/puppet-el.emacsen-install +0 -25
- data/ext/debian/puppet-el.emacsen-remove +0 -11
- data/ext/debian/puppet-el.emacsen-startup +0 -9
- data/ext/debian/puppet-el.install +0 -1
- data/ext/debian/puppet-testsuite.install +0 -2
- data/ext/debian/puppet-testsuite.lintian-overrides +0 -4
- data/ext/debian/puppet.lintian-overrides +0 -3
- data/ext/debian/puppet.logrotate +0 -20
- data/ext/debian/puppet.postinst +0 -20
- data/ext/debian/puppet.postrm +0 -20
- data/ext/debian/puppet.preinst +0 -20
- data/ext/debian/puppetmaster-common.install +0 -2
- data/ext/debian/puppetmaster-common.manpages +0 -2
- data/ext/debian/puppetmaster-common.postinst +0 -6
- data/ext/debian/puppetmaster-passenger.dirs +0 -4
- data/ext/debian/puppetmaster-passenger.postinst +0 -162
- data/ext/debian/puppetmaster-passenger.postrm +0 -61
- data/ext/debian/puppetmaster.README.debian +0 -17
- data/ext/debian/puppetmaster.default +0 -14
- data/ext/debian/puppetmaster.init +0 -137
- data/ext/debian/puppetmaster.lintian-overrides +0 -3
- data/ext/debian/puppetmaster.postinst +0 -20
- data/ext/debian/puppetmaster.postrm +0 -5
- data/ext/debian/puppetmaster.preinst +0 -22
- data/ext/debian/rules +0 -132
- data/ext/debian/source/format +0 -1
- data/ext/debian/source/options +0 -1
- data/ext/debian/vim-puppet.README.Debian +0 -13
- data/ext/debian/vim-puppet.dirs +0 -5
- data/ext/debian/vim-puppet.yaml +0 -7
- data/ext/debian/watch +0 -2
- data/ext/freebsd/puppetd +0 -26
- data/ext/freebsd/puppetmasterd +0 -26
- data/ext/gentoo/conf.d/puppet +0 -5
- data/ext/gentoo/conf.d/puppetmaster +0 -12
- data/ext/gentoo/init.d/puppet +0 -38
- data/ext/gentoo/init.d/puppetmaster +0 -51
- data/ext/gentoo/puppet/fileserver.conf +0 -41
- data/ext/ips/puppet-agent +0 -44
- data/ext/ips/puppet-master +0 -44
- data/ext/ips/puppet.p5m.erb +0 -12
- data/ext/ips/puppetagent.xml +0 -42
- data/ext/ips/puppetmaster.xml +0 -42
- data/ext/ips/rules +0 -19
- data/ext/ips/transforms +0 -34
- data/ext/ldap/puppet.schema +0 -24
- data/ext/logcheck/puppet +0 -23
- data/ext/osx/file_mapping.yaml +0 -33
- data/ext/osx/postflight.erb +0 -109
- data/ext/osx/preflight.erb +0 -52
- data/ext/osx/prototype.plist.erb +0 -38
- data/ext/redhat/fileserver.conf +0 -41
- data/ext/redhat/logrotate +0 -21
- data/ext/redhat/puppet.spec.erb +0 -842
- data/ext/redhat/server.init +0 -128
- data/ext/redhat/server.sysconfig +0 -13
- data/ext/solaris/pkginfo +0 -6
- data/ext/solaris/smf/puppetd.xml +0 -77
- data/ext/solaris/smf/puppetmasterd.xml +0 -77
- data/ext/solaris/smf/svc-puppetd +0 -71
- data/ext/solaris/smf/svc-puppetmasterd +0 -67
- data/ext/suse/puppet.spec +0 -310
- data/ext/suse/server.init +0 -173
- data/ext/yaml_nodes.rb +0 -105
- data/spec/unit/indirector/store_configs_spec.rb +0 -7
data/lib/puppet/configurer.rb
CHANGED
@@ -91,7 +91,7 @@ class Puppet::Configurer
|
|
91
91
|
|
92
92
|
if result
|
93
93
|
# don't use use cached catalog if it doesn't match server specified environment
|
94
|
-
if
|
94
|
+
if result.environment != @environment
|
95
95
|
Puppet.err _("Not using cached catalog because its environment '%{catalog_env}' does not match '%{local_env}'") % { catalog_env: result.environment, local_env: @environment }
|
96
96
|
return nil
|
97
97
|
end
|
@@ -118,8 +118,11 @@ class Puppet::Configurer
|
|
118
118
|
catalog = result.to_ral
|
119
119
|
catalog.finalize
|
120
120
|
catalog.retrieval_duration = duration
|
121
|
-
|
122
|
-
|
121
|
+
|
122
|
+
if Puppet[:write_catalog_summary]
|
123
|
+
catalog.write_class_file
|
124
|
+
catalog.write_resource_file
|
125
|
+
end
|
123
126
|
end
|
124
127
|
options[:report].add_times(:convert_catalog, catalog_conversion_time) if options[:report]
|
125
128
|
|
@@ -257,6 +260,7 @@ class Puppet::Configurer
|
|
257
260
|
|
258
261
|
def run_internal(options)
|
259
262
|
report = options[:report]
|
263
|
+
report.initial_environment = Puppet[:environment]
|
260
264
|
|
261
265
|
if options[:start_time]
|
262
266
|
startup_time = Time.now - options[:start_time]
|
@@ -296,69 +300,42 @@ class Puppet::Configurer
|
|
296
300
|
configured_environment = Puppet[:environment] if Puppet.settings.set_by_config?(:environment)
|
297
301
|
|
298
302
|
# We only need to find out the environment to run in if we don't already have a catalog
|
299
|
-
unless (cached_catalog || options[:catalog] || Puppet[:strict_environment_mode])
|
300
|
-
|
301
|
-
|
302
|
-
node_retr_time = thinmark do
|
303
|
-
node = Puppet::Node.indirection.find(Puppet[:node_name_value],
|
304
|
-
:environment => Puppet::Node::Environment.remote(@environment),
|
305
|
-
:configured_environment => configured_environment,
|
306
|
-
:ignore_cache => true,
|
307
|
-
:transaction_uuid => @transaction_uuid,
|
308
|
-
:fail_on_404 => true)
|
309
|
-
end
|
310
|
-
options[:report].add_times(:node_retrieval, node_retr_time)
|
303
|
+
unless (cached_catalog || options[:catalog] || Puppet.settings.set_by_cli?(:environment) || Puppet[:strict_environment_mode])
|
304
|
+
Puppet.debug(_("Environment not passed via CLI and no catalog was given, attempting to find out the last server-specified environment"))
|
305
|
+
initial_environment, loaded_last_environment = last_server_specified_environment
|
311
306
|
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
node.environment = Puppet::Node::Environment.remote(node.environment_name)
|
317
|
-
end
|
307
|
+
unless loaded_last_environment
|
308
|
+
Puppet.debug(_("Requesting environment from the server"))
|
309
|
+
initial_environment = current_server_specified_environment(@environment, configured_environment, options)
|
310
|
+
end
|
318
311
|
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
325
|
-
|
326
|
-
facts = nil
|
327
|
-
|
328
|
-
new_env = Puppet::Node::Environment.remote(@environment)
|
329
|
-
Puppet.push_context(
|
330
|
-
{
|
331
|
-
current_environment: new_env,
|
332
|
-
loaders: Puppet::Pops::Loaders.new(new_env, true)
|
333
|
-
},
|
334
|
-
"Local node environment #{@environment} for configurer transaction"
|
335
|
-
)
|
336
|
-
else
|
337
|
-
Puppet.info _("Using configured environment '%{env}'") % { env: @environment }
|
338
|
-
end
|
339
|
-
end
|
340
|
-
rescue StandardError => detail
|
341
|
-
Puppet.warning(_("Unable to fetch my node definition, but the agent run will continue:"))
|
342
|
-
Puppet.warning(detail)
|
312
|
+
if initial_environment
|
313
|
+
@environment = initial_environment
|
314
|
+
report.environment = initial_environment
|
315
|
+
|
316
|
+
push_current_environment_and_loaders
|
317
|
+
else
|
318
|
+
Puppet.debug(_("Could not find a usable environment in the lastrunfile. Either the file does not exist, does not have the required keys, or the values of 'initial_environment' and 'converged_environment' are identical."))
|
343
319
|
end
|
344
320
|
end
|
345
321
|
|
322
|
+
Puppet.info _("Using environment '%{env}'") % { env: @environment }
|
323
|
+
|
346
324
|
# This is to maintain compatibility with anyone using this class
|
347
325
|
# aside from agent, apply, device.
|
348
326
|
unless Puppet.lookup(:loaders) { nil }
|
349
|
-
|
350
|
-
Puppet.push_context(
|
351
|
-
{
|
352
|
-
current_environment: new_env,
|
353
|
-
loaders: Puppet::Pops::Loaders.new(new_env, true)
|
354
|
-
},
|
355
|
-
"Local node environment #{@environment} for configurer transaction"
|
356
|
-
)
|
327
|
+
push_current_environment_and_loaders
|
357
328
|
end
|
358
329
|
|
330
|
+
temp_value = options[:pluginsync]
|
331
|
+
|
332
|
+
# only validate server environment if pluginsync is requested
|
333
|
+
options[:pluginsync] = valid_server_environment? if options[:pluginsync] == true
|
334
|
+
|
359
335
|
query_options, facts = get_facts(options) unless query_options
|
336
|
+
options[:pluginsync] = temp_value
|
337
|
+
|
360
338
|
query_options[:configured_environment] = configured_environment
|
361
|
-
options[:convert_for_node] = node
|
362
339
|
|
363
340
|
catalog = prepare_and_retrieve_catalog(cached_catalog, facts, options, query_options)
|
364
341
|
unless catalog
|
@@ -383,6 +360,8 @@ class Puppet::Configurer
|
|
383
360
|
@environment = catalog.environment
|
384
361
|
report.environment = @environment
|
385
362
|
|
363
|
+
push_current_environment_and_loaders
|
364
|
+
|
386
365
|
query_options, facts = get_facts(options)
|
387
366
|
query_options[:configured_environment] = configured_environment
|
388
367
|
|
@@ -456,6 +435,25 @@ class Puppet::Configurer
|
|
456
435
|
end
|
457
436
|
private :run_internal
|
458
437
|
|
438
|
+
def valid_server_environment?
|
439
|
+
session = Puppet.lookup(:http_session)
|
440
|
+
begin
|
441
|
+
fs = session.route_to(:fileserver)
|
442
|
+
fs.get_file_metadatas(path: URI(Puppet[:pluginsource]).path, recurse: :false, environment: @environment)
|
443
|
+
true
|
444
|
+
rescue Puppet::HTTP::ResponseError => detail
|
445
|
+
if detail.response.code == 404
|
446
|
+
Puppet.notice(_("Environment '%{environment}' not found on server, skipping initial pluginsync.") % { environment: @environment })
|
447
|
+
else
|
448
|
+
Puppet.log_exception(detail, detail.message)
|
449
|
+
end
|
450
|
+
false
|
451
|
+
rescue => detail
|
452
|
+
Puppet.log_exception(detail, detail.message)
|
453
|
+
false
|
454
|
+
end
|
455
|
+
end
|
456
|
+
|
459
457
|
def find_functional_server
|
460
458
|
begin
|
461
459
|
session = Puppet.lookup(:http_session)
|
@@ -472,10 +470,88 @@ class Puppet::Configurer
|
|
472
470
|
end
|
473
471
|
private :find_functional_server
|
474
472
|
|
473
|
+
#
|
474
|
+
# @api private
|
475
|
+
#
|
476
|
+
# Read the last server-specified environment from the lastrunfile. The
|
477
|
+
# environment is considered to be server-specified if the values of
|
478
|
+
# `initial_environment` and `converged_environment` are different.
|
479
|
+
#
|
480
|
+
# @return [String, Boolean] An array containing a string with the environment
|
481
|
+
# read from the lastrunfile in case the server is authoritative, and a
|
482
|
+
# boolean marking whether the last environment was correctly loaded.
|
483
|
+
def last_server_specified_environment
|
484
|
+
return @last_server_specified_environment, @loaded_last_environment if @last_server_specified_environment
|
485
|
+
|
486
|
+
if Puppet::FileSystem.exist?(Puppet[:lastrunfile])
|
487
|
+
summary = Puppet::Util::Yaml.safe_load_file(Puppet[:lastrunfile])
|
488
|
+
return [nil, nil] unless summary['application']['run_mode'] == 'agent'
|
489
|
+
initial_environment = summary['application']['initial_environment']
|
490
|
+
converged_environment = summary['application']['converged_environment']
|
491
|
+
@last_server_specified_environment = converged_environment if initial_environment != converged_environment
|
492
|
+
Puppet.debug(_("Successfully loaded last environment from the lastrunfile"))
|
493
|
+
@loaded_last_environment = true
|
494
|
+
end
|
495
|
+
|
496
|
+
Puppet.debug(_("Found last server-specified environment: %{environment}") % { environment: @last_server_specified_environment }) if @last_server_specified_environment
|
497
|
+
[@last_server_specified_environment, @loaded_last_environment]
|
498
|
+
rescue => detail
|
499
|
+
Puppet.debug(_("Could not find last server-specified environment: %{detail}") % { detail: detail })
|
500
|
+
[nil, nil]
|
501
|
+
end
|
502
|
+
private :last_server_specified_environment
|
503
|
+
|
504
|
+
def current_server_specified_environment(current_environment, configured_environment, options)
|
505
|
+
return @server_specified_environment if @server_specified_environment
|
506
|
+
|
507
|
+
begin
|
508
|
+
node_retr_time = thinmark do
|
509
|
+
node = Puppet::Node.indirection.find(Puppet[:node_name_value],
|
510
|
+
:environment => Puppet::Node::Environment.remote(current_environment),
|
511
|
+
:configured_environment => configured_environment,
|
512
|
+
:ignore_cache => true,
|
513
|
+
:transaction_uuid => @transaction_uuid,
|
514
|
+
:fail_on_404 => true)
|
515
|
+
|
516
|
+
# The :rest node terminus returns a node with an environment_name, but not an
|
517
|
+
# environment instance. Attempting to get the environment instance will load
|
518
|
+
# it from disk, which will likely fail. So create a remote environment.
|
519
|
+
#
|
520
|
+
# The :plain node terminus returns a node with an environment, but not an
|
521
|
+
# environment_name.
|
522
|
+
if !node.has_environment_instance? && node.environment_name
|
523
|
+
node.environment = Puppet::Node::Environment.remote(node.environment_name)
|
524
|
+
end
|
525
|
+
|
526
|
+
@server_specified_environment = node.environment.to_s
|
527
|
+
|
528
|
+
if @server_specified_environment != @environment
|
529
|
+
Puppet.notice _("Local environment: '%{local_env}' doesn't match server specified node environment '%{node_env}', switching agent to '%{node_env}'.") % { local_env: @environment, node_env: @server_specified_environment }
|
530
|
+
end
|
531
|
+
end
|
532
|
+
|
533
|
+
options[:report].add_times(:node_retrieval, node_retr_time)
|
534
|
+
|
535
|
+
@server_specified_environment
|
536
|
+
rescue => detail
|
537
|
+
Puppet.warning(_("Unable to fetch my node definition, but the agent run will continue:"))
|
538
|
+
Puppet.warning(detail)
|
539
|
+
nil
|
540
|
+
end
|
541
|
+
end
|
542
|
+
private :current_server_specified_environment
|
543
|
+
|
475
544
|
def send_report(report)
|
476
545
|
puts report.summary if Puppet[:summarize]
|
477
546
|
save_last_run_summary(report)
|
478
|
-
|
547
|
+
if Puppet[:report]
|
548
|
+
remote = Puppet::Node::Environment.remote(@environment)
|
549
|
+
begin
|
550
|
+
Puppet::Transaction::Report.indirection.save(report, nil, ignore_cache: true, environment: remote)
|
551
|
+
ensure
|
552
|
+
Puppet::Transaction::Report.indirection.save(report, nil, ignore_terminus: true, environment: remote)
|
553
|
+
end
|
554
|
+
end
|
479
555
|
rescue => detail
|
480
556
|
Puppet.log_exception(detail, _("Could not send report: %{detail}") % { detail: detail })
|
481
557
|
end
|
@@ -498,7 +574,7 @@ class Puppet::Configurer
|
|
498
574
|
# @return [false] If an exception is raised during fact generation or
|
499
575
|
# submission.
|
500
576
|
def resubmit_facts
|
501
|
-
|
577
|
+
Puppet.runtime[:facter].clear
|
502
578
|
facts = find_facts
|
503
579
|
|
504
580
|
client = Puppet.runtime[:http]
|
@@ -533,6 +609,17 @@ class Puppet::Configurer
|
|
533
609
|
end
|
534
610
|
end
|
535
611
|
|
612
|
+
def push_current_environment_and_loaders
|
613
|
+
new_env = Puppet::Node::Environment.remote(@environment)
|
614
|
+
Puppet.push_context(
|
615
|
+
{
|
616
|
+
:current_environment => new_env,
|
617
|
+
:loaders => Puppet::Pops::Loaders.new(new_env, true)
|
618
|
+
},
|
619
|
+
"Local node environment #{@environment} for configurer transaction"
|
620
|
+
)
|
621
|
+
end
|
622
|
+
|
536
623
|
def retrieve_catalog_from_cache(query_options)
|
537
624
|
result = nil
|
538
625
|
@duration = thinmark do
|
@@ -560,6 +647,7 @@ class Puppet::Configurer
|
|
560
647
|
# don't update cache until after environment converges
|
561
648
|
:ignore_cache_save => true,
|
562
649
|
:environment => Puppet::Node::Environment.remote(@environment),
|
650
|
+
:check_environment => true,
|
563
651
|
:fail_on_404 => true,
|
564
652
|
:facts_for_catalog => facts
|
565
653
|
)
|
@@ -18,7 +18,7 @@ class Puppet::Confine::Variable < Puppet::Confine
|
|
18
18
|
|
19
19
|
# Retrieve the value from facter
|
20
20
|
def facter_value
|
21
|
-
@facter_value ||=
|
21
|
+
@facter_value ||= Puppet.runtime[:facter].value(name).to_s.downcase
|
22
22
|
end
|
23
23
|
|
24
24
|
def initialize(values)
|
data/lib/puppet/defaults.rb
CHANGED
@@ -3,7 +3,7 @@ require 'puppet/util/platform'
|
|
3
3
|
module Puppet
|
4
4
|
|
5
5
|
def self.default_diffargs
|
6
|
-
if (
|
6
|
+
if (Puppet.runtime[:facter].value(:kernel) == "AIX" && Puppet.runtime[:facter].value(:kernelmajversion) == "5300")
|
7
7
|
""
|
8
8
|
else
|
9
9
|
"-u"
|
@@ -90,7 +90,7 @@ module Puppet
|
|
90
90
|
This setting is still experimental.',
|
91
91
|
:hook => proc do |value|
|
92
92
|
value = munge(value)
|
93
|
-
if value && Puppet::Util::Package.versioncmp(
|
93
|
+
if value && Puppet::Util::Package.versioncmp(Puppet.runtime[:facter].value('facterversion'), '4.0.0') < 0
|
94
94
|
begin
|
95
95
|
original_facter = Object.const_get(:Facter)
|
96
96
|
Object.send(:remove_const, :Facter)
|
@@ -218,7 +218,7 @@ module Puppet
|
|
218
218
|
|
219
219
|
The strictness level is for both language semantics and runtime
|
220
220
|
evaluation validation. In addition to controlling the behavior with
|
221
|
-
this
|
221
|
+
this primary server switch some individual warnings may also be controlled
|
222
222
|
by the disable_warnings setting.
|
223
223
|
|
224
224
|
No new validations will be added to a micro (x.y.z) release,
|
@@ -262,7 +262,7 @@ module Puppet
|
|
262
262
|
internal Ruby stack trace interleaved with Puppet function frames.",
|
263
263
|
:hook => proc do |value|
|
264
264
|
# Enable or disable Facter's trace option too
|
265
|
-
|
265
|
+
Puppet.runtime[:facter].trace(value)
|
266
266
|
end
|
267
267
|
},
|
268
268
|
:puppet_trace => {
|
@@ -294,7 +294,7 @@ module Puppet
|
|
294
294
|
:default => true,
|
295
295
|
:type => :boolean,
|
296
296
|
:desc => "Whether to compile a [static catalog](https://puppet.com/docs/puppet/latest/static_catalogs.html#enabling-or-disabling-static-catalogs),
|
297
|
-
which occurs only on
|
297
|
+
which occurs only on Puppet Server when the `code-id-command` and
|
298
298
|
`code-content-command` settings are configured in its `puppetserver.conf` file.",
|
299
299
|
},
|
300
300
|
:strict_environment_mode => {
|
@@ -412,13 +412,13 @@ module Puppet
|
|
412
412
|
:default => "production",
|
413
413
|
:desc => "The environment in which Puppet is running. For clients,
|
414
414
|
such as `puppet agent`, this determines the environment itself, which
|
415
|
-
Puppet uses to find modules and much more. For servers, such as `puppet
|
415
|
+
Puppet uses to find modules and much more. For servers, such as `puppet server`,
|
416
416
|
this provides the default environment for nodes that Puppet knows nothing about.
|
417
417
|
|
418
418
|
When defining an environment in the `[agent]` section, this refers to the
|
419
|
-
environment that the agent requests from the
|
419
|
+
environment that the agent requests from the primary server. The environment doesn't
|
420
420
|
have to exist on the local filesystem because the agent fetches it from the
|
421
|
-
|
421
|
+
primary server. This definition is used when running `puppet agent`.
|
422
422
|
|
423
423
|
When defined in the `[user]` section, the environment refers to the path that
|
424
424
|
Puppet uses to search for code and modules related to its execution. This
|
@@ -800,6 +800,12 @@ Valid values are 0 (never cache) and 15 (15 second minimum wait time).
|
|
800
800
|
:owner => "service",
|
801
801
|
:group => "service",
|
802
802
|
:desc => "The directory where catalog previews per node are generated."
|
803
|
+
},
|
804
|
+
:location_trusted => {
|
805
|
+
:default => false,
|
806
|
+
:type => :boolean,
|
807
|
+
:desc => "This will allow sending the name + password and the cookie header to all hosts that puppet may redirect to.
|
808
|
+
This may or may not introduce a security breach if puppet redirects you to a site to which you'll send your authentication info and cookies."
|
803
809
|
}
|
804
810
|
)
|
805
811
|
|
@@ -830,7 +836,7 @@ Valid values are 0 (never cache) and 15 (15 second minimum wait time).
|
|
830
836
|
:certname => {
|
831
837
|
:default => lambda { Puppet::Settings.default_certname.downcase },
|
832
838
|
:desc => "The name to use when handling certificates. When a node
|
833
|
-
requests a certificate from the CA
|
839
|
+
requests a certificate from the CA Puppet Server, it uses the value of the
|
834
840
|
`certname` setting as its requested Subject CN.
|
835
841
|
|
836
842
|
This is the name used when managing a node's permissions in
|
@@ -878,8 +884,8 @@ names.
|
|
878
884
|
**Note:** The list of alternate names is locked in when the server's
|
879
885
|
certificate is signed. If you need to change the list later, you can't just
|
880
886
|
change this setting; you also need to regenerate the certificate. For more
|
881
|
-
information on that process, see the
|
882
|
-
(https://puppet.com/docs/puppet/latest/ssl_regenerate_certificates.html).
|
887
|
+
information on that process, see the
|
888
|
+
[cert regen docs](https://puppet.com/docs/puppet/latest/ssl_regenerate_certificates.html).
|
883
889
|
|
884
890
|
To see all the alternate names your servers are using, log into your CA server
|
885
891
|
and run `puppetserver ca list --all`, then check the output for `(alt names: ...)`.
|
@@ -893,7 +899,7 @@ EOT
|
|
893
899
|
:desc => <<EOT
|
894
900
|
An optional file containing custom attributes to add to certificate signing
|
895
901
|
requests (CSRs). You should ensure that this file does not exist on your CA
|
896
|
-
|
902
|
+
Puppet Server; if it does, unwanted certificate extensions may leak into
|
897
903
|
certificates created with the `puppetserver ca generate` command.
|
898
904
|
|
899
905
|
If present, this file must be a YAML hash containing a `custom_attributes` key
|
@@ -1205,7 +1211,7 @@ EOT
|
|
1205
1211
|
:default => "$confdir/autosign.conf",
|
1206
1212
|
:type => :autosign,
|
1207
1213
|
:desc => "Whether (and how) to autosign certificate requests. This setting
|
1208
|
-
is only relevant on a
|
1214
|
+
is only relevant on a Puppet Server acting as a certificate authority (CA).
|
1209
1215
|
|
1210
1216
|
Valid values are true (autosigns all certificate requests; not recommended),
|
1211
1217
|
false (disables autosigning certificates), or the absolute path to a file.
|
@@ -1216,7 +1222,7 @@ EOT
|
|
1216
1222
|
file, it will be treated as a policy executable; otherwise, it will be
|
1217
1223
|
treated as a config file.
|
1218
1224
|
|
1219
|
-
If a custom policy executable is configured, the CA
|
1225
|
+
If a custom policy executable is configured, the CA Puppet Server will run it
|
1220
1226
|
every time it receives a CSR. The executable will be passed the subject CN of the
|
1221
1227
|
request _as a command line argument,_ and the contents of the CSR in PEM format
|
1222
1228
|
_on stdin._ It should exit with a status of 0 if the cert should be autosigned
|
@@ -1302,7 +1308,7 @@ EOT
|
|
1302
1308
|
:manifest => {
|
1303
1309
|
:default => nil,
|
1304
1310
|
:type => :file_or_directory,
|
1305
|
-
:desc => "The entry-point manifest for
|
1311
|
+
:desc => "The entry-point manifest for the primary server. This can be one file
|
1306
1312
|
or a directory of manifests to be evaluated in alphabetical order. Puppet manages
|
1307
1313
|
this path as a directory if one exists or if the path ends with a / or \\.
|
1308
1314
|
|
@@ -1509,15 +1515,17 @@ EOT
|
|
1509
1515
|
their names should be comma-separated, with whitespace allowed. (For example,
|
1510
1516
|
`reports = http, store`.)
|
1511
1517
|
|
1512
|
-
This setting is relevant to puppet
|
1513
|
-
|
1518
|
+
This setting is relevant to puppet server and puppet apply. The primary Puppet
|
1519
|
+
server will call these report handlers with the reports it receives from
|
1514
1520
|
agent nodes, and puppet apply will call them with its own report. (In
|
1515
1521
|
all cases, the node applying the catalog must have `report = true`.)
|
1516
1522
|
|
1517
1523
|
See the report reference for information on the built-in report
|
1518
1524
|
handlers; custom report handlers can also be loaded from modules.
|
1519
1525
|
(Report handlers are loaded from the lib directory, at
|
1520
|
-
`puppet/reports/NAME.rb`.)
|
1526
|
+
`puppet/reports/NAME.rb`.)
|
1527
|
+
|
1528
|
+
To turn off reports entirely, set this to `none`",
|
1521
1529
|
},
|
1522
1530
|
:reportdir => {
|
1523
1531
|
:default => "$vardir/reports",
|
@@ -1576,7 +1584,7 @@ EOT
|
|
1576
1584
|
:node_name_value => {
|
1577
1585
|
:default => "$certname",
|
1578
1586
|
:desc => "The explicit value used for the node name for all requests the agent
|
1579
|
-
makes to the
|
1587
|
+
makes to the primary server. WARNING: This setting is mutually exclusive with
|
1580
1588
|
node_name_fact. Changing this setting also requires changes to the default
|
1581
1589
|
auth.conf configuration on the Puppet Master. Please see
|
1582
1590
|
http://links.puppet.com/node_name_value for more information."
|
@@ -1584,7 +1592,7 @@ EOT
|
|
1584
1592
|
:node_name_fact => {
|
1585
1593
|
:default => "",
|
1586
1594
|
:desc => "The fact name used to determine the node name used for all requests the agent
|
1587
|
-
makes to the
|
1595
|
+
makes to the primary server. WARNING: This setting is mutually exclusive with
|
1588
1596
|
node_name_value. Changing this setting also requires changes to the default
|
1589
1597
|
auth.conf configuration on the Puppet Master. Please see
|
1590
1598
|
http://links.puppet.com/node_name_fact for more information.",
|
@@ -1598,8 +1606,8 @@ EOT
|
|
1598
1606
|
:default => "$statedir/state.yaml",
|
1599
1607
|
:type => :file,
|
1600
1608
|
:mode => "0640",
|
1601
|
-
:desc => "Where
|
1602
|
-
with the running configuration. In the case of
|
1609
|
+
:desc => "Where Puppet agent and Puppet Server store state associated
|
1610
|
+
with the running configuration. In the case of Puppet Server,
|
1603
1611
|
this file reflects the state discovered through interacting
|
1604
1612
|
with clients."
|
1605
1613
|
},
|
@@ -1636,6 +1644,12 @@ EOT
|
|
1636
1644
|
:mode => "0750",
|
1637
1645
|
:desc => "The directory in which serialized data is stored on the client."
|
1638
1646
|
},
|
1647
|
+
:write_catalog_summary => {
|
1648
|
+
:default => true,
|
1649
|
+
:type => :boolean,
|
1650
|
+
:desc => "Whether to write the `classfile` and `resourcefile` after applying
|
1651
|
+
the catalog. It is enabled by default, except when running `puppet apply`.",
|
1652
|
+
},
|
1639
1653
|
:classfile => {
|
1640
1654
|
:default => "$statedir/classes.txt",
|
1641
1655
|
:type => :file,
|
@@ -1662,11 +1676,11 @@ EOT
|
|
1662
1676
|
the POSIX syslog service and the Windows Event Log are unavailable. (Currently,
|
1663
1677
|
no supported operating systems match that description.)
|
1664
1678
|
|
1665
|
-
Despite the name, both puppet agent and puppet
|
1679
|
+
Despite the name, both puppet agent and puppet server will use this file
|
1666
1680
|
as the fallback logging destination.
|
1667
1681
|
|
1668
1682
|
For control over logging destinations, see the `--logdest` command line
|
1669
|
-
option in the manual pages for puppet
|
1683
|
+
option in the manual pages for puppet server, puppet agent, and puppet
|
1670
1684
|
apply. You can see man pages by running `puppet <SUBCOMMAND> --help`,
|
1671
1685
|
or read them online at https://puppet.com/docs/puppet/latest/man/."
|
1672
1686
|
},
|
@@ -1680,12 +1694,12 @@ EOT
|
|
1680
1694
|
},
|
1681
1695
|
:server => {
|
1682
1696
|
:default => "puppet",
|
1683
|
-
:desc => "The
|
1697
|
+
:desc => "The primary Puppet server to which the Puppet agent should connect.",
|
1684
1698
|
},
|
1685
1699
|
:server_list => {
|
1686
1700
|
:default => [],
|
1687
1701
|
:type => :server_list,
|
1688
|
-
:desc => "The list of
|
1702
|
+
:desc => "The list of primary Puppet servers to which the Puppet agent should connect,
|
1689
1703
|
in the order that they will be tried.",
|
1690
1704
|
},
|
1691
1705
|
:use_srv_records => {
|
@@ -1700,7 +1714,7 @@ EOT
|
|
1700
1714
|
:http_extra_headers => {
|
1701
1715
|
:default => [],
|
1702
1716
|
:type => :http_extra_headers,
|
1703
|
-
:desc => "The list of extra headers that will be sent with http requests to the
|
1717
|
+
:desc => "The list of extra headers that will be sent with http requests to the primary server.
|
1704
1718
|
The header definition consists of a name and a value separated by a colon."
|
1705
1719
|
},
|
1706
1720
|
:ignoreschedules => {
|
@@ -1726,7 +1740,7 @@ EOT
|
|
1726
1740
|
like it does when running normally. However, if a resource attribute is not in
|
1727
1741
|
the desired state (as declared in the catalog), Puppet will take no
|
1728
1742
|
action, and will instead report the changes it _would_ have made. These
|
1729
|
-
simulated changes will appear in the report sent to the
|
1743
|
+
simulated changes will appear in the report sent to the primary Puppet server, or
|
1730
1744
|
be shown on the console if running puppet agent or puppet apply in the
|
1731
1745
|
foreground. The simulated changes will not send refresh events to any
|
1732
1746
|
subscribing or notified resources, although Puppet will log that a refresh
|
@@ -1798,7 +1812,7 @@ EOT
|
|
1798
1812
|
:desc => "Whether to only use the cached catalog rather than compiling a new catalog
|
1799
1813
|
on every run. Puppet can be run with this enabled by default and then selectively
|
1800
1814
|
disabled when a recompile is desired. Because a Puppet agent using cached catalogs
|
1801
|
-
does not contact the
|
1815
|
+
does not contact the primary server for a new catalog, it also does not upload facts at
|
1802
1816
|
the beginning of the Puppet run.",
|
1803
1817
|
},
|
1804
1818
|
:ignoremissingtypes => {
|
@@ -1806,7 +1820,7 @@ EOT
|
|
1806
1820
|
:type => :boolean,
|
1807
1821
|
:desc => "Skip searching for classes and definitions that were missing during a
|
1808
1822
|
prior compilation. The list of missing objects is maintained per-environment and
|
1809
|
-
persists until the environment is cleared or the
|
1823
|
+
persists until the environment is cleared or the primary server is restarted.",
|
1810
1824
|
},
|
1811
1825
|
:splaylimit => {
|
1812
1826
|
:default => "$runinterval",
|
@@ -1836,7 +1850,7 @@ EOT
|
|
1836
1850
|
If you restart an agent's puppet service with `splay` enabled, it
|
1837
1851
|
recalculates its splay period and delays its first agent run after
|
1838
1852
|
restarting for this new period. If you simultaneously restart a group of
|
1839
|
-
puppet agents with `splay` enabled, their checkins to your
|
1853
|
+
puppet agents with `splay` enabled, their checkins to your primary servers
|
1840
1854
|
can be distributed more evenly.",
|
1841
1855
|
},
|
1842
1856
|
:clientbucketdir => {
|
@@ -1928,7 +1942,7 @@ EOT
|
|
1928
1942
|
|
1929
1943
|
When starting for the first time, puppet agent will submit a certificate
|
1930
1944
|
signing request (CSR) to the server named in the `ca_server` setting
|
1931
|
-
(usually the
|
1945
|
+
(usually the primary Puppet server); this may be autosigned, or may need to be
|
1932
1946
|
approved by a human, depending on the CA server's configuration.
|
1933
1947
|
|
1934
1948
|
Puppet agent cannot apply configurations until its approved certificate is
|
@@ -2042,7 +2056,7 @@ EOT
|
|
2042
2056
|
:call_hook => :on_initialize_and_write, # Call our hook with the default value, so we always get the value added to facter.
|
2043
2057
|
:hook => proc do |value|
|
2044
2058
|
paths = value.split(File::PATH_SEPARATOR)
|
2045
|
-
|
2059
|
+
Puppet.runtime[:facter].search(*paths)
|
2046
2060
|
end
|
2047
2061
|
}
|
2048
2062
|
)
|